@things-factory/worksheet-base 4.3.693 → 4.3.694

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.
@@ -11,6 +11,7 @@ const entities_1 = require("../../entities");
11
11
  const integration_base_1 = require("@things-factory/integration-base");
12
12
  const utils_1 = require("../../utils");
13
13
  const vas_worksheet_controller_1 = require("../vas/vas-worksheet-controller");
14
+ const inventory_util_1 = require("../../utils/inventory-util");
14
15
  class PutawayWorksheetController extends vas_worksheet_controller_1.VasWorksheetController {
15
16
  async generatePutawayWorksheet(arrivalNoticeId, inventories) {
16
17
  let arrivalNotice = await this.findRefOrder(sales_base_1.ArrivalNotice, { domain: this.domain, id: arrivalNoticeId }, ['bizplace']);
@@ -82,6 +83,85 @@ class PutawayWorksheetController extends vas_worksheet_controller_1.VasWorksheet
82
83
  }
83
84
  return Object.assign(Object.assign({}, worksheet), { worksheetDetails });
84
85
  }
86
+ async validateLocationLevel3(inventory, location) {
87
+ var _a, _b, _c, _d, _e;
88
+ // Only enforce for level 3
89
+ const levelSetting = await this.trxMgr.getRepository(setting_base_1.Setting).findOne({
90
+ where: { domain: this.domain, name: 'location-recommendation-level' }
91
+ });
92
+ if ((levelSetting === null || levelSetting === void 0 ? void 0 : levelSetting.value) !== 'level 3')
93
+ return;
94
+ // Expiry enforcement: quarantine only
95
+ const expiring = await (0, inventory_util_1.isInventoryExpiring)(inventory);
96
+ if (expiring) {
97
+ if (location.type !== warehouse_base_1.LOCATION_TYPE.QUARANTINE) {
98
+ throw new Error('Expiring inventory must be stored in QUARANTINE location');
99
+ }
100
+ return;
101
+ }
102
+ // Allowed types (ranking is used for recommendation; validation enforces allowed set)
103
+ const allowedTypes = [warehouse_base_1.LOCATION_TYPE.STORAGE, warehouse_base_1.LOCATION_TYPE.SHELF, warehouse_base_1.LOCATION_TYPE.FLOOR];
104
+ if (!allowedTypes.includes(location.type)) {
105
+ throw new Error('Scanned location type is not allowed for putaway (allowed: STORAGE, SHELF, FLOOR)');
106
+ }
107
+ // Stacking limits
108
+ const stackingSetting = await this.trxMgr.getRepository(setting_base_1.Setting).findOne({
109
+ where: { domain: this.domain, name: 'stacking-option-limit' }
110
+ });
111
+ let minLimit = 1;
112
+ let maxLimit = 1;
113
+ if (stackingSetting === null || stackingSetting === void 0 ? void 0 : stackingSetting.value) {
114
+ try {
115
+ const parsed = JSON.parse(stackingSetting.value);
116
+ minLimit = Number((_b = (_a = parsed.Min) !== null && _a !== void 0 ? _a : parsed.min) !== null && _b !== void 0 ? _b : minLimit) || minLimit;
117
+ maxLimit = Number((_d = (_c = parsed.Max) !== null && _c !== void 0 ? _c : parsed.max) !== null && _d !== void 0 ? _d : maxLimit) || maxLimit;
118
+ }
119
+ catch (e) { }
120
+ }
121
+ // Ensure product is loaded to check allowStackingOption
122
+ if (!inventory.product) {
123
+ inventory = await this.trxMgr.getRepository(warehouse_base_1.Inventory).findOne({
124
+ where: { id: inventory.id },
125
+ relations: ['product']
126
+ });
127
+ }
128
+ const stackingLimit = ((_e = inventory.product) === null || _e === void 0 ? void 0 : _e.allowStackingOption) ? maxLimit : minLimit;
129
+ // Count inventories in the scanned location
130
+ const totalCount = await this.trxMgr
131
+ .getRepository(warehouse_base_1.Inventory)
132
+ .createQueryBuilder('inv')
133
+ .leftJoin('inv.location', 'loc')
134
+ .where('loc.id = :locId', { locId: location.id })
135
+ .andWhere('inv.status = :status', { status: warehouse_base_1.INVENTORY_STATUS.STORED })
136
+ .getCount();
137
+ if (totalCount >= stackingLimit) {
138
+ throw new Error('Scanned location reached stacking limit for this product');
139
+ }
140
+ if (totalCount > 0) {
141
+ // Homogeneity check: ensure all inventories match product, batch, expiration
142
+ const params = { pid: inventory.product.id };
143
+ const batchCond = inventory.batchId ? 'inv.batchId = :batchId' : 'inv.batchId IS NULL';
144
+ if (inventory.batchId)
145
+ params.batchId = inventory.batchId;
146
+ const expCond = inventory.expirationDate ? 'inv.expirationDate = :exp' : 'inv.expirationDate IS NULL';
147
+ if (inventory.expirationDate)
148
+ params.exp = inventory.expirationDate;
149
+ const matchCount = await this.trxMgr
150
+ .getRepository(warehouse_base_1.Inventory)
151
+ .createQueryBuilder('inv')
152
+ .leftJoin('inv.product', 'product')
153
+ .leftJoin('inv.location', 'loc')
154
+ .where('loc.id = :locId', { locId: location.id })
155
+ .andWhere('inv.status = :status', { status: warehouse_base_1.INVENTORY_STATUS.STORED })
156
+ .andWhere('product.id = :pid', params)
157
+ .andWhere(batchCond, params)
158
+ .andWhere(expCond, params)
159
+ .getCount();
160
+ if (matchCount !== totalCount) {
161
+ throw new Error('Scanned location contains different SKU/batch/expiry; not allowed for level 3');
162
+ }
163
+ }
164
+ }
85
165
  async activatePutaway(worksheetNo, putawayWorksheetDetails) {
86
166
  let worksheet = await this.findActivatableWorksheet(worksheetNo, constants_1.WORKSHEET_TYPE.PUTAWAY, [
87
167
  'arrivalNotice',
@@ -207,6 +287,7 @@ class PutawayWorksheetController extends vas_worksheet_controller_1.VasWorksheet
207
287
  });
208
288
  if (!location)
209
289
  throw new Error(this.ERROR_MSG.FIND.NO_RESULT(locationName));
290
+ await this.validateLocationLevel3(inventory, location);
210
291
  const warehouse = location.warehouse;
211
292
  const zone = location.zone;
212
293
  inventory.location = location;
@@ -254,6 +335,7 @@ class PutawayWorksheetController extends vas_worksheet_controller_1.VasWorksheet
254
335
  });
255
336
  if (!location)
256
337
  throw new Error(this.ERROR_MSG.FIND.NO_RESULT(locationName));
338
+ await this.validateLocationLevel3(inventory, location);
257
339
  const warehouse = location.warehouse;
258
340
  const zone = warehouse.zone;
259
341
  inventory.location = location;
@@ -297,6 +379,7 @@ class PutawayWorksheetController extends vas_worksheet_controller_1.VasWorksheet
297
379
  });
298
380
  if (!location)
299
381
  throw new Error(this.ERROR_MSG.FIND.NO_RESULT(locationName));
382
+ await this.validateLocationLevel3(inventory, location);
300
383
  const warehouse = location.warehouse;
301
384
  const zone = warehouse.zone;
302
385
  inventory.location = location;
@@ -1 +1 @@
1
- {"version":3,"file":"putaway-worksheet-controller.js","sourceRoot":"","sources":["../../../server/controllers/inbound/putaway-worksheet-controller.ts"],"names":[],"mappings":";;;AAAA,qCAAsE;AACtE,+DAAsD;AACtD,6CAA4C;AAG5C,2DASmC;AACnC,mEAQuC;AAEvC,+CAAkE;AAClE,6CAA2D;AAC3D,uEAAoF;AACpF,uCAAkD;AAClD,8EAAwE;AAExE,MAAa,0BAA2B,SAAQ,iDAAsB;IACpE,KAAK,CAAC,wBAAwB,CAAC,eAAuB,EAAE,WAAwB;QAC9E,IAAI,aAAa,GAAkB,MAAM,IAAI,CAAC,YAAY,CACxD,0BAAa,EACb,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,eAAe,EAAE,EAC5C,CAAC,UAAU,CAAC,CACb,CAAA;QAED,MAAM,QAAQ,GAAa,aAAa,CAAC,QAAQ,CAAA;QACjD,MAAM,kBAAkB,GAAc,MAAM,IAAI,CAAC,uBAAuB,CAAC,aAAa,EAAE,0BAAc,CAAC,SAAS,EAAE;YAChH,gBAAgB;SACjB,CAAC,CAAA;QACF,MAAM,cAAc,GAAa,kBAAkB,CAAC,cAAc,CAAA;QAElE,mDAAmD;QACnD,IAAI,SAAoB,CAAA;QACxB,IAAI;YACF,SAAS,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,aAAa,EAAE,0BAAc,CAAC,OAAO,CAAC,CAAA;SACtF;QAAC,OAAO,CAAC,EAAE,GAAE;QAEd,IAAI,QAAQ,GAAW,iCAAoB,CAAC,QAAQ,CAAA,CAAC,kDAAkD;QACvG,IAAI,SAAS,GAAW,4BAAgB,CAAC,WAAW,CAAA,CAAC,6CAA6C;QAClG,IAAI,CAAC,SAAS,EAAE;YACd,kDAAkD;YAClD,SAAS,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,0BAAc,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,CAAC,CAAA;SAClG;aAAM;YACL,4EAA4E;YAC5E,0FAA0F;YAC1F,uBAAuB;YACvB,QAAQ,GAAG,iCAAoB,CAAC,YAAY,CAAA,CAAC,gCAAgC;YAC7E,SAAS,GAAG,4BAAgB,CAAC,SAAS,CAAA,CAAC,6BAA6B;SACrE;QAED,2EAA2E;QAC3E,oHAAoH;QACpH,IAAI;QAEJ,IAAI,gBAAgB,GAAsB,EAAE,CAAA;QAC5C,KAAK,IAAI,SAAS,IAAI,WAAW,EAAE;YACjC,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM;iBAC1B,aAAa,CAAC,0BAAS,CAAC;iBACxB,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,eAAe,EAAE,SAAS,CAAC,EAAE,CAAC,CAAA;YAC/F,SAAS,CAAC,MAAM,GAAG,iCAAgB,CAAC,YAAY,CAAA;YAChD,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;YAE7B,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,0BAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YAEtE,2CAA2C;YAC3C,IAAI,eAAe,GAAmB,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,2BAAc,CAAC,CAAC,OAAO,CAAC;gBAC5F,KAAK,EAAE,EAAE,SAAS,EAAE;aACrB,CAAC,CAAA;YAEF,gDAAgD;YAChD,IAAI,CAAC,eAAe,EAAE;gBACpB,eAAe,GAAG,IAAI,2BAAc,EAAE,CAAA;gBACtC,eAAe,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;gBACpC,eAAe,CAAC,QAAQ,GAAG,QAAQ,CAAA;gBACnC,eAAe,CAAC,IAAI,GAAG,6BAAgB,CAAC,cAAc,EAAE,CAAA;gBACxD,eAAe,CAAC,MAAM,GAAG,QAAQ,CAAA;gBACjC,eAAe,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAA;gBAC3C,eAAe,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,CAAA;gBACjD,eAAe,CAAC,WAAW,GAAG,SAAS,CAAC,WAAW,CAAA;gBACnD,eAAe,CAAC,aAAa,GAAG,SAAS,CAAC,GAAG,CAAA;gBAC7C,eAAe,CAAC,kBAAkB,GAAG,SAAS,CAAC,QAAQ,CAAA;gBACvD,eAAe,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG,CAAA;gBACnC,eAAe,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAA;gBAC3C,eAAe,CAAC,aAAa,GAAG,SAAS,CAAC,aAAa,CAAA;gBACvD,eAAe,CAAC,UAAU,GAAG,SAAS,CAAC,OAAO,CAAA;gBAC9C,eAAe,CAAC,UAAU,GAAG,SAAS,CAAC,SAAS,CAAA;gBAChD,eAAe,CAAC,IAAI,GAAG,wBAAW,CAAC,cAAc,CAAA;gBACjD,eAAe,CAAC,aAAa,GAAG,aAAa,CAAA;gBAC7C,eAAe,CAAC,SAAS,GAAG,SAAS,CAAA;gBACrC,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;gBACnC,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;gBACnC,eAAe,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,2BAAc,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;aACxF;YAED,MAAM,mBAAmB,GAAsB,MAAM,IAAI,CAAC,sBAAsB,CAC9E,SAAS,EACT,0BAAc,CAAC,OAAO,EACtB,CAAC,eAAe,CAAC,EACjB,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,cAAc,EAAE,CACpD,CAAA;YAED,gBAAgB,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,CAAA;SAC9C;QAED,uCACK,SAAS,KACZ,gBAAgB,IACjB;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,WAAmB,EAAE,uBAAmD;QAC5F,IAAI,SAAS,GAAc,MAAM,IAAI,CAAC,wBAAwB,CAAC,WAAW,EAAE,0BAAc,CAAC,OAAO,EAAE;YAClG,eAAe;YACf,kBAAkB;YAClB,kCAAkC;SACnC,CAAC,CAAA;QAEF,IAAI,aAAa,GAAkB,SAAS,CAAC,aAAa,CAAA;QAC1D,MAAM,iBAAiB,GAAW,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,oBAAS,CAAC,CAAC,KAAK,CAAC;YACjF,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,aAAa;gBACb,IAAI,EAAE,0BAAc,CAAC,GAAG;gBACxB,MAAM,EAAE,IAAA,aAAG,EAAC,IAAA,eAAK,EAAC,4BAAgB,CAAC,IAAI,CAAC,CAAC;aAC1C;SACF,CAAC,CAAA;QACF,IAAI,iBAAiB;YAAE,OAAM;QAE7B,yGAAyG;QACzG,mEAAmE;QACnE,4CAA4C;QAC5C,+BAA+B;QAC/B,KAAK;QACL,mDAAmD;QACnD,MAAM,mBAAmB,GAAG,SAAS,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YAC/D,OAAO,GAAG,CAAC,eAAe,CAAC,EAAE,CAAA;QAC/B,CAAC,CAAC,CAAA;QACF,MAAM,IAAI,CAAC,MAAM;aACd,aAAa,CAAC,2BAAc,CAAC;aAC7B,MAAM,CAAC,EAAE,EAAE,EAAE,IAAA,YAAE,EAAC,mBAAmB,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,mCAAsB,CAAC,YAAY,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QAE/G,aAAa,CAAC,MAAM,GAAG,yBAAY,CAAC,YAAY,CAAA;QAChD,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;QACjC,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAA;QACxC,OAAO,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,SAAS,CAAC,gBAAgB,EAAE,uBAAuB,CAAC,CAAA;IAC/F,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,eAAuB;QAC3C,iGAAiG;QACjG,uDAAuD;QACvD,2DAA2D;QAC3D,IAAI,aAAa,GAAkB,MAAM,IAAI,CAAC,YAAY,CACxD,0BAAa,EACb;YACE,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,IAAA,YAAE,EAAC,CAAC,yBAAY,CAAC,YAAY,EAAE,yBAAY,CAAC,UAAU,CAAC,CAAC;SACjE,EACD,CAAC,UAAU,EAAE,QAAQ,CAAC,CACvB,CAAA;QAED,0CAA0C;QAC1C,MAAM,qBAAqB,GAAW,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,oBAAS,CAAC,CAAC,KAAK,CAAC;YACrF,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,aAAa;gBACb,IAAI,EAAE,0BAAc,CAAC,SAAS;gBAC9B,MAAM,EAAE,4BAAgB,CAAC,SAAS;aACnC;SACF,CAAC,CAAA;QACF,IAAI,qBAAqB;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;QAE5E,MAAM,gBAAgB,GAAc,MAAM,IAAI,CAAC,uBAAuB,CAAC,aAAa,EAAE,0BAAc,CAAC,OAAO,EAAE;YAC5G,gBAAgB;YAChB,kBAAkB;YAClB,kCAAkC;SACnC,CAAC,CAAA;QACF,MAAM,IAAA,4BAAoB,EAAC,IAAI,CAAC,MAAM,EAAE,gBAAgB,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QAChG,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,yBAAY,CAAC,IAAI,CAAC,CAAA;QAE9E,MAAM,YAAY,GAAY,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,sBAAO,CAAC,CAAC,OAAO,CAAC;YAC7E,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,+BAA+B,EAAE;SAC3F,CAAC,CAAA;QAEF,yBAAyB;QACzB,IAAI,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,KAAK,KAAI,MAAM,EAAE;YACjC,IAAA,uBAAa,GAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAiB,EAAE,EAAE;gBACtD,MAAM,kBAAkB,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;YACrE,CAAC,CAAC,CAAA;SACH;QAED,IAAA,iCAAc,EAAC,aAAa,EAAE,aAAa,CAAC,QAAQ,EAAE,oCAAiB,CAAC,sBAAsB,CAAC,CAAA;QAE/F,OAAO,MAAM,CAAA;IACf,CAAC;IAED,KAAK,CAAC,OAAO,CACX,mBAA6B,EAC7B,QAAgB,EAChB,QAAgB,EAChB,YAAoB;QAEpB,MAAM,cAAc,GAAW,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,uBAAM,CAAC,CAAC,OAAO,CAAC;YAC7E,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;SAC/C,CAAC,CAAA;QAEF,IAAI,cAAc,EAAE;YAClB,MAAM,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,YAAY,CAAC,CAAA;SAChF;aAAM,IAAI,QAAQ,EAAE;YACnB,MAAM,IAAI,CAAC,aAAa,CAAC,mBAAmB,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAA;SACtE;aAAM;YACL,MAAM,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAA;SACzE;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,mBAA2B,EAAE,cAAsB,EAAE,YAAoB;QAC5F,MAAM,eAAe,GAAoB,MAAM,IAAI,CAAC,mCAAmC,CACrF,mBAAmB,EACnB,0BAAc,CAAC,OAAO,EACtB;YACE,WAAW;YACX,yBAAyB;YACzB,4BAA4B;YAC5B,4CAA4C;YAC5C,sDAAsD;SACvD,CACF,CAAA;QAED,MAAM,SAAS,GAAc,eAAe,CAAC,SAAS,CAAA;QACtD,MAAM,aAAa,GAAkB,SAAS,CAAC,aAAa,CAAA;QAC5D,MAAM,gBAAgB,GAAsB,SAAS,CAAC,gBAAgB,CAAA;QACtE,MAAM,WAAW,GAAgB,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,0BAAS,CAAC,CAAC,IAAI,CAAC;YAC/E,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,cAAc;gBACd,UAAU,EAAE,aAAa,CAAC,EAAE;gBAC5B,MAAM,EAAE,IAAA,YAAE,EAAC,CAAC,iCAAgB,CAAC,YAAY,EAAE,iCAAgB,CAAC,QAAQ,CAAC,CAAC;aACvE;SACF,CAAC,CAAA;QAEF,KAAK,IAAI,SAAS,IAAI,WAAW,EAAE;YACjC,MAAM,eAAe,GAAoB,gBAAgB,CAAC,IAAI,CAC5D,CAAC,GAAoB,EAAE,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,CAChF,CAAA;YAED,IAAI,eAAe,GAAmB,eAAe,CAAC,eAAe,CAAA;YACrE,SAAS,GAAG,eAAe,CAAC,SAAS,CAAA;YAErC,IAAI,QAAQ,GAAa,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,yBAAQ,CAAC,CAAC,OAAO,CAAC;gBACzE,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,IAAI,EAAE,YAAY;oBAClB,IAAI,EAAE,IAAA,YAAE,EAAC;wBACP,8BAAa,CAAC,KAAK;wBACnB,8BAAa,CAAC,MAAM;wBACpB,8BAAa,CAAC,KAAK;wBACnB,8BAAa,CAAC,UAAU;wBACxB,8BAAa,CAAC,OAAO;qBACtB,CAAC;iBACH;gBACD,SAAS,EAAE,CAAC,WAAW,CAAC;aACzB,CAAC,CAAA;YACF,IAAI,CAAC,QAAQ;gBAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAA;YAC3E,MAAM,SAAS,GAAc,QAAQ,CAAC,SAAS,CAAA;YAC/C,MAAM,IAAI,GAAW,QAAQ,CAAC,IAAI,CAAA;YAElC,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAA;YAC7B,SAAS,CAAC,MAAM,GAAG,iCAAgB,CAAC,MAAM,CAAA;YAC1C,SAAS,CAAC,SAAS,GAAG,SAAS,CAAA;YAC/B,SAAS,CAAC,IAAI,GAAG,IAAI,CAAA;YACrB,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,EAAE,2CAA0B,CAAC,OAAO,CAAC,CAAA;YAEnG,eAAe,CAAC,MAAM,GAAG,mCAAsB,CAAC,UAAU,CAAA;YAC1D,eAAe,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAA;YACtC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAA;YACrC,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;YACnC,MAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,eAAe,CAAC,CAAC,CAAA;YAEhD,eAAe,CAAC,MAAM,GAAG,4BAAgB,CAAC,IAAI,CAAA;YAC9C,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;YACnC,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,0BAAe,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;SACvE;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,mBAA6B,EAAE,QAAgB,EAAE,YAAoB;QACvF,MAAM,gBAAgB,GAAsB,MAAM,IAAI,CAAC,oCAAoC,CACzF,mBAAmB,EACnB,0BAAc,CAAC,OAAO,EACtB,CAAC,WAAW,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,2BAA2B,CAAC,CACzF,CAAA;QAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAChD,MAAM,eAAe,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAA;YAC3C,MAAM,SAAS,GAAc,eAAe,CAAC,SAAS,CAAA;YACtD,MAAM,aAAa,GAAkB,SAAS,CAAC,aAAa,CAAA;YAC5D,IAAI,eAAe,GAAmB,eAAe,CAAC,eAAe,CAAA;YACrE,IAAI,SAAS,GAAc,eAAe,CAAC,SAAS,CAAA;YAEpD,IAAI,SAAS,CAAC,QAAQ,KAAK,QAAQ,EAAE;gBACnC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,sBAAsB,CAAC,UAAU,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAA;aAC1G;YAED,MAAM,QAAQ,GAAa,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,yBAAQ,CAAC,CAAC,OAAO,CAAC;gBAC3E,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,IAAI,EAAE,YAAY;oBAClB,IAAI,EAAE,IAAA,YAAE,EAAC;wBACP,8BAAa,CAAC,KAAK;wBACnB,8BAAa,CAAC,MAAM;wBACpB,8BAAa,CAAC,KAAK;wBACnB,8BAAa,CAAC,GAAG;wBACjB,8BAAa,CAAC,UAAU;wBACxB,8BAAa,CAAC,OAAO;wBACrB,8BAAa,CAAC,OAAO;wBACrB,8BAAa,CAAC,MAAM;qBACrB,CAAC;iBACH;gBACD,SAAS,EAAE,CAAC,WAAW,CAAC;aACzB,CAAC,CAAA;YAEF,IAAI,CAAC,QAAQ;gBAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAA;YAC3E,MAAM,SAAS,GAAc,QAAQ,CAAC,SAAS,CAAA;YAC/C,MAAM,IAAI,GAAW,SAAS,CAAC,IAAI,CAAA;YAEnC,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAA;YAC7B,SAAS,CAAC,MAAM,GAAG,iCAAgB,CAAC,MAAM,CAAA;YAC1C,SAAS,CAAC,SAAS,GAAG,SAAS,CAAA;YAC/B,SAAS,CAAC,IAAI,GAAG,IAAI,CAAA;YACrB,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,EAAE,2CAA0B,CAAC,OAAO,CAAC,CAAA;YAEnG,eAAe,CAAC,MAAM,GAAG,mCAAsB,CAAC,UAAU,CAAA;YAC1D,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;YACnC,eAAe,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAA;YACtC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAA;YACrC,MAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,eAAe,CAAC,CAAC,CAAA;YAEhD,eAAe,CAAC,MAAM,GAAG,4BAAgB,CAAC,IAAI,CAAA;YAC9C,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;YACnC,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,0BAAe,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;SACvE;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,mBAA2B,EAAE,QAAgB,EAAE,YAAoB;QACrF,MAAM,eAAe,GAAoB,MAAM,IAAI,CAAC,mCAAmC,CACrF,mBAAmB,EACnB,0BAAc,CAAC,OAAO,EACtB,CAAC,WAAW,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,2BAA2B,CAAC,CACzF,CAAA;QAED,MAAM,SAAS,GAAc,eAAe,CAAC,SAAS,CAAA;QACtD,MAAM,aAAa,GAAkB,SAAS,CAAC,aAAa,CAAA;QAC5D,IAAI,eAAe,GAAmB,eAAe,CAAC,eAAe,CAAA;QACrE,IAAI,SAAS,GAAc,eAAe,CAAC,SAAS,CAAA;QAEpD,IAAI,SAAS,CAAC,QAAQ,KAAK,QAAQ,EAAE;YACnC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAA;SACxG;QAED,MAAM,QAAQ,GAAa,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,yBAAQ,CAAC,CAAC,OAAO,CAAC;YAC3E,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE,IAAA,YAAE,EAAC;oBACP,8BAAa,CAAC,KAAK;oBACnB,8BAAa,CAAC,MAAM;oBACpB,8BAAa,CAAC,KAAK;oBACnB,8BAAa,CAAC,UAAU;oBACxB,8BAAa,CAAC,OAAO;oBACrB,8BAAa,CAAC,OAAO;iBACtB,CAAC;aACH;YACD,SAAS,EAAE,CAAC,WAAW,CAAC;SACzB,CAAC,CAAA;QACF,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAA;QAC3E,MAAM,SAAS,GAAc,QAAQ,CAAC,SAAS,CAAA;QAC/C,MAAM,IAAI,GAAW,SAAS,CAAC,IAAI,CAAA;QAEnC,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAA;QAC7B,SAAS,CAAC,MAAM,GAAG,iCAAgB,CAAC,MAAM,CAAA;QAC1C,SAAS,CAAC,SAAS,GAAG,SAAS,CAAA;QAC/B,SAAS,CAAC,IAAI,GAAG,IAAI,CAAA;QACrB,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,EAAE,2CAA0B,CAAC,OAAO,CAAC,CAAA;QAEnG,eAAe,CAAC,MAAM,GAAG,mCAAsB,CAAC,UAAU,CAAA;QAC1D,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;QACnC,eAAe,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAA;QACtC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAA;QACrC,MAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,eAAe,CAAC,CAAC,CAAA;QAEhD,eAAe,CAAC,MAAM,GAAG,4BAAgB,CAAC,IAAI,CAAA;QAC9C,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;QACnC,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,0BAAe,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;IACxE,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,mBAA6B,EAAE,QAAgB,EAAE,QAAgB;QACjF,IAAI,QAAQ,EAAE;YACZ,MAAM,IAAI,CAAC,UAAU,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAA;SACrD;aAAM;YACL,MAAM,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;SACxD;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,mBAA2B,EAAE,QAAgB;QAC5D,IAAI,eAAe,GAAoB,MAAM,IAAI,CAAC,yBAAyB,CAAC,mBAAmB,EAAE;YAC/F,WAAW;YACX,yBAAyB;YACzB,iBAAiB;YACjB,2BAA2B;YAC3B,cAAc;SACf,CAAC,CAAA;QACF,IAAI,CAAC,mBAAmB,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,4BAAgB,CAAC,IAAI,EAAE,CAAC,CAAA;QAE5E,MAAM,SAAS,GAAc,eAAe,CAAC,SAAS,CAAA;QACtD,MAAM,aAAa,GAAkB,SAAS,CAAC,aAAa,CAAA;QAC5D,MAAM,eAAe,GAAmB,eAAe,CAAC,eAAe,CAAA;QACvE,IAAI,SAAS,GAAc,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,0BAAS,CAAC,CAAC,OAAO,CAAC;YAC5E,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE;SACzC,CAAC,CAAA;QACF,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAA;QAExC,MAAM,cAAc,GAAa,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,yBAAQ,CAAC,CAAC,OAAO,CAAC;YACjF,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,eAAe,CAAC,YAAY,CAAC,IAAI,EAAE;SACxE,CAAC,CAAA;QACF,SAAS,CAAC,QAAQ,GAAG,cAAc,CAAA;QACnC,SAAS,CAAC,MAAM,GAAG,iCAAgB,CAAC,QAAQ,CAAA;QAC5C,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,EAAE,2CAA0B,CAAC,YAAY,CAAC,CAAA;QAExG,eAAe,CAAC,MAAM,GAAG,iCAAoB,CAAC,YAAY,CAAA;QAC1D,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;QACnC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAA;QAChC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAA;QAChC,MAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,eAAe,CAAC,CAAC,CAAA;QAEhD,eAAe,CAAC,MAAM,GAAG,4BAAgB,CAAC,SAAS,CAAA;QACnD,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;QACnC,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,0BAAe,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;IACxE,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,mBAA6B,EAAE,QAAgB;QAC9D,IAAI,gBAAgB,GAAsB,MAAM,IAAI,CAAC,0BAA0B,CAAC,mBAAmB,EAAE;YACnG,WAAW;YACX,yBAAyB;YACzB,iBAAiB;YACjB,2BAA2B;YAC3B,cAAc;SACf,CAAC,CAAA;QAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAG,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,MAAM,CAAA,EAAE,CAAC,EAAE,EAAE;YACjD,MAAM,eAAe,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAA;YAC3C,IAAI,CAAC,mBAAmB,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,4BAAgB,CAAC,IAAI,EAAE,CAAC,CAAA;YAC5E,MAAM,SAAS,GAAc,eAAe,CAAC,SAAS,CAAA;YACtD,MAAM,aAAa,GAAkB,SAAS,CAAC,aAAa,CAAA;YAC5D,MAAM,eAAe,GAAmB,eAAe,CAAC,eAAe,CAAA;YACvE,IAAI,SAAS,GAAc,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,0BAAS,CAAC,CAAC,OAAO,CAAC;gBAC5E,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,CAAC,SAAS,CAAC,QAAQ,EAAE;aACvF,CAAC,CAAA;YACF,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAA;YAExC,MAAM,cAAc,GAAa,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,yBAAQ,CAAC,CAAC,OAAO,CAAC;gBACjF,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,eAAe,CAAC,YAAY,CAAC,IAAI,EAAE;aACxE,CAAC,CAAA;YACF,SAAS,CAAC,QAAQ,GAAG,cAAc,CAAA;YACnC,SAAS,CAAC,MAAM,GAAG,iCAAgB,CAAC,QAAQ,CAAA;YAC5C,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,EAAE,2CAA0B,CAAC,YAAY,CAAC,CAAA;YAExG,eAAe,CAAC,MAAM,GAAG,iCAAoB,CAAC,YAAY,CAAA;YAC1D,eAAe,CAAC,SAAS,GAAG,IAAI,CAAA;YAChC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAA;YAChC,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;YACnC,MAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,eAAe,CAAC,CAAC,CAAA;YAEhD,eAAe,CAAC,MAAM,GAAG,4BAAgB,CAAC,SAAS,CAAA;YACnD,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;YACnC,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,0BAAe,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;SACvE;IACH,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,SAAoB;QACnD,MAAM,sBAAsB,GAAmB,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,2BAAc,CAAC,CAAC,OAAO,CAAC;YACrG,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,IAAI,EAAE,wBAAW,CAAC,gBAAgB;gBAClC,SAAS;aACV;SACF,CAAC,CAAA;QAEF,IAAI,sBAAsB;YACxB,MAAM,IAAI,KAAK,CACb,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,oBAAoB,CAAC,cAAc,EAAE,gDAAgD,CAAC,CAC/G,CAAA;IACL,CAAC;CACF;AAzdD,gEAydC;AAED,KAAK,UAAU,kBAAkB,CAAC,aAA4B,EAAE,IAAI,EAAE,MAAM,EAAE,EAAO;IACnF,IAAI,SAAS,CAAA;IACb,MAAM,OAAO,GAAG,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,CAAA;IAE/C,IAAI,CAAC,aAAa,EAAE;QAClB,OAAM;KACP;IAED,IAAI;QACF,MAAM,iBAAiB,GAAkB,MAAM,EAAE,CAAC,aAAa,CAAC,0BAAa,CAAC,CAAC,OAAO,CAAC;YACrF,KAAK,EAAE;gBACL,MAAM;gBACN,EAAE,EAAE,aAAa,CAAC,EAAE;aACrB;YACD,SAAS,EAAE,CAAC,kBAAkB,CAAC;SAChC,CAAC,CAAA;QAEF,SAAS,GAAG,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YACxD,OAAO,GAAG,CAAC,SAAS,CAAA;QACtB,CAAC,CAAC,CAAA;QAEF,IAAI,MAAM,GAAG,MAAM,EAAE,CAAC,KAAK,CACzB;;;;;;;;;;;;;;;;8BAgBwB,EACxB,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,CACvB,CAAA;QAED,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;QAE1E,MAAM,sBAAsB,GAAG,IAAI,mCAAsB,EAAE,CAAA;QAC3D,MAAM,sBAAsB,CAAC,6BAA6B,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;KAC5E;IAAC,OAAO,CAAC,EAAE;QACV,YAAM,CAAC,KAAK,CAAC,uCAAuC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAA;KAC1F;AACH,CAAC"}
1
+ {"version":3,"file":"putaway-worksheet-controller.js","sourceRoot":"","sources":["../../../server/controllers/inbound/putaway-worksheet-controller.ts"],"names":[],"mappings":"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"}
@@ -44,7 +44,7 @@ const putaway_replenishment_worksheet_1 = require("./putaway-replenishment-works
44
44
  const putaway_return_1 = require("./putaway-return");
45
45
  const putaway_returning_worksheet_1 = require("./putaway-returning-worksheet");
46
46
  const putaway_worksheet_1 = require("./putaway-worksheet");
47
- const recommend_putway_location_1 = require("./recommend-putway-location");
47
+ const recommend_putaway_location_1 = require("./recommend-putaway-location");
48
48
  const refresh_active_worksheet_picking_views_1 = require("./refresh-active-worksheet-picking-views");
49
49
  const reject_cancellation_release_order_1 = require("./reject-cancellation-release-order");
50
50
  const replace_picking_pallets_1 = require("./replace-picking-pallets");
@@ -70,6 +70,6 @@ const worksheet_1 = require("./worksheet");
70
70
  const worksheet_by_order_no_1 = require("./worksheet-by-order-no");
71
71
  const worksheet_with_pagination_1 = require("./worksheet-with-pagination");
72
72
  const worksheets_1 = require("./worksheets");
73
- exports.Query = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, refresh_active_worksheet_picking_views_1.refreshActiveWorksheetPickingViews), worksheets_1.worksheetsResolver), worksheet_1.worksheetResolver), unloading_worksheet_1.unloadingWorksheetResolver), unloading_return_worksheet_1.unloadingReturnWorksheetResolver), delivery_order_by_worksheet_1.deliveryOrderByWorksheetResolver), packing_worksheet_1.packingWorksheetResolver), get_packing_list_1.packingListResolver), putaway_worksheet_1.putawayWorksheetResolver), putaway_returning_worksheet_1.putawayReturningWorksheetResolver), return_worksheet_1.returnWorksheetResolver), picking_worksheet_1.pickingWorksheetResolver), cycle_count_worksheet_for_pallet_1.cycleCountWorksheetForPalletResolver), cycle_count_worksheet_for_carton_1.cycleCountWorksheetForCartonResolver), vas_worksheet_1.vasWorksheetResolver), loading_worksheet_1.loadingWorksheetResolver), unloaded_inventories_1.unloadedInventories), unloaded_inventories_by_reusable_pallet_1.unloadedInventoriesByReusablePallet), loaded_inventories_1.loadedInventories), vas_candidates_1.vasCandidatesResolver), inventories_by_pallet_1.inventoriesByPalletResolver), batch_picking_worksheet_1.batchPickingWorksheetResolver), check_stock_take_current_location_1.checkStockTakeCurrentLocationResolver), check_inventory_release_1.checkInventoryReleaseResolver), vas_transactions_1.checkRelabelableResolver), having_vas_1.havingVasResolver), worksheet_by_order_no_1.worksheetByOrderNoResolver), worksheet_with_pagination_1.worksheetWithPaginationResolver), not_tally_target_inventories_1.notTallyTargetInventoriesResolver), vas_inventories_1.vasInventories), picking_assignment_status_by_user_1.pickingAssignmentStatusByUsersResolver), my_picking_assignment_status_1.myPickingAssignmentStatusResolver), recommend_putway_location_1.recommendPutawayLocationResolver), sorting_worksheet_1.sortingWorksheetResolver), find_sorting_release_orders_by_task_no_1.findSortingReleaseOrdersByTaskNoResolver), find_release_orders_by_task_no_1.findReleaseOrdersByTaskNoResolver), fetch_delivery_order_ro_1.fetchDeliveryOrderROResolver), putaway_replenishment_worksheet_1.putawayReplenishmentWorksheetResolver);
73
+ exports.Query = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, refresh_active_worksheet_picking_views_1.refreshActiveWorksheetPickingViews), worksheets_1.worksheetsResolver), worksheet_1.worksheetResolver), unloading_worksheet_1.unloadingWorksheetResolver), unloading_return_worksheet_1.unloadingReturnWorksheetResolver), delivery_order_by_worksheet_1.deliveryOrderByWorksheetResolver), packing_worksheet_1.packingWorksheetResolver), get_packing_list_1.packingListResolver), putaway_worksheet_1.putawayWorksheetResolver), putaway_returning_worksheet_1.putawayReturningWorksheetResolver), return_worksheet_1.returnWorksheetResolver), picking_worksheet_1.pickingWorksheetResolver), cycle_count_worksheet_for_pallet_1.cycleCountWorksheetForPalletResolver), cycle_count_worksheet_for_carton_1.cycleCountWorksheetForCartonResolver), vas_worksheet_1.vasWorksheetResolver), loading_worksheet_1.loadingWorksheetResolver), unloaded_inventories_1.unloadedInventories), unloaded_inventories_by_reusable_pallet_1.unloadedInventoriesByReusablePallet), loaded_inventories_1.loadedInventories), vas_candidates_1.vasCandidatesResolver), inventories_by_pallet_1.inventoriesByPalletResolver), batch_picking_worksheet_1.batchPickingWorksheetResolver), check_stock_take_current_location_1.checkStockTakeCurrentLocationResolver), check_inventory_release_1.checkInventoryReleaseResolver), vas_transactions_1.checkRelabelableResolver), having_vas_1.havingVasResolver), worksheet_by_order_no_1.worksheetByOrderNoResolver), worksheet_with_pagination_1.worksheetWithPaginationResolver), not_tally_target_inventories_1.notTallyTargetInventoriesResolver), vas_inventories_1.vasInventories), picking_assignment_status_by_user_1.pickingAssignmentStatusByUsersResolver), my_picking_assignment_status_1.myPickingAssignmentStatusResolver), recommend_putaway_location_1.recommendPutawayLocationResolver), sorting_worksheet_1.sortingWorksheetResolver), find_sorting_release_orders_by_task_no_1.findSortingReleaseOrdersByTaskNoResolver), find_release_orders_by_task_no_1.findReleaseOrdersByTaskNoResolver), fetch_delivery_order_ro_1.fetchDeliveryOrderROResolver), putaway_replenishment_worksheet_1.putawayReplenishmentWorksheetResolver);
74
74
  exports.Mutation = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, generate_worksheet_1.Mutations), unloading_1.Mutations), sorting_1.Mutations), putaway_1.Mutations), putaway_return_1.Mutations), vas_1.Mutations), picking_1.Mutations), packing_1.Mutations), loading_1.Mutations), returning_1.Mutations), unloading_return_1.Mutations), inspecting_1.Mutations), update_worksheet_1.updateWorksheet), create_worksheet_1.createWorksheet), cycle_count_adjustment_1.cycleCountAdjustmentResolver), delete_worksheet_1.deleteWorksheet), transfer_1.transfer), proceed_extra_products_1.proceedExtraProductsResolver), replace_picking_pallets_1.replacePickingPalletsResolver), pending_cancellation_release_order_1.pendingCancellationReleaseOrder), confirm_cancellation_release_order_1.confirmCancellationReleaseOrder), reject_cancellation_release_order_1.rejectCancellationReleaseOrder), vas_transactions_1.repalletizingResolver), vas_transactions_1.undoRepalletizingResolver), vas_transactions_1.repackagingResolver), vas_transactions_1.undoRepackagingResolver), vas_transactions_1.relabelingResolver), vas_transactions_1.undoRelabelingResolver), cross_dock_picking_1.crossDockPickingResolver), vas_transactions_1.unpackingResolver), palletizing_pallets_1.palletizingPallets), fetch_sellercraft_document_1.fetchSellercraftDocumentResolver), fetch_powrup_document_1.fetchPowrupDocumentResolver), fetch_webspert_document_1.fetchWebspertDocumentResolver), cancel_draft_release_order_1.cancelDraftReleaseOrder), cancel_replenishment_1.cancelReplenishment), replenishment_1.Mutations), cancel_arrival_notice_1.cancelArrivalNoticeResolver);
75
75
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/worksheet/index.ts"],"names":[],"mappings":";;;AAAA,uEAAyE;AACzE,mEAAqE;AACrE,6EAAsE;AACtE,iEAA4D;AAC5D,uEAAyE;AACzE,2FAA2F;AAC3F,6FAAsF;AACtF,yDAAoD;AACpD,6DAA+D;AAC/D,qEAAuE;AACvE,yFAAyF;AACzF,yFAAyF;AACzF,yDAAoD;AACpD,+EAAgF;AAChF,uEAAwE;AACxE,mEAAqE;AACrE,6EAA+E;AAC/E,uEAAyE;AACzE,qFAAoF;AACpF,qGAAmG;AACnG,6DAA8E;AAC9E,yDAAwD;AACxD,6CAAgD;AAChD,6CAA4D;AAC5D,mEAAqE;AACrE,6DAAwD;AACxD,uCAAyD;AACzD,2DAA8D;AAC9D,iFAAkF;AAClF,uCAAyD;AACzD,2DAA8D;AAC9D,+DAA0D;AAC1D,6FAAsF;AACtF,uCAAyD;AACzD,2DAA8D;AAC9D,yFAA0F;AAC1F,mGAAoG;AACpG,qEAAuE;AACvE,uCAAyD;AACzD,uFAAyF;AACzF,qDAAsE;AACtE,+EAAiF;AACjF,2DAA8D;AAC9D,2EAA8E;AAC9E,qGAA6F;AAC7F,2FAAoF;AACpF,uEAAyE;AACzE,mDAAqE;AACrE,yDAA4D;AAC5D,2CAA6D;AAC7D,uCAAyD;AACzD,2DAA8D;AAC9D,yCAAqC;AACrC,iEAA4D;AAC5D,uGAA+F;AAC/F,2CAA6D;AAC7D,yDAA0E;AAC1E,6EAA+E;AAC/E,+DAAkE;AAClE,yDAAoD;AACpD,+BAAiD;AACjD,qDAAwD;AACxD,uDAAkD;AAClD,yDAS2B;AAC3B,mDAAsD;AACtD,2CAA+C;AAC/C,mEAAoE;AACpE,2EAA6E;AAC7E,6CAAiD;AAEpC,QAAA,KAAK,2hBACb,2EAAkC,GAClC,+BAAkB,GAClB,6BAAiB,GACjB,gDAA0B,GAC1B,6DAAgC,GAChC,8DAAgC,GAChC,4CAAwB,GACxB,sCAAmB,GACnB,4CAAwB,GACxB,+DAAiC,GACjC,0CAAuB,GACvB,4CAAwB,GACxB,uEAAoC,GACpC,uEAAoC,GACpC,oCAAoB,GACpB,4CAAwB,GACxB,0CAAmB,GACnB,6EAAmC,GACnC,sCAAiB,GACjB,sCAAqB,GACrB,mDAA2B,GAC3B,uDAA6B,GAC7B,yEAAqC,GACrC,uDAA6B,GAC7B,2CAAwB,GACxB,8BAAiB,GACjB,kDAA0B,GAC1B,2DAA+B,GAC/B,gEAAiC,GACjC,gCAAc,GACd,0EAAsC,GACtC,gEAAiC,GACjC,4DAAgC,GAChC,4CAAwB,GACxB,iFAAwC,GACxC,kEAAiC,GACjC,sDAA4B,GAC5B,uEAAqC,EACzC;AAEY,QAAA,QAAQ,2hBAChB,8BAA0B,GAC1B,qBAAkB,GAClB,mBAAgB,GAChB,mBAAgB,GAChB,0BAAsB,GACtB,eAAY,GACZ,mBAAgB,GAChB,mBAAgB,GAChB,mBAAgB,GAChB,qBAAkB,GAClB,4BAAwB,GACxB,sBAAgB,GAChB,kCAAe,GACf,kCAAe,GACf,qDAA4B,GAC5B,kCAAe,GACf,mBAAQ,GACR,qDAA4B,GAC5B,uDAA6B,GAC7B,oEAA+B,GAC/B,oEAA+B,GAC/B,kEAA8B,GAC9B,wCAAqB,GACrB,4CAAyB,GACzB,sCAAmB,GACnB,0CAAuB,GACvB,qCAAkB,GAClB,yCAAsB,GACtB,6CAAwB,GACxB,oCAAiB,GACjB,wCAAkB,GAClB,6DAAgC,GAChC,mDAA2B,GAC3B,uDAA6B,GAC7B,oDAAuB,GACvB,0CAAmB,GACnB,yBAAsB,GACtB,mDAA2B,EAC/B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/worksheet/index.ts"],"names":[],"mappings":";;;AAAA,uEAAyE;AACzE,mEAAqE;AACrE,6EAAsE;AACtE,iEAA4D;AAC5D,uEAAyE;AACzE,2FAA2F;AAC3F,6FAAsF;AACtF,yDAAoD;AACpD,6DAA+D;AAC/D,qEAAuE;AACvE,yFAAyF;AACzF,yFAAyF;AACzF,yDAAoD;AACpD,+EAAgF;AAChF,uEAAwE;AACxE,mEAAqE;AACrE,6EAA+E;AAC/E,uEAAyE;AACzE,qFAAoF;AACpF,qGAAmG;AACnG,6DAA8E;AAC9E,yDAAwD;AACxD,6CAAgD;AAChD,6CAA4D;AAC5D,mEAAqE;AACrE,6DAAwD;AACxD,uCAAyD;AACzD,2DAA8D;AAC9D,iFAAkF;AAClF,uCAAyD;AACzD,2DAA8D;AAC9D,+DAA0D;AAC1D,6FAAsF;AACtF,uCAAyD;AACzD,2DAA8D;AAC9D,yFAA0F;AAC1F,mGAAoG;AACpG,qEAAuE;AACvE,uCAAyD;AACzD,uFAAyF;AACzF,qDAAsE;AACtE,+EAAiF;AACjF,2DAA8D;AAC9D,6EAA+E;AAC/E,qGAA6F;AAC7F,2FAAoF;AACpF,uEAAyE;AACzE,mDAAqE;AACrE,yDAA4D;AAC5D,2CAA6D;AAC7D,uCAAyD;AACzD,2DAA8D;AAC9D,yCAAqC;AACrC,iEAA4D;AAC5D,uGAA+F;AAC/F,2CAA6D;AAC7D,yDAA0E;AAC1E,6EAA+E;AAC/E,+DAAkE;AAClE,yDAAoD;AACpD,+BAAiD;AACjD,qDAAwD;AACxD,uDAAkD;AAClD,yDAS2B;AAC3B,mDAAsD;AACtD,2CAA+C;AAC/C,mEAAoE;AACpE,2EAA6E;AAC7E,6CAAiD;AAEpC,QAAA,KAAK,2hBACb,2EAAkC,GAClC,+BAAkB,GAClB,6BAAiB,GACjB,gDAA0B,GAC1B,6DAAgC,GAChC,8DAAgC,GAChC,4CAAwB,GACxB,sCAAmB,GACnB,4CAAwB,GACxB,+DAAiC,GACjC,0CAAuB,GACvB,4CAAwB,GACxB,uEAAoC,GACpC,uEAAoC,GACpC,oCAAoB,GACpB,4CAAwB,GACxB,0CAAmB,GACnB,6EAAmC,GACnC,sCAAiB,GACjB,sCAAqB,GACrB,mDAA2B,GAC3B,uDAA6B,GAC7B,yEAAqC,GACrC,uDAA6B,GAC7B,2CAAwB,GACxB,8BAAiB,GACjB,kDAA0B,GAC1B,2DAA+B,GAC/B,gEAAiC,GACjC,gCAAc,GACd,0EAAsC,GACtC,gEAAiC,GACjC,6DAAgC,GAChC,4CAAwB,GACxB,iFAAwC,GACxC,kEAAiC,GACjC,sDAA4B,GAC5B,uEAAqC,EACzC;AAEY,QAAA,QAAQ,2hBAChB,8BAA0B,GAC1B,qBAAkB,GAClB,mBAAgB,GAChB,mBAAgB,GAChB,0BAAsB,GACtB,eAAY,GACZ,mBAAgB,GAChB,mBAAgB,GAChB,mBAAgB,GAChB,qBAAkB,GAClB,4BAAwB,GACxB,sBAAgB,GAChB,kCAAe,GACf,kCAAe,GACf,qDAA4B,GAC5B,kCAAe,GACf,mBAAQ,GACR,qDAA4B,GAC5B,uDAA6B,GAC7B,oEAA+B,GAC/B,oEAA+B,GAC/B,kEAA8B,GAC9B,wCAAqB,GACrB,4CAAyB,GACzB,sCAAmB,GACnB,0CAAuB,GACvB,qCAAkB,GAClB,yCAAsB,GACtB,6CAAwB,GACxB,oCAAiB,GACjB,wCAAkB,GAClB,6DAAgC,GAChC,mDAA2B,GAC3B,uDAA6B,GAC7B,oDAAuB,GACvB,0CAAmB,GACnB,yBAAsB,GACtB,mDAA2B,EAC/B"}
@@ -0,0 +1,331 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.recommendLocationLevel3 = exports.getLevel2Location = exports.getEmptyLocations = exports.recommendQuarantineLocationLevel1 = exports.recommendLocationLevel2 = exports.recommendLocationLevel1 = exports.recommendPutawayLocationResolver = void 0;
4
+ const typeorm_1 = require("typeorm");
5
+ const setting_base_1 = require("@things-factory/setting-base");
6
+ const warehouse_base_1 = require("@things-factory/warehouse-base");
7
+ const constants_1 = require("../../../constants");
8
+ const entities_1 = require("../../../entities");
9
+ const inventory_util_1 = require("../../../utils/inventory-util");
10
+ exports.recommendPutawayLocationResolver = {
11
+ async recommendPutawayLocation(_, { worksheetDetailName, optCnt = 1 }, context) {
12
+ const domain = context.state.domain;
13
+ const worksheetDetail = await (0, typeorm_1.getRepository)(entities_1.WorksheetDetail).findOne({ domain, name: worksheetDetailName }, {
14
+ relations: [
15
+ 'worksheet',
16
+ 'worksheet.arrivalNotice',
17
+ 'worksheet.returnOrder',
18
+ 'targetInventory',
19
+ 'targetInventory.inventory',
20
+ 'targetInventory.inventory.product'
21
+ ]
22
+ });
23
+ const inventory = worksheetDetail.targetInventory.inventory;
24
+ if (worksheetDetail.status !== constants_1.WORKSHEET_STATUS.EXECUTING)
25
+ throw new Error('Current target is not processing');
26
+ const arrivalNotice = worksheetDetail.worksheet.arrivalNotice;
27
+ const returnOrder = worksheetDetail.worksheet.returnOrder;
28
+ let unloadingWS;
29
+ if (arrivalNotice) {
30
+ unloadingWS = await (0, typeorm_1.getRepository)(entities_1.Worksheet).findOne({
31
+ where: { domain, arrivalNotice, type: constants_1.WORKSHEET_TYPE.UNLOADING },
32
+ relations: ['bufferLocation', 'bufferLocation.warehouse']
33
+ });
34
+ }
35
+ else if (returnOrder) {
36
+ unloadingWS = await (0, typeorm_1.getRepository)(entities_1.Worksheet).findOne({
37
+ where: { domain, returnOrder, type: constants_1.WORKSHEET_TYPE.UNLOADING_RETURN },
38
+ relations: ['bufferLocation', 'bufferLocation.warehouse']
39
+ });
40
+ }
41
+ const targetWarehouse = unloadingWS.bufferLocation.warehouse;
42
+ const sortingLevelSetting = await (0, typeorm_1.getRepository)(setting_base_1.Setting).findOne({
43
+ where: { domain, name: 'location-recommendation-level' }
44
+ });
45
+ const sortingLevel = sortingLevelSetting === null || sortingLevelSetting === void 0 ? void 0 : sortingLevelSetting.value;
46
+ const isExpiring = await (0, inventory_util_1.isInventoryExpiring)(inventory);
47
+ let recommendedLocations = [];
48
+ if (isExpiring) {
49
+ switch (sortingLevel) {
50
+ case 'level 1':
51
+ case 'level 2':
52
+ recommendedLocations = await recommendQuarantineLocationLevel1(domain, targetWarehouse, optCnt);
53
+ break;
54
+ default:
55
+ recommendedLocations = await recommendQuarantineLocationLevel1(domain, targetWarehouse, optCnt);
56
+ break;
57
+ }
58
+ }
59
+ if (recommendedLocations.length > 0)
60
+ return recommendedLocations;
61
+ switch (sortingLevel) {
62
+ case 'level 1':
63
+ recommendedLocations = await recommendLocationLevel1(domain, targetWarehouse, optCnt);
64
+ break;
65
+ case 'level 2':
66
+ recommendedLocations = await recommendLocationLevel2(domain, targetWarehouse, optCnt, inventory.product.id);
67
+ break;
68
+ case 'level 3':
69
+ recommendedLocations = await recommendLocationLevel3(domain, targetWarehouse, optCnt, inventory);
70
+ break;
71
+ default:
72
+ recommendedLocations = await recommendLocationLevel1(domain, targetWarehouse, optCnt);
73
+ break;
74
+ }
75
+ return recommendedLocations;
76
+ }
77
+ };
78
+ async function recommendLocationLevel1(domain, warehouse, optCnt) {
79
+ return await getEmptyLocations(domain, warehouse, optCnt, [warehouse_base_1.LOCATION_TYPE.SHELF, warehouse_base_1.LOCATION_TYPE.FLOOR]);
80
+ }
81
+ exports.recommendLocationLevel1 = recommendLocationLevel1;
82
+ async function recommendLocationLevel2(domain, warehouse, optCnt, productId) {
83
+ return await getLevel2Location(domain, warehouse, optCnt, [warehouse_base_1.LOCATION_TYPE.STORAGE, warehouse_base_1.LOCATION_TYPE.SHELF, warehouse_base_1.LOCATION_TYPE.FLOOR], productId);
84
+ }
85
+ exports.recommendLocationLevel2 = recommendLocationLevel2;
86
+ async function recommendQuarantineLocationLevel1(domain, warehouse, optCnt) {
87
+ return await getEmptyLocations(domain, warehouse, optCnt, [warehouse_base_1.LOCATION_TYPE.QUARANTINE]);
88
+ }
89
+ exports.recommendQuarantineLocationLevel1 = recommendQuarantineLocationLevel1;
90
+ async function getEmptyLocations(domain, warehouse, optCnt, allowedTypes) {
91
+ const orderSetting = await (0, typeorm_1.getRepository)(setting_base_1.Setting).findOne({
92
+ where: { domain, name: 'rule-for-storing-product' }
93
+ });
94
+ let order = {};
95
+ if (orderSetting === null || orderSetting === void 0 ? void 0 : orderSetting.value)
96
+ order = JSON.parse(orderSetting.value);
97
+ return await (0, typeorm_1.getRepository)(warehouse_base_1.Location).find({
98
+ where: {
99
+ domain,
100
+ warehouse,
101
+ status: warehouse_base_1.LOCATION_STATUS.EMPTY,
102
+ type: (0, typeorm_1.In)(allowedTypes)
103
+ },
104
+ order,
105
+ take: optCnt
106
+ });
107
+ }
108
+ exports.getEmptyLocations = getEmptyLocations;
109
+ async function getLevel2Location(domain, warehouse, optCnt, allowedTypes, productId) {
110
+ let sortLocation = {};
111
+ const recommended = [];
112
+ // -------- rule-for-storing-product (ordering) ----------
113
+ const orderSetting = await (0, typeorm_1.getRepository)(setting_base_1.Setting).findOne({
114
+ where: { domain, name: 'rule-for-storing-product' }
115
+ });
116
+ if (orderSetting === null || orderSetting === void 0 ? void 0 : orderSetting.value) {
117
+ try {
118
+ // e.g. {"zone":"ASC","row":"ASC","column":"ASC","shelf":"ASC"}
119
+ sortLocation = JSON.parse(orderSetting.value);
120
+ }
121
+ catch (_a) {
122
+ // ignore malformed setting, fallback to no extra ordering
123
+ }
124
+ }
125
+ // -------- main logic per allowed type ----------
126
+ for (const type of allowedTypes) {
127
+ if (recommended.length >= optCnt)
128
+ break;
129
+ // 1) OCCUPIED locations that already store this product,
130
+ // ordered by *product qty per location* ASC (minimal first).
131
+ //
132
+ // product_qty := SUM(inv.qty) WHERE inv.product = :productId AND inv.status='STORED'
133
+ const qbLoc = await (0, typeorm_1.getRepository)(warehouse_base_1.Location)
134
+ .createQueryBuilder('location')
135
+ .select('location.id', 'id')
136
+ .addSelect(`COALESCE(SUM(CASE WHEN inv.product = :productId AND inv.status = :stored THEN inv.qty ELSE 0 END), 0)`, 'product_qty')
137
+ .leftJoin(warehouse_base_1.Inventory, 'inv', 'inv.location = location.id AND inv.domain = :domain', { domain: domain.id })
138
+ .where('location.domain = :domain', { domain: domain.id })
139
+ .andWhere('location.warehouse = :warehouse', { warehouse: warehouse.id })
140
+ .andWhere('location.status = :status', { status: warehouse_base_1.LOCATION_STATUS.OCCUPIED })
141
+ .andWhere('location.type = :type', { type })
142
+ .groupBy('location.id')
143
+ // keep only locations where this product exists
144
+ .having(`COALESCE(SUM(CASE WHEN inv.product = :productId AND inv.status = :stored THEN inv.qty ELSE 0 END), 0) > 0`, { productId, stored: 'STORED' })
145
+ .orderBy('product_qty', 'ASC'); // minimal qty first
146
+ // secondary ordering: rule-for-storing-product
147
+ Object.entries(sortLocation).forEach(([key, value]) => {
148
+ qbLoc.addOrderBy(`location.${key}`, value);
149
+ });
150
+ qbLoc.limit(optCnt - recommended.length);
151
+ const rows = await qbLoc.getRawMany();
152
+ if (rows.length > 0) {
153
+ const ids = rows.map(r => r.id);
154
+ const locEntities = await (0, typeorm_1.getRepository)(warehouse_base_1.Location).find({
155
+ where: { id: (0, typeorm_1.In)(ids) }
156
+ });
157
+ const byId = new Map(locEntities.map((l) => [l.id, l]));
158
+ for (const id of ids) {
159
+ const loc = byId.get(id);
160
+ if (loc) {
161
+ recommended.push(loc);
162
+ if (recommended.length >= optCnt)
163
+ break;
164
+ }
165
+ }
166
+ }
167
+ // 2) If still not enough, suggest EMPTY locations for that type,
168
+ // ordered purely by rule-for-storing-product.
169
+ if (recommended.length < optCnt) {
170
+ const empties = await (0, typeorm_1.getRepository)(warehouse_base_1.Location).find({
171
+ where: {
172
+ domain,
173
+ warehouse,
174
+ status: warehouse_base_1.LOCATION_STATUS.EMPTY,
175
+ type
176
+ },
177
+ order: sortLocation,
178
+ take: optCnt - recommended.length
179
+ });
180
+ recommended.push(...empties);
181
+ }
182
+ }
183
+ // de-duplicate in case of weird overlaps & hard-limit to optCnt
184
+ const seen = new Set();
185
+ const unique = recommended.filter(loc => {
186
+ if (seen.has(loc.id))
187
+ return false;
188
+ seen.add(loc.id);
189
+ return true;
190
+ });
191
+ return unique.slice(0, optCnt);
192
+ }
193
+ exports.getLevel2Location = getLevel2Location;
194
+ async function recommendLocationLevel3(domain, warehouse, optCnt, inventory) {
195
+ var _a, _b, _c, _d, _e;
196
+ // -------- order (rule-for-storing-product) ----------
197
+ let sortLocation = {};
198
+ const orderSetting = await (0, typeorm_1.getRepository)(setting_base_1.Setting).findOne({
199
+ where: { domain, name: 'rule-for-storing-product' }
200
+ });
201
+ if (orderSetting === null || orderSetting === void 0 ? void 0 : orderSetting.value) {
202
+ try {
203
+ const parsed = JSON.parse(orderSetting.value);
204
+ // Expecting something like: {"zone":"ASC","row":"ASC","column":"ASC","shelf":"ASC"}
205
+ sortLocation = parsed;
206
+ }
207
+ catch (_f) {
208
+ // ignore malformed order setting
209
+ }
210
+ }
211
+ // -------- stacking limit (Min/Max depending on allowStackingOption) ----------
212
+ const stackingSetting = await (0, typeorm_1.getRepository)(setting_base_1.Setting).findOne({
213
+ where: { domain, name: 'stacking-option-limit' }
214
+ });
215
+ let minLimit = 1;
216
+ let maxLimit = 1;
217
+ if (stackingSetting === null || stackingSetting === void 0 ? void 0 : stackingSetting.value) {
218
+ const parsed = (() => {
219
+ try {
220
+ return JSON.parse(stackingSetting.value);
221
+ }
222
+ catch (e) {
223
+ throw new Error('Invalid stacking-option-limit setting: must be valid JSON');
224
+ }
225
+ })();
226
+ const parsedMin = Number((_a = parsed.Min) !== null && _a !== void 0 ? _a : parsed.min);
227
+ const parsedMax = Number((_b = parsed.Max) !== null && _b !== void 0 ? _b : parsed.max);
228
+ if (Number.isNaN(parsedMin) || Number.isNaN(parsedMax)) {
229
+ throw new Error('Invalid stacking-option-limit setting: limits must be numeric');
230
+ }
231
+ if (parsedMin > parsedMax) {
232
+ throw new Error('Kindly ensure your min limit is lower than your max limit');
233
+ }
234
+ minLimit = parsedMin;
235
+ maxLimit = parsedMax;
236
+ }
237
+ const stackingLimit = ((_c = inventory.product) === null || _c === void 0 ? void 0 : _c.allowStackingOption) ? maxLimit : minLimit;
238
+ // -------- matching keys (product/batch/expiry) ----------
239
+ const productId = (_d = inventory.product) === null || _d === void 0 ? void 0 : _d.id;
240
+ if (!productId)
241
+ return [];
242
+ // Treat both NULL and literal '-' as "no batch" if that is how your data behaves
243
+ const normalizeBatch = (v) => (v === undefined || v === null || v === '' ? null : v);
244
+ const batchIdParam = normalizeBatch(inventory.batchId);
245
+ const expDateParam = (_e = inventory.expirationDate) !== null && _e !== void 0 ? _e : null;
246
+ const allowedTypesInOrder = [warehouse_base_1.LOCATION_TYPE.STORAGE, warehouse_base_1.LOCATION_TYPE.SHELF, warehouse_base_1.LOCATION_TYPE.FLOOR];
247
+ const recommended = [];
248
+ for (const type of allowedTypesInOrder) {
249
+ if (recommended.length >= optCnt)
250
+ break;
251
+ // ---------------- OCCUPIED, HOMOGENEOUS, UNDER CAPACITY ----------------
252
+ // Single join to inventories, then conditional aggregates:
253
+ // total_cnt = SUM(inv.id is not null)
254
+ // match_cnt = SUM(inv matches product/batch/expiry)
255
+ const matchPreds = [
256
+ 'inv.status = :stored',
257
+ 'inv.product = :productId',
258
+ batchIdParam == null ? 'inv.batchId IS NULL' : 'inv.batchId = :batchId',
259
+ expDateParam == null ? 'inv.expirationDate IS NULL' : 'inv.expirationDate = :expDate'
260
+ ];
261
+ const matchParams = {
262
+ stored: 'STORED',
263
+ productId
264
+ };
265
+ if (batchIdParam != null)
266
+ matchParams.batchId = batchIdParam;
267
+ if (expDateParam != null)
268
+ matchParams.expDate = expDateParam;
269
+ const qbLoc = await (0, typeorm_1.getRepository)(warehouse_base_1.Location)
270
+ .createQueryBuilder('location')
271
+ .select('location.id', 'id')
272
+ .leftJoin(warehouse_base_1.Inventory, 'inv', 'inv.location = location.id AND inv.status = :stored', { stored: 'STORED' })
273
+ .where('location.domain = :domain', { domain: domain.id })
274
+ .andWhere('location.warehouse = :warehouse', { warehouse: warehouse.id })
275
+ .andWhere('location.status = :status', { status: warehouse_base_1.LOCATION_STATUS.OCCUPIED })
276
+ .andWhere('location.type = :type', { type })
277
+ .groupBy('location.id')
278
+ // homogeneous: total_cnt == match_cnt
279
+ .having(`
280
+ SUM(CASE WHEN inv.id IS NOT NULL THEN 1 ELSE 0 END)
281
+ =
282
+ SUM(CASE WHEN ${matchPreds.join(' AND ')} THEN 1 ELSE 0 END)
283
+ `, matchParams)
284
+ // under capacity
285
+ .andHaving(`
286
+ SUM(CASE WHEN inv.id IS NOT NULL THEN 1 ELSE 0 END) < :stackLimit
287
+ `, { stackLimit: stackingLimit })
288
+ // prefer topping up partially-filled first
289
+ .orderBy('SUM(CASE WHEN inv.id IS NOT NULL THEN 1 ELSE 0 END)', 'DESC');
290
+ // secondary sort per rule-for-storing-product
291
+ Object.entries(sortLocation).forEach(([key, value]) => {
292
+ qbLoc.addOrderBy(`location.${key}`, value);
293
+ });
294
+ // Only fetch as many as we still need
295
+ qbLoc.limit(optCnt - recommended.length);
296
+ const locIdsRaw = await qbLoc.getRawMany();
297
+ const occupiedLocationIds = locIdsRaw.map(r => r.id);
298
+ if (occupiedLocationIds.length > 0) {
299
+ const occupiedLocations = await (0, typeorm_1.getRepository)(warehouse_base_1.Location).find({
300
+ where: { id: (0, typeorm_1.In)(occupiedLocationIds) }
301
+ });
302
+ // keep the order from occupiedLocationIds
303
+ const byId = new Map(occupiedLocations.map((l) => [l.id, l]));
304
+ for (const id of occupiedLocationIds) {
305
+ const loc = byId.get(id);
306
+ if (loc) {
307
+ recommended.push(loc);
308
+ if (recommended.length >= optCnt)
309
+ break;
310
+ }
311
+ }
312
+ }
313
+ // ---------------- EMPTY fallback (same type, ordered by rule) ----------------
314
+ if (recommended.length < optCnt) {
315
+ const emptyLocations = await (0, typeorm_1.getRepository)(warehouse_base_1.Location).find({
316
+ where: {
317
+ domain,
318
+ warehouse,
319
+ status: warehouse_base_1.LOCATION_STATUS.EMPTY,
320
+ type
321
+ },
322
+ order: sortLocation,
323
+ take: optCnt - recommended.length
324
+ });
325
+ recommended.push(...emptyLocations);
326
+ }
327
+ }
328
+ return recommended.slice(0, optCnt);
329
+ }
330
+ exports.recommendLocationLevel3 = recommendLocationLevel3;
331
+ //# sourceMappingURL=recommend-putaway-location.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recommend-putaway-location.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/worksheet/recommend-putaway-location.ts"],"names":[],"mappings":"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"}