From dd8b00c139d1352f8f9c27e41d9cee1511c018dd Mon Sep 17 00:00:00 2001 From: wanghao Date: Fri, 15 Aug 2025 13:45:21 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=20=E7=A7=BB=E5=BA=93?= =?UTF-8?q?=E5=90=88=E5=BA=93=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/api/WmsPdaApiController.java | 46 +++++++++++++++---- .../org/dromara/wms/domain/WmsInventory.java | 6 +-- .../dromara/wms/domain/WmsOutstockDetail.java | 5 +- .../dromara/wms/domain/vo/WmsInventoryVo.java | 9 +++- .../wms/domain/vo/WmsOutstockDetailVo.java | 5 +- .../wms/mapper/ProdOrderInfoMapper.java | 2 +- .../wms/mapper/WmsBaseLocationMapper.java | 4 +- .../wms/service/IWmsPdaApiService.java | 3 ++ .../impl/WmsOutstockDetailServiceImpl.java | 4 +- .../impl/WmsOutstockRecordServiceImpl.java | 26 +++++------ .../service/impl/WmsPdaApiServiceImpl.java | 45 ++++++++++++++---- 11 files changed, 108 insertions(+), 47 deletions(-) diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/api/WmsPdaApiController.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/api/WmsPdaApiController.java index 8c00704..e385ef4 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/api/WmsPdaApiController.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/api/WmsPdaApiController.java @@ -27,7 +27,7 @@ public class WmsPdaApiController extends BaseController { * 原材料退库-现场扫描 */ @PostMapping("/raw/returnSelectCode") - public R returnSelectCode(String code,int type) { + public R returnSelectCode(String code, int type) { WmsOutstockRecordVo wmsOutstockRecordVo = null; if (type == 1) { @@ -73,7 +73,7 @@ public class WmsPdaApiController extends BaseController { if (wmsBaseLocationVo == null) { return R.fail("库位条码扫描错误"); } - vo.setWarehouseId(wmsBaseLocationVo.getWarehouseId()); + vo.setWarehouseId(wmsBaseLocationVo.getWarehouseId()); Boolean result = apiService.inSubmit(vo); return result ? R.ok() : R.fail(); } @@ -87,9 +87,7 @@ public class WmsPdaApiController extends BaseController { @PostMapping("/raw/outSelectByOrderCode") public R> outSelectByOrderCode(String orderCode) { List wmsOutstockDetailVo = apiService.outSelectByOrderCode(orderCode); - if (wmsOutstockDetailVo == null) { - return R.fail("出库单号不正确"); - } + if (wmsOutstockDetailVo == null) return R.fail("出库单号不正确"); return R.ok(wmsOutstockDetailVo); } @@ -100,7 +98,6 @@ public class WmsPdaApiController extends BaseController { public R rawSelectInVentoryByBatchCode(WmsOutstockRecord outstockRecord) { // 验证库存 WmsInventory wmsInventory = apiService.outSelectInVentoryByBatch(outstockRecord); - // WmsInventoryVo wmsInventoryVo=apiService.selectInVentoryByBatchCode(outstockRecord.getBatchCode(),outstockRecord.getLocationCode()); if (wmsInventory == null) { R.fail("物料不在待出库列表内"); } @@ -111,25 +108,52 @@ public class WmsPdaApiController extends BaseController { Boolean result = apiService.rawOutSubmit(outstockRecord, wmsInventory); return result ? R.ok() : R.fail(); } + /** * 特殊出库提交 */ @PostMapping("/raw/specialOutSubmit") public R specialOutSubmit(@RequestBody WmsOutstockRecord outstockRecord) { // 验证库存 - WmsInventoryVo WmsInventoryVo=apiService.selectInVentoryByBatchCode(outstockRecord.getBatchCode(),outstockRecord.getLocationCode()); + WmsInventoryVo WmsInventoryVo = apiService.selectInVentoryByBatchCode(outstockRecord.getBatchCode(), outstockRecord.getLocationCode()); if (WmsInventoryVo == null) { R.fail("条码扫描错误"); } if (WmsInventoryVo.getInventoryQty().compareTo(outstockRecord.getOutstockQty()) < 0) { R.fail("无法出库,当前库位库存为:" + WmsInventoryVo.getInventoryQty()); } - WmsInventory wmsInventory=new WmsInventory(); + WmsInventory wmsInventory = new WmsInventory(); BeanUtils.copyProperties(WmsInventoryVo, wmsInventory); Boolean result = apiService.specialOutSubmit(outstockRecord, wmsInventory); return result ? R.ok() : R.fail(); } + /** + * 查询库位上的条码 + */ + @GetMapping("/ledgerSelect") + public R ledgerSelect(String batchCode,String locationCode) { + // 验证库存 + WmsInventoryVo wmsInventoryVo = apiService.ledgerSelect(batchCode, locationCode); + if (wmsInventoryVo == null) { + R.fail("条码扫描错误"); + } + + return R.ok(wmsInventoryVo) ; + } + // 移库提交 + @GetMapping("/moveSubmit") + public R moveSubmit(@RequestBody WmsInventoryVo vo) { + // 验证库位 + WmsBaseLocationVo wmsBaseLocationVo = baseLocationService.selectLocationVoByCode(vo.getNewLocationCode()); + if (wmsBaseLocationVo == null) { + return R.fail("库位条码扫描错误"); + } + + boolean result=apiService.moveSubmit(vo); + return result ? R.ok() : R.fail(); + } + @PostMapping("/product/selectVehicle") public R productBindSelectVehicle(String code) { BaseToolingInfo baseToolingInfo = apiService.productBindSelectVehicle(code); @@ -145,7 +169,7 @@ public class WmsPdaApiController extends BaseController { if (tyreInfo == null) { return R.fail("查询失败,工装不正确"); } - return R.ok("查询成功",tyreInfo); + return R.ok("查询成功", tyreInfo); } @@ -342,6 +366,7 @@ public class WmsPdaApiController extends BaseController { /** * 查询机台 + * * @return */ @PostMapping("/selectMachineInfo") @@ -352,11 +377,12 @@ public class WmsPdaApiController extends BaseController { /** * 查询机台工位 + * * @return prod_base_station_info */ @PostMapping("/selectMachineStationList") public R> selectMachineStationList(Long machineId) { - System.out.println("上位机机台:"+machineId); + System.out.println("上位机机台:" + machineId); List list = apiService.selectMachineStationList(machineId); return list == null ? R.fail() : R.ok(list); } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsInventory.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsInventory.java index 89ed96c..e798d33 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsInventory.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsInventory.java @@ -1,9 +1,7 @@ package org.dromara.wms.domain; -import org.dromara.common.tenant.core.TenantEntity; import com.baomidou.mybatisplus.annotation.*; import lombok.Data; -import lombok.EqualsAndHashCode; import java.io.Serial; import java.math.BigDecimal; @@ -17,7 +15,7 @@ import java.util.Date; */ @Data @TableName("wms_inventory") -public class WmsInventory{ +public class WmsInventory { @Serial private static final long serialVersionUID = 1L; @@ -108,5 +106,7 @@ public class WmsInventory{ */ @TableField(exist = false) private String materialCategoryName;//字段映射 + @TableField(exist = false) + private String materialUnit;//字段映射 } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsOutstockDetail.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsOutstockDetail.java index ee48540..7f49b9f 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsOutstockDetail.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsOutstockDetail.java @@ -1,7 +1,6 @@ package org.dromara.wms.domain; import com.baomidou.mybatisplus.annotation.*; -import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler; import lombok.Data; import java.io.Serial; @@ -16,7 +15,7 @@ import java.util.Date; */ @Data @TableName("wms_outstock_detail") -public class WmsOutstockDetail { +public class WmsOutstockDetail { @Serial private static final long serialVersionUID = 1L; @@ -45,7 +44,7 @@ public class WmsOutstockDetail { /** * 出库数量 */ - @TableField(typeHandler = JacksonTypeHandler.class) + // @TableField(typeHandler = JacksonTypeHandler.class) private BigDecimal outstockQty; private double outSum; /** diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsInventoryVo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsInventoryVo.java index 87cc7f8..eb9f824 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsInventoryVo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsInventoryVo.java @@ -4,10 +4,10 @@ import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.TableField; -import org.dromara.common.excel.annotation.ExcelDictFormat; -import org.dromara.common.excel.convert.ExcelDictConvert; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; +import org.dromara.common.excel.annotation.ExcelDictFormat; +import org.dromara.common.excel.convert.ExcelDictConvert; import org.dromara.wms.domain.WmsInventory; import java.io.Serial; @@ -114,6 +114,8 @@ public class WmsInventoryVo implements Serializable { private String warehouseCode;//字段映射 private String materialCode;//字段映射 private String materialName;//字段映射 + private String unitName;//字段映射 + private String materialUnit;//字段映射 private String warehouseId; private BigDecimal maxStockAmount; private BigDecimal minStockAmount; @@ -124,4 +126,7 @@ public class WmsInventoryVo implements Serializable { */ private String materialCategoryName;//字段映射 + // 移库库位 + private String newLocationCode; + } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsOutstockDetailVo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsOutstockDetailVo.java index 7e2f687..bac5934 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsOutstockDetailVo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsOutstockDetailVo.java @@ -4,7 +4,6 @@ import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.TableField; -import com.ibm.icu.math.BigDecimal; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; import org.dromara.wms.domain.WmsOutstockDetail; @@ -56,8 +55,8 @@ public class WmsOutstockDetailVo implements Serializable { /** * 出库数量 */ - @ExcelProperty(value = "出库数量") - private BigDecimal outstockQty; + // @ExcelProperty(value = "出库数量") + // private BigDecimal outstockQty; /** * 物料大类 diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/ProdOrderInfoMapper.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/ProdOrderInfoMapper.java index d9bb249..0bc232f 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/ProdOrderInfoMapper.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/ProdOrderInfoMapper.java @@ -22,7 +22,7 @@ public interface ProdOrderInfoMapper extends BaseMapperPlus selectProdOrderInfoList(@Param("page") Page page, @Param(Constants.WRAPPER) Wrapper queryWrapper); + Page selectProdOrderInfoList(@Param("page") Page page, @Param(Constants.WRAPPER) Wrapper queryWrapper); diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsBaseLocationMapper.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsBaseLocationMapper.java index 8e5ea99..7e30cb7 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsBaseLocationMapper.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsBaseLocationMapper.java @@ -1,8 +1,9 @@ package org.dromara.wms.mapper; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.wms.domain.WmsBaseLocation; import org.dromara.wms.domain.vo.WmsBaseLocationVo; -import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; +import org.springframework.stereotype.Repository; /** * 库位基础信息Mapper接口 @@ -10,6 +11,7 @@ import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; * @author Yinq * @date 2025-01-08 */ +@Repository public interface WmsBaseLocationMapper extends BaseMapperPlus { } 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 cf91290..1f05c15 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 @@ -76,4 +76,7 @@ public interface IWmsPdaApiService { */ Boolean productionSubmitInStoreInfo(ProdInStockApiVo vo); + WmsInventoryVo ledgerSelect(String batchCode, String locationCode); + + boolean moveSubmit(WmsInventoryVo vo); } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsOutstockDetailServiceImpl.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsOutstockDetailServiceImpl.java index 20c0f72..9eb9a0c 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsOutstockDetailServiceImpl.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsOutstockDetailServiceImpl.java @@ -94,13 +94,13 @@ public class WmsOutstockDetailServiceImpl implements IWmsOutstockDetailService { //agv出库任务新增 .eq(StringUtils.isNotBlank(bo.getAgvStatus()), WmsOutstockDetail::getAgvStatus, bo.getAgvStatus()) .eq(StringUtils.isNotBlank(bo.getIsAgv()), WmsOutstockDetail::getIsAgv, bo.getIsAgv()) - .eq(bo.getCompleteQty() != null, WmsOutstockDetail::getCompleteQty, bo.getCompleteQty()) + // .eq(bo.getCompleteQty() != null, WmsOutstockDetail::getCompleteQty, bo.getCompleteQty()) //出库单子表原有 .eq(bo.getOutstockDetailId() != null, WmsOutstockDetail::getOutstockDetailId, bo.getOutstockDetailId()) .eq(StringUtils.isNotBlank(bo.getOutstockCode()), WmsOutstockDetail::getOutstockCode, bo.getOutstockCode()) .eq(bo.getOutstockId() != null, WmsOutstockDetail::getOutstockId, bo.getOutstockId()) .eq(bo.getMaterialId() != null, WmsOutstockDetail::getMaterialId, bo.getMaterialId()) - .eq(bo.getOutstockQty() != null, WmsOutstockDetail::getOutstockQty, bo.getOutstockQty()) + // .eq(bo.getOutstockQty() != null, WmsOutstockDetail::getOutstockQty, bo.getOutstockQty()) .eq(StringUtils.isNotBlank(bo.getMaterialCategoryId()), WmsOutstockDetail::getMaterialCategoryId, bo.getMaterialCategoryId()) .orderByDesc(WmsOutstockDetail::getCreateTime); return lqw; diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsOutstockRecordServiceImpl.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsOutstockRecordServiceImpl.java index 33f8124..c61f5a2 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsOutstockRecordServiceImpl.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsOutstockRecordServiceImpl.java @@ -1,29 +1,29 @@ package org.dromara.wms.service.impl; -import org.dromara.common.core.utils.MapstructUtils; -import org.dromara.common.core.utils.StringUtils; -import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.common.mybatis.core.page.PageQuery; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.github.yulichang.toolkit.JoinWrappers; import com.github.yulichang.wrapper.MPJLambdaWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import lombok.RequiredArgsConstructor; -import org.dromara.wms.domain.*; +import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.wms.domain.BaseMaterialCategory; +import org.dromara.wms.domain.BaseMaterialInfo; +import org.dromara.wms.domain.WmsOutstockRecord; +import org.dromara.wms.domain.bo.WmsOutstockRecordBo; import org.dromara.wms.domain.bo.WmsReturnOrderBo; +import org.dromara.wms.domain.vo.WmsOutstockRecordVo; +import org.dromara.wms.mapper.WmsOutstockRecordMapper; +import org.dromara.wms.service.IWmsOutstockRecordService; import org.dromara.wms.service.IWmsReturnOrderService; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import org.dromara.wms.domain.bo.WmsOutstockRecordBo; -import org.dromara.wms.domain.vo.WmsOutstockRecordVo; -import org.dromara.wms.mapper.WmsOutstockRecordMapper; -import org.dromara.wms.service.IWmsOutstockRecordService; -import java.math.BigDecimal; +import java.util.Collection; import java.util.List; import java.util.Map; -import java.util.Collection; /** * 出库记录Service业务层处理 @@ -39,7 +39,7 @@ public class WmsOutstockRecordServiceImpl implements IWmsOutstockRecordService { @Autowired private IWmsReturnOrderService wmsReturnOrderService; - private static String NO_RETURN = "1"; //禁用回退 + private static final String NO_RETURN = "1"; //禁用回退 /** * 查询出库记录 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 c552a11..3c98a50 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 @@ -247,8 +247,9 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { /** * 出库提交 + * * @param outstockRecord 数据 - * @param wmsInventory 库存 + * @param wmsInventory 库存 * @return */ @Override @@ -256,8 +257,9 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { outStoreOperation(outstockRecord, wmsInventory); // 修改子表出库数量 wmsOutstockDetailMapper.updateOutNumberByObjId(wmsInventory.getOutstockDetailId(), outstockRecord.getOutstockQty()); - return null; + return true; } + // 出库操作 private void outStoreOperation(WmsOutstockRecord outstockRecord, WmsInventory wmsInventory) { // 出库数量 @@ -282,6 +284,7 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { /** * 特殊出库提交 少了子表操作 + * * @param outstockRecord * @param wmsInventory * @return @@ -290,7 +293,7 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { public Boolean specialOutSubmit(WmsOutstockRecord outstockRecord, WmsInventory wmsInventory) { // 出库数量 outStoreOperation(outstockRecord, wmsInventory); - return null; + return true; } /** @@ -298,7 +301,10 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { */ @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); } @@ -433,6 +439,7 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { public WmsOutstockRecordVo setHppOutRecord(String code) { return apiMapper.setHppOutRecord(code); } + // 上位机删除 @Override public int semiDeleteErrorCode(String code) { @@ -441,20 +448,21 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { /** * 生产入库接口 + * * @param vo 入库详情 */ @Override @Transactional(rollbackFor = Exception.class) public Boolean productionSubmitInStoreInfo(ProdInStockApiVo vo) { Date nowDate = new Date(); - if (StringUtils.isEmpty(vo.getSecondConfirmFlag())){ + if (StringUtils.isEmpty(vo.getSecondConfirmFlag())) { throw new ServiceException("二次确认标识为空!"); } String secondConfirmFlag = vo.getSecondConfirmFlag();// 二次确认标识(0否 1是) Long locationId = vo.getLocationId() == null ? 3L : vo.getLocationId(); Long warehouseId = 4L;//默认仓库 BaseMaterialInfoVo materialInfoVo = baseMaterialInfoMapper.selectVoById(vo.getMaterialId()); - if (StringUtils.isNull(materialInfoVo)){ + if (StringUtils.isNull(materialInfoVo)) { throw new ServiceException("此物料不存在!"); } WmsInstockPrint print = new WmsInstockPrint(); @@ -470,7 +478,7 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { print.setCodeYesNo("1"); print.setLocationId(locationId); - if (secondConfirmFlag.equals("0")){ + if (secondConfirmFlag.equals("0")) { print.setInboundStatus("1"); print.setActualInboundTime(nowDate); WmsInstockRecord record = new WmsInstockRecord(); @@ -478,7 +486,7 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { record.setMaterialId(vo.getMaterialId()); record.setWarehouseId(warehouseId); WmsBaseLocationVo locationVo = wmsBaseLocationMapper.selectVoById(locationId); - if (locationVo == null){ + if (locationVo == null) { throw new ServiceException("此库位不存在!"); } record.setLocationCode(locationVo.getLocationCode()); @@ -507,10 +515,29 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { wmsInventoryMapper.updateById(inventory); } wmsInstockPrintMapper.insert(print); - } else if (secondConfirmFlag.equals("1")){ + } else if (secondConfirmFlag.equals("1")) { print.setInboundStatus("0"); wmsInstockPrintMapper.insert(print); } return true; } + + @Override + public WmsInventoryVo ledgerSelect(String batchCode, String locationCode) { + MPJLambdaWrapper lqw = JoinWrappers.lambda(WmsInventory.class) + .selectAll(WmsInventory.class) + .select(BaseMaterialInfo::getMaterialCode, BaseMaterialInfo::getMaterialName, BaseMaterialInfo::getMaterialUnit, BaseMaterialInfo::getMaterialSpec) + .leftJoin(BaseMaterialInfo.class, BaseMaterialInfo::getMaterialId, WmsOutstockRecord::getMaterialId) + .eq(WmsInventory::getBatchCode, batchCode).eq(WmsInventory::getLocationCode, locationCode); + return wmsInventoryMapper.selectVoOne(lqw); + } + + @Override + public boolean moveSubmit(WmsInventoryVo vo) { + WmsInventory inventory = new WmsInventory(); + inventory.setInventoryId(vo.getInventoryId()); + inventory.setLocationCode(vo.getNewLocationCode()); + int i = wmsInventoryMapper.updateById(inventory); + return i > 0; + } }