| | |
| | | import com.nanometer.smartlab.controller.MenuController; |
| | | import com.nanometer.smartlab.dao.OpeReagentStatusDao; |
| | | import com.nanometer.smartlab.dao.SysLaboratoryContainerDao; |
| | | import com.nanometer.smartlab.dao.SysLaboratoryDao; |
| | | import com.nanometer.smartlab.dao.SysWarehouseContainerDao; |
| | | import com.nanometer.smartlab.entity.*; |
| | | import com.nanometer.smartlab.entity.dto.*; |
| | |
| | | @Lazy |
| | | @Resource |
| | | private SysLaboratoryContainerDao sysLaboratoryContainerDao; |
| | | |
| | | @Lazy |
| | | @Resource |
| | | private SysLaboratoryDao sysLaboratoryDao; |
| | | |
| | | |
| | | @Lazy |
| | | @Resource |
| | | private SysWarehouseContainerDao sysWarehouseContainerDao; |
| | |
| | | @Lazy |
| | | @Resource |
| | | private OpeUseFlowService opeUseFlowService; |
| | | @Lazy |
| | | @Resource |
| | | private SysWarehouseStatusService sysWarehouseStatusService; |
| | | @Lazy |
| | | @Resource |
| | | private SysReagentService sysReagentService; |
| | | |
| | | @Value("${institute.url}") |
| | | String instituteUrl; |
| | | |
| | |
| | | } |
| | | |
| | | logger.info("registerTestCabinet" + data); |
| | | String userId = request.getHeader("userId"); |
| | | Long userId = Long.valueOf(request.getHeader("userId")); |
| | | JSONObject retJSON = new JSONObject(); |
| | | try { |
| | | interfaceService.registerTestCabinet(userId, JSONObject.parseObject(data)); |
| | |
| | | } |
| | | |
| | | logger.info("AutheTestCabinet" + data); |
| | | String userId = request.getHeader("userId"); |
| | | Long userId = Long.valueOf(request.getHeader("userId")); |
| | | JSONObject retJSON = new JSONObject(); |
| | | try { |
| | | interfaceService.AutheTestCabinet(userId, JSONObject.parseObject(data)); |
| | |
| | | data += str; |
| | | } |
| | | logger.info("logoutTestCabinet" + data); |
| | | String userId = request.getHeader("userId"); |
| | | Long userId = Long.valueOf(request.getHeader("userId")); |
| | | JSONObject retJSON = new JSONObject(); |
| | | try { |
| | | interfaceService.logoutTestCabinet(userId, JSONObject.parseObject(data)); |
| | |
| | | data += str; |
| | | } |
| | | logger.info("updateTestCabinet" + data); |
| | | String userId = request.getHeader("userId"); |
| | | Long userId = Long.valueOf(request.getHeader("userId")); |
| | | JSONObject retJSON = new JSONObject(); |
| | | try { |
| | | interfaceService.updateTestCabinet(userId, JSONObject.parseObject(data)); |
| | |
| | | data += str; |
| | | } |
| | | logger.info("openCabinetDoor" + data); |
| | | String userId = request.getHeader("userId"); |
| | | Long userId = Long.valueOf(request.getHeader("userId")); |
| | | JSONObject retJSON = new JSONObject(); |
| | | try { |
| | | String returndata = interfaceService.openCabinetDoor(userId, JSONObject.parseObject(data)); |
| | |
| | | return retJSON.toJSONString(); |
| | | } |
| | | |
| | | // 报送试剂最新信息接口 |
| | | // 报送试剂最新信息接口 只更新试剂状态ope_regeant_status表 0, "领用" 1, "入库" 2, "存入" 3, "报废" -1, "领用待入库" |
| | | @ResponseBody |
| | | @RequestMapping(value = "/synchAllCabinet") |
| | | public String synchAllCabinet(HttpServletRequest request) throws IOException { |
| | |
| | | return retJSON.toJSONString(); |
| | | } |
| | | |
| | | // 报警情况接口(warning) |
| | | // 出入库记录信息接口 更新试剂流向ope_use_flow表 |
| | | // 操作状态 2 领用 |
| | | // 操作状态 4 错误存放 |
| | | // 操作状态 1 错误入库 |
| | | // 操作状态 6 转移 智能柜试剂转移到另一个柜子 |
| | | // 操作状态 5 报废 |
| | | // 操作状态 3 存放 |
| | | // 操作状态 0 入库 |
| | | // 操作状态 11 仓库领用 |
| | | // 操作状态 10 仓库入库 |
| | | @ResponseBody |
| | | @RequestMapping(value = "/cabinetData") |
| | | public String cabinetData(HttpServletRequest request) throws Exception { |
| | | BufferedReader br = request.getReader(); |
| | | String str, data = ""; |
| | | while((str = br.readLine()) != null){ |
| | | data += str; |
| | | } |
| | | JSONObject retJSON = new JSONObject(); |
| | | logger.info("cabinetData" + data); |
| | | Long userId = StringUtils.isNotBlank(request.getHeader("userId"))?Long.valueOf(request.getHeader("userId")):null; |
| | | if(userId==null){ |
| | | throw new ApiException(ApiStatus.SYS_ERR,"传参用户ID为空"); |
| | | } |
| | | // Body参数 |
| | | JSONObject bodyJSONObject = new JSONObject(); |
| | | bodyJSONObject = JSONObject.parseObject(data); |
| | | |
| | | |
| | | try { |
| | | // 数据 |
| | | String dataStr = bodyJSONObject.getString("data"); |
| | | JSONArray dataJSONArray = JSONArray.parseArray(dataStr); |
| | | logger.info("dataJSONArray: " + dataJSONArray); |
| | | if( dataJSONArray.size() !=0 ){ |
| | | interfaceService.cabinetData(dataJSONArray,userId); |
| | | } |
| | | |
| | | retJSON.put("code", ApiStatus.OK.getRetCode()); |
| | | retJSON.put("message", ApiStatus.OK.getRetMsg()); |
| | | } catch (ApiException e) { |
| | | retJSON.put("code", e.getApiStatus().getRetCode()); |
| | | retJSON.put("message", e.getErrorMessage()); |
| | | } catch (Exception e) { |
| | | retJSON.put("code", ApiStatus.SYS_ERR.getRetCode()); |
| | | StackTraceElement[] stackTraceElements = e.getStackTrace(); |
| | | |
| | | StringBuilder sb = new StringBuilder(); |
| | | sb.append(e.toString()); |
| | | for (StackTraceElement stackTraceElement : stackTraceElements) { |
| | | sb.append("\n"); |
| | | sb.append(stackTraceElement.toString()); |
| | | } |
| | | retJSON.put("message", ApiStatus.SYS_ERR.getRetMsg() + "--" + sb.toString()); |
| | | } |
| | | return retJSON.toJSONString(); |
| | | } |
| | | |
| | | // 报警情况接口(warning) 货柜预警接口 |
| | | @ResponseBody |
| | | @RequestMapping(value = "/alarm") |
| | | public String alarm(HttpServletRequest request) throws IOException { |
| | |
| | | return retJSON.toJSONString(); |
| | | } |
| | | |
| | | // 出入库记录信息接口 |
| | | @ResponseBody |
| | | @RequestMapping(value = "/cabinetData") |
| | | public String cabinetData(HttpServletRequest request) throws IOException { |
| | | BufferedReader br = request.getReader(); |
| | | String str, data = ""; |
| | | while((str = br.readLine()) != null){ |
| | | data += str; |
| | | } |
| | | JSONObject retJSON = new JSONObject(); |
| | | logger.info("cabinetData" + data); |
| | | String userId = request.getHeader("userId"); |
| | | |
| | | // Body参数 |
| | | JSONObject bodyJSONObject = new JSONObject(); |
| | | bodyJSONObject = JSONObject.parseObject(data); |
| | | |
| | | // 主控条码 |
| | | String controllerCode = bodyJSONObject.getString("controllerCode"); |
| | | |
| | | try { |
| | | // 数据 |
| | | String dataStr = bodyJSONObject.getString("data"); |
| | | JSONArray dataJSONArray = JSONArray.parseArray(dataStr); |
| | | logger.info("dataJSONArray: " + dataJSONArray); |
| | | |
| | | |
| | | if( dataJSONArray.size() !=0 ){ |
| | | interfaceService.cabinetData(dataJSONArray); |
| | | } |
| | | |
| | | retJSON.put("code", ApiStatus.OK.getRetCode()); |
| | | retJSON.put("message", ApiStatus.OK.getRetMsg()); |
| | | } catch (ApiException e) { |
| | | retJSON.put("code", e.getApiStatus().getRetCode()); |
| | | retJSON.put("message", e.getErrorMessage()); |
| | | } catch (Exception e) { |
| | | retJSON.put("code", ApiStatus.SYS_ERR.getRetCode()); |
| | | StackTraceElement[] stackTraceElements = e.getStackTrace(); |
| | | |
| | | StringBuilder sb = new StringBuilder(); |
| | | sb.append(e.toString()); |
| | | for (StackTraceElement stackTraceElement : stackTraceElements) { |
| | | sb.append("\n"); |
| | | sb.append(stackTraceElement.toString()); |
| | | } |
| | | retJSON.put("message", ApiStatus.SYS_ERR.getRetMsg() + "--" + sb.toString()); |
| | | } |
| | | return retJSON.toJSONString(); |
| | | } |
| | | |
| | | //http://[URL]/smartlab/api/service/containerInfo |
| | | @ResponseBody |
| | |
| | | @RequestMapping(value = "/reagentInfo") |
| | | public Object getReagentInfo(@RequestParam String startTime, @RequestParam String endTime, @RequestParam String containerCode, @RequestParam String status) { |
| | | logger.info("getReagentInfo start..."); |
| | | String containerid = null; |
| | | Long containerid = null; |
| | | |
| | | SysLaboratoryContainer laboratoryContainer = sysLaboratoryContainerDao |
| | | .getSysLaboratoryContainerByContainerCode(containerCode); |
| | |
| | | map.put("specification", opeReagentStatus.getReagent().getReagentFormat()); |
| | | map.put("itemNumber", opeReagentStatus.getArticleNumber()); |
| | | map.put("producer", opeReagentStatus.getReagent().getProductHome()); |
| | | map.put("density", opeReagentStatus.getReagent().getDensity()); |
| | | if (opeReagentStatus.getReagent().getMainMetering() == null){ |
| | | map.put("masterMetering",opeReagentStatus.getReagent().getReagentUnit()); |
| | | }else{ |
| | |
| | | logger.info("getUserInfo start..."); |
| | | |
| | | List<SysUser> userList = sysUserService.getSysUserInfoList(startTime, endTime); |
| | | List<SysLaboratoryContainer> allLaboratoryContainerList = sysLaboratoryContainerService.getSysLaboratoryContainerList(null,null,null,null,null,null,null); |
| | | List<SysLaboratoryContainer> allLaboratoryContainerList = sysLaboratoryContainerService.getSysLaboratoryContainerList(null,null,null,null,null,null); |
| | | List<SysWarehouseContainer> allWarehouseContainerList = sysWarehouseContainerService.getSysWarehouseContainerList(null,null,null,null,null); |
| | | |
| | | List<String> containerCodeList = new ArrayList<String>(); |
| | |
| | | (String[])wareContainerCodeList.toArray(new String[0]))); |
| | | |
| | | } |
| | | if(user.getSeeFlag().ordinal() == SeeFlag.MANAGE.ordinal()){ |
| | | if(user.getSeeFlag().ordinal() == SeeFlag.MANAGE.ordinal() |
| | | || user.getSeeFlag().ordinal() == SeeFlag.LEADING.ordinal()){ |
| | | map.put("containerCodeList", containerCodeList); |
| | | } |
| | | } |
| | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | /** |
| | | * 入实验室库操作 |
| | | * @param request |
| | | * @param reagentCode |
| | | * @return |
| | | */ |
| | | @RequestMapping(value = "/putInLaboratory", produces = {"application/json;charset=UTF-8"}, method = RequestMethod.POST) |
| | | @ResponseBody |
| | | public String putInLaboratory(HttpServletRequest request, String reagentCode, String barCode, String containerCode) { |
| | | public String putInLaboratory(HttpServletRequest request, String reagentCode, Long labId, Long labContainerId) { |
| | | try { |
| | | logger.info("PutInLaboratory start..."); |
| | | logger.info("Params : reagentCode[" + reagentCode + "], barCode[" + barCode + "], containerCode[" + containerCode + "]"); |
| | | |
| | | // 检查用户 |
| | | String idCard = this.getIdCardFromHeader(request); |
| | | if (StringUtils.isBlank(idCard)) { |
| | | throw new BusinessException(ExceptionEnumCode.PARAM_NULL, MessageUtil.getMessageByCode(ExceptionEnumCode.PARAM_NULL.getCode(), "用户卡号")); |
| | | Long userId = StringUtils.isNotBlank(request.getHeader("userId"))?Long.valueOf(request.getHeader("userId")):null; |
| | | if(userId==null){ |
| | | throw new ApiException(ApiStatus.SYS_ERR,"传参用户ID为空"); |
| | | } |
| | | SysUser sysUser = this.sysUserService.getSysUserByIdCard(idCard); |
| | | |
| | | if (sysUser == null) { |
| | | if(idCard.length()==20){//截取长度为8的卡号再次查询 |
| | | idCard=idCard.substring(10,18); |
| | | sysUser = this.sysUserService.getSysUserByIdCard(idCard); |
| | | if(sysUser==null){ |
| | | throw new BusinessException(ExceptionEnumCode.PARAM_NO_EXIST, MessageUtil.getMessageByCode(ExceptionEnumCode.PARAM_NO_EXIST.getCode(), "用户卡号", idCard)); |
| | | } |
| | | }else { |
| | | throw new BusinessException(ExceptionEnumCode.PARAM_NO_EXIST, MessageUtil.getMessageByCode(ExceptionEnumCode.PARAM_NO_EXIST.getCode(), "用户卡号", idCard)); |
| | | } |
| | | |
| | | } |
| | | // String idCard = this.getIdCardFromHeader(request); |
| | | // if (StringUtils.isBlank(idCard)) { |
| | | // throw new BusinessException(ExceptionEnumCode.PARAM_NULL, MessageUtil.getMessageByCode(ExceptionEnumCode.PARAM_NULL.getCode(), "用户卡号")); |
| | | // } |
| | | // SysUser sysUser = this.sysUserService.getSysUserByIdCard(idCard); |
| | | // |
| | | // if (sysUser == null) { |
| | | // if(idCard.length()==20){//截取长度为8的卡号再次查询 |
| | | // idCard=idCard.substring(10,18); |
| | | // sysUser = this.sysUserService.getSysUserByIdCard(idCard); |
| | | // if(sysUser==null){ |
| | | // throw new BusinessException(ExceptionEnumCode.PARAM_NO_EXIST, MessageUtil.getMessageByCode(ExceptionEnumCode.PARAM_NO_EXIST.getCode(), "用户卡号", idCard)); |
| | | // } |
| | | // }else { |
| | | // throw new BusinessException(ExceptionEnumCode.PARAM_NO_EXIST, MessageUtil.getMessageByCode(ExceptionEnumCode.PARAM_NO_EXIST.getCode(), "用户卡号", idCard)); |
| | | // } |
| | | // |
| | | // } |
| | | |
| | | // 检查试剂条码 |
| | | if (StringUtils.isBlank(reagentCode)) { |
| | |
| | | } |
| | | |
| | | // 检查地点条码 |
| | | if (StringUtils.isBlank(barCode)) { |
| | | throw new BusinessException(ExceptionEnumCode.PARAM_NULL, MessageUtil.getMessageByCode(ExceptionEnumCode.PARAM_NULL.getCode(), "地点条码")); |
| | | if (labId==null) { |
| | | throw new BusinessException(ExceptionEnumCode.PARAM_NULL, MessageUtil.getMessageByCode(ExceptionEnumCode.PARAM_NULL.getCode(), "地点id")); |
| | | } |
| | | |
| | | // 检查货柜条码 |
| | | if (StringUtils.isBlank(containerCode)) { |
| | | throw new BusinessException(ExceptionEnumCode.PARAM_NULL, MessageUtil.getMessageByCode(ExceptionEnumCode.PARAM_NULL.getCode(), "货柜条码")); |
| | | if (labContainerId==null) { |
| | | throw new BusinessException(ExceptionEnumCode.PARAM_NULL, MessageUtil.getMessageByCode(ExceptionEnumCode.PARAM_NULL.getCode(), "货柜id")); |
| | | } |
| | | |
| | | this.opeReagentStatusService.putReagentInLaboratory(reagentCode, barCode, containerCode, sysUser); |
| | | this.opeReagentStatusService.putReagentInLaboratory(reagentCode, labId, labContainerId, userId); |
| | | |
| | | return this.getOkResponseString(); |
| | | } catch (BusinessException e) { |
| | |
| | | } |
| | | } |
| | | |
| | | // |
| | | // |
| | | // @RequestMapping(value = "/setWarning", produces = {"application/json;charset=UTF-8"}, method = RequestMethod.POST) |
| | | // @ResponseBody |
| | | // public String setWarning(HttpServletRequest request) throws ParseException, IOException, ApiException { |
| | | // BufferedReader reader = new BufferedReader(new InputStreamReader(request.getInputStream())); |
| | | // String str = ""; |
| | | // String inputLine; |
| | | // try { |
| | | // while ((inputLine = reader.readLine()) != null) { |
| | | // str += inputLine; |
| | | // } |
| | | // reader.close(); |
| | | // } catch (IOException e) { |
| | | // System.out.println("IOException: " + e); |
| | | // } |
| | | // JSONObject jsonObject = JSON.parseObject(str); |
| | | // SysWarning sysWarning = new SysWarning(); |
| | | // if (!jsonObject.containsKey("controllerCode") |
| | | // || ! jsonObject.containsKey("data")) { |
| | | // throw new ApiException(ApiStatus.PARAM_NO_EXIST); |
| | | // } |
| | | // |
| | | // String controllerCode = jsonObject.getString("controllerCode"); |
| | | // |
| | | // SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | // String dataStr = jsonObject.getString("data"); |
| | | // |
| | | // |
| | | // JSONObject dataJson = JSON.parseObject(dataStr); |
| | | // |
| | | // if (!dataJson.containsKey("warningId") |
| | | // || !dataJson.containsKey("userId") |
| | | // || !dataJson.containsKey("warningTime") |
| | | // || !dataJson.containsKey("warningLevel") |
| | | // || !dataJson.containsKey("containerCode") |
| | | // || !dataJson.containsKey("warningPoint")) { |
| | | // throw new ApiException(ApiStatus.PARAM_NO_EXIST); |
| | | // } |
| | | // |
| | | // String containerCode = dataJson.getString("containerCode"); |
| | | // String warningId = dataJson.getString("warningId"); |
| | | // String userId = dataJson.getString("userId"); |
| | | // String warningTimeStr = dataJson.getString("warningTime"); |
| | | // Integer warningLevelInt = dataJson.getInteger("warningLevel"); |
| | | // Integer warningPoint = dataJson.getInteger("warningPoint"); |
| | | // |
| | | // sysWarning.setUserId(userId); |
| | | // sysWarning.setWarningTime(sdf.parse(warningTimeStr)); |
| | | // sysWarning.setWarningPoint(warningPoint); |
| | | // sysWarning.setWarningLevel(warningLevelInt); |
| | | // sysWarning.setWarningId(warningId); |
| | | // sysWarning.setId(IDUtils.uuid()); |
| | | // |
| | | // |
| | | // SysLaboratoryContainer laboratoryContainer = sysLaboratoryContainerDao.getSysLaboratoryContainerByContainerCode(containerCode); |
| | | // if (Objects.isNull(laboratoryContainer)) { |
| | | // SysWarehouseContainer warehouseContainer = sysWarehouseContainerDao.getSysWarehouseContainerByContainerCode(containerCode); |
| | | // if (Objects.isNull(warehouseContainer)) { |
| | | // logger.error("The containerCode:"+containerCode+" has not been exists!"); |
| | | // } else { |
| | | // sysWarning.setContainerId(warehouseContainer.getId()); |
| | | // } |
| | | // } else { |
| | | // sysWarning.setContainerId(laboratoryContainer.getId()); |
| | | // } |
| | | // JSONObject retJSON = new JSONObject(); |
| | | // try { |
| | | // sysWarningService.insert(sysWarning); |
| | | // retJSON.put("code", ApiStatus.OK.getRetCode()); |
| | | // retJSON.put("message", ApiStatus.OK.getRetMsg()); |
| | | // } catch (Exception e) { |
| | | // retJSON.put("code", ApiStatus.SYS_ERR.getRetCode()); |
| | | // StackTraceElement[] stackTraceElements = e.getStackTrace(); |
| | | // |
| | | // StringBuilder sb = new StringBuilder(); |
| | | // sb.append(e.toString()); |
| | | // for (StackTraceElement stackTraceElement : stackTraceElements) { |
| | | // sb.append("\n"); |
| | | // sb.append(stackTraceElement.toString()); |
| | | // } |
| | | // retJSON.put("message", ApiStatus.SYS_ERR.getRetMsg() + "--" + sb.toString()); |
| | | // } |
| | | // return retJSON.toJSONString(); |
| | | // } |
| | | |
| | | |
| | | // 智能柜温度,湿度,气体浓度数据接口 |
| | |
| | | } |
| | | reader.close(); |
| | | } catch (IOException e) { |
| | | System.out.println("IOException: " + e); |
| | | logger.info(e.getMessage()); |
| | | } |
| | | JSONObject jsonObject = JSON.parseObject(str); |
| | | |
| | |
| | | e.printStackTrace(); |
| | | } |
| | | int type = 0; |
| | | String containerId = null; |
| | | Long containerId = null; |
| | | logger.info("The containerCode:" + containerCode + " finding!"); |
| | | // 查找货柜条码对应货柜信息 |
| | | SysLaboratoryContainer laboratoryContainer = sysLaboratoryContainerDao |
| | |
| | | } |
| | | |
| | | SysContainerSensors sysContainerSensors = new SysContainerSensors(); |
| | | sysContainerSensors.setContainerId(containerCode); |
| | | sysContainerSensors.setContainerId(Long.valueOf(containerCode)); |
| | | TempSensors tempSensors = new TempSensors(); |
| | | tempSensors.setContainerId(containerCode); |
| | | tempSensors.setContainerId(Long.valueOf(containerCode)); |
| | | /* tempSensors.setFlag(flag); */ |
| | | tempSensors.setTemp(temp); |
| | | tempSensors.setHumidity(humidity); |
| | | tempSensors.setVoc1(voc1); |
| | | tempSensors.setFlag(flag); |
| | | tempSensors.setUpdateTime(sdf.parse(updateTime)); |
| | | tempSensors.setId(IDUtils.uuid()); |
| | | //tempSensors.setId(IDUtils.uuid()); |
| | | tempSensors.setType(type); |
| | | tempSensors.setContainerId(containerId); |
| | | |
| | |
| | | } |
| | | @ResponseBody |
| | | @RequestMapping(value = "/downloadFile") |
| | | public HttpServletResponse downloadFile(HttpServletRequest request, String id, HttpServletResponse response){ |
| | | public HttpServletResponse downloadFile(HttpServletRequest request, Long id, HttpServletResponse response){ |
| | | SysFile sysFile=this.sysFileService.getSysFileById(id); |
| | | try { |
| | | // path是指欲下载的文件的路径。 |
| | |
| | | token.setRememberMe(true); |
| | | BaseController baseController=new BaseController(); |
| | | Subject currentUser = baseController.getSubject(); |
| | | System.out.println(1); |
| | | try { |
| | | System.out.println(2); |
| | | currentUser.login(token); |
| | | } catch (UnknownAccountException e) { |
| | | System.out.println("用户名不存在"); |
| | | FacesUtils.warn("用户名不存在"); |
| | | return null; |
| | | } catch (Exception e) { |
| | | System.out.println("登陆失败"); |
| | | logger.error("登陆失败", e); |
| | | } |
| | | |
| | | if (currentUser.isAuthenticated()) {//登录成功进入主页 |
| | | System.out.println(3); |
| | | SysUser user = this.sysUserService.getSysUserByAccount("admin"); |
| | | currentUser.getSession(true).setAttribute(Constants.SESSION_USER, user); |
| | | currentUser.getSession(true).getId(); |
| | | MenuController menuController=new MenuController(); |
| | | menuController.initPage(); |
| | | System.out.println(4); |
| | | //return "redirect:http://192.168.1.195:8888/smartlab_war_exploded/index.xhtml"; |
| | | return new ModelAndView("redirect:/index.xhtml"); |
| | | } else { |
| | | System.out.println("用户名与密码不匹配"); |
| | | FacesUtils.warn("用户名与密码不匹配"); |
| | | } |
| | | return null; |
| | |
| | | map.put("unit", user.getCompany()); |
| | | map.put("Arp", user.getArp()); |
| | | map.put("departmentName", user.getDepartment()); |
| | | map.put("project", user.getProject()); |
| | | map.put("projectId", user.getProjectId()); |
| | | |
| | | } |
| | | logger.info("getUserInfo end..."); |
| | |
| | | @ResponseBody |
| | | @RequestMapping(value = "/dangerousEncodeInfo") |
| | | public Object getDangerousEncodeInfo(@RequestParam String reagentName, @RequestParam String cas) { |
| | | List<DangerousEncodeVo> datalist = new ArrayList<>(); |
| | | List<DangerousEncode> datalist = new ArrayList<>(); |
| | | if (StringUtils.isNotBlank(reagentName) || StringUtils.isNotBlank(cas)){ |
| | | datalist = dangerousEncodeService.selectByReagentName(reagentName,cas); |
| | | for (DangerousEncodeVo dangerousEncodeVo : datalist){ |
| | | if (StringUtils.isNotBlank(dangerousEncodeVo.getContainerNumber())){ |
| | | if (dangerousEncodeVo.getContainerNumber().startsWith("0")){ |
| | | dangerousEncodeVo.setContainerName("普通型"); |
| | | }else if (dangerousEncodeVo.getContainerNumber().startsWith("1")){ |
| | | dangerousEncodeVo.setContainerName("阻燃型"); |
| | | }else if (dangerousEncodeVo.getContainerNumber().startsWith("2")){ |
| | | dangerousEncodeVo.setContainerName("抗腐蚀型"); |
| | | }else if (dangerousEncodeVo.getContainerNumber().startsWith("3")){ |
| | | dangerousEncodeVo.setContainerName("防爆型"); |
| | | }else if (dangerousEncodeVo.getContainerNumber().startsWith("4")){ |
| | | dangerousEncodeVo.setContainerName("有毒称重型"); |
| | | for (DangerousEncode dangerousEncode : datalist){ |
| | | if (StringUtils.isNotBlank(dangerousEncode.getContainerNumber())){ |
| | | if (dangerousEncode.getContainerNumber().startsWith("0")){ |
| | | dangerousEncode.setContainerName("普通型"); |
| | | }else if (dangerousEncode.getContainerNumber().startsWith("1")){ |
| | | dangerousEncode.setContainerName("阻燃型"); |
| | | }else if (dangerousEncode.getContainerNumber().startsWith("2")){ |
| | | dangerousEncode.setContainerName("抗腐蚀型"); |
| | | }else if (dangerousEncode.getContainerNumber().startsWith("3")){ |
| | | dangerousEncode.setContainerName("防爆型"); |
| | | }else if (dangerousEncode.getContainerNumber().startsWith("4")){ |
| | | dangerousEncode.setContainerName("有毒称重型"); |
| | | } |
| | | } |
| | | } |
| | |
| | | return ResponseModel.getErrInstance("该试剂危化品编码已存在"); |
| | | } |
| | | } |
| | | |
| | | //3.如果是入智能柜,则该智能柜下需要存在对应的实验室和实验室柜子 |
| | | SysWarehouseContainer sysWarehouseContainer = sysWarehouseContainerService.getSysWarehouseContainer(inWarehouseInfo.getContainerId()); |
| | | if(this.baseMetaService.getBaseMetaKey(sysWarehouseContainer.getType()).equals("200")) { |
| | | reagentReceivingDtos.setReagentCode(inWarehouseInfo.getReagentCode()); |
| | | reagentReceivingDtos.setApplyUserId(inWarehouseInfo.getUser()); |
| | | SysLaboratoryContainer sysLaboratoryContainer = sysLaboratoryContainerService.getSysLaboratoryContainerByContainerCode(sysWarehouseContainer.getContainerCode()); |
| | | if (null != sysLaboratoryContainer){ |
| | | reagentReceivingDtos.setLabId(sysLaboratoryContainer.getLaboratoryId()); |
| | | reagentReceivingDtos.setLabContainerId(sysLaboratoryContainer.getId()); |
| | | }else { |
| | | return ResponseModel.getErrInstance("该仓库货柜为智能柜,但是未创建相同货柜条码的实验室临时存储柜"); |
| | | } |
| | | } |
| | | // |
| | | // //3.如果是入智能柜,则该智能柜下需要存在对应的实验室和实验室柜子 |
| | | // SysWarehouseContainer sysWarehouseContainer = sysWarehouseContainerService.getSysWarehouseContainer(inWarehouseInfo.getContainerId()); |
| | | // if(this.baseMetaService.getBaseMetaKey(sysWarehouseContainer.getType()).equals("200")) { |
| | | // reagentReceivingDtos.setReagentCode(inWarehouseInfo.getReagentCode()); |
| | | // reagentReceivingDtos.setApplyUserId(inWarehouseInfo.getUser()); |
| | | // SysLaboratoryContainer sysLaboratoryContainer = sysLaboratoryContainerService.getSysLaboratoryContainerByContainerCode(sysWarehouseContainer.getContainerCode()); |
| | | // if (null != sysLaboratoryContainer){ |
| | | // reagentReceivingDtos.setLabId(sysLaboratoryContainer.getLaboratoryId()); |
| | | // reagentReceivingDtos.setLabContainerId(sysLaboratoryContainer.getId()); |
| | | // }else { |
| | | // return ResponseModel.getErrInstance("该仓库货柜为智能柜,但是未创建相同货柜条码的实验室临时存储柜"); |
| | | // } |
| | | // } |
| | | |
| | | //4.入库 |
| | | sysWarehouseService.putInWarehouse(inWarehouseInfo); |
| | | |
| | | //5.如果是入智能柜,则需再领用到智能柜里 |
| | | if (StringUtils.isNotBlank(reagentReceivingDtos.getLabContainerId())){ |
| | | sysWarehouseService.reagentReceiving(reagentReceivingDtos); |
| | | } |
| | | // if (reagentReceivingDtos.getLabContainerId()!=null){ |
| | | // sysWarehouseService.reagentReceiving(reagentReceivingDtos); |
| | | // } |
| | | |
| | | return ResponseModel.getOkInstence("入库成功"); |
| | | } else { |
| | |
| | | @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 { |
| | | if (reagentReceiving.getReagentCode() == null || reagentReceiving.getReagentCode().size() == 0) { |
| | | return ResponseModel.getErrInstance("无效试剂条码"); |
| | | } |
| | | if(reagentReceiving.getLabId()==null||reagentReceiving.getLabContainerId()==null||reagentReceiving.getApplyUserId()==null){ |
| | | return ResponseModel.getErrInstance("传参错误"); |
| | | } |
| | | //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.getKey()){ |
| | | return ResponseModel.getErrInstance("仓库无此试剂"); |
| | | } |
| | | } |
| | | |
| | | //2.领用 |
| | | sysWarehouseService.reagentReceiving(reagentReceiving); |
| | | return ResponseModel.getOkInstence("领用成功"); |
| | | |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | logger.info(e); |
| | |
| | | if (reagentReceiving.getReagentCode() == null || reagentReceiving.getReagentCode().size() == 0) { |
| | | return ResponseModel.getErrInstance("请选择申领试剂"); |
| | | } |
| | | if (StringUtils.isBlank(reagentReceiving.getApplyUserId())|| StringUtils.isBlank(reagentReceiving.getLabContainerId()) |
| | | || StringUtils.isBlank(reagentReceiving.getLabId())){ |
| | | if (reagentReceiving.getApplyUserId()!=null|| reagentReceiving.getLabContainerId()!=null |
| | | || reagentReceiving.getLabId()!=null){ |
| | | FacesUtils.warn("请选择申领人、实验室、货柜"); |
| | | } |
| | | for (String reagentCode : reagentReceiving.getReagentCode()) { |
| | |
| | | return ResponseModel.getErrInstance(reagentCode+",该试剂在库存中不存在"); |
| | | } |
| | | } |
| | | String number = new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date()); |
| | | for (String reagentCode : reagentReceiving.getReagentCode()) { |
| | | OpeReagentStatus opeReagentStatus = opeReagentStatusService |
| | | .getOpeReagentStatusByReagentCode(reagentCode); |
| | |
| | | lr.setValidFlag(ValidFlag.VALID); |
| | | opeLaboratoryReserveService.insert(lr); |
| | | |
| | | opeReagentStatus.setStatus(ArrivalStatus.NOREGISTER); |
| | | opeReagentStatus.setStatus(ArrivalStatus.NOREGISTER.getKey()); |
| | | opeReagentStatus.setUserId(reagentReceiving.getApplyUserId()); |
| | | opeReagentStatus.setHouseId(reagentReceiving.getLabId()); |
| | | opeReagentStatus.setContainerId(reagentReceiving.getLabContainerId()); |
| | |
| | | opeUseFlow.setContainerId(opeReagentStatus.getContainerId()); |
| | | opeUseFlow.setUserId(opeReagentStatus.getUserId()); |
| | | opeUseFlow.setPlace(opeReagentStatus.getPlace()); |
| | | opeUseFlow.setStoreType(StoreType.DIRECTSTORE); |
| | | opeUseFlow.setStoreType(StoreType.DIRECTSTORE.getKey()); |
| | | opeUseFlow.setRemainder(opeUseFlowExist.getRemainder()); |
| | | BaseMeta baseMeta = baseMetaService.getBaseMeta("operate_status",String.valueOf(OperateStatus.TRANSFER.getKey()),"转移"); |
| | | opeUseFlow.setOperateState(baseMeta.getId()); |
| | | opeUseFlow.setOperateState(OperateStatus.TRANSFER.getKey()); |
| | | opeUseFlow.setReceiptNumber(number); |
| | | opeUseFlowService.insertOpeUseFlow(opeUseFlow); |
| | | } |
| | | return ResponseModel.getOkInstence("转移成功"); |
| | |
| | | return ResponseModel.getErrInstance("账户名不存在"); |
| | | }else{ |
| | | if (sysUser.getPassword().equals(MD5Utils.encode(user.getPassword()))){ |
| | | if (sysUser.getAdminFlag() != 0){ |
| | | user = sysUser; |
| | | }else{ |
| | | return ResponseModel.getErrInstance("用户不属于危废处理人员"); |
| | | } |
| | | // if (sysUser.getAdminFlag() != 0){ |
| | | // user = sysUser; |
| | | // }else{ |
| | | // return ResponseModel.getErrInstance("用户不属于危废处理人员"); |
| | | // } |
| | | user = sysUser; |
| | | return ResponseModel.getOkInstence(user); |
| | | }else{ |
| | | return ResponseModel.getErrInstance("密码错误"); |
| | |
| | | */ |
| | | @ResponseBody |
| | | @RequestMapping("hazardousWaste/getLabAndUser") |
| | | public Object getLabAndUser(@RequestParam(required=true) String project){ |
| | | public Object getLabAndUser(@RequestParam(required=true) Long projectId){ |
| | | try { |
| | | if (StringUtils.isBlank(project)){ |
| | | return ResponseModel.getErrInstance("课题组不能为空"); |
| | | if (projectId==null){ |
| | | return ResponseModel.getErrInstance("课题组id不能为空"); |
| | | } |
| | | LaboratoryVo laboratoryVo = new LaboratoryVo(); |
| | | List<LaboratoryVo.Laboratory> laboratoryList = sysLaboratoryService.getLaboratoryByProject(project); |
| | | List<LaboratoryVo.LaboratoryUser> laboratoryUserList = sysUserService.getUserByProject(project); |
| | | List<LaboratoryVo.Laboratory> laboratoryList = sysLaboratoryService.getLaboratoryByProject(projectId); |
| | | List<LaboratoryVo.LaboratoryUser> laboratoryUserList = sysUserService.getUserByProject(projectId); |
| | | laboratoryVo.setLaboratoryList(laboratoryList); |
| | | laboratoryVo.setLaboratoryUsers(laboratoryUserList); |
| | | return ResponseModel.getOkInstence(laboratoryVo); |
| | |
| | | @RequestMapping("hazardousWaste/putWasteInfo") |
| | | public Object putWasteInfo(@RequestBody HazardousWaste hazardousWaste){ |
| | | try { |
| | | if (StringUtils.isBlank(hazardousWaste.getDepartment()) || StringUtils.isBlank(hazardousWaste.getApplyPerson()) |
| | | || StringUtils.isBlank(hazardousWaste.getProject()) || StringUtils.isBlank(hazardousWaste.getCreator())){ |
| | | if (StringUtils.isBlank(hazardousWaste.getDepartment()) || hazardousWaste.getApplyPerson()!=null |
| | | || hazardousWaste.getProjectId()==null || StringUtils.isBlank(hazardousWaste.getCreator())){ |
| | | return ResponseModel.getErrInstance("部门、课题组、确认者、创建者、不能为空"); |
| | | } |
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS"); |
| | |
| | | } |
| | | return retJSON.toJSONString(); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | @ResponseBody |
| | | @RequestMapping("/getAllWarehouse") |
| | | public Object getAllWarehouse() { |
| | | try { |
| | | List<Map> res = sysWarehouseService.getAllWarehouse(); |
| | | return ResponseModel.getOkInstence(res); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | return ResponseModel.getErrInstance("系统内部错误"); |
| | | } |
| | | |
| | | } |
| | | |
| | | @ResponseBody |
| | | @RequestMapping(value = "addWarehouseStatus",method = RequestMethod.POST) |
| | | public Object addWarehouseStatus(@RequestBody SysWarehouseStatus one){ |
| | | try { |
| | | one.setCreateTime(new Date()); |
| | | sysWarehouseStatusService.addOne(one); |
| | | return ResponseModel.getOkInstence("新增成功"); |
| | | } catch (BusinessException e) { |
| | | e.printStackTrace(); |
| | | return ResponseModel.getErrInstance(e.getMessage()); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | return ResponseModel.getErrInstance("系统内部错误"); |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 试剂流向追踪 |
| | | * @return |
| | | */ |
| | | @ResponseBody |
| | | @RequestMapping(value = "/reagentFlows",method = RequestMethod.GET) |
| | | public Object reagentFlows(@RequestParam(required=false,defaultValue = "1") Integer pageNum,@RequestParam(required=false,defaultValue = "10") Integer pageSize,OpeUseFlowQueryDto opeUseFlowQueryDto){ |
| | | try { |
| | | return ResponseModel.getOkInstence(opeUseFlowService.getOpeUseFlowSimpleInfoList(pageNum, pageSize, opeUseFlowQueryDto)); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | return ResponseModel.getErrInstance("系统内部错误"); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 试剂管理分页查询 |
| | | * @return |
| | | */ |
| | | @ResponseBody |
| | | @RequestMapping(value = "/reagentList",method = RequestMethod.GET) |
| | | public Object reagentList(@RequestParam(required=false,defaultValue = "1") Integer pageNum,@RequestParam(required=false,defaultValue = "10") Integer pageSize,String name,String cas){ |
| | | try { |
| | | return ResponseModel.getOkInstence(sysReagentService.reagentList(pageNum,pageSize,name,cas)); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | return ResponseModel.getErrInstance("系统内部错误"); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 实验室管理分页查询 |
| | | * @return |
| | | */ |
| | | @ResponseBody |
| | | @RequestMapping(value = "/labList",method = RequestMethod.GET) |
| | | public Object labList(@RequestParam(required=false,defaultValue = "1") Integer pageNum,@RequestParam(required=false,defaultValue = "10") Integer pageSize,String name){ |
| | | try { |
| | | return ResponseModel.getOkInstence(sysLaboratoryService.getSysLaboratoryList(pageNum,pageSize,name)); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | return ResponseModel.getErrInstance("系统内部错误"); |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 实验室临时库存管理分页查询 |
| | | * @return |
| | | */ |
| | | @ResponseBody |
| | | @RequestMapping(value = "/labContainerList",method = RequestMethod.GET) |
| | | public Object labContainerList(@RequestParam(required=false,defaultValue = "1") Integer pageNum,@RequestParam(required=false,defaultValue = "10") Integer pageSize,String name,String controllerName){ |
| | | try { |
| | | return ResponseModel.getOkInstence(sysLaboratoryContainerService.getSysLaboratoryContainerList(pageNum,pageSize,name,controllerName)); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | return ResponseModel.getErrInstance("系统内部错误"); |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 人员管理分页查询 |
| | | * @return |
| | | */ |
| | | @ResponseBody |
| | | @RequestMapping(value = "/userList",method = RequestMethod.GET) |
| | | public Object userList(@RequestParam(required=false,defaultValue = "1") Integer pageNum,@RequestParam(required=false,defaultValue = "10") Integer pageSize,String name){ |
| | | try { |
| | | return ResponseModel.getOkInstence(sysUserService.getSysUserList(pageNum,pageSize,name)); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | return ResponseModel.getErrInstance("系统内部错误"); |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 根据用户id查询实验室列表和实验室临时存储库列表 |
| | | * @return |
| | | */ |
| | | @ResponseBody |
| | | @RequestMapping(value = "/labAndContainerList",method = RequestMethod.GET) |
| | | public Object getLabAndContainerList(HttpServletRequest request){ |
| | | try { |
| | | Long userId = StringUtils.isNotBlank(request.getHeader("userId"))?Long.valueOf(request.getHeader("userId")):null; |
| | | if(userId==null){ |
| | | throw new ApiException(ApiStatus.SYS_ERR,"传参用户ID为空"); |
| | | } |
| | | return ResponseModel.getOkInstence(interfaceService.getLabAndContainerByUserId(userId)); |
| | | }catch (ApiException e) { |
| | | return ResponseModel.getErrInstance(e.getErrorMessage()); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | return ResponseModel.getErrInstance("系统内部错误"); |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 根据试剂编码查询流向 |
| | | * @return |
| | | */ |
| | | @ResponseBody |
| | | @RequestMapping(value = "/reagentUseFlowList",method = RequestMethod.GET) |
| | | public Object getReagentUseFlowList(@RequestParam(required=true) String reagentCode){ |
| | | try { |
| | | return ResponseModel.getOkInstence(interfaceService.getReagentUseFlowList(reagentCode)); |
| | | }catch (ApiException e) { |
| | | return ResponseModel.getErrInstance(e.getErrorMessage()); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | return ResponseModel.getErrInstance("系统内部错误"); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 根据用户id查询所属实验室信息 |
| | | * @return |
| | | */ |
| | | @ResponseBody |
| | | @RequestMapping(value = "/userLabList",method = RequestMethod.GET) |
| | | public Object getUserLabList(HttpServletRequest request){ |
| | | try { |
| | | Long userId = StringUtils.isNotBlank(request.getHeader("userId"))?Long.valueOf(request.getHeader("userId")):null; |
| | | if(userId==null){ |
| | | throw new ApiException(ApiStatus.SYS_ERR,"传参用户ID为空"); |
| | | } |
| | | return ResponseModel.getOkInstence(interfaceService.getLaboratoryByUserId(userId)); |
| | | }catch (ApiException e) { |
| | | return ResponseModel.getErrInstance(e.getErrorMessage()); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | return ResponseModel.getErrInstance("系统内部错误"); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 根据用户id查询试剂流向信息 |
| | | * @return |
| | | */ |
| | | @ResponseBody |
| | | @RequestMapping(value = "/personUserFlowList",method = RequestMethod.GET) |
| | | public Object getPersonUserFlowList(HttpServletRequest request,@RequestParam(required=false,defaultValue = "1") Integer pageNum,@RequestParam(required=false,defaultValue = "10") Integer pageSize,Integer operatestate,String startDate,String endDate){ |
| | | try { |
| | | Long userId = StringUtils.isNotBlank(request.getHeader("userId"))?Long.valueOf(request.getHeader("userId")):null; |
| | | if(userId==null){ |
| | | throw new ApiException(ApiStatus.SYS_ERR,"传参用户ID为空"); |
| | | } |
| | | return ResponseModel.getOkInstence(interfaceService.getOpeUseFlowByUserId(pageNum,pageSize,userId,operatestate,startDate,endDate)); |
| | | }catch (ApiException e) { |
| | | return ResponseModel.getErrInstance(e.getErrorMessage()); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | return ResponseModel.getErrInstance("系统内部错误"); |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | } |
| | | |