From 05304315b53a2c8ef1d4384607d854364493570e Mon Sep 17 00:00:00 2001 From: zss <zss@example.com> Date: 星期四, 05 十二月 2024 09:24:32 +0800 Subject: [PATCH] 完善样品编号重复引发的问题 --- inspect-server/src/main/resources/mapper/WarehouseCellMapper.xml | 3 + inspect-server/src/main/java/com/yuanchu/mom/controller/WarehouseController.java | 18 +++------ inspect-server/src/main/java/com/yuanchu/mom/service/impl/WarehouseServiceImpl.java | 36 +++++++++++------- inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java | 22 +++++++---- inspect-server/src/main/java/com/yuanchu/mom/controller/InsOrderPlanController.java | 8 ++-- inspect-server/src/main/java/com/yuanchu/mom/mapper/WarehouseCellMapper.java | 3 + inspect-server/src/main/java/com/yuanchu/mom/service/InsOrderPlanService.java | 4 +- inspect-server/src/main/java/com/yuanchu/mom/service/WarehouseService.java | 8 ++-- 8 files changed, 57 insertions(+), 45 deletions(-) diff --git a/inspect-server/src/main/java/com/yuanchu/mom/controller/InsOrderPlanController.java b/inspect-server/src/main/java/com/yuanchu/mom/controller/InsOrderPlanController.java index 82ac210..6713044 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/controller/InsOrderPlanController.java +++ b/inspect-server/src/main/java/com/yuanchu/mom/controller/InsOrderPlanController.java @@ -242,15 +242,15 @@ @ValueClassify("妫�楠屼换鍔�") @ApiOperation(value = "鎵爜鎶ユ(鍏ュ簱)") @PostMapping("/scanInsOrderState") - public Result scanInsOrderState(String sonLaboratory, String sampleCode, String trees) { - return Result.success(insOrderPlanService.scanInsOrderState(sonLaboratory, sampleCode, trees)); + public Result scanInsOrderState(String sonLaboratory, String sampleCode, String trees,String entrustCode) { + return Result.success(insOrderPlanService.scanInsOrderState(sonLaboratory, sampleCode, trees,entrustCode)); } @ValueClassify("妫�楠屼换鍔�") @ApiOperation(value = "鎵爜鍑哄簱") @PostMapping("/outInsOrderState") - public Result outInsOrderState(String sonLaboratory, String sampleCode) { - return Result.success(insOrderPlanService.outInsOrderState(sonLaboratory, sampleCode)); + public Result outInsOrderState(String sonLaboratory, String sampleCode,String entrustCode) { + return Result.success(insOrderPlanService.outInsOrderState(sonLaboratory, sampleCode,entrustCode)); } @ValueAuth diff --git a/inspect-server/src/main/java/com/yuanchu/mom/controller/WarehouseController.java b/inspect-server/src/main/java/com/yuanchu/mom/controller/WarehouseController.java index 7f62740..3a2a4b2 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/controller/WarehouseController.java +++ b/inspect-server/src/main/java/com/yuanchu/mom/controller/WarehouseController.java @@ -73,20 +73,20 @@ @GetMapping("/getWarehouse") @ApiOperation("鏌ヨ璐ф灦涓嬬殑瀛樻斁淇℃伅") @ValueAuth - public Result getWarehouse(Integer shelfId) { - return Result.success(warehouseService.getWarehouse(shelfId)); + public Result getWarehouse(Integer shelfId,String sampleCode) { + return Result.success(warehouseService.getWarehouse(shelfId,sampleCode)); } @ValueClassify("鏍峰搧绠$悊") @PostMapping("/inWarehouse") @ApiOperation("鏍峰搧鍏ュ簱") - public Result inWarehouse(String trees, String sampleCode) { - return Result.success(warehouseService.inWarehouse(trees, sampleCode)); + public Result inWarehouse(String trees, String sampleCode,String entrustCode) { + return Result.success(warehouseService.inWarehouse(trees, sampleCode,entrustCode)); } @ValueClassify("鏍峰搧绠$悊") @PostMapping("/outWarehouse") @ApiOperation("鏍峰搧鍑哄簱") - public Result outWarehouse(String sampleCode, boolean a) { - return Result.success(warehouseService.outWarehouse(sampleCode,a)); + public Result outWarehouse(String sampleCode, boolean a,String entrustCode) { + return Result.success(warehouseService.outWarehouse(sampleCode,a,entrustCode)); } @ValueAuth @@ -94,11 +94,5 @@ @ApiOperation("鏌ヨ鏍峰搧璇︾粏璁板綍") public Result getSampleRecord(Integer id) { return Result.success(warehouseService.getSampleRecord(id)); - } - @ValueAuth - @PostMapping("/searchSampleId") - @ApiOperation("閫氳繃鏍峰搧缂栧彿杩涜妫�绱�") - public Result searchSampleId(String sampleCode) { - return Result.success(warehouseService.searchSampleId(sampleCode)); } } \ No newline at end of file diff --git a/inspect-server/src/main/java/com/yuanchu/mom/mapper/WarehouseCellMapper.java b/inspect-server/src/main/java/com/yuanchu/mom/mapper/WarehouseCellMapper.java index cadaf36..aacbd3d 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/mapper/WarehouseCellMapper.java +++ b/inspect-server/src/main/java/com/yuanchu/mom/mapper/WarehouseCellMapper.java @@ -3,6 +3,7 @@ import com.yuanchu.mom.dto.WarehouseCellAndSampleDto; import com.yuanchu.mom.pojo.WarehouseCell; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; import java.util.List; @@ -14,7 +15,7 @@ */ public interface WarehouseCellMapper extends BaseMapper<WarehouseCell> { - List<WarehouseCellAndSampleDto> getWarehouse(Integer shelfId); + List<WarehouseCellAndSampleDto> getWarehouse(@Param("shelfId") Integer shelfId, @Param("sampleCode") String sampleCode); } diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/InsOrderPlanService.java b/inspect-server/src/main/java/com/yuanchu/mom/service/InsOrderPlanService.java index 980339d..6863ffb 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/service/InsOrderPlanService.java +++ b/inspect-server/src/main/java/com/yuanchu/mom/service/InsOrderPlanService.java @@ -54,10 +54,10 @@ int deleteInsContext(InsProductResultVo insProductResultVo); //鎵爜鎶ユ(鍏ュ簱) - int scanInsOrderState(String sonLaboratory, String sampleCode,String trees); + int scanInsOrderState(String sonLaboratory, String sampleCode,String trees,String entrustCode); //鎵爜鍑哄簱 - int outInsOrderState(String sonLaboratory, String sampleCode); + int outInsOrderState(String sonLaboratory, String sampleCode,String entrustCode); List<InsOrderUser> getInsOrderUserList(Integer insOrderStateId); diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/WarehouseService.java b/inspect-server/src/main/java/com/yuanchu/mom/service/WarehouseService.java index 59d6501..7a6e4f9 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/service/WarehouseService.java +++ b/inspect-server/src/main/java/com/yuanchu/mom/service/WarehouseService.java @@ -2,6 +2,7 @@ import com.yuanchu.mom.dto.WarehouseCellAndSampleDto; import com.yuanchu.mom.dto.WarehouseDto; +import com.yuanchu.mom.pojo.InsSample; import com.yuanchu.mom.pojo.Warehouse; import com.baomidou.mybatisplus.extension.service.IService; import com.yuanchu.mom.pojo.WarehouseShelf; @@ -30,13 +31,12 @@ int upShelf(WarehouseShelf warehouseShelf); - List<WarehouseCellAndSampleDto> getWarehouse(Integer shelfId); + List<WarehouseCellAndSampleDto> getWarehouse(Integer shelfId,String sampleCode); - int inWarehouse(String trees, String sampleCode); + int inWarehouse(String trees, String sampleCode,String entrustCode); - int outWarehouse(String sampleCode, boolean a); + int outWarehouse(String sampleCode, boolean a,String entrustCode); Map<String, Object> getSampleRecord(Integer id); - int searchSampleId(String sampleCode); } \ No newline at end of file diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java index 2f368f1..e1e990b 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java +++ b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java @@ -190,7 +190,7 @@ .eq(InsOrderState::getInsOrderId, insSample.getInsOrderId()) .eq(InsOrderState::getInsSampleId, sampleId) .eq(InsOrderState::getLaboratory, laboratory)); - if (ObjectUtils.isEmpty(orderState.getInsTime())){ + if (ObjectUtils.isEmpty(orderState.getInsTime())) { //鏇存柊妫�楠屼换鍔¤〃鐨勬楠屾椂闂� insOrderStateMapper.update(null, Wrappers.<InsOrderState>lambdaUpdate() .eq(InsOrderState::getInsOrderId, insSample.getInsOrderId()) @@ -380,12 +380,15 @@ //鎵爜鎶ユ @Override - public int scanInsOrderState(String sonLaboratory, String sampleCode, String trees) { + public int scanInsOrderState(String sonLaboratory, String sampleCode, String trees, String entrustCode) { /*鏍峰搧鍏ュ簱*/ - warehouseService.inWarehouse(trees, sampleCode); + warehouseService.inWarehouse(trees, sampleCode, entrustCode); /*鏂板妫�楠屼换鍔�*/ //鍏堝垽鏂鏍峰搧鏄惁鏈夎繖涓珯鐐圭殑椤圭洰 - InsSample insSample = insSampleMapper.selectOne(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getSampleCode, sampleCode)); + List<InsOrder> insOrders = insOrderMapper.selectList(Wrappers.<InsOrder>lambdaQuery().eq(InsOrder::getEntrustCode, entrustCode)); + InsSample insSample = insSampleMapper.selectOne(Wrappers.<InsSample>lambdaQuery() + .eq(InsSample::getSampleCode, sampleCode) + .eq(InsSample::getInsOrderId, insOrders.get(0).getId())); List<String> collect = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery() .eq(InsProduct::getState, 1) .eq(InsProduct::getInsSampleId, insSample.getId())).stream().map(InsProduct::getSonLaboratory).collect(Collectors.toList()); @@ -424,10 +427,13 @@ //鎵爜鍑哄簱 @Override - public int outInsOrderState(String sonLaboratory, String sampleCode) { + public int outInsOrderState(String sonLaboratory, String sampleCode, String entrustCode) { //鍒ゆ柇璇ユ牱鍝佺殑妫�楠屼换鍔℃槸鍚﹀凡缁忕粨鏉�(缁х画璇曢獙鎴栬�呮槸缁撴潫璇曢獙) //鍏堝垽鏂鏍峰搧鏄惁鏈夎繖涓珯鐐圭殑椤圭洰 - InsSample insSample = insSampleMapper.selectOne(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getSampleCode, sampleCode)); + List<InsOrder> insOrders = insOrderMapper.selectList(Wrappers.<InsOrder>lambdaQuery().eq(InsOrder::getEntrustCode, entrustCode)); + InsSample insSample = insSampleMapper.selectOne(Wrappers.<InsSample>lambdaQuery() + .eq(InsSample::getSampleCode, sampleCode) + .eq(InsSample::getInsOrderId, insOrders.get(0).getId())); List<String> collect = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery() .eq(InsProduct::getState, 1) .eq(InsProduct::getInsSampleId, insSample.getId())).stream().map(InsProduct::getSonLaboratory).collect(Collectors.toList()); @@ -449,7 +455,7 @@ } } boolean a = true; - warehouseService.outWarehouse(sampleCode, a); + warehouseService.outWarehouse(sampleCode, a, entrustCode); return 0; } @@ -1040,7 +1046,7 @@ if (insOrder.getFormType().equals("鍘熺悊鏍锋満")) { //鍑哄簱 try { - outInsOrderState(laboratory, insSample.getSampleCode()); + outInsOrderState(laboratory, insSample.getSampleCode(), insOrder.getEntrustCode()); } catch (Exception e) { } diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/WarehouseServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/WarehouseServiceImpl.java index d480b47..8d2ab9d 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/WarehouseServiceImpl.java +++ b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/WarehouseServiceImpl.java @@ -50,6 +50,8 @@ private InsProductMapper insProductMapper; + private InsOrderMapper insOrderMapper; + @Override public int addWarehouse(String name) { Warehouse warehouse = new Warehouse(); @@ -139,17 +141,24 @@ } @Override - public List<WarehouseCellAndSampleDto> getWarehouse(Integer shelfId) { - return warehouseCellMapper.getWarehouse(shelfId); + public List<WarehouseCellAndSampleDto> getWarehouse(Integer shelfId,String sampleCode) { + return warehouseCellMapper.getWarehouse(shelfId,sampleCode); } @Override - public int inWarehouse(String trees, String sampleCode) { + public int inWarehouse(String trees, String sampleCode,String entrustCode) { String[] tree = trees.split("-"); if(tree.length < 4){ throw new ErrorException("搴撲綅閫夋嫨閿欒"); } - List<InsSample> samples = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getSampleCode, sampleCode).select(InsSample::getId,InsSample::getCellId)); + List<InsOrder> insOrders = insOrderMapper.selectList(Wrappers.<InsOrder>lambdaQuery().eq(InsOrder::getEntrustCode, entrustCode)); + if(insOrders.size()!=1){ + throw new ErrorException("璁㈠崟缂栧彿杈撳叆鏈夎"); + } + List<InsSample> samples = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery() + .eq(InsSample::getSampleCode, sampleCode) + .eq(InsSample::getInsOrderId,insOrders.get(0).getId()) + .select(InsSample::getId,InsSample::getCellId)); if(samples.size()!=1){ throw new ErrorException("鏍峰搧缂栧彿杈撳叆鏈夎"); } @@ -170,8 +179,15 @@ } @Override - public int outWarehouse(String sampleCode, boolean a) { - List<InsSample> samples = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getSampleCode, sampleCode).select(InsSample::getId,InsSample::getCellId)); + public int outWarehouse(String sampleCode, boolean a,String entrustCode) { + List<InsOrder> insOrders = insOrderMapper.selectList(Wrappers.<InsOrder>lambdaQuery().eq(InsOrder::getEntrustCode, entrustCode)); + if(insOrders.size()!=1){ + throw new ErrorException("璁㈠崟缂栧彿杈撳叆鏈夎"); + } + List<InsSample> samples = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery() + .eq(InsSample::getSampleCode, sampleCode) + .eq(InsSample::getInsOrderId,insOrders.get(0).getId()) + .select(InsSample::getId,InsSample::getCellId)); if(samples.size()!=1){ throw new ErrorException("鏍峰搧缂栧彿杈撳叆鏈夎"); } @@ -221,14 +237,6 @@ return map; } - @Override - public int searchSampleId(String sampleCode) { - List<InsSample> samples = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getSampleCode, sampleCode).select(InsSample::getId)); - if(samples.size()!=1){ - throw new ErrorException("鏍峰搧缂栧彿杈撳叆鏈夎"); - } - return samples.get(0).getId(); - } } diff --git a/inspect-server/src/main/resources/mapper/WarehouseCellMapper.xml b/inspect-server/src/main/resources/mapper/WarehouseCellMapper.xml index 84c887a..888703e 100644 --- a/inspect-server/src/main/resources/mapper/WarehouseCellMapper.xml +++ b/inspect-server/src/main/resources/mapper/WarehouseCellMapper.xml @@ -22,6 +22,9 @@ left join ins_sample i on i.cell_id = wc.id where wc.state = 1 and wc.shelf_id = #{shelfId} + <if test="sampleCode!=null and sampleCode!=''"> + and i.sample_code=#{sampleCode} + </if> order by wc.row ,wc.col, wc.id </select> -- Gitblit v1.9.3