@things-factory/worksheet-base 3.6.15 → 3.6.19

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.
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SellercraftController = void 0;
4
+ const typeorm_1 = require("typeorm");
4
5
  const integration_sellercraft_1 = require("@things-factory/integration-sellercraft");
5
6
  const sales_base_1 = require("@things-factory/sales-base");
7
+ const warehouse_base_1 = require("@things-factory/warehouse-base");
6
8
  const worksheet_controller_1 = require("../worksheet-controller");
7
9
  class SellercraftController extends worksheet_controller_1.WorksheetController {
8
10
  async registerProductInbound(sellercraft, arrivalNotice) {
@@ -78,6 +80,42 @@ class SellercraftController extends worksheet_controller_1.WorksheetController {
78
80
  };
79
81
  await integration_sellercraft_1.SellercraftAPI.addInboundOrder(sellercraft, Object.assign({}, returnInbound));
80
82
  }
83
+ async updateSellercraftStock(sellercraft, inventory) {
84
+ let product = inventory.product;
85
+ const productDetails = product.productDetails;
86
+ const inventories = await this.trxMgr.getRepository(warehouse_base_1.Inventory).find({
87
+ where: { domain: this.domain, product, status: (0, typeorm_1.Not)((0, typeorm_1.Equal)(warehouse_base_1.INVENTORY_STATUS.TERMINATED)) }
88
+ });
89
+ let defaultProductDetail;
90
+ const sellercraftInvs = await Promise.all(inventories.map(async (inventory) => {
91
+ const inventoryPackingType = inventory.packingType;
92
+ defaultProductDetail = product.productDetails.find(productDetail => productDetail.isDefault);
93
+ let packingSize = 1;
94
+ if (inventoryPackingType !== defaultProductDetail.packingType) {
95
+ const unmatchingProductDetail = product.productDetails.find(productDetail => productDetail.packingType === inventoryPackingType);
96
+ packingSize = await this.getChildPackingSize(productDetails, defaultProductDetail, unmatchingProductDetail);
97
+ }
98
+ return { quantity: inventory.qty * packingSize - inventory.lockedQty * packingSize };
99
+ }));
100
+ const totalQty = sellercraftInvs.reduce((total, currentValue) => {
101
+ total += currentValue.quantity;
102
+ return total;
103
+ }, 0);
104
+ const sellercraftInv = {
105
+ accountId: sellercraft.accountId,
106
+ sku: product.sku,
107
+ uom: 'EA',
108
+ quantity: totalQty,
109
+ gtin: defaultProductDetail.gtin,
110
+ weight: defaultProductDetail.nettWeight < 1 ? 1 : defaultProductDetail.nettWeight,
111
+ packageDimension: {
112
+ length: defaultProductDetail.depth < 1 ? 1 : defaultProductDetail.depth,
113
+ width: defaultProductDetail.width < 1 ? 1 : defaultProductDetail.width,
114
+ height: defaultProductDetail.height < 1 ? 1 : defaultProductDetail.height
115
+ }
116
+ };
117
+ await integration_sellercraft_1.SellercraftAPI.updateProduct(sellercraft, { sellercraftInv });
118
+ }
81
119
  async initiateOrderShipment(sellercraft, releaseGood) {
82
120
  const orderInformation = {
83
121
  accountId: sellercraft.accountId,
@@ -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":"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"}
@@ -1,10 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.cycleCountAdjustment = exports.cycleCountAdjustmentResolver = void 0;
4
+ const typeorm_1 = require("typeorm");
5
+ const integration_sellercraft_1 = require("@things-factory/integration-sellercraft");
4
6
  const sales_base_1 = require("@things-factory/sales-base");
5
7
  const warehouse_base_1 = require("@things-factory/warehouse-base");
6
- const typeorm_1 = require("typeorm");
7
8
  const constants_1 = require("../../../constants");
9
+ const controllers_1 = require("../../../controllers");
8
10
  const entities_1 = require("../../../entities");
9
11
  const utils_1 = require("../../../utils");
10
12
  exports.cycleCountAdjustmentResolver = {
@@ -40,6 +42,11 @@ async function cycleCountAdjustment(tx, domain, user, cycleCountNo) {
40
42
  relations: [
41
43
  'targetInventory',
42
44
  'targetInventory.inventory',
45
+ 'targetInventory.inventory.product',
46
+ 'targetInventory.inventory.product.productDetails',
47
+ 'targetInventory.inventory.product.productDetails.childProductDetail',
48
+ 'targetInventory.inventory.bizplace',
49
+ 'targetInventory.inventory.bizplace.domain',
43
50
  'targetInventory.inventory.location',
44
51
  'targetInventory.inspectedLocation',
45
52
  'targetInventory.inspectedLocation.warehouse'
@@ -50,6 +57,9 @@ async function cycleCountAdjustment(tx, domain, user, cycleCountNo) {
50
57
  let inventory = targetInventory.inventory;
51
58
  const transactQty = targetInventory.inspectedQty - inventory.qty;
52
59
  const transactUomValue = targetInventory.inspectedUomValue - inventory.uomValue;
60
+ const sellercraft = await tx.getRepository(integration_sellercraft_1.Sellercraft).findOne({
61
+ where: { domain: inventory.bizplace.domain, status: integration_sellercraft_1.SellercraftStatus.ACTIVE }
62
+ });
53
63
  if (targetInventory.status === sales_base_1.ORDER_INVENTORY_STATUS.MISSING) {
54
64
  // create STORED, CC_ADJUSTMENT history
55
65
  await (0, utils_1.generateInventoryHistory)(inventory, cycleCount, warehouse_base_1.INVENTORY_TRANSACTION_TYPE.CC_ADJUSTMENT, -inventory.qty, -inventory.uomValue, user, tx);
@@ -62,6 +72,10 @@ async function cycleCountAdjustment(tx, domain, user, cycleCountNo) {
62
72
  inventory = await tx.getRepository(warehouse_base_1.Inventory).save(inventory);
63
73
  // create TERMINATED, TERMINATED history
64
74
  await (0, utils_1.generateInventoryHistory)(inventory, cycleCount, warehouse_base_1.INVENTORY_TRANSACTION_TYPE.TERMINATED, 0, 0, user, tx);
75
+ if (sellercraft) {
76
+ const sellercraftCtrl = new controllers_1.SellercraftController(tx, domain, user);
77
+ await sellercraftCtrl.updateSellercraftStock(sellercraft, inventory);
78
+ }
65
79
  }
66
80
  else if (targetInventory.inspectedQty == 0) {
67
81
  // create STORED, CC_ADJUSTMENT history
@@ -79,6 +93,10 @@ async function cycleCountAdjustment(tx, domain, user, cycleCountNo) {
79
93
  inventory = await tx.getRepository(warehouse_base_1.Inventory).save(inventory);
80
94
  // create TERMINATED, TERMINATED history
81
95
  await (0, utils_1.generateInventoryHistory)(inventory, cycleCount, warehouse_base_1.INVENTORY_TRANSACTION_TYPE.TERMINATED, 0, 0, user, tx);
96
+ if (sellercraft) {
97
+ const sellercraftCtrl = new controllers_1.SellercraftController(tx, domain, user);
98
+ await sellercraftCtrl.updateSellercraftStock(sellercraft, inventory);
99
+ }
82
100
  }
83
101
  else {
84
102
  const prevLocationId = inventory.location.id;
@@ -103,6 +121,10 @@ async function cycleCountAdjustment(tx, domain, user, cycleCountNo) {
103
121
  }
104
122
  await (0, utils_1.generateInventoryHistory)(inventory, cycleCount, warehouse_base_1.INVENTORY_TRANSACTION_TYPE.CC_ADJUSTMENT, transactQty, transactUomValue, user, tx);
105
123
  }
124
+ if (sellercraft) {
125
+ const sellercraftCtrl = new controllers_1.SellercraftController(tx, domain, user);
126
+ await sellercraftCtrl.updateSellercraftStock(sellercraft, inventory);
127
+ }
106
128
  targetInventory.status = sales_base_1.ORDER_INVENTORY_STATUS.TERMINATED;
107
129
  targetInventory.updater = user;
108
130
  await tx.getRepository(sales_base_1.OrderInventory).save(targetInventory);
@@ -1 +1 @@
1
- {"version":3,"file":"cycle-count-adjustment.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/worksheet/cycle-count-adjustment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cycle-count-adjustment.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/worksheet/cycle-count-adjustment.ts"],"names":[],"mappings":"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"}
@@ -2,9 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.completePacking = exports.completePackingResolver = void 0;
4
4
  const biz_base_1 = require("@things-factory/biz-base");
5
+ const integration_sellercraft_1 = require("@things-factory/integration-sellercraft");
5
6
  const marketplace_base_1 = require("@things-factory/marketplace-base");
6
7
  const sales_base_1 = require("@things-factory/sales-base");
7
- const constants_1 = require("../../../../constants");
8
8
  const controllers_1 = require("../../../../controllers/");
9
9
  const ecommerce_1 = require("../../../../controllers/ecommerce");
10
10
  const worksheet_controller_1 = require("../../../../controllers/worksheet-controller");
@@ -16,6 +16,7 @@ exports.completePackingResolver = {
16
16
  where: { domain, name: releaseGoodNo },
17
17
  relations: [
18
18
  'bizplace',
19
+ 'bizplace.domain',
19
20
  'bizplace.company',
20
21
  'bizplace.company.domain',
21
22
  'orderInventories',
@@ -23,20 +24,25 @@ exports.completePackingResolver = {
23
24
  ]
24
25
  });
25
26
  if (releaseGood.type === 'b2c') {
26
- const companyDomain = releaseGood.bizplace.company.domain;
27
- const marketplaceOrder = await tx.getRepository(marketplace_base_1.MarketplaceOrder).findOne({
28
- where: { orderNo: releaseGood.refNo, domain: companyDomain },
29
- relations: [
30
- 'marketplaceOrderItems',
31
- 'marketplaceOrderItems.marketplaceOrderShipping',
32
- 'marketplaceStore',
33
- 'marketplaceStore.marketplaceDistributors'
34
- ]
35
- });
36
- const marketplaceStore = marketplaceOrder.marketplaceStore;
37
- if (marketplaceStore.isAutoUpdateShipment) {
38
- const ecommerceCtrl = new ecommerce_1.EcommerceController(tx, domain, user);
39
- await ecommerceCtrl.createOrderShip(releaseGood, marketplaceStore, marketplaceOrder, companyDomain);
27
+ const sellercraft = await tx
28
+ .getRepository(integration_sellercraft_1.Sellercraft)
29
+ .findOne({ domain: releaseGood.bizplace.domain, status: integration_sellercraft_1.SellercraftStatus.ACTIVE });
30
+ if (!sellercraft) {
31
+ const companyDomain = releaseGood.bizplace.company.domain;
32
+ const marketplaceOrder = await tx.getRepository(marketplace_base_1.MarketplaceOrder).findOne({
33
+ where: { orderNo: releaseGood.refNo, domain: companyDomain },
34
+ relations: [
35
+ 'marketplaceOrderItems',
36
+ 'marketplaceOrderItems.marketplaceOrderShipping',
37
+ 'marketplaceStore',
38
+ 'marketplaceStore.marketplaceDistributors'
39
+ ]
40
+ });
41
+ const marketplaceStore = marketplaceOrder.marketplaceStore;
42
+ if (marketplaceStore.isAutoUpdateShipment) {
43
+ const ecommerceCtrl = new ecommerce_1.EcommerceController(tx, domain, user);
44
+ await ecommerceCtrl.createOrderShip(releaseGood, marketplaceStore, marketplaceOrder, companyDomain);
45
+ }
40
46
  }
41
47
  }
42
48
  const bizplace = await (0, biz_base_1.getMyBizplace)(domain, user);
@@ -50,33 +56,8 @@ exports.completePackingResolver = {
50
56
  }
51
57
  };
52
58
  async function completePacking(tx, domain, user, releaseGoodNo) {
53
- var _a;
54
59
  const packingWSCtrl = new controllers_1.PackingWorksheetController(tx, domain, user);
55
- const releaseGood = await packingWSCtrl.findRefOrder(sales_base_1.ReleaseGood, {
56
- domain,
57
- name: releaseGoodNo
58
- });
59
- const worksheet = await packingWSCtrl.findWorksheetByRefOrder(releaseGood, constants_1.WORKSHEET_TYPE.PACKING, [
60
- 'worksheetDetails',
61
- 'worksheetDetails.targetInventory'
62
- ]);
63
- const worksheetDetails = worksheet.worksheetDetails;
64
- const targetInventories = worksheetDetails.map((wsd) => wsd.targetInventory);
65
- const packedTargetInventories = targetInventories
66
- .filter(targetInventory => targetInventory.status === sales_base_1.ORDER_INVENTORY_STATUS.PACKED)
67
- .map((packedTargetInventory) => {
68
- return packedTargetInventory;
69
- });
70
60
  await packingWSCtrl.completePacking(releaseGoodNo);
71
- if (!releaseGood.courierOption) {
72
- const loadingWSCtrl = new controllers_1.LoadingWorksheetController(tx, domain, user);
73
- let loadingWorksheet = await loadingWSCtrl.generateLoadingWorksheet(releaseGoodNo, packedTargetInventories);
74
- if (!((_a = loadingWorksheet.worksheetDetails) === null || _a === void 0 ? void 0 : _a.length)) {
75
- loadingWorksheet = await packingWSCtrl.findWorksheetById(loadingWorksheet.id);
76
- }
77
- const loadingWorksheetDetails = loadingWorksheet.worksheetDetails;
78
- await loadingWSCtrl.activateLoading(loadingWorksheet.name, loadingWorksheetDetails);
79
- }
80
61
  }
81
62
  exports.completePacking = completePacking;
82
63
  //# sourceMappingURL=complete-packing.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"complete-packing.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/packing/complete-packing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"complete-packing.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/packing/complete-packing.ts"],"names":[],"mappings":";;;AAGA,uDAAkE;AAElE,qFAAwF;AACxF,uEAAmE;AACnE,2DAAwD;AAGxD,0DAAqE;AACrE,iEAAuE;AACvE,uFAAkF;AAErE,QAAA,uBAAuB,GAAG;IACrC,KAAK,CAAC,eAAe,CAAC,CAAM,EAAE,EAAE,aAAa,EAAE,EAAE,OAAY;QAC3D,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAsD,OAAO,CAAC,KAAK,CAAA;QAC7F,MAAM,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,CAAC,CAAA;QAEtD,MAAM,WAAW,GAAgB,MAAM,EAAE,CAAC,aAAa,CAAC,wBAAW,CAAC,CAAC,OAAO,CAAC;YAC3E,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE;YACtC,SAAS,EAAE;gBACT,UAAU;gBACV,iBAAiB;gBACjB,kBAAkB;gBAClB,yBAAyB;gBACzB,kBAAkB;gBAClB,0BAA0B;aAC3B;SACF,CAAC,CAAA;QAEF,IAAI,WAAW,CAAC,IAAI,KAAK,KAAK,EAAE;YAC9B,MAAM,WAAW,GAAgB,MAAM,EAAE;iBACtC,aAAa,CAAC,qCAAW,CAAC;iBAC1B,OAAO,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,2CAAiB,CAAC,MAAM,EAAE,CAAC,CAAA;YAErF,IAAI,CAAC,WAAW,EAAE;gBAChB,MAAM,aAAa,GAAW,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAA;gBACjE,MAAM,gBAAgB,GAAqB,MAAM,EAAE,CAAC,aAAa,CAAC,mCAAgB,CAAC,CAAC,OAAO,CAAC;oBAC1F,KAAK,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE;oBAC5D,SAAS,EAAE;wBACT,uBAAuB;wBACvB,gDAAgD;wBAChD,kBAAkB;wBAClB,0CAA0C;qBAC3C;iBACF,CAAC,CAAA;gBACF,MAAM,gBAAgB,GAAqB,gBAAgB,CAAC,gBAAgB,CAAA;gBAE5E,IAAI,gBAAgB,CAAC,oBAAoB,EAAE;oBACzC,MAAM,aAAa,GAAwB,IAAI,+BAAmB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;oBACpF,MAAM,aAAa,CAAC,eAAe,CAAC,WAAW,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,aAAa,CAAC,CAAA;iBACpG;aACF;SACF;QAED,MAAM,QAAQ,GAAa,MAAM,IAAA,wBAAa,EAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QAC5D,MAAM,mBAAmB,GAAwB,IAAI,0CAAmB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;QAC1F,MAAM,mBAAmB,CAAC,gBAAgB,CAAC,QAAQ,EAAE;YACnD,KAAK,EAAE,+BAA+B,QAAQ,CAAC,IAAI,KAAK,aAAa,GAAG;YACxE,IAAI,EAAE,4CAA4C;YAClD,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO;YAC3B,IAAI,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE;SACtC,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AAEM,KAAK,UAAU,eAAe,CACnC,EAAiB,EACjB,MAAc,EACd,IAAU,EACV,aAAqB;IAErB,MAAM,aAAa,GAA+B,IAAI,wCAA0B,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IAClG,MAAM,aAAa,CAAC,eAAe,CAAC,aAAa,CAAC,CAAA;AACpD,CAAC;AARD,0CAQC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/worksheet-base",
3
- "version": "3.6.15",
3
+ "version": "3.6.19",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "client/index.js",
6
6
  "things-factory": true,
@@ -24,20 +24,20 @@
24
24
  "migration:create": "node ../../node_modules/typeorm/cli.js migration:create -d ./server/migrations"
25
25
  },
26
26
  "dependencies": {
27
- "@things-factory/auth-base": "^3.6.13",
28
- "@things-factory/biz-base": "^3.6.13",
29
- "@things-factory/document-template-base": "^3.6.13",
30
- "@things-factory/id-rule-base": "^3.6.13",
31
- "@things-factory/integration-lmd": "^3.6.13",
32
- "@things-factory/integration-marketplace": "^3.6.13",
33
- "@things-factory/integration-sellercraft": "^3.6.13",
34
- "@things-factory/marketplace-base": "^3.6.13",
35
- "@things-factory/notification": "^3.6.13",
36
- "@things-factory/sales-base": "^3.6.15",
37
- "@things-factory/setting-base": "^3.6.13",
38
- "@things-factory/shell": "^3.6.13",
39
- "@things-factory/transport-base": "^3.6.13",
40
- "@things-factory/warehouse-base": "^3.6.13"
27
+ "@things-factory/auth-base": "^3.6.19",
28
+ "@things-factory/biz-base": "^3.6.19",
29
+ "@things-factory/document-template-base": "^3.6.19",
30
+ "@things-factory/id-rule-base": "^3.6.19",
31
+ "@things-factory/integration-lmd": "^3.6.19",
32
+ "@things-factory/integration-marketplace": "^3.6.19",
33
+ "@things-factory/integration-sellercraft": "^3.6.19",
34
+ "@things-factory/marketplace-base": "^3.6.19",
35
+ "@things-factory/notification": "^3.6.19",
36
+ "@things-factory/sales-base": "^3.6.19",
37
+ "@things-factory/setting-base": "^3.6.19",
38
+ "@things-factory/shell": "^3.6.19",
39
+ "@things-factory/transport-base": "^3.6.19",
40
+ "@things-factory/warehouse-base": "^3.6.19"
41
41
  },
42
- "gitHead": "28b20aea481a8e2511cbd148ee8e1d62496d07d7"
42
+ "gitHead": "e8a5ade8e7c470c6e51dca428409c405b7cccf3a"
43
43
  }
@@ -1,3 +1,5 @@
1
+ import { Equal, Not } from 'typeorm'
2
+
1
3
  import { Sellercraft, SellercraftAPI } from '@things-factory/integration-sellercraft'
2
4
  import { Product, ProductDetail } from '@things-factory/product-base'
3
5
  import {
@@ -8,6 +10,7 @@ import {
8
10
  ReleaseGood,
9
11
  ReturnOrder
10
12
  } from '@things-factory/sales-base'
13
+ import { Inventory, INVENTORY_STATUS } from '@things-factory/warehouse-base'
11
14
 
12
15
  import { WorksheetController } from '../worksheet-controller'
13
16
 
@@ -107,6 +110,54 @@ export class SellercraftController extends WorksheetController {
107
110
  await SellercraftAPI.addInboundOrder(sellercraft, { ...returnInbound })
108
111
  }
109
112
 
113
+ async updateSellercraftStock(sellercraft: Sellercraft, inventory: Inventory): Promise<void> {
114
+ let product: Product = inventory.product
115
+ const productDetails: ProductDetail[] = product.productDetails
116
+ const inventories: Inventory[] = await this.trxMgr.getRepository(Inventory).find({
117
+ where: { domain: this.domain, product, status: Not(Equal(INVENTORY_STATUS.TERMINATED)) }
118
+ })
119
+
120
+ let defaultProductDetail: ProductDetail
121
+ const sellercraftInvs: any[] = await Promise.all(
122
+ inventories.map(async (inventory: Inventory) => {
123
+ const inventoryPackingType: string = inventory.packingType
124
+ defaultProductDetail = product.productDetails.find(productDetail => productDetail.isDefault)
125
+
126
+ let packingSize: number = 1
127
+ if (inventoryPackingType !== defaultProductDetail.packingType) {
128
+ const unmatchingProductDetail: ProductDetail = product.productDetails.find(
129
+ productDetail => productDetail.packingType === inventoryPackingType
130
+ )
131
+
132
+ packingSize = await this.getChildPackingSize(productDetails, defaultProductDetail, unmatchingProductDetail)
133
+ }
134
+
135
+ return { quantity: inventory.qty * packingSize - inventory.lockedQty * packingSize }
136
+ })
137
+ )
138
+
139
+ const totalQty: number = sellercraftInvs.reduce((total, currentValue) => {
140
+ total += currentValue.quantity
141
+ return total
142
+ }, 0)
143
+
144
+ const sellercraftInv: any = {
145
+ accountId: sellercraft.accountId,
146
+ sku: product.sku,
147
+ uom: 'EA',
148
+ quantity: totalQty,
149
+ gtin: defaultProductDetail.gtin,
150
+ weight: defaultProductDetail.nettWeight < 1 ? 1 : defaultProductDetail.nettWeight,
151
+ packageDimension: {
152
+ length: defaultProductDetail.depth < 1 ? 1 : defaultProductDetail.depth,
153
+ width: defaultProductDetail.width < 1 ? 1 : defaultProductDetail.width,
154
+ height: defaultProductDetail.height < 1 ? 1 : defaultProductDetail.height
155
+ }
156
+ }
157
+
158
+ await SellercraftAPI.updateProduct(sellercraft, { sellercraftInv })
159
+ }
160
+
110
161
  async initiateOrderShipment(sellercraft: Sellercraft, releaseGood: ReleaseGood): Promise<void> {
111
162
  const orderInformation: any = {
112
163
  accountId: sellercraft.accountId,
@@ -1,9 +1,13 @@
1
+ import { EntityManager, In } from 'typeorm'
2
+
1
3
  import { User } from '@things-factory/auth-base'
2
- import { InventoryCheck, OrderInventory, ORDER_INVENTORY_STATUS, ORDER_STATUS } from '@things-factory/sales-base'
4
+ import { Sellercraft, SellercraftStatus } from '@things-factory/integration-sellercraft'
5
+ import { InventoryCheck, ORDER_INVENTORY_STATUS, ORDER_STATUS, OrderInventory } from '@things-factory/sales-base'
3
6
  import { Domain } from '@things-factory/shell'
4
7
  import { Inventory, INVENTORY_STATUS, INVENTORY_TRANSACTION_TYPE, Location } from '@things-factory/warehouse-base'
5
- import { EntityManager, In } from 'typeorm'
8
+
6
9
  import { WORKSHEET_STATUS, WORKSHEET_TYPE } from '../../../constants'
10
+ import { SellercraftController } from '../../../controllers'
7
11
  import { Worksheet, WorksheetDetail } from '../../../entities'
8
12
  import { generateInventoryHistory, switchLocationStatus } from '../../../utils'
9
13
 
@@ -48,6 +52,11 @@ export async function cycleCountAdjustment(
48
52
  relations: [
49
53
  'targetInventory',
50
54
  'targetInventory.inventory',
55
+ 'targetInventory.inventory.product',
56
+ 'targetInventory.inventory.product.productDetails',
57
+ 'targetInventory.inventory.product.productDetails.childProductDetail',
58
+ 'targetInventory.inventory.bizplace',
59
+ 'targetInventory.inventory.bizplace.domain',
51
60
  'targetInventory.inventory.location',
52
61
  'targetInventory.inspectedLocation',
53
62
  'targetInventory.inspectedLocation.warehouse'
@@ -61,6 +70,10 @@ export async function cycleCountAdjustment(
61
70
  const transactQty: number = targetInventory.inspectedQty - inventory.qty
62
71
  const transactUomValue: number = targetInventory.inspectedUomValue - inventory.uomValue
63
72
 
73
+ const sellercraft: Sellercraft = await tx.getRepository(Sellercraft).findOne({
74
+ where: { domain: inventory.bizplace.domain, status: SellercraftStatus.ACTIVE }
75
+ })
76
+
64
77
  if (targetInventory.status === ORDER_INVENTORY_STATUS.MISSING) {
65
78
  // create STORED, CC_ADJUSTMENT history
66
79
  await generateInventoryHistory(
@@ -83,6 +96,11 @@ export async function cycleCountAdjustment(
83
96
 
84
97
  // create TERMINATED, TERMINATED history
85
98
  await generateInventoryHistory(inventory, cycleCount, INVENTORY_TRANSACTION_TYPE.TERMINATED, 0, 0, user, tx)
99
+
100
+ if (sellercraft) {
101
+ const sellercraftCtrl: SellercraftController = new SellercraftController(tx, domain, user)
102
+ await sellercraftCtrl.updateSellercraftStock(sellercraft, inventory)
103
+ }
86
104
  } else if (targetInventory.inspectedQty == 0) {
87
105
  // create STORED, CC_ADJUSTMENT history
88
106
  await generateInventoryHistory(
@@ -109,6 +127,11 @@ export async function cycleCountAdjustment(
109
127
 
110
128
  // create TERMINATED, TERMINATED history
111
129
  await generateInventoryHistory(inventory, cycleCount, INVENTORY_TRANSACTION_TYPE.TERMINATED, 0, 0, user, tx)
130
+
131
+ if (sellercraft) {
132
+ const sellercraftCtrl: SellercraftController = new SellercraftController(tx, domain, user)
133
+ await sellercraftCtrl.updateSellercraftStock(sellercraft, inventory)
134
+ }
112
135
  } else {
113
136
  const prevLocationId: string = inventory.location.id
114
137
 
@@ -153,6 +176,11 @@ export async function cycleCountAdjustment(
153
176
  )
154
177
  }
155
178
 
179
+ if (sellercraft) {
180
+ const sellercraftCtrl: SellercraftController = new SellercraftController(tx, domain, user)
181
+ await sellercraftCtrl.updateSellercraftStock(sellercraft, inventory)
182
+ }
183
+
156
184
  targetInventory.status = ORDER_INVENTORY_STATUS.TERMINATED
157
185
  targetInventory.updater = user
158
186
  await tx.getRepository(OrderInventory).save(targetInventory)
@@ -3,15 +3,14 @@ import { EntityManager } from 'typeorm'
3
3
  import { User } from '@things-factory/auth-base'
4
4
  import { Bizplace, getMyBizplace } from '@things-factory/biz-base'
5
5
  import { MarketplaceStore } from '@things-factory/integration-marketplace'
6
+ import { Sellercraft, SellercraftStatus } from '@things-factory/integration-sellercraft'
6
7
  import { MarketplaceOrder } from '@things-factory/marketplace-base'
7
- import { ORDER_INVENTORY_STATUS, OrderInventory, ReleaseGood } from '@things-factory/sales-base'
8
+ import { ReleaseGood } from '@things-factory/sales-base'
8
9
  import { Domain } from '@things-factory/shell'
9
10
 
10
- import { WORKSHEET_TYPE } from '../../../../constants'
11
- import { LoadingWorksheetController, PackingWorksheetController } from '../../../../controllers/'
11
+ import { PackingWorksheetController } from '../../../../controllers/'
12
12
  import { EcommerceController } from '../../../../controllers/ecommerce'
13
13
  import { WorksheetController } from '../../../../controllers/worksheet-controller'
14
- import { Worksheet, WorksheetDetail } from '../../../../entities'
15
14
 
16
15
  export const completePackingResolver = {
17
16
  async completePacking(_: any, { releaseGoodNo }, context: any) {
@@ -22,6 +21,7 @@ export const completePackingResolver = {
22
21
  where: { domain, name: releaseGoodNo },
23
22
  relations: [
24
23
  'bizplace',
24
+ 'bizplace.domain',
25
25
  'bizplace.company',
26
26
  'bizplace.company.domain',
27
27
  'orderInventories',
@@ -30,21 +30,27 @@ export const completePackingResolver = {
30
30
  })
31
31
 
32
32
  if (releaseGood.type === 'b2c') {
33
- const companyDomain: Domain = releaseGood.bizplace.company.domain
34
- const marketplaceOrder: MarketplaceOrder = await tx.getRepository(MarketplaceOrder).findOne({
35
- where: { orderNo: releaseGood.refNo, domain: companyDomain },
36
- relations: [
37
- 'marketplaceOrderItems',
38
- 'marketplaceOrderItems.marketplaceOrderShipping',
39
- 'marketplaceStore',
40
- 'marketplaceStore.marketplaceDistributors'
41
- ]
42
- })
43
- const marketplaceStore: MarketplaceStore = marketplaceOrder.marketplaceStore
33
+ const sellercraft: Sellercraft = await tx
34
+ .getRepository(Sellercraft)
35
+ .findOne({ domain: releaseGood.bizplace.domain, status: SellercraftStatus.ACTIVE })
44
36
 
45
- if (marketplaceStore.isAutoUpdateShipment) {
46
- const ecommerceCtrl: EcommerceController = new EcommerceController(tx, domain, user)
47
- await ecommerceCtrl.createOrderShip(releaseGood, marketplaceStore, marketplaceOrder, companyDomain)
37
+ if (!sellercraft) {
38
+ const companyDomain: Domain = releaseGood.bizplace.company.domain
39
+ const marketplaceOrder: MarketplaceOrder = await tx.getRepository(MarketplaceOrder).findOne({
40
+ where: { orderNo: releaseGood.refNo, domain: companyDomain },
41
+ relations: [
42
+ 'marketplaceOrderItems',
43
+ 'marketplaceOrderItems.marketplaceOrderShipping',
44
+ 'marketplaceStore',
45
+ 'marketplaceStore.marketplaceDistributors'
46
+ ]
47
+ })
48
+ const marketplaceStore: MarketplaceStore = marketplaceOrder.marketplaceStore
49
+
50
+ if (marketplaceStore.isAutoUpdateShipment) {
51
+ const ecommerceCtrl: EcommerceController = new EcommerceController(tx, domain, user)
52
+ await ecommerceCtrl.createOrderShip(releaseGood, marketplaceStore, marketplaceOrder, companyDomain)
53
+ }
48
54
  }
49
55
  }
50
56
 
@@ -66,37 +72,5 @@ export async function completePacking(
66
72
  releaseGoodNo: string
67
73
  ): Promise<void> {
68
74
  const packingWSCtrl: PackingWorksheetController = new PackingWorksheetController(tx, domain, user)
69
- const releaseGood: ReleaseGood = await packingWSCtrl.findRefOrder(ReleaseGood, {
70
- domain,
71
- name: releaseGoodNo
72
- })
73
- const worksheet: Worksheet = await packingWSCtrl.findWorksheetByRefOrder(releaseGood, WORKSHEET_TYPE.PACKING, [
74
- 'worksheetDetails',
75
- 'worksheetDetails.targetInventory'
76
- ])
77
-
78
- const worksheetDetails: WorksheetDetail[] = worksheet.worksheetDetails
79
- const targetInventories: OrderInventory[] = worksheetDetails.map((wsd: WorksheetDetail) => wsd.targetInventory)
80
- const packedTargetInventories: OrderInventory[] = targetInventories
81
- .filter(targetInventory => targetInventory.status === ORDER_INVENTORY_STATUS.PACKED)
82
- .map((packedTargetInventory: OrderInventory) => {
83
- return packedTargetInventory
84
- })
85
-
86
75
  await packingWSCtrl.completePacking(releaseGoodNo)
87
-
88
- if (!releaseGood.courierOption) {
89
- const loadingWSCtrl: LoadingWorksheetController = new LoadingWorksheetController(tx, domain, user)
90
- let loadingWorksheet: Worksheet = await loadingWSCtrl.generateLoadingWorksheet(
91
- releaseGoodNo,
92
- packedTargetInventories
93
- )
94
-
95
- if (!loadingWorksheet.worksheetDetails?.length) {
96
- loadingWorksheet = await packingWSCtrl.findWorksheetById(loadingWorksheet.id)
97
- }
98
-
99
- const loadingWorksheetDetails: WorksheetDetail[] = loadingWorksheet.worksheetDetails
100
- await loadingWSCtrl.activateLoading(loadingWorksheet.name, loadingWorksheetDetails)
101
- }
102
76
  }