@things-factory/sales-base 4.3.46 → 4.3.50

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 (37) hide show
  1. package/dist-server/constants/order.js +2 -1
  2. package/dist-server/constants/order.js.map +1 -1
  3. package/dist-server/controllers/ecommerce/sellercraft-controller.js +102 -94
  4. package/dist-server/controllers/ecommerce/sellercraft-controller.js.map +1 -1
  5. package/dist-server/service/arrival-notice/arrival-notice-mutation.js +93 -21
  6. package/dist-server/service/arrival-notice/arrival-notice-mutation.js.map +1 -1
  7. package/dist-server/service/draft-release-good/draft-release-good.js +5 -0
  8. package/dist-server/service/draft-release-good/draft-release-good.js.map +1 -1
  9. package/dist-server/service/manifest/manifest-mutation.js +78 -1
  10. package/dist-server/service/manifest/manifest-mutation.js.map +1 -1
  11. package/dist-server/service/manifest/manifest-query.js +47 -12
  12. package/dist-server/service/manifest/manifest-query.js.map +1 -1
  13. package/dist-server/service/manifest/manifest-type.js +8 -0
  14. package/dist-server/service/manifest/manifest-type.js.map +1 -1
  15. package/dist-server/service/manifest/manifest.js +5 -0
  16. package/dist-server/service/manifest/manifest.js.map +1 -1
  17. package/dist-server/service/purchase-order/purchase-order-mutation.js +8 -4
  18. package/dist-server/service/purchase-order/purchase-order-mutation.js.map +1 -1
  19. package/dist-server/service/release-good/release-good-mutation.js +2 -16
  20. package/dist-server/service/release-good/release-good-mutation.js.map +1 -1
  21. package/dist-server/service/release-good/release-good-query.js +70 -58
  22. package/dist-server/service/release-good/release-good-query.js.map +1 -1
  23. package/package.json +13 -13
  24. package/server/constants/order.ts +2 -1
  25. package/server/controllers/ecommerce/sellercraft-controller.ts +124 -107
  26. package/server/service/arrival-notice/arrival-notice-mutation.ts +110 -22
  27. package/server/service/draft-release-good/draft-release-good.ts +7 -3
  28. package/server/service/manifest/manifest-mutation.ts +78 -3
  29. package/server/service/manifest/manifest-query.ts +68 -18
  30. package/server/service/manifest/manifest-type.ts +6 -0
  31. package/server/service/manifest/manifest.ts +6 -2
  32. package/server/service/purchase-order/purchase-order-mutation.ts +10 -5
  33. package/server/service/release-good/release-good-mutation.ts +23 -30
  34. package/server/service/release-good/release-good-query.ts +81 -65
  35. package/translations/en.json +4 -0
  36. package/translations/ko.json +6 -2
  37. package/translations/ms.json +5 -1
@@ -46,7 +46,8 @@ exports.DISPATCHMENT_STATUS = {
46
46
  };
47
47
  exports.MANIFEST_STATUS = {
48
48
  OPEN: 'OPEN',
49
- CLOSED: 'CLOSED'
49
+ CLOSED: 'CLOSED',
50
+ IN_QUEUE: 'IN_QUEUE'
50
51
  };
51
52
  exports.ORDER_INVENTORY_TYPE = {
52
53
  RELEASE_OF_GOODS: 'RELEASE_OF_GOODS',
@@ -1 +1 @@
1
- {"version":3,"file":"order.js","sourceRoot":"","sources":["../../server/constants/order.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"order.js","sourceRoot":"","sources":["../../server/constants/order.ts"],"names":[],"mappings":"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"}
@@ -11,109 +11,117 @@ const release_good_1 = require("../../service/release-good/release-good");
11
11
  const order_controller_1 = require("../order-controller");
12
12
  class SellercraftController extends order_controller_1.OrderController {
13
13
  async packOrder(sellercraft, releaseGood) {
14
- const orderProducts = releaseGood.orderProducts;
15
- let sellercraftOPs = [];
16
- sellercraftOPs = orderProducts.map(orderProduct => {
17
- const product = orderProduct.product;
18
- return {
19
- sku: product.sku,
20
- releaseQty: orderProduct.releaseQty,
21
- uom: 'EA'
14
+ let sellercraftSetting = sellercraft.sellercraftSetting;
15
+ let disablePackOrder = (sellercraftSetting === null || sellercraftSetting === void 0 ? void 0 : sellercraftSetting.disablePackOrder) && (sellercraftSetting === null || sellercraftSetting === void 0 ? void 0 : sellercraftSetting.disablePackOrder) == 1 ? true : false;
16
+ if (!disablePackOrder) {
17
+ const orderProducts = releaseGood.orderProducts;
18
+ let sellercraftOPs = [];
19
+ sellercraftOPs = orderProducts.map(orderProduct => {
20
+ const product = orderProduct.product;
21
+ return {
22
+ sku: product.sku,
23
+ releaseQty: orderProduct.releaseQty,
24
+ uom: 'EA'
25
+ };
26
+ });
27
+ const orderInformation = {
28
+ accountId: sellercraft.accountId,
29
+ orderId: releaseGood.refNo2,
30
+ sellercraftOPs
22
31
  };
23
- });
24
- const orderInformation = {
25
- accountId: sellercraft.accountId,
26
- orderId: releaseGood.refNo2,
27
- sellercraftOPs
28
- };
29
- const packageId = await integration_sellercraft_1.SellercraftAPI.packMarketplaceOrder(sellercraft, Object.assign(Object.assign({}, orderInformation), { context: { state: { domain: this === null || this === void 0 ? void 0 : this.domain, user: this === null || this === void 0 ? void 0 : this.user } } }));
30
- releaseGood.packageId = packageId;
31
- releaseGood.updater = this.user;
32
+ const packageId = await integration_sellercraft_1.SellercraftAPI.packMarketplaceOrder(sellercraft, Object.assign(Object.assign({}, orderInformation), { context: { state: { domain: this === null || this === void 0 ? void 0 : this.domain, user: this === null || this === void 0 ? void 0 : this.user } } }));
33
+ releaseGood.packageId = packageId;
34
+ releaseGood.updater = this.user;
35
+ }
32
36
  return releaseGood;
33
37
  }
34
38
  async updateSellercraftStock(sellercraft, orderProducts, type) {
35
- for (var i = 0; i < orderProducts.length; i++) {
36
- const orderProduct = orderProducts[i];
37
- const product = orderProduct.product;
38
- const pendingAssignOPs = await this.trxMgr.getRepository(order_product_1.OrderProduct).find({
39
- where: {
40
- domain: this.domain,
41
- bizplace: orderProduct.bizplace,
42
- product,
43
- status: constants_1.ORDER_PRODUCT_STATUS.PENDING_ASSIGN
39
+ let sellercraftSetting = sellercraft.sellercraftSetting;
40
+ let disableUpdateStock = (sellercraftSetting === null || sellercraftSetting === void 0 ? void 0 : sellercraftSetting.disableUpdateStock) && (sellercraftSetting === null || sellercraftSetting === void 0 ? void 0 : sellercraftSetting.disableUpdateStock) == 1 ? true : false;
41
+ if (!disableUpdateStock) {
42
+ for (var i = 0; i < orderProducts.length; i++) {
43
+ const orderProduct = orderProducts[i];
44
+ const product = orderProduct.product;
45
+ const pendingAssignOPs = await this.trxMgr.getRepository(order_product_1.OrderProduct).find({
46
+ where: {
47
+ domain: this.domain,
48
+ bizplace: orderProduct.bizplace,
49
+ product,
50
+ status: constants_1.ORDER_PRODUCT_STATUS.PENDING_ASSIGN
51
+ }
52
+ });
53
+ const productDetails = product.productDetails;
54
+ let totalUnassignReleaseQty = 0;
55
+ if (pendingAssignOPs === null || pendingAssignOPs === void 0 ? void 0 : pendingAssignOPs.length) {
56
+ totalUnassignReleaseQty = pendingAssignOPs.reduce((total, currentValue) => {
57
+ total += currentValue.releaseQty;
58
+ return total;
59
+ }, 0);
44
60
  }
45
- });
46
- const productDetails = product.productDetails;
47
- let totalUnassignReleaseQty = 0;
48
- if (pendingAssignOPs === null || pendingAssignOPs === void 0 ? void 0 : pendingAssignOPs.length) {
49
- totalUnassignReleaseQty = pendingAssignOPs.reduce((total, currentValue) => {
50
- total += currentValue.releaseQty;
61
+ let qb = await this.trxMgr.getRepository(warehouse_base_1.Inventory).createQueryBuilder('inv');
62
+ qb.leftJoinAndSelect('inv.location', 'loc')
63
+ .andWhere('"inv"."domain_id" = :domainId')
64
+ .andWhere('"inv"."product_id" = :productId')
65
+ .andWhere('"inv"."bizplace_id" = :bizplaceId')
66
+ .andWhere('"inv"."status" = :status')
67
+ .andWhere('"loc"."type" NOT IN (:...locationTypes)')
68
+ .setParameters({
69
+ domainId: this.domain.id,
70
+ productId: product.id,
71
+ bizplaceId: orderProduct.bizplace.id,
72
+ status: warehouse_base_1.INVENTORY_STATUS.STORED,
73
+ locationTypes: [warehouse_base_1.LOCATION_TYPE.QUARANTINE, warehouse_base_1.LOCATION_TYPE.RESERVE]
74
+ });
75
+ let inventories = await qb.getMany();
76
+ let defaultProductDetail;
77
+ const sellercraftInvs = await Promise.all(inventories.map(async (inventory) => {
78
+ const inventoryPackingType = inventory.packingType;
79
+ defaultProductDetail = product.productDetails.find(productDetail => productDetail.isDefault);
80
+ let packingSize = 1;
81
+ if (inventoryPackingType !== defaultProductDetail.packingType) {
82
+ const unmatchingProductDetail = product.productDetails.find(productDetail => productDetail.packingType === inventoryPackingType);
83
+ packingSize = await this.getChildPackingSize(productDetails, defaultProductDetail, unmatchingProductDetail);
84
+ if (packingSize == 0)
85
+ packingSize = 1;
86
+ }
87
+ return { totalQty: inventory.qty * packingSize, totalLockedQty: inventory.lockedQty * packingSize };
88
+ }));
89
+ let inventoryTotalQty = sellercraftInvs.reduce((total, currentValue) => {
90
+ total += currentValue.totalQty;
51
91
  return total;
52
92
  }, 0);
53
- }
54
- let qb = await this.trxMgr.getRepository(warehouse_base_1.Inventory).createQueryBuilder('inv');
55
- qb.leftJoinAndSelect('inv.location', 'loc')
56
- .andWhere('"inv"."domain_id" = :domainId')
57
- .andWhere('"inv"."product_id" = :productId')
58
- .andWhere('"inv"."bizplace_id" = :bizplaceId')
59
- .andWhere('"inv"."status" = :status')
60
- .andWhere('"loc"."type" NOT IN (:...locationTypes)')
61
- .setParameters({
62
- domainId: this.domain.id,
63
- productId: product.id,
64
- bizplaceId: orderProduct.bizplace.id,
65
- status: warehouse_base_1.INVENTORY_STATUS.STORED,
66
- locationTypes: [warehouse_base_1.LOCATION_TYPE.QUARANTINE, warehouse_base_1.LOCATION_TYPE.RESERVE]
67
- });
68
- let inventories = await qb.getMany();
69
- let defaultProductDetail;
70
- const sellercraftInvs = await Promise.all(inventories.map(async (inventory) => {
71
- const inventoryPackingType = inventory.packingType;
72
- defaultProductDetail = product.productDetails.find(productDetail => productDetail.isDefault);
73
- let packingSize = 1;
74
- if (inventoryPackingType !== defaultProductDetail.packingType) {
75
- const unmatchingProductDetail = product.productDetails.find(productDetail => productDetail.packingType === inventoryPackingType);
76
- packingSize = await this.getChildPackingSize(productDetails, defaultProductDetail, unmatchingProductDetail);
77
- if (packingSize == 0)
78
- packingSize = 1;
93
+ let inventoryTotalLockedQty = sellercraftInvs.reduce((total, currentValue) => {
94
+ total += currentValue.totalLockedQty;
95
+ return total;
96
+ }, 0);
97
+ switch (type) {
98
+ case 'CONFIRM_ORDER':
99
+ inventoryTotalQty -= totalUnassignReleaseQty;
100
+ break;
79
101
  }
80
- return { totalQty: inventory.qty * packingSize, totalLockedQty: inventory.lockedQty * packingSize };
81
- }));
82
- let inventoryTotalQty = sellercraftInvs.reduce((total, currentValue) => {
83
- total += currentValue.totalQty;
84
- return total;
85
- }, 0);
86
- let inventoryTotalLockedQty = sellercraftInvs.reduce((total, currentValue) => {
87
- total += currentValue.totalLockedQty;
88
- return total;
89
- }, 0);
90
- switch (type) {
91
- case 'CONFIRM_ORDER':
92
- inventoryTotalQty -= totalUnassignReleaseQty;
93
- break;
94
- }
95
- const sellercraftInv = [
96
- {
97
- sku: product.sku,
98
- gtin: defaultProductDetail.gtin,
99
- stock: {
100
- quantity_total: inventoryTotalQty,
101
- quantity_reserved: inventoryTotalLockedQty,
102
- unit_of_measure: 'EA'
103
- },
104
- package_weight_gm: defaultProductDetail.nettWeight < 1 ? 1 : defaultProductDetail.nettWeight,
105
- package_dimensions: {
106
- length_mm: defaultProductDetail.depth < 1 ? 1 : defaultProductDetail.depth,
107
- width_mm: defaultProductDetail.width < 1 ? 1 : defaultProductDetail.width,
108
- height_mm: defaultProductDetail.height < 1 ? 1 : defaultProductDetail.height
102
+ const sellercraftInv = [
103
+ {
104
+ sku: product.sku,
105
+ gtin: defaultProductDetail.gtin,
106
+ stock: {
107
+ quantity_total: inventoryTotalQty,
108
+ quantity_reserved: inventoryTotalLockedQty,
109
+ unit_of_measure: 'EA'
110
+ },
111
+ package_weight_gm: defaultProductDetail.nettWeight < 1 ? 1 : defaultProductDetail.nettWeight,
112
+ package_dimensions: {
113
+ length_mm: defaultProductDetail.depth < 1 ? 1 : defaultProductDetail.depth,
114
+ width_mm: defaultProductDetail.width < 1 ? 1 : defaultProductDetail.width,
115
+ height_mm: defaultProductDetail.height < 1 ? 1 : defaultProductDetail.height
116
+ }
109
117
  }
110
- }
111
- ];
112
- await integration_sellercraft_1.SellercraftAPI.updateProduct(sellercraft, {
113
- context: { state: { domain: this === null || this === void 0 ? void 0 : this.domain, user: this === null || this === void 0 ? void 0 : this.user } },
114
- accountId: sellercraft.accountId,
115
- sellercraftInv
116
- });
118
+ ];
119
+ await integration_sellercraft_1.SellercraftAPI.updateProduct(sellercraft, {
120
+ context: { state: { domain: this === null || this === void 0 ? void 0 : this.domain, user: this === null || this === void 0 ? void 0 : this.user } },
121
+ accountId: sellercraft.accountId,
122
+ sellercraftInv
123
+ });
124
+ }
117
125
  }
118
126
  }
119
127
  async checkExistingReleaseGood(sellercraft, releaseGood) {
@@ -1 +1 @@
1
- {"version":3,"file":"sellercraft-controller.js","sourceRoot":"","sources":["../../../server/controllers/ecommerce/sellercraft-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sellercraft-controller.js","sourceRoot":"","sources":["../../../server/controllers/ecommerce/sellercraft-controller.ts"],"names":[],"mappings":";;;AAAA,uDAAmD;AACnD,qFAAqF;AAErF,iDAA8C;AAC9C,mEAA2F;AAE3F,+CAAsD;AACtD,6EAAwE;AACxE,0EAAqE;AACrE,0DAAqD;AAErD,MAAa,qBAAsB,SAAQ,kCAAe;IACxD,KAAK,CAAC,SAAS,CAAC,WAAwB,EAAE,WAAwB;QAChE,IAAI,kBAAkB,GAAQ,WAAW,CAAC,kBAAkB,CAAA;QAC5D,IAAI,gBAAgB,GAClB,CAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,gBAAgB,KAAI,CAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,gBAAgB,KAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;QAElG,IAAI,CAAC,gBAAgB,EAAE;YACrB,MAAM,aAAa,GAAmB,WAAW,CAAC,aAAa,CAAA;YAC/D,IAAI,cAAc,GAAU,EAAE,CAAA;YAE9B,cAAc,GAAG,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;gBAChD,MAAM,OAAO,GAAY,YAAY,CAAC,OAAO,CAAA;gBAE7C,OAAO;oBACL,GAAG,EAAE,OAAO,CAAC,GAAG;oBAChB,UAAU,EAAE,YAAY,CAAC,UAAU;oBACnC,GAAG,EAAE,IAAI;iBACV,CAAA;YACH,CAAC,CAAC,CAAA;YAEF,MAAM,gBAAgB,GAAQ;gBAC5B,SAAS,EAAE,WAAW,CAAC,SAAS;gBAChC,OAAO,EAAE,WAAW,CAAC,MAAM;gBAC3B,cAAc;aACf,CAAA;YACD,MAAM,SAAS,GAAW,MAAM,wCAAc,CAAC,oBAAoB,CAAC,WAAW,kCAC1E,gBAAgB,KACnB,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,EAAE,IAAI,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,EAAE,EAAE,IAC9D,CAAA;YAEF,WAAW,CAAC,SAAS,GAAG,SAAS,CAAA;YACjC,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;SAChC;QAED,OAAO,WAAW,CAAA;IACpB,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,WAAwB,EAAE,aAA6B,EAAE,IAAY;QAChG,IAAI,kBAAkB,GAAQ,WAAW,CAAC,kBAAkB,CAAA;QAC5D,IAAI,kBAAkB,GACpB,CAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,kBAAkB,KAAI,CAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,kBAAkB,KAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;QAEtG,IAAI,CAAC,kBAAkB,EAAE;YACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC7C,MAAM,YAAY,GAAiB,aAAa,CAAC,CAAC,CAAC,CAAA;gBAEnD,MAAM,OAAO,GAAY,YAAY,CAAC,OAAO,CAAA;gBAC7C,MAAM,gBAAgB,GAAmB,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,4BAAY,CAAC,CAAC,IAAI,CAAC;oBAC1F,KAAK,EAAE;wBACL,MAAM,EAAE,IAAI,CAAC,MAAM;wBACnB,QAAQ,EAAE,YAAY,CAAC,QAAQ;wBAC/B,OAAO;wBACP,MAAM,EAAE,gCAAoB,CAAC,cAAc;qBAC5C;iBACF,CAAC,CAAA;gBAEF,MAAM,cAAc,GAAoB,OAAO,CAAC,cAAc,CAAA;gBAE9D,IAAI,uBAAuB,GAAW,CAAC,CAAA;gBACvC,IAAI,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,MAAM,EAAE;oBAC5B,uBAAuB,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE;wBACxE,KAAK,IAAI,YAAY,CAAC,UAAU,CAAA;wBAChC,OAAO,KAAK,CAAA;oBACd,CAAC,EAAE,CAAC,CAAC,CAAA;iBACN;gBAED,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,0BAAS,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAA;gBAC7E,EAAE,CAAC,iBAAiB,CAAC,cAAc,EAAE,KAAK,CAAC;qBACxC,QAAQ,CAAC,+BAA+B,CAAC;qBACzC,QAAQ,CAAC,iCAAiC,CAAC;qBAC3C,QAAQ,CAAC,mCAAmC,CAAC;qBAC7C,QAAQ,CAAC,0BAA0B,CAAC;qBACpC,QAAQ,CAAC,yCAAyC,CAAC;qBACnD,aAAa,CAAC;oBACb,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;oBACxB,SAAS,EAAE,OAAO,CAAC,EAAE;oBACrB,UAAU,EAAE,YAAY,CAAC,QAAQ,CAAC,EAAE;oBACpC,MAAM,EAAE,iCAAgB,CAAC,MAAM;oBAC/B,aAAa,EAAE,CAAC,8BAAa,CAAC,UAAU,EAAE,8BAAa,CAAC,OAAO,CAAC;iBACjE,CAAC,CAAA;gBAEJ,IAAI,WAAW,GAAgB,MAAM,EAAE,CAAC,OAAO,EAAE,CAAA;gBAEjD,IAAI,oBAAmC,CAAA;gBACvC,MAAM,eAAe,GAAU,MAAM,OAAO,CAAC,GAAG,CAC9C,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,SAAoB,EAAE,EAAE;oBAC7C,MAAM,oBAAoB,GAAW,SAAS,CAAC,WAAW,CAAA;oBAC1D,oBAAoB,GAAG,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;oBAE5F,IAAI,WAAW,GAAW,CAAC,CAAA;oBAC3B,IAAI,oBAAoB,KAAK,oBAAoB,CAAC,WAAW,EAAE;wBAC7D,MAAM,uBAAuB,GAAkB,OAAO,CAAC,cAAc,CAAC,IAAI,CACxE,aAAa,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,KAAK,oBAAoB,CACpE,CAAA;wBAED,WAAW,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAC1C,cAAc,EACd,oBAAoB,EACpB,uBAAuB,CACxB,CAAA;wBACD,IAAI,WAAW,IAAI,CAAC;4BAAE,WAAW,GAAG,CAAC,CAAA;qBACtC;oBAED,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,GAAG,GAAG,WAAW,EAAE,cAAc,EAAE,SAAS,CAAC,SAAS,GAAG,WAAW,EAAE,CAAA;gBACrG,CAAC,CAAC,CACH,CAAA;gBAED,IAAI,iBAAiB,GAAW,eAAe,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE;oBAC7E,KAAK,IAAI,YAAY,CAAC,QAAQ,CAAA;oBAC9B,OAAO,KAAK,CAAA;gBACd,CAAC,EAAE,CAAC,CAAC,CAAA;gBAEL,IAAI,uBAAuB,GAAW,eAAe,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE;oBACnF,KAAK,IAAI,YAAY,CAAC,cAAc,CAAA;oBACpC,OAAO,KAAK,CAAA;gBACd,CAAC,EAAE,CAAC,CAAC,CAAA;gBAEL,QAAQ,IAAI,EAAE;oBACZ,KAAK,eAAe;wBAClB,iBAAiB,IAAI,uBAAuB,CAAA;wBAC5C,MAAK;iBACR;gBAED,MAAM,cAAc,GAAU;oBAC5B;wBACE,GAAG,EAAE,OAAO,CAAC,GAAG;wBAChB,IAAI,EAAE,oBAAoB,CAAC,IAAI;wBAC/B,KAAK,EAAE;4BACL,cAAc,EAAE,iBAAiB;4BACjC,iBAAiB,EAAE,uBAAuB;4BAC1C,eAAe,EAAE,IAAI;yBACtB;wBACD,iBAAiB,EAAE,oBAAoB,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,UAAU;wBAC5F,kBAAkB,EAAE;4BAClB,SAAS,EAAE,oBAAoB,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,KAAK;4BAC1E,QAAQ,EAAE,oBAAoB,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,KAAK;4BACzE,SAAS,EAAE,oBAAoB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,MAAM;yBAC7E;qBACF;iBACF,CAAA;gBAED,MAAM,wCAAc,CAAC,aAAa,CAAC,WAAW,EAAE;oBAC9C,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,EAAE,IAAI,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,EAAE,EAAE;oBAC9D,SAAS,EAAE,WAAW,CAAC,SAAS;oBAChC,cAAc;iBACf,CAAC,CAAA;aACH;SACF;IACH,CAAC;IAED,KAAK,CAAC,wBAAwB,CAAC,WAAwB,EAAE,WAAwB;QAC/E,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,WAAW,CAAA;QAErC,MAAM,iBAAiB,GAAW,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,cAAM,CAAC,CAAC,OAAO,CAAC;YAChF,KAAK,EAAE,EAAE,EAAE,EAAE,WAAW,CAAC,QAAQ,EAAE;SACpC,CAAC,CAAA;QAEF,MAAM,gBAAgB,GAAa,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAC,OAAO,CAAC;YACnF,KAAK,EAAE,EAAE,MAAM,EAAE,iBAAiB,EAAE;SACrC,CAAC,CAAA;QAEF,MAAM,gBAAgB,GAAgB,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,0BAAW,CAAC,CAAC,OAAO,CAAC;YACzF,KAAK,EAAE,EAAE,QAAQ,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,EAAE;SACrD,CAAC,CAAA;QAEF,IAAI,gBAAgB;YAClB,MAAM,IAAI,KAAK,CACb,+GAA+G,CAChH,CAAA;IACL,CAAC;CACF;AA1KD,sDA0KC"}
@@ -48,7 +48,7 @@ let ArrivalNoticeMutation = class ArrivalNoticeMutation {
48
48
  }
49
49
  async generateArrivalNotice(context, arrivalNotice, files) {
50
50
  const { tx } = context.state;
51
- const createdArrivalNotice = await generateArrivalNoticeFunction(null, arrivalNotice, files, context, tx);
51
+ const createdArrivalNotice = await generateArrivalNoticeFunction(null, arrivalNotice, false, files, context, tx);
52
52
  return createdArrivalNotice;
53
53
  }
54
54
  async confirmArrivalNotice(name, context) {
@@ -125,7 +125,7 @@ let ArrivalNoticeMutation = class ArrivalNoticeMutation {
125
125
  }
126
126
  async addArrivalNotice(context, arrivalNotice, file) {
127
127
  const { tx } = context.state;
128
- const createdGAN = await generateArrivalNoticeFunction(null, arrivalNotice, file, context, tx);
128
+ const createdGAN = await generateArrivalNoticeFunction(null, arrivalNotice, false, file, context, tx);
129
129
  debug('createdGAN', createdGAN);
130
130
  const confirmedGAN = await confirmArrivalNoticeFunction(createdGAN.name, context, tx);
131
131
  debug('confirmedGAN', confirmedGAN);
@@ -142,10 +142,14 @@ let ArrivalNoticeMutation = class ArrivalNoticeMutation {
142
142
  await tx.getRepository(arrival_notice_1.ArrivalNotice).update(existingArrivalNotice.id, arrivalNotice);
143
143
  return await tx.getRepository(arrival_notice_1.ArrivalNotice).findOne(existingArrivalNotice.id);
144
144
  }
145
- async bulkGenerateArrivalNotices(context, rawArrivalNotices, bizplaceId) {
145
+ async bulkGenerateArrivalNotices(context, rawArrivalNotices, bizplaceId, bufferLocation) {
146
146
  const { domain, user, tx } = context.state;
147
147
  let createdArrivalNoticeIds = [], createdOrderProductIds = [], errorsCaught = [], finalArrivalNoticeList = [];
148
- const foundBizplace = await tx.getRepository(biz_base_1.Bizplace).findOne(bizplaceId);
148
+ let opStatus = constants_1.ORDER_PRODUCT_STATUS.PENDING_RECEIVE;
149
+ let anStatus = constants_1.ORDER_STATUS.PENDING_RECEIVE;
150
+ const foundBizplace = await tx
151
+ .getRepository(biz_base_1.Bizplace)
152
+ .findOne({ where: { id: bizplaceId }, relations: ['domain'] });
149
153
  if (!foundBizplace)
150
154
  throw new Error('company not found');
151
155
  // to check whether the raw data are valid
@@ -157,6 +161,23 @@ let ArrivalNoticeMutation = class ArrivalNoticeMutation {
157
161
  name: constants_1.ORDER_NUMBER_SETTING_KEY.GAN_NUMBER_RULE
158
162
  }
159
163
  });
164
+ const ganProcessingSetting = await tx.getRepository(setting_base_1.Setting).findOne({
165
+ where: { domain, category: 'id-rule', name: 'gan-order-processing' }
166
+ });
167
+ const partnerGanProcessingSetting = await tx.getRepository(setting_base_1.PartnerSetting).findOne({
168
+ where: { setting: ganProcessingSetting, domain, partnerDomain: foundBizplace.domain.id }
169
+ });
170
+ // If status of GAN is PENDING_RECEIVE then directly to assign warehouse
171
+ if (ganProcessingSetting) {
172
+ let setting = !isNaN(partnerGanProcessingSetting === null || partnerGanProcessingSetting === void 0 ? void 0 : partnerGanProcessingSetting.value)
173
+ ? partnerGanProcessingSetting === null || partnerGanProcessingSetting === void 0 ? void 0 : partnerGanProcessingSetting.value
174
+ : ganProcessingSetting.value;
175
+ // CONFIRM to assign if setting value is 1
176
+ if (setting == 1) {
177
+ opStatus = constants_1.ORDER_PRODUCT_STATUS.ARRIVED;
178
+ anStatus = constants_1.ORDER_STATUS.ARRIVED;
179
+ }
180
+ }
160
181
  // extract rawArrivalNotices data into normal ArrivalNotice format
161
182
  let arrivalNotices = extractArrivalNotices(validatedArrivalNotices);
162
183
  for (let i = 0, l = arrivalNotices.length; i < l; i++) {
@@ -208,11 +229,11 @@ let ArrivalNoticeMutation = class ArrivalNoticeMutation {
208
229
  // update arrivalNotices status to PENDING_RECEIVE
209
230
  await childTx
210
231
  .getRepository(arrival_notice_1.ArrivalNotice)
211
- .update({ id: (0, typeorm_1.In)(createdArrivalNoticeIds) }, { status: constants_1.ORDER_STATUS.PENDING_RECEIVE, updater: user });
232
+ .update({ id: (0, typeorm_1.In)(createdArrivalNoticeIds) }, { status: anStatus, updater: user });
212
233
  // update orderProducts status to PENDING_RECEIVE
213
234
  await childTx
214
235
  .getRepository(order_product_1.OrderProduct)
215
- .update({ id: (0, typeorm_1.In)(createdOrderProductIds) }, { status: constants_1.ORDER_PRODUCT_STATUS.PENDING_RECEIVE, updater: user });
236
+ .update({ id: (0, typeorm_1.In)(createdOrderProductIds) }, { status: opStatus, updater: user });
216
237
  finalArrivalNoticeList = await childTx.getRepository(arrival_notice_1.ArrivalNotice).find({
217
238
  where: { id: (0, typeorm_1.In)(createdArrivalNoticeIds) },
218
239
  relations: ['orderProducts', 'orderProducts.product', 'bizplace']
@@ -329,8 +350,9 @@ __decorate([
329
350
  __param(0, (0, type_graphql_1.Ctx)()),
330
351
  __param(1, (0, type_graphql_1.Arg)('rawArrivalNotices', type => [arrival_notice_types_1.NewArrivalNotice], { nullable: true })),
331
352
  __param(2, (0, type_graphql_1.Arg)('bizplaceId', type => String)),
353
+ __param(3, (0, type_graphql_1.Arg)('bufferLocation', type => String, { nullable: true })),
332
354
  __metadata("design:type", Function),
333
- __metadata("design:paramtypes", [Object, Array, String]),
355
+ __metadata("design:paramtypes", [Object, Array, String, String]),
334
356
  __metadata("design:returntype", Promise)
335
357
  ], ArrivalNoticeMutation.prototype, "bulkGenerateArrivalNotices", null);
336
358
  ArrivalNoticeMutation = __decorate([
@@ -381,7 +403,7 @@ async function deleteArrivalNotice(tx, name, user, domain) {
381
403
  return true;
382
404
  }
383
405
  exports.deleteArrivalNotice = deleteArrivalNotice;
384
- async function generateArrivalNoticeFunction(_, arrivalNotice, files, context, tx) {
406
+ async function generateArrivalNoticeFunction(_, arrivalNotice, fromPo, files, context, tx) {
385
407
  const { domain, user } = context.state;
386
408
  let orderProducts = arrivalNotice.orderProducts;
387
409
  let orderVass = arrivalNotice.orderVass;
@@ -422,10 +444,10 @@ async function generateArrivalNoticeFunction(_, arrivalNotice, files, context, t
422
444
  orderNo = order_no_generator_1.OrderNoGenerator.arrivalNotice();
423
445
  }
424
446
  // 1. Create arrival notice
425
- const createdArrivalNotice = await tx.getRepository(arrival_notice_1.ArrivalNotice).save(Object.assign(Object.assign({}, arrivalNotice), { name: orderNo, domain, bizplace: myBizplace, looseItem: (arrivalNotice === null || arrivalNotice === void 0 ? void 0 : arrivalNotice.looseItem) ? arrivalNotice.looseItem : false, status: constants_1.ORDER_STATUS.PENDING, creator: user, updater: user }));
447
+ const createdArrivalNotice = await tx.getRepository(arrival_notice_1.ArrivalNotice).save(Object.assign(Object.assign({}, arrivalNotice), { name: orderNo, domain, bizplace: myBizplace, looseItem: (arrivalNotice === null || arrivalNotice === void 0 ? void 0 : arrivalNotice.looseItem) ? arrivalNotice.looseItem : false, status: fromPo ? constants_1.ORDER_STATUS.INTRANSIT : constants_1.ORDER_STATUS.PENDING, creator: user, updater: user }));
426
448
  // 2. Create arrival notice product
427
449
  await addArrivalNoticeProducts(domain, createdArrivalNotice, orderProducts.map((op) => {
428
- return Object.assign(Object.assign({}, op), { status: constants_1.ORDER_PRODUCT_STATUS.PENDING });
450
+ return Object.assign(Object.assign({}, op), { status: fromPo ? constants_1.ORDER_PRODUCT_STATUS.INTRANSIT : constants_1.ORDER_PRODUCT_STATUS.PENDING });
429
451
  }), user, tx);
430
452
  await (0, job_sheet_mutation_1.generateJobSheet)(domain, user, createdArrivalNotice, tx);
431
453
  // 3. Create arrival notice vas
@@ -434,7 +456,7 @@ async function generateArrivalNoticeFunction(_, arrivalNotice, files, context, t
434
456
  if (ov.targetProduct) {
435
457
  ov.targetProduct = await tx.getRepository(product_base_1.Product).findOne(ov.targetProduct.id);
436
458
  }
437
- return Object.assign(Object.assign({}, ov), { domain, bizplace: myBizplace, name: order_no_generator_1.OrderNoGenerator.orderVas(), vas: await tx.getRepository(vas_1.Vas).findOne({ domain, id: ov.vas.id }), type: constants_1.ORDER_TYPES.ARRIVAL_NOTICE, arrivalNotice: createdArrivalNotice, status: constants_1.ORDER_VAS_STATUS.PENDING, creator: user, updater: user });
459
+ return Object.assign(Object.assign({}, ov), { domain, bizplace: myBizplace, name: order_no_generator_1.OrderNoGenerator.orderVas(), vas: await tx.getRepository(vas_1.Vas).findOne({ domain, id: ov.vas.id }), type: constants_1.ORDER_TYPES.ARRIVAL_NOTICE, arrivalNotice: createdArrivalNotice, status: fromPo ? constants_1.ORDER_VAS_STATUS.INTRANSIT : constants_1.ORDER_VAS_STATUS.PENDING, creator: user, updater: user });
438
460
  }));
439
461
  await tx.getRepository(order_vas_1.OrderVas).save(orderVass);
440
462
  }
@@ -458,6 +480,7 @@ async function confirmArrivalNoticeFunction(name, context, tx) {
458
480
  where: { domain, name, status: constants_1.ORDER_STATUS.PENDING },
459
481
  relations: [
460
482
  'bizplace',
483
+ 'bizplace.domain',
461
484
  'releaseGood',
462
485
  'orderProducts',
463
486
  'orderProducts.product',
@@ -470,18 +493,43 @@ async function confirmArrivalNoticeFunction(name, context, tx) {
470
493
  let foundOPs = foundArrivalNotice.orderProducts;
471
494
  let foundOVs = foundArrivalNotice.orderVass;
472
495
  let customerBizplace = foundArrivalNotice.bizplace;
496
+ let opStatus = constants_1.ORDER_PRODUCT_STATUS.PENDING_RECEIVE;
497
+ let anStatus = constants_1.ORDER_STATUS.PENDING_RECEIVE;
498
+ let ovStatus = constants_1.ORDER_VAS_STATUS.PENDING_RECEIVE;
499
+ let acceptedByUser = null;
500
+ let acceptedTime = null;
501
+ const ganProcessingSetting = await tx.getRepository(setting_base_1.Setting).findOne({
502
+ where: { domain, category: 'id-rule', name: 'gan-order-processing' }
503
+ });
504
+ const partnerGanProcessingSetting = await tx.getRepository(setting_base_1.PartnerSetting).findOne({
505
+ where: { setting: ganProcessingSetting, domain, partnerDomain: customerBizplace === null || customerBizplace === void 0 ? void 0 : customerBizplace.domain }
506
+ });
507
+ // If status of GAN is PENDING_RECEIVE then directly to assign warehouse
508
+ if (ganProcessingSetting) {
509
+ let setting = !isNaN(partnerGanProcessingSetting === null || partnerGanProcessingSetting === void 0 ? void 0 : partnerGanProcessingSetting.value)
510
+ ? partnerGanProcessingSetting === null || partnerGanProcessingSetting === void 0 ? void 0 : partnerGanProcessingSetting.value
511
+ : ganProcessingSetting.value;
512
+ // CONFIRM to assign if setting value is 1
513
+ if (setting == 1) {
514
+ opStatus = constants_1.ORDER_PRODUCT_STATUS.ARRIVED;
515
+ anStatus = constants_1.ORDER_STATUS.ARRIVED;
516
+ ovStatus = constants_1.ORDER_VAS_STATUS.ARRIVED;
517
+ acceptedByUser = user;
518
+ acceptedTime = new Date();
519
+ }
520
+ }
473
521
  if (!foundArrivalNotice)
474
522
  throw new Error(`Arrival notice doesn't exists.`);
475
523
  // 1. GAN Status change (PENDING => PENDING_RECEIVE)
476
- const arrivalNotice = await tx.getRepository(arrival_notice_1.ArrivalNotice).save(Object.assign(Object.assign({}, foundArrivalNotice), { status: constants_1.ORDER_STATUS.PENDING_RECEIVE, updater: user }));
524
+ let arrivalNotice = await tx.getRepository(arrival_notice_1.ArrivalNotice).save(Object.assign(Object.assign({}, foundArrivalNotice), { status: anStatus, updater: user, acceptedBy: acceptedByUser, acceptedAt: acceptedTime }));
477
525
  foundOPs = foundOPs.map((op) => {
478
- return Object.assign(Object.assign({}, op), { status: constants_1.ORDER_PRODUCT_STATUS.PENDING_RECEIVE });
526
+ return Object.assign(Object.assign({}, op), { status: opStatus });
479
527
  });
480
528
  await tx.getRepository(order_product_1.OrderProduct).save(foundOPs);
481
529
  // 2. Update order vas status if it exists.
482
530
  if (foundOVs && foundOVs.length) {
483
531
  foundOVs = foundOVs.map((ov) => {
484
- return Object.assign(Object.assign({}, ov), { status: constants_1.ORDER_VAS_STATUS.PENDING_RECEIVE });
532
+ return Object.assign(Object.assign({}, ov), { status: ovStatus });
485
533
  });
486
534
  await tx.getRepository(order_vas_1.OrderVas).save(foundOVs);
487
535
  }
@@ -527,31 +575,55 @@ async function receiveArrivalNoticeFunction(_, name, context) {
527
575
  try {
528
576
  const foundArrivalNotice = await tx.getRepository(arrival_notice_1.ArrivalNotice).findOne({
529
577
  where: { domain, name, status: constants_1.ORDER_STATUS.PENDING_RECEIVE },
530
- relations: ['bizplace', 'collectionOrders', 'orderProducts', 'orderVass']
578
+ relations: ['bizplace', 'bizplace.domain', 'collectionOrders', 'orderProducts', 'orderVass']
531
579
  });
532
- if (!foundArrivalNotice)
533
- throw new Error(`Arrival notice doesn't exists.`);
534
580
  let foundOPs = foundArrivalNotice.orderProducts;
535
581
  let foundOVs = foundArrivalNotice.orderVass;
536
582
  let foundCOs = await tx.getRepository(collection_order_1.CollectionOrder).find({
537
583
  where: { domain, refNo: foundArrivalNotice.name }
538
584
  });
585
+ let customerBizplace = foundArrivalNotice.bizplace;
586
+ let opStatus = constants_1.ORDER_PRODUCT_STATUS.INTRANSIT;
587
+ let anStatus = constants_1.ORDER_STATUS.INTRANSIT;
588
+ let ovStatus = constants_1.ORDER_VAS_STATUS.INTRANSIT;
589
+ let coStatus = constants_1.ORDER_STATUS.READY_TO_DISPATCH;
590
+ const ganProcessingSetting = await tx.getRepository(setting_base_1.Setting).findOne({
591
+ where: { domain, category: 'id-rule', name: 'gan-order-processing' }
592
+ });
593
+ const partnerGanProcessingSetting = await tx.getRepository(setting_base_1.PartnerSetting).findOne({
594
+ where: { setting: ganProcessingSetting, domain, partnerDomain: customerBizplace === null || customerBizplace === void 0 ? void 0 : customerBizplace.domain }
595
+ });
596
+ // If status of GAN is INTRANSIT then directly to assign warehouse
597
+ if (ganProcessingSetting) {
598
+ let setting = !isNaN(partnerGanProcessingSetting === null || partnerGanProcessingSetting === void 0 ? void 0 : partnerGanProcessingSetting.value)
599
+ ? partnerGanProcessingSetting === null || partnerGanProcessingSetting === void 0 ? void 0 : partnerGanProcessingSetting.value
600
+ : ganProcessingSetting.value;
601
+ // RECEIVE to assign if setting value is 2
602
+ if (setting == 2) {
603
+ opStatus = constants_1.ORDER_PRODUCT_STATUS.ARRIVED;
604
+ anStatus = constants_1.ORDER_STATUS.ARRIVED;
605
+ ovStatus = constants_1.ORDER_VAS_STATUS.ARRIVED;
606
+ coStatus = constants_1.ORDER_STATUS.READY_TO_DISPATCH;
607
+ }
608
+ }
609
+ if (!foundArrivalNotice)
610
+ throw new Error(`Arrival notice doesn't exists.`);
539
611
  // 1. Update status of order products (PENDING_RECEIVE => INTRANSIT)
540
612
  foundOPs = foundOPs.map((op) => {
541
- return Object.assign(Object.assign({}, op), { status: constants_1.ORDER_PRODUCT_STATUS.INTRANSIT, updater: user });
613
+ return Object.assign(Object.assign({}, op), { status: opStatus, updater: user });
542
614
  });
543
615
  await tx.getRepository(order_product_1.OrderProduct).save(foundOPs);
544
616
  // 2. Update status of order vass if it exists (PENDING_RECEIVE => INTRANSIT)
545
617
  if (foundOVs && foundOVs.length) {
546
618
  foundOVs = foundOVs.map((ov) => {
547
- return Object.assign(Object.assign({}, ov), { status: constants_1.ORDER_VAS_STATUS.INTRANSIT, updater: user });
619
+ return Object.assign(Object.assign({}, ov), { status: ovStatus, updater: user });
548
620
  });
549
621
  await tx.getRepository(order_vas_1.OrderVas).save(foundOVs);
550
622
  }
551
623
  // 3. If there's collection order, update status of collection order (PENDING_RECEIVE => READY_TO_DISPATCH)
552
624
  if (foundCOs) {
553
625
  foundCOs = foundCOs.map((co) => {
554
- return Object.assign(Object.assign({}, co), { status: constants_1.ORDER_STATUS.READY_TO_DISPATCH, updater: user });
626
+ return Object.assign(Object.assign({}, co), { status: coStatus, updater: user });
555
627
  });
556
628
  }
557
629
  // notification logics
@@ -571,7 +643,7 @@ async function receiveArrivalNoticeFunction(_, name, context) {
571
643
  });
572
644
  }
573
645
  // 4. Update status of arrival notice (PENDING_RECEIVE => INTRANSIT)
574
- await tx.getRepository(arrival_notice_1.ArrivalNotice).save(Object.assign(Object.assign({}, foundArrivalNotice), { status: constants_1.ORDER_STATUS.INTRANSIT, acceptedBy: user, acceptedAt: new Date(), updater: user }));
646
+ let rcvArrivalNotice = await tx.getRepository(arrival_notice_1.ArrivalNotice).save(Object.assign(Object.assign({}, foundArrivalNotice), { status: anStatus, acceptedBy: user, acceptedAt: new Date(), updater: user }));
575
647
  return foundArrivalNotice;
576
648
  }
577
649
  catch (e) {