@things-factory/operato-mms 3.8.26 → 3.8.30

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.
@@ -30,71 +30,77 @@ exports.autoAddReleaseOrderResolver = {
30
30
  for (var i = 0; i < marketplaceOrders.length; i++) {
31
31
  const marketplaceOrder = marketplaceOrders[i];
32
32
  const marketplaceOrderShippings = await (0, typeorm_1.getRepository)(marketplace_base_1.MarketplaceOrderShipping).find({
33
- where: { orderNoRef: marketplaceOrder.orderNo, domain }
33
+ where: { orderNoRef: marketplaceOrder.orderNo, domain },
34
+ order: { subOrderNoRef: 'ASC' }
34
35
  });
35
36
  for (var j = 0; j < marketplaceOrderShippings.length; j++) {
36
- const marketplaceOrderShipping = marketplaceOrderShippings[j];
37
- const date = new Date();
38
- const releaseDate = `${date.getFullYear()}-${(date.getMonth() + 1)
39
- .toString()
40
- .padStart(2, '0')}-${date.getDate().toString().padStart(2, '0')}`;
41
- const newMarketplaceOrder = {
42
- releaseDate,
43
- type: 'b2c',
44
- transporter: marketplaceOrder.shippingProvider,
45
- trackingNo: (marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.ownTrackingNo)
46
- ? marketplaceOrderShipping.ownTrackingNo
47
- : marketplaceOrderShipping.trackingNo,
48
- packingOption: true,
49
- exportOption: false,
50
- ownTransport: true,
51
- courierOption: true,
52
- collectionOrderNo: marketplaceOrder.orderNo,
53
- refNo: marketplaceOrder.orderNo,
54
- refNo2: marketplaceOrderShippings.length > 1
55
- ? marketplaceOrder.orderNo + ' - ' + (j + 1) + '/' + marketplaceOrderShippings.length
56
- : marketplaceOrder.orderNo,
57
- deliverTo: {
58
- deliveryAddress1: marketplaceOrderShipping.address1,
59
- deliveryAddress2: marketplaceOrderShipping.address2,
60
- deliveryAddress3: marketplaceOrderShipping.address3,
61
- deliveryAddress4: marketplaceOrderShipping.address4,
62
- deliveryAddress5: marketplaceOrderShipping.address5,
63
- attentionTo: marketplaceOrderShipping.attentionTo,
64
- city: marketplaceOrderShipping.city,
65
- postalCode: marketplaceOrderShipping.postCode,
66
- country: marketplaceOrderShipping.country,
67
- state: marketplaceOrderShipping.state,
68
- phone1: marketplaceOrderShipping.phone1,
69
- phone2: (marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.phone2) ? marketplaceOrderShipping.phone2 : null
70
- },
71
- marketplaceOrderStatus: marketplaceOrder.status,
72
- airwayBill: (marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.airwayBill) ? marketplaceOrderShipping.airwayBill : null,
73
- invoice: (marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.invoice) ? marketplaceOrderShipping.invoice : null,
74
- orderInventories: marketplaceOrder.marketplaceOrderItems
75
- .filter(item => {
76
- if (item.marketplaceOrderShipping.id === marketplaceOrderShipping.id) {
77
- return item;
78
- }
79
- })
80
- .map((orderItem) => {
81
- const { marketplaceProductVariation: productVariation } = orderItem;
82
- return {
83
- product: {
84
- sku: productVariation.sku
85
- },
86
- releaseQty: orderItem.qty
87
- };
88
- })
89
- };
90
- var releaseOrder = await integration_fulfillment_1.FulfillmentAPI.createOutboundOrder(fulfilmentCenter, {
91
- customerBizplaceId,
92
- releaseOrder: newMarketplaceOrder
93
- });
37
+ let marketplaceOrderShipping = marketplaceOrderShippings[j];
38
+ if (!(marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.releaseOrderId)) {
39
+ const date = new Date();
40
+ const releaseDate = `${date.getFullYear()}-${(date.getMonth() + 1)
41
+ .toString()
42
+ .padStart(2, '0')}-${date.getDate().toString().padStart(2, '0')}`;
43
+ const newMarketplaceOrder = {
44
+ releaseDate,
45
+ type: 'b2c',
46
+ transporter: marketplaceOrder.shippingProvider,
47
+ trackingNo: (marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.ownTrackingNo)
48
+ ? marketplaceOrderShipping.ownTrackingNo
49
+ : marketplaceOrderShipping.trackingNo,
50
+ packingOption: true,
51
+ exportOption: false,
52
+ ownTransport: true,
53
+ courierOption: true,
54
+ collectionOrderNo: marketplaceOrder.orderNo,
55
+ refNo: marketplaceOrder.orderNo,
56
+ refNo2: marketplaceOrderShippings.length > 1 ? marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.subOrderNoRef : marketplaceOrder.orderNo,
57
+ deliverTo: {
58
+ deliveryAddress1: marketplaceOrderShipping.address1,
59
+ deliveryAddress2: marketplaceOrderShipping.address2,
60
+ deliveryAddress3: marketplaceOrderShipping.address3,
61
+ deliveryAddress4: marketplaceOrderShipping.address4,
62
+ deliveryAddress5: marketplaceOrderShipping.address5,
63
+ attentionTo: marketplaceOrderShipping.attentionTo,
64
+ city: marketplaceOrderShipping.city,
65
+ postalCode: marketplaceOrderShipping.postCode,
66
+ country: marketplaceOrderShipping.country,
67
+ state: marketplaceOrderShipping.state,
68
+ phone1: marketplaceOrderShipping.phone1,
69
+ phone2: (marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.phone2) ? marketplaceOrderShipping.phone2 : null
70
+ },
71
+ marketplaceOrderStatus: marketplaceOrder.status,
72
+ airwayBill: (marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.airwayBill) ? marketplaceOrderShipping.airwayBill : null,
73
+ invoice: (marketplaceOrderShipping === null || marketplaceOrderShipping === void 0 ? void 0 : marketplaceOrderShipping.invoice) ? marketplaceOrderShipping.invoice : null,
74
+ orderInventories: marketplaceOrder.marketplaceOrderItems
75
+ .filter(item => {
76
+ if (item.marketplaceOrderShipping.id === marketplaceOrderShipping.id) {
77
+ return item;
78
+ }
79
+ })
80
+ .map((orderItem) => {
81
+ const { marketplaceProductVariation: productVariation } = orderItem;
82
+ return {
83
+ product: {
84
+ sku: productVariation.sku
85
+ },
86
+ releaseQty: orderItem.qty
87
+ };
88
+ })
89
+ };
90
+ var releaseOrder = await integration_fulfillment_1.FulfillmentAPI.createOutboundOrder(fulfilmentCenter, {
91
+ customerBizplaceId,
92
+ releaseOrder: newMarketplaceOrder
93
+ });
94
+ marketplaceOrderShipping.releaseOrderId = releaseOrder.id;
95
+ marketplaceOrderShipping.fulfillmentCenter = fulfilmentCenter;
96
+ await (0, typeorm_1.getRepository)(marketplace_base_1.MarketplaceOrderShipping).save(marketplaceOrderShipping);
97
+ }
98
+ }
99
+ if (releaseOrder && (releaseOrder === null || releaseOrder === void 0 ? void 0 : releaseOrder.id)) {
100
+ marketplaceOrder.releaseOrderId = releaseOrder.id;
101
+ marketplaceOrder.fulfillmentCenter = fulfilmentCenter;
102
+ await (0, typeorm_1.getRepository)(marketplace_base_1.MarketplaceOrder).save(marketplaceOrder);
94
103
  }
95
- marketplaceOrder.releaseOrderId = releaseOrder.id;
96
- marketplaceOrder.fulfillmentCenter = fulfilmentCenter;
97
- await (0, typeorm_1.getRepository)(marketplace_base_1.MarketplaceOrder).save(marketplaceOrder);
98
104
  }
99
105
  }
100
106
  };
@@ -1 +1 @@
1
- {"version":3,"file":"auto-add-release-order.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/interface-with-hub/auto-add-release-order.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auto-add-release-order.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/interface-with-hub/auto-add-release-order.ts"],"names":[],"mappings":"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"}
@@ -6,14 +6,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.etraxRouter = void 0;
7
7
  const koa_router_1 = __importDefault(require("koa-router"));
8
8
  const typeorm_1 = require("typeorm");
9
+ const biz_base_1 = require("@things-factory/biz-base");
10
+ const integration_fulfillment_1 = require("@things-factory/integration-fulfillment");
9
11
  const integration_lmd_1 = require("@things-factory/integration-lmd");
10
12
  const integration_marketplace_1 = require("@things-factory/integration-marketplace");
11
13
  const marketplace_base_1 = require("@things-factory/marketplace-base");
12
- //import { MarketplaceOrder, MarketplaceOrderShipping, MarketplaceOrderItem } from "@things-factory/marketplace-base"
14
+ const shell_1 = require("@things-factory/shell");
13
15
  const debug = require('debug')('things-factory:jest.config');
14
16
  exports.etraxRouter = new koa_router_1.default();
15
17
  exports.etraxRouter.post(`/lmd/etrax/status_update`, async (context, next) => {
16
- const { domain, user } = context.state;
17
18
  const repo = (0, typeorm_1.getRepository)(integration_lmd_1.LastMileDelivery);
18
19
  const requestBody = context.request.body;
19
20
  debug('etrax_status_update/context: ', context);
@@ -23,7 +24,6 @@ exports.etraxRouter.post(`/lmd/etrax/status_update`, async (context, next) => {
23
24
  const extOrderNo = requestBody.ExtOrderNo;
24
25
  const trackingNo = requestBody.TrackingNo;
25
26
  const status = requestBody.Status;
26
- const trackingDate = requestBody.TrackingDate; //yyyyMMddHHmmss
27
27
  const awbUrl = requestBody.AWBurl;
28
28
  const customerCode = bodySourceID;
29
29
  const lmd = await repo.findOne({
@@ -58,17 +58,42 @@ exports.etraxRouter.post(`/lmd/etrax/status_update`, async (context, next) => {
58
58
  if (status === 'TAS') {
59
59
  //Update DB if Validate Success
60
60
  const orderRepo = (0, typeorm_1.getRepository)(marketplace_base_1.MarketplaceOrder);
61
- const orderItemRepo = (0, typeorm_1.getRepository)(marketplace_base_1.MarketplaceOrderItem);
62
61
  const orderShippingRepo = (0, typeorm_1.getRepository)(marketplace_base_1.MarketplaceOrderShipping);
63
62
  let order = await orderRepo.findOne({
64
63
  where: { orderNo: extOrderNo },
65
- relations: ['marketplaceStore', 'marketplaceOrderItems', 'marketplaceOrderItems.marketplaceOrderShipping']
64
+ relations: [
65
+ 'domain',
66
+ 'marketplaceStore',
67
+ 'marketplaceOrderItems',
68
+ 'marketplaceOrderItems.marketplaceOrderShipping',
69
+ 'marketplaceOrderItems.marketplaceOrderShipping.fulfillmentCenter'
70
+ ]
66
71
  });
67
72
  let orderItems = order.marketplaceOrderItems;
68
73
  for (const orderItem of orderItems) {
69
74
  if (orderItem.marketplaceOrderShipping !== null) {
70
75
  const orderShipping = orderItem.marketplaceOrderShipping;
76
+ const fulfillmentCenter = orderShipping === null || orderShipping === void 0 ? void 0 : orderShipping.fulfillmentCenter;
77
+ const marketplaceStore = order.marketplaceStore;
71
78
  const currentDate = new Date();
79
+ const centerId = fulfillmentCenter.centerId;
80
+ const warehouseDomain = await (0, typeorm_1.getRepository)(shell_1.Domain).findOne({ where: { subdomain: centerId } });
81
+ const customerBizplaces = await (0, biz_base_1.getCustomerBizplaces)(warehouseDomain);
82
+ const customerBizplaceId = customerBizplaces.find(customerBizplace => customerBizplace.company.domain.id == (order === null || order === void 0 ? void 0 : order.domain.id)).id;
83
+ const marketplaceTransporter = await (0, typeorm_1.getRepository)(integration_marketplace_1.MarketplaceTransporter).findOne({
84
+ where: { marketplaceStore },
85
+ relations: ['pickupTransporter']
86
+ });
87
+ let patch = {
88
+ id: orderShipping.releaseOrderId,
89
+ trackingNo: trackingNo,
90
+ transporter: marketplaceTransporter === null || marketplaceTransporter === void 0 ? void 0 : marketplaceTransporter.pickupTransporter.name
91
+ };
92
+ integration_fulfillment_1.FulfillmentAPI.updateReleaseGoodDetails(fulfillmentCenter, {
93
+ customerBizplaceId,
94
+ releaseOrder: Object.assign({}, patch),
95
+ shippingOrder: null
96
+ });
72
97
  await orderShippingRepo.update({ id: orderShipping.id }, { trackingNo: trackingNo, airwayBill: awbUrl, updatedAt: currentDate });
73
98
  }
74
99
  }
@@ -77,7 +102,7 @@ exports.etraxRouter.post(`/lmd/etrax/status_update`, async (context, next) => {
77
102
  // to-do update tracking no to every marketplaces
78
103
  if (marketplaceStore.platform === 'woocommerce') {
79
104
  const note = 'http://ets.sntglobal.com/?mod=tracking&action=index&orders=' + trackingNo;
80
- const orderNote = await integration_marketplace_1.StoreAPI.createOrderNote(marketplaceStore, { orderId: order.name, note });
105
+ await integration_marketplace_1.StoreAPI.createOrderNote(marketplaceStore, { orderId: order.name, note });
81
106
  }
82
107
  const resp = {
83
108
  Status: 'SUCCESS',
@@ -89,9 +114,6 @@ exports.etraxRouter.post(`/lmd/etrax/status_update`, async (context, next) => {
89
114
  };
90
115
  context.type = 'application/json';
91
116
  context.body = JSON.stringify(resp);
92
- //let orderShipping: MarketplaceOrderShipping = orderItemRepo.find({})
93
- //await orderItemRepo.save(orderItem)
94
- //await orderShippingRepo.save(orderShipping)
95
117
  }
96
118
  });
97
119
  //# sourceMappingURL=etrax-router.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"etrax-router.js","sourceRoot":"","sources":["../../server/routers/etrax-router.ts"],"names":[],"mappings":";;;;;;AAAA,4DAA+B;AAC/B,qCAAuC;AAEvC,qEAAyE;AACzE,qFAAoF;AACpF,uEAAmH;AAEnH,qHAAqH;AAErH,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,4BAA4B,CAAC,CAAA;AAC/C,QAAA,WAAW,GAAG,IAAI,oBAAM,EAAE,CAAA;AAEvC,mBAAW,CAAC,IAAI,CAAC,0BAA0B,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;IACnE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IACtC,MAAM,IAAI,GAAG,IAAA,uBAAa,EAAC,kCAAgB,CAAC,CAAA;IAC5C,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAA;IACxC,KAAK,CAAC,+BAA+B,EAAE,OAAO,CAAC,CAAA;IAE/C,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAA;IACnC,MAAM,aAAa,GAAG,WAAW,CAAC,SAAS,CAAA;IAC3C,MAAM,YAAY,GAAG,WAAW,CAAC,QAAQ,CAAA;IACzC,MAAM,UAAU,GAAG,WAAW,CAAC,UAAU,CAAA;IACzC,MAAM,UAAU,GAAG,WAAW,CAAC,UAAU,CAAA;IACzC,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAA;IACjC,MAAM,YAAY,GAAG,WAAW,CAAC,YAAY,CAAA,CAAC,gBAAgB;IAC9D,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAA;IAEjC,MAAM,YAAY,GAAG,YAAY,CAAA;IACjC,MAAM,GAAG,GAAqB,MAAM,IAAI,CAAC,OAAO,CAAC;QAC/C,KAAK,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE;KACvD,CAAC,CAAA;IACF,KAAK,CAAC,GAAG,CAAC,CAAA;IAEV,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAA;IAE/B,IAAI,YAAY,KAAK,EAAE,IAAI,SAAS,KAAK,EAAE,EAAE;QAC3C,8BAA8B;QAC9B,OAAM;KACP;IAED,MAAM,KAAK,GAAG,IAAI,uBAAK,CAAC,YAAY,CAAC,CAAA;IACrC,KAAK,CAAC,eAAe,EAAE,WAAW,CAAC,CAAA;IACnC,gBAAgB;IAChB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,SAAS,EAAE,eAAe,EAAE,aAAa,CAAC,CAAA;IACrF,KAAK,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAA;IAEpC,IAAI,CAAC,QAAQ,EAAE;QACb,qBAAqB;QACrB,MAAM,IAAI,GAAG;YACX,MAAM,EAAE,OAAO;YACf,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,iBAAiB;YAC1B,OAAO,EAAE,UAAU;YACnB,UAAU,EAAE,UAAU;YACtB,UAAU,EAAE,UAAU;SACvB,CAAA;QACD,OAAO,CAAC,IAAI,GAAG,kBAAkB,CAAA;QACjC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QACnC,OAAM;KACP;IAED,sCAAsC;IACtC,IAAI,MAAM,KAAK,KAAK,EAAE;QACpB,+BAA+B;QAC/B,MAAM,SAAS,GAAG,IAAA,uBAAa,EAAC,mCAAgB,CAAC,CAAA;QACjD,MAAM,aAAa,GAAG,IAAA,uBAAa,EAAC,uCAAoB,CAAC,CAAA;QACzD,MAAM,iBAAiB,GAAG,IAAA,uBAAa,EAAC,2CAAwB,CAAC,CAAA;QAEjE,IAAI,KAAK,GAAqB,MAAM,SAAS,CAAC,OAAO,CAAC;YACpD,KAAK,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE;YAC9B,SAAS,EAAE,CAAC,kBAAkB,EAAE,uBAAuB,EAAE,gDAAgD,CAAC;SAC3G,CAAC,CAAA;QACF,IAAI,UAAU,GAA2B,KAAK,CAAC,qBAAqB,CAAA;QAEpE,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;YAClC,IAAI,SAAS,CAAC,wBAAwB,KAAK,IAAI,EAAE;gBAC/C,MAAM,aAAa,GAAG,SAAS,CAAC,wBAAwB,CAAA;gBACxD,MAAM,WAAW,GAAS,IAAI,IAAI,EAAE,CAAA;gBACpC,MAAM,iBAAiB,CAAC,MAAM,CAC5B,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,EACxB,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,CACvE,CAAA;aACF;SACF;QAED,MAAM,OAAO,GAAG,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAA;QACzC,MAAM,gBAAgB,GAAqB,MAAM,kCAAQ,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAA;QAEtF,iDAAiD;QACjD,IAAI,gBAAgB,CAAC,QAAQ,KAAK,aAAa,EAAE;YAC/C,MAAM,IAAI,GAAG,6DAA6D,GAAG,UAAU,CAAA;YACvF,MAAM,SAAS,GAAG,MAAM,kCAAQ,CAAC,eAAe,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;SAClG;QAED,MAAM,IAAI,GAAG;YACX,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,UAAU,EAAE,UAAU;YACtB,UAAU,EAAE,UAAU;SACvB,CAAA;QACD,OAAO,CAAC,IAAI,GAAG,kBAAkB,CAAA;QACjC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QACnC,sEAAsE;QACtE,qCAAqC;QACrC,6CAA6C;KAC9C;AACH,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"etrax-router.js","sourceRoot":"","sources":["../../server/routers/etrax-router.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/operato-mms",
3
- "version": "3.8.26",
3
+ "version": "3.8.30",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "client/index.js",
6
6
  "things-factory": true,
@@ -45,7 +45,7 @@
45
45
  "@things-factory/apptool-ui": "^3.8.0",
46
46
  "@things-factory/attachment-base": "^3.8.0",
47
47
  "@things-factory/auth-ui": "^3.8.0",
48
- "@things-factory/biz-base": "^3.8.26",
48
+ "@things-factory/biz-base": "^3.8.29",
49
49
  "@things-factory/board-service": "^3.8.0",
50
50
  "@things-factory/board-ui": "^3.8.0",
51
51
  "@things-factory/code-ui": "^3.8.0",
@@ -58,15 +58,15 @@
58
58
  "@things-factory/grist-ui": "^3.7.5",
59
59
  "@things-factory/help": "^3.8.0",
60
60
  "@things-factory/i18n-ui": "^3.8.0",
61
- "@things-factory/integration-fulfillment": "^3.8.26",
62
- "@things-factory/integration-lmd": "^3.8.26",
61
+ "@things-factory/integration-fulfillment": "^3.8.29",
62
+ "@things-factory/integration-lmd": "^3.8.29",
63
63
  "@things-factory/lite-menu": "^3.8.0",
64
- "@things-factory/marketplace-base": "^3.8.26",
64
+ "@things-factory/marketplace-base": "^3.8.30",
65
65
  "@things-factory/more-ui": "^3.8.0",
66
66
  "@things-factory/notification": "^3.8.0",
67
67
  "@things-factory/oauth2-client": "^3.8.0",
68
68
  "@things-factory/pdf": "^3.7.5",
69
- "@things-factory/product-base": "^3.8.26",
69
+ "@things-factory/product-base": "^3.8.30",
70
70
  "@things-factory/resource-ui": "^3.8.0",
71
71
  "@things-factory/scene-chartjs": "^3.7.5",
72
72
  "@things-factory/scene-clock": "^3.7.5",
@@ -99,11 +99,11 @@
99
99
  "@things-factory/scene-wheel-sorter": "^3.7.5",
100
100
  "@things-factory/setting-ui": "^3.8.19",
101
101
  "@things-factory/system-ui": "^3.8.0",
102
- "@things-factory/warehouse-base": "^3.8.26"
102
+ "@things-factory/warehouse-base": "^3.8.30"
103
103
  },
104
104
  "devDependencies": {
105
105
  "@things-factory/builder": "^3.7.5",
106
106
  "@types/node-fetch": "^2.5.7"
107
107
  },
108
- "gitHead": "6ca26d91b7dad8eec6bc7859391bbd50374c744b"
108
+ "gitHead": "bf379e59ba4cc6455dca937abba19c35c6339525"
109
109
  }
@@ -2,7 +2,8 @@ import { getRepository } from 'typeorm'
2
2
 
3
3
  import { Bizplace, getCustomerBizplaces } from '@things-factory/biz-base'
4
4
  import { FulfillmentAPI, FulfillmentCenter } from '@things-factory/integration-fulfillment'
5
- import { MarketplaceOrder, MarketplaceOrderShipping } from '@things-factory/marketplace-base'
5
+ import { MarketplaceOrder, MarketplaceOrderItem, MarketplaceOrderShipping } from '@things-factory/marketplace-base'
6
+ import { Product, ProductBundle } from '@things-factory/product-base'
6
7
  import { Domain } from '@things-factory/shell'
7
8
 
8
9
  export const addReleaseOrderResolver = {
@@ -30,82 +31,165 @@ export const addReleaseOrderResolver = {
30
31
  relations: [
31
32
  'marketplaceOrderItems',
32
33
  'marketplaceOrderItems.marketplaceProductVariation',
33
- 'marketplaceOrderItems.marketplaceOrderShipping'
34
+ 'marketplaceOrderItems.marketplaceOrderShipping',
35
+ 'marketplaceStore'
34
36
  ]
35
37
  })
36
38
 
37
- const marketplaceOrderShippings: MarketplaceOrderShipping[] = await getRepository(MarketplaceOrderShipping).find({
38
- where: { orderNoRef: marketplaceOrder.orderNo, domain }
39
+ let marketplaceOrderShippings: MarketplaceOrderShipping[] = await getRepository(MarketplaceOrderShipping).find({
40
+ where: { orderNoRef: marketplaceOrder.orderNo, domain },
41
+ order: { subOrderNoRef: 'ASC' },
42
+ relations: ['marketplaceOrderItems']
39
43
  })
40
44
 
41
45
  for (var j = 0; j < marketplaceOrderShippings.length; j++) {
42
- const marketplaceOrderShipping: MarketplaceOrderShipping = marketplaceOrderShippings[j]
43
-
44
- const date: Date = new Date()
45
- const releaseDate = `${date.getFullYear()}-${(date.getMonth() + 1)
46
- .toString()
47
- .padStart(2, '0')}-${date.getDate().toString().padStart(2, '0')}`
48
-
49
- const newMarketplaceOrder: any = {
50
- releaseDate,
51
- type: 'b2c',
52
- transporter: marketplaceOrder.shippingProvider,
53
- trackingNo: marketplaceOrderShipping?.ownTrackingNo
54
- ? marketplaceOrderShipping.ownTrackingNo
55
- : marketplaceOrderShipping.trackingNo,
56
- packingOption: true,
57
- exportOption: false,
58
- ownTransport: true,
59
- courierOption: true,
60
- collectionOrderNo: marketplaceOrder.orderNo,
61
- refNo: marketplaceOrder.orderNo,
62
- refNo2:
63
- marketplaceOrderShippings.length > 1
64
- ? marketplaceOrder.orderNo + ' - ' + (j + 1) + '/' + marketplaceOrderShippings.length
65
- : marketplaceOrder.orderNo,
66
- deliverTo: {
67
- deliveryAddress1: marketplaceOrderShipping.address1,
68
- deliveryAddress2: marketplaceOrderShipping.address2,
69
- deliveryAddress3: marketplaceOrderShipping.address3,
70
- deliveryAddress4: marketplaceOrderShipping.address4,
71
- deliveryAddress5: marketplaceOrderShipping.address5,
72
- attentionTo: marketplaceOrderShipping.attentionTo,
73
- city: marketplaceOrderShipping.city,
74
- postalCode: marketplaceOrderShipping.postCode,
75
- country: marketplaceOrderShipping.country,
76
- state: marketplaceOrderShipping.state,
77
- phone1: marketplaceOrderShipping.phone1,
78
- phone2: marketplaceOrderShipping?.phone2 ? marketplaceOrderShipping.phone2 : null
79
- },
80
- marketplaceOrderStatus: marketplaceOrder.status,
81
- airwayBill: marketplaceOrderShipping?.airwayBill ? marketplaceOrderShipping.airwayBill : null,
82
- invoice: marketplaceOrderShipping?.invoice ? marketplaceOrderShipping.invoice : null,
83
- orderInventories: marketplaceOrder.marketplaceOrderItems
84
- .filter(item => {
85
- if (item.marketplaceOrderShipping.id === marketplaceOrderShipping.id) {
86
- return item
46
+ let marketplaceOrderShipping: MarketplaceOrderShipping = marketplaceOrderShippings[j]
47
+
48
+ if (!marketplaceOrderShipping?.releaseOrderId) {
49
+ const date: Date = new Date()
50
+ const releaseDate = `${date.getFullYear()}-${(date.getMonth() + 1)
51
+ .toString()
52
+ .padStart(2, '0')}-${date.getDate().toString().padStart(2, '0')}`
53
+
54
+ const newReleaseOrder: any = {
55
+ releaseDate,
56
+ type: 'b2c',
57
+ transporter: marketplaceOrder.shippingProvider,
58
+ trackingNo: marketplaceOrderShipping?.ownTrackingNo
59
+ ? marketplaceOrderShipping.ownTrackingNo
60
+ : marketplaceOrderShipping.trackingNo,
61
+ packingOption: true,
62
+ exportOption: false,
63
+ ownTransport: true,
64
+ courierOption: true,
65
+ collectionOrderNo: marketplaceOrder.orderNo,
66
+ refNo: marketplaceOrder.orderNo,
67
+ refNo2:
68
+ marketplaceOrderShippings.length > 1 ? marketplaceOrderShipping?.subOrderNoRef : marketplaceOrder.orderNo,
69
+ deliverTo: {
70
+ deliveryAddress1: marketplaceOrderShipping.address1,
71
+ deliveryAddress2: marketplaceOrderShipping.address2,
72
+ deliveryAddress3: marketplaceOrderShipping.address3,
73
+ deliveryAddress4: marketplaceOrderShipping.address4,
74
+ deliveryAddress5: marketplaceOrderShipping.address5,
75
+ attentionTo: marketplaceOrderShipping.attentionTo,
76
+ city: marketplaceOrderShipping.city,
77
+ postalCode: marketplaceOrderShipping.postCode,
78
+ country: marketplaceOrderShipping.country,
79
+ state: marketplaceOrderShipping.state,
80
+ phone1: marketplaceOrderShipping.phone1,
81
+ phone2: marketplaceOrderShipping?.phone2 ? marketplaceOrderShipping.phone2 : null
82
+ },
83
+ marketplaceOrderStatus: marketplaceOrder.status,
84
+ airwayBill: marketplaceOrderShipping?.airwayBill ? marketplaceOrderShipping.airwayBill : null,
85
+ invoice: marketplaceOrderShipping?.invoice ? marketplaceOrderShipping.invoice : null,
86
+ orderInventories: marketplaceOrder.marketplaceOrderItems
87
+ .filter(item => {
88
+ if (item.marketplaceOrderShipping.id === marketplaceOrderShipping.id) {
89
+ return item
90
+ }
91
+ })
92
+ .map((orderItem: any) => {
93
+ const { marketplaceProductVariation: productVariation }: any = orderItem
94
+ return {
95
+ product: {
96
+ sku: productVariation.sku
97
+ },
98
+ releaseQty: orderItem.qty
99
+ }
100
+ })
101
+ }
102
+
103
+ var releaseOrder: any = await FulfillmentAPI.createOutboundOrder(fulfilmentCenter, {
104
+ customerBizplaceId,
105
+ releaseOrder: newReleaseOrder
106
+ })
107
+
108
+ var invoiceProducts = await Promise.all(
109
+ newReleaseOrder.orderInventories.map(async oi => {
110
+ let product: Product = await getRepository(Product).findOne({
111
+ where: { domain, sku: oi.product.sku }
112
+ })
113
+
114
+ if (!product) {
115
+ product = await getRepository(ProductBundle).findOne({
116
+ where: { domain, sku: oi.product.sku }
117
+ })
87
118
  }
88
- })
89
- .map((orderItem: any) => {
90
- const { marketplaceProductVariation: productVariation }: any = orderItem
119
+
120
+ let moi: MarketplaceOrderItem = marketplaceOrder.marketplaceOrderItems.find(
121
+ moi => moi.marketplaceProductVariation.sku === product.sku
122
+ )
123
+
91
124
  return {
92
- product: {
93
- sku: productVariation.sku
94
- },
95
- releaseQty: orderItem.qty
125
+ sku: product.sku,
126
+ name: product.name,
127
+ description: product.description,
128
+ product: { sku: product.sku },
129
+ qty: oi.releaseQty,
130
+ unitPrice: moi.originalPrice / moi.qty,
131
+ paidPrice: moi.paidPrice / moi.qty
96
132
  }
97
133
  })
98
- }
134
+ )
135
+
136
+ let newInvoice = {
137
+ invoiceProducts,
138
+ releaseGood: { id: releaseOrder.id, name: releaseOrder.name },
139
+ refNo1: newReleaseOrder.refNo.toString(),
140
+ refNo2: newReleaseOrder.refNo2.toString(),
141
+ issuedOn: new Date(),
142
+ from: marketplaceOrder.marketplaceStore.storeName,
143
+ fromContactPhone: '-',
144
+ fromAddress1: '-',
145
+ fromAddress2: null,
146
+ fromAddress3: null,
147
+ fromAddress4: null,
148
+ fromAddress5: null,
149
+ fromPostcode: null,
150
+ fromCity: null,
151
+ fromState: null,
152
+ fromCountry: null,
153
+ deliverTo: newReleaseOrder.deliverTo.attentionTo || '-',
154
+ deliverToPhone: newReleaseOrder.deliverTo.phone1 || '-',
155
+ deliveryAddress1: newReleaseOrder.deliverTo.deliveryAddress1 || '-',
156
+ deliveryAddress2: newReleaseOrder.deliverTo.deliveryAddress2,
157
+ deliveryAddress3: newReleaseOrder.deliverTo.deliveryAddress3,
158
+ deliveryAddress4: newReleaseOrder.deliverTo.deliveryAddress4,
159
+ deliveryAddress5: newReleaseOrder.deliverTo.deliveryAddress5,
160
+ deliveryPostcode: newReleaseOrder.deliverTo.postalCode || '-',
161
+ deliveryCity: newReleaseOrder.deliverTo.city || '-',
162
+ deliveryState: newReleaseOrder.deliverTo.state || '-',
163
+ deliveryCountry: newReleaseOrder.deliverTo.country || '-',
164
+ billTo: newReleaseOrder.deliverTo.attentionTo || '-',
165
+ billToPhone: newReleaseOrder.deliverTo.phone1 || '-',
166
+ billingAddress1: releaseOrder.billingAddress || newReleaseOrder.deliverTo.deliveryAddress1 || '-',
167
+ billingAddress2: null,
168
+ billingAddress3: null,
169
+ billingAddress4: null,
170
+ billingAddress5: null,
171
+ billingPostcode: '-',
172
+ billingCity: '-',
173
+ billingState: '-',
174
+ billingCountry: '-'
175
+ }
99
176
 
100
- var releaseOrder: any = await FulfillmentAPI.createOutboundOrder(fulfilmentCenter, {
101
- customerBizplaceId,
102
- releaseOrder: newMarketplaceOrder
103
- })
177
+ var invoice: any = await FulfillmentAPI.createSalesInvoice(fulfilmentCenter, {
178
+ customerBizplaceId,
179
+ invoice: newInvoice
180
+ })
181
+
182
+ marketplaceOrderShipping.releaseOrderId = releaseOrder.id
183
+ marketplaceOrderShipping.fulfillmentCenter = fulfilmentCenter
184
+ await getRepository(MarketplaceOrderShipping).save(marketplaceOrderShipping)
185
+ }
104
186
  }
105
187
 
106
- marketplaceOrder.releaseOrderId = releaseOrder.id
107
- marketplaceOrder.fulfillmentCenter = fulfilmentCenter
108
- await getRepository(MarketplaceOrder).save(marketplaceOrder)
188
+ if (releaseOrder && releaseOrder?.id) {
189
+ marketplaceOrder.releaseOrderId = releaseOrder.id
190
+ marketplaceOrder.fulfillmentCenter = fulfilmentCenter
191
+ await getRepository(MarketplaceOrder).save(marketplaceOrder)
192
+ }
109
193
  }
110
194
  }
111
195
  }