@things-factory/operato-mms 4.1.37 → 4.1.38

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.
@@ -58,25 +58,8 @@ async function warehouseMarketplaceProduct(params, domain, user, tx) {
58
58
  )
59
59
  `);
60
60
  await tx.query(`
61
- CREATE TEMP TABLE "temp_inventory" ON COMMIT DROP AS (
62
- select "fc"."id" as "fulfillment_id", "fc"."name" as "fulfillment_name",
63
- "i2"."product_id", SUM(greatest(coalesce("locked_qty",0),0) + greatest(coalesce(oi.release_qty,0),0)) as "inventory_locked_qty", sum(coalesce("qty",0)) as "inventory_qty",
64
- "i2"."domain_id"
65
- from inventories "i2"
66
- inner join warehouses "w" on "w"."id" = "i2"."warehouse_id"
67
- inner join domains "d2" on "d2"."id" = "w"."domain_id" and "d2"."ext_type" ='warehouse'
68
- inner join fulfillment_centers "fc" ON "fc"."center_id" = "d2"."subdomain"
69
- inner join (
70
- select "Product"."product_id" from (
71
- select case when "Product"."type" = 'PRODUCT' then "Product"."product_id" else "pbs"."product_id" end as "product_id"
72
- from temp_products "Product"
73
- left join product_bundles "pb" on "pb"."id" = "Product"."product_id"
74
- left join product_bundle_settings "pbs" on "pbs"."product_bundle_id" = "pb"."id"
75
- ) "Product"
76
- group by "Product"."product_id"
77
- ) "Product" on "Product"."product_id" = "i2"."product_id"
78
- left join (
79
- SELECT
61
+ CREATE TEMP TABLE "temp_order_inventories" ON COMMIT DROP AS (
62
+ SELECT
80
63
  SUM(oi.release_qty) AS release_qty, SUM(oi.release_uom_value) AS release_uom_value, oi.batch_id, oi.batch_id_ref,
81
64
  oi.product_id, p.product_name, oi.packing_type, oi.packing_size, oi.uom
82
65
  FROM
@@ -94,10 +77,35 @@ async function warehouseMarketplaceProduct(params, domain, user, tx) {
94
77
  GROUP BY
95
78
  oi.batch_id, oi.batch_id_ref, oi.product_id, oi.packing_type,
96
79
  oi.packing_size, oi.uom, p.product_name
97
- )"oi" ON "i2".batch_id = "oi".batch_id AND "Product"."product_id" = "oi".product_id AND "i2".packing_type = "oi".packing_type AND "i2".packing_size = oi.packing_size AND "i2".uom = oi.uom
98
- where "fc"."domain_id" = $1
99
- and "i2"."status" = 'STORED'
100
- group by "i2"."domain_id", "fc"."id", "fc"."name", "i2"."product_id"
80
+ );
81
+ `, [domain.id]);
82
+ await tx.query(`
83
+ CREATE TEMP TABLE "temp_inventory" ON COMMIT DROP AS (
84
+ select "i2".*, coalesce("oi".release_qty,0) + coalesce("i2".locked_qty,0) as "inventory_locked_qty" from (
85
+ select "fc"."id" as "fulfillment_id", "fc"."name" as "fulfillment_name",
86
+ "i2"."product_id", sum(coalesce("locked_qty",0)) as "locked_qty", sum(coalesce("qty",0)) as "inventory_qty",
87
+ "i2"."domain_id", "i2"."packing_type", "i2"."packing_size", "i2"."uom"
88
+ from inventories "i2"
89
+ inner join warehouses "w" on "w"."id" = "i2"."warehouse_id"
90
+ inner join domains "d2" on "d2"."id" = "w"."domain_id" and "d2"."ext_type" ='warehouse'
91
+ inner join fulfillment_centers "fc" ON "fc"."center_id" = "d2"."subdomain"
92
+ inner join (
93
+ select "Product"."product_id" from (
94
+ select case when "Product"."type" = 'PRODUCT' then "Product"."product_id" else "pbs"."product_id" end as "product_id"
95
+ from temp_products "Product"
96
+ left join product_bundles "pb" on "pb"."id" = "Product"."product_id"
97
+ left join product_bundle_settings "pbs" on "pbs"."product_bundle_id" = "pb"."id"
98
+ ) "Product"
99
+ group by "Product"."product_id"
100
+ ) "Product" on "Product"."product_id" = "i2"."product_id"
101
+ where "fc"."domain_id" = $1
102
+ and "i2"."status" = 'STORED'
103
+ group by "i2"."domain_id", "fc"."id", "fc"."name", "i2"."product_id", "i2"."packing_type", "i2"."packing_size", "i2"."uom"
104
+ ) as "i2"
105
+ left join temp_order_inventories "oi" on "i2"."product_id" = "oi"."product_id"
106
+ AND "i2"."packing_type" = "oi"."packing_type"
107
+ AND "i2"."packing_size" = "oi"."packing_size"
108
+ AND "i2"."uom" = "oi"."uom"
101
109
  )
102
110
  `, [domain.id]);
103
111
  await tx.query(`
@@ -127,7 +135,7 @@ async function warehouseMarketplaceProduct(params, domain, user, tx) {
127
135
  max("bundledInv"."inventory_locked_qty") as "inventory_locked_qty", min("bundledInv"."inventory_qty") as "inventory_qty" from (
128
136
  select "Product"."product_id", fc.domain_id, "fc"."id" as "fulfillment_id", "fc"."name" as "fulfillment_name",
129
137
  "pbs"."bundle_qty",
130
- case when "pbs"."bundle_qty" <= 0 then 0 else ceil(greatest("i2"."inventory_locked_qty",0)/ "pbs"."bundle_qty") end AS "inventory_locked_qty",
138
+ case when "pbs"."bundle_qty" <= 0 then 0 else floor(greatest("i2"."inventory_qty", 0)/ "pbs"."bundle_qty")- floor((greatest("i2"."inventory_qty", 0) - greatest("i2"."inventory_locked_qty",0)) / "pbs"."bundle_qty") end AS "inventory_locked_qty",
131
139
  case when "pbs"."bundle_qty" <= 0 then 0 else floor(greatest("i2"."inventory_qty", 0)/ "pbs"."bundle_qty") end AS "inventory_qty"
132
140
  from temp_products "Product"
133
141
  inner join product_bundle_settings pbs ON pbs.product_bundle_id = "Product"."product_id"
@@ -1 +1 @@
1
- {"version":3,"file":"warehouse-marketplace-products.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/interface-with-hub/warehouse-marketplace-products.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"warehouse-marketplace-products.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/interface-with-hub/warehouse-marketplace-products.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": "4.1.37",
3
+ "version": "4.1.38",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "client/index.js",
6
6
  "things-factory": true,
@@ -79,12 +79,12 @@
79
79
  "@things-factory/integration-fulfillment": "^4.1.28",
80
80
  "@things-factory/integration-lmd": "^4.1.28",
81
81
  "@things-factory/lite-menu": "^4.1.28",
82
- "@things-factory/marketplace-base": "^4.1.37",
82
+ "@things-factory/marketplace-base": "^4.1.38",
83
83
  "@things-factory/more-ui": "^4.1.28",
84
84
  "@things-factory/notification": "^4.1.28",
85
85
  "@things-factory/oauth2-client": "^4.1.28",
86
86
  "@things-factory/pdf": "^4.1.28",
87
- "@things-factory/product-base": "^4.1.37",
87
+ "@things-factory/product-base": "^4.1.38",
88
88
  "@things-factory/resource-ui": "^4.1.28",
89
89
  "@things-factory/scene-data-transform": "^4.1.28",
90
90
  "@things-factory/scene-excel": "^4.1.28",
@@ -99,11 +99,11 @@
99
99
  "@things-factory/scene-visualizer": "^4.1.28",
100
100
  "@things-factory/setting-ui": "^4.1.28",
101
101
  "@things-factory/system-ui": "^4.1.28",
102
- "@things-factory/warehouse-base": "^4.1.37"
102
+ "@things-factory/warehouse-base": "^4.1.38"
103
103
  },
104
104
  "devDependencies": {
105
105
  "@things-factory/builder": "^4.1.28",
106
106
  "@types/node-fetch": "^2.5.7"
107
107
  },
108
- "gitHead": "cc34a73ab56ed192e1f2babe6954a817c473a46c"
108
+ "gitHead": "eb948e4d5022d89a2950aeb71f82bbf8d5607d74"
109
109
  }
@@ -67,25 +67,8 @@ export async function warehouseMarketplaceProduct(params: ListParam, domain: Dom
67
67
 
68
68
  await tx.query(
69
69
  `
70
- CREATE TEMP TABLE "temp_inventory" ON COMMIT DROP AS (
71
- select "fc"."id" as "fulfillment_id", "fc"."name" as "fulfillment_name",
72
- "i2"."product_id", SUM(greatest(coalesce("locked_qty",0),0) + greatest(coalesce(oi.release_qty,0),0)) as "inventory_locked_qty", sum(coalesce("qty",0)) as "inventory_qty",
73
- "i2"."domain_id"
74
- from inventories "i2"
75
- inner join warehouses "w" on "w"."id" = "i2"."warehouse_id"
76
- inner join domains "d2" on "d2"."id" = "w"."domain_id" and "d2"."ext_type" ='warehouse'
77
- inner join fulfillment_centers "fc" ON "fc"."center_id" = "d2"."subdomain"
78
- inner join (
79
- select "Product"."product_id" from (
80
- select case when "Product"."type" = 'PRODUCT' then "Product"."product_id" else "pbs"."product_id" end as "product_id"
81
- from temp_products "Product"
82
- left join product_bundles "pb" on "pb"."id" = "Product"."product_id"
83
- left join product_bundle_settings "pbs" on "pbs"."product_bundle_id" = "pb"."id"
84
- ) "Product"
85
- group by "Product"."product_id"
86
- ) "Product" on "Product"."product_id" = "i2"."product_id"
87
- left join (
88
- SELECT
70
+ CREATE TEMP TABLE "temp_order_inventories" ON COMMIT DROP AS (
71
+ SELECT
89
72
  SUM(oi.release_qty) AS release_qty, SUM(oi.release_uom_value) AS release_uom_value, oi.batch_id, oi.batch_id_ref,
90
73
  oi.product_id, p.product_name, oi.packing_type, oi.packing_size, oi.uom
91
74
  FROM
@@ -103,10 +86,39 @@ export async function warehouseMarketplaceProduct(params: ListParam, domain: Dom
103
86
  GROUP BY
104
87
  oi.batch_id, oi.batch_id_ref, oi.product_id, oi.packing_type,
105
88
  oi.packing_size, oi.uom, p.product_name
106
- )"oi" ON "i2".batch_id = "oi".batch_id AND "Product"."product_id" = "oi".product_id AND "i2".packing_type = "oi".packing_type AND "i2".packing_size = oi.packing_size AND "i2".uom = oi.uom
107
- where "fc"."domain_id" = $1
108
- and "i2"."status" = 'STORED'
109
- group by "i2"."domain_id", "fc"."id", "fc"."name", "i2"."product_id"
89
+ );
90
+ `,
91
+ [domain.id]
92
+ )
93
+
94
+ await tx.query(
95
+ `
96
+ CREATE TEMP TABLE "temp_inventory" ON COMMIT DROP AS (
97
+ select "i2".*, coalesce("oi".release_qty,0) + coalesce("i2".locked_qty,0) as "inventory_locked_qty" from (
98
+ select "fc"."id" as "fulfillment_id", "fc"."name" as "fulfillment_name",
99
+ "i2"."product_id", sum(coalesce("locked_qty",0)) as "locked_qty", sum(coalesce("qty",0)) as "inventory_qty",
100
+ "i2"."domain_id", "i2"."packing_type", "i2"."packing_size", "i2"."uom"
101
+ from inventories "i2"
102
+ inner join warehouses "w" on "w"."id" = "i2"."warehouse_id"
103
+ inner join domains "d2" on "d2"."id" = "w"."domain_id" and "d2"."ext_type" ='warehouse'
104
+ inner join fulfillment_centers "fc" ON "fc"."center_id" = "d2"."subdomain"
105
+ inner join (
106
+ select "Product"."product_id" from (
107
+ select case when "Product"."type" = 'PRODUCT' then "Product"."product_id" else "pbs"."product_id" end as "product_id"
108
+ from temp_products "Product"
109
+ left join product_bundles "pb" on "pb"."id" = "Product"."product_id"
110
+ left join product_bundle_settings "pbs" on "pbs"."product_bundle_id" = "pb"."id"
111
+ ) "Product"
112
+ group by "Product"."product_id"
113
+ ) "Product" on "Product"."product_id" = "i2"."product_id"
114
+ where "fc"."domain_id" = $1
115
+ and "i2"."status" = 'STORED'
116
+ group by "i2"."domain_id", "fc"."id", "fc"."name", "i2"."product_id", "i2"."packing_type", "i2"."packing_size", "i2"."uom"
117
+ ) as "i2"
118
+ left join temp_order_inventories "oi" on "i2"."product_id" = "oi"."product_id"
119
+ AND "i2"."packing_type" = "oi"."packing_type"
120
+ AND "i2"."packing_size" = "oi"."packing_size"
121
+ AND "i2"."uom" = "oi"."uom"
110
122
  )
111
123
  `,
112
124
  [domain.id]
@@ -141,7 +153,7 @@ export async function warehouseMarketplaceProduct(params: ListParam, domain: Dom
141
153
  max("bundledInv"."inventory_locked_qty") as "inventory_locked_qty", min("bundledInv"."inventory_qty") as "inventory_qty" from (
142
154
  select "Product"."product_id", fc.domain_id, "fc"."id" as "fulfillment_id", "fc"."name" as "fulfillment_name",
143
155
  "pbs"."bundle_qty",
144
- case when "pbs"."bundle_qty" <= 0 then 0 else ceil(greatest("i2"."inventory_locked_qty",0)/ "pbs"."bundle_qty") end AS "inventory_locked_qty",
156
+ case when "pbs"."bundle_qty" <= 0 then 0 else floor(greatest("i2"."inventory_qty", 0)/ "pbs"."bundle_qty")- floor((greatest("i2"."inventory_qty", 0) - greatest("i2"."inventory_locked_qty",0)) / "pbs"."bundle_qty") end AS "inventory_locked_qty",
145
157
  case when "pbs"."bundle_qty" <= 0 then 0 else floor(greatest("i2"."inventory_qty", 0)/ "pbs"."bundle_qty") end AS "inventory_qty"
146
158
  from temp_products "Product"
147
159
  inner join product_bundle_settings pbs ON pbs.product_bundle_id = "Product"."product_id"