@things-factory/sales-base 4.3.0 → 4.4.0-alpha.0
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.
- package/dist-server/constants/attachment-type.js +1 -2
- package/dist-server/constants/attachment-type.js.map +1 -1
- package/dist-server/constants/index.js +5 -2
- package/dist-server/constants/index.js.map +1 -1
- package/dist-server/constants/order.js +3 -12
- package/dist-server/constants/order.js.map +1 -1
- package/dist-server/controllers/ecommerce/index.js +5 -1
- package/dist-server/controllers/ecommerce/index.js.map +1 -1
- package/dist-server/controllers/index.js +5 -1
- package/dist-server/controllers/index.js.map +1 -1
- package/dist-server/errors/index.js +5 -1
- package/dist-server/errors/index.js.map +1 -1
- package/dist-server/errors/validation-error.js +5 -1
- package/dist-server/errors/validation-error.js.map +1 -1
- package/dist-server/index.js +5 -1
- package/dist-server/index.js.map +1 -1
- package/dist-server/service/arrival-notice/index.js +5 -1
- package/dist-server/service/arrival-notice/index.js.map +1 -1
- package/dist-server/service/claim/index.js +5 -1
- package/dist-server/service/claim/index.js.map +1 -1
- package/dist-server/service/claim-detail/index.js +5 -1
- package/dist-server/service/claim-detail/index.js.map +1 -1
- package/dist-server/service/claim-order/index.js +5 -1
- package/dist-server/service/claim-order/index.js.map +1 -1
- package/dist-server/service/collection-order/index.js +5 -1
- package/dist-server/service/collection-order/index.js.map +1 -1
- package/dist-server/service/delivery-order/index.js +5 -1
- package/dist-server/service/delivery-order/index.js.map +1 -1
- package/dist-server/service/goods-receival-note/index.js +5 -1
- package/dist-server/service/goods-receival-note/index.js.map +1 -1
- package/dist-server/service/index.js +24 -48
- package/dist-server/service/index.js.map +1 -1
- package/dist-server/service/inventory-check/index.js +5 -1
- package/dist-server/service/inventory-check/index.js.map +1 -1
- package/dist-server/service/invoice/index.js +5 -1
- package/dist-server/service/invoice/index.js.map +1 -1
- package/dist-server/service/invoice-product/index.js +5 -1
- package/dist-server/service/invoice-product/index.js.map +1 -1
- package/dist-server/service/job-sheet/index.js +5 -1
- package/dist-server/service/job-sheet/index.js.map +1 -1
- package/dist-server/service/order-inventory/index.js +5 -1
- package/dist-server/service/order-inventory/index.js.map +1 -1
- package/dist-server/service/order-inventory/order-inventory-query.js +1 -38
- package/dist-server/service/order-inventory/order-inventory-query.js.map +1 -1
- package/dist-server/service/order-inventory/order-inventory-types.js +1 -9
- package/dist-server/service/order-inventory/order-inventory-types.js.map +1 -1
- package/dist-server/service/order-inventory/order-inventory.js +1 -5
- package/dist-server/service/order-inventory/order-inventory.js.map +1 -1
- package/dist-server/service/order-product/index.js +5 -1
- package/dist-server/service/order-product/index.js.map +1 -1
- package/dist-server/service/order-product/order-product-types.js +13 -13
- package/dist-server/service/order-product/order-product-types.js.map +1 -1
- package/dist-server/service/order-product/order-product.js +4 -39
- package/dist-server/service/order-product/order-product.js.map +1 -1
- package/dist-server/service/order-vas/index.js +5 -1
- package/dist-server/service/order-vas/index.js.map +1 -1
- package/dist-server/service/others/index.js +5 -1
- package/dist-server/service/others/index.js.map +1 -1
- package/dist-server/service/others/other-query.js +2 -37
- package/dist-server/service/others/other-query.js.map +1 -1
- package/dist-server/service/purchase-order/index.js +5 -1
- package/dist-server/service/purchase-order/index.js.map +1 -1
- package/dist-server/service/purchase-order-other-charge/index.js +5 -1
- package/dist-server/service/purchase-order-other-charge/index.js.map +1 -1
- package/dist-server/service/release-good/index.js +5 -1
- package/dist-server/service/release-good/index.js.map +1 -1
- package/dist-server/service/release-good/release-good-mutation.js +1 -23
- package/dist-server/service/release-good/release-good-mutation.js.map +1 -1
- package/dist-server/service/release-good/release-good-query.js +2 -28
- package/dist-server/service/release-good/release-good-query.js.map +1 -1
- package/dist-server/service/release-good/release-good.js +12 -32
- package/dist-server/service/release-good/release-good.js.map +1 -1
- package/dist-server/service/retail-replenishment-order/index.js +5 -1
- package/dist-server/service/retail-replenishment-order/index.js.map +1 -1
- package/dist-server/service/return-order/index.js +5 -1
- package/dist-server/service/return-order/index.js.map +1 -1
- package/dist-server/service/reverse-kitting-order/index.js +5 -1
- package/dist-server/service/reverse-kitting-order/index.js.map +1 -1
- package/dist-server/service/reverse-kitting-order-inventory/index.js +5 -1
- package/dist-server/service/reverse-kitting-order-inventory/index.js.map +1 -1
- package/dist-server/service/shipping-order/index.js +5 -1
- package/dist-server/service/shipping-order/index.js.map +1 -1
- package/dist-server/service/transfer-order/index.js +5 -1
- package/dist-server/service/transfer-order/index.js.map +1 -1
- package/dist-server/service/vas/index.js +5 -1
- package/dist-server/service/vas/index.js.map +1 -1
- package/dist-server/service/vas-order/index.js +5 -1
- package/dist-server/service/vas-order/index.js.map +1 -1
- package/dist-server/utils/index.js +5 -1
- package/dist-server/utils/index.js.map +1 -1
- package/dist-server/utils/inventory-util.js +99 -258
- package/dist-server/utils/inventory-util.js.map +1 -1
- package/dist-server/utils/order-no-generator.js +0 -7
- package/dist-server/utils/order-no-generator.js.map +1 -1
- package/package.json +13 -13
- package/server/constants/attachment-type.ts +1 -2
- package/server/constants/index.ts +0 -1
- package/server/constants/order.ts +2 -12
- package/server/service/index.ts +21 -51
- package/server/service/order-inventory/order-inventory-query.ts +2 -40
- package/server/service/order-inventory/order-inventory-types.ts +0 -6
- package/server/service/order-inventory/order-inventory.ts +5 -5
- package/server/service/order-product/order-product-types.ts +3 -5
- package/server/service/order-product/order-product.ts +3 -30
- package/server/service/others/other-query.ts +8 -43
- package/server/service/release-good/release-good-mutation.ts +2 -24
- package/server/service/release-good/release-good-query.ts +30 -57
- package/server/service/release-good/release-good.ts +9 -28
- package/server/utils/inventory-util.ts +106 -287
- package/server/utils/order-no-generator.ts +48 -42
- package/dist-server/constants/release-good.js +0 -9
- package/dist-server/constants/release-good.js.map +0 -1
- package/dist-server/service/draft-release-good/draft-release-good-mutation.js +0 -501
- package/dist-server/service/draft-release-good/draft-release-good-mutation.js.map +0 -1
- package/dist-server/service/draft-release-good/draft-release-good-query.js +0 -289
- package/dist-server/service/draft-release-good/draft-release-good-query.js.map +0 -1
- package/dist-server/service/draft-release-good/draft-release-good-type.js +0 -364
- package/dist-server/service/draft-release-good/draft-release-good-type.js.map +0 -1
- package/dist-server/service/draft-release-good/draft-release-good.js +0 -321
- package/dist-server/service/draft-release-good/draft-release-good.js.map +0 -1
- package/dist-server/service/draft-release-good/index.js +0 -21
- package/dist-server/service/draft-release-good/index.js.map +0 -1
- package/dist-server/service/order-tote/index.js +0 -21
- package/dist-server/service/order-tote/index.js.map +0 -1
- package/dist-server/service/order-tote/order-tote-mutation.js +0 -56
- package/dist-server/service/order-tote/order-tote-mutation.js.map +0 -1
- package/dist-server/service/order-tote/order-tote-query.js +0 -123
- package/dist-server/service/order-tote/order-tote-query.js.map +0 -1
- package/dist-server/service/order-tote/order-tote-types.js +0 -79
- package/dist-server/service/order-tote/order-tote-types.js.map +0 -1
- package/dist-server/service/order-tote/order-tote.js +0 -91
- package/dist-server/service/order-tote/order-tote.js.map +0 -1
- package/dist-server/service/order-tote-item/index.js +0 -21
- package/dist-server/service/order-tote-item/index.js.map +0 -1
- package/dist-server/service/order-tote-item/order-tote-item-mutation.js +0 -56
- package/dist-server/service/order-tote-item/order-tote-item-mutation.js.map +0 -1
- package/dist-server/service/order-tote-item/order-tote-item-query.js +0 -100
- package/dist-server/service/order-tote-item/order-tote-item-query.js.map +0 -1
- package/dist-server/service/order-tote-item/order-tote-item-types.js +0 -91
- package/dist-server/service/order-tote-item/order-tote-item-types.js.map +0 -1
- package/dist-server/service/order-tote-item/order-tote-item.js +0 -104
- package/dist-server/service/order-tote-item/order-tote-item.js.map +0 -1
- package/dist-server/service/order-tote-seal/index.js +0 -21
- package/dist-server/service/order-tote-seal/index.js.map +0 -1
- package/dist-server/service/order-tote-seal/order-tote-seal-mutation.js +0 -56
- package/dist-server/service/order-tote-seal/order-tote-seal-mutation.js.map +0 -1
- package/dist-server/service/order-tote-seal/order-tote-seal-query.js +0 -97
- package/dist-server/service/order-tote-seal/order-tote-seal-query.js.map +0 -1
- package/dist-server/service/order-tote-seal/order-tote-seal-types.js +0 -71
- package/dist-server/service/order-tote-seal/order-tote-seal-types.js.map +0 -1
- package/dist-server/service/order-tote-seal/order-tote-seal.js +0 -71
- package/dist-server/service/order-tote-seal/order-tote-seal.js.map +0 -1
- package/server/constants/release-good.ts +0 -6
- package/server/service/draft-release-good/draft-release-good-mutation.ts +0 -671
- package/server/service/draft-release-good/draft-release-good-query.ts +0 -314
- package/server/service/draft-release-good/draft-release-good-type.ts +0 -261
- package/server/service/draft-release-good/draft-release-good.ts +0 -270
- package/server/service/draft-release-good/index.ts +0 -9
- package/server/service/order-tote/index.ts +0 -9
- package/server/service/order-tote/order-tote-mutation.ts +0 -30
- package/server/service/order-tote/order-tote-query.ts +0 -114
- package/server/service/order-tote/order-tote-types.ts +0 -47
- package/server/service/order-tote/order-tote.ts +0 -62
- package/server/service/order-tote-item/index.ts +0 -9
- package/server/service/order-tote-item/order-tote-item-mutation.ts +0 -30
- package/server/service/order-tote-item/order-tote-item-query.ts +0 -88
- package/server/service/order-tote-item/order-tote-item-types.ts +0 -56
- package/server/service/order-tote-item/order-tote-item.ts +0 -72
- package/server/service/order-tote-seal/index.ts +0 -9
- package/server/service/order-tote-seal/order-tote-seal-mutation.ts +0 -30
- package/server/service/order-tote-seal/order-tote-seal-query.ts +0 -60
- package/server/service/order-tote-seal/order-tote-seal-types.ts +0 -41
- package/server/service/order-tote-seal/order-tote-seal.ts +0 -46
|
@@ -264,7 +264,6 @@ export class ReleaseGoodQuery {
|
|
|
264
264
|
const noOfItemsFilter = params.filters.find(param => param.name === 'noOfItems')
|
|
265
265
|
const skuFilter = params.filters.find(param => param.name === 'sku')
|
|
266
266
|
const routeId = params.filters.find(param => param.name === 'routeId')
|
|
267
|
-
const orderRemarkFilter = params.filters.find(param => param.name === 'orderRemark')
|
|
268
267
|
|
|
269
268
|
if (await checkUserBelongsDomain(domain, user)) {
|
|
270
269
|
if (!statusFilter && !params.filters.some(e => e.name === 'name')) {
|
|
@@ -299,27 +298,6 @@ export class ReleaseGoodQuery {
|
|
|
299
298
|
}
|
|
300
299
|
}
|
|
301
300
|
|
|
302
|
-
if (orderRemarkFilter) {
|
|
303
|
-
const orderRemarkIdx = params.filters.findIndex(param => param.name === 'orderRemark')
|
|
304
|
-
if (orderRemarkFilter.value == true) {
|
|
305
|
-
params.filters.splice(orderRemarkIdx, 1)
|
|
306
|
-
params.filters.push({
|
|
307
|
-
name: 'remark',
|
|
308
|
-
operator: 'is_not_null',
|
|
309
|
-
value: null,
|
|
310
|
-
relation: false
|
|
311
|
-
})
|
|
312
|
-
} else {
|
|
313
|
-
params.filters.splice(orderRemarkIdx, 1)
|
|
314
|
-
params.filters.push({
|
|
315
|
-
name: 'remark',
|
|
316
|
-
operator: 'is_null',
|
|
317
|
-
value: null,
|
|
318
|
-
relation: false
|
|
319
|
-
})
|
|
320
|
-
}
|
|
321
|
-
}
|
|
322
|
-
|
|
323
301
|
const fromDateParamIdx = params.filters.findIndex(param => param.name === 'fromDate')
|
|
324
302
|
if (fromDateParamIdx >= 0) {
|
|
325
303
|
let fromDateVal = new Date(params.filters[fromDateParamIdx].value)
|
|
@@ -400,14 +378,7 @@ export class ReleaseGoodQuery {
|
|
|
400
378
|
|
|
401
379
|
qb.orderBy(sort)
|
|
402
380
|
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
items = items.map(item => {
|
|
406
|
-
return {
|
|
407
|
-
...item,
|
|
408
|
-
orderRemark: item?.remark ? true : false
|
|
409
|
-
}
|
|
410
|
-
})
|
|
381
|
+
const [items, total] = await qb.getManyAndCount()
|
|
411
382
|
|
|
412
383
|
return { items, total }
|
|
413
384
|
} catch (error) {
|
|
@@ -467,24 +438,27 @@ export class ReleaseGoodQuery {
|
|
|
467
438
|
${batchId ? `AND LOWER(${INV_ALIAS}.batch_id) LIKE '%${batchId.toLowerCase()}%'` : ''}
|
|
468
439
|
${packingType ? `AND LOWER(${INV_ALIAS}.packing_type) LIKE '%${packingType.toLowerCase()}%'` : ''}
|
|
469
440
|
${containerNo ? `AND LOWER(${GAN_ALIAS}.container_no) LIKE '%${containerNo.toLowerCase()}%'` : ''}
|
|
470
|
-
${
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
441
|
+
${
|
|
442
|
+
product?.length > 0 && product[0]
|
|
443
|
+
? `AND ${PROD_ALIAS}.id IN (${product.map((id: string) => `'${id}'`).join(', ')})`
|
|
444
|
+
: product[0] === null
|
|
445
|
+
? `AND ${PROD_ALIAS}.id isnull`
|
|
446
|
+
: ''
|
|
447
|
+
}
|
|
448
|
+
${
|
|
449
|
+
inventory?.length > 0
|
|
450
|
+
? `
|
|
451
|
+
AND (${INV_ALIAS}.batch_id, ${PROD_ALIAS}.id) ${
|
|
452
|
+
filters.find((filter: { name: string; operator: string; value: any }) => filter.name === 'inventory')
|
|
453
|
+
.operator
|
|
454
|
+
} (
|
|
481
455
|
${inventory
|
|
482
|
-
|
|
483
|
-
|
|
456
|
+
.map((inv: { batchId: string; productId: string }) => `('${inv.batchId}', '${inv.productId}')`)
|
|
457
|
+
.join(', ')}
|
|
484
458
|
)
|
|
485
459
|
`
|
|
486
|
-
|
|
487
|
-
|
|
460
|
+
: ''
|
|
461
|
+
}
|
|
488
462
|
`
|
|
489
463
|
|
|
490
464
|
// ${product?.length > 0 ? `AND ${PROD_ALIAS}.id IN (${product.map((id: string) => id ? `'${id}'` : null).join(', ')})` : ''}
|
|
@@ -658,8 +632,7 @@ export async function bulkReleaseGoodsAvailableItemsFunction(
|
|
|
658
632
|
packing_type: raw.packingType,
|
|
659
633
|
packing_size: raw.packingSize,
|
|
660
634
|
uom: raw.uom,
|
|
661
|
-
|
|
662
|
-
release_qty: raw.releaseQty,
|
|
635
|
+
release_qty: raw.releaseQty
|
|
663
636
|
}
|
|
664
637
|
})
|
|
665
638
|
)
|
|
@@ -839,16 +812,16 @@ function _extractData(rawData, validatedData) {
|
|
|
839
812
|
!raw.productId || !raw.productDetailId
|
|
840
813
|
? 'inventory or product not found'
|
|
841
814
|
: raw.releaseQty <= 0
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
815
|
+
? 'invalid release qty'
|
|
816
|
+
: raw.assignedQty < raw.releaseQty
|
|
817
|
+
? 'insufficient stock'
|
|
818
|
+
: raw.releaseDate == ''
|
|
819
|
+
? 'release date is empty'
|
|
820
|
+
: releaseDate < _getStdDateStr(new Date())
|
|
821
|
+
? 'backdate is not allowed'
|
|
822
|
+
: !raw.refNo
|
|
823
|
+
? 'ref no is empty'
|
|
824
|
+
: ''
|
|
852
825
|
}
|
|
853
826
|
})
|
|
854
827
|
}
|
|
@@ -28,29 +28,25 @@ import {
|
|
|
28
28
|
OrderProduct,
|
|
29
29
|
OrderVas,
|
|
30
30
|
ShippingOrder,
|
|
31
|
-
ShippingOrderInfo
|
|
31
|
+
ShippingOrderInfo
|
|
32
32
|
} from '../'
|
|
33
33
|
|
|
34
|
-
import { ReleaseOrderType } from '../../constants'
|
|
35
|
-
|
|
36
34
|
const ORMCONFIG = config.get('ormconfig', {})
|
|
37
35
|
const DATABASE_TYPE = ORMCONFIG.type
|
|
38
36
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
37
|
+
export enum ReleaseOrderType {
|
|
38
|
+
B2B = 'b2b',
|
|
39
|
+
B2C = 'b2c'
|
|
40
|
+
}
|
|
43
41
|
|
|
44
42
|
export enum DispatchmentStatus {
|
|
45
43
|
READY_TO_DISPATCH = 'READY_TO_DISPATCH',
|
|
46
44
|
DISPATCHED = 'DISPATCHED'
|
|
47
45
|
}
|
|
48
|
-
|
|
49
46
|
@Entity()
|
|
50
47
|
@Index('ix_release-good_0', (releaseGood: ReleaseGood) => [releaseGood.domain, releaseGood.name], { unique: true })
|
|
51
48
|
@Index('ix_release-good_1', (releaseGood: ReleaseGood) => [releaseGood.domain, releaseGood.refNo])
|
|
52
49
|
@Index('ix_release-good_2', (releaseGood: ReleaseGood) => [releaseGood.domain, releaseGood.refNo2])
|
|
53
|
-
@Index('ix_release-good_3', (releaseGood: ReleaseGood) => [releaseGood.domain, releaseGood.remark])
|
|
54
50
|
@ObjectType()
|
|
55
51
|
export class ReleaseGood {
|
|
56
52
|
@PrimaryGeneratedColumn('uuid')
|
|
@@ -96,8 +92,8 @@ export class ReleaseGood {
|
|
|
96
92
|
DATABASE_TYPE == 'postgres' || DATABASE_TYPE == 'mysql' || DATABASE_TYPE == 'mariadb'
|
|
97
93
|
? 'enum'
|
|
98
94
|
: DATABASE_TYPE == 'oracle'
|
|
99
|
-
|
|
100
|
-
|
|
95
|
+
? 'varchar2'
|
|
96
|
+
: 'smallint',
|
|
101
97
|
enum: ReleaseOrderType,
|
|
102
98
|
default: ReleaseOrderType.B2B
|
|
103
99
|
})
|
|
@@ -164,8 +160,8 @@ export class ReleaseGood {
|
|
|
164
160
|
DATABASE_TYPE == 'postgres' || DATABASE_TYPE == 'mysql' || DATABASE_TYPE == 'mariadb'
|
|
165
161
|
? 'enum'
|
|
166
162
|
: DATABASE_TYPE == 'oracle'
|
|
167
|
-
|
|
168
|
-
|
|
163
|
+
? 'varchar2'
|
|
164
|
+
: 'smallint',
|
|
169
165
|
enum: DispatchmentStatus,
|
|
170
166
|
default: DispatchmentStatus.READY_TO_DISPATCH
|
|
171
167
|
})
|
|
@@ -310,18 +306,6 @@ export class ReleaseGood {
|
|
|
310
306
|
@Field()
|
|
311
307
|
updatedAt: Date
|
|
312
308
|
|
|
313
|
-
@ManyToOne(type => User)
|
|
314
|
-
@Field(type => User, { nullable: true })
|
|
315
|
-
checkedRemarkUser: User
|
|
316
|
-
|
|
317
|
-
@Column({ nullable: true })
|
|
318
|
-
@Field({ nullable: true })
|
|
319
|
-
checkedRemarkBy: string
|
|
320
|
-
|
|
321
|
-
@Column({ nullable: true })
|
|
322
|
-
@Field({ nullable: true })
|
|
323
|
-
checkedRemarkAt: Date
|
|
324
|
-
|
|
325
309
|
@ManyToOne(type => User)
|
|
326
310
|
@Field(type => User, { nullable: true })
|
|
327
311
|
acceptedBy: User
|
|
@@ -421,7 +405,4 @@ export class ReleaseGood {
|
|
|
421
405
|
@Column({ nullable: true })
|
|
422
406
|
@Field({ nullable: true })
|
|
423
407
|
stopId: string
|
|
424
|
-
|
|
425
|
-
@Field({ nullable: true })
|
|
426
|
-
orderRemark: Boolean
|
|
427
408
|
}
|