diff --git a/dev_wms_client/src/api/goods.js b/dev_wms_client/src/api/goods.js index 651d536..007d460 100644 --- a/dev_wms_client/src/api/goods.js +++ b/dev_wms_client/src/api/goods.js @@ -9,4 +9,14 @@ export const getGoodsInfoByPage = (params) => { method: 'post', data: params }) +} +/** + * 根据物料id查询物料信息 + */ +export const getGoodsInfoByGoodsId = (params) => { + return request({ + url: '/goods/getGoodsInfoByGoodsId', + method: 'get', + data: params + }) } \ No newline at end of file diff --git a/dev_wms_client/src/layout/goodsIn.vue b/dev_wms_client/src/layout/goodsIn.vue index 94a63be..b0f89f4 100644 --- a/dev_wms_client/src/layout/goodsIn.vue +++ b/dev_wms_client/src/layout/goodsIn.vue @@ -135,6 +135,7 @@ import {nextTick, onMounted, reactive, ref} from 'vue' import {loading} from '@/utils/loading.js' import zhCn from 'element-plus/dist/locale/zh-cn.mjs' import {labelPosition} from '@/constant/form' +import {getGoodsInfoByGoodsId} from "@/api/goods"; const inTypeOptions = [ { @@ -241,6 +242,24 @@ const changeFocus = () => { if (inTaskEntity.goodsId === '') { goodsId.value.focus() return + } else { + // 对料号进行一下格式化 + inTaskEntity.goodsId = inTaskEntity.goodsId.toUpperCase().trim() + if (inTaskEntity.goodsId.substring(0, 1) === 'P') { + // 检索一遍数据库,判断是否有该料号 + loading.open('请求中,请稍等...') + getGoodsInfoByGoodsId(inTaskEntity.goodsId).then(res => { + const goodsResponse = res.data + if (goodsResponse.code !== 0) { + // 去除前缀P + inTaskEntity.goodsId = inTaskEntity.goodsId.substring(1) + } + }).catch(err => { + console.log(err) + }).finally(() => { + loading.close() + }) + } } if (inTaskEntity.opNum == null || inTaskEntity.opNum === '') { opNum.value.focus() diff --git a/dev_wms_client/src/layout/goodsOut.vue b/dev_wms_client/src/layout/goodsOut.vue index 9e997c7..5d464b5 100644 --- a/dev_wms_client/src/layout/goodsOut.vue +++ b/dev_wms_client/src/layout/goodsOut.vue @@ -1,381 +1,416 @@ +import {useRoute} from "vue-router"; +import {labelPosition} from '@/constant/form' - \ No newline at end of file diff --git a/dev_wms_client/src/layout/inventory.vue b/dev_wms_client/src/layout/inventory.vue index 72e6f2e..c9d7e9b 100644 --- a/dev_wms_client/src/layout/inventory.vue +++ b/dev_wms_client/src/layout/inventory.vue @@ -46,7 +46,7 @@ - diff --git a/dev_wms_client/src/layout/kitting.vue b/dev_wms_client/src/layout/kitting.vue index 54136a4..3e9b7f1 100644 --- a/dev_wms_client/src/layout/kitting.vue +++ b/dev_wms_client/src/layout/kitting.vue @@ -100,7 +100,7 @@ - @@ -111,11 +111,11 @@ - + - - + @@ -319,7 +319,7 @@ onBeforeUnmount(() => { }) // 监视路由 watch(() => route.path, (newVal, oldVal) => { - if (newVal == '/kitting') { + if (newVal === '/kitting') { timer.value = setInterval(() => { timerTask_1() }, 1000) @@ -331,7 +331,7 @@ watch(() => route.path, (newVal, oldVal) => { } }) watch(() => workFormEntity.workOrder, (newVal, oldVal) => { - if (newVal == '') { + if (newVal === '') { workFormEntity.productIdOrigin = '' workFormEntity.productId = '' workFormEntity.singleProductId = '' @@ -340,20 +340,20 @@ watch(() => workFormEntity.workOrder, (newVal, oldVal) => { } }) watch(() => workFormEntity.productId, (newVal, oldVal) => { - if (newVal != oldVal) { + if (newVal !== oldVal) { workFormEntity.singleProductId = '' workFormEntity.boxNo = '' workFormEntity.goodsId = '' } }) watch(() => workFormEntity.singleProductId, (newVal, oldVal) => { - if (newVal != oldVal) { + if (newVal !== oldVal) { workFormEntity.boxNo = '' workFormEntity.goodsId = '' } }) watch(() => workFormEntity.boxNo, (newVal, oldVal) => { - if (newVal != oldVal) { + if (newVal !== oldVal) { workFormEntity.goodsId = '' } }) @@ -368,23 +368,23 @@ const timerTask_1 = () => { } // 自定义方法 const solveEnterKey = (e) => { - if (e.key.toLocaleLowerCase() == 'enter') { + if (e.key.toLowerCase() === 'enter') { confirmReleaseBtn.value.$el.click() } } // 初始化工单options const initWorkOptions = () => { const request = { - workOrder: workFormQuery.workOrder != '' ? workFormQuery.workOrder : workFormEntity.workOrder, - singleProductId: workFormQuery.singleProductId != '' ? workFormQuery.singleProductId : workFormEntity.singleProductId, - boxNo: workFormQuery.boxNo != '' ? workFormQuery.boxNo : workFormEntity.boxNo, - goodsId: workFormQuery.goodsId != '' ? workFormQuery.goodsId : workFormEntity.goodsId, + workOrder: workFormQuery.workOrder !== '' ? workFormQuery.workOrder : workFormEntity.workOrder, + singleProductId: workFormQuery.singleProductId !== '' ? workFormQuery.singleProductId : workFormEntity.singleProductId, + boxNo: workFormQuery.boxNo !== '' ? workFormQuery.boxNo : workFormEntity.boxNo, + goodsId: workFormQuery.goodsId !== '' ? workFormQuery.goodsId : workFormEntity.goodsId, planStartDate: dateFormatter(workFormEntity.planStartDate) } optionLoading.value = true queryKateWorks(request).then(res => { const response = res.data - if (response.code == 0) { + if (response.code === 0) { workOptions.workOrder = response.data.workOrder // 设置成品号 workFormEntity.productIdOrigin = response.data.productIdOrigin @@ -434,7 +434,7 @@ const confirmStart = () => { loading.open() initWorks(request).then(res => { const response = res.data - if (response.code == 0) { + if (response.code === 0) { ElMessage.success(response.message) setTimeout(() => { showBoxSummary() @@ -463,7 +463,7 @@ const showBoxSummary = () => { } getBoxesAndLacks(request).then(res => { const response = res.data - if (response.code == 0) { + if (response.code === 0) { const boxDetailVo = response.data // 获得打印标签数据 getPrintTabs(boxDetailVo.boxSummary) @@ -496,7 +496,7 @@ const getWork = () => { } getCurrentWorks(request).then(res => { const response = res.data - if (response.code == 0) { + if (response.code === 0) { // 设置form confirmEntity.workIndex = response.data.orderConfirm.workIndex confirmEntity.workOrder = response.data.orderConfirm.workOrder @@ -515,10 +515,10 @@ const getWork = () => { confirmEntity.warningQty = response.data.stockConfirm.warningQty pauseGetWorkFlag.value = true // 如果剩余数量低于预警值,弹框报警 - if (confirmEntity.isOut == 0 && confirmEntity.planRemainQty <= confirmEntity.warningQty) { + if (confirmEntity.isOut === 0 && confirmEntity.planRemainQty <= confirmEntity.warningQty) { warningBox('剩余数量低于预警值,请清点库存数量。') } - } else if (response.code == 400) { + } else if (response.code === 400) { // 警告,弹框 pauseGetWorkFlag.value = true warningBox(response.message) @@ -543,17 +543,17 @@ const getWork = () => { } // 是否弹出料盒界面 const ifNeedShowBoxSummary = () => { - if (storeKittingWork.workOrder != '') { + if (storeKittingWork.workOrder !== '') { // 需要弹出上一个料盒的缺料打印信息 - if (confirmEntity.workOrder != storeKittingWork.workOrder - || confirmEntity.productId != storeKittingWork.productId - || confirmEntity.singleProductId != storeKittingWork.singleProductId - || confirmEntity.boxNo != storeKittingWork.boxNo) { + if (confirmEntity.workOrder !== storeKittingWork.workOrder + || confirmEntity.productId !== storeKittingWork.productId + || confirmEntity.singleProductId !== storeKittingWork.singleProductId + || confirmEntity.boxNo !== storeKittingWork.boxNo) { printLacks(storeKittingWork.workOrder, storeKittingWork.productId, storeKittingWork.singleProductId, storeKittingWork.boxNo) - if (confirmEntity.workOrder == '') { + if (confirmEntity.workOrder === '') { // 说明当前工单工作已完成,需要弹框提示工作已完成 successBox('当前工单已完成。') - } else if (confirmEntity.boxNo != storeKittingWork.boxNo) { + } else if (confirmEntity.boxNo !== storeKittingWork.boxNo) { // 前一个料盒已完成,需要弹框提示料盒已完成 showBoxSummary() } @@ -599,11 +599,11 @@ const confirmOrRelease = () => { } confirmCurrentWork(request).then(res => { const response = res.data - if (response.code == 0) { + if (response.code === 0) { // 设置form resetConfirmEntity() ElMessage.success(response.message) - } else if (response.code == 400) { + } else if (response.code === 400) { // 设置form resetConfirmEntity() // 警告 @@ -633,7 +633,7 @@ const resetConfirmEntity = () => { } // 当拣选数量修改时,要对应的修改 const changePlanQty = () => { - if (confirmEntity.isOut == 0 && confirmEntity.realPickQty != confirmEntity.planPickQty) { + if (confirmEntity.isOut === 0 && confirmEntity.realPickQty !== confirmEntity.planPickQty) { // 修正量 const changeQty = confirmEntity.realPickQty - confirmEntity.planPickQty // 修正实际剩余数量 @@ -648,7 +648,7 @@ const requestPrint = () => { // 获得打印数据 const getPrintTabs = (boxSummary) => { printTabs.value = [] - if (boxSummary != undefined) { + if (boxSummary !== undefined) { for (let i = 1; i <= boxSummary.boxQty; i++) { printTabs.value.push( { @@ -675,7 +675,7 @@ const searchKittingGoods = () => { request.boxNo = confirmEntity.boxNo queryWorkingGoodsByPage(request).then(res => { const response = res.data - if (response.code == 0) { + if (response.code === 0) { const data = response.data if (data != null) { currentBoxGoodsList.value = data.lists @@ -695,7 +695,7 @@ const handleSortChange = (data) => { if (baseTableQuery.sortBy.has(data.prop)) { baseTableQuery.sortBy.delete(data.prop) } - baseTableQuery.sortBy.set(data.prop, data.order == 'ascending') + baseTableQuery.sortBy.set(data.prop, data.order.toLowerCase() === 'ascending') searchKittingGoods() } // 打印上一个料盒的缺料信息 @@ -710,7 +710,7 @@ const printLacks = (workOrder, productId, singleProductId, boxNo) => { } getLackGoods(request).then(res => { const response = res.data - if (response.code == 0) { + if (response.code === 0) { lackGoodsForPrint.value = response.data nextTick(() => { printLackGoodsBtn.value.click() diff --git a/dev_wms_client/src/layout/taskMonitor.vue b/dev_wms_client/src/layout/taskMonitor.vue index 4c3dde6..5d06b4a 100644 --- a/dev_wms_client/src/layout/taskMonitor.vue +++ b/dev_wms_client/src/layout/taskMonitor.vue @@ -112,7 +112,7 @@ - @@ -120,7 +120,7 @@ - diff --git a/dev_wms_serve/src/main/java/com/wms_main/controller/wms/GoodsController.java b/dev_wms_serve/src/main/java/com/wms_main/controller/wms/GoodsController.java index 8e5624b..65e3ab2 100644 --- a/dev_wms_serve/src/main/java/com/wms_main/controller/wms/GoodsController.java +++ b/dev_wms_serve/src/main/java/com/wms_main/controller/wms/GoodsController.java @@ -28,4 +28,14 @@ public class GoodsController { public WmsApiResponse> getGoodsInfoByPage(@RequestBody GoodsQuery goodsQuery) { return goodsControllerService.getGoodsInfoByPage(goodsQuery); } + + /** + * 根据物料id查询物料信息 + * @param goodsId 查询参数 + * @return 查询结果 + */ + @GetMapping("/getGoodsInfoByGoodsId") + public WmsApiResponse getGoodsInfoByGoodsId(@RequestParam("goodsId") String goodsId) { + return goodsControllerService.getGoodsInfoByGoodsId(goodsId); + } } diff --git a/dev_wms_serve/src/main/java/com/wms_main/service/controller/IGoodsControllerService.java b/dev_wms_serve/src/main/java/com/wms_main/service/controller/IGoodsControllerService.java index 199d146..524263a 100644 --- a/dev_wms_serve/src/main/java/com/wms_main/service/controller/IGoodsControllerService.java +++ b/dev_wms_serve/src/main/java/com/wms_main/service/controller/IGoodsControllerService.java @@ -15,5 +15,12 @@ public interface IGoodsControllerService { * @param goodsQuery 查询参数 * @return 查询结果 */ - WmsApiResponse> getGoodsInfoByPage(@RequestBody GoodsQuery goodsQuery); + WmsApiResponse> getGoodsInfoByPage(GoodsQuery goodsQuery); + + /** + * 根据物料id获取物料信息 + * @param goodsId 物料id + * @return 物料信息 + */ + WmsApiResponse getGoodsInfoByGoodsId(String goodsId); } diff --git a/dev_wms_serve/src/main/java/com/wms_main/service/controller/serviceImpl/GoodsControllerServiceImpl.java b/dev_wms_serve/src/main/java/com/wms_main/service/controller/serviceImpl/GoodsControllerServiceImpl.java index ea2159f..2056b5f 100644 --- a/dev_wms_serve/src/main/java/com/wms_main/service/controller/serviceImpl/GoodsControllerServiceImpl.java +++ b/dev_wms_serve/src/main/java/com/wms_main/service/controller/serviceImpl/GoodsControllerServiceImpl.java @@ -41,4 +41,21 @@ public class GoodsControllerServiceImpl implements IGoodsControllerService { PageVo pageVo = PageVo.of(goodsPage, GoodsVo::of); return WmsApiResponse.success("查询成功", pageVo); } + + /** + * 根据物料id查询物料信息 + * @param goodsId 物料id + * @return 查询结果 + */ + @Override + public WmsApiResponse getGoodsInfoByGoodsId(String goodsId) { + if (StringUtils.isEmpty(goodsId)) { + return WmsApiResponse.error("请求参数不能为空。", null); + } + TAppGoods targetGoods = goodsService.getById(goodsId); + if (targetGoods == null) { + return WmsApiResponse.error("查询结果为空。", null); + } + return WmsApiResponse.success("查询成功。", GoodsVo.of(targetGoods)); + } } diff --git a/dev_wms_serve/src/main/java/com/wms_main/service/controller/serviceImpl/LoginControllerServiceImpl.java b/dev_wms_serve/src/main/java/com/wms_main/service/controller/serviceImpl/LoginControllerServiceImpl.java index 6de86c0..3b4e8c3 100644 --- a/dev_wms_serve/src/main/java/com/wms_main/service/controller/serviceImpl/LoginControllerServiceImpl.java +++ b/dev_wms_serve/src/main/java/com/wms_main/service/controller/serviceImpl/LoginControllerServiceImpl.java @@ -110,7 +110,6 @@ public class LoginControllerServiceImpl implements ILoginControllerService { } List menuVoList = new LinkedList<>(); // 查找一级菜单 - // TODO 这里可以用递归优化,减少代码量 for (TSysMenu firstMenu : menuPoList) { if (AppConstant.ROOT_MENU_ID.equals(firstMenu.getParentId())) {// 查找到所有的一级子菜单 MenuVo tempFirstMenu = new MenuVo(); diff --git a/dev_wms_serve/src/main/java/com/wms_main/service/controller/serviceImpl/TaskOperationControllerServiceImpl.java b/dev_wms_serve/src/main/java/com/wms_main/service/controller/serviceImpl/TaskOperationControllerServiceImpl.java index 594705f..65ea56e 100644 --- a/dev_wms_serve/src/main/java/com/wms_main/service/controller/serviceImpl/TaskOperationControllerServiceImpl.java +++ b/dev_wms_serve/src/main/java/com/wms_main/service/controller/serviceImpl/TaskOperationControllerServiceImpl.java @@ -182,18 +182,15 @@ public class TaskOperationControllerServiceImpl implements ITaskOperationControl * @param wmsTaskRequest 请求信息 */ private void updateDetailInfoExceptStatus(TAppTask targetTask, WmsTaskRequest wmsTaskRequest) { - targetTask.setTaskType(wmsTaskRequest.getTaskType()); targetTask.setTaskPriority(wmsTaskRequest.getTaskPriority()); - targetTask.setVehicleId(wmsTaskRequest.getVehicleId()); targetTask.setOrigin(wmsTaskRequest.getOrigin()); targetTask.setDestination(wmsTaskRequest.getDestination()); targetTask.setWcsTaskId(wmsTaskRequest.getWcsTaskId()); targetTask.setGoodsId(wmsTaskRequest.getGoodsId()); targetTask.setOpNum(wmsTaskRequest.getOpNum()); targetTask.setStockNum(wmsTaskRequest.getStockNum()); - targetTask.setOpUser(wmsTaskRequest.getOpUser()); + targetTask.setOpUser(wmsTaskRequest.getUserName()); targetTask.setRemark(wmsTaskRequest.getRemark()); - targetTask.setCallStand(wmsTaskRequest.getCallStand()); targetTask.setGoodsDesc(wmsTaskRequest.getGoodsDesc()); } }