@things-factory/sales-base 4.3.167 → 4.3.170

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.
@@ -33,6 +33,7 @@ let OrderProductQuery = class OrderProductQuery {
33
33
  .leftJoinAndSelect('op.productDetail', 'productDetail')
34
34
  .leftJoinAndSelect('op.domain', 'domain')
35
35
  .leftJoinAndSelect('op.bizplace', 'bizplace')
36
+ .leftJoinAndSelect('bizplace.domain', 'bizplaceDomain')
36
37
  .leftJoinAndSelect('bizplace.company', 'company')
37
38
  .leftJoinAndSelect('op.arrivalNotice', 'an')
38
39
  .leftJoinAndSelect('op.releaseGood', 'rg')
@@ -1 +1 @@
1
- {"version":3,"file":"order-product-query.js","sourceRoot":"","sources":["../../../server/service/order-product/order-product-query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"order-product-query.js","sourceRoot":"","sources":["../../../server/service/order-product/order-product-query.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports._composeTargetInventories = exports.switchLocationStatus = exports.InventoryUtil = void 0;
4
4
  const typeorm_1 = require("typeorm");
5
+ const biz_base_1 = require("@things-factory/biz-base");
5
6
  const product_base_1 = require("@things-factory/product-base");
7
+ const setting_base_1 = require("@things-factory/setting-base");
6
8
  const warehouse_base_1 = require("@things-factory/warehouse-base");
7
9
  const constants_1 = require("../constants");
8
10
  const errors_1 = require("../errors");
@@ -420,7 +422,7 @@ exports.InventoryUtil = {
420
422
  * @param {Object} trxMgr
421
423
  */
422
424
  async validateWarehousePartnersProductsQuantity(warehouseDomain, partnerBizplace, orderInventories, context, trxMgr) {
423
- let validOrderInventories = orderInventories.filter(oi => oi.isError == false);
425
+ let validOrderInventories = orderInventories.filter(oi => (oi === null || oi === void 0 ? void 0 : oi.isError) !== true);
424
426
  if (!validOrderInventories.length) {
425
427
  return;
426
428
  }
@@ -500,12 +502,29 @@ exports.InventoryUtil = {
500
502
  * @returns orderInventories
501
503
  */
502
504
  async autoAssignInventoryForRelease(orderInventory, product, productDetail, locationSortingRules = [], customerBizplace, domain, trxMgr, batchId) {
505
+ let strictProduct = 'false';
506
+ if (!(customerBizplace === null || customerBizplace === void 0 ? void 0 : customerBizplace.domain)) {
507
+ let bizplace = await trxMgr.getRepository(biz_base_1.Bizplace).findOne({
508
+ where: { id: customerBizplace.id },
509
+ relations: ['domain']
510
+ });
511
+ customerBizplace.domain = bizplace.domain;
512
+ }
513
+ const strictProductSelectionSetting = await trxMgr.getRepository(setting_base_1.Setting).findOne({
514
+ where: { domain, category: 'id-rule', name: 'strict-product-selection' }
515
+ });
516
+ if (strictProductSelectionSetting)
517
+ strictProduct = strictProductSelectionSetting.value;
518
+ const partnerStrictProductSelectionSetting = await trxMgr.getRepository(setting_base_1.PartnerSetting).findOne({
519
+ where: { setting: strictProductSelectionSetting, domain, partnerDomain: customerBizplace === null || customerBizplace === void 0 ? void 0 : customerBizplace.domain }
520
+ });
521
+ if (partnerStrictProductSelectionSetting)
522
+ strictProduct = partnerStrictProductSelectionSetting.value;
503
523
  let qb = trxMgr.getRepository(warehouse_base_1.Inventory).createQueryBuilder('iv');
504
524
  qb.innerJoinAndSelect('iv.location', 'loc')
505
525
  .innerJoin('iv.product', 'p')
506
526
  .andWhere('"iv"."domain_id" = :domainId')
507
527
  .andWhere('"iv"."bizplace_id" = :bizplaceId')
508
- .andWhere('"iv"."product_detail_id" = :productDetailId')
509
528
  .andWhere('"iv"."status" = :status')
510
529
  .andWhere('"iv"."qty" - COALESCE("iv"."locked_qty", 0) > 0')
511
530
  .andWhere('"loc"."type" NOT IN (:...locationTypes)')
@@ -514,13 +533,20 @@ exports.InventoryUtil = {
514
533
  .setParameters({
515
534
  domainId: domain.id,
516
535
  bizplaceId: customerBizplace.id,
517
- productDetailId: productDetail.id,
518
536
  status: warehouse_base_1.INVENTORY_STATUS.STORED,
519
537
  locationTypes: [warehouse_base_1.LOCATION_TYPE.QUARANTINE, warehouse_base_1.LOCATION_TYPE.RESERVE]
520
538
  });
521
539
  if (batchId) {
522
540
  qb.andWhere('"iv"."batch_id" = :batchId', { batchId: batchId });
523
541
  }
542
+ if (strictProduct == 'true') {
543
+ qb.andWhere('"iv"."product_detail_id" = :productDetailId', { productDetailId: productDetail.id });
544
+ }
545
+ else {
546
+ qb.andWhere('"iv"."packing_type" = :packingType', { packingType: orderInventory.packingType })
547
+ .andWhere('"iv"."packing_size" = :packingSize', { packingSize: orderInventory.packingSize })
548
+ .andWhere('"iv"."uom" = :uom', { uom: orderInventory.uom });
549
+ }
524
550
  let locationSorting = function (qb, locationSortingRules) {
525
551
  if (locationSortingRules === null || locationSortingRules === void 0 ? void 0 : locationSortingRules.length) {
526
552
  locationSortingRules.forEach((rule, idx) => {
@@ -1 +1 @@
1
- {"version":3,"file":"inventory-util.js","sourceRoot":"","sources":["../../server/utils/inventory-util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inventory-util.js","sourceRoot":"","sources":["../../server/utils/inventory-util.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/sales-base",
3
- "version": "4.3.167",
3
+ "version": "4.3.170",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "client/index.js",
6
6
  "things-factory": true,
@@ -34,7 +34,7 @@
34
34
  "@things-factory/setting-base": "^4.3.163",
35
35
  "@things-factory/shell": "^4.3.159",
36
36
  "@things-factory/transport-base": "^4.3.163",
37
- "@things-factory/warehouse-base": "^4.3.167"
37
+ "@things-factory/warehouse-base": "^4.3.169"
38
38
  },
39
- "gitHead": "dd0370eeefe3491563eddcf7c24117d69f89e714"
39
+ "gitHead": "bc64a5e74aefaeb4f3201474b8f78d526b41c434"
40
40
  }
@@ -29,6 +29,7 @@ export class OrderProductQuery {
29
29
  .leftJoinAndSelect('op.productDetail', 'productDetail')
30
30
  .leftJoinAndSelect('op.domain', 'domain')
31
31
  .leftJoinAndSelect('op.bizplace', 'bizplace')
32
+ .leftJoinAndSelect('bizplace.domain', 'bizplaceDomain')
32
33
  .leftJoinAndSelect('bizplace.company', 'company')
33
34
  .leftJoinAndSelect('op.arrivalNotice', 'an')
34
35
  .leftJoinAndSelect('op.releaseGood', 'rg')
@@ -3,17 +3,16 @@ import { EntityManager, Equal, getRepository, In, Not, Raw, Repository, SelectQu
3
3
  import { User } from '@things-factory/auth-base'
4
4
  import { Bizplace } from '@things-factory/biz-base'
5
5
  import { Product, ProductBundle, ProductDetail } from '@things-factory/product-base'
6
+ import { PartnerSetting, Setting } from '@things-factory/setting-base'
6
7
  import { Domain, ListParam } from '@things-factory/shell'
7
8
  import {
9
+ generateInventoryHistory,
8
10
  Inventory,
9
11
  INVENTORY_STATUS,
10
- InventoryHistory,
11
- InventoryNoGenerator,
12
12
  Location,
13
13
  LOCATION_STATUS,
14
14
  LOCATION_TYPE,
15
- Pallet,
16
- generateInventoryHistory
15
+ Pallet
17
16
  } from '@things-factory/warehouse-base'
18
17
 
19
18
  import { ORDER_TYPES } from '../constants'
@@ -500,7 +499,7 @@ export const InventoryUtil = {
500
499
  context: any,
501
500
  trxMgr?: EntityManager
502
501
  ): Promise<Inventory> {
503
- let validOrderInventories = orderInventories.filter(oi => oi.isError == false)
502
+ let validOrderInventories = orderInventories.filter(oi => oi?.isError !== true)
504
503
 
505
504
  if (!validOrderInventories.length) {
506
505
  return
@@ -604,12 +603,33 @@ export const InventoryUtil = {
604
603
  trxMgr: EntityManager,
605
604
  batchId?: string
606
605
  ): Promise<OrderInventory[]> {
606
+ let strictProduct = 'false'
607
+
608
+ if (!customerBizplace?.domain) {
609
+ let bizplace: Bizplace = await trxMgr.getRepository(Bizplace).findOne({
610
+ where: { id: customerBizplace.id },
611
+ relations: ['domain']
612
+ })
613
+ customerBizplace.domain = bizplace.domain
614
+ }
615
+
616
+ const strictProductSelectionSetting: Setting = await trxMgr.getRepository(Setting).findOne({
617
+ where: { domain, category: 'id-rule', name: 'strict-product-selection' }
618
+ })
619
+
620
+ if (strictProductSelectionSetting) strictProduct = strictProductSelectionSetting.value
621
+
622
+ const partnerStrictProductSelectionSetting: PartnerSetting = await trxMgr.getRepository(PartnerSetting).findOne({
623
+ where: { setting: strictProductSelectionSetting, domain, partnerDomain: customerBizplace?.domain }
624
+ })
625
+
626
+ if (partnerStrictProductSelectionSetting) strictProduct = partnerStrictProductSelectionSetting.value
627
+
607
628
  let qb: SelectQueryBuilder<Inventory> = trxMgr.getRepository(Inventory).createQueryBuilder('iv')
608
629
  qb.innerJoinAndSelect('iv.location', 'loc')
609
630
  .innerJoin('iv.product', 'p')
610
631
  .andWhere('"iv"."domain_id" = :domainId')
611
632
  .andWhere('"iv"."bizplace_id" = :bizplaceId')
612
- .andWhere('"iv"."product_detail_id" = :productDetailId')
613
633
  .andWhere('"iv"."status" = :status')
614
634
  .andWhere('"iv"."qty" - COALESCE("iv"."locked_qty", 0) > 0')
615
635
  .andWhere('"loc"."type" NOT IN (:...locationTypes)')
@@ -620,7 +640,6 @@ export const InventoryUtil = {
620
640
  .setParameters({
621
641
  domainId: domain.id,
622
642
  bizplaceId: customerBizplace.id,
623
- productDetailId: productDetail.id,
624
643
  status: INVENTORY_STATUS.STORED,
625
644
  locationTypes: [LOCATION_TYPE.QUARANTINE, LOCATION_TYPE.RESERVE]
626
645
  })
@@ -629,6 +648,14 @@ export const InventoryUtil = {
629
648
  qb.andWhere('"iv"."batch_id" = :batchId', { batchId: batchId })
630
649
  }
631
650
 
651
+ if (strictProduct == 'true') {
652
+ qb.andWhere('"iv"."product_detail_id" = :productDetailId', { productDetailId: productDetail.id })
653
+ } else {
654
+ qb.andWhere('"iv"."packing_type" = :packingType', { packingType: orderInventory.packingType })
655
+ .andWhere('"iv"."packing_size" = :packingSize', { packingSize: orderInventory.packingSize })
656
+ .andWhere('"iv"."uom" = :uom', { uom: orderInventory.uom })
657
+ }
658
+
632
659
  let locationSorting = function (qb: SelectQueryBuilder<Inventory>, locationSortingRules) {
633
660
  if (locationSortingRules?.length) {
634
661
  locationSortingRules.forEach((rule: { name: string; desc: boolean }, idx: number) => {