From c87738a78f57e6f68a0111d68ef3748b29dc1eda Mon Sep 17 00:00:00 2001 From: 李宇 <986321569@qq.com> Date: 星期三, 23 六月 2021 12:21:59 +0800 Subject: [PATCH] 修改试剂排序 --- src/main/java/com/nanometer/smartlab/service/SysReagentServiceImpl.java | 36 ++++++++++++++++++++++++++++++++++++ 1 files changed, 36 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/nanometer/smartlab/service/SysReagentServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/SysReagentServiceImpl.java index ad0eac0..e69e1d9 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) { @@ -154,6 +157,31 @@ return sysReagentDao.getReagent(params); } + @Override + public List<SysReagent> selectReagentSafetyNum() { + + return sysReagentDao.selectReagentSafetyNum(); + } + + @Override + public void updateSafetyNum(SysReagent sysReagent) { + sysReagentDao.updateSafetyNum(sysReagent.getId(), sysReagent.getSafetynum()); + } + + + /** + * @Description: 根据detail的信息获取试剂的id + * @date 2021/6/21 9:45 + */ + @Override + public SysReagent getReagentByDetail(Map<String, Object> detail) { + List<SysReagent> reagentIds = sysReagentDao.countReagentByDetail(detail); + if (reagentIds.size() != 1) { + return null; + } + return reagentIds.get(0); + } + @Transactional(propagation = Propagation.REQUIRED) public int getSysReagentTotalCount(String name, String cas, String supplierId,Integer type) { @@ -257,6 +285,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 +305,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