李宇
2021-11-12 43ee95fbdcb6fe0a9d548d0935c23c232d5ffeaa
src/main/java/com/nanometer/smartlab/service/SysReagentServiceImpl.java
@@ -8,6 +8,7 @@
import com.nanometer.smartlab.exception.AlarmException;
import com.nanometer.smartlab.exception.BusinessException;
import com.nanometer.smartlab.exception.ExceptionEnumCode;
import com.nanometer.smartlab.util.ExcelUtils;
import com.nanometer.smartlab.util.IDUtils;
import com.nanometer.smartlab.util.MessageUtil;
import org.apache.commons.lang.StringUtils;
@@ -21,10 +22,7 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
/**
 * Created by johnny on 17/11/29.
@@ -169,6 +167,79 @@
    }
    /**
    * @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);
    }
    @Override
    public SysReagent getRowData(String rowKey) {
        return sysReagentDao.getRowData(rowKey);
    }
    @Override
    public SysReagent getSysReagentListNewRowData(String rowKey) {
        return sysReagentDao.getSysReagentListNewRowData(rowKey);
    }
    @Override
    public boolean export2Excel(List<Map> list, Integer type) throws Exception {
        Map<String,String> map = new LinkedHashMap<>();
        if (type == 0){
            map.put("kind", "种类");
            map.put("name", "名称");
            map.put("productSn", "产品编号");
            map.put("cas", "CAS");
            map.put("reagentType", "试剂类型");
            map.put("reagentCharacter", "危险性质");
            map.put("supplierName", "供应商");
            map.put("productHomeName", "厂家");
            map.put("reagentFormat", "规格");
            map.put("reagentUnit", "包装");
            map.put("price", "含税售价");
            map.put("perBox", "每箱数量");
            ExcelUtils.export2Excel(list,"耗材列表",map);
        }else {
            map.put("kind", "种类");
            map.put("name", "试剂名称");
            map.put("control_products_name", "管制品");
            map.put("productSn", "产品编号");
            map.put("cas", "CAS");
            map.put("reagentType", "试剂类型");
            map.put("reagentCharacter", "危险性质");
            map.put("supplierName", "供应商");
            map.put("productHomeName", "厂家");
            map.put("reagentFormat", "规格");
            map.put("reagentUnit", "包装");
            map.put("price", "含税售价");
//            map.put("originprice", "原始售价");
            map.put("perBox", "每箱数量");
            map.put("safetynum", "安全库存");
            ExcelUtils.export2Excel(list,"试剂列表",map);
        }
        return true;
    }
    @Override
    public List<Map> selectAll(String name, String cas, String supplierId, Integer type, String productSn) {
        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("productSn", productSn);
        return sysReagentDao.selectAll(params);
    }
    @Transactional(propagation = Propagation.REQUIRED)
    public int getSysReagentTotalCount(String name, String cas, String supplierId,Integer type) {
        try {
@@ -226,7 +297,7 @@
            if (sysReagent.getId() == null) {
                sysReagent.setId(IDUtils.uuid());
            }
            sysReagent.setName(sysReagent.getName().trim());
            this.sysReagentDao.insertSysReagent(sysReagent);
            return sysReagent;
        } catch (DuplicateKeyException ex) {
@@ -244,6 +315,7 @@
    @Transactional(propagation = Propagation.REQUIRED)
    public boolean updateSysReagent(SysReagent sysReagent) {
        try {
            sysReagent.setName(sysReagent.getName().trim());
            int row = this.sysReagentDao.updateSysReagent(sysReagent);
            if (row == 0) {