storemw-core-api 1.0.163 → 1.0.165

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. package/dist/lib/index.d.ts +2 -0
  2. package/dist/lib/index.js +5 -1
  3. package/dist/lib/index.js.map +1 -1
  4. package/dist/lib/model_factory/ModelFactory.d.ts +7 -6
  5. package/dist/lib/model_factory/ModelFactory.js +595 -197
  6. package/dist/lib/model_factory/ModelFactory.js.map +1 -1
  7. package/dist/lib/query_builder/queryBuilder.d.ts +1 -1
  8. package/dist/lib/query_builder/queryBuilder.js +66 -15
  9. package/dist/lib/query_builder/queryBuilder.js.map +1 -1
  10. package/dist/lib/query_builder/queryDocumentProfile.d.ts +7 -0
  11. package/dist/lib/query_builder/queryDocumentProfile.js +87 -0
  12. package/dist/lib/query_builder/queryDocumentProfile.js.map +1 -0
  13. package/dist/lib/query_builder/queryUserBranch.d.ts +10 -0
  14. package/dist/lib/query_builder/queryUserBranch.js +31 -0
  15. package/dist/lib/query_builder/queryUserBranch.js.map +1 -0
  16. package/dist/models/access_control/AccessControlRoleModel.d.ts +4 -5
  17. package/dist/models/access_control/AccessControlRolePolicyModel.d.ts +4 -5
  18. package/dist/models/access_control/AccessControlUserRoleModel.d.ts +4 -5
  19. package/dist/models/account/AccountModel.d.ts +4 -5
  20. package/dist/models/auth/AccessKeyModel.d.ts +4 -5
  21. package/dist/models/branch/UserBranchModel.d.ts +4 -5
  22. package/dist/models/branch_user/BranchUserModel.d.ts +4 -5
  23. package/dist/models/business/BusinessModel.d.ts +4 -5
  24. package/dist/models/document/DocumentAmountModel.d.ts +4 -5
  25. package/dist/models/document/DocumentDocumentModel.d.ts +4 -5
  26. package/dist/models/document/DocumentItemModel.d.ts +4 -5
  27. package/dist/models/document/DocumentLocationModel.d.ts +4 -5
  28. package/dist/models/document/DocumentModel.d.ts +4 -5
  29. package/dist/models/document/DocumentPaymentModel.d.ts +4 -5
  30. package/dist/models/document/DocumentProfileModel.d.ts +4 -5
  31. package/dist/models/document/DocumentTotalModel.d.ts +4 -5
  32. package/dist/models/file/FileModel.d.ts +4 -5
  33. package/dist/models/group/GroupModel.d.ts +4 -5
  34. package/dist/models/group/GroupOwnerModel.d.ts +4 -5
  35. package/dist/models/injection_field/DocumentInjectionFieldModel.d.ts +4 -5
  36. package/dist/models/injection_field/InjectionFieldModel.d.ts +4 -5
  37. package/dist/models/injection_field/ItemInjectionFieldModel.d.ts +4 -5
  38. package/dist/models/injection_field/LogisticInjectionFieldModel.d.ts +4 -5
  39. package/dist/models/injection_field/RepositoryInjectionFieldModel.d.ts +4 -5
  40. package/dist/models/injection_field/UserInjectionFieldModel.d.ts +4 -5
  41. package/dist/models/item/BrandModel.d.ts +4 -5
  42. package/dist/models/item/CategoryModel.d.ts +4 -5
  43. package/dist/models/item/ItemModel.d.ts +4 -5
  44. package/dist/models/item/ProductModel.d.ts +4 -5
  45. package/dist/models/item/UomModel.d.ts +4 -5
  46. package/dist/models/location/LocationModel.d.ts +4 -5
  47. package/dist/models/location/LocationRackModel.d.ts +4 -5
  48. package/dist/models/location/LocationSlotModel.d.ts +4 -5
  49. package/dist/models/others/NumberDateSequenceModel.d.ts +4 -5
  50. package/dist/models/others/OneTimeCodeModel.d.ts +4 -5
  51. package/dist/models/region/AreaModel.d.ts +4 -5
  52. package/dist/models/region/CountryModel.d.ts +4 -5
  53. package/dist/models/region/StateModel.d.ts +4 -5
  54. package/dist/models/repository/RepositoryCartonModel.d.ts +4 -5
  55. package/dist/models/repository/RepositoryContainerModel.d.ts +4 -5
  56. package/dist/models/repository/RepositoryModel.d.ts +4 -5
  57. package/dist/models/repository/RepositoryPackageItemModel.d.ts +4 -5
  58. package/dist/models/repository/RepositoryPackageModel.d.ts +4 -5
  59. package/dist/models/repository/RepositoryPalletModel.d.ts +4 -5
  60. package/dist/models/scheduler/SchedulerLogModel.d.ts +4 -5
  61. package/dist/models/scheduler/SchedulerRequestModel.d.ts +4 -5
  62. package/dist/models/subscription/account/AccountSubscribeModel.d.ts +4 -5
  63. package/dist/models/subscription/plan/SubscribePlanModel.d.ts +4 -5
  64. package/dist/models/user/AdministratorModel.d.ts +4 -5
  65. package/dist/models/user/AgentModel.d.ts +4 -5
  66. package/dist/models/user/CustomerModel.d.ts +4 -5
  67. package/dist/models/user/DriverModel.d.ts +4 -5
  68. package/dist/models/user/MemberModel.d.ts +4 -5
  69. package/dist/models/user/OperatorModel.d.ts +4 -5
  70. package/dist/models/user/RetailerModel.d.ts +4 -5
  71. package/dist/models/user/UserModel.d.ts +4 -5
  72. package/dist/models/user/UserPropModel.d.ts +4 -5
  73. package/dist/models/user/WorkerModel.d.ts +4 -5
  74. package/dist/schema/payload/document/schemaDocumentCashSales.d.ts +64 -64
  75. package/dist/schema/payload/document/schemaDocumentDeliveryOrder.d.ts +64 -64
  76. package/dist/schema/payload/document/schemaDocumentProformaSales.d.ts +64 -64
  77. package/dist/schema/payload/document/schemaDocumentReplacementDeliveryOrder.d.ts +64 -64
  78. package/dist/schema/payload/document/schemaDocumentSalesOrder.d.ts +64 -64
  79. package/dist/services/branch/UserBranchService.d.ts +2 -2
  80. package/dist/services/branch/UserBranchService.js +53 -22
  81. package/dist/services/branch/UserBranchService.js.map +1 -1
  82. package/dist/services/document/DocumentProfileService.js +47 -19
  83. package/dist/services/document/DocumentProfileService.js.map +1 -1
  84. package/dist/utils/serviceUtils.d.ts +2 -0
  85. package/dist/utils/serviceUtils.js.map +1 -1
  86. package/package.json +1 -1
@@ -191,14 +191,6 @@ export declare const schemaDocumentSalesOrderCreatePayload: z.ZodObject<{
191
191
  profileName?: string | undefined;
192
192
  personName?: string | undefined;
193
193
  };
194
- totals?: {
195
- description: string;
196
- totalType: "discount" | "rounding_down" | "tax" | "rouding_up";
197
- totalAmount: number;
198
- totalPercentage: number;
199
- documentTotalId?: number | undefined;
200
- referId?: string | undefined;
201
- }[] | undefined;
202
194
  items?: {
203
195
  quantity: number;
204
196
  itemId: number;
@@ -209,6 +201,14 @@ export declare const schemaDocumentSalesOrderCreatePayload: z.ZodObject<{
209
201
  uomId?: number | undefined;
210
202
  uomPrice?: number | undefined;
211
203
  }[] | undefined;
204
+ totals?: {
205
+ description: string;
206
+ totalType: "discount" | "rounding_down" | "tax" | "rouding_up";
207
+ totalAmount: number;
208
+ totalPercentage: number;
209
+ documentTotalId?: number | undefined;
210
+ referId?: string | undefined;
211
+ }[] | undefined;
212
212
  remark?: string | undefined;
213
213
  documentNumber?: string | undefined;
214
214
  documentReferenceId1?: string | undefined;
@@ -249,14 +249,6 @@ export declare const schemaDocumentSalesOrderCreatePayload: z.ZodObject<{
249
249
  profileName?: string | undefined;
250
250
  personName?: string | undefined;
251
251
  };
252
- totals?: {
253
- description: string;
254
- totalType: "discount" | "rounding_down" | "tax" | "rouding_up";
255
- documentTotalId?: number | undefined;
256
- referId?: string | undefined;
257
- totalAmount?: unknown;
258
- totalPercentage?: unknown;
259
- }[] | undefined;
260
252
  items?: {
261
253
  quantity: number;
262
254
  itemId: number;
@@ -267,6 +259,14 @@ export declare const schemaDocumentSalesOrderCreatePayload: z.ZodObject<{
267
259
  uomId?: number | undefined;
268
260
  uomPrice?: number | undefined;
269
261
  }[] | undefined;
262
+ totals?: {
263
+ description: string;
264
+ totalType: "discount" | "rounding_down" | "tax" | "rouding_up";
265
+ documentTotalId?: number | undefined;
266
+ referId?: string | undefined;
267
+ totalAmount?: unknown;
268
+ totalPercentage?: unknown;
269
+ }[] | undefined;
270
270
  remark?: string | undefined;
271
271
  documentNumber?: string | undefined;
272
272
  documentReferenceId1?: string | undefined;
@@ -313,14 +313,6 @@ export declare const schemaDocumentSalesOrderCreatePayload: z.ZodObject<{
313
313
  profileName?: string | undefined;
314
314
  personName?: string | undefined;
315
315
  };
316
- totals?: {
317
- description: string;
318
- totalType: "discount" | "rounding_down" | "tax" | "rouding_up";
319
- totalAmount: number;
320
- totalPercentage: number;
321
- documentTotalId?: number | undefined;
322
- referId?: string | undefined;
323
- }[] | undefined;
324
316
  items?: {
325
317
  quantity: number;
326
318
  itemId: number;
@@ -331,6 +323,14 @@ export declare const schemaDocumentSalesOrderCreatePayload: z.ZodObject<{
331
323
  uomId?: number | undefined;
332
324
  uomPrice?: number | undefined;
333
325
  }[] | undefined;
326
+ totals?: {
327
+ description: string;
328
+ totalType: "discount" | "rounding_down" | "tax" | "rouding_up";
329
+ totalAmount: number;
330
+ totalPercentage: number;
331
+ documentTotalId?: number | undefined;
332
+ referId?: string | undefined;
333
+ }[] | undefined;
334
334
  remark?: string | undefined;
335
335
  documentNumber?: string | undefined;
336
336
  documentReferenceId1?: string | undefined;
@@ -377,14 +377,6 @@ export declare const schemaDocumentSalesOrderCreatePayload: z.ZodObject<{
377
377
  profileName?: string | undefined;
378
378
  personName?: string | undefined;
379
379
  };
380
- totals?: {
381
- description: string;
382
- totalType: "discount" | "rounding_down" | "tax" | "rouding_up";
383
- documentTotalId?: number | undefined;
384
- referId?: string | undefined;
385
- totalAmount?: unknown;
386
- totalPercentage?: unknown;
387
- }[] | undefined;
388
380
  items?: {
389
381
  quantity: number;
390
382
  itemId: number;
@@ -395,6 +387,14 @@ export declare const schemaDocumentSalesOrderCreatePayload: z.ZodObject<{
395
387
  uomId?: number | undefined;
396
388
  uomPrice?: number | undefined;
397
389
  }[] | undefined;
390
+ totals?: {
391
+ description: string;
392
+ totalType: "discount" | "rounding_down" | "tax" | "rouding_up";
393
+ documentTotalId?: number | undefined;
394
+ referId?: string | undefined;
395
+ totalAmount?: unknown;
396
+ totalPercentage?: unknown;
397
+ }[] | undefined;
398
398
  remark?: string | undefined;
399
399
  documentNumber?: string | undefined;
400
400
  documentReferenceId1?: string | undefined;
@@ -597,14 +597,6 @@ export declare const schemaDocumentSalesOrderUpdatePayload: z.ZodObject<{
597
597
  profileName?: string | undefined;
598
598
  personName?: string | undefined;
599
599
  };
600
- totals?: {
601
- description: string;
602
- totalType: "discount" | "rounding_down" | "tax" | "rouding_up";
603
- totalAmount: number;
604
- totalPercentage: number;
605
- documentTotalId?: number | undefined;
606
- referId?: string | undefined;
607
- }[] | undefined;
608
600
  items?: {
609
601
  quantity: number;
610
602
  itemId: number;
@@ -615,6 +607,14 @@ export declare const schemaDocumentSalesOrderUpdatePayload: z.ZodObject<{
615
607
  uomId?: number | undefined;
616
608
  uomPrice?: number | undefined;
617
609
  }[] | undefined;
610
+ totals?: {
611
+ description: string;
612
+ totalType: "discount" | "rounding_down" | "tax" | "rouding_up";
613
+ totalAmount: number;
614
+ totalPercentage: number;
615
+ documentTotalId?: number | undefined;
616
+ referId?: string | undefined;
617
+ }[] | undefined;
618
618
  remark?: string | undefined;
619
619
  documentReferenceId1?: string | undefined;
620
620
  documentReferenceLabel1?: string | undefined;
@@ -654,14 +654,6 @@ export declare const schemaDocumentSalesOrderUpdatePayload: z.ZodObject<{
654
654
  profileName?: string | undefined;
655
655
  personName?: string | undefined;
656
656
  };
657
- totals?: {
658
- description: string;
659
- totalType: "discount" | "rounding_down" | "tax" | "rouding_up";
660
- documentTotalId?: number | undefined;
661
- referId?: string | undefined;
662
- totalAmount?: unknown;
663
- totalPercentage?: unknown;
664
- }[] | undefined;
665
657
  items?: {
666
658
  quantity: number;
667
659
  itemId: number;
@@ -672,6 +664,14 @@ export declare const schemaDocumentSalesOrderUpdatePayload: z.ZodObject<{
672
664
  uomId?: number | undefined;
673
665
  uomPrice?: number | undefined;
674
666
  }[] | undefined;
667
+ totals?: {
668
+ description: string;
669
+ totalType: "discount" | "rounding_down" | "tax" | "rouding_up";
670
+ documentTotalId?: number | undefined;
671
+ referId?: string | undefined;
672
+ totalAmount?: unknown;
673
+ totalPercentage?: unknown;
674
+ }[] | undefined;
675
675
  remark?: string | undefined;
676
676
  documentReferenceId1?: string | undefined;
677
677
  documentReferenceLabel1?: string | undefined;
@@ -717,14 +717,6 @@ export declare const schemaDocumentSalesOrderUpdatePayload: z.ZodObject<{
717
717
  profileName?: string | undefined;
718
718
  personName?: string | undefined;
719
719
  };
720
- totals?: {
721
- description: string;
722
- totalType: "discount" | "rounding_down" | "tax" | "rouding_up";
723
- totalAmount: number;
724
- totalPercentage: number;
725
- documentTotalId?: number | undefined;
726
- referId?: string | undefined;
727
- }[] | undefined;
728
720
  items?: {
729
721
  quantity: number;
730
722
  itemId: number;
@@ -735,6 +727,14 @@ export declare const schemaDocumentSalesOrderUpdatePayload: z.ZodObject<{
735
727
  uomId?: number | undefined;
736
728
  uomPrice?: number | undefined;
737
729
  }[] | undefined;
730
+ totals?: {
731
+ description: string;
732
+ totalType: "discount" | "rounding_down" | "tax" | "rouding_up";
733
+ totalAmount: number;
734
+ totalPercentage: number;
735
+ documentTotalId?: number | undefined;
736
+ referId?: string | undefined;
737
+ }[] | undefined;
738
738
  remark?: string | undefined;
739
739
  documentReferenceId1?: string | undefined;
740
740
  documentReferenceLabel1?: string | undefined;
@@ -780,14 +780,6 @@ export declare const schemaDocumentSalesOrderUpdatePayload: z.ZodObject<{
780
780
  profileName?: string | undefined;
781
781
  personName?: string | undefined;
782
782
  };
783
- totals?: {
784
- description: string;
785
- totalType: "discount" | "rounding_down" | "tax" | "rouding_up";
786
- documentTotalId?: number | undefined;
787
- referId?: string | undefined;
788
- totalAmount?: unknown;
789
- totalPercentage?: unknown;
790
- }[] | undefined;
791
783
  items?: {
792
784
  quantity: number;
793
785
  itemId: number;
@@ -798,6 +790,14 @@ export declare const schemaDocumentSalesOrderUpdatePayload: z.ZodObject<{
798
790
  uomId?: number | undefined;
799
791
  uomPrice?: number | undefined;
800
792
  }[] | undefined;
793
+ totals?: {
794
+ description: string;
795
+ totalType: "discount" | "rounding_down" | "tax" | "rouding_up";
796
+ documentTotalId?: number | undefined;
797
+ referId?: string | undefined;
798
+ totalAmount?: unknown;
799
+ totalPercentage?: unknown;
800
+ }[] | undefined;
801
801
  remark?: string | undefined;
802
802
  documentReferenceId1?: string | undefined;
803
803
  documentReferenceLabel1?: string | undefined;
@@ -45,9 +45,9 @@ export type UserBranchUpdateProps = {
45
45
  };
46
46
  export declare const UserBranchService: (props: UserBranchServiceProps) => {
47
47
  getUserBranch: ({ userBranchId, datatypes }: UserBranchGetProps) => Promise<any>;
48
- getUserBranchByUserId: ({ userId, onlyHQ, limit, datatypes }: UserBranchByUserIdGetProps) => Promise<any[]>;
48
+ getUserBranchByUserId: ({ userId, onlyHQ, limit, datatypes }: UserBranchByUserIdGetProps) => Promise<any>;
49
49
  listUserBranches: ({ limit, offset, filters, sortfield, sortorder, datatypes }: UserBranchListProps) => Promise<{
50
- data: any[];
50
+ data: any;
51
51
  total: number;
52
52
  }>;
53
53
  getUserBranchDataTypes: () => any[];
@@ -76,6 +76,7 @@ let defaultSqlSelect = {
76
76
  [`brn.${models_1.ModelUserBranchFields.istrash}`]: "istrash",
77
77
  [`brn.${models_1.ModelUserBranchFields.accountid}`]: "accountid",
78
78
  };
79
+ const { relationKeys, sqlRelationMaps } = (0, lib_1.getUserBranchRelationMaps)();
79
80
  const UserBranchService = (props) => {
80
81
  const { userBranchType = "branch", ...rest } = props;
81
82
  const userBranchModel = (0, models_1.UserBranchModel)({ ...rest });
@@ -143,12 +144,19 @@ const UserBranchService = (props) => {
143
144
  (0, lib_1.buildSqlSelect)(``, regionSqlSelect),
144
145
  (0, lib_1.buildSqlSelect)(``, defaultSqlSelect)
145
146
  ];
147
+ // sqlRelation = [
148
+ // buildSqlRelation("left", "brn", "countries", "cou", ["brn.country_id = cou.country_id", "cou.isdelete = false", "cou.istrash = false"]),
149
+ // buildSqlRelation("left", "brn", "states", "state", ["brn.state_id = state.state_id", "state.isdelete = false", "state.istrash = false"]),
150
+ // buildSqlRelation("left", "brn", "areas", "area", ["brn.area_id = area.area_id", "area.isdelete = false", "area.istrash = false"]),
151
+ // buildSqlRelation("left", "brn", "users", "creator", ["brn.createuserid = creator.user_id", "creator.isdelete = false", "creator.istrash = false"]),
152
+ // buildSqlRelation("left", "brn", "users", "updater", ["brn.updateuserid = updater.user_id", "updater.isdelete = false", "updater.istrash = false"])
153
+ // ]
146
154
  sqlRelation = [
147
- (0, lib_1.buildSqlRelation)("left", "brn", "countries", "cou", ["brn.country_id = cou.country_id", "cou.isdelete = false", "cou.istrash = false"]),
148
- (0, lib_1.buildSqlRelation)("left", "brn", "states", "state", ["brn.state_id = state.state_id", "state.isdelete = false", "state.istrash = false"]),
149
- (0, lib_1.buildSqlRelation)("left", "brn", "areas", "area", ["brn.area_id = area.area_id", "area.isdelete = false", "area.istrash = false"]),
150
- (0, lib_1.buildSqlRelation)("left", "brn", "users", "creator", ["brn.createuserid = creator.user_id", "creator.isdelete = false", "creator.istrash = false"]),
151
- (0, lib_1.buildSqlRelation)("left", "brn", "users", "updater", ["brn.updateuserid = updater.user_id", "updater.isdelete = false", "updater.istrash = false"])
155
+ sqlRelationMaps.cou,
156
+ sqlRelationMaps.state,
157
+ sqlRelationMaps.area,
158
+ sqlRelationMaps.creator,
159
+ sqlRelationMaps.updater
152
160
  ];
153
161
  // sqlRelationAgg = [
154
162
  // buildSqlRelation("left", "brn", "document_items", "docitm", ["brn.document_id = docitm.document_id", "docitm.isdelete = false", "docitm.istrash = false"]),
@@ -192,33 +200,56 @@ const UserBranchService = (props) => {
192
200
  let sqlOrderby = (0, lib_1.buildSqlOrderBy)(sortfield, sortorder);
193
201
  let sqlLimitOffset = (0, lib_1.buildSqlLimitOffset)(limit, offset);
194
202
  // get the data (pagination)
195
- const sqlRaw = (0, lib_1.buildSqlRawSelect)({
196
- tableName: "branches",
197
- mainAlias: "brn",
198
- accountId: rest.accountId,
199
- sqlSelect: [...sqlSelect, ...sqlSelectAgg],
200
- sqlRelation: [...sqlRelation, ...sqlRelationAgg],
201
- sqlWhere,
202
- sqlGroupBy,
203
- sqlOrderby,
204
- sqlLimitOffset
205
- });
206
- let data = await userBranchModel.raw(sqlRaw);
207
- // get the count
208
- const sqlRawCount = (0, lib_1.buildSqlRawSelectCount)({
203
+ // const sqlRaw = buildSqlRawSelect({
204
+ // tableName: "branches",
205
+ // mainAlias: "brn",
206
+ // accountId: rest.accountId,
207
+ // sqlSelect: [...sqlSelect, ...sqlSelectAgg],
208
+ // sqlRelation: [...sqlRelation, ...sqlRelationAgg],
209
+ // sqlWhere,
210
+ // sqlGroupBy,
211
+ // sqlOrderby,
212
+ // sqlLimitOffset
213
+ // })
214
+ // let data = await userBranchModel.raw(sqlRaw)
215
+ // // get the count
216
+ // const sqlRawCount = buildSqlRawSelectCount({
217
+ // tableName: "branches",
218
+ // mainAlias: "brn",
219
+ // accountId: rest.accountId,
220
+ // sqlSelect,
221
+ // sqlRelation,
222
+ // sqlWhere,
223
+ // sqlGroupBy,
224
+ // sqlOrderby
225
+ // })
226
+ // let count = await userBranchModel.raw(sqlRawCount)
227
+ // const response = {
228
+ // data,
229
+ // total: data.length ? Number(count[0].filtered_count) : 0
230
+ // }
231
+ // get the listing data & count
232
+ const { data, total } = await (0, lib_1.getListWithCount)({
233
+ model: userBranchModel,
209
234
  tableName: "branches",
210
235
  mainAlias: "brn",
236
+ countKey: `${models_1.ModelUserBranchFields.branch_id}`,
211
237
  accountId: rest.accountId,
238
+ sqlRelationMaps,
239
+ filters,
240
+ filterColumns,
212
241
  sqlSelect,
242
+ sqlSelectAgg,
213
243
  sqlRelation,
244
+ sqlRelationAgg,
214
245
  sqlWhere,
215
246
  sqlGroupBy,
216
- sqlOrderby
247
+ sqlOrderby,
248
+ sqlLimitOffset
217
249
  });
218
- let count = await userBranchModel.raw(sqlRawCount);
219
250
  const response = {
220
251
  data,
221
- total: data.length ? Number(count[0].filtered_count) : 0
252
+ total
222
253
  };
223
254
  return response;
224
255
  };
@@ -1 +1 @@
1
- {"version":3,"file":"UserBranchService.js","sourceRoot":"","sources":["../../../src/services/branch/UserBranchService.ts"],"names":[],"mappings":"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","sourcesContent":["import { logError, throwError } from \"@/utils\";\n\nimport {\n UserBranchModel,\n ModelUserFields,\n ModelUserBranchFields,\n ModelCountryFields,\n ModelStateFields,\n ModelAreaFields\n} from \"@/models\";\n\nimport { buildSqlRelation, buildSqlRawSelect, buildSqlWhere, buildSqlSelect, buildSqlLimitOffset, buildSqlOrderBy, buildInjectionFieldsSqlSelect, buildSqlRawSelectCount } from \"@/lib\";\n\nimport { QueryList, QueryGet } from \"@/schema/common\";\nimport { DefaultServiceProps } from \"@/utils\";\n\nexport const userBranchUserTypes = {\n customer: \"customer\",\n retailer: \"retailer\"\n}\n\nexport const userBranchTypes = {\n branch: \"branch\",\n branch_shipping: \"branch_shipping\",\n shipping_address: \"shipping_address\"\n} as const\n\nexport type UserBranchType = typeof userBranchTypes[keyof typeof userBranchTypes]\n\nexport type UserBranchUserType = typeof userBranchUserTypes[keyof typeof userBranchUserTypes]\n\nexport type UserBranchServiceProps = DefaultServiceProps & {\n userBranchUserType: UserBranchUserType,\n userBranchType: UserBranchType,\n};\n\nexport type UserBranchGetProps = QueryGet & {\n userBranchId: number,\n};\n\nexport type UserBranchByUserIdGetProps = QueryGet & {\n userId: number,\n onlyHQ?: boolean\n limit?: number\n};\n\nexport type UserBranchListProps = QueryList & {\n // id: number,\n};\n\nexport type UserBranchRemoveProps = {\n userBranchIds: number[]\n};\n\nexport type UserBranchCreateProps = {\n userBranchType?: UserBranchType,\n data:\n // driver_image\n {\n administrator: {\n filename: string;\n // contentType: string;\n // bucketName: string;\n // projectId: string;\n // foldernameYear: string;\n // foldernameMonth: string;\n // foldernameDay: string;\n // uploadType: FileUploadType,\n // bufferFilename: string,\n // assetUrl: string,\n // referenceId: string,\n // referenceLabel: string,\n // referenceType: string,\n // batchCode?: string,\n // fileSizeBytes: number,\n // fileCompressFormat: FileCompressFormat,\n // requestFileSizeBytes: number,\n // requestFilename: string,\n // reference2Id: string,\n // reference2Label: string,\n // reference2Type: string,\n }\n }\n}\n\nexport type UserBranchUpdateProps = {\n userBranchType?: UserBranchType,\n data:\n // driver_image\n {\n administrator: {\n filename: string;\n // contentType: string;\n // bucketName: string;\n // projectId: string;\n // foldernameYear: string;\n // foldernameMonth: string;\n // foldernameDay: string;\n // uploadType: FileUploadType,\n // bufferFilename: string,\n // assetUrl: string,\n // referenceId: string,\n // referenceLabel: string,\n // referenceType: string,\n // batchCode?: string,\n // fileSizeBytes: number,\n // fileCompressFormat: FileCompressFormat,\n // requestFileSizeBytes: number,\n // requestFilename: string,\n // reference2Id: string,\n // reference2Label: string,\n // reference2Type: string,\n }\n }\n}\n\n// const getCreatePayload = (branchType: BranchType, data: UserBranchCreateProps[\"data\"]) => {\n\n// if (branchType === \"administrator\" && \"administrator\" in data) {\n\n// return {\n// user_type: branchType,\n// // file_name: data.driverImage.filename,\n// // content_type: data.driverImage.contentType,\n// // bucket_name: data.driverImage.bucketName,\n// // project_id: data.driverImage.projectId,\n// // foldername_year: data.driverImage.foldernameYear,\n// // foldername_month: data.driverImage.foldernameMonth,\n// // foldername_day: data.driverImage.foldernameDay,\n// // upload_type: data.driverImage.uploadType,\n// // buffer_file_name: data.driverImage.bufferFilename,\n// // asset_url: data.driverImage.assetUrl,\n// // reference_id: data.driverImage.referenceId,\n// // reference_label: data.driverImage.referenceLabel,\n// // reference_type: data.driverImage.referenceType,\n// // batch_code: data?.driverImage?.batchCode ?? \"\",\n// // file_size_bytes: data.driverImage.fileSizeBytes,\n// // file_compress_format: data.driverImage.fileCompressFormat,\n// // request_file_size_bytes: data.driverImage.requestFileSizeBytes,\n// // request_file_name: data.driverImage.requestFilename,\n// // reference2_id: data.driverImage.reference2Id,\n// // reference2_label: data.driverImage.reference2Label,\n// // reference2_type: data.driverImage.reference2Type,\n// }\n// }\n\n// return false\n\n// }\n\nlet mainSqlSelect = {\n [`brn.${ModelUserBranchFields.branch_id}`]: \"branch_id\",\n [`brn.${ModelUserBranchFields.user_id}`]: \"user_id\",\n [`brn.${ModelUserBranchFields.area_id}`]: \"area_id\",\n [`brn.${ModelUserBranchFields.state_id}`]: \"state_id\",\n [`brn.${ModelUserBranchFields.country_id}`]: \"country_id\",\n [`brn.${ModelUserBranchFields.address_1}`]: \"address_1\",\n [`brn.${ModelUserBranchFields.address_2}`]: \"address_2\",\n [`brn.${ModelUserBranchFields.branch_code}`]: \"branch_code\",\n [`brn.${ModelUserBranchFields.branch_contact}`]: \"branch_contact\",\n [`brn.${ModelUserBranchFields.branch_email}`]: \"branch_email\",\n [`brn.${ModelUserBranchFields.branch_name}`]: \"branch_name\",\n [`brn.${ModelUserBranchFields.status}`]: \"status\",\n [`brn.${ModelUserBranchFields.is_hq}`]: \"is_hq\",\n [`brn.${ModelUserBranchFields.pic_contact}`]: \"pic_contact\",\n [`brn.${ModelUserBranchFields.pic_email}`]: \"pic_email\",\n [`brn.${ModelUserBranchFields.pic_name}`]: \"pic_name\",\n [`brn.${ModelUserBranchFields.postcode}`]: \"postcode\",\n [`brn.${ModelUserBranchFields.remark}`]: \"remark\",\n [`brn.${ModelUserBranchFields.type}`]: \"type\",\n}\n\nlet regionSqlSelect = {\n [`cou.${ModelCountryFields.country_name}`]: \"country_name\",\n [`state.${ModelStateFields.state_name}`]: \"state_name\",\n [`area.${ModelAreaFields.area_name}`]: \"area_name\",\n}\n\nlet defaultSqlSelect = {\n [`brn.${ModelUserBranchFields.createdatetime}`]: \"createdatetime\",\n [`creator.${ModelUserFields.login_username}`]: \"createusername\",\n [`brn.${ModelUserBranchFields.updatedatetime}`]: \"updatedatetime\",\n [`updater.${ModelUserFields.login_username}`]: \"updateusername\",\n [`brn.${ModelUserBranchFields.isdelete}`]: \"isdelete\",\n [`brn.${ModelUserBranchFields.istrash}`]: \"istrash\",\n [`brn.${ModelUserBranchFields.accountid}`]: \"accountid\",\n}\n\nexport const UserBranchService = (props: UserBranchServiceProps) => {\n\n const {\n userBranchType = \"branch\",\n ...rest\n } = props\n\n const userBranchModel = UserBranchModel({ ...rest })\n\n // const createUserBranch = async ({ data, branchType: overrideBranchType }: UserBranchCreateProps) => {\n\n // const _branchType = overrideBranchType || branchType\n\n // const _data = getCreatePayload(_branchType, data)\n\n // if (!_data) {\n // throw new Error(`Invalid create payload: ${JSON.stringify(_data)}`);\n // }\n\n // const response = await userModel.create({ data: _data, createUserId: 0 })\n\n // return response\n // }\n\n const getUserBranch = async ({ userBranchId, datatypes = [] }: UserBranchGetProps) => {\n\n // let data: any = {}\n\n // if (branchType === \"branch\") {\n // // data = await customerService.getCustomer({ id, datatypes: datatypes as CustomerGetProps[\"datatypes\"] })\n // }\n\n // if (branchType === \"branch_shipping\") {\n // // data = await administratorService.getAdministrator({ id, })\n // }\n\n // if (branchType === \"shipping_address\") {\n // // data = await administratorService.getAdministrator({ id, })\n // }\n\n let { data } = await listUserBranches({\n limit: 1,\n offset: 0,\n filters: [{ field: `${ModelUserBranchFields.branch_id}`, operator: \"=\", value: userBranchId }],\n sortfield: `${ModelUserBranchFields.branch_id}`,\n sortorder: \"ASC\",\n datatypes\n })\n\n return data[0] ?? null;\n\n // if (!data) {\n // throw new Error(`Invalid id: ${id}`);\n // }\n\n return data\n };\n\n const getUserBranchByUserId = async ({ userId, onlyHQ = false, limit = 100, datatypes = [] }: UserBranchByUserIdGetProps) => {\n\n let filters = [\n { field: `${ModelUserBranchFields.user_id}`, operator: \"=\", value: userId }\n ] as any\n\n if (onlyHQ === true) {\n filters.push({\n field: `${ModelUserBranchFields.is_hq}`, operator: \"=\", value: 1\n })\n }\n\n let { data } = await listUserBranches({\n limit,\n offset: 0,\n filters,\n sortfield: `${ModelUserBranchFields.user_id}`,\n sortorder: \"ASC\",\n datatypes\n })\n\n return data\n };\n\n const listUserBranches = async ({\n limit,\n offset,\n filters = [],\n sortfield,\n sortorder,\n datatypes = []\n }: UserBranchListProps) => {\n\n let sqlSelect: string[] = []\n let sqlRelation: string[] = []\n let sqlGroupBy: string[] = []\n\n let sqlSelectAgg: string[] = []\n let sqlRelationAgg: string[] = []\n\n sqlSelect = [\n buildSqlSelect(``, mainSqlSelect),\n buildSqlSelect(``, regionSqlSelect),\n buildSqlSelect(``, defaultSqlSelect)\n ]\n\n sqlRelation = [\n buildSqlRelation(\"left\", \"brn\", \"countries\", \"cou\", [\"brn.country_id = cou.country_id\", \"cou.isdelete = false\", \"cou.istrash = false\"]),\n buildSqlRelation(\"left\", \"brn\", \"states\", \"state\", [\"brn.state_id = state.state_id\", \"state.isdelete = false\", \"state.istrash = false\"]),\n buildSqlRelation(\"left\", \"brn\", \"areas\", \"area\", [\"brn.area_id = area.area_id\", \"area.isdelete = false\", \"area.istrash = false\"]),\n buildSqlRelation(\"left\", \"brn\", \"users\", \"creator\", [\"brn.createuserid = creator.user_id\", \"creator.isdelete = false\", \"creator.istrash = false\"]),\n buildSqlRelation(\"left\", \"brn\", \"users\", \"updater\", [\"brn.updateuserid = updater.user_id\", \"updater.isdelete = false\", \"updater.istrash = false\"])\n ]\n\n // sqlRelationAgg = [\n // buildSqlRelation(\"left\", \"brn\", \"document_items\", \"docitm\", [\"brn.document_id = docitm.document_id\", \"docitm.isdelete = false\", \"docitm.istrash = false\"]),\n // ]\n\n sqlGroupBy = [\n ...Object.keys(mainSqlSelect),\n ...Object.keys(regionSqlSelect),\n ...Object.keys(defaultSqlSelect)\n ]\n\n let filterColumns = {\n ...mainSqlSelect,\n ...regionSqlSelect,\n ...defaultSqlSelect\n }\n\n // if (datatypes.includes(salesOrderDataTypes.salesOrderInjectionFields)) {\n\n // let activeInjectionFields = await injectionFieldService.listActiveInjectionFields(\"document\", documentTypeKey.toLowerCase() as any)\n\n // const salesOrderInjectionFieldSqlSelect = buildInjectionFieldsSqlSelect(\"dif\", activeInjectionFields)\n\n // filterColumns = { ...filterColumns, ...salesOrderInjectionFieldSqlSelect }\n\n // sqlSelect = [...sqlSelect, ...(activeInjectionFields.length > 0 ? [buildSqlSelect(``, salesOrderInjectionFieldSqlSelect)] : [])]\n // sqlRelation = [...sqlRelation, buildSqlRelation(\"left\", \"brn\", \"document_injection_fields\", \"dif\", [\"brn.document_id = dif.document_id\", \"dif.field_ref = 'document'\", `dif.field_module = '${documentTypeKey.toLowerCase()}'`, \"dif.isdelete = false\", \"dif.istrash = false\"])]\n // sqlGroupBy = [...sqlGroupBy, ...Object.keys(salesOrderInjectionFieldSqlSelect)]\n // }\n\n // let itemSqlSelectAgg = buildDocumentItemSqlSelectAgg()\n\n // if (datatypes.includes(salesOrderDataTypes.salesOrderItemInjectionFields)) {\n\n // let activeInjectionFields = await injectionFieldService.listActiveInjectionFields(\"document_item\", documentTypeKey.toLowerCase() as any)\n\n // const salesOrderItemInjectionFieldSqlSelect = buildInjectionFieldsSqlSelect(\"difi\", activeInjectionFields)\n\n // if (Object.entries(salesOrderItemInjectionFieldSqlSelect).length > 0) {\n // Object.entries(salesOrderItemInjectionFieldSqlSelect).map(([col, alias]) => {\n // itemSqlSelectAgg.push(`'${alias}', ${col}`)\n // })\n // }\n\n // sqlRelationAgg = [...sqlRelationAgg, buildSqlRelation(\"left\", \"docitm\", \"document_injection_fields\", \"difi\", [\"docitm.document_item_id = difi.document_item_id\", \"difi.field_ref = 'document_item'\", `difi.field_module = '${documentTypeKey.toLowerCase()}'`, \"difi.isdelete = false\", \"difi.istrash = false\"])]\n\n // }\n\n // let itemSqlSelect = buildDocumentItemSqlSelect(itemSqlSelectAgg)\n\n // sqlSelectAgg = [...sqlSelectAgg, ...[buildSqlSelect(``, itemSqlSelect)]]\n\n let sqlWhere = [\n `brn.isdelete = false`,\n `brn.istrash = false`,\n ...(filters.length ? [buildSqlWhere(filters, filterColumns)?.where] : []),\n ]\n\n let sqlOrderby = buildSqlOrderBy(sortfield, sortorder)\n let sqlLimitOffset = buildSqlLimitOffset(limit, offset)\n\n // get the data (pagination)\n const sqlRaw = buildSqlRawSelect({\n tableName: \"branches\",\n mainAlias: \"brn\",\n accountId: rest.accountId,\n sqlSelect: [...sqlSelect, ...sqlSelectAgg],\n sqlRelation: [...sqlRelation, ...sqlRelationAgg],\n sqlWhere,\n sqlGroupBy,\n sqlOrderby,\n sqlLimitOffset\n })\n\n let data = await userBranchModel.raw(sqlRaw)\n\n // get the count\n const sqlRawCount = buildSqlRawSelectCount({\n tableName: \"branches\",\n mainAlias: \"brn\",\n accountId: rest.accountId,\n sqlSelect,\n sqlRelation,\n sqlWhere,\n sqlGroupBy,\n sqlOrderby\n })\n\n let count = await userBranchModel.raw(sqlRawCount)\n\n const response = {\n data,\n total: data.length ? Number(count[0].filtered_count) : 0\n }\n\n return response\n\n };\n\n // const removeUserBranches = async ({ userBranchIds }: UserBranchRemoveProps): Promise<User[] | null> => {\n\n // if (!userBranchIds.length) throwError('id is required');\n\n // const response = await userModel.trash({ userBranchIds, updateUserId: actionUserId });\n\n // return response\n // };\n\n const getUserBranchDataTypes = () => {\n\n let data: any[] = [];\n let total = 0;\n\n if (userBranchType === \"branch\") {\n // data = customerService.getDataTypes()\n }\n\n // const data = await userModel.list(payload);\n\n // if (!data?.file_id) {\n // throw new Error(`Invalid id: ${id}`);\n // }\n\n return data\n };\n\n return {\n // uploadFileByBuffer,\n getUserBranch,\n getUserBranchByUserId,\n listUserBranches,\n // removeUsers,\n getUserBranchDataTypes\n }\n\n}\n\n"]}
1
+ {"version":3,"file":"UserBranchService.js","sourceRoot":"","sources":["../../../src/services/branch/UserBranchService.ts"],"names":[],"mappings":"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","sourcesContent":["import { logError, throwError } from \"@/utils\";\n\nimport {\n UserBranchModel,\n ModelUserFields,\n ModelUserBranchFields,\n ModelCountryFields,\n ModelStateFields,\n ModelAreaFields\n} from \"@/models\";\n\nimport { buildSqlWhere, buildSqlSelect, buildSqlLimitOffset, buildSqlOrderBy, getListWithCount, getUserBranchRelationMaps } from \"@/lib\";\n\nimport { QueryList, QueryGet } from \"@/schema/common\";\nimport { DefaultServiceProps } from \"@/utils\";\n\nexport const userBranchUserTypes = {\n customer: \"customer\",\n retailer: \"retailer\"\n}\n\nexport const userBranchTypes = {\n branch: \"branch\",\n branch_shipping: \"branch_shipping\",\n shipping_address: \"shipping_address\"\n} as const\n\nexport type UserBranchType = typeof userBranchTypes[keyof typeof userBranchTypes]\n\nexport type UserBranchUserType = typeof userBranchUserTypes[keyof typeof userBranchUserTypes]\n\nexport type UserBranchServiceProps = DefaultServiceProps & {\n userBranchUserType: UserBranchUserType,\n userBranchType: UserBranchType,\n};\n\nexport type UserBranchGetProps = QueryGet & {\n userBranchId: number,\n};\n\nexport type UserBranchByUserIdGetProps = QueryGet & {\n userId: number,\n onlyHQ?: boolean\n limit?: number\n};\n\nexport type UserBranchListProps = QueryList & {\n // id: number,\n};\n\nexport type UserBranchRemoveProps = {\n userBranchIds: number[]\n};\n\nexport type UserBranchCreateProps = {\n userBranchType?: UserBranchType,\n data:\n // driver_image\n {\n administrator: {\n filename: string;\n // contentType: string;\n // bucketName: string;\n // projectId: string;\n // foldernameYear: string;\n // foldernameMonth: string;\n // foldernameDay: string;\n // uploadType: FileUploadType,\n // bufferFilename: string,\n // assetUrl: string,\n // referenceId: string,\n // referenceLabel: string,\n // referenceType: string,\n // batchCode?: string,\n // fileSizeBytes: number,\n // fileCompressFormat: FileCompressFormat,\n // requestFileSizeBytes: number,\n // requestFilename: string,\n // reference2Id: string,\n // reference2Label: string,\n // reference2Type: string,\n }\n }\n}\n\nexport type UserBranchUpdateProps = {\n userBranchType?: UserBranchType,\n data:\n // driver_image\n {\n administrator: {\n filename: string;\n // contentType: string;\n // bucketName: string;\n // projectId: string;\n // foldernameYear: string;\n // foldernameMonth: string;\n // foldernameDay: string;\n // uploadType: FileUploadType,\n // bufferFilename: string,\n // assetUrl: string,\n // referenceId: string,\n // referenceLabel: string,\n // referenceType: string,\n // batchCode?: string,\n // fileSizeBytes: number,\n // fileCompressFormat: FileCompressFormat,\n // requestFileSizeBytes: number,\n // requestFilename: string,\n // reference2Id: string,\n // reference2Label: string,\n // reference2Type: string,\n }\n }\n}\n\n// const getCreatePayload = (branchType: BranchType, data: UserBranchCreateProps[\"data\"]) => {\n\n// if (branchType === \"administrator\" && \"administrator\" in data) {\n\n// return {\n// user_type: branchType,\n// // file_name: data.driverImage.filename,\n// // content_type: data.driverImage.contentType,\n// // bucket_name: data.driverImage.bucketName,\n// // project_id: data.driverImage.projectId,\n// // foldername_year: data.driverImage.foldernameYear,\n// // foldername_month: data.driverImage.foldernameMonth,\n// // foldername_day: data.driverImage.foldernameDay,\n// // upload_type: data.driverImage.uploadType,\n// // buffer_file_name: data.driverImage.bufferFilename,\n// // asset_url: data.driverImage.assetUrl,\n// // reference_id: data.driverImage.referenceId,\n// // reference_label: data.driverImage.referenceLabel,\n// // reference_type: data.driverImage.referenceType,\n// // batch_code: data?.driverImage?.batchCode ?? \"\",\n// // file_size_bytes: data.driverImage.fileSizeBytes,\n// // file_compress_format: data.driverImage.fileCompressFormat,\n// // request_file_size_bytes: data.driverImage.requestFileSizeBytes,\n// // request_file_name: data.driverImage.requestFilename,\n// // reference2_id: data.driverImage.reference2Id,\n// // reference2_label: data.driverImage.reference2Label,\n// // reference2_type: data.driverImage.reference2Type,\n// }\n// }\n\n// return false\n\n// }\n\nlet mainSqlSelect = {\n [`brn.${ModelUserBranchFields.branch_id}`]: \"branch_id\",\n [`brn.${ModelUserBranchFields.user_id}`]: \"user_id\",\n [`brn.${ModelUserBranchFields.area_id}`]: \"area_id\",\n [`brn.${ModelUserBranchFields.state_id}`]: \"state_id\",\n [`brn.${ModelUserBranchFields.country_id}`]: \"country_id\",\n [`brn.${ModelUserBranchFields.address_1}`]: \"address_1\",\n [`brn.${ModelUserBranchFields.address_2}`]: \"address_2\",\n [`brn.${ModelUserBranchFields.branch_code}`]: \"branch_code\",\n [`brn.${ModelUserBranchFields.branch_contact}`]: \"branch_contact\",\n [`brn.${ModelUserBranchFields.branch_email}`]: \"branch_email\",\n [`brn.${ModelUserBranchFields.branch_name}`]: \"branch_name\",\n [`brn.${ModelUserBranchFields.status}`]: \"status\",\n [`brn.${ModelUserBranchFields.is_hq}`]: \"is_hq\",\n [`brn.${ModelUserBranchFields.pic_contact}`]: \"pic_contact\",\n [`brn.${ModelUserBranchFields.pic_email}`]: \"pic_email\",\n [`brn.${ModelUserBranchFields.pic_name}`]: \"pic_name\",\n [`brn.${ModelUserBranchFields.postcode}`]: \"postcode\",\n [`brn.${ModelUserBranchFields.remark}`]: \"remark\",\n [`brn.${ModelUserBranchFields.type}`]: \"type\",\n}\n\nlet regionSqlSelect = {\n [`cou.${ModelCountryFields.country_name}`]: \"country_name\",\n [`state.${ModelStateFields.state_name}`]: \"state_name\",\n [`area.${ModelAreaFields.area_name}`]: \"area_name\",\n}\n\nlet defaultSqlSelect = {\n [`brn.${ModelUserBranchFields.createdatetime}`]: \"createdatetime\",\n [`creator.${ModelUserFields.login_username}`]: \"createusername\",\n [`brn.${ModelUserBranchFields.updatedatetime}`]: \"updatedatetime\",\n [`updater.${ModelUserFields.login_username}`]: \"updateusername\",\n [`brn.${ModelUserBranchFields.isdelete}`]: \"isdelete\",\n [`brn.${ModelUserBranchFields.istrash}`]: \"istrash\",\n [`brn.${ModelUserBranchFields.accountid}`]: \"accountid\",\n}\n\nconst { relationKeys, sqlRelationMaps } = getUserBranchRelationMaps()\n\nexport const UserBranchService = (props: UserBranchServiceProps) => {\n\n const {\n userBranchType = \"branch\",\n ...rest\n } = props\n\n const userBranchModel = UserBranchModel({ ...rest })\n\n // const createUserBranch = async ({ data, branchType: overrideBranchType }: UserBranchCreateProps) => {\n\n // const _branchType = overrideBranchType || branchType\n\n // const _data = getCreatePayload(_branchType, data)\n\n // if (!_data) {\n // throw new Error(`Invalid create payload: ${JSON.stringify(_data)}`);\n // }\n\n // const response = await userModel.create({ data: _data, createUserId: 0 })\n\n // return response\n // }\n\n const getUserBranch = async ({ userBranchId, datatypes = [] }: UserBranchGetProps) => {\n\n // let data: any = {}\n\n // if (branchType === \"branch\") {\n // // data = await customerService.getCustomer({ id, datatypes: datatypes as CustomerGetProps[\"datatypes\"] })\n // }\n\n // if (branchType === \"branch_shipping\") {\n // // data = await administratorService.getAdministrator({ id, })\n // }\n\n // if (branchType === \"shipping_address\") {\n // // data = await administratorService.getAdministrator({ id, })\n // }\n\n let { data } = await listUserBranches({\n limit: 1,\n offset: 0,\n filters: [{ field: `${ModelUserBranchFields.branch_id}`, operator: \"=\", value: userBranchId }],\n sortfield: `${ModelUserBranchFields.branch_id}`,\n sortorder: \"ASC\",\n datatypes\n })\n\n return data[0] ?? null;\n\n // if (!data) {\n // throw new Error(`Invalid id: ${id}`);\n // }\n\n return data\n };\n\n const getUserBranchByUserId = async ({ userId, onlyHQ = false, limit = 100, datatypes = [] }: UserBranchByUserIdGetProps) => {\n\n let filters = [\n { field: `${ModelUserBranchFields.user_id}`, operator: \"=\", value: userId }\n ] as any\n\n if (onlyHQ === true) {\n filters.push({\n field: `${ModelUserBranchFields.is_hq}`, operator: \"=\", value: 1\n })\n }\n\n let { data } = await listUserBranches({\n limit,\n offset: 0,\n filters,\n sortfield: `${ModelUserBranchFields.user_id}`,\n sortorder: \"ASC\",\n datatypes\n })\n\n return data\n };\n\n const listUserBranches = async ({\n limit,\n offset,\n filters = [],\n sortfield,\n sortorder,\n datatypes = []\n }: UserBranchListProps) => {\n\n let sqlSelect: string[] = []\n let sqlRelation: string[] = []\n let sqlGroupBy: string[] = []\n\n let sqlSelectAgg: string[] = []\n let sqlRelationAgg: string[] = []\n\n sqlSelect = [\n buildSqlSelect(``, mainSqlSelect),\n buildSqlSelect(``, regionSqlSelect),\n buildSqlSelect(``, defaultSqlSelect)\n ]\n\n // sqlRelation = [\n // buildSqlRelation(\"left\", \"brn\", \"countries\", \"cou\", [\"brn.country_id = cou.country_id\", \"cou.isdelete = false\", \"cou.istrash = false\"]),\n // buildSqlRelation(\"left\", \"brn\", \"states\", \"state\", [\"brn.state_id = state.state_id\", \"state.isdelete = false\", \"state.istrash = false\"]),\n // buildSqlRelation(\"left\", \"brn\", \"areas\", \"area\", [\"brn.area_id = area.area_id\", \"area.isdelete = false\", \"area.istrash = false\"]),\n // buildSqlRelation(\"left\", \"brn\", \"users\", \"creator\", [\"brn.createuserid = creator.user_id\", \"creator.isdelete = false\", \"creator.istrash = false\"]),\n // buildSqlRelation(\"left\", \"brn\", \"users\", \"updater\", [\"brn.updateuserid = updater.user_id\", \"updater.isdelete = false\", \"updater.istrash = false\"])\n // ]\n\n sqlRelation = [\n sqlRelationMaps.cou,\n sqlRelationMaps.state,\n sqlRelationMaps.area,\n sqlRelationMaps.creator,\n sqlRelationMaps.updater\n ]\n\n // sqlRelationAgg = [\n // buildSqlRelation(\"left\", \"brn\", \"document_items\", \"docitm\", [\"brn.document_id = docitm.document_id\", \"docitm.isdelete = false\", \"docitm.istrash = false\"]),\n // ]\n\n sqlGroupBy = [\n ...Object.keys(mainSqlSelect),\n ...Object.keys(regionSqlSelect),\n ...Object.keys(defaultSqlSelect)\n ]\n\n let filterColumns = {\n ...mainSqlSelect,\n ...regionSqlSelect,\n ...defaultSqlSelect\n }\n\n // if (datatypes.includes(salesOrderDataTypes.salesOrderInjectionFields)) {\n\n // let activeInjectionFields = await injectionFieldService.listActiveInjectionFields(\"document\", documentTypeKey.toLowerCase() as any)\n\n // const salesOrderInjectionFieldSqlSelect = buildInjectionFieldsSqlSelect(\"dif\", activeInjectionFields)\n\n // filterColumns = { ...filterColumns, ...salesOrderInjectionFieldSqlSelect }\n\n // sqlSelect = [...sqlSelect, ...(activeInjectionFields.length > 0 ? [buildSqlSelect(``, salesOrderInjectionFieldSqlSelect)] : [])]\n // sqlRelation = [...sqlRelation, buildSqlRelation(\"left\", \"brn\", \"document_injection_fields\", \"dif\", [\"brn.document_id = dif.document_id\", \"dif.field_ref = 'document'\", `dif.field_module = '${documentTypeKey.toLowerCase()}'`, \"dif.isdelete = false\", \"dif.istrash = false\"])]\n // sqlGroupBy = [...sqlGroupBy, ...Object.keys(salesOrderInjectionFieldSqlSelect)]\n // }\n\n // let itemSqlSelectAgg = buildDocumentItemSqlSelectAgg()\n\n // if (datatypes.includes(salesOrderDataTypes.salesOrderItemInjectionFields)) {\n\n // let activeInjectionFields = await injectionFieldService.listActiveInjectionFields(\"document_item\", documentTypeKey.toLowerCase() as any)\n\n // const salesOrderItemInjectionFieldSqlSelect = buildInjectionFieldsSqlSelect(\"difi\", activeInjectionFields)\n\n // if (Object.entries(salesOrderItemInjectionFieldSqlSelect).length > 0) {\n // Object.entries(salesOrderItemInjectionFieldSqlSelect).map(([col, alias]) => {\n // itemSqlSelectAgg.push(`'${alias}', ${col}`)\n // })\n // }\n\n // sqlRelationAgg = [...sqlRelationAgg, buildSqlRelation(\"left\", \"docitm\", \"document_injection_fields\", \"difi\", [\"docitm.document_item_id = difi.document_item_id\", \"difi.field_ref = 'document_item'\", `difi.field_module = '${documentTypeKey.toLowerCase()}'`, \"difi.isdelete = false\", \"difi.istrash = false\"])]\n\n // }\n\n // let itemSqlSelect = buildDocumentItemSqlSelect(itemSqlSelectAgg)\n\n // sqlSelectAgg = [...sqlSelectAgg, ...[buildSqlSelect(``, itemSqlSelect)]]\n\n let sqlWhere = [\n `brn.isdelete = false`,\n `brn.istrash = false`,\n ...(filters.length ? [buildSqlWhere(filters, filterColumns)?.where] : []),\n ]\n\n let sqlOrderby = buildSqlOrderBy(sortfield, sortorder)\n let sqlLimitOffset = buildSqlLimitOffset(limit, offset)\n\n // get the data (pagination)\n // const sqlRaw = buildSqlRawSelect({\n // tableName: \"branches\",\n // mainAlias: \"brn\",\n // accountId: rest.accountId,\n // sqlSelect: [...sqlSelect, ...sqlSelectAgg],\n // sqlRelation: [...sqlRelation, ...sqlRelationAgg],\n // sqlWhere,\n // sqlGroupBy,\n // sqlOrderby,\n // sqlLimitOffset\n // })\n\n // let data = await userBranchModel.raw(sqlRaw)\n\n // // get the count\n // const sqlRawCount = buildSqlRawSelectCount({\n // tableName: \"branches\",\n // mainAlias: \"brn\",\n // accountId: rest.accountId,\n // sqlSelect,\n // sqlRelation,\n // sqlWhere,\n // sqlGroupBy,\n // sqlOrderby\n // })\n\n // let count = await userBranchModel.raw(sqlRawCount)\n\n // const response = {\n // data,\n // total: data.length ? Number(count[0].filtered_count) : 0\n // }\n\n // get the listing data & count\n const { data, total } = await getListWithCount({\n model: userBranchModel,\n tableName: \"branches\",\n mainAlias: \"brn\",\n countKey: `${ModelUserBranchFields.branch_id}`,\n accountId: rest.accountId,\n sqlRelationMaps,\n filters,\n filterColumns,\n sqlSelect,\n sqlSelectAgg,\n sqlRelation,\n sqlRelationAgg,\n sqlWhere,\n sqlGroupBy,\n sqlOrderby,\n sqlLimitOffset\n })\n\n const response = {\n data,\n total\n }\n\n return response\n\n };\n\n // const removeUserBranches = async ({ userBranchIds }: UserBranchRemoveProps): Promise<User[] | null> => {\n\n // if (!userBranchIds.length) throwError('id is required');\n\n // const response = await userModel.trash({ userBranchIds, updateUserId: actionUserId });\n\n // return response\n // };\n\n const getUserBranchDataTypes = () => {\n\n let data: any[] = [];\n let total = 0;\n\n if (userBranchType === \"branch\") {\n // data = customerService.getDataTypes()\n }\n\n // const data = await userModel.list(payload);\n\n // if (!data?.file_id) {\n // throw new Error(`Invalid id: ${id}`);\n // }\n\n return data\n };\n\n return {\n // uploadFileByBuffer,\n getUserBranch,\n getUserBranchByUserId,\n listUserBranches,\n // removeUsers,\n getUserBranchDataTypes\n }\n\n}\n\n"]}
@@ -10,6 +10,7 @@ exports.documentProfileTypes = {
10
10
  shipping: "shipping",
11
11
  billing: "billing"
12
12
  };
13
+ const { relationKeys, sqlRelationMaps } = (0, lib_1.getDocumentProfileRelationMaps)();
13
14
  const getCreatePayload = (documentId, documentType, data) => {
14
15
  return {
15
16
  [`${models_1.ModelDocumentProfileFields.document_id}`]: documentId,
@@ -268,9 +269,13 @@ const DocumentProfileService = (props) => {
268
269
  (0, lib_1.buildSqlSelect)(``, mainSqlSelect),
269
270
  (0, lib_1.buildSqlSelect)(``, defaultSqlSelect)
270
271
  ];
272
+ // sqlRelation = [
273
+ // buildSqlRelation("left", "docpro", "users", "creator", ["docpro.createuserid = creator.user_id", "creator.isdelete = false", "creator.istrash = false"]),
274
+ // buildSqlRelation("left", "docpro", "users", "updater", ["docpro.updateuserid = updater.user_id", "updater.isdelete = false", "updater.istrash = false"])
275
+ // ]
271
276
  sqlRelation = [
272
- (0, lib_1.buildSqlRelation)("left", "docpro", "users", "creator", ["docpro.createuserid = creator.user_id", "creator.isdelete = false", "creator.istrash = false"]),
273
- (0, lib_1.buildSqlRelation)("left", "docpro", "users", "updater", ["docpro.updateuserid = updater.user_id", "updater.isdelete = false", "updater.istrash = false"])
277
+ sqlRelationMaps.creator,
278
+ sqlRelationMaps.updater
274
279
  ];
275
280
  // sqlRelationAgg = [
276
281
  // buildSqlRelation("left", "docpro", "document_items", "docitm", ["docpro.document_id = docitm.document_id", "docitm.isdelete = false", "docitm.istrash = false"]),
@@ -291,34 +296,57 @@ const DocumentProfileService = (props) => {
291
296
  let sqlOrderby = (0, lib_1.buildSqlOrderBy)(sortfield, sortorder);
292
297
  let sqlLimitOffset = (0, lib_1.buildSqlLimitOffset)(limit, offset);
293
298
  // get the data (pagination)
294
- const sqlRaw = (0, lib_1.buildSqlRawSelect)({
295
- tableName: "document_profiles",
296
- mainAlias: "docpro",
297
- accountId: rest.accountId,
298
- sqlSelect: [...sqlSelect, ...sqlSelectAgg],
299
- sqlRelation: [...sqlRelation, ...sqlRelationAgg],
300
- sqlWhere,
301
- sqlGroupBy,
302
- sqlOrderby,
303
- sqlLimitOffset
304
- });
305
- let data = await documentModel.raw(sqlRaw);
306
- // get the count
307
- const sqlRawCount = (0, lib_1.buildSqlRawSelectCount)({
299
+ // const sqlRaw = buildSqlRawSelect({
300
+ // tableName: "document_profiles",
301
+ // mainAlias: "docpro",
302
+ // accountId: rest.accountId,
303
+ // sqlSelect: [...sqlSelect, ...sqlSelectAgg],
304
+ // sqlRelation: [...sqlRelation, ...sqlRelationAgg],
305
+ // sqlWhere,
306
+ // sqlGroupBy,
307
+ // sqlOrderby,
308
+ // sqlLimitOffset
309
+ // })
310
+ // let data = await documentModel.raw(sqlRaw)
311
+ // // get the count
312
+ // const sqlRawCount = buildSqlRawSelectCount({
313
+ // tableName: "document_profiles",
314
+ // mainAlias: "docpro",
315
+ // accountId: rest.accountId,
316
+ // sqlSelect,
317
+ // sqlRelation,
318
+ // sqlWhere,
319
+ // sqlGroupBy,
320
+ // sqlOrderby
321
+ // })
322
+ // let count = await documentModel.raw(sqlRawCount)
323
+ // get the listing data & count
324
+ const { data, total } = await (0, lib_1.getListWithCount)({
325
+ model: documentModel,
308
326
  tableName: "document_profiles",
309
327
  mainAlias: "docpro",
328
+ countKey: `${models_1.ModelDocumentProfileFields.document_profile_id}`,
310
329
  accountId: rest.accountId,
330
+ sqlRelationMaps,
331
+ filters,
332
+ filterColumns,
311
333
  sqlSelect,
334
+ sqlSelectAgg,
312
335
  sqlRelation,
336
+ sqlRelationAgg,
313
337
  sqlWhere,
314
338
  sqlGroupBy,
315
- sqlOrderby
339
+ sqlOrderby,
340
+ sqlLimitOffset
316
341
  });
317
- let count = await documentModel.raw(sqlRawCount);
318
342
  const response = {
319
343
  data,
320
- total: data.length ? Number(count[0].filtered_count) : 0
344
+ total
321
345
  };
346
+ // const response = {
347
+ // data,
348
+ // total: data.length ? Number(count[0].filtered_count) : 0
349
+ // }
322
350
  return response;
323
351
  };
324
352
  const removeDocumentProfiles = async ({ documentIds }) => {