| | |
| | | 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.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; |
| | |
| | | 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 { |
| | |
| | | } |
| | | |
| | | |
| | | /** |
| | | * @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("系统出错"); |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | } |