From c87738a78f57e6f68a0111d68ef3748b29dc1eda Mon Sep 17 00:00:00 2001 From: 李宇 <986321569@qq.com> Date: 星期三, 23 六月 2021 12:21:59 +0800 Subject: [PATCH] 修改试剂排序 --- src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java | 160 ++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 133 insertions(+), 27 deletions(-) diff --git a/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java b/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java index 4b4decd..aceb47d 100644 --- a/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java +++ b/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java @@ -173,6 +173,8 @@ @Value("${institute.name}") String instituteName; + private boolean isExpired; + private Hashtable printTable; public Hashtable getPrintTable() { @@ -424,7 +426,8 @@ System.out.println(getUser().getSeeFlag().getKey()); //SysUser u=sysUserService.getSysUser(getUserId()); //System.out.println(u); - if (getUser().getSeeFlag().getKey() != SeeFlag.MANAGE.getKey()) { + if (getUser().getSeeFlag().getKey() != SeeFlag.MANAGE.getKey() + && getUser().getSeeFlag().getKey() != SeeFlag.LEADING.getKey()) { editFlag=0; }else{ editFlag=1; @@ -531,9 +534,22 @@ selectedTmpOrderList = null; } + public void hideOrderTmp() { + //清空 + selectedTmpOrderList = null; + //隐藏 + RequestContext.getCurrentInstance().execute("document.getElementById('showTabOrder').style.display='none'"); + } + public void clearInputStorageTmp(){ selectedInputStorageTmpOrderList = null; } + + public void hideInputStorageTmp(){ + selectedInputStorageTmpOrderList = null; + + RequestContext.getCurrentInstance().execute("document.getElementById('putInStorage').style.display='none'"); + } public void cancel(){ if (trulySelectedList == null || trulySelectedList.size()<=0){ @@ -563,6 +579,10 @@ } + public void hide(){ + selectedTmpList = null; + RequestContext.getCurrentInstance().execute("document.getElementById('showTab').style.display='none'"); + } public void cancelOrderTmp(){ if (trulySelectedOrderList == null || trulySelectedOrderList.size()<=0){ FacesUtils.info("至少选择一个"); @@ -782,7 +802,7 @@ //变换条码 btCodeChange(); } - + /** * 取消一个仓库领取 */ @@ -1057,6 +1077,7 @@ this.selectedInputStorageTmpOrderList = null; this.endReagentCodeForPerson = null; this.startReagentCodeForPerson = null; + this.laboratoryId = null; this.useNum = null; this.menuController.backToPage(); } @@ -1193,16 +1214,20 @@ printTable = new Hashtable(); int sum = 0; List<ApplyListDto> applyList = new ArrayList<>(); - Map applyPersonInfo = sysUserService.getUser(userId); + SysUser applyPersonInfo = sysUserService.getUser(userId); printTable.put("head", instituteName); printTable.put("title", "领用单"); - printTable.put("applyPerson", applyPersonInfo.get("name")); - printTable.put("department", applyPersonInfo.get("meta_value")); + printTable.put("applyPerson", applyPersonInfo.getName()); + printTable.put("department", applyPersonInfo.getDepartment()); printTable.put("date", Utils.now("yyyy-MM-dd")); - printTable.put("phone", applyPersonInfo.get("phone")); String receiptNum = new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date()); printTable.put("receiptNumber", receiptNum); - printTable.put("project", applyPersonInfo.get("project")); + if (StringUtils.isNotBlank(applyPersonInfo.getPhone())){ + printTable.put("phone", applyPersonInfo.getPhone()); + } + if (StringUtils.isNotBlank(applyPersonInfo.getProject())){ + printTable.put("project", applyPersonInfo.getProject()); + } SysLaboratory lab = sysLaboratoryService.getSysLaboratory(laboratoryId); printTable.put("lab", lab.getName()); this.receiptNumber = receiptNum; @@ -1470,14 +1495,18 @@ printTable = null; printTable = new Hashtable(); List<ApplyListDto> applyList = new ArrayList<>(); - Map applyPersonInfo = sysUserService.getUser(userId); + SysUser applyPersonInfo = sysUserService.getUser(userId); printTable.put("head", instituteName); printTable.put("title", "领用单"); - printTable.put("applyPerson", applyPersonInfo.get("name")); - printTable.put("department", applyPersonInfo.get("meta_value")); + printTable.put("applyPerson", applyPersonInfo.getName()); + printTable.put("department", applyPersonInfo.getDepartment()); printTable.put("date", Utils.now("yyyy-MM-dd")); - printTable.put("phone", applyPersonInfo.get("phone")); - printTable.put("project", applyPersonInfo.get("project")); + if (StringUtils.isNotBlank(applyPersonInfo.getPhone())){ + printTable.put("phone", applyPersonInfo.getPhone()); + } + if (StringUtils.isNotBlank(applyPersonInfo.getProject())){ + printTable.put("project", applyPersonInfo.getProject()); + } SysLaboratory lab = sysLaboratoryService.getSysLaboratory(laboratoryId); String receiptNum = new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date()); printTable.put("receiptNumber", receiptNum); @@ -1492,11 +1521,19 @@ if(selectWarehouseReserve.getFlag()==1){ list.add(selectWarehouseReserve); }else{ + if (selectWarehouseReserve.getWarehouseId() == null) { + FacesUtils.warn("仓库不存在。"); + return; + } list2.add(selectWarehouseReserve); } } if(list.size()>0&&list!=null){ for (OpeWarehouseReserve selectWarehouseReserve : list) { + Map reagentDetail = sysReagentService.getReagentDetail(selectWarehouseReserve.getReagentId()); + if (reagentDetail == null) { + throw new Exception("试剂有误,请联系管理员"); + } List<String> reagentCodes = selectWarehouseReserve.getReagentCodes(); if (reagentCodes != null && reagentCodes.size() > 0) for (String opeReagentStatusId : reagentCodes) { @@ -1523,7 +1560,6 @@ //} } ApplyListDto lis = new ApplyListDto(); - Map reagentDetail = sysReagentService.getReagentDetail(selectWarehouseReserve.getReagentId()); lis.setNum(String.valueOf(selectWarehouseReserve.getSelectNum())); //数量 lis.setMainMetering(String.format("%s%s", reagentDetail.get("main_metering"), reagentDetail.get("unit"))); lis.setControlProducts((String) reagentDetail.get("controlProducts")); @@ -1546,6 +1582,10 @@ List<OpeApply> opeList=new ArrayList<>(); //this.opeApplyService.getOpeApplyList(null,null,null,null,null) for(int i=0;i<list2.size();i++){ + Map reagentDetail = sysReagentService.getReagentDetail(list2.get(i).getReagentId()); + if (reagentDetail == null) { + throw new Exception("试剂有误,请联系管理员"); + } OpeApply opeApply=new OpeApply(); opeApply.setArticleNumber(list2.get(i).getArticleNumber()); opeApply.setHouseId(laboratoryId); @@ -1565,7 +1605,6 @@ this.opeLaboratoryReserveService.insert(lr); //opeList.add(this.opeApplyService.getOpeApply(list2.get(i).getId())); ApplyListDto lis = new ApplyListDto(); - Map reagentDetail = sysReagentService.getReagentDetail(list2.get(i).getReagentId()); lis.setNum(String.valueOf(list2.get(i).getSelectNum())); //数量 lis.setMainMetering(String.format("%s%s", reagentDetail.get("main_metering"), reagentDetail.get("unit"))); @@ -1637,6 +1676,17 @@ */ public void onSaveInputWarehouseClick(){ try{ + //0.0输入校验 + for (OpeApplyReserve opeApplyReserve : opeApplyList) { + if (StringUtils.isBlank(opeApplyReserve.getArticleNumber())) { + throw new BusinessException(ExceptionEnumCode.PARAM_EXIST, opeApplyReserve.getReagent().getName() + ":批号不能为空"); + } + SysReagent sysReagent = sysReagentService.getSysReagent(opeApplyReserve.getReagent().getId()); + if (sysReagent == null){ + throw new BusinessException(ExceptionEnumCode.PARAM_EXIST, opeApplyReserve.getReagent().getName() + ":被删除"); + } + } + //用来检验提交表单得试剂条码是否重复 Map<String,Boolean> checkTable= new HashMap<>(); if (opeApplyList != null && opeApplyList.size() > 0) { @@ -1739,11 +1789,11 @@ } try { - int count = opeApplyService.getOpeApplyReserveTotalCountByNameFor(id, reagentId, userName, productSn, applyCode, status, isAllApply); + int count = opeApplyService.getOpeApplyReserveTotalCountByNameFor(id, reagentId, userName, productSn, applyCode, status, isAllApply,isExpired); this.setRowCount(count); if (count > 0) { list = opeApplyService.getOpeApplyReserveListByNameFor(id, reagentId, userName, first, - pageSize, productSn, applyCode, status, isAllApply); + pageSize, productSn, applyCode, status, isAllApply,isExpired); } } catch (Exception e) { logger.error(e); @@ -1848,7 +1898,7 @@ realDataList=selectedListForPerson; }else { realDataList = opeApplyService.getOpeApplyReserveListByNameFor(id,reagentId, userName, null, - null,productSn,applyCode,status,isAllApply); + null,productSn,applyCode,status,isAllApply,isExpired); } List<String> headerList = new ArrayList<>(); headerList.add("申购编号"); @@ -2254,6 +2304,7 @@ this.reagentDStore.setReagent((SysReagent)event.getObject()); this.reagentDStoreEditFlag = Constants.ACTION_ADD; + onWarehouseSelectChange(null); RequestContext.getCurrentInstance().execute("PF('reagentDStoreDialog').show()"); } @@ -2263,6 +2314,11 @@ this.changeWarehouseContainerList(warehouseId); this.changeWarehouseContainerPlaceList(null); } + + public void onWarehouseContainerSelectChange(String warehouseContainerId) { + this.warehouseContainerPlaceList = null; + this.changeWarehouseContainerPlaceList(warehouseContainerId); + } private void changeWarehouseContainerList(String warehouseId) { if (StringUtils.isBlank(warehouseId)) { @@ -2701,17 +2757,20 @@ public void resetLaboratory(){ laboratory = null; + laboratoryId = null; laboratoryContainers = null; //getLaboratory(); //getLaboratoryContainers(); } +// public void setContainerId(){ +// } public void resetLaboratoryContainers() { laboratoryContainers = null; //getLaboratoryContainers(); } public List<SysLaboratory> getLaboratory() { - if(userId != null && userId.trim().length() > 0) + if(userId != null && userId.trim().length() > 0) { //Todo 修改申领人的实验室显示信息 @@ -2719,15 +2778,15 @@ if(this.laboratory != null && this.laboratory.size() > 0) { //flag =true; - //if(laboratoryId != null && laboratoryId.trim().length() > 0) - //{ - // this.oriLaboratoryId = this.laboratoryId; - //}else - //{ - // this.oriLaboratoryId = this.laboratory.get(0).getId(); - //} + if(laboratoryId != null && laboratoryId.trim().length() > 0) + { + this.oriLaboratoryId = this.laboratoryId; + }else + { + this.laboratoryId = this.laboratory.get(0).getId(); + } - this.laboratoryId = this.laboratory.get(0).getId(); +// this.laboratoryId = this.laboratory.get(0).getId(); this.laboratoryContainers = this.sysLaboratoryContainerService.getSysLaboratoryContainerList(laboratoryId); }else { this.oriLaboratoryId = null; @@ -2747,7 +2806,7 @@ } public List<SysLaboratoryContainer> getLaboratoryContainers() { - if(laboratoryId != null && laboratoryId.trim().length() > 0) + if(laboratoryId != null && laboratoryId.trim().length() > 0) { this.laboratoryContainers = this.sysLaboratoryContainerService.getSysLaboratoryContainerList(laboratoryId); } @@ -3049,4 +3108,51 @@ public void setIsAllApply(Integer isAllApply) { this.isAllApply = isAllApply; } + + public boolean getIsExpired() { + return isExpired; + } + + public void setIsExpired(boolean isExpired) { + this.isExpired = isExpired; + } + + //过期处理 + public void expireOrder() { + //1.判断当前订单是否是已入库的状态 + if (this.selectedListForPerson.size() < 1) { + FacesUtils.warn("请选择数据。"); + return; + } + ArrayList<String> ids = new ArrayList<>(); + for (OpeApplyReserve oa : this.selectedListForPerson) { + ids.add(oa.getId()); + if (oa.getStatus() != ApplyStatus.SUPPLIER_CONFIRM) { + FacesUtils.warn("只能让已确认状态的单子过期。"); + return; + } + } + + opeApplyService.updateOpeApplyStatus(ApplyStatus.EXPIRED, null, ids); + FacesUtils.warn("操作成功。"); + + + } + + public void recoverOrder(){ + if (this.selectedListForPerson.size() < 1) { + FacesUtils.warn("请选择数据。"); + return; + } + ArrayList<String> ids = new ArrayList<>(); + for (OpeApplyReserve oa : this.selectedListForPerson) { + ids.add(oa.getId()); + if (oa.getStatus() != ApplyStatus.EXPIRED) { + FacesUtils.warn("只能让过期单子恢复确认。"); + return; + } + } + opeApplyService.updateOpeApplyStatus(ApplyStatus.SUPPLIER_CONFIRM, null, ids); + FacesUtils.warn("操作成功。"); + } } -- Gitblit v1.9.2