From 8d93704ae9f6312996e230abfa60ceafcc36dfcf Mon Sep 17 00:00:00 2001 From: wanghao Date: Fri, 7 Feb 2025 19:32:12 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=20=E5=8D=8A=E5=88=B6?= =?UTF-8?q?=E5=93=81=E5=85=A5=E5=BA=93=E6=8E=A5=E5=8F=A3=E3=80=81=E6=88=90?= =?UTF-8?q?=E5=93=81=E5=85=A5=E5=BA=93=E3=80=81=E7=BB=91=E5=AE=9A=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wms/controller/WmsPdaApiController.java | 111 ++++++++++++---- .../wms/domain/WmsHppStorageDetail.java | 7 +- .../org/dromara/wms/domain/WmsPsmInLoad.java | 2 +- .../org/dromara/wms/domain/WmsPsmInStock.java | 1 + .../wms/domain/bo/WmsHppInStockDetailBo.java | 3 + .../wms/domain/vo/WmsHppInStockDetailVo.java | 1 + .../wms/domain/vo/WmsHppStorageDetailVo.java | 3 +- .../wms/domain/vo/WmsPsmStorePlaceVo.java | 1 + .../wms/mapper/WmsHppInStockDetailMapper.java | 9 +- .../wms/mapper/WmsHppStorageDetailMapper.java | 2 + .../wms/mapper/WmsHppStorePlaceMapper.java | 4 +- .../dromara/wms/mapper/WmsPdaApiMapper.java | 16 +++ .../wms/mapper/WmsPsmInLoadDetailMapper.java | 2 + .../wms/mapper/WmsPsmInStockMapper.java | 2 + .../wms/mapper/WmsPsmStorePlaceMapper.java | 6 +- .../wms/service/IWmsHppStorePlaceService.java | 3 + .../wms/service/IWmsPdaApiService.java | 11 ++ .../wms/service/IWmsPsmStorePlaceService.java | 3 + .../impl/WmsHppStorePlaceServiceImpl.java | 5 + .../service/impl/WmsPdaApiServiceImpl.java | 118 +++++++++++++++--- .../impl/WmsPsmStorePlaceServiceImpl.java | 5 + .../resources/mapper/wms/WmsPdaApiMapper.xml | 57 +++++++++ 22 files changed, 327 insertions(+), 45 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 374a58b4..19031145 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 @@ -1,27 +1,30 @@ package org.dromara.wms.controller; +import lombok.RequiredArgsConstructor; import org.dromara.common.core.domain.R; -import org.dromara.common.core.validate.EditGroup; import org.dromara.common.web.core.BaseController; import org.dromara.wms.domain.bo.WmsReturnOrderBo; -import org.dromara.wms.domain.vo.WmsOutstockRecordVo; -import org.dromara.wms.domain.vo.WmsPsmInLoadVo; -import org.dromara.wms.service.IWmsPdaApiService; -import org.dromara.wms.service.IWmsReturnOrderService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.validation.annotation.Validated; +import org.dromara.wms.domain.vo.*; +import org.dromara.wms.service.*; import org.springframework.web.bind.annotation.*; import java.util.List; - +@RequiredArgsConstructor @RestController @RequestMapping("/pda") public class WmsPdaApiController extends BaseController { - @Autowired - private IWmsPdaApiService apiService; - @Autowired - private IWmsReturnOrderService wmsReturnOrderService; + private final IWmsPdaApiService apiService; + + private final IWmsReturnOrderService wmsReturnOrderService; + + private final IWmsPsmStorePlaceService wmsPsmStorePlaceService; + + + /** + * 原材料退库-现场扫描 + * + */ @PostMapping("/raw/returnSelectCode") public R returnSelectCode(String code) { WmsOutstockRecordVo wmsOutstockRecordVo = apiService.returnSelectCode(code); @@ -31,8 +34,12 @@ public class WmsPdaApiController extends BaseController { } return R.ok(wmsOutstockRecordVo); } + + /** + * 原材料退库提交 + */ @PostMapping("/raw/returnSubmit") - public R rawReturnSubmit( @RequestBody WmsReturnOrderBo bo) { + public R rawReturnSubmit(@RequestBody WmsReturnOrderBo bo) { Boolean result = wmsReturnOrderService.insertByBo(bo); if (result) { apiService.rawReturnSubmitUpdateStateById(bo.getOutstockRecordId()); @@ -40,16 +47,78 @@ public class WmsPdaApiController extends BaseController { return toAjax(result); } + /** + * 成品跟载具绑定 + * + * @param vehicleCode 载具 + * @param productList 成品轮胎码list + */ @PostMapping("/product/bindVehicleSubmit") - public R bindVehicleSubmit(@RequestParam String vehicleCode,@RequestParam List productList) { - // System.out.println(vehicleCode); - // System.out.println(productList.toString()); - - return R.ok(); + public R bindVehicleSubmit(@RequestParam String vehicleCode, @RequestParam List productList) { + Boolean result = apiService.bindVehicleSubmit(vehicleCode, productList); + if (result) { + return R.ok(); + } + return R.fail(); } + + /** + * 成品入库-扫描载具号查询物料信息 + * + * @param code 载具 + * @return WmsPsmInLoadVo + */ @PostMapping("/product/selectVehicleInfo") - public R selectVehicleInfo(String code){ - WmsPsmInLoadVo wmsPsmInLoadVo=apiService.productSelectVehicleInfo(code); - return R.ok(); + public R selectVehicleInfo(String code) { + WmsPsmInLoadVo wmsPsmInLoadVo = apiService.productSelectVehicleInfo(code); + if (wmsPsmInLoadVo == null) { + return R.fail("载具编号错误"); + } + return R.ok(wmsPsmInLoadVo); + } + + @PostMapping("/product/submitInStoreInfo") + public R productSubmitInStoreInfo(@RequestBody WmsPsmInLoadVo vo) { + // 验证库位条码 + WmsPsmStorePlaceVo wmsPsmStorePlace = wmsPsmStorePlaceService.selectStorePlaceInfoByCode(vo.getStorePlaceCode()); + if (wmsPsmStorePlace == null) { + return R.fail("库位编码扫描错误"); + } + vo.setStoreName(wmsPsmStorePlace.getStoreName()); + Boolean result = apiService.productSubmitInStoreInfo(vo); + + return result ? R.ok() : R.fail(); + } + + /** + * 半成品入库 + * @param code 载具 + */ + @PostMapping("/semi/selectVehicleInfo") + public R semiSelectVehicleInfo(String code) { + WmsHppInStockDetailVo wmsHppInStockDetailVo=apiService.semiSelectVehicleInfo(code); + if (wmsHppInStockDetailVo == null) { + return R.fail("载具没有绑定物料,或者载具编码扫描错误"); + } + return R.ok(wmsHppInStockDetailVo); + } + + private final IWmsHppStorePlaceService wmsHppStorePlaceService; + + /** + * 半成品入库提交 + * @param vo xinx + */ + @PostMapping("/semi/submitInstore") + public R semiSubmitInStoreInfo(@RequestBody WmsHppInStockDetailVo vo) { + // 验证库位条码 + WmsHppStorePlaceVo wmsPsmStorePlace = wmsHppStorePlaceService.selectStorePlaceInfoByCode(vo.getStorePlaceCode()); + if (wmsPsmStorePlace == null) { + return R.fail("库位编码扫描错误"); + } + vo.setStorePlaceId(wmsPsmStorePlace.getObjId()); + Boolean result = apiService.updataInStoreRecord(vo); + + return result ? R.ok() : R.fail(); } } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsHppStorageDetail.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsHppStorageDetail.java index 05310cef..1979e278 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsHppStorageDetail.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsHppStorageDetail.java @@ -1,10 +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; import java.util.Date; @@ -25,7 +22,7 @@ public class WmsHppStorageDetail { /** * 主键 */ - @TableId(type = IdType.AUTO) + @TableId(type = IdType.AUTO,value = "obj_id") private Long objId; /** @@ -91,5 +88,7 @@ public class WmsHppStorageDetail { private String materialCode; + private Long minParkingTime; + private Long maxParkingTime; } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsPsmInLoad.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsPsmInLoad.java index bce76c2d..c99c3b46 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsPsmInLoad.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsPsmInLoad.java @@ -70,7 +70,7 @@ public class WmsPsmInLoad { /** * 装载数量 */ - private Long loadAmount; + private int loadAmount; /** * 租户id */ diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsPsmInStock.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsPsmInStock.java index 0906a234..eef98ff0 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsPsmInStock.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsPsmInStock.java @@ -24,6 +24,7 @@ public class WmsPsmInStock{ /** * 表主键 */ + @TableId(type = IdType.AUTO,value = "in_stock_id") private Long inStockId; /** diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsHppInStockDetailBo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsHppInStockDetailBo.java index 93a85d85..154c427e 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsHppInStockDetailBo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsHppInStockDetailBo.java @@ -79,6 +79,9 @@ public class WmsHppInStockDetailBo extends BaseEntity { private BigDecimal instockNum; + private String storePlaceCode; + + private String unitName; } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsHppInStockDetailVo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsHppInStockDetailVo.java index 17d21a30..daca3b8a 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsHppInStockDetailVo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsHppInStockDetailVo.java @@ -111,5 +111,6 @@ public class WmsHppInStockDetailVo implements Serializable { private BigDecimal instockNum; private String storePlaceCode; private String materialCode; + private String unitName; } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsHppStorageDetailVo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsHppStorageDetailVo.java index 1cb13ee8..9e551742 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsHppStorageDetailVo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsHppStorageDetailVo.java @@ -105,7 +105,8 @@ public class WmsHppStorageDetailVo implements Serializable { private Date updateTime; private String storePlaceCode; private String materialCode; - + private Long minParkingTime; + private Long maxParkingTime; } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsPsmStorePlaceVo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsPsmStorePlaceVo.java index ba86e041..90e878bc 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsPsmStorePlaceVo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsPsmStorePlaceVo.java @@ -85,6 +85,7 @@ public class WmsPsmStorePlaceVo implements Serializable { @TableField(fill = FieldFill.INSERT_UPDATE) private Date updateTime; private String storeCode; + private String storeName; diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsHppInStockDetailMapper.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsHppInStockDetailMapper.java index 0f6d5dbe..1c78b780 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsHppInStockDetailMapper.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsHppInStockDetailMapper.java @@ -1,8 +1,10 @@ package org.dromara.wms.mapper; +import org.apache.ibatis.annotations.Select; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.wms.domain.WmsHppInStockDetail; import org.dromara.wms.domain.vo.WmsHppInStockDetailVo; +import org.springframework.stereotype.Repository; /** * 半制品入库Mapper接口 @@ -10,6 +12,11 @@ import org.dromara.wms.domain.vo.WmsHppInStockDetailVo; * @author LionLi * @date 2025-01-14 */ +@Repository public interface WmsHppInStockDetailMapper extends BaseMapperPlus { - + @Select("select top 1 obj_id,create_time,card_no,shelf_no, grade_code,product_category,\n" + + " material_id,material_spec,instock_num,material_code,unit_name\n" + + "from wms_hpp_in_stock_detail where store_place_id is null and shelf_no=#{code}\n" + + "order by create_time") + WmsHppInStockDetailVo semiSelectVehicleInfo(String code); } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsHppStorageDetailMapper.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsHppStorageDetailMapper.java index 4753bae4..fd4cceb8 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsHppStorageDetailMapper.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsHppStorageDetailMapper.java @@ -4,6 +4,7 @@ package org.dromara.wms.mapper; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.wms.domain.WmsHppStorageDetail; import org.dromara.wms.domain.vo.WmsHppStorageDetailVo; +import org.springframework.stereotype.Repository; /** * 半成品库存Mapper接口 @@ -11,6 +12,7 @@ import org.dromara.wms.domain.vo.WmsHppStorageDetailVo; * @author LionLi * @date 2025-01-14 */ +@Repository public interface WmsHppStorageDetailMapper extends BaseMapperPlus { } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsHppStorePlaceMapper.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsHppStorePlaceMapper.java index fff1889a..f1c379c4 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsHppStorePlaceMapper.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsHppStorePlaceMapper.java @@ -1,5 +1,6 @@ package org.dromara.wms.mapper; +import org.apache.ibatis.annotations.Select; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.wms.domain.WmsHppStorePlace; import org.dromara.wms.domain.vo.WmsHppStorePlaceVo; @@ -11,5 +12,6 @@ import org.dromara.wms.domain.vo.WmsHppStorePlaceVo; * @date 2025-01-14 */ public interface WmsHppStorePlaceMapper extends BaseMapperPlus { - + @Select("select top 1 obj_id,store_id,store_place_code,store_place_name from wms_hpp_store_place where store_place_code=#{storePlaceCode}") + WmsHppStorePlaceVo selectStorePlaceInfoByCode(String storePlaceCode); } 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 f1eb44c3..179a6201 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 @@ -1,9 +1,25 @@ package org.dromara.wms.mapper; import org.apache.ibatis.annotations.Param; +import org.dromara.wms.domain.WmsPsmInLoad; +import org.dromara.wms.domain.WmsPsmInLoadDetail; +import org.dromara.wms.domain.WmsPsmInStock; +import org.dromara.wms.domain.vo.WmsPsmInLoadVo; import org.springframework.stereotype.Repository; +import java.util.List; + @Repository public interface WmsPdaApiMapper { void rawReturnSubmitUpdateStateById(@Param("warehouseId") Long warehouseId); + + int bindVehicleSubmitInsertInLoad(@Param("wmsPsmInLoad") WmsPsmInLoad wmsPsmInLoad); + + void bindVehicleSubmitInsertInLoadDetail(@Param("id") Long inLoadId, @Param("list") List productList); + + WmsPsmInLoadVo productSelectVehicleInfo(String code); + + void insertInStockDetail(@Param("id") Long inStockId, @Param("list") List list); + + void insertPsmStorage(@Param("list") List list,@Param("data") WmsPsmInStock vo); } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsPsmInLoadDetailMapper.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsPsmInLoadDetailMapper.java index 1fad44a9..a0048e08 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsPsmInLoadDetailMapper.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsPsmInLoadDetailMapper.java @@ -3,6 +3,7 @@ package org.dromara.wms.mapper; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.wms.domain.WmsPsmInLoadDetail; import org.dromara.wms.domain.vo.WmsPsmInLoadDetailVo; +import org.springframework.stereotype.Repository; /** * 装车架子详细信息Mapper接口 @@ -10,6 +11,7 @@ import org.dromara.wms.domain.vo.WmsPsmInLoadDetailVo; * @author LionLi * @date 2025-01-15 */ +@Repository public interface WmsPsmInLoadDetailMapper extends BaseMapperPlus { } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsPsmInStockMapper.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsPsmInStockMapper.java index 09ed0c5d..91a6b13b 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsPsmInStockMapper.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsPsmInStockMapper.java @@ -3,6 +3,7 @@ package org.dromara.wms.mapper; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.wms.domain.WmsPsmInStock; import org.dromara.wms.domain.vo.WmsPsmInStockVo; +import org.springframework.stereotype.Repository; /** * 成品入库记录Mapper接口 @@ -10,6 +11,7 @@ import org.dromara.wms.domain.vo.WmsPsmInStockVo; * @author LionLi * @date 2025-01-15 */ +@Repository public interface WmsPsmInStockMapper extends BaseMapperPlus { } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsPsmStorePlaceMapper.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsPsmStorePlaceMapper.java index a32db176..382abea2 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsPsmStorePlaceMapper.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsPsmStorePlaceMapper.java @@ -1,5 +1,6 @@ package org.dromara.wms.mapper; +import org.apache.ibatis.annotations.Select; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.wms.domain.WmsPsmStorePlace; import org.dromara.wms.domain.vo.WmsPsmStorePlaceVo; @@ -11,5 +12,8 @@ import org.dromara.wms.domain.vo.WmsPsmStorePlaceVo; * @date 2025-01-15 */ public interface WmsPsmStorePlaceMapper extends BaseMapperPlus { - + @Select("select top 1 store_place_id,store_place_code, store_place_name, place.store_id," + + "sap_code, store_code, store_name,store_type_id from wms_psm_store_place place " + + "left join dbo.wms_psm_store wps on place.store_id = wps.store_id where store_place_code=#{storePlaceCode} ") + WmsPsmStorePlaceVo selectStorePlaceInfoByCode(String storePlaceCode); } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/IWmsHppStorePlaceService.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/IWmsHppStorePlaceService.java index cd9ddf95..ed609a36 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/IWmsHppStorePlaceService.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/IWmsHppStorePlaceService.java @@ -5,6 +5,7 @@ import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.wms.domain.bo.WmsHppStorePlaceBo; import org.dromara.wms.domain.vo.WmsHppStorePlaceVo; +import org.dromara.wms.domain.vo.WmsPsmStorePlaceVo; import java.util.Collection; import java.util.List; @@ -66,4 +67,6 @@ public interface IWmsHppStorePlaceService { * @return 是否删除成功 */ Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + + WmsHppStorePlaceVo selectStorePlaceInfoByCode(String storePlaceCode); } 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 2d280c8f..acaf077f 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 @@ -1,12 +1,23 @@ package org.dromara.wms.service; +import org.dromara.wms.domain.vo.WmsHppInStockDetailVo; import org.dromara.wms.domain.vo.WmsOutstockRecordVo; import org.dromara.wms.domain.vo.WmsPsmInLoadVo; +import java.util.List; + public interface IWmsPdaApiService { WmsOutstockRecordVo returnSelectCode(String code); void rawReturnSubmitUpdateStateById(Long warehouseId); WmsPsmInLoadVo productSelectVehicleInfo(String code); + + Boolean bindVehicleSubmit(String vehicleCode, List productList); + + Boolean productSubmitInStoreInfo(WmsPsmInLoadVo vo); + + WmsHppInStockDetailVo semiSelectVehicleInfo(String code); + + Boolean updataInStoreRecord(WmsHppInStockDetailVo vo); } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/IWmsPsmStorePlaceService.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/IWmsPsmStorePlaceService.java index 398baf71..c2c3fe5c 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/IWmsPsmStorePlaceService.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/IWmsPsmStorePlaceService.java @@ -2,6 +2,7 @@ package org.dromara.wms.service; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.wms.domain.WmsPsmStorePlace; import org.dromara.wms.domain.bo.WmsPsmStorePlaceBo; import org.dromara.wms.domain.vo.WmsPsmStorePlaceVo; @@ -65,4 +66,6 @@ public interface IWmsPsmStorePlaceService { * @return 是否删除成功 */ Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + + WmsPsmStorePlaceVo selectStorePlaceInfoByCode(String storePlaceCode); } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsHppStorePlaceServiceImpl.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsHppStorePlaceServiceImpl.java index 1d7342ff..ea2f2bf8 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsHppStorePlaceServiceImpl.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsHppStorePlaceServiceImpl.java @@ -140,4 +140,9 @@ public class WmsHppStorePlaceServiceImpl implements IWmsHppStorePlaceService { } return baseMapper.deleteByIds(ids) > 0; } + + @Override + public WmsHppStorePlaceVo selectStorePlaceInfoByCode(String storePlaceCode) { + return baseMapper.selectStorePlaceInfoByCode(storePlaceCode); + } } 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 274851e8..c2bb03d9 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 @@ -1,28 +1,34 @@ package org.dromara.wms.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.github.yulichang.toolkit.JoinWrappers; import com.github.yulichang.wrapper.MPJLambdaWrapper; -import io.github.linpeilie.BaseMapper; -import org.dromara.common.core.utils.StringUtils; +import lombok.RequiredArgsConstructor; +import org.dromara.common.core.utils.DateUtils; +import org.dromara.common.satoken.utils.LoginHelper; +import org.dromara.common.translation.annotation.Translation; import org.dromara.wms.domain.*; +import org.dromara.wms.domain.vo.BaseMaterialInfoVo; +import org.dromara.wms.domain.vo.WmsHppInStockDetailVo; import org.dromara.wms.domain.vo.WmsOutstockRecordVo; import org.dromara.wms.domain.vo.WmsPsmInLoadVo; -import org.dromara.wms.mapper.WmsOutstockRecordMapper; -import org.dromara.wms.mapper.WmsPdaApiMapper; -import org.dromara.wms.mapper.WmsPsmInLoadMapper; +import org.dromara.wms.mapper.*; import org.dromara.wms.service.IWmsPdaApiService; -import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; +import java.util.List; +@RequiredArgsConstructor @Service public class WmsPdaApiServiceImpl implements IWmsPdaApiService { - @Autowired - private WmsOutstockRecordMapper wmsOutstockRecordMapper; - @Autowired - private WmsPdaApiMapper apiMapper; - @Autowired - private WmsPsmInLoadMapper psmInLoadMapper; + + private final WmsOutstockRecordMapper wmsOutstockRecordMapper; + private final WmsPdaApiMapper apiMapper; + private final WmsHppInStockDetailMapper baseMapper; + + private final WmsPsmInStockMapper wmsPsmInStockMapper; + private final WmsPsmInLoadDetailMapper wmsPsmInLoadDetailMapper; @Override public WmsOutstockRecordVo returnSelectCode(String code) { @@ -46,8 +52,90 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService { @Override public WmsPsmInLoadVo productSelectVehicleInfo(String code) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("toolingBarcode", code).eq("storePlaceCode",null); - return psmInLoadMapper.selectVoOne(queryWrapper); + return apiMapper.productSelectVehicleInfo(code); + } + + + @Override + public Boolean bindVehicleSubmit(String vehicleCode, List productList) { + String userId = String.valueOf(LoginHelper.getUserId()); + WmsPsmInLoad wmsPsmInLoad = new WmsPsmInLoad(); + wmsPsmInLoad.setToolingBarcode(vehicleCode); + wmsPsmInLoad.setLoadAmount(productList.size()); + wmsPsmInLoad.setCreateBy(userId); + int tag = apiMapper.bindVehicleSubmitInsertInLoad(wmsPsmInLoad); + if (tag == 1) { + apiMapper.bindVehicleSubmitInsertInLoadDetail(wmsPsmInLoad.getInLoadId(), productList); + return true; + } + + + return false; + } + + + + + @Translation(type = "Exception") + @Override + public Boolean productSubmitInStoreInfo(WmsPsmInLoadVo vo) { + + // 插入入库记录主表 + WmsPsmInStock wmsPsmInStock = new WmsPsmInStock(); + BeanUtils.copyProperties(vo, wmsPsmInStock); + wmsPsmInStock.setInAmount(vo.getLoadAmount()); + wmsPsmInStock.setCreateBy(LoginHelper.getUserId() + "");//创建人 + int insert = wmsPsmInStockMapper.insert(wmsPsmInStock); + if (insert == 1) { + System.out.println(); + // 查询成品条码表 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("in_load_id", vo.getInLoadId()); + List list = wmsPsmInLoadDetailMapper.selectList(queryWrapper); + apiMapper.insertInStockDetail(wmsPsmInStock.getInStockId(), list); + apiMapper.insertPsmStorage(list, wmsPsmInStock); + return true; + } + // 插入入库主表 + // WmsPsmInStockBo bo = new WmsPsmInStockBo(); + // bo.setStoreName(vo.getStoreName()); + // bo.setToolingBarcode(vo.getToolingBarcode()); + // bo.setMaterialId(vo.getMaterialId()); + // bo. + + return false; + } + + + @Override + public WmsHppInStockDetailVo semiSelectVehicleInfo(String code) { + return baseMapper.semiSelectVehicleInfo(code); + } + + private final WmsHppInStockDetailMapper hppInStockDetailMapper;//入库记录 + private final WmsHppStorageDetailMapper hppStorageDetailMapper;//库存表 + private final BaseMaterialInfoMapper baseMaterialInfoMapper;//物料基础信息 + @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()); + int rows = hppInStockDetailMapper.update(null, lambdaUpdateWrapper); + if (rows > 0) { + // System.out.println("更新成功"); + WmsHppStorageDetail hppStorageDetail = new WmsHppStorageDetail(); + BeanUtils.copyProperties(vo, hppStorageDetail); + hppStorageDetail.setObjId(null); + hppStorageDetail.setStorageNum(vo.getInstockNum()); + BaseMaterialInfoVo baseMaterialInfoVo= baseMaterialInfoMapper.selectVoById(vo.getMaterialId()); + hppStorageDetail.setMinParkingTime(baseMaterialInfoVo.getMinParkingTime()); + hppStorageDetail.setMaxParkingTime(baseMaterialInfoVo.getMaxParkingTime()); + hppStorageDetailMapper.insert(hppStorageDetail); + return true; + } + + return false; } } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsPsmStorePlaceServiceImpl.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsPsmStorePlaceServiceImpl.java index 424e3101..5e2bd71c 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsPsmStorePlaceServiceImpl.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsPsmStorePlaceServiceImpl.java @@ -140,4 +140,9 @@ public class WmsPsmStorePlaceServiceImpl implements IWmsPsmStorePlaceService { } return baseMapper.deleteByIds(ids) > 0; } + + @Override + public WmsPsmStorePlaceVo selectStorePlaceInfoByCode(String storePlaceCode) { + return baseMapper.selectStorePlaceInfoByCode(storePlaceCode); + } } diff --git a/ruoyi-modules/hwmom-wms/src/main/resources/mapper/wms/WmsPdaApiMapper.xml b/ruoyi-modules/hwmom-wms/src/main/resources/mapper/wms/WmsPdaApiMapper.xml index c2928d1f..092faf39 100644 --- a/ruoyi-modules/hwmom-wms/src/main/resources/mapper/wms/WmsPdaApiMapper.xml +++ b/ruoyi-modules/hwmom-wms/src/main/resources/mapper/wms/WmsPdaApiMapper.xml @@ -9,5 +9,62 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" update wms_outstock_record set return_flag= '1' where outstock_record_id=#{warehouseId} + + INSERT INTO wms_psm_in_load (tooling_barcode, material_id, material_spe, check_grade_code, + load_amount, material_code) + VALUES (#{wmsPsmInLoad.toolingBarcode}, null, null, null, #{wmsPsmInLoad.loadAmount}, null); + + + + INSERT INTO wms_psm_in_load_detail (in_load_id, material_id, + material_spe, tyre_no, check_grade_code) + VALUES + + ( #{id}, null, null,#{item}, null) + + + + + + + + + + + + + + + INSERT INTO wms_psm_in_stock_detail (in_stock_id, material_id, material_spe, tyre_no, check_grade_code) + VALUES + + (#{id}, #{item.materialId}, #{item.materialSpe}, #{item.tyreNo},#{item.checkGradeCode} ) + + + + + INSERT INTO wms_psm_storage (create_by, material_id, material_spe, tyre_no, check_grade_code, store_name, + store_place_code, tooling_barcode) + VALUES + + (#{data.createBy}, #{item.materialId}, #{item.materialSpe}, #{item.tyreNo},#{item.checkGradeCode},#{data.storeName}, + #{data.storePlaceCode},#{data.toolingBarcode}) + + + +