李宇
2021-01-21 9c9503de4fb1e1b0127f83c8b2b0f645c6ab9e9c
src/main/java/com/nanometer/smartlab/service/SysReagentServiceImpl.java
@@ -60,6 +60,101 @@
            throw new BusinessException(ExceptionEnumCode.DB_ERR, MessageUtil.getMessageByCode(ExceptionEnumCode.DB_ERR.getCode()), e);
        }
    }
    public List<SysReagent> getSysReagentListNew(String name, String cas, String supplierId,Integer type, Integer first, Integer pageSize,String productSn) {
        try {
            Map<String, Object> params = new HashMap<String, Object>();
            params.put("name", name);
            params.put("cas", cas);
            params.put("supplierId", supplierId);
            params.put("type", type);
            params.put("first", first);
            params.put("pageSize", pageSize);
            params.put("productSn", productSn);
            return this.sysReagentDao.getSysReagentListNew(params);
        } catch (DataAccessException e) {
            logger.error(e.getMessage(), e);
            throw new BusinessException(ExceptionEnumCode.DB_ERR, MessageUtil.getMessageByCode(ExceptionEnumCode.DB_ERR.getCode()), e);
        }
    }
    /**
    * @Description: 收藏与未收藏  0未收藏  1收藏  统计个数
    * @date 2020/12/1 17:04
    */
    @Override
    public int favorCount(SysUser user, String name, String cas, String supplierId, String productSn, Integer favorFlag) {
        Map<String, Object> params = new HashMap<>();
        params.put("user", user.getId());
        params.put("favorFlag", favorFlag);
        params.put("name", name);
        params.put("cas", cas);
        params.put("supplierId", supplierId);
        params.put("productSn", productSn);
        return sysReagentDao.favorCount(params);
    }
    /**
    * @Description: 收藏与未收藏  0未收藏  1收藏  统计详情
    * @date 2020/12/1 17:04
    */
    @Override
    public List<SysReagent> favorList(SysUser user, String name, String cas, String supplierId, String productSn, Integer favorFlag, Integer first, Integer pageSize) {
        Map<String, Object> params = new HashMap<>();
        params.put("user", user.getId());
        params.put("favorFlag", favorFlag);
        params.put("name", name);
        params.put("cas", cas);
        params.put("supplierId", supplierId);
        params.put("productSn", productSn);
        params.put("first", first);
        params.put("pageSize", pageSize);
        return sysReagentDao.favorList(params);
    }
    @Override
    public int reagentCount(SysUser user, String name, String cas, String supplierId, String productSn) {
        Map<String, Object> params = new HashMap<>();
        params.put("user", user.getId());
        params.put("name", name);
        params.put("cas", cas);
        params.put("supplierId", supplierId);
        params.put("productSn", productSn);
        return sysReagentDao.reagentCount(params);
    }
    @Override
    public List<SysReagent> reagentList(SysUser user, String name, String cas, String supplierId, String productSn, int first, int pageSize,int count) {
        Map<String, Object> params = new HashMap<>();
        params.put("user", user.getId());
        params.put("name", name);
        params.put("cas", cas);
        params.put("supplierId", supplierId);
        params.put("productSn", productSn);
        params.put("first", first);
        params.put("pageSize", pageSize);
        params.put("MaxSize", count);
        return sysReagentDao.reagentList(params);
    }
    @Override
    public String getReagentUnitByReagentId(String reagentId) {
        return sysReagentDao.getReagentUnitByReagentId(reagentId);
    }
    @Override
    public List<SysReagent> getReagent(String name, String cas, String factory, String specifications, String packing) {
        Map<String, String> params = new HashMap<>();
        params.put("name", name);
        params.put("cas", cas);
        params.put("factory", factory);
        params.put("specifications", specifications);
        params.put("packing", packing);
        return sysReagentDao.getReagent(params);
    }
    @Transactional(propagation = Propagation.REQUIRED)
    public int getSysReagentTotalCount(String name, String cas, String supplierId,Integer type) {
        try {
@@ -81,55 +176,25 @@
        }
    }
    @Transactional(propagation = Propagation.REQUIRED)
    public List<SysReagent> getSysReagentList2(SysUser user,Integer favorFlag, String name, String cas, String productSn, String supplierId, Integer first, Integer pageSize) {
        try {
            Map<String, Object> params = new HashMap<String, Object>();
            if (StringUtils.isNotBlank(name)) {
                params.put("name", "%" + name + "%");
            }
            if (StringUtils.isNotBlank(cas)) {
                params.put("cas", "%" + cas + "%");
            }
            if (StringUtils.isNotBlank(supplierId)) {
                params.put("supplierId", supplierId);
            }
            if (StringUtils.isNotBlank(productSn)) {
                params.put("productSn","%"+ productSn+"%");
            }
            params.put("user", user.getId());
            params.put("favor", favorFlag);
            params.put("first", first);
            params.put("pageSize", pageSize);
            return this.sysReagentDao.getSysReagentList(params);
        } catch (DataAccessException e) {
            logger.error(e.getMessage(), e);
            throw new BusinessException(ExceptionEnumCode.DB_ERR, MessageUtil.getMessageByCode(ExceptionEnumCode.DB_ERR.getCode()), e);
        }
    }
    @Transactional(propagation = Propagation.REQUIRED)
    public int getSysReagentTotalCount2(SysUser user,Integer favorFlag, String name, String cas,String productSn, String supplierId) {
    public int getSysReagentTotalCountNew(String name, String cas, String supplierId,Integer type,String productSn) {
        try {
            Map<String, Object> params = new HashMap<String, Object>();
            if (StringUtils.isNotBlank(name)) {
                params.put("name", "%" + name + "%");
            }
            if (StringUtils.isNotBlank(cas)) {
                params.put("cas", "%" + cas + "%");
            }
            if (StringUtils.isNotBlank(productSn)) {
                params.put("productSn","%"+ productSn+"%");
            }
            params.put("user", user.getId());
            params.put("favor", favorFlag);
            params.put("name", name);
            params.put("cas", cas);
            params.put("type", type);
            params.put("supplierId", supplierId);
            return this.sysReagentDao.getSysReagentTotalCount(params);
            params.put("productSn", productSn);
            return this.sysReagentDao.getSysReagentTotalCountNew(params);
        } catch (DataAccessException e) {
            logger.error(e.getMessage(), e);
            throw new BusinessException(ExceptionEnumCode.DB_ERR, MessageUtil.getMessageByCode(ExceptionEnumCode.DB_ERR.getCode()), e);
        }
    }
    @Transactional(propagation = Propagation.REQUIRED)
    public SysReagent getSysReagent(String id) {
@@ -211,16 +276,18 @@
    }
    @Override
    @Transactional
    public int insertSysReagentList(List<SysReagent> sysReagentList) {
        try {
            int i = 0;
            for (SysReagent sysReagent:sysReagentList
                 ) {
                SysReagent sysReagentTmpl = new SysReagent();
                sysReagentTmpl = sysReagentDao.getSysReagentByCas(sysReagent);
                if(sysReagentTmpl!=null){
                    sysReagent.setId(sysReagentTmpl.getId());
                    this.sysReagentDao.updateSysReagentForExport(sysReagent);
                List<SysReagent> sysReagentTmpl = sysReagentDao.getSysReagentByCas(sysReagent);
                if(sysReagentTmpl.size()>0){
                    for (SysReagent sr : sysReagentTmpl) {
                        sysReagent.setId(sr.getId());
                        this.sysReagentDao.updateSysReagentForExport(sysReagent);
                    }
                }else{
                    if (sysReagent.getId() == null) {
                        sysReagent.setId(IDUtils.uuid());