From 6aa047092fff37a3b0ecf8fe364b76dbd91e3992 Mon Sep 17 00:00:00 2001
From: gdg <764716047@qq.com>
Date: Tue, 29 Dec 2020 09:53:21 +0800
Subject: [PATCH] 传感器发送时间超过现在就直接返回错误
---
src/main/java/com/nanometer/smartlab/api/ApiAction.java | 171 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 170 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/nanometer/smartlab/api/ApiAction.java b/src/main/java/com/nanometer/smartlab/api/ApiAction.java
index 6d25ef8..8606217 100644
--- a/src/main/java/com/nanometer/smartlab/api/ApiAction.java
+++ b/src/main/java/com/nanometer/smartlab/api/ApiAction.java
@@ -7,11 +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.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;
import com.nanometer.smartlab.exception.BusinessException;
@@ -65,6 +70,8 @@
private BaseMetaService baseMetaService;
@Resource
private InterfaceService interfaceService;
+ @Resource
+ private SysWarehouseService sysWarehouseService;
@Resource
private SysWarningService sysWarningService;
@@ -80,6 +87,8 @@
private SysWarehouseContainerDao sysWarehouseContainerDao;
@Resource
private DangerousEncodeService dangerousEncodeService;
+ @Resource
+ private EncodeReplaceDictService encodeReplaceDictService;
@Value("${institute.url}")
String instituteUrl;
@@ -833,6 +842,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);
@@ -1184,6 +1198,161 @@
return ResponseModel.getOkInstence(code);
}
+ /**
+ * 获取替换字典
+ *
+ */
+ @ResponseBody
+ @RequestMapping("getEncodeReplaceDict")
+ public Object getEncodeReplaceDict(@RequestParam String type) {
+ try {
+ ReplaceDictType rdType = ReplaceDictType.parse(Integer.parseInt(type));
+ EncodeReplaceDict encodeReplaceDict = new EncodeReplaceDict();
+ encodeReplaceDict.setType(rdType);
+ List<EncodeReplaceDict> data = encodeReplaceDictService.selectAll(encodeReplaceDict, null, null);
+ return ResponseModel.getOkInstence(data);
+ }catch (Exception e){
+ e.printStackTrace();
+ logger.info(e);
+ return ResponseModel.getErrInstance("系统出错");
+ }
+
+ }
+
+ /**
+ * 获取编码
+ *
+ */
+ @ResponseBody
+ @RequestMapping("getDangerousEncode")
+ public Object getDangerousEncode(@RequestParam(required = false) String reagentName, @RequestParam(required = false) String cas) {
+ try {
+ List<DangerousEncode> data = dangerousEncodeService.selectByCodeAndName(null, reagentName, cas, null);
+ return ResponseModel.getOkInstence(data);
+ } catch (Exception e){
+ e.printStackTrace();
+ logger.info(e);
+ return ResponseModel.getErrInstance("系统出错");
+ }
+
+ }
+ /**
+ * 获取仓库信息
+ */
+ @ResponseBody
+ @RequestMapping("getWarehouseInfo")
+ public Object getWarehouseInfo() {
+ try {
+ List<SysWarehouseDto> data = sysWarehouseService.getWarehouseList();
+ return ResponseModel.getOkInstence(data);
+ } catch (Exception e) {
+ e.printStackTrace();
+ logger.info(e);
+ return ResponseModel.getErrInstance("系统出错");
+ }
+
+ }
+
+
+ /**
+ * @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("系统出错");
+ }
+
+ }
}
--
Gitblit v1.9.2