From 1c375d6dcd0c41bc3c206585a2712ec066bf5992 Mon Sep 17 00:00:00 2001
From: lyfO_o <764716047@qq.com>
Date: 星期五, 18 十一月 2022 10:09:13 +0800
Subject: [PATCH] 卡号 bug

---
 src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java |  157 +++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 112 insertions(+), 45 deletions(-)

diff --git a/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java b/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java
index 1440034..d7d1c54 100644
--- a/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java
+++ b/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java
@@ -220,6 +220,8 @@
 	//private boolean flag = false;
 	//领用单号
 	private String receiptNumber;
+	//备注
+	private String note;
 	// 试剂库
     private LazyDataModel<SysReagent> reagentDataModel;
 	// 直接入库试剂List
@@ -396,7 +398,7 @@
 			String reagentId = selectedOpeWarehouseReserve.getReagentId();
 			String articleNumber = selectedOpeWarehouseReserve.getArticleNumber();
 
-			this.setReagentStatusSelectList(opeReagentStatusService.getOpeReagentStatusList(reagentId, articleNumber,
+			this.setReagentStatusSelectList(opeReagentStatusService.getOpeReagentStatusList22(reagentId, articleNumber,
 					ArrivalStatus.WAREHOUSE.getKey(), reagentCode, null, null, null));
 
 //			System.out.print("this.getReagentStatusSelectList().size(): " + this.reagentStatusSelectList.size());
@@ -415,7 +417,7 @@
 			System.out.println(reagentId);
 			System.out.println(articleNumber);
 			System.out.println(reagentCode);
-			this.setReagentStatusSelectListForPerson(opeReagentStatusService.getOpeReagentStatusList(reagentId, articleNumber,
+			this.setReagentStatusSelectListForPerson(opeReagentStatusService.getOpeReagentStatusList22(reagentId, articleNumber,
 					ArrivalStatus.WAREHOUSE.getKey(), reagentCode, null, null, null));
 
 		}
@@ -426,7 +428,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;
@@ -670,7 +673,11 @@
 		checkTable = null;
 		//
 		this.userId = selectedTmpOrderList.get(0).getApplyUser();
-
+		SysUser sysUser = sysUserService.getSysUser(this.userId);
+		if (sysUser == null){
+			FacesUtils.info("申领人不存在");
+			return;
+		}
 		this.menuController.goToPage(Constants.PAGE_WAREHOUSE_REAGENT_USE_NEW_PERSON, Constants.PAGE_WAREHOUSE_STOCK_MNG);
 	}
 
@@ -1214,6 +1221,10 @@
 			int sum = 0;
 			List<ApplyListDto> applyList = new ArrayList<>();
 			SysUser applyPersonInfo = sysUserService.getUser(userId);
+			if (applyPersonInfo == null) {
+				FacesUtils.warn("申领人不存在或者申领人部门被删除。");
+				return;
+			}
 			printTable.put("head", instituteName);
 			printTable.put("title", "领用单");
 			printTable.put("applyPerson", applyPersonInfo.getName());
@@ -1266,7 +1277,7 @@
 	 */
 	public void associatedFlowReceiptNumber() {
 		try {
-			opeUseFlowService.updateReceiptNumberByCode(selectedTmpOrderList, receiptNumber);
+			opeUseFlowService.updateReceiptNumberByCode(selectedTmpOrderList, receiptNumber, note);
 			//弹出打印窗口
 			RequestContext.getCurrentInstance().execute("document.getElementById('indirectPrint').click()");
 		} catch (Exception e) {
@@ -1282,7 +1293,7 @@
 
 	public void associatedFlowReceiptNumber2() {
 		try {
-			opeUseFlowService.updateReceiptNumberByCode2(selectedTmpList, receiptNumber);
+			opeUseFlowService.updateReceiptNumberByCode2(selectedTmpList, receiptNumber,note);
 			//弹出打印窗口
 			RequestContext.getCurrentInstance().execute("document.getElementById('indirectPrint').click()");
 		} catch (Exception e) {
@@ -1294,7 +1305,7 @@
 
 	public void closeDialog() {
 		try {
-			opeUseFlowService.updateReceiptNumberByCode(selectedTmpOrderList, receiptNumber);
+			opeUseFlowService.updateReceiptNumberByCode(selectedTmpOrderList, receiptNumber,note);
 			onCancelBtnClick();
 		} catch (Exception e) {
 			logger.info(e.getMessage());
@@ -1304,7 +1315,7 @@
 
 	public void closeDialog2() {
 		try {
-			opeUseFlowService.updateReceiptNumberByCode2(selectedTmpList, receiptNumber);
+			opeUseFlowService.updateReceiptNumberByCode2(selectedTmpList, receiptNumber,note);
 			onCancelBtnClick();
 		} catch (Exception e) {
 			logger.info(e.getMessage());
@@ -1495,6 +1506,10 @@
 			printTable = new Hashtable();
 			List<ApplyListDto> applyList = new ArrayList<>();
 			SysUser applyPersonInfo = sysUserService.getUser(userId);
+			if (applyPersonInfo == null) {
+				FacesUtils.warn("申领人不存在或者申领人部门被删除。");
+				return;
+			}
 			printTable.put("head", instituteName);
 			printTable.put("title", "领用单");
 			printTable.put("applyPerson", applyPersonInfo.getName());
@@ -1527,6 +1542,29 @@
 					list2.add(selectWarehouseReserve);
 				}
 			}
+
+			//list2为补贴条码,检查条码重复
+			ArrayList<String> checkList = new ArrayList<>();
+			if (list2.size() > 0) {
+				for (OpeWarehouseReserve owr : list2) {
+					checkList.addAll(owr.getReagentCodes());
+				}
+			}
+
+			Set<String> checkTable = new HashSet<>();
+			if (checkList.size() > 0) {
+				for (String reagentCode : checkList) {
+					if (checkTable.contains(reagentCode)) {
+						throw new BusinessException(ExceptionEnumCode.PARAM_EXIST, "当前订单条码重复," + reagentCode);
+					} else {
+						checkTable.add(reagentCode);
+					}
+				}
+			}
+			checkTable = null;
+			checkList = null;
+
+
 			if(list.size()>0&&list!=null){
 				for (OpeWarehouseReserve selectWarehouseReserve : list) {
 					Map reagentDetail = sysReagentService.getReagentDetail(selectWarehouseReserve.getReagentId());
@@ -1616,7 +1654,7 @@
 
 					sum += list2.get(i).getSelectNum();
 				}
-				this.opeWarehouseReserveService.reagentDStore4(opeList,userId);
+				this.opeWarehouseReserveService.reagentDStore4(opeList,userId,receiptNum);
 				for(int i=0;i<list2.size();i++){
 
 					List<String> reagentCodes = opeReagentStatusService
@@ -1665,6 +1703,10 @@
 			FacesUtils.info("申领成功。");
 			RequestContext.getCurrentInstance().execute("PF('printDialog').show()");
 //            this.menuController.goToPage(Constants.PAGE_WAREHOUSE_STOCK_MNG, Constants.PAGE_WAREHOUSE_REAGENT_USE_NEW);
+		} catch (BusinessException e) {
+			logger.error(e.getMessage(), e);
+			FacesUtils.warn(e.getMessage());
+
 		} catch (Exception e) {
 			logger.error(e.getMessage(), e);
 			FacesUtils.warn("操作失败。");
@@ -1747,22 +1789,23 @@
 					} catch (Exception e) {
 						logger.error(e);
 					}
+					selectedList = null;
 					return list;
 				}
 
 				@Override
 				public OpeWarehouseReserve getRowData(String rowKey) {
-					Iterator<OpeWarehouseReserve> iterator = this.iterator();
-					if (iterator != null) {
-						OpeWarehouseReserve su = null;
-						while (iterator.hasNext()) {
-							su = iterator.next();
-							if (rowKey.equals(su.getId())) {
-								return su;
-							}
-						}
-					}
-					return null;
+//					Iterator<OpeWarehouseReserve> iterator = this.iterator();
+//					if (iterator != null) {
+//						OpeWarehouseReserve su = null;
+//						while (iterator.hasNext()) {
+//							su = iterator.next();
+//							if (rowKey.equals(su.getId())) {
+//								return su;
+//							}
+//						}
+//					}
+					return opeWarehouseReserveService.getRowData(rowKey);
 				}
 			};
 		}
@@ -1780,7 +1823,7 @@
 					List<OpeApplyReserve> list = null;
 					SysUser loginUser = getUser();
 					String id="";
-					if(loginUser.getSeeFlag()==SeeFlag.MANAGE){
+					if(loginUser.getSeeFlag()==SeeFlag.MANAGE||loginUser.getSeeFlag() ==SeeFlag.LEADING){
 
 					}else {
 						//userName=loginUser.getName();
@@ -1797,22 +1840,23 @@
 					} catch (Exception e) {
 						logger.error(e);
 					}
+					selectedListForPerson = null;
 					return list;
 				}
 
 				@Override
 				public OpeApplyReserve getRowData(String rowKey) {
-					Iterator<OpeApplyReserve> iterator = this.iterator();
-					if (iterator != null) {
-						OpeApplyReserve su = null;
-						while (iterator.hasNext()) {
-							su = iterator.next();
-							if (rowKey.equals(su.getId())) {
-								return su;
-							}
-						}
-					}
-					return null;
+//					Iterator<OpeApplyReserve> iterator = this.iterator();
+//					if (iterator != null) {
+//						OpeApplyReserve su = null;
+//						while (iterator.hasNext()) {
+//							su = iterator.next();
+//							if (rowKey.equals(su.getId())) {
+//								return su;
+//							}
+//						}
+//					}
+					return opeApplyService.getOpeApplyReserveListByNameForRowData(rowKey);
 				}
 			};
 		}
@@ -1887,7 +1931,7 @@
 			//map=null;
 			SysUser loginUser = getUser();
 			String id="";
-			if(loginUser.getSeeFlag()==SeeFlag.MANAGE){
+			if(loginUser.getSeeFlag()==SeeFlag.MANAGE||loginUser.getSeeFlag() == SeeFlag.LEADING){
 
 			}else {
 				//userName=loginUser.getName();
@@ -2065,6 +2109,12 @@
 				}
 			}
 		}
+	}
+
+
+	public void onExportOutAndIn(){
+
+
 	}
 
 	public  HSSFWorkbook exportExcelNew(List<String> headerList, List<OpeWarehouseReserve> dataList) {
@@ -2303,6 +2353,7 @@
         this.reagentDStore.setReagent((SysReagent)event.getObject());
 
     	this.reagentDStoreEditFlag = Constants.ACTION_ADD;
+		onWarehouseSelectChange(null);
     	RequestContext.getCurrentInstance().execute("PF('reagentDStoreDialog').show()");
     }
 
@@ -2312,6 +2363,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)) {
@@ -2523,7 +2579,6 @@
     }
 
 	public void handleEvent2(){
-		System.out.println("===============================");
 			if(useNum!=null && useNum>0){
 				if(startReagentCode!=null && !startReagentCode.equals("")){
 				if (startReagentCode.matches(".*\\D+.*")) {
@@ -2559,6 +2614,10 @@
 			}else {
 				FacesUtils.info("请输入领用数量");
 			}
+	}
+
+	public void clearStartAndEndCode(){
+		endReagentCode = "";
 	}
 
 	public void handleEventForPerson(){
@@ -2653,17 +2712,17 @@
 
                 @Override
                 public SysReagent getRowData(String rowKey) {
-                    Iterator<SysReagent> iterator = this.iterator();
-                    if (iterator != null) {
-                        SysReagent sr = null;
-                        while (iterator.hasNext()) {
-                            sr = iterator.next();
-                            if (rowKey.equals(sr.getId())) {
-                                return sr;
-                            }
-                        }
-                    }
-                    return null;
+//                    Iterator<SysReagent> iterator = this.iterator();
+//                    if (iterator != null) {
+//                        SysReagent sr = null;
+//                        while (iterator.hasNext()) {
+//                            sr = iterator.next();
+//                            if (rowKey.equals(sr.getId())) {
+//                                return sr;
+//                            }
+//                        }
+//                    }
+                    return sysReagentService.getSysReagentListNewRowData(rowKey);
                 }
             };
         }
@@ -3148,4 +3207,12 @@
 		opeApplyService.updateOpeApplyStatus(ApplyStatus.SUPPLIER_CONFIRM, null, ids);
 		FacesUtils.warn("操作成功。");
 	}
+
+    public String getNote() {
+        return note;
+    }
+
+    public void setNote(String note) {
+        this.note = note;
+    }
 }

--
Gitblit v1.9.2