From 47a751cb301d05276ae5d75145d57b2d090fe4e1 Mon Sep 17 00:00:00 2001
From: kongzy <kongzy>
Date: 星期一, 01 七月 2024 10:58:35 +0800
Subject: [PATCH] change

---
 src/main/java/com/nanometer/smartlab/service/OpeUseFlowServiceImpl.java |  271 ++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 173 insertions(+), 98 deletions(-)

diff --git a/src/main/java/com/nanometer/smartlab/service/OpeUseFlowServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/OpeUseFlowServiceImpl.java
index 1bccad2..2b01f35 100644
--- a/src/main/java/com/nanometer/smartlab/service/OpeUseFlowServiceImpl.java
+++ b/src/main/java/com/nanometer/smartlab/service/OpeUseFlowServiceImpl.java
@@ -8,10 +8,13 @@
 
 import javax.annotation.Resource;
 
+import com.hazelcast.core.IFunction;
 import com.nanometer.smartlab.dao.*;
 import com.nanometer.smartlab.entity.*;
+import com.nanometer.smartlab.entity.dto.OpeUseFlowQueryDto;
 import com.nanometer.smartlab.entity.dto.PersonUseDetail;
 import com.nanometer.smartlab.entity.enumtype.OperateStatus;
+import com.nanometer.smartlab.model.CommonPage;
 import com.nanometer.smartlab.util.Constants;
 import com.nanometer.smartlab.util.ExcelUtils;
 import org.apache.commons.lang.StringUtils;
@@ -64,14 +67,6 @@
     @Transactional(propagation = Propagation.REQUIRED)
     public OpeUseFlow insertOpeUseFlow(OpeUseFlow opeUseFlow) {
         try {
-            if (opeUseFlow.getId() == null) {
-                opeUseFlow.setId(IDUtils.uuid());
-            }
-
-            if(opeUseFlow.getCreateTime()==null){
-            	opeUseFlow.setCreateTime(new Timestamp(System.currentTimeMillis()+1000));
-            }
-
             this.opeUseFlowDao.insertOpeUseFlow(opeUseFlow);
             return opeUseFlow;
         } catch (DuplicateKeyException ex) {
@@ -88,8 +83,26 @@
         }
     }
 
+    @Override
+    public int batchInsertOpeUseFlow(List<OpeUseFlow> opeUseFlowList) {
+        try {
+            return this.opeUseFlowDao.batchInsertOpeUseFlow(opeUseFlowList);
+        } catch (DuplicateKeyException ex) {
+            logger.warn(ex.getMessage(), ex);
+            throw new AlarmException(AlarmCode.DATA_DUPLICATE,
+                    MessageUtil.getMessage(AlarmCode.DATA_DUPLICATE.getCode()));
+        } catch (DataIntegrityViolationException ex) {
+            logger.warn(ex.getMessage(), ex);
+            throw new AlarmException(AlarmCode.DATA_CONFICT, MessageUtil.getMessage(AlarmCode.DATA_CONFICT.getCode()));
+        } catch (DataAccessException ex) {
+            logger.error(ex.getMessage(), ex);
+            throw new BusinessException(ExceptionEnumCode.DB_ERR,
+                    MessageUtil.getMessageByCode(ExceptionEnumCode.DB_ERR.getCode()), ex);
+        }
+    }
+
     @Transactional(propagation = Propagation.REQUIRED)
-    public List<OpeUseFlow> getOpeUseFlowList(String reagentId, String reagentCode, Integer status, String userId,
+    public List<OpeUseFlow> getOpeUseFlowList(Long reagentId, String reagentCode, Integer status, Long userId,
                                               Integer first, Integer pageSize) {
         try {
             Map<String, Object> params = new HashMap<String, Object>();
@@ -113,7 +126,7 @@
     }
 
     @Transactional(propagation = Propagation.REQUIRED)
-    public int getOpeUseFlowTotalCount(String reagentId, String reagentCode, Integer status, String userId) {
+    public int getOpeUseFlowTotalCount(Long reagentId, String reagentCode, Integer status, Long userId) {
         try {
             Map<String, Object> params = new HashMap<String, Object>();
             params.put("reagentId", reagentId);
@@ -134,8 +147,8 @@
     }
 
     @Transactional(propagation = Propagation.REQUIRED)
-    public List<OpeUseFlow> getOpeUseFlowListByName(String houseName,String reagentId, String reagentCode,String containerCode, Integer status, String userId,
-                                                    Date startDate,Date endDate,Integer first, Integer pageSize,String operatestate) {
+    public List<OpeUseFlow> getOpeUseFlowListByName(String houseName,Long reagentId, String reagentCode,String containerCode, Integer status, Long userId,
+                                                    Date startDate,Date endDate,Integer first, Integer pageSize,Integer operatestate) {
         try {
             Map<String, Object> params = new HashMap<String, Object>();
 
@@ -188,8 +201,57 @@
         }
     }
 
+    public CommonPage<OpeUseFlow> getOpeUseFlowSimpleInfoList(Integer pageNum, Integer pageSize, OpeUseFlowQueryDto opeUseFlowQueryDto) {
+        CommonPage commonPage=new CommonPage();
+        Map<String, Object> params = new HashMap<String, Object>();
+        if(pageNum==null||pageNum<1){
+            pageNum=1;
+        }
+        if(pageSize==null||pageSize<1){
+            pageSize=10;
+        }
+        if(pageSize>50){
+            pageSize=50;//每页最多查询50条记录
+        }
+        commonPage.setPageNum(pageNum);
+        commonPage.setPageSize(pageSize);
+
+        params.put("reagentName", opeUseFlowQueryDto.getReagentName());
+        if (StringUtils.isNotBlank(opeUseFlowQueryDto.getReagentCode())) {
+            params.put("reagentCode", "%" + opeUseFlowQueryDto.getReagentCode() + "%");
+        }
+        SimpleDateFormat sdfstart = new SimpleDateFormat("yyyy-MM-dd 00:00:00");
+        SimpleDateFormat sdfend = new SimpleDateFormat("yyyy-MM-dd 23:59:59");
+        Date now = new Date();
+        Calendar cal = Calendar.getInstance();
+        cal.setTime(now);
+        cal.add(Calendar.DATE, -7);
+        Date startTime = cal.getTime();
+        params.put("startDate",opeUseFlowQueryDto.getStartDate()!=null?opeUseFlowQueryDto.getStartDate():sdfstart.format(startTime));
+        params.put("endDate",opeUseFlowQueryDto.getEndDate()!=null?opeUseFlowQueryDto.getEndDate():sdfend.format(now));
+
+        params.put("houseName", opeUseFlowQueryDto.getHouseName());
+        params.put("operatestate", opeUseFlowQueryDto.getOperatestate());
+        params.put("containerCode", opeUseFlowQueryDto.getContainerCode());
+
+        params.put("first", (pageNum-1)*pageSize);
+        params.put("pageSize", pageSize);
+
+        Long total= new Long(this.opeUseFlowDao.getOpeUseFlowTotalCount(params));
+        commonPage.setTotalPage(CommonPage.getTotalPage(total,pageSize));
+        commonPage.setTotal(total);
+        List<OpeUseFlow> opeUseFlows= this.opeUseFlowDao.getOpeUseFlowSimpleInfoList(params);
+        commonPage.setList(opeUseFlows);
+        return commonPage;
+    }
+
+    @Override
+    public OpeUseFlow getLastUseFlow(String reagentCode) {
+        return this.opeUseFlowDao.getLastUseFlow(reagentCode);
+    }
+
     @Transactional(propagation = Propagation.REQUIRED)
-    public int getOpeUseFlowTotalCountByName(String houseName,String reagentId, String reagentCode,String containerCode, Integer status, String userId,Date startDate,Date endDate,String operatestate) {
+    public int getOpeUseFlowTotalCountByName(String houseName,Long reagentId, String reagentCode,String containerCode, Integer status, Long userId,Date startDate,Date endDate,Integer operatestate) {
         try {
             Map<String, Object> params = new HashMap<String, Object>();
             params.put("reagentName", reagentId);
@@ -240,8 +302,8 @@
         }
     }
 
-    private void addParamByUserId(String userId, Map<String, Object> params) {
-        if (StringUtils.isNotBlank(userId)) {
+    private void addParamByUserId(Long userId, Map<String, Object> params) {
+        if (userId!=null) {
             SysUser sysUser = sysUserService.getSysUser(userId);
 
 			// 不是管理员时,加入userid
@@ -296,9 +358,9 @@
             //0:个人领用 1:在库 3:报废
             //<!--0:个人领用 1:在仓库sys_warehouse_container 2:在实验室sys_laboratory_container 3:报废-->
             OpeUseFlow opeUseFlow = new OpeUseFlow();
-            opeUseFlow.setId(IDUtils.uuid());
+       //     opeUseFlow.setId(IDUtils.uuid());
             opeUseFlow.setCreateTime(new Timestamp(DateUtils.parseDate(params.get("updateTime").toString(), Constants.TIME_PATTERN_YYYY_MM_DD_HH_MM_SS).getTime()));
-            opeUseFlow.setStatus(ArrivalStatus.parse(Integer.valueOf(String.valueOf(params.get("status")))));
+            opeUseFlow.setStatus(Integer.valueOf(String.valueOf(params.get("status"))));
             opeUseFlow.setReagentCode((String) params.get("reagentCode"));
             if (params.get("idcard") != null) {
                 SysUser sysUser = sysUserService.getSysUserByIdCard((String) params.get("idcard"));
@@ -307,8 +369,8 @@
                     continue;
                 }
                 opeUseFlow.setUserId(sysUser.getId());
-                opeUseFlow.setContainerId("0");
-                opeUseFlow.setHouseId("0");
+                opeUseFlow.setContainerId(0l);
+                opeUseFlow.setHouseId(0l);
             } else {
                 logger.error("The idcard is empty!");
                 continue;
@@ -317,13 +379,13 @@
                 SysWarehouseContainer container = sysWarehouseContainerDao.getSysWarehouseContainerByContainerCode((String) params.get("containerCode"));
                 if (Objects.isNull(container)==false) {
 					if (params.get("status").toString().equals("1")) {
-						opeUseFlow.setStatus(ArrivalStatus.WAREHOUSE);
+						opeUseFlow.setStatus(ArrivalStatus.WAREHOUSE.getKey());
 					} else {
-						opeUseFlow.setStatus(ArrivalStatus.PERSONAL);
+						opeUseFlow.setStatus(ArrivalStatus.PERSONAL.getKey());
 					}
                     opeUseFlow.setContainerId(container.getId());
                     opeUseFlow.setHouseId(container.getWarehouseId());
-                    opeUseFlow.setPlace(container.getStructure());
+                  //  opeUseFlow.setPlace(container.getStructure());
                 }else{
                     SysLaboratoryContainer sysLaboratoryContainer = sysLaboratoryContainerDao.getSysLaboratoryContainerByContainerCode((String) params.get("containerCode"));
                     if (Objects.isNull(sysLaboratoryContainer)) {
@@ -331,13 +393,13 @@
                         continue;
                     }
 					if (params.get("status").toString().equals("1")) {
-						opeUseFlow.setStatus(ArrivalStatus.LABORATORY);
+						opeUseFlow.setStatus(ArrivalStatus.LABORATORY.getKey());
 					} else {
-						opeUseFlow.setStatus(ArrivalStatus.PERSONAL);
+						opeUseFlow.setStatus(ArrivalStatus.PERSONAL.getKey());
 					}
                     opeUseFlow.setContainerId(sysLaboratoryContainer.getId());
                     opeUseFlow.setHouseId(sysLaboratoryContainer.getLaboratoryId());
-                    opeUseFlow.setPlace(sysLaboratoryContainer.getStructure());
+                   // opeUseFlow.setPlace(sysLaboratoryContainer.getStructure());
                 }
  //           }
 
@@ -378,14 +440,15 @@
         opeUseFlowDao.updateReceiptNumber(code, receiptNumber,note);
     }
 
+    //---------待完善------------20240408
     @Transactional
     public void updateReceiptNumberByCode(List<OpeApplyReserve> selectedTmpOrderList,String receiptNumber,String note) {
 
         for (OpeApplyReserve oar : selectedTmpOrderList) {
             if (oar.getFlag() == 1) {
                 //库中领取 code存的是 试剂状态的id
-                for (String statusId : oar.getReagentCode()) {
-                    String code = opeReagentStatusService.getOpeReagentStatus(statusId).getReagentCode();
+                for (String reagentCode : oar.getReagentCodes()) {
+                    String code = opeReagentStatusService.getOpeReagentStatusByCode(reagentCode).getReagentCode();
                     //此时状态为领用待入库
                     this.updateReceiptNumber(code, receiptNumber,note);
                 }
@@ -404,13 +467,13 @@
     }
 
     @Override
-    public Map<String, Integer> getRegentInfoFromReceiptNumber(String receiptNumber) {
+    public Map<Long, Integer> getRegentInfoFromReceiptNumber(String receiptNumber) {
         List<Map> maps = opeUseFlowDao.getRegentInfoFromReceiptNumber(receiptNumber);
         if (maps.size() > 0) {
-            Map<String, Integer> printInfo = new HashMap<>();
+            Map<Long, Integer> printInfo = new HashMap<>();
             for (Map map : maps) {
                 Integer count =Integer.parseInt(String.valueOf(map.get("count")));;
-                String reagentId = (String) map.get("reagentId");
+                Long reagentId = Long.valueOf(map.get("reagentId").toString());
                 SysReagent reagent = sysReagentService.getSysReagent(reagentId);
                 printInfo.put(reagent.getId(), count);
             }
@@ -423,21 +486,17 @@
     @Override
     public Map getApplyUserByReagentCode(String reagentCode) {
 
-        Map<String, String> metaMap2 = new HashMap<>();
-        metaMap2.put("groupId", "operate_status");
-        metaMap2.put("metaKey", String.valueOf(OperateStatus.WAREHOUSEOUT.getKey()));
-        List<BaseMeta> baseMetaList2 = baseMetaDao.getBaseMetaList(metaMap2);
-        String id = baseMetaList2.get(0).getId();
-        return opeUseFlowDao.getUserIdByReagentCode(reagentCode, id);
+        return opeUseFlowDao.getUserIdByReagentCode(reagentCode, OperateStatus.WAREHOUSEOUT.getKey());
     }
 
+    //---------待完善------------20240408
     @Override
     public void updateReceiptNumberByCode2(List<OpeWarehouseReserve> selectTmpList, String receiptNumber,String note) {
         for (OpeWarehouseReserve owr : selectTmpList) {
             if (owr.getFlag() == 1) {
                 //库中领取 code存的是 试剂状态的id
                 for (String statusId : owr.getReagentCodes()) {
-                    String code = opeReagentStatusService.getOpeReagentStatus(statusId).getReagentCode();
+                    String code = opeReagentStatusService.getOpeReagentStatusByCode(statusId).getReagentCode();
                     //此时状态为领用待入库
                     this.updateReceiptNumber(code, receiptNumber,note);
                 }
@@ -455,7 +514,7 @@
     }
 
     @Override
-    public int getPersonalUseInfoCount(String reagentCode,String userId, Date startDate, Date endDate, String receiptNumber,
+    public int getPersonalUseInfoCount(String reagentCode,Long userId, Date startDate, Date endDate, String receiptNumber,
                                        String department, String project,String applyPerson,String reagentName) {
         Map<String,Object> params = new HashMap<>();
 
@@ -487,7 +546,6 @@
             params.put("endTime",sdfend.format(now));
         }
 
-        params.put("userId", userId);
         params.put("receiptNumber", receiptNumber);
         params.put("department", department);
         params.put("project", project);
@@ -495,26 +553,17 @@
         params.put("applyPerson", applyPerson);
         if (StringUtils.isNotBlank(reagentName)) {
             //根据试剂名获取单号
-
         }
         params.put("reagentName", reagentName);
-        //操作状态位仓库领取
-        Map<String, String> metaMap2 = new HashMap<>();
-        metaMap2.put("groupId", "operate_status");
-        metaMap2.put("metaKey", String.valueOf(OperateStatus.WAREHOUSEOUT.getKey()));
-        List<BaseMeta> baseMetas = baseMetaDao.getBaseMetaList(metaMap2);
-        params.put("operatestate", baseMetas.get(0).getId());
-
-        metaMap2.put("metaKey", String.valueOf(OperateStatus.TRANSFER.getKey()));
-        List<BaseMeta> baseMetas1 = baseMetaDao.getBaseMetaList(metaMap2);
-        params.put("operatestate1", baseMetas1.get(0).getId());
+        params.put("operatestate", OperateStatus.WAREHOUSEOUT.getKey());
+        params.put("operatestate1", OperateStatus.TRANSFER.getKey());
 
         addParamByUserId(userId, params);
         return opeUseFlowDao.countPersonalUseInfo(params);
     }
 
     @Override
-    public List<OpeUseFlow> getPersonalUseInfoList(String reagentCode,String userId, Date startDate, Date endDate, String receiptNumber,
+    public List<OpeUseFlow> getPersonalUseInfoList(String reagentCode,Long userId, Date startDate, Date endDate, String receiptNumber,
                                                    String department, String project,String applyPerson,String reagentName, int first, int pageSize) {
         Map<String, Object> params = new HashMap<>();
         SimpleDateFormat sdfstart = new SimpleDateFormat("yyyy-MM-dd 00:00:00");
@@ -542,23 +591,15 @@
         }else {
             params.put("endTime",sdfend.format(now));
         }
-        params.put("userId", userId);
         params.put("receiptNumber", receiptNumber);
         params.put("department", department);
         params.put("project", project);
         params.put("reagentCode", reagentCode);
         params.put("applyPerson", applyPerson);
         params.put("reagentName", reagentName);
-        //操作状态位仓库领取
-        Map<String, String> metaMap2 = new HashMap<>();
-        metaMap2.put("groupId", "operate_status");
-        metaMap2.put("metaKey", String.valueOf(OperateStatus.WAREHOUSEOUT.getKey()));
-        List<BaseMeta> baseMetas = baseMetaDao.getBaseMetaList(metaMap2);
-        params.put("operatestate", baseMetas.get(0).getId());
+        params.put("operatestate", OperateStatus.WAREHOUSEOUT.getKey());
 
-        metaMap2.put("metaKey", String.valueOf(OperateStatus.TRANSFER.getKey()));
-        List<BaseMeta> baseMetas1 = baseMetaDao.getBaseMetaList(metaMap2);
-        params.put("operatestate1", baseMetas1.get(0).getId());
+        params.put("operatestate1", OperateStatus.TRANSFER.getKey());
 
         params.put("first", first);
         params.put("pageSize", pageSize);
@@ -570,15 +611,9 @@
     @Override
     public List<PersonUseDetail> getApplyInfo(String receiptNumber) {
         Map<String,Object> params = new HashMap<>();
-        Map<String, String> metaMap2 = new HashMap<>();
-        metaMap2.put("groupId", "operate_status");
-        metaMap2.put("metaKey", String.valueOf(OperateStatus.WAREHOUSEOUT.getKey()));
-        List<BaseMeta> baseMetas = baseMetaDao.getBaseMetaList(metaMap2);
-        params.put("operatestate", baseMetas.get(0).getId());
+        params.put("operatestate", OperateStatus.WAREHOUSEOUT.getKey());
 
-        metaMap2.put("metaKey", String.valueOf(OperateStatus.TRANSFER.getKey()));
-        List<BaseMeta> baseMetas1 = baseMetaDao.getBaseMetaList(metaMap2);
-        params.put("operatestate1", baseMetas1.get(0).getId());
+        params.put("operatestate1", OperateStatus.TRANSFER.getKey());
 
         params.put("receiptNumber", receiptNumber);
 
@@ -590,15 +625,9 @@
     @Override
     public int getApplyInfoSize(String receiptNumber) {
         Map<String,Object> params = new HashMap<>();
-        Map<String, String> metaMap2 = new HashMap<>();
-        metaMap2.put("groupId", "operate_status");
-        metaMap2.put("metaKey", String.valueOf(OperateStatus.WAREHOUSEOUT.getKey()));
-        List<BaseMeta> baseMetas = baseMetaDao.getBaseMetaList(metaMap2);
-        params.put("operatestate", baseMetas.get(0).getId());
+        params.put("operatestate", OperateStatus.WAREHOUSEOUT.getKey());
 
-        metaMap2.put("metaKey", String.valueOf(OperateStatus.TRANSFER.getKey()));
-        List<BaseMeta> baseMetas1 = baseMetaDao.getBaseMetaList(metaMap2);
-        params.put("operatestate1", baseMetas1.get(0).getId());
+        params.put("operatestate1", OperateStatus.TRANSFER.getKey());
 
         params.put("receiptNumber", receiptNumber);
 
@@ -613,25 +642,20 @@
 
     @Override
     @Transactional
-    public void scrapReagent(String reagentId,String reagentCode, String userId) {
+    public void scrapReagent(Long reagentId,String reagentCode, Long userId) {
         //1.试剂状态表更新试剂状态为报废
         OpeReagentStatus status = opeReagentStatusService.getStatus(reagentId, reagentCode);
-        if (status.getStatus() == ArrivalStatus.SCRAP) {
+        if (status.getStatus() == ArrivalStatus.SCRAP.getKey()) {
             throw new BusinessException(ExceptionEnumCode.PARAM_ERR,"该试剂已是报废状态,无法进行操作");
         }
         //报废
-        status.setStatus(ArrivalStatus.SCRAP);
+        status.setStatus(ArrivalStatus.SCRAP.getKey());
         status.setUserId(userId);
         opeReagentStatusDao.updateOpeReagentStatusDao(status);
 
         //2.插入一条报废的流向记录
         OpeUseFlow useFlow = new OpeUseFlow();
-        //获取报废状态id
-        Map<String, Object> params = new HashMap<>();
-        params.put("groupId", "operate_status");
-        params.put("metaKey", String.valueOf(OperateStatus.SCRAP.getKey()));
-        List<BaseMeta> baseMetas = baseMetaDao.getBaseMetaList(params);
-        useFlow.setOperateState(baseMetas.get(0).getId());
+        useFlow.setOperateState(OperateStatus.SCRAP.getKey());
         useFlow.setReagentCode(reagentCode);
         useFlow.setContainerId(status.getContainerId());
         useFlow.setHouseId(status.getHouseId());
@@ -639,11 +663,11 @@
         useFlow.setPlace(status.getPlace());
         useFlow.setRemainder(status.getRemainder());
         useFlow.setStoreType(status.getStoreType());
-        useFlow.setProject(status.getProjectNum());
+        useFlow.setProjectId(status.getProjectId());
         useFlow.setArticleNumber(status.getArticleNumber());
 
         useFlow.setCreateTime(new Timestamp(new Date().getTime()));
-        useFlow.setId(IDUtils.uuid());
+      //  useFlow.setId(IDUtils.uuid());
         opeUseFlowDao.insertOpeUseFlow(useFlow);
 
     }
@@ -654,21 +678,16 @@
     }
 
     @Override
-    public OpeUseFlow selectByReceiptNumber(String receiptNumber,String userId) {
+    public OpeUseFlow selectByReceiptNumber(String receiptNumber,Long userId) {
 
         Map<String, Object> params = new HashMap<>();
         params.put("userId", userId);
         params.put("receiptNumber", receiptNumber);
         //操作状态位仓库领取
-        Map<String, String> metaMap2 = new HashMap<>();
-        metaMap2.put("groupId", "operate_status");
-        metaMap2.put("metaKey", String.valueOf(OperateStatus.WAREHOUSEOUT.getKey()));
-        List<BaseMeta> baseMetas = baseMetaDao.getBaseMetaList(metaMap2);
-        params.put("operatestate", baseMetas.get(0).getId());
 
-        metaMap2.put("metaKey", String.valueOf(OperateStatus.TRANSFER.getKey()));
-        List<BaseMeta> baseMetas1 = baseMetaDao.getBaseMetaList(metaMap2);
-        params.put("operatestate1", baseMetas1.get(0).getId());
+        params.put("operatestate", OperateStatus.WAREHOUSEOUT.getKey());
+
+        params.put("operatestate1", OperateStatus.TRANSFER.getKey());
 
         addParamByUserId(userId, params);
 
@@ -676,7 +695,7 @@
     }
 
     @Override
-    public List<Map> selectAll(String houseName, String reagentId, String reagentCode, String containerCode, String userId, Date startDate, Date endDate) {
+    public List<Map> selectAll(String houseName, Long reagentId, String reagentCode, String containerCode, Long userId, Date startDate, Date endDate) {
         try {
             Map<String, Object> params = new HashMap<String, Object>();
 
@@ -736,4 +755,60 @@
         return true;
     }
 
+
+    /**
+     * @Description: 查询导出
+     */
+    @Override
+    public List<Map> selectExportDetail(String reagentCode, Long userId, Date startTime, Date endTime, String receiptNumber, String department, String project, String applyPerson, String reagentName) {
+        Map<String, Object> params = new HashMap<>();
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+        if (startTime != null) {
+            params.put("startTime", sdf.format(startTime) +" 00:00:00");
+        }
+
+        if (endTime != null) {
+            params.put("endTime", sdf.format(endTime) + " 23:59:59");
+        }
+
+        params.put("reagentCode", reagentCode);
+
+        params.put("endTime", endTime);
+        params.put("receiptNumber", receiptNumber);
+        params.put("department", department);
+        params.put("project", project);
+        params.put("applyPerson", applyPerson);
+        params.put("reagentName", reagentName);
+        params.put("groupId", "operate_status");
+
+        params.put("operatestate", OperateStatus.WAREHOUSEOUT.getKey());
+
+        params.put("operatestate1", OperateStatus.TRANSFER.getKey());
+        addParamByUserId(userId, params);
+        return opeUseFlowDao.selectDetail(params);
+    }
+
+    @Override
+    public boolean export22Excel(List<Map> list) throws Exception {
+        Map<String,String> map = new LinkedHashMap<>();
+        map.put("productSn", "产品编号");
+        map.put("reagentName", "试剂名称");
+        map.put("reagentCode", "试剂条形码");
+        map.put("controlProducts", "管制品");
+        map.put("reagentFormat", "规格型号");
+        map.put("perInfo", "包装");
+        map.put("productHome", "厂家");
+        map.put("articleNumber", "批号");
+        map.put("username", "申领人");
+        map.put("projectName", "课题组");
+        map.put("department", "部门");
+        map.put("location", "地点");
+        map.put("createTime", "领用时间");
+        ExcelUtils.export2Excel(list,"试剂领用记录表",map);
+        return true;
+    }
+
+
+
+
 }

--
Gitblit v1.9.2