From e2456f5503324f1cd0f5b1e9252a8231b772d526 Mon Sep 17 00:00:00 2001 From: wanghao Date: Fri, 14 Mar 2025 17:44:35 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=20=E7=9B=98=E7=82=B9?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wms/controller/WmsPdaApiController.java | 6 ++ .../dromara/wms/mapper/WmsPdaApiMapper.java | 4 ++ .../wms/service/IWmsPdaApiService.java | 2 + .../service/impl/WmsPdaApiServiceImpl.java | 69 +++++++++---------- 4 files changed, 43 insertions(+), 38 deletions(-) diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/WmsPdaApiController.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/WmsPdaApiController.java index f6433bf6..67053528 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/WmsPdaApiController.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/WmsPdaApiController.java @@ -274,9 +274,15 @@ public class WmsPdaApiController extends BaseController { } return R.ok(list); } + @PostMapping("/storeCheck/submitCheckRecord") public R< Void> storeCheckSubmitCheckRecord(@RequestBody WmsInventoryCheckRecord wmsInventoryCheckRecord) { Boolean result=apiService.storeCheckSubmitCheckRecord(wmsInventoryCheckRecord); return result ? R.ok() : R.fail(); } + @PostMapping("/storeCheck/storeCheckWorkOver") + public R storeCheckStoreCheckWorkOver(String checkCode) { + Boolean result=apiService.storeCheckStoreCheckWorkOver(checkCode); + return result ? R.ok() : R.fail(); + } } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsPdaApiMapper.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsPdaApiMapper.java index f9814ecf..9ffbf218 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsPdaApiMapper.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsPdaApiMapper.java @@ -2,6 +2,7 @@ package org.dromara.wms.mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; +import org.apache.ibatis.annotations.Update; import org.dromara.wms.domain.ShiftChange; import org.dromara.wms.domain.WmsPsmInLoad; import org.dromara.wms.domain.WmsPsmInLoadDetail; @@ -43,4 +44,7 @@ public interface WmsPdaApiMapper { * @return */ List selectRawCheckLocationList(@Param("storeId") Long storeId); + + @Update("UPDATE wms_inventory_check SET check_status =#{status} ,end_time = getdate() WHERE check_code =#{checkCode} ") + int updateWmsInventoryCheck(@Param("checkCode") String checkCode,@Param("status") int status); } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/IWmsPdaApiService.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/IWmsPdaApiService.java index 5c9a08ff..584e84fe 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/IWmsPdaApiService.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/IWmsPdaApiService.java @@ -50,4 +50,6 @@ public interface IWmsPdaApiService { List storeCheckSelectInventory(String locationCode); Boolean storeCheckSubmitCheckRecord(WmsInventoryCheckRecord wmsInventoryCheckRecord); + + Boolean storeCheckStoreCheckWorkOver(String checkCode); } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsPdaApiServiceImpl.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsPdaApiServiceImpl.java index efbe6aec..7dfb6594 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsPdaApiServiceImpl.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsPdaApiServiceImpl.java @@ -3,9 +3,11 @@ package org.dromara.wms.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.github.yulichang.toolkit.JoinWrappers; import com.github.yulichang.wrapper.MPJLambdaWrapper; +import com.github.yulichang.wrapper.UpdateJoinWrapper; import lombok.RequiredArgsConstructor; import org.dromara.common.core.utils.DateUtils; import org.dromara.common.satoken.utils.LoginHelper; @@ -33,15 +35,7 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { @Override public WmsOutstockRecordVo returnSelectCode(String code) { - MPJLambdaWrapper lqw = JoinWrappers.lambda(WmsOutstockRecord.class) - .selectAll(WmsOutstockRecord.class) - .select(BaseMaterialInfo::getMaterialCode, BaseMaterialInfo::getMaterialName, BaseMaterialInfo::getMaterialUnit, BaseMaterialInfo::getMaterialSpec) - .leftJoin(BaseMaterialInfo.class, BaseMaterialInfo::getMaterialId, WmsOutstockRecord::getMaterialId) - .select(WmsBaseLocation::getWarehouseId) - .leftJoin(WmsBaseLocation.class, WmsBaseLocation::getLocationCode, WmsOutstockRecord::getLocationCode) - .eq(WmsOutstockRecord::getBatchCode, code) - .eq(WmsOutstockRecord::getReturnFlag, 0) - .orderByDesc(WmsOutstockRecord::getCreateTime); + MPJLambdaWrapper lqw = JoinWrappers.lambda(WmsOutstockRecord.class).selectAll(WmsOutstockRecord.class).select(BaseMaterialInfo::getMaterialCode, BaseMaterialInfo::getMaterialName, BaseMaterialInfo::getMaterialUnit, BaseMaterialInfo::getMaterialSpec).leftJoin(BaseMaterialInfo.class, BaseMaterialInfo::getMaterialId, WmsOutstockRecord::getMaterialId).select(WmsBaseLocation::getWarehouseId).leftJoin(WmsBaseLocation.class, WmsBaseLocation::getLocationCode, WmsOutstockRecord::getLocationCode).eq(WmsOutstockRecord::getBatchCode, code).eq(WmsOutstockRecord::getReturnFlag, 0).orderByDesc(WmsOutstockRecord::getCreateTime); return wmsOutstockRecordMapper.selectVoOne(lqw); } @@ -115,10 +109,7 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { @Override public Boolean updataInStoreRecord(WmsHppInStockDetailVo vo) { LambdaUpdateWrapper lambdaUpdateWrapper = new LambdaUpdateWrapper<>(); - lambdaUpdateWrapper.eq(WmsHppInStockDetail::getObjId, vo.getObjId()) - .set(WmsHppInStockDetail::getStorePlaceId, vo.getStorePlaceId()) - .set(WmsHppInStockDetail::getUpdateTime, DateUtils.getTime()) - .set(WmsHppInStockDetail::getUpdateBy, LoginHelper.getUsername()); + lambdaUpdateWrapper.eq(WmsHppInStockDetail::getObjId, vo.getObjId()).set(WmsHppInStockDetail::getStorePlaceId, vo.getStorePlaceId()).set(WmsHppInStockDetail::getUpdateTime, DateUtils.getTime()).set(WmsHppInStockDetail::getUpdateBy, LoginHelper.getUsername()); int rows = hppInStockDetailMapper.update(null, lambdaUpdateWrapper); if (rows > 0) { // System.out.println("更新成功"); @@ -155,9 +146,7 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { hppStorageDetailMapper.deleteById(vo.getStorePlaceId()); } else { LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); - updateWrapper.eq(WmsHppStorageDetail::getObjId, vo.getObjId()) - .set(WmsHppStorageDetail::getStorageNum, vo.getStorageNum() - vo.getOutNumber()) - .set(WmsHppStorageDetail::getUpdateTime, DateUtils.getTime()); + updateWrapper.eq(WmsHppStorageDetail::getObjId, vo.getObjId()).set(WmsHppStorageDetail::getStorageNum, vo.getStorageNum() - vo.getOutNumber()).set(WmsHppStorageDetail::getUpdateTime, DateUtils.getTime()); hppStorageDetailMapper.update(updateWrapper); } WmsHppOutStockDetail outStockDetail = new WmsHppOutStockDetail(); @@ -206,19 +195,14 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { @Override public List outSelectByOrderCode(String orderCode) { - MPJLambdaWrapper lqw = JoinWrappers.lambda(WmsOutstockDetail.class) - .selectAll(WmsOutstockDetail.class) - .select(BaseMaterialInfo::getMaterialUnit, BaseMaterialInfo::getMaterialSpec) - .leftJoin(BaseMaterialInfo.class, BaseMaterialInfo::getMaterialId, WmsOutstockDetail::getMaterialId) - .eq(WmsOutstockDetail::getOutstockCode, orderCode); + MPJLambdaWrapper lqw = JoinWrappers.lambda(WmsOutstockDetail.class).selectAll(WmsOutstockDetail.class).select(BaseMaterialInfo::getMaterialUnit, BaseMaterialInfo::getMaterialSpec).leftJoin(BaseMaterialInfo.class, BaseMaterialInfo::getMaterialId, WmsOutstockDetail::getMaterialId).eq(WmsOutstockDetail::getOutstockCode, orderCode); return wmsOutstockDetailMapper.selectVoList(lqw); } @Override public WmsInventoryVo selectInVentoryByBatchCode(String bacthCode, String locationCode) { LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); - lqw.eq(WmsInventory::getBatchCode, bacthCode) - .eq(WmsInventory::getLocationCode, locationCode); + lqw.eq(WmsInventory::getBatchCode, bacthCode).eq(WmsInventory::getLocationCode, locationCode); return wmsInventoryMapper.selectVoOne(lqw); } @@ -243,7 +227,7 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { inventoryQty = inventoryQty.subtract(outstockQty); if (inventoryQty.compareTo(BigDecimal.ZERO) == 0) { wmsInventoryMapper.deleteById(wmsInventory.getInventoryId()); - }else { + } else { WmsInventory inventory = new WmsInventory(); inventory.setInventoryId(wmsInventory.getInventoryId()); inventory.setInventoryQty(inventoryQty); @@ -255,7 +239,7 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { outstockRecord.setCreateTime(DateUtils.getNowDate()); wmsOutstockRecordMapper.insert(outstockRecord); // 修改子表出库数量 - wmsOutstockDetailMapper.updateOutNumberByObjId(wmsInventory.getOutstockDetailId(),outstockRecord.getOutstockQty()); + wmsOutstockDetailMapper.updateOutNumberByObjId(wmsInventory.getOutstockDetailId(), outstockRecord.getOutstockQty()); return null; @@ -263,24 +247,20 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { /** * 出库连子表查物料库存 + * * @param outstockRecord * @return */ @Override public WmsInventory outSelectInVentoryByBatch(WmsOutstockRecord outstockRecord) { - MPJLambdaWrapper lqw = JoinWrappers.lambda(WmsInventory.class) - .rightJoin(WmsOutstockDetail.class,WmsOutstockDetail::getMaterialId,WmsInventory::getMaterialId) - .select(WmsOutstockDetail::getOutstockDetailId) - .eq(WmsOutstockDetail::getOutstockCode, outstockRecord.getOutstockCode()) - .eq(WmsInventory::getBatchCode, outstockRecord.getBatchCode()) - .eq(WmsInventory::getLocationCode, outstockRecord.getLocationCode()); + MPJLambdaWrapper lqw = JoinWrappers.lambda(WmsInventory.class).rightJoin(WmsOutstockDetail.class, WmsOutstockDetail::getMaterialId, WmsInventory::getMaterialId).select(WmsOutstockDetail::getOutstockDetailId).eq(WmsOutstockDetail::getOutstockCode, outstockRecord.getOutstockCode()).eq(WmsInventory::getBatchCode, outstockRecord.getBatchCode()).eq(WmsInventory::getLocationCode, outstockRecord.getLocationCode()); return wmsInventoryMapper.selectOne(lqw); } @Override public List selectStoreInfo(String type) { - List list=apiMapper.selectRawStore(); + List list = apiMapper.selectRawStore(); return list; } @@ -288,9 +268,10 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { @Override public List storeCheckSelectLocation(String type, Long storeId) { - List list= apiMapper.selectRawCheckLocationList(storeId); + List list = apiMapper.selectRawCheckLocationList(storeId); return list; } + private final WmsInventoryCheckMapper wmsInventoryCheckMapper; // 查询盘点工单 @@ -301,18 +282,18 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { WmsInventoryCheck wmsInventoryCheck = wmsInventoryCheckMapper.selectInventoryCheckOrder(); WmsInventoryCheck insert = new WmsInventoryCheck(); if (wmsInventoryCheck == null) { - insert.setCheckCode("PD"+tag+"001"); - }else { + insert.setCheckCode("PD" + tag + "001"); + } else { String checkCode = wmsInventoryCheck.getCheckCode(); String lastThreeDigits = checkCode.substring(checkCode.length() - 3); int nextNumber = Integer.parseInt(lastThreeDigits) + 1; String formattedNumber = String.format("%03d", nextNumber); - insert.setCheckCode("PD"+tag+formattedNumber); + insert.setCheckCode("PD" + tag + formattedNumber); } insert.setPlanWarehouseId(storeId); insert.setCreateBy(LoginHelper.getUserId()); wmsInventoryCheckMapper.insert(insert); - return wmsInventoryCheck; + return insert; } @Override @@ -321,13 +302,25 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { lqw.eq(WmsInventory::getLocationCode, locationCode); return wmsInventoryMapper.selectVoList(lqw); } + private final WmsInventoryCheckRecordMapper wmsInventoryCheckRecordMapper; + @Override public Boolean storeCheckSubmitCheckRecord(WmsInventoryCheckRecord wmsInventoryCheckRecord) { - wmsInventoryCheckRecord.setCheckStatus(wmsInventoryCheckRecord.getInventoryQty().compareTo(wmsInventoryCheckRecord.getCheckQty())==0 ?"0":"1"); + wmsInventoryCheckRecord.setCheckStatus( + wmsInventoryCheckRecord.getInventoryQty().compareTo(wmsInventoryCheckRecord.getCheckQty()) == 0 ? "0" : "1"); wmsInventoryCheckRecord.setCreateBy(LoginHelper.getUsername()); wmsInventoryCheckRecordMapper.insert(wmsInventoryCheckRecord); return true; } + + @Override + public Boolean storeCheckStoreCheckWorkOver(String checkCode) { + // UpdateJoinWrapper updateWrapper = new UpdateJoinWrapper<>(WmsInventoryCheck.class); + // updateWrapper.eq(WmsInventoryCheck::getCheckCode,checkCode ) + // .set(WmsInventoryCheck::getCheckStatus, "3") + // .set(WmsInventoryCheck::getEndTime, DateUtils.getNowDate()); + return apiMapper.updateWmsInventoryCheck(checkCode,3) > 0; + } }