Exclude sales-expert trading accounts from wholesale customer lists.
Expert trading rows are APP_SHOPKEEPER for orders/ledger and were showing next to real omde customers. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -97169,20 +97169,24 @@ var require_admin_customers_service = __commonJS({
|
|||||||
in: [client_1.VerificationStep.STEP_ONE_SUBMITTED, client_1.VerificationStep.STEP_TWO_SUBMITTED]
|
in: [client_1.VerificationStep.STEP_ONE_SUBMITTED, client_1.VerificationStep.STEP_TWO_SUBMITTED]
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
const notExpertTradingAccount = {
|
||||||
|
salesExpertTradingFor: null
|
||||||
|
};
|
||||||
switch (scope) {
|
switch (scope) {
|
||||||
case "banker":
|
case "banker":
|
||||||
return { kind: client_1.CustomerKind.BANKER, isArchived: false };
|
return { kind: client_1.CustomerKind.BANKER, isArchived: false };
|
||||||
case "shopkeeper":
|
case "shopkeeper":
|
||||||
return { kind: client_1.CustomerKind.WALK_IN_SHOPKEEPER, isArchived: false };
|
return { kind: client_1.CustomerKind.WALK_IN_SHOPKEEPER, isArchived: false };
|
||||||
case "non_verified":
|
case "non_verified":
|
||||||
return { isArchived: false, ...pendingVerification };
|
return { isArchived: false, ...pendingVerification, ...notExpertTradingAccount };
|
||||||
case "archived":
|
case "archived":
|
||||||
return { isArchived: true };
|
return { isArchived: true, ...notExpertTradingAccount };
|
||||||
case "all":
|
case "all":
|
||||||
default:
|
default:
|
||||||
return {
|
return {
|
||||||
kind: client_1.CustomerKind.APP_SHOPKEEPER,
|
kind: client_1.CustomerKind.APP_SHOPKEEPER,
|
||||||
isArchived: false,
|
isArchived: false,
|
||||||
|
...notExpertTradingAccount,
|
||||||
NOT: pendingVerification
|
NOT: pendingVerification
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -264,6 +264,12 @@ export class AdminCustomersService {
|
|||||||
in: [VerificationStep.STEP_ONE_SUBMITTED, VerificationStep.STEP_TWO_SUBMITTED],
|
in: [VerificationStep.STEP_ONE_SUBMITTED, VerificationStep.STEP_TWO_SUBMITTED],
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
// A sales expert is an AdminUser; their trading Customer row exists only so
|
||||||
|
// the app can hold orders/ledger for them (D21). It must not appear next to
|
||||||
|
// real wholesale customers in «عمده» / «در انتظار».
|
||||||
|
const notExpertTradingAccount: Prisma.CustomerWhereInput = {
|
||||||
|
salesExpertTradingFor: null,
|
||||||
|
};
|
||||||
|
|
||||||
switch (scope) {
|
switch (scope) {
|
||||||
case 'banker':
|
case 'banker':
|
||||||
@@ -273,15 +279,16 @@ export class AdminCustomersService {
|
|||||||
// the main omde list, not this one.
|
// the main omde list, not this one.
|
||||||
return { kind: CustomerKind.WALK_IN_SHOPKEEPER, isArchived: false };
|
return { kind: CustomerKind.WALK_IN_SHOPKEEPER, isArchived: false };
|
||||||
case 'non_verified':
|
case 'non_verified':
|
||||||
return { isArchived: false, ...pendingVerification };
|
return { isArchived: false, ...pendingVerification, ...notExpertTradingAccount };
|
||||||
case 'archived':
|
case 'archived':
|
||||||
return { isArchived: true };
|
return { isArchived: true, ...notExpertTradingAccount };
|
||||||
case 'all':
|
case 'all':
|
||||||
default:
|
default:
|
||||||
// type=2 + not archived, and not sitting in «در انتظار».
|
// type=2 + not archived, not «در انتظار», not an expert's trading row.
|
||||||
return {
|
return {
|
||||||
kind: CustomerKind.APP_SHOPKEEPER,
|
kind: CustomerKind.APP_SHOPKEEPER,
|
||||||
isArchived: false,
|
isArchived: false,
|
||||||
|
...notExpertTradingAccount,
|
||||||
NOT: pendingVerification,
|
NOT: pendingVerification,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user