From fce41585f6c4e09c12c7e2a3150d4dfbf1f46bb0 Mon Sep 17 00:00:00 2001 From: 李宇 <986321569@qq.com> Date: 星期二, 12 一月 2021 10:27:26 +0800 Subject: [PATCH] 修改申购试剂查询 --- src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java | 165 ++++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 138 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 d4a90d4..04cd748 100644 --- a/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java +++ b/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java @@ -18,6 +18,7 @@ import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.primefaces.context.RequestContext; import org.primefaces.event.SelectEvent; +import org.primefaces.event.TabChangeEvent; import org.primefaces.model.LazyDataModel; import org.primefaces.model.SortOrder; import org.primefaces.model.StreamedContent; @@ -126,6 +127,7 @@ private String reagentLogId; private String userName; + private Integer tabValue = 0; private List<SysReagent> reagentSelectList; private List<String> showCodes; @@ -229,6 +231,8 @@ * 选中的list */ private List<OpeApplyReserve> selectedListForPerson; + private List<OpeApplyReserve> selectedTmpOrderList; + private List<OpeApplyReserve> trulySelectedOrderList; /** * 条形码对话框中选择的条形码集合 @@ -387,9 +391,40 @@ } } + public void addOrder() { + logger.info("WarehouseStockMngController onUseBtnClick start"); + if (this.selectedListForPerson == null || this.selectedListForPerson.size() == 0) { + FacesUtils.warn("请选择数据。"); + return; + } + if (selectedTmpOrderList !=null && selectedTmpOrderList.size()>0){ + ArrayList<OpeApplyReserve> tmp = new ArrayList<>(); + selectedListForPerson.forEach(opeApplyReserve -> { + AtomicBoolean flag = new AtomicBoolean(false); + selectedTmpOrderList.forEach(opeApplyReserve1 -> { + if (opeApplyReserve.getId().equals(opeApplyReserve1.getId())){ + flag.set(true); + } + + }); + if(!flag.get()) { + tmp.add(opeApplyReserve); + } + }); + selectedTmpOrderList.addAll(tmp); + }else{ + selectedTmpOrderList = new ArrayList<>(); + selectedTmpOrderList.addAll(selectedListForPerson); + } + } + public void clear(){ selectedTmpList = null; + } + + public void clearOrderTmp(){ + selectedTmpOrderList = null; } public void cancel(){ @@ -403,19 +438,46 @@ return; } - ArrayList<Integer> indexs = new ArrayList<>(); - for (int i =0;i<trulySelectedList.size();i++){ - for (int j = 0; j < selectedTmpList.size(); j++) { - if(trulySelectedList.get(i).getId().equals(selectedTmpList.get(j).getId())) - { - indexs.add(i); - } - } - } + ArrayList<Object> indexs = new ArrayList<>(); + for (OpeWarehouseReserve warehouseReserve : trulySelectedList) { + for (OpeWarehouseReserve opeWarehouseReserve : selectedTmpList) { + if (warehouseReserve.getId().equals(opeWarehouseReserve.getId())) { + indexs.add(warehouseReserve); + } + } + } if (indexs.size()>0){ - indexs.forEach(index -> { - selectedTmpList.remove(selectedTmpList.get(index)); + indexs.forEach(obj -> { + selectedTmpList.remove(obj); + }); + } + + } + + public void cancelOrderTmp(){ + if (trulySelectedOrderList == null || trulySelectedOrderList.size()<=0){ + FacesUtils.info("至少选择一个"); + return; + } + + if (selectedTmpOrderList == null || selectedTmpOrderList.size()<=0){ + FacesUtils.info("至少选择一个"); + return; + } + + ArrayList<Object> indexs = new ArrayList<>(); + for (OpeApplyReserve opeApplyReserve : trulySelectedOrderList) { + for (OpeApplyReserve applyReserve : selectedTmpOrderList) { + if (opeApplyReserve.getId().equals(applyReserve.getId())) { + indexs.add(opeApplyReserve); + } + } + } + + if (indexs.size()>0){ + indexs.forEach(obj -> { + selectedTmpOrderList.remove(obj); }); } @@ -430,6 +492,14 @@ this.menuController.goToPage(Constants.PAGE_WAREHOUSE_REAGENT_USE_NEW, Constants.PAGE_WAREHOUSE_STOCK_MNG); } // + public void onUseBtnClickOrderTmp(){ + if (selectedTmpOrderList == null || selectedTmpOrderList.size()<=0){ + FacesUtils.info("至少选择一个"); + return; + } + + this.menuController.goToPage(Constants.PAGE_WAREHOUSE_REAGENT_USE_NEW_PERSON, Constants.PAGE_WAREHOUSE_STOCK_MNG); + } public void onUseBtnClickForPerson() { logger.info("WarehouseStockMngController onUseBtnClickForPerson start"); @@ -496,7 +566,7 @@ } } // 将当前选择条形码保存到库存中 - for (OpeApplyReserve opeApplyReserve : this.selectedListForPerson) { + for (OpeApplyReserve opeApplyReserve : this.selectedTmpOrderList) { if (opeApplyReserve.getId().equals(this.selectedOpeApplyReserve.getId())) { OpeWarehouseReserve wa=opeWarehouseReserveService.getOpeWarehouseReserve(opeApplyReserve.getReagent().getId(),opeApplyReserve.getArticleNumber()); if(this.useNum > wa.getReserve()) @@ -578,16 +648,20 @@ // 将当前选择条形码保存到库存中 List<String> codeList=new ArrayList<>(); - for (OpeApplyReserve opeApplyReserve : this.selectedListForPerson) { + for (OpeApplyReserve opeApplyReserve : this.selectedTmpOrderList) { if (opeApplyReserve.getId().equals(this.selectedOpeApplyReserve.getId())) { - OpeWarehouseReserve wa=opeWarehouseReserveService.getOpeWarehouseReserve(opeApplyReserve.getReagent().getId(),opeApplyReserve.getArticleNumber()); - if(wa==null){ - wa=new OpeWarehouseReserve(); - wa.setReserve(0); - } - if(this.useNum > wa.getReserve()) - { - FacesUtils.warn("库存不够,请确认或申购!"); +// OpeWarehouseReserve wa=opeWarehouseReserveService.getOpeWarehouseReserve(opeApplyReserve.getReagent().getId(),opeApplyReserve.getArticleNumber()); +// if(wa==null){ +// wa=new OpeWarehouseReserve(); +// wa.setReserve(0); +// } +// if(this.useNum > wa.getReserve()) +// { +// FacesUtils.warn("库存不够,请确认或申购!"); +// return; +// } + if (this.useNum+opeApplyReserve.getUsed() > opeApplyReserve.getNum()){ + FacesUtils.warn("领用数量超出申请数量!"); return; } opeApplyReserve.setSelectNum(useNum); @@ -665,7 +739,7 @@ } List<String> codeList=new ArrayList<>(); - for (OpeWarehouseReserve opeWarehouseReserve : this.selectedList) { + for (OpeWarehouseReserve opeWarehouseReserve : this.selectedTmpList) { if (opeWarehouseReserve.getId().equals(this.selectedOpeWarehouseReserve.getId())) { if(this.useNum > opeWarehouseReserve.getReserve()) { @@ -713,7 +787,7 @@ System.out.println("====onYesBtnClick======"); // 将当前选择条形码保存到库存中 - for (OpeWarehouseReserve opeWarehouseReserve : this.selectedList) { + for (OpeWarehouseReserve opeWarehouseReserve : this.selectedTmpList) { if (opeWarehouseReserve.getId().equals(this.selectedOpeWarehouseReserve.getId())) { if(this.useNum > opeWarehouseReserve.getReserve()) { @@ -737,11 +811,23 @@ } } + public void onTabChange(TabChangeEvent event) { + if ("firstTab".equals(event.getTab().getId())) { + tabValue = 0; + }else{ + tabValue = 1; + } + } + + public void onCancelBtnClick() { + this.selectedTmpOrderList = null; + this.selectedTmpList = null; this.menuController.backToPage(); } public void onClose(){ + this.selectedTmpOrderList = null; this.selectedTmpList = null; this.menuController.backToPage(); } @@ -754,7 +840,7 @@ public void onSaveBtnClickForPerson(){ try { - if (this.selectedListForPerson == null || this.selectedListForPerson.size() == 0) { + if (this.selectedTmpOrderList == null || this.selectedTmpOrderList.size() == 0) { FacesUtils.warn("请选择申领试剂。"); return; } @@ -766,7 +852,7 @@ List<OpeApplyReserve> list=new ArrayList<>(); List<OpeApplyReserve> list2=new ArrayList<>(); //int size = 0; - for(OpeApplyReserve app:this.selectedListForPerson){ + for(OpeApplyReserve app:this.selectedTmpOrderList){ if(app.getFlag()==1){ list.add(app); }else { @@ -970,7 +1056,7 @@ } public void onSaveBtnClick() { try { - if (this.selectedList == null || this.selectedList.size() == 0) { + if (this.selectedTmpList == null || this.selectedTmpList.size() == 0) { FacesUtils.warn("请选择申领试剂。"); return; } @@ -995,7 +1081,7 @@ int sum = 0; List<OpeWarehouseReserve> list=new ArrayList<>(); List<OpeWarehouseReserve> list2=new ArrayList<>(); - for (OpeWarehouseReserve selectWarehouseReserve : this.selectedList) { + for (OpeWarehouseReserve selectWarehouseReserve : this.selectedTmpList) { if(selectWarehouseReserve.getFlag()==1){ list.add(selectWarehouseReserve); }else{ @@ -2120,4 +2206,29 @@ public void setShowCodes(List<String> showCodes) { this.showCodes = showCodes; } + + public List<OpeApplyReserve> getSelectedTmpOrderList() { + return selectedTmpOrderList; + } + + public void setSelectedTmpOrderList(List<OpeApplyReserve> selectedTmpOrderList) { + this.selectedTmpOrderList = selectedTmpOrderList; + } + + public List<OpeApplyReserve> getTrulySelectedOrderList() { + return trulySelectedOrderList; + } + + public void setTrulySelectedOrderList(List<OpeApplyReserve> trulySelectedOrderList) { + this.trulySelectedOrderList = trulySelectedOrderList; + } + + + public Integer getTabValue() { + return tabValue; + } + + public void setTabValue(Integer tabValue) { + this.tabValue = tabValue; + } } -- Gitblit v1.9.2