From 59d9ea33f503e363f2e2941c7c00cc9dd9d9d1c7 Mon Sep 17 00:00:00 2001
From: kongzy <kongzy>
Date: Tue, 28 Nov 2023 11:00:42 +0800
Subject: [PATCH] 修改课题管理bug
---
src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java | 165 +++++++++++++++++++++++++++++++++++++++----------------
1 files changed, 117 insertions(+), 48 deletions(-)
diff --git a/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java b/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java
index aceb47d..53c5a7d 100644
--- a/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java
+++ b/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java
@@ -22,6 +22,7 @@
import org.primefaces.model.LazyDataModel;
import org.primefaces.model.SortOrder;
import org.primefaces.model.StreamedContent;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.PropertySource;
import org.springframework.context.annotation.Scope;
@@ -176,6 +177,8 @@
private boolean isExpired;
private Hashtable printTable;
+ @Autowired
+ private AccountInAndOutService accountInAndOutService;
public Hashtable getPrintTable() {
return printTable;
@@ -220,6 +223,8 @@
//private boolean flag = false;
//领用单号
private String receiptNumber;
+ //备注
+ private String note;
// 试剂库
private LazyDataModel<SysReagent> reagentDataModel;
// 直接入库试剂List
@@ -396,7 +401,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 +420,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));
}
@@ -671,7 +676,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);
}
@@ -1126,6 +1135,7 @@
checkReserve(list2);
//1.2判断提交的条码是否重复(只有补贴条码需要判断)
checkReagentCode(list2);
+ String receiptNum = new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date());
//库中领取
if(list.size()>0&&list!=null){
//扣库存 对象中的reagentCode存的是id
@@ -1143,7 +1153,7 @@
}
}
- this.opeWarehouseReserveService.claimForPerson(list, userId,projectNum,laboratoryId,laboratoryContainerId);
+ this.opeWarehouseReserveService.claimForPerson(list, userId,projectNum,laboratoryId,laboratoryContainerId,receiptNum);
}
//补贴条码
@@ -1215,12 +1225,16 @@
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());
printTable.put("department", applyPersonInfo.getDepartment());
printTable.put("date", Utils.now("yyyy-MM-dd"));
- String receiptNum = new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date());
+
printTable.put("receiptNumber", receiptNum);
if (StringUtils.isNotBlank(applyPersonInfo.getPhone())){
printTable.put("phone", applyPersonInfo.getPhone());
@@ -1267,7 +1281,7 @@
*/
public void associatedFlowReceiptNumber() {
try {
- opeUseFlowService.updateReceiptNumberByCode(selectedTmpOrderList, receiptNumber);
+ opeUseFlowService.updateReceiptNumberByCode(selectedTmpOrderList, receiptNumber, note);
//弹出打印窗口
RequestContext.getCurrentInstance().execute("document.getElementById('indirectPrint').click()");
} catch (Exception e) {
@@ -1283,7 +1297,7 @@
public void associatedFlowReceiptNumber2() {
try {
- opeUseFlowService.updateReceiptNumberByCode2(selectedTmpList, receiptNumber);
+ opeUseFlowService.updateReceiptNumberByCode2(selectedTmpList, receiptNumber,note);
//弹出打印窗口
RequestContext.getCurrentInstance().execute("document.getElementById('indirectPrint').click()");
} catch (Exception e) {
@@ -1295,7 +1309,7 @@
public void closeDialog() {
try {
- opeUseFlowService.updateReceiptNumberByCode(selectedTmpOrderList, receiptNumber);
+ opeUseFlowService.updateReceiptNumberByCode(selectedTmpOrderList, receiptNumber,note);
onCancelBtnClick();
} catch (Exception e) {
logger.info(e.getMessage());
@@ -1305,7 +1319,7 @@
public void closeDialog2() {
try {
- opeUseFlowService.updateReceiptNumberByCode2(selectedTmpList, receiptNumber);
+ opeUseFlowService.updateReceiptNumberByCode2(selectedTmpList, receiptNumber,note);
onCancelBtnClick();
} catch (Exception e) {
logger.info(e.getMessage());
@@ -1480,6 +1494,8 @@
}
}
+
+
public void onSaveBtnClick() {
try {
if (this.selectedTmpList == null || this.selectedTmpList.size() == 0) {
@@ -1496,6 +1512,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());
@@ -1507,7 +1527,7 @@
if (StringUtils.isNotBlank(applyPersonInfo.getProject())){
printTable.put("project", applyPersonInfo.getProject());
}
- SysLaboratory lab = sysLaboratoryService.getSysLaboratory(laboratoryId);
+ SysLaboratory lab = sysLaboratoryService.getSysLaboratorySimpleInfo(laboratoryId);
String receiptNum = new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date());
printTable.put("receiptNumber", receiptNum);
printTable.put("lab", lab.getName());
@@ -1528,6 +1548,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());
@@ -1575,7 +1618,7 @@
//FacesUtils.warn("未选择一个条形码。");
//return;
//}
- this.opeWarehouseReserveService.claim(list, userId,projectNum);
+ this.opeWarehouseReserveService.claim(list, userId,projectNum,receiptNumber);
}
if(list2.size()>0&&list2!=null){
@@ -1617,7 +1660,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
@@ -1666,6 +1709,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("操作失败。");
@@ -1748,22 +1795,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);
}
};
}
@@ -1781,7 +1829,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();
@@ -1798,22 +1846,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);
}
};
}
@@ -1888,7 +1937,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();
@@ -2066,6 +2115,15 @@
}
}
}
+ }
+
+
+ public void onExportOutAndIn(){
+ FacesContext currentInstance = FacesContext.getCurrentInstance();
+ currentInstance.responseComplete();
+ ExternalContext etx = currentInstance.getExternalContext();
+ HttpServletResponse resp = (HttpServletResponse) etx.getResponse();
+ accountInAndOutService.exportExcel(resp);
}
public HSSFWorkbook exportExcelNew(List<String> headerList, List<OpeWarehouseReserve> dataList) {
@@ -2530,7 +2588,6 @@
}
public void handleEvent2(){
- System.out.println("===============================");
if(useNum!=null && useNum>0){
if(startReagentCode!=null && !startReagentCode.equals("")){
if (startReagentCode.matches(".*\\D+.*")) {
@@ -2566,6 +2623,10 @@
}else {
FacesUtils.info("请输入领用数量");
}
+ }
+
+ public void clearStartAndEndCode(){
+ endReagentCode = "";
}
public void handleEventForPerson(){
@@ -2660,17 +2721,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);
}
};
}
@@ -3155,4 +3216,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