From c79e850cf9f4262a7644dfd512f671139a221819 Mon Sep 17 00:00:00 2001 From: gdg <764716047@qq.com> Date: 星期一, 22 三月 2021 17:53:46 +0800 Subject: [PATCH] 修改 --- src/main/java/com/nanometer/smartlab/controller/UserMngController.java | 1 + src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java | 10 ++++++++-- src/main/java/com/nanometer/smartlab/service/SysReagentServiceImpl.java | 11 +++++++++++ 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/nanometer/smartlab/controller/UserMngController.java b/src/main/java/com/nanometer/smartlab/controller/UserMngController.java index 0408681..8c21388 100644 --- a/src/main/java/com/nanometer/smartlab/controller/UserMngController.java +++ b/src/main/java/com/nanometer/smartlab/controller/UserMngController.java @@ -109,6 +109,7 @@ } if (this.selectedList.size() == 1) { this.sysUser = this.sysUserService.getSysUser(this.selectedList.get(0).getId()); + this.sysUser.setId(null); } this.action = Constants.ACTION_ADD; } diff --git a/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java b/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java index 2962b20..f269d4f 100644 --- a/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java +++ b/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java @@ -1514,6 +1514,10 @@ } if(list.size()>0&&list!=null){ for (OpeWarehouseReserve selectWarehouseReserve : list) { + Map reagentDetail = sysReagentService.getReagentDetail(selectWarehouseReserve.getReagentId()); + if (reagentDetail == null) { + throw new Exception("试剂有误,请联系管理员"); + } List<String> reagentCodes = selectWarehouseReserve.getReagentCodes(); if (reagentCodes != null && reagentCodes.size() > 0) for (String opeReagentStatusId : reagentCodes) { @@ -1540,7 +1544,6 @@ //} } ApplyListDto lis = new ApplyListDto(); - Map reagentDetail = sysReagentService.getReagentDetail(selectWarehouseReserve.getReagentId()); lis.setNum(String.valueOf(selectWarehouseReserve.getSelectNum())); //数量 lis.setMainMetering(String.format("%s%s", reagentDetail.get("main_metering"), reagentDetail.get("unit"))); lis.setControlProducts((String) reagentDetail.get("controlProducts")); @@ -1563,6 +1566,10 @@ List<OpeApply> opeList=new ArrayList<>(); //this.opeApplyService.getOpeApplyList(null,null,null,null,null) for(int i=0;i<list2.size();i++){ + Map reagentDetail = sysReagentService.getReagentDetail(list2.get(i).getReagentId()); + if (reagentDetail == null) { + throw new Exception("试剂有误,请联系管理员"); + } OpeApply opeApply=new OpeApply(); opeApply.setArticleNumber(list2.get(i).getArticleNumber()); opeApply.setHouseId(laboratoryId); @@ -1582,7 +1589,6 @@ this.opeLaboratoryReserveService.insert(lr); //opeList.add(this.opeApplyService.getOpeApply(list2.get(i).getId())); ApplyListDto lis = new ApplyListDto(); - Map reagentDetail = sysReagentService.getReagentDetail(list2.get(i).getReagentId()); lis.setNum(String.valueOf(list2.get(i).getSelectNum())); //数量 lis.setMainMetering(String.format("%s%s", reagentDetail.get("main_metering"), reagentDetail.get("unit"))); diff --git a/src/main/java/com/nanometer/smartlab/service/SysReagentServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/SysReagentServiceImpl.java index ad0eac0..9c299bf 100644 --- a/src/main/java/com/nanometer/smartlab/service/SysReagentServiceImpl.java +++ b/src/main/java/com/nanometer/smartlab/service/SysReagentServiceImpl.java @@ -1,6 +1,7 @@ package com.nanometer.smartlab.service; import com.nanometer.smartlab.dao.SysReagentDao; +import com.nanometer.smartlab.entity.OpeWarehouseReserve; import com.nanometer.smartlab.entity.SysReagent; import com.nanometer.smartlab.entity.SysUser; import com.nanometer.smartlab.exception.AlarmCode; @@ -35,6 +36,8 @@ @Resource(name = "sysReagentDao") SysReagentDao sysReagentDao; + @Resource + OpeWarehouseReserveService opeWarehouseReserveService; @Transactional(propagation = Propagation.REQUIRED) public List<SysReagent> getSysReagentList(String name, String cas, String supplierId,Integer type, Integer first, Integer pageSize) { @@ -257,6 +260,11 @@ List<String> ids = new ArrayList<String>(); for (SysReagent sysReagent : sysReagentList) { + //判断试剂在库中是否存在 + int count = opeWarehouseReserveService.getOpeWarehouseReserveTotalCount(sysReagent.getId(), sysReagent.getSupplierId()); + if (count > 0) { + throw new Exception(); + } ids.add(sysReagent.getId()); } @@ -272,6 +280,9 @@ } catch (DataAccessException ex) { logger.error(ex.getMessage(), ex); throw new BusinessException(ExceptionEnumCode.DB_ERR, MessageUtil.getMessageByCode(ExceptionEnumCode.DB_ERR.getCode()), ex); + } catch (Exception e) { + e.printStackTrace(); + throw new BusinessException(ExceptionEnumCode.SYS_ERR,"试剂在库中已经有了不能删除"); } } -- Gitblit v1.9.2