From fce41585f6c4e09c12c7e2a3150d4dfbf1f46bb0 Mon Sep 17 00:00:00 2001
From: 李宇 <986321569@qq.com>
Date: 星期二, 12 一月 2021 10:27:26 +0800
Subject: [PATCH] 修改申购试剂查询

---
 src/main/java/com/nanometer/smartlab/api/ApiAction.java |  159 ++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 152 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/nanometer/smartlab/api/ApiAction.java b/src/main/java/com/nanometer/smartlab/api/ApiAction.java
index dbf3054..9fa2562 100644
--- a/src/main/java/com/nanometer/smartlab/api/ApiAction.java
+++ b/src/main/java/com/nanometer/smartlab/api/ApiAction.java
@@ -7,12 +7,16 @@
 import com.google.common.collect.Maps;
 import com.nanometer.smartlab.controller.BaseController;
 import com.nanometer.smartlab.controller.MenuController;
+import com.nanometer.smartlab.dao.OpeReagentStatusDao;
 import com.nanometer.smartlab.dao.SysLaboratoryContainerDao;
 import com.nanometer.smartlab.dao.SysWarehouseContainerDao;
 import com.nanometer.smartlab.entity.*;
-import com.nanometer.smartlab.entity.SysWarning;
+import com.nanometer.smartlab.entity.dto.HazardousWasteUser;
+import com.nanometer.smartlab.entity.dto.InWarehouseInfoDto;
+import com.nanometer.smartlab.entity.dto.ReagentReceivingDto;
 import com.nanometer.smartlab.entity.dto.SysWarehouseDto;
 import com.nanometer.smartlab.entity.enumtype.ApiStatus;
+import com.nanometer.smartlab.entity.enumtype.ArrivalStatus;
 import com.nanometer.smartlab.entity.enumtype.ReplaceDictType;
 import com.nanometer.smartlab.entity.enumtype.SeeFlag;
 import com.nanometer.smartlab.exception.ApiException;
@@ -20,10 +24,7 @@
 import com.nanometer.smartlab.exception.ExceptionEnumCode;
 import com.nanometer.smartlab.model.ResponseModel;
 import com.nanometer.smartlab.service.*;
-import com.nanometer.smartlab.util.Constants;
-import com.nanometer.smartlab.util.FacesUtils;
-import com.nanometer.smartlab.util.IDUtils;
-import com.nanometer.smartlab.util.MessageUtil;
+import com.nanometer.smartlab.util.*;
 
 import org.apache.commons.lang.ArrayUtils;
 import org.apache.commons.lang.StringUtils;
@@ -336,6 +337,7 @@
             retJSON.put("code", e.getApiStatus().getRetCode());
             retJSON.put("message", e.getErrorMessage());
         } catch (Exception e) {
+            e.printStackTrace();
             retJSON.put("code", ApiStatus.SYS_ERR.getRetCode());
             StackTraceElement[] stackTraceElements = e.getStackTrace();
 
@@ -542,9 +544,14 @@
             map.put("reagentType", opeReagentStatus.getReagent().getReagentType());
             map.put("deadline", opeReagentStatus.getReagent().getDeadline());
             map.put("specification", opeReagentStatus.getReagent().getReagentFormat());
-            map.put("masterMetering", opeReagentStatus.getReagent().getMainMetering());
-            map.put("itemNumber", opeReagentStatus.getReagent().getReagentType());
+            map.put("itemNumber", opeReagentStatus.getArticleNumber());
             map.put("producer", opeReagentStatus.getReagent().getProductHome());
+            if (opeReagentStatus.getReagent().getMainMetering() == null){
+                map.put("masterMetering",opeReagentStatus.getReagent().getReagentUnit());
+            }else{
+                map.put("masterMetering", opeReagentStatus.getReagent().getMainMetering());
+            }
+
         }
         logger.info("getReagentInfo end...");
         return ResponseModel.getOkInstence(datalist);
@@ -839,6 +846,11 @@
 			}
 
 			String updateTime = dataJson.getString("updateTime");
+            if (sdf.parse(updateTime).after(new Date())) {
+                retJSON.put("code", "400");
+                retJSON.put("message", "发送时间不准确");
+                return retJSON.toJSONString();
+            }
 
 			SysContainerSensors sysContainerSensors = new SysContainerSensors();
 			sysContainerSensors.setContainerId(containerCode);
@@ -1246,6 +1258,139 @@
     }
 
 
+    /**
+    * @Description: 获取所有人员,人员相关实验室,实验室相关试剂柜
+    * @date 2020/12/23 16:47
+    */
+    @ResponseBody
+    @RequestMapping("getApplyPersonDetailInfo")
+    public Object getApplyPersonDetailInfo() {
+        try {
+            List data = sysUserService.getUserInfo();
+            return ResponseModel.getOkInstence(data);
+        } catch (Exception e) {
+            e.printStackTrace();
+            logger.info(e);
+            return ResponseModel.getErrInstance("系统出错");
+        }
 
+    }
+
+
+   /**
+   * @Description: 入库
+   * @date 2020/12/24 14:19
+   */
+    @ResponseBody
+    @RequestMapping("putInStorage")
+    public Object putInWarehouse(@RequestBody InWarehouseInfoDto inWarehouseInfo) {
+        try {
+
+            if (inWarehouseInfo.getReagentCode() != null && inWarehouseInfo.getReagentCode().size() > 0) {
+
+                for (int i = 0; i < inWarehouseInfo.getReagentCode().size(); i++) {
+                    String code = inWarehouseInfo.getReagentCode().get(i);
+                    DangerousEncode dangerousEncode = new DangerousEncode();
+                    //5-8位
+                    String reagentCode = code.substring(4, 8);
+                    //数据库存储的前缀00空着
+                    dangerousEncode.setReagentCode("00"+reagentCode);
+                    List<DangerousEncode> dangerousEncodes =
+                            dangerousEncodeService.selectAll(dangerousEncode,null,null);
+                    //1.编码存在校验
+                    if (dangerousEncodes.size() <1){
+                        return ResponseModel.getErrInstance("该试剂危化品编码不存在");
+                    }
+
+                    //2.重复入库校验  无论任何状态
+                    OpeReagentStatus ors = opeReagentStatusService.getOpeReagentStatusByReagentCode(code);
+                    if (ors != null) {
+                        return ResponseModel.getErrInstance("该试剂危化品编码已存在");
+                    }
+
+                }
+
+                //3.入库
+                sysWarehouseService.putInWarehouse(inWarehouseInfo);
+                return ResponseModel.getOkInstence("入库成功");
+            } else {
+                return ResponseModel.getErrInstance("无试剂条码");
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+            logger.info(e);
+            return ResponseModel.getErrInstance("系统出错");
+        }
+
+    }
+
+
+    /**
+     * @Description: 试剂领用到实验室
+     * @date 2020/12/24 14:19
+     */
+    @ResponseBody
+    @RequestMapping("reagentReceiving")
+    public Object reagentReceiving(@RequestBody ReagentReceivingDto reagentReceiving) {
+        try {
+            if (reagentReceiving.getReagentCode() != null && reagentReceiving.getReagentCode().size() > 0) {
+
+                //1.校验仓库是否有该试剂
+                for (int i = 0; i < reagentReceiving.getReagentCode().size(); i++) {
+                    String reagentCode = reagentReceiving.getReagentCode().get(i);
+                    //去试剂状态查找 是否有此试剂条码
+                    OpeReagentStatus ors = opeReagentStatusService.getOpeReagentStatusByReagentCode(reagentCode);
+                    if (ors == null || ors.getStatus() != ArrivalStatus.WAREHOUSE){
+                        return ResponseModel.getErrInstance("仓库无此试剂");
+                    }
+                }
+                //2.领用
+                sysWarehouseService.reagentReceiving(reagentReceiving);
+                return ResponseModel.getOkInstence("领用成功");
+            } else {
+                return ResponseModel.getErrInstance("无效试剂条码");
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+            logger.info(e);
+            return ResponseModel.getErrInstance("系统出错");
+        }
+
+    }
+
+    /**
+     * @Description: 危废登录
+     * @date 2020/12/29 14:13
+     */
+    @ResponseBody
+    @RequestMapping("hazardousWaste/login")
+    public Object hazardousWaste(@RequestBody HazardousWasteUser user) {
+
+        try {
+            String account = user.getAccount();
+            if (StringUtils.isBlank(account)){
+                return  ResponseModel.getErrInstance("账户名为空");
+            }
+
+            SysUser sysUser = sysUserService.getUserByAccount(account);
+            if (sysUser == null){
+                return  ResponseModel.getErrInstance("账户名不存在");
+            }else{
+                if (sysUser.getPassword().equals(MD5Utils.encode(user.getPassword()))){
+                    user.setId(sysUser.getId());
+                    user.setRoleName(sysUser.getRoleName());
+                    return ResponseModel.getOkInstence(user);
+                }else{
+                    return ResponseModel.getErrInstance("密码错误");
+                }
+            }
+
+        }catch (Exception e){
+            e.printStackTrace();
+            logger.info(e);
+            return ResponseModel.getErrInstance("系统出错");
+        }
+
+    }
 
 }

--
Gitblit v1.9.2