@things-factory/sales-base 4.3.629 → 4.3.632

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.
@@ -443,144 +443,153 @@ async function validateBulkArrivalNoticesFunction(rawArrivalNotices, bizplaceId,
443
443
  const insertResult = await trxMgr.query(`
444
444
  SELECT * from raw_arrival_notices
445
445
  `);
446
+ await trxMgr.query(`
447
+ CREATE TEMPORARY TABLE temp_foo AS
448
+ SELECT
449
+ an.name AS gan_name,
450
+ an.ref_no AS gan_ref_no,
451
+ raw.ref_no,
452
+ raw.ref_no_2,
453
+ raw.ref_no_3,
454
+ raw.eta_date,
455
+ raw.truck_no,
456
+ raw.own_transport,
457
+ raw.container,
458
+ raw.container_no,
459
+ raw.container_size,
460
+ raw.import_cargo,
461
+ raw.loose_item,
462
+ pr.id AS product_id,
463
+ pd.id AS product_detail_id,
464
+ raw.sku AS sku,
465
+ CASE WHEN pr.description NOT IN (NULL, '', '-') THEN CONCAT(pr.name, '(', pr.description, ')') ELSE pr.name END AS product_info,
466
+ raw.batch_id,
467
+ raw.batch_id_ref,
468
+ pd.packing_type,
469
+ pd.packing_size,
470
+ pd.cost_price,
471
+ sum(raw.pack_qty) AS pack_qty,
472
+ raw.pallet_id,
473
+ sum(pd.uom_value) AS uom_value,
474
+ pd.uom,
475
+ sum(raw.pallet_qty) AS pallet_qty,
476
+ CASE WHEN raw.unit_price = '' THEN pd.cost_price::varchar ELSE raw.unit_price::varchar END AS unit_price,
477
+ raw.manufacture_date
478
+ FROM
479
+ raw_arrival_notices raw
480
+ LEFT JOIN temp_gan an ON raw.ref_no = an.ref_no
481
+ AND raw.ref_no_2 = an.ref_no_2
482
+ AND raw.ref_no_3 = an.ref_no_3
483
+ AND raw.eta_date = an.eta_date
484
+ AND raw.truck_no = an.truck_no
485
+ AND raw.own_transport = an.own_transport
486
+ AND raw.container = an.container
487
+ AND raw.container_no = an.container_no
488
+ AND raw.container_size = an.container_size
489
+ AND raw.loose_item = an.loose_item
490
+ AND raw.import_cargo = an.import_cargo
491
+ LEFT JOIN products pr ON LOWER(pr.sku) = LOWER(raw.sku)
492
+ LEFT JOIN product_details pd ON pr.id = pd.product_id
493
+ AND CASE WHEN raw.packing_type NOTNULL AND raw.packing_size NOTNULL AND raw.uom NOTNULL
494
+ THEN pd.packing_type = raw.packing_type AND pd.packing_size = raw.packing_size AND pd.uom = raw.uom
495
+ WHEN raw.packing_type NOTNULL AND raw.packing_size NOTNULL AND raw.uom ISNULL
496
+ THEN pd.packing_type = raw.packing_type AND pd.packing_size = raw.packing_size AND pd.is_default IS TRUE
497
+ WHEN raw.packing_type ISNULL AND raw.packing_size ISNULL AND raw.uom NOTNULL
498
+ THEN pd.uom = raw.uom AND pd.is_default IS TRUE ELSE pd.is_default IS TRUE
499
+ END
500
+ WHERE pr.bizplace_id = $1
501
+ GROUP BY raw.ref_no, raw.ref_no_2, raw.ref_no_3, raw.eta_date, raw.truck_no, raw.own_transport, raw.container, raw.container_no, raw.container_size, raw.import_cargo, raw.loose_item,
502
+ pr.id, pd.id, raw.sku, pr.name, pr.description, raw.batch_id, raw.batch_id_ref, raw.packing_type, raw.pallet_id, raw.packing_size, raw.uom, raw.unit_price, raw.manufacture_date, an.ref_no, an.name;
503
+ `, [companyBizplace.id]);
504
+ await trxMgr.query(`
505
+ CREATE TEMPORARY TABLE temp_foo_duplicates AS
506
+ SELECT
507
+ pallet_id,
508
+ COUNT(*) AS duplicate_count
509
+ FROM temp_foo
510
+ GROUP BY pallet_id;`);
511
+ await trxMgr.query(`
512
+ CREATE TEMPORARY TABLE temp_used_pallet_ids AS
513
+ SELECT DISTINCT pallet_id
514
+ FROM order_products
515
+ WHERE domain_id = $1;
516
+ `, [domain.id]);
446
517
  let validatedItems = await trxMgr.query(`
447
- WITH foo AS (
448
- SELECT
449
- an.name AS gan_name,
450
- an.ref_no AS gan_ref_no,
451
- raw.ref_no,
452
- raw.ref_no_2,
453
- raw.ref_no_3,
454
- raw.eta_date,
455
- raw.truck_no,
456
- raw.own_transport,
457
- raw.container,
458
- raw.container_no,
459
- raw.container_size,
460
- raw.import_cargo,
461
- raw.loose_item,
462
- pr.id AS product_id,
463
- pd.id AS product_detail_id,
464
- raw.sku AS sku,
465
- CASE WHEN pr.description NOT IN (NULL, '', '-') THEN CONCAT(pr.name, '(', pr.description, ')') ELSE pr.name END AS product_info,
466
- raw.batch_id,
467
- raw.batch_id_ref,
468
- pd.packing_type,
469
- pd.packing_size,
470
- pd.cost_price,
471
- sum(raw.pack_qty) AS pack_qty,
472
- raw.pallet_id,
473
- sum(pd.uom_value) AS uom_value,
474
- pd.uom,
475
- sum(raw.pallet_qty) AS pallet_qty,
476
- CASE WHEN raw.unit_price = '' THEN pd.cost_price::varchar ELSE raw.unit_price::varchar END AS unit_price,
477
- raw.manufacture_date
478
- FROM
479
- raw_arrival_notices raw
480
- LEFT JOIN temp_gan an ON raw.ref_no = an.ref_no
481
- AND raw.ref_no_2 = an.ref_no_2
482
- AND raw.ref_no_3 = an.ref_no_3
483
- AND raw.eta_date = an.eta_date
484
- AND raw.truck_no = an.truck_no
485
- AND raw.own_transport = an.own_transport
486
- AND raw.container = an.container
487
- AND raw.container_no = an.container_no
488
- AND raw.container_size = an.container_size
489
- AND raw.loose_item = an.loose_item
490
- AND raw.import_cargo = an.import_cargo
491
- LEFT JOIN products pr ON LOWER(pr.sku) = LOWER(raw.sku)
492
- LEFT JOIN product_details pd ON pr.id = pd.product_id
493
- AND CASE WHEN raw.packing_type NOTNULL AND raw.packing_size NOTNULL AND raw.uom NOTNULL
494
- THEN pd.packing_type = raw.packing_type AND pd.packing_size = raw.packing_size AND pd.uom = raw.uom
495
- WHEN raw.packing_type NOTNULL AND raw.packing_size NOTNULL AND raw.uom ISNULL
496
- THEN pd.packing_type = raw.packing_type AND pd.packing_size = raw.packing_size AND pd.is_default IS TRUE
497
- WHEN raw.packing_type ISNULL AND raw.packing_size ISNULL AND raw.uom NOTNULL
498
- THEN pd.uom = raw.uom AND pd.is_default IS TRUE ELSE pd.is_default IS TRUE
499
- END
500
- WHERE pr.bizplace_id = $1
501
- GROUP BY raw.ref_no, raw.ref_no_2, raw.ref_no_3, raw.eta_date, raw.truck_no, raw.own_transport, raw.container, raw.container_no, raw.container_size, raw.import_cargo, raw.loose_item,
502
- pr.id, pd.id, raw.sku, pr.name, pr.description, raw.batch_id, raw.batch_id_ref, raw.packing_type, raw.pallet_id, raw.packing_size, raw.uom, raw.unit_price, raw.manufacture_date, an.ref_no, an.name
503
- ), foo_duplicates AS (
504
- SELECT
505
- pallet_id,
506
- COUNT(*) AS duplicate_count
507
- FROM foo
508
- GROUP BY pallet_id
509
- )
510
- SELECT foo.*,
511
- CONCAT(COALESCE(ROUND(foo.uom_value:: numeric, 2), 0) * COALESCE(foo.pack_qty, 0), ' ', foo.uom) AS total_uom_value,
512
- TRIM(
513
- BOTH ',' FROM (
514
- CASE
515
- WHEN foo.gan_ref_no IS NOT NULL THEN 'order duplicated with ' || foo.gan_name || ','
516
- ELSE ''
517
- END ||
518
- CASE
519
- WHEN (SUBSTRING(foo.manufacture_date,5,1) = '-' AND SUBSTRING(foo.manufacture_date,8,1) = '-') OR foo.manufacture_date IS NULL THEN
520
- CASE
521
- WHEN TO_DATE(foo.manufacture_date, 'YYYY-MM-DD') > current_date THEN 'invalid manufacture date,'
522
- ELSE ''
523
- END
524
- ELSE 'invalid manufacture date format. please use dd/mm/yyyy,'
525
- END ||
526
- CASE
527
- WHEN foo.product_id IS NULL OR foo.product_detail_id IS NULL OR foo.sku IS NULL THEN 'product not found,'
528
- ELSE ''
529
- END ||
530
- CASE
531
- WHEN foo.pack_qty IS NULL OR foo.pack_qty <= 0 THEN 'invalid pack qty,'
532
- ELSE ''
533
- END ||
534
- CASE
535
- WHEN foo.batch_id IS NULL THEN 'batch no. is required,'
536
- ELSE ''
537
- END ||
538
- CASE
539
- WHEN foo.ref_no IS NULL OR foo.ref_no = '' THEN 'ref no. is required,'
540
- ELSE ''
541
- END ||
542
- CASE
543
- WHEN foo.eta_date IS NULL THEN 'eta date is required,'
544
- ELSE ''
545
- END ||
546
- CASE
547
- WHEN NOT(SUBSTRING(foo.eta_date,5,1) = '-' AND SUBSTRING(foo.eta_date,8,1) = '-') THEN 'invalid eta date format. please use dd/mm/yyyy,'
548
- ELSE ''
549
- END ||
550
- CASE
551
- WHEN foo.unit_price IS NULL THEN 'invalid unit price (not a number),'
552
- ELSE ''
553
- END ||
554
- CASE
555
- WHEN foo.unit_price::FLOAT < 0 THEN 'invalid unit price (negative value),'
556
- ELSE ''
557
- END ||
558
- CASE
559
- WHEN (foo.container_no IS NOT NULL AND foo.container_size IS NULL) OR (foo.container_no IS NULL AND foo.container_size IS NOT NULL) THEN 'incomplete container information,'
560
- ELSE ''
561
- END ||
562
- CASE
563
- WHEN foo.pallet_qty < 0 THEN 'invalid pallet qty,'
564
- ELSE ''
565
- END ||
566
- CASE
567
- WHEN (SELECT duplicate_count FROM foo_duplicates WHERE foo_duplicates.pallet_id = foo.pallet_id) > 1 THEN 'duplicate Lot ID within current data,'
568
- ELSE ''
569
- END ||
570
- CASE
571
- WHEN EXISTS (
572
- SELECT *
573
- FROM order_products op
574
- WHERE op.domain_id = $2 AND op.pallet_id = foo.pallet_id
575
- ) THEN 'Lot ID is already in use. Please enter new Lot ID,'
576
- ELSE ''
577
- END
578
- )
579
- ) AS error_msg
580
- FROM foo
581
- ORDER BY foo.ref_no, foo.ref_no_2, foo.ref_no_3, foo.sku
582
- `, [companyBizplace.id, domain.id]);
583
- await trxMgr.query('DROP TABLE raw_arrival_notices, temp_gan');
518
+ SELECT
519
+ f.*,
520
+ CONCAT(COALESCE(ROUND(f.uom_value::numeric, 2), 0) * COALESCE(f.pack_qty, 0), ' ', f.uom) AS total_uom_value,
521
+ TRIM(
522
+ BOTH ',' FROM (
523
+ CASE
524
+ WHEN f.gan_ref_no IS NOT NULL THEN 'order duplicated with ' || f.gan_name || ','
525
+ ELSE ''
526
+ END ||
527
+ CASE
528
+ WHEN (SUBSTRING(f.manufacture_date,5,1) = '-' AND SUBSTRING(f.manufacture_date,8,1) = '-') OR f.manufacture_date IS NULL THEN
529
+ CASE
530
+ WHEN TO_DATE(f.manufacture_date, 'YYYY-MM-DD') > current_date THEN 'invalid manufacture date,'
531
+ ELSE ''
532
+ END
533
+ ELSE 'invalid manufacture date format. please use dd/mm/yyyy,'
534
+ END ||
535
+ CASE
536
+ WHEN f.product_id IS NULL OR f.product_detail_id IS NULL OR f.sku IS NULL THEN 'product not found,'
537
+ ELSE ''
538
+ END ||
539
+ CASE
540
+ WHEN f.pack_qty IS NULL OR f.pack_qty <= 0 THEN 'invalid pack qty,'
541
+ ELSE ''
542
+ END ||
543
+ CASE
544
+ WHEN f.batch_id IS NULL THEN 'batch no. is required,'
545
+ ELSE ''
546
+ END ||
547
+ CASE
548
+ WHEN f.ref_no IS NULL OR f.ref_no = '' THEN 'ref no. is required,'
549
+ ELSE ''
550
+ END ||
551
+ CASE
552
+ WHEN f.eta_date IS NULL THEN 'eta date is required,'
553
+ ELSE ''
554
+ END ||
555
+ CASE
556
+ WHEN NOT(SUBSTRING(f.eta_date,5,1) = '-' AND SUBSTRING(f.eta_date,8,1) = '-') THEN 'invalid eta date format. please use dd/mm/yyyy,'
557
+ ELSE ''
558
+ END ||
559
+ CASE
560
+ WHEN f.unit_price IS NULL THEN 'invalid unit price (not a number),'
561
+ ELSE ''
562
+ END ||
563
+ CASE
564
+ WHEN f.unit_price::FLOAT < 0 THEN 'invalid unit price (negative value),'
565
+ ELSE ''
566
+ END ||
567
+ CASE
568
+ WHEN (f.container_no IS NOT NULL AND f.container_size IS NULL) OR (f.container_no IS NULL AND f.container_size IS NOT NULL) THEN 'incomplete container information,'
569
+ ELSE ''
570
+ END ||
571
+ CASE
572
+ WHEN f.pallet_qty < 0 THEN 'invalid pallet qty,'
573
+ ELSE ''
574
+ END ||
575
+ CASE
576
+ WHEN d.duplicate_count > 1 THEN 'duplicate Lot ID within current data,'
577
+ ELSE ''
578
+ END ||
579
+ CASE
580
+ WHEN EXISTS (
581
+ SELECT 1 FROM temp_used_pallet_ids up WHERE up.pallet_id = f.pallet_id
582
+ ) THEN 'Lot ID is already in use. Please enter new Lot ID,'
583
+ ELSE ''
584
+ END
585
+ )
586
+ ) AS error_msg
587
+ FROM
588
+ temp_foo f
589
+ LEFT JOIN temp_foo_duplicates d ON f.pallet_id = d.pallet_id
590
+ ORDER BY f.ref_no, f.ref_no_2, f.ref_no_3, f.sku;
591
+ `);
592
+ await trxMgr.query('DROP TABLE raw_arrival_notices, temp_gan, temp_foo, temp_foo_duplicates, temp_used_pallet_ids');
584
593
  return validatedItems.map(item => {
585
594
  return {
586
595
  refNo: item.ref_no,
@@ -1 +1 @@
1
- {"version":3,"file":"arrival-notice-query.js","sourceRoot":"","sources":["../../../server/service/arrival-notice/arrival-notice-query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"arrival-notice-query.js","sourceRoot":"","sources":["../../../server/service/arrival-notice/arrival-notice-query.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.629",
3
+ "version": "4.3.632",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "client/index.js",
6
6
  "things-factory": true,
@@ -35,9 +35,9 @@
35
35
  "@things-factory/product-base": "^4.3.595",
36
36
  "@things-factory/setting-base": "^4.3.609",
37
37
  "@things-factory/shell": "^4.3.591",
38
- "@things-factory/transport-base": "^4.3.595",
38
+ "@things-factory/transport-base": "^4.3.631",
39
39
  "@things-factory/warehouse-base": "^4.3.626",
40
40
  "axios": "1.7.7"
41
41
  },
42
- "gitHead": "4ddcb5a24ebd10c7729dbd3bb67907872cb2cefb"
42
+ "gitHead": "12bce080f658fde05f1ae7be978928d293ae6b5e"
43
43
  }
@@ -503,148 +503,167 @@ export async function validateBulkArrivalNoticesFunction(
503
503
  SELECT * from raw_arrival_notices
504
504
  `)
505
505
 
506
- let validatedItems = await trxMgr.query(
506
+ await trxMgr.query(
507
507
  `
508
- WITH foo AS (
509
- SELECT
510
- an.name AS gan_name,
511
- an.ref_no AS gan_ref_no,
512
- raw.ref_no,
513
- raw.ref_no_2,
514
- raw.ref_no_3,
515
- raw.eta_date,
516
- raw.truck_no,
517
- raw.own_transport,
518
- raw.container,
519
- raw.container_no,
520
- raw.container_size,
521
- raw.import_cargo,
522
- raw.loose_item,
523
- pr.id AS product_id,
524
- pd.id AS product_detail_id,
525
- raw.sku AS sku,
526
- CASE WHEN pr.description NOT IN (NULL, '', '-') THEN CONCAT(pr.name, '(', pr.description, ')') ELSE pr.name END AS product_info,
527
- raw.batch_id,
528
- raw.batch_id_ref,
529
- pd.packing_type,
530
- pd.packing_size,
531
- pd.cost_price,
532
- sum(raw.pack_qty) AS pack_qty,
533
- raw.pallet_id,
534
- sum(pd.uom_value) AS uom_value,
535
- pd.uom,
536
- sum(raw.pallet_qty) AS pallet_qty,
537
- CASE WHEN raw.unit_price = '' THEN pd.cost_price::varchar ELSE raw.unit_price::varchar END AS unit_price,
538
- raw.manufacture_date
539
- FROM
540
- raw_arrival_notices raw
541
- LEFT JOIN temp_gan an ON raw.ref_no = an.ref_no
542
- AND raw.ref_no_2 = an.ref_no_2
543
- AND raw.ref_no_3 = an.ref_no_3
544
- AND raw.eta_date = an.eta_date
545
- AND raw.truck_no = an.truck_no
546
- AND raw.own_transport = an.own_transport
547
- AND raw.container = an.container
548
- AND raw.container_no = an.container_no
549
- AND raw.container_size = an.container_size
550
- AND raw.loose_item = an.loose_item
551
- AND raw.import_cargo = an.import_cargo
552
- LEFT JOIN products pr ON LOWER(pr.sku) = LOWER(raw.sku)
553
- LEFT JOIN product_details pd ON pr.id = pd.product_id
554
- AND CASE WHEN raw.packing_type NOTNULL AND raw.packing_size NOTNULL AND raw.uom NOTNULL
555
- THEN pd.packing_type = raw.packing_type AND pd.packing_size = raw.packing_size AND pd.uom = raw.uom
556
- WHEN raw.packing_type NOTNULL AND raw.packing_size NOTNULL AND raw.uom ISNULL
557
- THEN pd.packing_type = raw.packing_type AND pd.packing_size = raw.packing_size AND pd.is_default IS TRUE
558
- WHEN raw.packing_type ISNULL AND raw.packing_size ISNULL AND raw.uom NOTNULL
559
- THEN pd.uom = raw.uom AND pd.is_default IS TRUE ELSE pd.is_default IS TRUE
560
- END
561
- WHERE pr.bizplace_id = $1
562
- GROUP BY raw.ref_no, raw.ref_no_2, raw.ref_no_3, raw.eta_date, raw.truck_no, raw.own_transport, raw.container, raw.container_no, raw.container_size, raw.import_cargo, raw.loose_item,
563
- pr.id, pd.id, raw.sku, pr.name, pr.description, raw.batch_id, raw.batch_id_ref, raw.packing_type, raw.pallet_id, raw.packing_size, raw.uom, raw.unit_price, raw.manufacture_date, an.ref_no, an.name
564
- ), foo_duplicates AS (
565
- SELECT
566
- pallet_id,
567
- COUNT(*) AS duplicate_count
568
- FROM foo
569
- GROUP BY pallet_id
570
- )
571
- SELECT foo.*,
572
- CONCAT(COALESCE(ROUND(foo.uom_value:: numeric, 2), 0) * COALESCE(foo.pack_qty, 0), ' ', foo.uom) AS total_uom_value,
573
- TRIM(
574
- BOTH ',' FROM (
575
- CASE
576
- WHEN foo.gan_ref_no IS NOT NULL THEN 'order duplicated with ' || foo.gan_name || ','
577
- ELSE ''
578
- END ||
579
- CASE
580
- WHEN (SUBSTRING(foo.manufacture_date,5,1) = '-' AND SUBSTRING(foo.manufacture_date,8,1) = '-') OR foo.manufacture_date IS NULL THEN
581
- CASE
582
- WHEN TO_DATE(foo.manufacture_date, 'YYYY-MM-DD') > current_date THEN 'invalid manufacture date,'
583
- ELSE ''
584
- END
585
- ELSE 'invalid manufacture date format. please use dd/mm/yyyy,'
586
- END ||
587
- CASE
588
- WHEN foo.product_id IS NULL OR foo.product_detail_id IS NULL OR foo.sku IS NULL THEN 'product not found,'
589
- ELSE ''
590
- END ||
591
- CASE
592
- WHEN foo.pack_qty IS NULL OR foo.pack_qty <= 0 THEN 'invalid pack qty,'
593
- ELSE ''
594
- END ||
595
- CASE
596
- WHEN foo.batch_id IS NULL THEN 'batch no. is required,'
597
- ELSE ''
598
- END ||
599
- CASE
600
- WHEN foo.ref_no IS NULL OR foo.ref_no = '' THEN 'ref no. is required,'
601
- ELSE ''
602
- END ||
603
- CASE
604
- WHEN foo.eta_date IS NULL THEN 'eta date is required,'
605
- ELSE ''
606
- END ||
607
- CASE
608
- WHEN NOT(SUBSTRING(foo.eta_date,5,1) = '-' AND SUBSTRING(foo.eta_date,8,1) = '-') THEN 'invalid eta date format. please use dd/mm/yyyy,'
609
- ELSE ''
610
- END ||
611
- CASE
612
- WHEN foo.unit_price IS NULL THEN 'invalid unit price (not a number),'
613
- ELSE ''
614
- END ||
615
- CASE
616
- WHEN foo.unit_price::FLOAT < 0 THEN 'invalid unit price (negative value),'
617
- ELSE ''
618
- END ||
619
- CASE
620
- WHEN (foo.container_no IS NOT NULL AND foo.container_size IS NULL) OR (foo.container_no IS NULL AND foo.container_size IS NOT NULL) THEN 'incomplete container information,'
621
- ELSE ''
622
- END ||
623
- CASE
624
- WHEN foo.pallet_qty < 0 THEN 'invalid pallet qty,'
625
- ELSE ''
626
- END ||
627
- CASE
628
- WHEN (SELECT duplicate_count FROM foo_duplicates WHERE foo_duplicates.pallet_id = foo.pallet_id) > 1 THEN 'duplicate Lot ID within current data,'
629
- ELSE ''
630
- END ||
631
- CASE
632
- WHEN EXISTS (
633
- SELECT *
634
- FROM order_products op
635
- WHERE op.domain_id = $2 AND op.pallet_id = foo.pallet_id
636
- ) THEN 'Lot ID is already in use. Please enter new Lot ID,'
637
- ELSE ''
638
- END
639
- )
640
- ) AS error_msg
641
- FROM foo
642
- ORDER BY foo.ref_no, foo.ref_no_2, foo.ref_no_3, foo.sku
508
+ CREATE TEMPORARY TABLE temp_foo AS
509
+ SELECT
510
+ an.name AS gan_name,
511
+ an.ref_no AS gan_ref_no,
512
+ raw.ref_no,
513
+ raw.ref_no_2,
514
+ raw.ref_no_3,
515
+ raw.eta_date,
516
+ raw.truck_no,
517
+ raw.own_transport,
518
+ raw.container,
519
+ raw.container_no,
520
+ raw.container_size,
521
+ raw.import_cargo,
522
+ raw.loose_item,
523
+ pr.id AS product_id,
524
+ pd.id AS product_detail_id,
525
+ raw.sku AS sku,
526
+ CASE WHEN pr.description NOT IN (NULL, '', '-') THEN CONCAT(pr.name, '(', pr.description, ')') ELSE pr.name END AS product_info,
527
+ raw.batch_id,
528
+ raw.batch_id_ref,
529
+ pd.packing_type,
530
+ pd.packing_size,
531
+ pd.cost_price,
532
+ sum(raw.pack_qty) AS pack_qty,
533
+ raw.pallet_id,
534
+ sum(pd.uom_value) AS uom_value,
535
+ pd.uom,
536
+ sum(raw.pallet_qty) AS pallet_qty,
537
+ CASE WHEN raw.unit_price = '' THEN pd.cost_price::varchar ELSE raw.unit_price::varchar END AS unit_price,
538
+ raw.manufacture_date
539
+ FROM
540
+ raw_arrival_notices raw
541
+ LEFT JOIN temp_gan an ON raw.ref_no = an.ref_no
542
+ AND raw.ref_no_2 = an.ref_no_2
543
+ AND raw.ref_no_3 = an.ref_no_3
544
+ AND raw.eta_date = an.eta_date
545
+ AND raw.truck_no = an.truck_no
546
+ AND raw.own_transport = an.own_transport
547
+ AND raw.container = an.container
548
+ AND raw.container_no = an.container_no
549
+ AND raw.container_size = an.container_size
550
+ AND raw.loose_item = an.loose_item
551
+ AND raw.import_cargo = an.import_cargo
552
+ LEFT JOIN products pr ON LOWER(pr.sku) = LOWER(raw.sku)
553
+ LEFT JOIN product_details pd ON pr.id = pd.product_id
554
+ AND CASE WHEN raw.packing_type NOTNULL AND raw.packing_size NOTNULL AND raw.uom NOTNULL
555
+ THEN pd.packing_type = raw.packing_type AND pd.packing_size = raw.packing_size AND pd.uom = raw.uom
556
+ WHEN raw.packing_type NOTNULL AND raw.packing_size NOTNULL AND raw.uom ISNULL
557
+ THEN pd.packing_type = raw.packing_type AND pd.packing_size = raw.packing_size AND pd.is_default IS TRUE
558
+ WHEN raw.packing_type ISNULL AND raw.packing_size ISNULL AND raw.uom NOTNULL
559
+ THEN pd.uom = raw.uom AND pd.is_default IS TRUE ELSE pd.is_default IS TRUE
560
+ END
561
+ WHERE pr.bizplace_id = $1
562
+ GROUP BY raw.ref_no, raw.ref_no_2, raw.ref_no_3, raw.eta_date, raw.truck_no, raw.own_transport, raw.container, raw.container_no, raw.container_size, raw.import_cargo, raw.loose_item,
563
+ pr.id, pd.id, raw.sku, pr.name, pr.description, raw.batch_id, raw.batch_id_ref, raw.packing_type, raw.pallet_id, raw.packing_size, raw.uom, raw.unit_price, raw.manufacture_date, an.ref_no, an.name;
643
564
  `,
644
- [companyBizplace.id,domain.id]
565
+ [companyBizplace.id]
566
+ )
567
+
568
+ await trxMgr.query(
569
+ `
570
+ CREATE TEMPORARY TABLE temp_foo_duplicates AS
571
+ SELECT
572
+ pallet_id,
573
+ COUNT(*) AS duplicate_count
574
+ FROM temp_foo
575
+ GROUP BY pallet_id;`
576
+ )
577
+
578
+ await trxMgr.query(
579
+ `
580
+ CREATE TEMPORARY TABLE temp_used_pallet_ids AS
581
+ SELECT DISTINCT pallet_id
582
+ FROM order_products
583
+ WHERE domain_id = $1;
584
+ `,
585
+ [domain.id]
586
+ )
587
+
588
+ let validatedItems = await trxMgr.query(
589
+ `
590
+ SELECT
591
+ f.*,
592
+ CONCAT(COALESCE(ROUND(f.uom_value::numeric, 2), 0) * COALESCE(f.pack_qty, 0), ' ', f.uom) AS total_uom_value,
593
+ TRIM(
594
+ BOTH ',' FROM (
595
+ CASE
596
+ WHEN f.gan_ref_no IS NOT NULL THEN 'order duplicated with ' || f.gan_name || ','
597
+ ELSE ''
598
+ END ||
599
+ CASE
600
+ WHEN (SUBSTRING(f.manufacture_date,5,1) = '-' AND SUBSTRING(f.manufacture_date,8,1) = '-') OR f.manufacture_date IS NULL THEN
601
+ CASE
602
+ WHEN TO_DATE(f.manufacture_date, 'YYYY-MM-DD') > current_date THEN 'invalid manufacture date,'
603
+ ELSE ''
604
+ END
605
+ ELSE 'invalid manufacture date format. please use dd/mm/yyyy,'
606
+ END ||
607
+ CASE
608
+ WHEN f.product_id IS NULL OR f.product_detail_id IS NULL OR f.sku IS NULL THEN 'product not found,'
609
+ ELSE ''
610
+ END ||
611
+ CASE
612
+ WHEN f.pack_qty IS NULL OR f.pack_qty <= 0 THEN 'invalid pack qty,'
613
+ ELSE ''
614
+ END ||
615
+ CASE
616
+ WHEN f.batch_id IS NULL THEN 'batch no. is required,'
617
+ ELSE ''
618
+ END ||
619
+ CASE
620
+ WHEN f.ref_no IS NULL OR f.ref_no = '' THEN 'ref no. is required,'
621
+ ELSE ''
622
+ END ||
623
+ CASE
624
+ WHEN f.eta_date IS NULL THEN 'eta date is required,'
625
+ ELSE ''
626
+ END ||
627
+ CASE
628
+ WHEN NOT(SUBSTRING(f.eta_date,5,1) = '-' AND SUBSTRING(f.eta_date,8,1) = '-') THEN 'invalid eta date format. please use dd/mm/yyyy,'
629
+ ELSE ''
630
+ END ||
631
+ CASE
632
+ WHEN f.unit_price IS NULL THEN 'invalid unit price (not a number),'
633
+ ELSE ''
634
+ END ||
635
+ CASE
636
+ WHEN f.unit_price::FLOAT < 0 THEN 'invalid unit price (negative value),'
637
+ ELSE ''
638
+ END ||
639
+ CASE
640
+ WHEN (f.container_no IS NOT NULL AND f.container_size IS NULL) OR (f.container_no IS NULL AND f.container_size IS NOT NULL) THEN 'incomplete container information,'
641
+ ELSE ''
642
+ END ||
643
+ CASE
644
+ WHEN f.pallet_qty < 0 THEN 'invalid pallet qty,'
645
+ ELSE ''
646
+ END ||
647
+ CASE
648
+ WHEN d.duplicate_count > 1 THEN 'duplicate Lot ID within current data,'
649
+ ELSE ''
650
+ END ||
651
+ CASE
652
+ WHEN EXISTS (
653
+ SELECT 1 FROM temp_used_pallet_ids up WHERE up.pallet_id = f.pallet_id
654
+ ) THEN 'Lot ID is already in use. Please enter new Lot ID,'
655
+ ELSE ''
656
+ END
657
+ )
658
+ ) AS error_msg
659
+ FROM
660
+ temp_foo f
661
+ LEFT JOIN temp_foo_duplicates d ON f.pallet_id = d.pallet_id
662
+ ORDER BY f.ref_no, f.ref_no_2, f.ref_no_3, f.sku;
663
+ `
645
664
  )
646
665
 
647
- await trxMgr.query('DROP TABLE raw_arrival_notices, temp_gan')
666
+ await trxMgr.query('DROP TABLE raw_arrival_notices, temp_gan, temp_foo, temp_foo_duplicates, temp_used_pallet_ids')
648
667
 
649
668
  return validatedItems.map(item => {
650
669
  return {