rsf-admin/src/i18n/zh.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
rsf-admin/src/page/orders/check/CheckOrderList.jsx | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
rsf-admin/src/page/orders/check/CheckOrderPub.jsx | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/CheckDiffItem.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/CheckOrderSchedules.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
rsf-server/src/main/resources/application.yml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
rsf-admin/src/i18n/zh.js
@@ -679,7 +679,7 @@ checkType: "盘点类型", areaId: "库区ID", areaName: "库区", anfme: "库面数量", anfme: "库存数量", checkQty: "盘点数量", exceStatus: "执行状态", }, rsf-admin/src/page/orders/check/CheckOrderList.jsx
@@ -73,7 +73,7 @@ <AutocompleteInput label="table.field.checkOrder.type" optionValue="value" /> </ReferenceInput>, <ReferenceInput source="wkType" reference="dictData" filter={{ dictTypeCode: 'sys_check_order_type' }} label="table.field.checkOrder.checkType" alwaysOn> <AutocompleteInput label="table.field.checkOrder.checkType" optionValue="value" /> <AutocompleteInput label="table.field.checkOrder.checkType" optionValue="value"/> </ReferenceInput>, <TextInput source="logisNo" label="table.field.checkOrder.logisNo" />, <DateInput source="arrTime" label="table.field.checkOrder.arrTime" />, rsf-admin/src/page/orders/check/CheckOrderPub.jsx
@@ -87,7 +87,7 @@ const mas = data.filter(item => selectedIds.includes(item.id)).map(item => item.matnrCode); //设置库位信息筛选条件 setSelectedMatnr(mas); // onUnselectItems() onUnselectItems() } return ( record.exceStatus != 3 ? <><Button label="toolbar.confirm" size="medium" onClick={handleRowClick} /></> : <></> @@ -222,7 +222,7 @@ </Box> <Box sx={{ textAlign: 'center' }}> <CloseButton setOpen={setOpen} /> <SubmitButton selectedIds={selectedIds} setSelectedIds={setSelectedIds} rowSelectedIds={rowSelectedIds} gridRef={gridRef} record={record} /> <SubmitButton selectedIds={selectedIds} setOpen={setOpen} setSelectedIds={setSelectedIds} rowSelectedIds={rowSelectedIds} gridRef={gridRef} record={record} /> </Box> </Card> </Grid> @@ -420,7 +420,7 @@ //提交按钮 const SubmitButton = ({ selectedIds, setSelectedIds, rowSelectedIds, gridRef, record }) => { const SubmitButton = ({ selectedIds, setSelectedIds, rowSelectedIds, gridRef, record, setOpen }) => { const notify = useNotify(); const refresh = useRefresh(); const translate = useTranslate(); @@ -444,6 +444,7 @@ const { data: { code, data, msg } } = await request.post('/check/generate/tasks', records); if (code == 200) { refresh(); setOpen(false) } else { notify(msg); } rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/CheckDiffItem.java
@@ -218,6 +218,9 @@ } public Double getDiffQty() { if (checkQty.compareTo(0.0) <= 0) { return 0.0; } Double diffQty = Math.round((this.checkQty - this.anfme) * 1000) / 1000.0; return diffQty; } rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/CheckOrderSchedules.java
@@ -47,15 +47,27 @@ * @description: 自动获取已生成盘点任务的盘点列表 * @version 1.0 */ @Scheduled(cron = "0/5 * * * * ?") @Scheduled(cron = "0/15 * * * * ?") @Transactional(rollbackFor = Exception.class) public void genReCheck() { List<CheckDiffItem> list = checkDiffItemService.list(new LambdaQueryWrapper<CheckDiffItem>().select(CheckDiffItem::getTaskItemId)); List<Task> tasks = taskService.list(new LambdaQueryWrapper<Task>() .select(Task::getId) .eq(Task::getTaskType, TaskType.TASK_TYPE_CHECK_OUT.type)); if (tasks.isEmpty()) { return; } List<CheckDiffItem> list = checkDiffItemService .list(new LambdaQueryWrapper<CheckDiffItem>() .select(CheckDiffItem::getTaskItemId)); if (list.isEmpty()) { return; } Set<Long> taskIds = tasks.stream().map(Task::getId).collect(Collectors.toSet()); List<Long> itemIds = list.stream().map(CheckDiffItem::getTaskItemId).collect(Collectors.toList()); List<TaskItem> taskItems = taskItemService.list(new LambdaQueryWrapper<TaskItem>().notIn(TaskItem::getId, itemIds)); List<TaskItem> taskItems = taskItemService .list(new LambdaQueryWrapper<TaskItem>() .in(TaskItem::getTaskId, taskIds) .notIn(TaskItem::getId, itemIds)); if (taskItems.isEmpty()) { return; } @@ -64,7 +76,7 @@ taskMps.keySet().forEach(orderId -> { WkOrder order = checkOrderService.getById(orderId); if (Objects.isNull(order)) { throw new CoolException("盘点单据不存在!!"); throw new CoolException("盘点单据不存在!!"); } CheckDiff checkDiff = checkDiffService.getOne(new LambdaQueryWrapper<CheckDiff>().eq(CheckDiff::getOrderId, orderId)); if (Objects.isNull(checkDiff)) { @@ -119,9 +131,9 @@ } }); if (!checkDiffItemService.saveBatch(diffItems)) { throw new CoolException("盘点差异单保存失败!!"); } if (!checkDiffItemService.saveBatch(diffItems)) { throw new CoolException("盘点差异单保存失败!!"); } }); } } rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java
@@ -83,11 +83,14 @@ private OutStockService outStockService; @Autowired private OutStockItemService outStockItemService; @Autowired private CheckOrderItemService checkOrderItemService; @Autowired private CheckOrderService checkOrderService; @Autowired private CheckDiffService checkDiffService; @Autowired private CheckDiffItemService checkDiffItemService; @Override @Transactional(rollbackFor = Exception.class) @@ -783,6 +786,18 @@ .setSql("work_qty = work_qty - " + taskItem.getAnfme()))) { throw new CoolException("盘点单执行数量修改失败!!"); } List<CheckDiffItem> diffItems = checkDiffItemService .list(new LambdaQueryWrapper<CheckDiffItem>() .eq(CheckDiffItem::getTaskItemId, taskItem.getTaskId())); if (!diffItems.isEmpty()) { CheckDiffItem item = diffItems.stream().findFirst().get(); List<CheckDiffItem> items = checkDiffItemService.list(new LambdaQueryWrapper<CheckDiffItem>() .eq(CheckDiffItem::getId, item.getCheckId())); if (items.isEmpty()) { checkDiffService.removeById(item.getCheckId()); } } }); } rsf-server/src/main/resources/application.yml
@@ -25,7 +25,7 @@ # global-config: # field-strategy: 0 configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # log-impl: org.apache.ibatis.logging.stdout.StdOutImpl map-underscore-to-camel-case: true cache-enabled: true call-setters-on-nulls: true