From 8caeaccef265d090a7d62a95cc12bdd1b3f05e70 Mon Sep 17 00:00:00 2001
From: 李宇 <986321569@qq.com>
Date: Fri, 25 Jun 2021 16:33:54 +0800
Subject: [PATCH] 修改试剂管理勾选项
---
src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java | 158 +++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 131 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 527e594..98a59f0 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;
@@ -541,6 +544,12 @@
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){
@@ -793,7 +802,7 @@
//变换条码
btCodeChange();
}
-
+
/**
* 取消一个仓库领取
*/
@@ -1068,6 +1077,7 @@
this.selectedInputStorageTmpOrderList = null;
this.endReagentCodeForPerson = null;
this.startReagentCodeForPerson = null;
+ this.laboratoryId = null;
this.useNum = null;
this.menuController.backToPage();
}
@@ -1204,16 +1214,24 @@
printTable = new Hashtable();
int sum = 0;
List<ApplyListDto> applyList = new ArrayList<>();
- Map applyPersonInfo = sysUserService.getUser(userId);
+ SysUser applyPersonInfo = sysUserService.getUser(userId);
+ if (applyPersonInfo == null) {
+ FacesUtils.warn("申领人不存在或者申领人部门被删除。");
+ return;
+ }
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;
@@ -1481,14 +1499,22 @@
printTable = null;
printTable = new Hashtable();
List<ApplyListDto> applyList = new ArrayList<>();
- Map applyPersonInfo = sysUserService.getUser(userId);
+ SysUser applyPersonInfo = sysUserService.getUser(userId);
+ if (applyPersonInfo == null) {
+ FacesUtils.warn("申领人不存在或者申领人部门被删除。");
+ return;
+ }
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);
@@ -1503,11 +1529,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) {
@@ -1534,7 +1568,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"));
@@ -1552,10 +1585,15 @@
//}
this.opeWarehouseReserveService.claim(list, userId,projectNum);
}
+
if(list2.size()>0&&list2!=null){
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);
@@ -1575,7 +1613,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")));
@@ -1647,6 +1684,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) {
@@ -1749,11 +1797,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);
@@ -1858,7 +1906,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("申购编号");
@@ -2264,6 +2312,7 @@
this.reagentDStore.setReagent((SysReagent)event.getObject());
this.reagentDStoreEditFlag = Constants.ACTION_ADD;
+ onWarehouseSelectChange(null);
RequestContext.getCurrentInstance().execute("PF('reagentDStoreDialog').show()");
}
@@ -2273,6 +2322,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)) {
@@ -2711,17 +2765,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 修改申领人的实验室显示信息
@@ -2729,15 +2786,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= laboratoryId==null?this.laboratory.get(0).getId():laboratoryId;
+// this.laboratoryId = this.laboratory.get(0).getId();
this.laboratoryContainers = this.sysLaboratoryContainerService.getSysLaboratoryContainerList(laboratoryId);
}else {
this.oriLaboratoryId = null;
@@ -2757,7 +2814,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);
}
@@ -3059,4 +3116,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