@things-factory/worksheet-base 4.3.753 → 4.3.755
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/controllers/outbound/picking-worksheet-controller.js +97 -27
- package/dist-server/controllers/outbound/picking-worksheet-controller.js.map +1 -1
- package/dist-server/controllers/outbound/sorting-worksheet-controller.js +117 -24
- package/dist-server/controllers/outbound/sorting-worksheet-controller.js.map +1 -1
- package/dist-server/controllers/render-ro-do.js +324 -96
- package/dist-server/controllers/render-ro-do.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/find-sorting-release-orders-by-task-no.js +35 -1
- package/dist-server/graphql/resolvers/worksheet/find-sorting-release-orders-by-task-no.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/index.js +1 -1
- package/dist-server/graphql/resolvers/worksheet/index.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/loading/index.js +3 -1
- package/dist-server/graphql/resolvers/worksheet/loading/index.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/loading/validate-qc-seals.js +79 -0
- package/dist-server/graphql/resolvers/worksheet/loading/validate-qc-seals.js.map +1 -0
- package/dist-server/graphql/types/worksheet/index.js +5 -1
- package/dist-server/graphql/types/worksheet/index.js.map +1 -1
- package/dist-server/graphql/types/worksheet/validate-qc-seals-result.js +12 -0
- package/dist-server/graphql/types/worksheet/validate-qc-seals-result.js.map +1 -0
- package/dist-server/graphql/types/worksheet/worksheet-info.js +1 -0
- package/dist-server/graphql/types/worksheet/worksheet-info.js.map +1 -1
- package/package.json +21 -21
- package/server/controllers/outbound/picking-worksheet-controller.ts +105 -31
- package/server/controllers/outbound/sorting-worksheet-controller.ts +137 -25
- package/server/controllers/render-ro-do.ts +378 -136
- package/server/graphql/resolvers/worksheet/find-sorting-release-orders-by-task-no.ts +49 -3
- package/server/graphql/resolvers/worksheet/index.ts +3 -2
- package/server/graphql/resolvers/worksheet/loading/index.ts +5 -0
- package/server/graphql/resolvers/worksheet/loading/validate-qc-seals.ts +91 -0
- package/server/graphql/types/worksheet/index.ts +5 -1
- package/server/graphql/types/worksheet/validate-qc-seals-result.ts +9 -0
- package/server/graphql/types/worksheet/worksheet-info.ts +1 -0
package/dist-server/graphql/resolvers/worksheet/find-sorting-release-orders-by-task-no.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"find-sorting-release-orders-by-task-no.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/worksheet/find-sorting-release-orders-by-task-no.ts"],"names":[],"mappings":";;;AAAA,qCAA+D;AAE/D,2DAKmC;AACnC,iDAA8C;AAC9C,yDAAgD;AAChD,mEAAyD;AACzD,uDAAkE;AAClE,+DAAsE;AAEtE,kDAAqE;AACrE,gDAA0G;AAE7F,QAAA,wCAAwC,GAAG;IACtD,KAAK,CAAC,gCAAgC,CAAC,CAAM,EAAE,EAAE,MAAM,EAAE,EAAE,OAAY;;QACrE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAsD,OAAO,CAAC,KAAK,CAAA;QAE7F,IAAI,mBAAmB,GAAG,IAAI,CAAA;QAC9B,IAAI,EAAE,GAAG,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"find-sorting-release-orders-by-task-no.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/worksheet/find-sorting-release-orders-by-task-no.ts"],"names":[],"mappings":";;;AAAA,qCAA+D;AAE/D,2DAKmC;AACnC,iDAA8C;AAC9C,yDAAgD;AAChD,mEAAyD;AACzD,uDAAkE;AAClE,+DAAsE;AAEtE,kDAAqE;AACrE,gDAA0G;AAE7F,QAAA,wCAAwC,GAAG;IACtD,KAAK,CAAC,gCAAgC,CAAC,CAAM,EAAE,EAAE,MAAM,EAAE,EAAE,OAAY;;QACrE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAsD,OAAO,CAAC,KAAK,CAAA;QAE7F,IAAI,mBAAmB,GAAG,IAAI,CAAA;QAC9B,IAAI,EAAE,GAAG,MAAM,EAAE;aACd,aAAa,CAAC,oBAAe,CAAC;aAC9B,kBAAkB,CAAC,IAAI,CAAC;aACxB,SAAS,CAAC,SAAS,EAAE,mBAAmB,CAAC;aACzC,SAAS,CAAC,WAAW,EAAE,qBAAqB,CAAC;aAC7C,SAAS,CAAC,mBAAmB,EAAE,IAAI,EAAE,yBAAyB,CAAC;aAC/D,SAAS,CAAC,mBAAmB,EAAE,IAAI,EAAE,yDAAyD,CAAC;aAC/F,SAAS,CAAC,eAAe,EAAE,IAAI,EAAE,4BAA4B,CAAC;aAC9D,KAAK,CAAC,0BAA0B,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;aAC1D,QAAQ,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;aAC7C,QAAQ,CAAC,6BAA6B,EAAE;YACvC,QAAQ,EAAE,CAAC,yBAAY,CAAC,aAAa,EAAE,yBAAY,CAAC,OAAO,EAAE,yBAAY,CAAC,OAAO,EAAE,yBAAY,CAAC,IAAI,CAAC;SACtG,CAAC;aACD,QAAQ,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,0BAAc,CAAC,OAAO,EAAE,CAAC;aAC7D,SAAS,EAAE,CAAA;QAEd,IAAI,EAAE,EAAE;YACN,IAAI,EAAE,CAAC,mBAAmB,IAAI,SAAS,IAAI,EAAE,CAAC,mBAAmB,IAAI,MAAM,EAAE;gBAC3E,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;aAC/C;YAED,mBAAmB,GAAG,EAAE,CAAC,iBAAiB,CAAA;YAC1C,MAAM,GAAG,EAAE,CAAC,UAAU,CAAA;SACvB;QAED,IAAI,IAAI,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,oBAAe,CAAC,CAAC,OAAO,CAAC;YACzD,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,0BAAc,CAAC,OAAO,EAAE,MAAM,EAAE;YACvD,SAAS,EAAE,CAAC,UAAU,EAAE,iBAAiB,EAAE,kBAAkB,CAAC;SAC/D,CAAC,CAAA;QAEF,yBAAyB;QACzB,IAAI,CAAC,IAAI,EAAE;YACT,MAAM,WAAW,GAAa,MAAM,EAAE,CAAC,aAAa,CAAC,yBAAQ,CAAC,CAAC,OAAO,CAAC;gBACrE,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE;aAChC,CAAC,CAAA;YAEF,IAAI,WAAW,EAAE;gBACf,MAAM,EAAE,GAA6C,EAAE;qBACpD,aAAa,CAAC,2BAAoB,CAAC;qBACnC,kBAAkB,CAAC,gBAAgB,CAAC,CAAA;gBAEvC,EAAE,CAAC,kBAAkB,CAAC,4BAA4B,EAAE,aAAa,CAAC;qBAC/D,kBAAkB,CACjB,YAAY,EACZ,IAAI,EACJ,uEAAuE,CACxE;qBACA,kBAAkB,CAAC,YAAY,EAAE,KAAK,EAAE,mDAAmD,CAAC;qBAC5F,kBAAkB,CAAC,sBAAsB,EAAE,UAAU,CAAC;qBACtD,kBAAkB,CAAC,iBAAiB,EAAE,QAAQ,CAAC;qBAC/C,KAAK,CAAC,sCAAsC,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;qBACtE,QAAQ,CAAC,qDAAqD,EAAE;oBAC/D,oBAAoB,EAAE,CAAC,mCAAsB,CAAC,aAAa,EAAE,mCAAsB,CAAC,OAAO,CAAC;iBAC7F,CAAC;qBACD,QAAQ,CAAC,8CAA8C,EAAE,EAAE,UAAU,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC;qBACxF,QAAQ,CAAC,sCAAsC,EAAE;oBAChD,QAAQ,EAAE,CAAC,yBAAY,CAAC,aAAa,EAAE,yBAAY,CAAC,OAAO,CAAC;iBAC7D,CAAC,CAAA;gBAEJ,MAAM,mBAAmB,GAAG,MAAM,EAAE,CAAC,SAAS,EAAE,CAAA;gBAChD,IAAI,mBAAmB,aAAnB,mBAAmB,uBAAnB,mBAAmB,CAAE,cAAc,EAAE;oBACvC,MAAM,GAAG,mBAAmB,CAAC,UAAU,CAAA;oBACvC,IAAI,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,oBAAe,CAAC,CAAC,OAAO,CAAC;wBACrD,KAAK,EAAE;4BACL,MAAM;4BACN,MAAM,EAAE,IAAA,YAAE,EAAC,CAAC,4BAAgB,CAAC,WAAW,EAAE,4BAAgB,CAAC,SAAS,CAAC,CAAC;4BACtE,IAAI,EAAE,0BAAc,CAAC,OAAO;4BAC5B,MAAM;yBACP;wBACD,SAAS,EAAE,CAAC,kBAAkB,CAAC;qBAChC,CAAC,CAAA;iBACH;qBAAM;oBACL,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;iBAC5D;aACF;SACF;QAED,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;QAErD,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa,EAAE;YACjC,MAAM,aAAa,GAA+B,IAAI,wCAA0B,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;YAElG,MAAM,8BAA8B,GAAY,MAAM,EAAE,CAAC,aAAa,CAAC,sBAAO,CAAC,CAAC,OAAO,CAAC;gBACtF,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,0CAA0C,EAAE;aACjG,CAAC,CAAA;YAEF,MAAM,4CAA4C,GAAmB,MAAM,EAAE;iBAC1E,aAAa,CAAC,6BAAc,CAAC;iBAC7B,OAAO,CAAC;gBACP,KAAK,EAAE;oBACL,OAAO,EAAE,8BAA8B;oBACvC,MAAM,EAAE,MAAM;oBACd,aAAa,EAAE,MAAA,IAAI,CAAC,QAAQ,0CAAE,MAAM;iBACrC;aACF,CAAC,CAAA;YAEJ,IAAI,8BAA8B,IAAI,SAAS,IAAI,8BAA8B,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,MAAM,EAAE;gBAC/G,IAAI,4CAA4C,IAAI,SAAS,EAAE;oBAC7D,IAAI,4CAA4C,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,MAAM;wBAC5E,MAAM,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAA;iBACxE;qBAAM;oBACL,MAAM,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAA;iBACtE;aACF;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAA;aACzF;SACF;QAED,MAAM,EAAE,GAAwC,EAAE;aAC/C,aAAa,CAAC,oBAAe,CAAC;aAC9B,kBAAkB,CAAC,IAAI,CAAC;aACxB,MAAM,CAAC,aAAa,CAAC;aACrB,SAAS,CAAC,iBAAiB,CAAC;aAC5B,SAAS,CAAC,qBAAqB,CAAC;aAChC,SAAS,CAAC,uBAAuB,CAAC;aAClC,SAAS,CAAC,qBAAqB,CAAC;aAChC,SAAS,CAAC,2BAA2B,CAAC;aACtC,SAAS,CAAC,4CAA4C,CAAC;aACvD,SAAS,CAAC,6CAA6C,CAAC;aACxD,SAAS,CAAC,6CAA6C,CAAC;aACxD,SAAS,CAAC,6CAA6C,CAAC;aACxD,SAAS,CAAC,6CAA6C,CAAC;aACxD,SAAS,CAAC,6CAA6C,CAAC;aACxD,SAAS,CAAC,6BAA6B,CAAC;aACxC,SAAS,CAAC,cAAM,EAAE,QAAQ,EAAE,0BAA0B,CAAC;aACvD,SAAS,CAAC,0BAAqB,EAAE,KAAK,EAAE,0BAA0B,CAAC;aACnE,SAAS,CAAC,2BAAoB,EAAE,IAAI,EAAE,iCAAiC,CAAC;aACxE,SAAS,CAAC,wBAAiB,EAAE,IAAI,EAAE,4BAA4B,CAAC;aAChE,QAAQ,CAAC,gBAAI,EAAE,MAAM,EAAE,2BAA2B,CAAC;aACnD,KAAK,CAAC,uBAAuB,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;aACvD,QAAQ,CAAC,qBAAqB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;aACnD,QAAQ,CAAC,0BAA0B,EAAE,EAAE,aAAa,EAAE,0BAAc,CAAC,OAAO,EAAE,CAAC;aAC/E,QAAQ,CAAC,8BAA8B,EAAE,EAAE,eAAe,EAAE,4BAAgB,CAAC,SAAS,EAAE,CAAC;aACzF,OAAO,CAAC,OAAO,CAAC;aAChB,UAAU,CAAC,SAAS,CAAC;aACrB,UAAU,CAAC,WAAW,CAAC;aACvB,UAAU,CAAC,WAAW,CAAC;aACvB,OAAO,CAAC,cAAc,EAAE,KAAK,CAAC,CAAA;QAEjC,MAAM,YAAY,GAAwB,MAAM,EAAE,CAAC,UAAU,EAAE,CAAA;QAE/D,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;YAC3B,0EAA0E;YAC1E,MAAM,cAAc,GAAG,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;YACpD,MAAM,YAAY,GAAG,MAAM,EAAE;iBAC1B,aAAa,CAAC,2BAAoB,CAAC;iBACnC,kBAAkB,CAAC,gBAAgB,CAAC;iBACpC,SAAS,CAAC,0BAAqB,EAAE,KAAK,EAAE,6CAA6C,CAAC;iBACtF,SAAS,CAAC,oBAAe,EAAE,IAAI,EAAE,0BAA0B,CAAC;iBAC5D,MAAM,CAAC,gCAAgC,EAAE,eAAe,CAAC;iBACzD,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC;iBAC9B,SAAS,CACR,uFAAuF,EACvF,WAAW,CACZ;iBACA,KAAK,CAAC,wDAAwD,EAAE,EAAE,cAAc,EAAE,CAAC;iBACnF,QAAQ,CAAC,sCAAsC,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;iBACzE,QAAQ,CAAC,qBAAqB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;iBACnD,QAAQ,CAAC,0BAA0B,EAAE,EAAE,aAAa,EAAE,0BAAc,CAAC,OAAO,EAAE,CAAC;iBAC/E,QAAQ,CAAC,8BAA8B,EAAE,EAAE,eAAe,EAAE,4BAAgB,CAAC,SAAS,EAAE,CAAC;iBACzF,OAAO,CAAC,gCAAgC,CAAC;iBACzC,UAAU,EAAE,CAAA;YAEf,+BAA+B;YAC/B,MAAM,UAAU,GAAG,IAAI,GAAG,CACxB,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpB,CAAC,CAAC,aAAa;gBACf,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;aACzE,CAAC,CACH,CAAA;YAED,yCAAyC;YACzC,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE;gBACtC,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAA;gBAC3E,WAAW,CAAC,YAAY,CAAC,GAAG;oBAC1B,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,OAAO,EAAE,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,SAAS;iBACzC,CAAA;aACF;SACF;QAED,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAA;IACtD,CAAC;CACF,CAAA"}
|
|
@@ -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_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);
|
|
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(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), loading_1.Query);
|
|
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,
|
|
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,uCAAgF;AAChF,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,yiBACb,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,GACrC,eAAY,EAChB;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,9 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Mutations = void 0;
|
|
3
|
+
exports.Query = exports.Mutations = void 0;
|
|
4
4
|
const activate_loading_1 = require("./activate-loading");
|
|
5
5
|
const loading_1 = require("./loading");
|
|
6
6
|
const undo_loading_1 = require("./undo-loading");
|
|
7
7
|
const complete_loading_1 = require("./complete-loading");
|
|
8
|
+
const validate_qc_seals_1 = require("./validate-qc-seals");
|
|
8
9
|
exports.Mutations = Object.assign(Object.assign(Object.assign(Object.assign({}, activate_loading_1.activateLoadingResolver), loading_1.loadingResolver), undo_loading_1.undoLoadingResolver), complete_loading_1.completeLoadingResolver);
|
|
10
|
+
exports.Query = Object.assign({}, validate_qc_seals_1.validateQcSealsResolver);
|
|
9
11
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/loading/index.ts"],"names":[],"mappings":";;;AAAA,yDAA4D;AAC5D,uCAA2C;AAC3C,iDAAoD;AACpD,yDAA4D;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/loading/index.ts"],"names":[],"mappings":";;;AAAA,yDAA4D;AAC5D,uCAA2C;AAC3C,iDAAoD;AACpD,yDAA4D;AAC5D,2DAA6D;AAEhD,QAAA,SAAS,+DACjB,0CAAuB,GACvB,yBAAe,GACf,kCAAmB,GACnB,0CAAuB,EAC3B;AAEY,QAAA,KAAK,qBACb,2CAAuB,EAC3B"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateQcSealsResolver = void 0;
|
|
4
|
+
const typeorm_1 = require("typeorm");
|
|
5
|
+
const sales_base_1 = require("@things-factory/sales-base");
|
|
6
|
+
const setting_base_1 = require("@things-factory/setting-base");
|
|
7
|
+
exports.validateQcSealsResolver = {
|
|
8
|
+
async validateQcSeals(_, { releaseGoodNo }, context) {
|
|
9
|
+
var _a;
|
|
10
|
+
const { tx, domain, user } = context.state;
|
|
11
|
+
try {
|
|
12
|
+
const releaseGood = await tx.getRepository(sales_base_1.ReleaseGood).findOne({
|
|
13
|
+
where: { domain, name: releaseGoodNo },
|
|
14
|
+
relations: ['bizplace', 'bizplace.domain']
|
|
15
|
+
});
|
|
16
|
+
if (!releaseGood) {
|
|
17
|
+
return { valid: false, error: 'Release good not found', minimumSealNumber: 0 };
|
|
18
|
+
}
|
|
19
|
+
// Check enable-tote-scanning setting
|
|
20
|
+
let enableToteScanningSetting = await tx.getRepository(setting_base_1.Setting).findOne({
|
|
21
|
+
where: {
|
|
22
|
+
domain: domain,
|
|
23
|
+
category: 'id-rule',
|
|
24
|
+
name: 'enable-tote-scanning'
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
// Check minimum-seal-number setting (needed for banner display)
|
|
28
|
+
let minimumSealNumberSetting = await tx.getRepository(setting_base_1.Setting).findOne({
|
|
29
|
+
where: {
|
|
30
|
+
domain: domain,
|
|
31
|
+
category: 'id-rule',
|
|
32
|
+
name: 'minimum-seal-number'
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
const minimumSealNumber = parseInt((minimumSealNumberSetting === null || minimumSealNumberSetting === void 0 ? void 0 : minimumSealNumberSetting.value) || '0', 10);
|
|
36
|
+
if (enableToteScanningSetting) {
|
|
37
|
+
// enable-tote-scanning is numeric: 0 = disabled, >= 1 = enabled
|
|
38
|
+
const enableToteScanningValue = parseInt(enableToteScanningSetting.value || '0', 10);
|
|
39
|
+
if (enableToteScanningValue >= 1) {
|
|
40
|
+
// Check if there are unsealed totes (closedDate is null)
|
|
41
|
+
const foundNotSealedOrderTote = await tx
|
|
42
|
+
.getRepository(sales_base_1.OrderTote)
|
|
43
|
+
.findOne({ where: { releaseGood, closedDate: (0, typeorm_1.IsNull)() } });
|
|
44
|
+
if (foundNotSealedOrderTote) {
|
|
45
|
+
return {
|
|
46
|
+
valid: false,
|
|
47
|
+
error: `Please seal the tote(s) before proceeding. Minimum ${minimumSealNumber} seal(s) required.`,
|
|
48
|
+
minimumSealNumber
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
// If minimum-seal-number > 0, validate seal counts per tote
|
|
52
|
+
if (minimumSealNumber > 0) {
|
|
53
|
+
// Get all order totes for this release good
|
|
54
|
+
const orderTotes = await tx.getRepository(sales_base_1.OrderTote).find({
|
|
55
|
+
where: { releaseGood },
|
|
56
|
+
relations: ['orderToteSeals']
|
|
57
|
+
});
|
|
58
|
+
// Validate each tote has at least minimum-seal-number seals
|
|
59
|
+
for (const orderTote of orderTotes) {
|
|
60
|
+
const sealCount = ((_a = orderTote.orderToteSeals) === null || _a === void 0 ? void 0 : _a.length) || 0;
|
|
61
|
+
if (sealCount < minimumSealNumber) {
|
|
62
|
+
return {
|
|
63
|
+
valid: false,
|
|
64
|
+
error: `Tote ${orderTote.name} has ${sealCount} seal(s), but minimum ${minimumSealNumber} seal(s) required`,
|
|
65
|
+
minimumSealNumber
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return { valid: true, minimumSealNumber };
|
|
73
|
+
}
|
|
74
|
+
catch (error) {
|
|
75
|
+
return { valid: false, error: error.message || 'Validation failed', minimumSealNumber: 0 };
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
//# sourceMappingURL=validate-qc-seals.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate-qc-seals.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/loading/validate-qc-seals.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,6 +25,7 @@ const product_approval_1 = require("./product-approval");
|
|
|
25
25
|
const release_good_worksheet_1 = require("./release-good-worksheet");
|
|
26
26
|
const return_order_worksheet_1 = require("./return-order-worksheet");
|
|
27
27
|
const sellercraft_document_1 = require("./sellercraft-document");
|
|
28
|
+
const validate_qc_seals_result_1 = require("./validate-qc-seals-result");
|
|
28
29
|
const vas_order_worksheet_1 = require("./vas-order-worksheet");
|
|
29
30
|
const webspert_document_1 = require("./webspert-document");
|
|
30
31
|
const worksheet_1 = require("./worksheet");
|
|
@@ -865,6 +866,8 @@ exports.Query = `
|
|
|
865
866
|
findSortingReleaseOrdersByTaskNo(taskNo: String!): FindReleaseOrdersByTaskNo @privilege(category: "worksheet", privilege: "query") @transaction
|
|
866
867
|
|
|
867
868
|
findReleaseOrdersByTaskNo(taskNo: String!): FindReleaseOrdersByTaskNo @privilege(category: "worksheet", privilege: "query") @transaction
|
|
869
|
+
|
|
870
|
+
validateQcSeals(releaseGoodNo: String!): ValidateQcSealsResult @privilege(category: "worksheet", privilege: "query") @transaction
|
|
868
871
|
`;
|
|
869
872
|
exports.Types = [
|
|
870
873
|
worksheet_1.Worksheet,
|
|
@@ -898,6 +901,7 @@ exports.Types = [
|
|
|
898
901
|
delivery_order_ro_1.DeliveryOrderRO,
|
|
899
902
|
batch_pick_worksheet_info_1.GenerateBatchPickInfo,
|
|
900
903
|
multiple_release_good_worksheet_1.MultipleReleaseGoodWorksheet,
|
|
901
|
-
location_filter_1.LocationFilter
|
|
904
|
+
location_filter_1.LocationFilter,
|
|
905
|
+
validate_qc_seals_result_1.ValidateQcSealsResult
|
|
902
906
|
];
|
|
903
907
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../server/graphql/types/worksheet/index.ts"],"names":[],"mappings":";;;AAAA,yEAAmE;AACnE,2EAAmE;AACnE,6DAAuD;AACvD,mEAA6D;AAC7D,mDAA8C;AAC9C,+DAAyD;AACzD,2DAAqD;AACrD,6DAAwD;AACxD,+DAA0D;AAC1D,qFAA4E;AAC5E,+DAAyD;AACzD,2EAAqE;AACrE,uEAAiE;AACjE,uDAAkD;AAClD,uFAAgF;AAChF,iFAA0E;AAC1E,mDAA8C;AAC9C,iDAA4C;AAC5C,2EAAqE;AACrE,uDAAkD;AAClD,yDAAoD;AACpD,qEAA+D;AAC/D,qEAA+D;AAC/D,iEAA4D;AAC5D,+DAAyD;AACzD,2DAAsD;AACtD,2CAAuC;AACvC,mEAA6D;AAC7D,qDAAgD;AAChD,qDAAgD;AAChD,uDAAkD;AAClD,2EAAqE;AAExD,QAAA,QAAQ,GAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAupBnC,CAAA;AAEU,QAAA,KAAK,GAAiB
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../server/graphql/types/worksheet/index.ts"],"names":[],"mappings":";;;AAAA,yEAAmE;AACnE,2EAAmE;AACnE,6DAAuD;AACvD,mEAA6D;AAC7D,mDAA8C;AAC9C,+DAAyD;AACzD,2DAAqD;AACrD,6DAAwD;AACxD,+DAA0D;AAC1D,qFAA4E;AAC5E,+DAAyD;AACzD,2EAAqE;AACrE,uEAAiE;AACjE,uDAAkD;AAClD,uFAAgF;AAChF,iFAA0E;AAC1E,mDAA8C;AAC9C,iDAA4C;AAC5C,2EAAqE;AACrE,uDAAkD;AAClD,yDAAoD;AACpD,qEAA+D;AAC/D,qEAA+D;AAC/D,iEAA4D;AAC5D,yEAAkE;AAClE,+DAAyD;AACzD,2DAAsD;AACtD,2CAAuC;AACvC,mEAA6D;AAC7D,qDAAgD;AAChD,qDAAgD;AAChD,uDAAkD;AAClD,2EAAqE;AAExD,QAAA,QAAQ,GAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAupBnC,CAAA;AAEU,QAAA,KAAK,GAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0KlC,CAAA;AAEY,QAAA,KAAK,GAAiB;IACjC,qBAAS;IACT,0CAAmB;IACnB,gCAAc;IACd,oCAAgB;IAChB,4BAAY;IACZ,gCAAc;IACd,8BAAa;IACb,iDAAsB;IACtB,6CAAoB;IACpB,2CAAmB;IACnB,6CAAoB;IACpB,mDAAuB;IACvB,uCAAiB;IACjB,uCAAiB;IACjB,qCAAgB;IAChB,uCAAiB;IACjB,8BAAa;IACb,4BAAY;IACZ,sCAAiB;IACjB,2CAAmB;IACnB,0BAAW;IACX,wCAAkB;IAClB,+CAAqB;IACrB,kCAAe;IACf,mDAAuB;IACvB,mDAAuB;IACvB,wDAAyB;IACzB,0DAAyB;IACzB,mCAAe;IACf,iDAAqB;IACrB,8DAA4B;IAC5B,gCAAc;IACd,gDAAqB;CACtB,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ValidateQcSealsResult = void 0;
|
|
4
|
+
const apollo_server_koa_1 = require("apollo-server-koa");
|
|
5
|
+
exports.ValidateQcSealsResult = (0, apollo_server_koa_1.gql) `
|
|
6
|
+
type ValidateQcSealsResult {
|
|
7
|
+
valid: Boolean!
|
|
8
|
+
error: String
|
|
9
|
+
minimumSealNumber: Int
|
|
10
|
+
}
|
|
11
|
+
`;
|
|
12
|
+
//# sourceMappingURL=validate-qc-seals-result.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate-qc-seals-result.js","sourceRoot":"","sources":["../../../../server/graphql/types/worksheet/validate-qc-seals-result.ts"],"names":[],"mappings":";;;AAAA,yDAAuC;AAE1B,QAAA,qBAAqB,GAAG,IAAA,uBAAG,EAAA;;;;;;CAMvC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worksheet-info.js","sourceRoot":"","sources":["../../../../server/graphql/types/worksheet/worksheet-info.ts"],"names":[],"mappings":";;;AAAA,yDAAuC;AAE1B,QAAA,aAAa,GAAG,IAAA,uBAAG,EAAA
|
|
1
|
+
{"version":3,"file":"worksheet-info.js","sourceRoot":"","sources":["../../../../server/graphql/types/worksheet/worksheet-info.ts"],"names":[],"mappings":";;;AAAA,yDAAuC;AAE1B,QAAA,aAAa,GAAG,IAAA,uBAAG,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0C/B,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@things-factory/worksheet-base",
|
|
3
|
-
"version": "4.3.
|
|
3
|
+
"version": "4.3.755",
|
|
4
4
|
"main": "dist-server/index.js",
|
|
5
5
|
"browser": "client/index.js",
|
|
6
6
|
"things-factory": true,
|
|
@@ -23,28 +23,28 @@
|
|
|
23
23
|
"migration:create": "node ../../node_modules/typeorm/cli.js migration:create -d ./server/migrations"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@things-factory/auth-base": "^4.3.
|
|
27
|
-
"@things-factory/biz-base": "^4.3.
|
|
28
|
-
"@things-factory/document-template-base": "^4.3.
|
|
29
|
-
"@things-factory/id-rule-base": "^4.3.
|
|
30
|
-
"@things-factory/integration-accounting": "^4.3.
|
|
31
|
-
"@things-factory/integration-base": "^4.3.
|
|
32
|
-
"@things-factory/integration-lmd": "^4.3.
|
|
33
|
-
"@things-factory/integration-marketplace": "^4.3.
|
|
34
|
-
"@things-factory/integration-powrup": "^4.3.
|
|
35
|
-
"@things-factory/integration-sellercraft": "^4.3.
|
|
36
|
-
"@things-factory/integration-sftp": "^4.3.
|
|
37
|
-
"@things-factory/marketplace-base": "^4.3.
|
|
38
|
-
"@things-factory/notification": "^4.3.
|
|
39
|
-
"@things-factory/sales-base": "^4.3.
|
|
40
|
-
"@things-factory/setting-base": "^4.3.
|
|
41
|
-
"@things-factory/shell": "^4.3.
|
|
42
|
-
"@things-factory/transport-base": "^4.3.
|
|
43
|
-
"@things-factory/warehouse-base": "^4.3.
|
|
44
|
-
"@things-factory/worksheet-ui": "^4.3.
|
|
26
|
+
"@things-factory/auth-base": "^4.3.755",
|
|
27
|
+
"@things-factory/biz-base": "^4.3.755",
|
|
28
|
+
"@things-factory/document-template-base": "^4.3.755",
|
|
29
|
+
"@things-factory/id-rule-base": "^4.3.755",
|
|
30
|
+
"@things-factory/integration-accounting": "^4.3.755",
|
|
31
|
+
"@things-factory/integration-base": "^4.3.755",
|
|
32
|
+
"@things-factory/integration-lmd": "^4.3.755",
|
|
33
|
+
"@things-factory/integration-marketplace": "^4.3.755",
|
|
34
|
+
"@things-factory/integration-powrup": "^4.3.755",
|
|
35
|
+
"@things-factory/integration-sellercraft": "^4.3.755",
|
|
36
|
+
"@things-factory/integration-sftp": "^4.3.755",
|
|
37
|
+
"@things-factory/marketplace-base": "^4.3.755",
|
|
38
|
+
"@things-factory/notification": "^4.3.755",
|
|
39
|
+
"@things-factory/sales-base": "^4.3.755",
|
|
40
|
+
"@things-factory/setting-base": "^4.3.755",
|
|
41
|
+
"@things-factory/shell": "^4.3.755",
|
|
42
|
+
"@things-factory/transport-base": "^4.3.755",
|
|
43
|
+
"@things-factory/warehouse-base": "^4.3.755",
|
|
44
|
+
"@things-factory/worksheet-ui": "^4.3.755",
|
|
45
45
|
"jspdf": "2.5.1",
|
|
46
46
|
"puppeteer": "21.0.3",
|
|
47
47
|
"uuid": "^9.0.0"
|
|
48
48
|
},
|
|
49
|
-
"gitHead": "
|
|
49
|
+
"gitHead": "7cd08ee86623f4ab057bd7bbc63f0f2d1be6659b"
|
|
50
50
|
}
|
|
@@ -1730,12 +1730,59 @@ export class PickingWorksheetController extends VasWorksheetController {
|
|
|
1730
1730
|
}
|
|
1731
1731
|
|
|
1732
1732
|
async completePicking(releaseGood: ReleaseGood, worksheet: Worksheet, inventories: Inventory[]): Promise<any> {
|
|
1733
|
-
|
|
1734
|
-
|
|
1735
|
-
|
|
1733
|
+
// Check enable-tote-scanning setting
|
|
1734
|
+
let enableToteScanningSetting: Setting = await this.trxMgr.getRepository(Setting).findOne({
|
|
1735
|
+
where: {
|
|
1736
|
+
domain: this.domain,
|
|
1737
|
+
category: 'id-rule',
|
|
1738
|
+
name: 'enable-tote-scanning'
|
|
1739
|
+
}
|
|
1740
|
+
})
|
|
1741
|
+
|
|
1742
|
+
if (enableToteScanningSetting) {
|
|
1743
|
+
// enable-tote-scanning is numeric: 0 = disabled, >= 1 = enabled
|
|
1744
|
+
const enableToteScanningValue = parseInt(enableToteScanningSetting.value || '0', 10)
|
|
1745
|
+
|
|
1746
|
+
if (enableToteScanningValue >= 1) {
|
|
1747
|
+
// Check minimum-seal-number setting
|
|
1748
|
+
let minimumSealNumberSetting: Setting = await this.trxMgr.getRepository(Setting).findOne({
|
|
1749
|
+
where: {
|
|
1750
|
+
domain: this.domain,
|
|
1751
|
+
category: 'id-rule',
|
|
1752
|
+
name: 'minimum-seal-number'
|
|
1753
|
+
}
|
|
1754
|
+
})
|
|
1736
1755
|
|
|
1737
|
-
|
|
1738
|
-
|
|
1756
|
+
const minimumSealNumber = parseInt(minimumSealNumberSetting?.value || '0', 10)
|
|
1757
|
+
|
|
1758
|
+
// Check if there are unsealed totes (closedDate is null)
|
|
1759
|
+
const foundNotSealedOrderTote = await this.trxMgr
|
|
1760
|
+
.getRepository(OrderTote)
|
|
1761
|
+
.findOne({ where: { releaseGood, closedDate: IsNull() } })
|
|
1762
|
+
|
|
1763
|
+
if (foundNotSealedOrderTote) {
|
|
1764
|
+
throw new Error('Please seal the tote(s) before completing')
|
|
1765
|
+
}
|
|
1766
|
+
|
|
1767
|
+
// If minimum-seal-number > 0, validate seal counts per tote
|
|
1768
|
+
if (minimumSealNumber > 0) {
|
|
1769
|
+
// Get all order totes for this release good
|
|
1770
|
+
const orderTotes: OrderTote[] = await this.trxMgr.getRepository(OrderTote).find({
|
|
1771
|
+
where: { releaseGood },
|
|
1772
|
+
relations: ['orderToteSeals']
|
|
1773
|
+
})
|
|
1774
|
+
|
|
1775
|
+
// Validate each tote has at least minimum-seal-number seals
|
|
1776
|
+
for (const orderTote of orderTotes) {
|
|
1777
|
+
const sealCount = orderTote.orderToteSeals?.length || 0
|
|
1778
|
+
if (sealCount < minimumSealNumber) {
|
|
1779
|
+
throw new Error(
|
|
1780
|
+
`Tote ${orderTote.name} has ${sealCount} seal(s), but minimum ${minimumSealNumber} seal(s) required`
|
|
1781
|
+
)
|
|
1782
|
+
}
|
|
1783
|
+
}
|
|
1784
|
+
}
|
|
1785
|
+
}
|
|
1739
1786
|
}
|
|
1740
1787
|
|
|
1741
1788
|
//check if any inventories is obsolete
|
|
@@ -2198,31 +2245,30 @@ export class PickingWorksheetController extends VasWorksheetController {
|
|
|
2198
2245
|
|
|
2199
2246
|
private async toteScanning(toteNo, targetProduct, targetInventory, pickedQty, releaseGood, bizplace) {
|
|
2200
2247
|
//1. find tote
|
|
2201
|
-
|
|
2248
|
+
const foundTote: Tote = await this.trxMgr
|
|
2202
2249
|
.getRepository(Tote)
|
|
2203
2250
|
.findOne({ where: { bizplace, name: toteNo, deletedAt: IsNull() } })
|
|
2204
2251
|
|
|
2205
|
-
|
|
2206
|
-
foundTote
|
|
2207
|
-
|
|
2252
|
+
const validTote = foundTote?.status !== TOTE_STATUS.DAMAGED && foundTote?.status !== TOTE_STATUS.DISPATCHED
|
|
2253
|
+
? foundTote
|
|
2254
|
+
: null
|
|
2208
2255
|
|
|
2209
2256
|
//2. find order tote
|
|
2210
|
-
let
|
|
2257
|
+
let orderTote: OrderTote = await this.trxMgr
|
|
2211
2258
|
.getRepository(OrderTote)
|
|
2212
2259
|
.findOne({ where: { domain: this.domain, name: toteNo, releaseGood } })
|
|
2213
2260
|
|
|
2214
|
-
//if order tote not found
|
|
2215
|
-
|
|
2216
|
-
|
|
2217
|
-
const orderTote = await this.trxMgr.getRepository(OrderTote).save({
|
|
2261
|
+
//if order tote not found then create one, if tote not found means it's tote box
|
|
2262
|
+
if (!orderTote) {
|
|
2263
|
+
orderTote = await this.trxMgr.getRepository(OrderTote).save({
|
|
2218
2264
|
name: toteNo,
|
|
2219
2265
|
domain: this.domain,
|
|
2220
2266
|
releaseGood,
|
|
2221
|
-
tote:
|
|
2267
|
+
tote: validTote ?? null,
|
|
2222
2268
|
updater: this.user
|
|
2223
2269
|
})
|
|
2224
2270
|
|
|
2225
|
-
|
|
2271
|
+
await this.trxMgr.getRepository(OrderToteItem).save({
|
|
2226
2272
|
domain: this.domain,
|
|
2227
2273
|
name: OrderNoGenerator.orderToteItem(),
|
|
2228
2274
|
orderProduct: targetProduct,
|
|
@@ -2232,7 +2278,7 @@ export class PickingWorksheetController extends VasWorksheetController {
|
|
|
2232
2278
|
updater: this.user
|
|
2233
2279
|
})
|
|
2234
2280
|
} else {
|
|
2235
|
-
if (
|
|
2281
|
+
if (orderTote.closedDate) {
|
|
2236
2282
|
throw new Error('Tote has been sealed, please try another tote!')
|
|
2237
2283
|
}
|
|
2238
2284
|
|
|
@@ -2241,25 +2287,45 @@ export class PickingWorksheetController extends VasWorksheetController {
|
|
|
2241
2287
|
domain: this.domain,
|
|
2242
2288
|
orderProduct: targetProduct,
|
|
2243
2289
|
orderInventory: targetInventory,
|
|
2244
|
-
orderTote
|
|
2290
|
+
orderTote
|
|
2245
2291
|
})
|
|
2246
2292
|
|
|
2247
|
-
//if not order tote item doesnt exist then create one
|
|
2248
2293
|
if (!foundOrderToteItem) {
|
|
2249
|
-
|
|
2294
|
+
await this.trxMgr.getRepository(OrderToteItem).save({
|
|
2250
2295
|
domain: this.domain,
|
|
2251
2296
|
name: OrderNoGenerator.orderToteItem(),
|
|
2252
2297
|
orderProduct: targetProduct,
|
|
2253
2298
|
orderInventory: targetInventory,
|
|
2254
|
-
orderTote
|
|
2299
|
+
orderTote,
|
|
2255
2300
|
qty: pickedQty,
|
|
2256
2301
|
updater: this.user
|
|
2257
2302
|
})
|
|
2258
2303
|
} else {
|
|
2259
|
-
|
|
2260
|
-
|
|
2261
|
-
|
|
2262
|
-
|
|
2304
|
+
await this.trxMgr.getRepository(OrderToteItem).update(foundOrderToteItem.id, {
|
|
2305
|
+
qty: foundOrderToteItem.qty + pickedQty,
|
|
2306
|
+
updater: this.user,
|
|
2307
|
+
updatedAt: new Date()
|
|
2308
|
+
})
|
|
2309
|
+
}
|
|
2310
|
+
}
|
|
2311
|
+
|
|
2312
|
+
// Check minimum-seal-number setting - if 0, automatically close the tote
|
|
2313
|
+
if (!orderTote.closedDate) {
|
|
2314
|
+
const sealNoSetting: Setting = await this.trxMgr.getRepository(Setting).findOne({
|
|
2315
|
+
where: {
|
|
2316
|
+
domain: this.domain,
|
|
2317
|
+
name: 'minimum-seal-number'
|
|
2318
|
+
}
|
|
2319
|
+
})
|
|
2320
|
+
|
|
2321
|
+
const minimumSealRequiredRaw = parseInt(sealNoSetting?.value ?? '0', 10)
|
|
2322
|
+
const minimumSealRequired = isNaN(minimumSealRequiredRaw) ? 0 : Math.max(0, minimumSealRequiredRaw)
|
|
2323
|
+
|
|
2324
|
+
if (minimumSealRequired === 0) {
|
|
2325
|
+
await this.trxMgr.getRepository(OrderTote).update(orderTote.id, {
|
|
2326
|
+
closedDate: new Date(),
|
|
2327
|
+
updater: this.user,
|
|
2328
|
+
updatedAt: new Date()
|
|
2263
2329
|
})
|
|
2264
2330
|
}
|
|
2265
2331
|
}
|
|
@@ -2376,7 +2442,7 @@ export class PickingWorksheetController extends VasWorksheetController {
|
|
|
2376
2442
|
throw new Error('Tote not scanned under this order')
|
|
2377
2443
|
}
|
|
2378
2444
|
|
|
2379
|
-
|
|
2445
|
+
const totalOrderToteItems = await this.trxMgr.getRepository(OrderToteItem).count({
|
|
2380
2446
|
where: {
|
|
2381
2447
|
orderTote: foundOrderTote
|
|
2382
2448
|
}
|
|
@@ -2386,7 +2452,7 @@ export class PickingWorksheetController extends VasWorksheetController {
|
|
|
2386
2452
|
throw new Error('Tote carton is empty')
|
|
2387
2453
|
}
|
|
2388
2454
|
|
|
2389
|
-
|
|
2455
|
+
await this.trxMgr.getRepository(OrderToteSeal).save({
|
|
2390
2456
|
domain: this.domain,
|
|
2391
2457
|
name: sealNo,
|
|
2392
2458
|
orderTote: foundOrderTote,
|
|
@@ -2397,10 +2463,18 @@ export class PickingWorksheetController extends VasWorksheetController {
|
|
|
2397
2463
|
orderTote: foundOrderTote
|
|
2398
2464
|
})
|
|
2399
2465
|
|
|
2400
|
-
|
|
2401
|
-
|
|
2402
|
-
|
|
2403
|
-
|
|
2466
|
+
// Determine minimum seals required; clamp negative values to 0
|
|
2467
|
+
const minimumSealRequiredRaw = parseInt(sealNoSetting?.value ?? '0', 10)
|
|
2468
|
+
const minimumSealRequired = isNaN(minimumSealRequiredRaw) ? 0 : Math.max(0, minimumSealRequiredRaw)
|
|
2469
|
+
|
|
2470
|
+
// Close tote if: seals are optional (0) OR minimum seal count reached
|
|
2471
|
+
const shouldCloseTote = minimumSealRequired === 0 || totalSeal >= minimumSealRequired
|
|
2472
|
+
|
|
2473
|
+
if (shouldCloseTote) {
|
|
2474
|
+
await this.trxMgr.getRepository(OrderTote).update(foundOrderTote.id, {
|
|
2475
|
+
closedDate: new Date(),
|
|
2476
|
+
updater: this.user,
|
|
2477
|
+
updatedAt: new Date()
|
|
2404
2478
|
})
|
|
2405
2479
|
}
|
|
2406
2480
|
}
|