From c9ed223546b87fd373d8acf8948d9fdbf843e291 Mon Sep 17 00:00:00 2001 From: gdg <764716047@qq.com> Date: 星期一, 28 十二月 2020 17:28:03 +0800 Subject: [PATCH] 新增接口:从仓库领用 --- src/main/java/com/nanometer/smartlab/api/ApiAction.java | 134 ++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 132 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/nanometer/smartlab/api/ApiAction.java b/src/main/java/com/nanometer/smartlab/api/ApiAction.java index 2af3581..b604f42 100644 --- a/src/main/java/com/nanometer/smartlab/api/ApiAction.java +++ b/src/main/java/com/nanometer/smartlab/api/ApiAction.java @@ -7,11 +7,15 @@ 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; @@ -66,6 +70,8 @@ private BaseMetaService baseMetaService; @Resource private InterfaceService interfaceService; + @Resource + private SysWarehouseService sysWarehouseService; @Resource private SysWarningService sysWarningService; @@ -1187,7 +1193,10 @@ return ResponseModel.getOkInstence(code); } - + /** + * 获取替换字典 + * + */ @ResponseBody @RequestMapping("getEncodeReplaceDict") public Object getEncodeReplaceDict(@RequestParam String type) { @@ -1205,6 +1214,10 @@ } + /** + * 获取编码 + * + */ @ResponseBody @RequestMapping("getDangerousEncode") public Object getDangerousEncode(@RequestParam(required = false) String reagentName, @RequestParam(required = false) String cas) { @@ -1218,6 +1231,123 @@ } } + /** + * 获取仓库信息 + */ + @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