diff --git a/dev_wms_client/src/api/excel.js b/dev_wms_client/src/api/excel.js index 0bb8843..f4e0b14 100644 --- a/dev_wms_client/src/api/excel.js +++ b/dev_wms_client/src/api/excel.js @@ -83,6 +83,16 @@ export const exportKittingBomRelationWithExcel = (data) => { timeout: 600000 }) } +// 导出物料 +export const exportGoodsExcel = (data) => { + return request({ + url: '/excel/exportGoodsExcel', + method: 'post', + responseType: 'blob', + data: data, + timeout: 600000 + }) +} // 导出库存 export const exportStockExcel = (data) => { return request({ diff --git a/dev_wms_client/src/api/taskQuery.js b/dev_wms_client/src/api/taskQuery.js index 2d11404..d1bc623 100644 --- a/dev_wms_client/src/api/taskQuery.js +++ b/dev_wms_client/src/api/taskQuery.js @@ -7,4 +7,20 @@ export const queryTasksByPage = (params) => { method: 'post', data: params }) +} +// 分页查询入库记录 +export const queryInTaskRecordByPage = (params) => { + return request({ + url: '/taskQuery/queryInTaskRecordByPage', + method: 'post', + data: params + }) +} +// 分页查询出库记录 +export const queryOutTaskRecordByPage = (params) => { + return request({ + url: '/taskQuery/queryOutTaskRecordByPage', + method: 'post', + data: params + }) } \ No newline at end of file diff --git a/dev_wms_client/src/layout/goods.vue b/dev_wms_client/src/layout/goods.vue index e61db99..bc8d095 100644 --- a/dev_wms_client/src/layout/goods.vue +++ b/dev_wms_client/src/layout/goods.vue @@ -21,6 +21,12 @@ 查询 清除输入 + + 导入数据 + 导出excel + @@ -158,6 +164,16 @@ + + + 导入基础信息 + + + + 导入看板信息 + + + @@ -167,12 +183,15 @@ import store from '@/store' import zhCn from 'element-plus/dist/locale/zh-cn.mjs' import { getGoodsInfoByPage } from '@/api/goods.js' -import { timeFormatter, wmsTaskTypeFormatter, wmsTaskStatusFormatter } from '@/utils/formatter.js' +import { exportGoodsExcel } from '@/api/excel.js' +import { timeFormatter, wmsTaskTypeFormatter, wmsTaskStatusFormatter, dateFormatter } from '@/utils/formatter.js' import { ref, reactive, onMounted, nextTick, onBeforeUnmount } from 'vue' import { ElMessage } from 'element-plus' import { genTableRequest } from '@/utils/generator.js' import { labelPosition } from '@/constant/form.js' import { loading } from '@/utils/loading' +import UploadExcelBaseGoods from '@/excel/UploadExcelBaseGoods.vue' +import UploadExcelKanban from '@/excel/UploadExcelKanban.vue' /** * 常量定义 */ @@ -201,6 +220,7 @@ let rowEditFlag = ref(false) let goodsId = '' let rowEditFormRef = ref() let rowFormEntity = reactive({}) +let showUploadDialog = ref(false) /** * 系统方法 */ @@ -260,6 +280,9 @@ const handleSortChange = (data) => { baseTableQuery.sortBy.set(data.prop, data.order == 'ascending') search() } +const openUploadDialog = () => { + showUploadDialog.value = true +} const getCurrentRow = (row) => { goodsId = row.goodsId } @@ -339,6 +362,38 @@ const submitUpdateRow = (rowFormEntity) => { loading.close() }) } +const exportExcel = () => { + const params = { + goodsId: searchQueryFormEntity.goodsId, + goodsDesc: searchQueryFormEntity.goodsDesc, + userName: USER_NAME + } + exportGoodsExcel(params).then(res => { + const link = document.createElement('a');//创建a标签 + try { + // let blob = new Blob([res.data],{type: 'application/vnd.ms-excel'}); //如果后台返回的不是blob对象类型,先定义成blob对象格式,该type导出为xls格式, + let blob = res.data //如果后台返回的直接是blob对象类型,直接获取数据 + // let _fileName = res.headers['content-disposition'].split(';')[1].split('=')[1]; //拆解获取文件名,如果后端有给返回文件名的话 + let _fileName = '物料基础信息' + dateFormatter(new Date) + '.xlsx' + link.style.display = 'none'//隐藏 + + // 兼容不同浏览器的URL对象 + const url = window.URL || window.webkitURL || window.moxURL + link.href = url.createObjectURL(blob) + link.setAttribute('download', _fileName.substring(_fileName.lastIndexOf('_') + 1)) + document.body.appendChild(link) + link.click() + document.body.removeChild(link) + url.revokeObjectURL(link.href)//移除url对象 + } catch (e) { + console.log(e) + ElMessage.error('下载文件失败') + } + }).catch(err => { + console.log(err) + ElMessage.error('导出失败') + }) +} \ No newline at end of file diff --git a/dev_wms_client/src/layout/outTaskRecord.vue b/dev_wms_client/src/layout/outTaskRecord.vue index 26bbb86..2726a5a 100644 --- a/dev_wms_client/src/layout/outTaskRecord.vue +++ b/dev_wms_client/src/layout/outTaskRecord.vue @@ -1,192 +1,322 @@ - - - - - - - - - 搜索 - 重置 - 导出记录 - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + 查询 + 清除输入 + + + 导出excel + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - \ No newline at end of file diff --git a/dev_wms_serve/src/main/java/com/wms_main/controller/wms/ExcelController.java b/dev_wms_serve/src/main/java/com/wms_main/controller/wms/ExcelController.java index 7eb418e..fcc86d8 100644 --- a/dev_wms_serve/src/main/java/com/wms_main/controller/wms/ExcelController.java +++ b/dev_wms_serve/src/main/java/com/wms_main/controller/wms/ExcelController.java @@ -138,6 +138,15 @@ public class ExcelController { exportExcelEasyPoi.doExportStocks(stockQuery, response); } + /** + * 导出物料基础信息 + * @param goodsQuery 请求 + */ + @PostMapping("/exportGoodsExcel") + public void exportGoodsExcel(@RequestBody GoodsQuery goodsQuery, HttpServletResponse response) throws IOException { + exportExcelEasyPoi.doExportGoods(goodsQuery, response); + } + /** * 导出库存更新记录 * @param stockUpdateQuery 请求 @@ -164,4 +173,13 @@ public class ExcelController { public void exportKanbanExcel(@RequestBody KanbanQuery kanbanQuery, HttpServletResponse response) throws IOException { exportExcelEasyPoi.exportKanbanExcel(kanbanQuery, response); } + + /** + * 导出看板需求 + * @param kanbanQuery 请求 + */ + @PostMapping("/exportInTaskRecordExcel") + public void exportInTaskRecordExcel(@RequestBody WmsTaskQuery wmsTaskQuery, HttpServletResponse response) throws IOException { + exportExcelEasyPoi.exportKanbanExcel(kanbanQuery, response); + } } diff --git a/dev_wms_serve/src/main/java/com/wms_main/controller/wms/TaskQueryController.java b/dev_wms_serve/src/main/java/com/wms_main/controller/wms/TaskQueryController.java index e7a1013..6f3efa1 100644 --- a/dev_wms_serve/src/main/java/com/wms_main/controller/wms/TaskQueryController.java +++ b/dev_wms_serve/src/main/java/com/wms_main/controller/wms/TaskQueryController.java @@ -3,6 +3,7 @@ package com.wms_main.controller.wms; import com.wms_main.model.dto.query.WmsTaskQuery; import com.wms_main.model.dto.response.wms.WmsApiResponse; import com.wms_main.model.vo.wms.PageVo; +import com.wms_main.model.vo.wms.TaskRecordVo; import com.wms_main.model.vo.wms.TaskVo; import com.wms_main.service.controller.ITaskQueryControllerService; import lombok.RequiredArgsConstructor; @@ -30,4 +31,26 @@ public class TaskQueryController { { return taskQueryControllerService.queryTasksByPage(wmsTaskQuery); } + + /** + * Wms入库记录查询 + * @param wmsTaskQuery 查询参数 + * @return 查询结果 + */ + @PostMapping("/queryInTaskRecordByPage") + public WmsApiResponse> queryInTaskRecordByPage(@RequestBody WmsTaskQuery wmsTaskQuery) + { + return taskQueryControllerService.queryInTaskRecordByPage(wmsTaskQuery); + } + + /** + * Wms出库记录查询 + * @param wmsTaskQuery 查询参数 + * @return 查询结果 + */ + @PostMapping("/queryOutTaskRecordByPage") + public WmsApiResponse> queryOutTaskRecordByPage(@RequestBody WmsTaskQuery wmsTaskQuery) + { + return taskQueryControllerService.queryOutTaskRecordByPage(wmsTaskQuery); + } } diff --git a/dev_wms_serve/src/main/java/com/wms_main/excel/easypoi/service/base/IBaseExportExcelEasyPoi.java b/dev_wms_serve/src/main/java/com/wms_main/excel/easypoi/service/base/IBaseExportExcelEasyPoi.java index e23ffa9..f402675 100644 --- a/dev_wms_serve/src/main/java/com/wms_main/excel/easypoi/service/base/IBaseExportExcelEasyPoi.java +++ b/dev_wms_serve/src/main/java/com/wms_main/excel/easypoi/service/base/IBaseExportExcelEasyPoi.java @@ -1,5 +1,6 @@ package com.wms_main.excel.easypoi.service.base; +import com.wms_main.model.dto.query.GoodsQuery; import com.wms_main.model.dto.query.StockQuery; import com.wms_main.model.dto.query.StockUpdateQuery; import jakarta.servlet.http.HttpServletResponse; @@ -22,4 +23,10 @@ public interface IBaseExportExcelEasyPoi { * @param stockUpdateQuery 查询条件 */ void doExportStockUpdate(@RequestBody StockUpdateQuery stockUpdateQuery, HttpServletResponse response) throws IOException; + + /** + * 到处物料信息 + * @param goodsQuery 查询 + */ + void doExportGoods(@RequestBody GoodsQuery goodsQuery, HttpServletResponse response) throws IOException; } diff --git a/dev_wms_serve/src/main/java/com/wms_main/excel/easypoi/service/base/impl/BaseExportExcelEasyPoi.java b/dev_wms_serve/src/main/java/com/wms_main/excel/easypoi/service/base/impl/BaseExportExcelEasyPoi.java index d8fb918..4e86a15 100644 --- a/dev_wms_serve/src/main/java/com/wms_main/excel/easypoi/service/base/impl/BaseExportExcelEasyPoi.java +++ b/dev_wms_serve/src/main/java/com/wms_main/excel/easypoi/service/base/impl/BaseExportExcelEasyPoi.java @@ -4,13 +4,17 @@ import cn.afterturn.easypoi.excel.ExcelExportUtil; import cn.afterturn.easypoi.excel.entity.ExportParams; import cn.afterturn.easypoi.excel.entity.enmus.ExcelType; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.wms_main.dao.ITAppGoodsService; import com.wms_main.dao.ITAppStockService; import com.wms_main.dao.ITAppStockUpdateService; +import com.wms_main.excel.easypoi.excelTemplate.GoodsExcelTemplate; import com.wms_main.excel.easypoi.excelTemplate.StockExcelTemplate; import com.wms_main.excel.easypoi.excelTemplate.StockUpdateExcelTemplate; import com.wms_main.excel.easypoi.service.base.IBaseExportExcelEasyPoi; +import com.wms_main.model.dto.query.GoodsQuery; import com.wms_main.model.dto.query.StockQuery; import com.wms_main.model.dto.query.StockUpdateQuery; +import com.wms_main.model.po.TAppGoods; import com.wms_main.model.po.TAppStock; import com.wms_main.model.po.TAppStockUpdate; import com.wms_main.repository.utils.StringUtils; @@ -34,6 +38,8 @@ public class BaseExportExcelEasyPoi implements IBaseExportExcelEasyPoi { protected ITAppStockService appStockService;// 库存服务 @Autowired protected ITAppStockUpdateService appStockUpdateService;// 库存更新服务 + @Autowired + protected ITAppGoodsService appGoodsService;// 物料服务 public BaseExportExcelEasyPoi() { @@ -132,6 +138,44 @@ public class BaseExportExcelEasyPoi implements IBaseExportExcelEasyPoi { doWriteExcel("库存更新记录", response, resultList, StockUpdateExcelTemplate.class); } + /** + * 导出物料信息--实现 + * @param goodsQuery 查询 + */ + @Override + public void doExportGoods(GoodsQuery goodsQuery, HttpServletResponse response) throws IOException { + if (goodsQuery == null) { + throw new IOException("查询参数不能为NULL"); + } + // 库存更新记录查询参数 + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper() + .like(StringUtils.isNotEmpty(goodsQuery.getGoodsId()), TAppGoods::getGoodsId, goodsQuery.getGoodsId()) + .like(StringUtils.isNotEmpty(goodsQuery.getGoodsDesc()), TAppGoods::getGoodsDescription, goodsQuery.getGoodsDesc()); + List baseGoodsList = appGoodsService.list(lambdaQueryWrapper); + // excel模版列表 + List resultList = new ArrayList<>(); + if (!baseGoodsList.isEmpty()) { + for (TAppGoods poData : baseGoodsList) { + resultList.add(new GoodsExcelTemplate( + poData.getPlant(), + poData.getGoodsId(), + poData.getGoodsDescription(), + poData.getVendorName(), + poData.getFeedingType(), + poData.getMaxBoxNum(), + poData.getBoxQty(), + poData.getHotPoint(), + poData.getPutArea(), + poData.getIsSled(), + poData.getSledDays() + )); + } + } else { + resultList.add(new GoodsExcelTemplate()); + } + doWriteExcel("物料基础信息", response, resultList, GoodsExcelTemplate.class); + } + /** * 写入excel * @param fileDesc 文件描述 diff --git a/dev_wms_serve/src/main/java/com/wms_main/model/dto/query/WmsTaskQuery.java b/dev_wms_serve/src/main/java/com/wms_main/model/dto/query/WmsTaskQuery.java index a4454e9..c1c955f 100644 --- a/dev_wms_serve/src/main/java/com/wms_main/model/dto/query/WmsTaskQuery.java +++ b/dev_wms_serve/src/main/java/com/wms_main/model/dto/query/WmsTaskQuery.java @@ -1,10 +1,14 @@ package com.wms_main.model.dto.query; +import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonProperty; import lombok.AllArgsConstructor; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; +import org.springframework.format.annotation.DateTimeFormat; + +import java.time.LocalDateTime; /** * wms任务查询 @@ -39,4 +43,18 @@ public class WmsTaskQuery extends PageQuery { */ @JsonProperty("taskStatus") private Integer taskStatus; + /** + * 筛选时间-从 + */ + @JsonProperty("fromTime") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime fromTime; + /** + * 筛选时间-到 + */ + @JsonProperty("toTime") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime toTime; } diff --git a/dev_wms_serve/src/main/java/com/wms_main/model/vo/wms/TaskRecordVo.java b/dev_wms_serve/src/main/java/com/wms_main/model/vo/wms/TaskRecordVo.java index b85fe04..77b10c9 100644 --- a/dev_wms_serve/src/main/java/com/wms_main/model/vo/wms/TaskRecordVo.java +++ b/dev_wms_serve/src/main/java/com/wms_main/model/vo/wms/TaskRecordVo.java @@ -2,6 +2,7 @@ package com.wms_main.model.vo.wms; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonProperty; +import com.wms_main.model.po.TAppTaskBak; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @@ -105,4 +106,34 @@ public class TaskRecordVo { */ @JsonProperty("goodsDesc") private String goodsDesc; + + /** + * 将po转换为vo + * @param po po对象 + * @return vo对象 + */ + public static TaskRecordVo of(TAppTaskBak po) { + if (po == null) { + return new TaskRecordVo(); + } + return new TaskRecordVo( + po.getTaskId(), + po.getTaskType(), + po.getTaskStatus(), + po.getTaskPriority(), + po.getVehicleId(), + po.getOrigin(), + po.getDestination(), + po.getWcsTaskId(), + po.getCreateTime(), + po.getFinishTime(), + po.getGoodsId(), + po.getOpNum(), + po.getStockNum(), + po.getOpUser(), + po.getRemark(), + po.getCallStand(), + po.getGoodsDesc() + ); + } } diff --git a/dev_wms_serve/src/main/java/com/wms_main/service/controller/ITaskQueryControllerService.java b/dev_wms_serve/src/main/java/com/wms_main/service/controller/ITaskQueryControllerService.java index 5539746..dd073bb 100644 --- a/dev_wms_serve/src/main/java/com/wms_main/service/controller/ITaskQueryControllerService.java +++ b/dev_wms_serve/src/main/java/com/wms_main/service/controller/ITaskQueryControllerService.java @@ -3,6 +3,7 @@ package com.wms_main.service.controller; import com.wms_main.model.dto.query.WmsTaskQuery; import com.wms_main.model.dto.response.wms.WmsApiResponse; import com.wms_main.model.vo.wms.PageVo; +import com.wms_main.model.vo.wms.TaskRecordVo; import com.wms_main.model.vo.wms.TaskVo; /** @@ -15,4 +16,18 @@ public interface ITaskQueryControllerService { * @return 查询结果---分页 */ WmsApiResponse> queryTasksByPage(WmsTaskQuery wmsTaskQuery); + + /** + * 查询入库记录信息---分页 + * @param wmsTaskQuery 查询参数 + * @return 查询结果---分页 + */ + WmsApiResponse> queryInTaskRecordByPage(WmsTaskQuery wmsTaskQuery); + + /** + * 查询出库记录信息---分页 + * @param wmsTaskQuery 查询参数 + * @return 查询结果---分页 + */ + WmsApiResponse> queryOutTaskRecordByPage(WmsTaskQuery wmsTaskQuery); } diff --git a/dev_wms_serve/src/main/java/com/wms_main/service/controller/serviceImpl/TaskQueryControllerServiceImpl.java b/dev_wms_serve/src/main/java/com/wms_main/service/controller/serviceImpl/TaskQueryControllerServiceImpl.java index 48193f6..b0312c1 100644 --- a/dev_wms_serve/src/main/java/com/wms_main/service/controller/serviceImpl/TaskQueryControllerServiceImpl.java +++ b/dev_wms_serve/src/main/java/com/wms_main/service/controller/serviceImpl/TaskQueryControllerServiceImpl.java @@ -2,11 +2,15 @@ package com.wms_main.service.controller.serviceImpl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.wms_main.constant.enums.wms.WmsTaskTypeEnums; +import com.wms_main.dao.ITAppTaskBakService; import com.wms_main.dao.ITAppTaskService; import com.wms_main.model.dto.query.WmsTaskQuery; import com.wms_main.model.dto.response.wms.WmsApiResponse; import com.wms_main.model.po.TAppTask; +import com.wms_main.model.po.TAppTaskBak; import com.wms_main.model.vo.wms.PageVo; +import com.wms_main.model.vo.wms.TaskRecordVo; import com.wms_main.model.vo.wms.TaskVo; import com.wms_main.repository.utils.StringUtils; import com.wms_main.service.controller.ITaskQueryControllerService; @@ -20,6 +24,7 @@ import org.springframework.stereotype.Service; @RequiredArgsConstructor public class TaskQueryControllerServiceImpl implements ITaskQueryControllerService { private final ITAppTaskService appTaskService;// 任务服务 + private final ITAppTaskBakService appTaskBakService;// 任务记录服务 /** * 查询wms任务监控---分页 @@ -43,4 +48,70 @@ public class TaskQueryControllerServiceImpl implements ITaskQueryControllerServi PageVo pageVo = PageVo.of(tasksPage, TaskVo::of); return WmsApiResponse.success("查询任务成功。", pageVo); } + + /** + * 查询入库记录(分页)---实现 + * @param wmsTaskQuery 查询参数 + * @return 查询结果 + */ + @Override + public WmsApiResponse> queryInTaskRecordByPage(WmsTaskQuery wmsTaskQuery) { + if (wmsTaskQuery == null) { + return WmsApiResponse.error("查询参数不能为NULL", null); + } + if (wmsTaskQuery.getFromTime() != null && wmsTaskQuery.getToTime() != null) { + if (wmsTaskQuery.getFromTime().isAfter(wmsTaskQuery.getToTime())) { + return WmsApiResponse.error("from时间不能晚于to时间。", null); + } + } + Page page = wmsTaskQuery.toMpPage(); + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper() + .like(StringUtils.isNotEmpty(wmsTaskQuery.getTaskId()), TAppTaskBak::getTaskId, wmsTaskQuery.getTaskId()) + .like(StringUtils.isNotEmpty(wmsTaskQuery.getGoodsId()), TAppTaskBak::getGoodsId, wmsTaskQuery.getGoodsId()) + .like(StringUtils.isNotEmpty(wmsTaskQuery.getVehicleId()), TAppTaskBak::getVehicleId, wmsTaskQuery.getVehicleId()) + .eq(TAppTaskBak::getTaskType, WmsTaskTypeEnums.IN.getCode()); + if (wmsTaskQuery.getFromTime() != null) { + lambdaQueryWrapper.ge(TAppTaskBak::getCreateTime, wmsTaskQuery.getFromTime()); + } + if (wmsTaskQuery.getToTime() != null) { + lambdaQueryWrapper.le(TAppTaskBak::getCreateTime, wmsTaskQuery.getToTime()); + } + Page inTaskRecordsPage = appTaskBakService.page(page, lambdaQueryWrapper); + + PageVo pageVo = PageVo.of(inTaskRecordsPage, TaskRecordVo::of); + return WmsApiResponse.success("查询入库记录成功。", pageVo); + } + + /** + * 查询出库记录(分页)---实现 + * @param wmsTaskQuery 查询参数 + * @return 查询结果 + */ + @Override + public WmsApiResponse> queryOutTaskRecordByPage(WmsTaskQuery wmsTaskQuery) { + if (wmsTaskQuery == null) { + return WmsApiResponse.error("查询参数不能为NULL", null); + } + if (wmsTaskQuery.getFromTime() != null && wmsTaskQuery.getToTime() != null) { + if (wmsTaskQuery.getFromTime().isAfter(wmsTaskQuery.getToTime())) { + return WmsApiResponse.error("from时间不能晚于to时间。", null); + } + } + Page page = wmsTaskQuery.toMpPage(); + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper() + .like(StringUtils.isNotEmpty(wmsTaskQuery.getTaskId()), TAppTaskBak::getTaskId, wmsTaskQuery.getTaskId()) + .like(StringUtils.isNotEmpty(wmsTaskQuery.getGoodsId()), TAppTaskBak::getGoodsId, wmsTaskQuery.getGoodsId()) + .like(StringUtils.isNotEmpty(wmsTaskQuery.getVehicleId()), TAppTaskBak::getVehicleId, wmsTaskQuery.getVehicleId()) + .eq(TAppTaskBak::getTaskType, WmsTaskTypeEnums.OUT.getCode()); + if (wmsTaskQuery.getFromTime() != null) { + lambdaQueryWrapper.ge(TAppTaskBak::getCreateTime, wmsTaskQuery.getFromTime()); + } + if (wmsTaskQuery.getToTime() != null) { + lambdaQueryWrapper.le(TAppTaskBak::getCreateTime, wmsTaskQuery.getToTime()); + } + Page outTaskRecordsPage = appTaskBakService.page(page, lambdaQueryWrapper); + + PageVo pageVo = PageVo.of(outTaskRecordsPage, TaskRecordVo::of); + return WmsApiResponse.success("查询出库记录成功。", pageVo); + } } diff --git a/dev_wms_serve/src/main/java/com/wms_main/service/quartz_job/serviceImpl/OutsExecutorServiceImpl.java b/dev_wms_serve/src/main/java/com/wms_main/service/quartz_job/serviceImpl/OutsExecutorServiceImpl.java index 30ac1d2..d936d18 100644 --- a/dev_wms_serve/src/main/java/com/wms_main/service/quartz_job/serviceImpl/OutsExecutorServiceImpl.java +++ b/dev_wms_serve/src/main/java/com/wms_main/service/quartz_job/serviceImpl/OutsExecutorServiceImpl.java @@ -741,6 +741,11 @@ public class OutsExecutorServiceImpl implements IOutsExecutorService { workRecords.add(RecordOfWork(work)); continue; } + if (work.getWorkStatus() == 2 && work.getLackStatus() == 1) { + // 缺料,添加记录 + workRecords.add(RecordOfWork(work)); + continue; + } // 判断库内料分配的数量是否需要修正 if (work.getIsOut() != 1) { List thisGoodsOutStocks = allStocks.stream().filter(stock -> stock.getGoodsId().equals(work.getGoodsId())).toList();