From 422622d3121acde709e79ca9b92f30c47e05272c Mon Sep 17 00:00:00 2001 From: 李宇 <986321569@qq.com> Date: 星期日, 07 二月 2021 14:38:12 +0800 Subject: [PATCH] 修改枪领用 --- src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java | 129 ++++++++++++++++++++++++++++++++++++------- 1 files changed, 108 insertions(+), 21 deletions(-) diff --git a/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java b/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java index 13fd67b..8f4bf0e 100644 --- a/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java +++ b/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java @@ -1,15 +1,12 @@ package com.nanometer.smartlab.controller; +import com.nanometer.smartlab.dao.BaseMetaDao; import com.nanometer.smartlab.dao.OpeApplyDao; import com.nanometer.smartlab.dao.OpeReagentStatusDao; import com.nanometer.smartlab.dao.OpeWarehouseReserveDao; import com.nanometer.smartlab.entity.*; import com.nanometer.smartlab.entity.dto.ApplyListDto; -import com.nanometer.smartlab.entity.enumtype.ApplyStatusVo; -import com.nanometer.smartlab.entity.enumtype.ApplyStatus; -import com.nanometer.smartlab.entity.enumtype.ArrivalStatus; -import com.nanometer.smartlab.entity.enumtype.SeeFlag; -import com.nanometer.smartlab.entity.enumtype.ValidFlag; +import com.nanometer.smartlab.entity.enumtype.*; import com.nanometer.smartlab.exception.BusinessException; import com.nanometer.smartlab.exception.ExceptionEnumCode; import com.nanometer.smartlab.service.*; @@ -50,8 +47,8 @@ /** * Created by cmower on 17/11/20. */ -@Controller @PropertySource(value = "WEB-INF/config.properties",encoding = "utf-8") +@Controller @Scope("session") public class WarehouseStockMngController extends BaseController { @@ -74,6 +71,8 @@ private SysSupplierService sysSupplierService; @Resource private OpeOrderService opeOrderService; + @Resource + private BaseMetaDao baseMetaDao; @Resource private MenuController menuController; @@ -164,8 +163,10 @@ private String endReagentCode; private String startReagentCodeForPerson; private String endReagentCodeForPerson; + private String warehouseName; private Integer editFlag; + private Integer isAllApply = 0; private StreamedContent file; @Value("${pdf.export.file.path}") private String pdfExportFilePath; @@ -374,7 +375,7 @@ private void initUserSelectList() { logger.info("WarehouseStockMngController initUserSelectList start"); - this.setUserSelectList(this.sysUserService.getSysUserList(null, null, null, null, null)); + this.setUserSelectList(this.sysUserService.getSysUserList(null, null, null, null, null,null,null)); /**if(sysUserService.getSysUser(userId) == null) { this.laboratory = this.sysLaboratoryService.getSysLaboratoryListByDep(this.getUserDepartment()); @@ -623,7 +624,7 @@ FacesUtils.info("至少选择一个"); return; } - + this.userId = getUser().getId(); this.menuController.goToPage(Constants.PAGE_WAREHOUSE_REAGENT_USE_NEW, Constants.PAGE_WAREHOUSE_STOCK_MNG); } // @@ -648,6 +649,8 @@ } } checkTable = null; + // + this.userId = selectedTmpOrderList.get(0).getApplyUser(); this.menuController.goToPage(Constants.PAGE_WAREHOUSE_REAGENT_USE_NEW_PERSON, Constants.PAGE_WAREHOUSE_STOCK_MNG); } @@ -1248,11 +1251,37 @@ } + /** + * 点击打印 关联所有流向和领用单号e + */ + + public void associatedFlowReceiptNumber2() { try { opeUseFlowService.updateReceiptNumberByCode2(selectedTmpList, receiptNumber); //弹出打印窗口 RequestContext.getCurrentInstance().execute("document.getElementById('indirectPrint').click()"); + } catch (Exception e) { + logger.info(e.getMessage()); + } + + } + + + public void closeDialog() { + try { + opeUseFlowService.updateReceiptNumberByCode(selectedTmpOrderList, receiptNumber); + onCancelBtnClick(); + } catch (Exception e) { + logger.info(e.getMessage()); + } + + } + + public void closeDialog2() { + try { + opeUseFlowService.updateReceiptNumberByCode2(selectedTmpList, receiptNumber); + onCancelBtnClick(); } catch (Exception e) { logger.info(e.getMessage()); } @@ -1512,6 +1541,7 @@ //} 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) @@ -1550,8 +1580,38 @@ } this.opeWarehouseReserveService.reagentDStore4(opeList,userId); for(int i=0;i<list2.size();i++){ + + List<String> reagentCodes = opeReagentStatusService + .generateReagentCode(list2.get(i).getStartReagentCode2(), list2.get(i).getEndReagentCode2()); + Integer selectNum = list2.get(i).getSelectNum(); + for (int j = 0;j<selectNum;j++){ + // 试剂使用情况入库insert + OpeUseFlow opeUseFlow = new OpeUseFlow(); + opeUseFlow.setReagentCode(reagentCodes.get(0)); + opeUseFlow.setStatus(ArrivalStatus.WAREHOUSE); + //仓库信息 + List<OpeWarehouseReserve> warehouseReserveInfo = opeWarehouseReserveService + .selectWarehouseByRidAndArticleNumberAndWarehouse(list2.get(i).getReagent().getId() + , list2.get(i).getArticleNumber() + , list2.get(i).getWarehouseId()); + opeUseFlow.setHouseId(list2.get(i).getWarehouseId()); + opeUseFlow.setContainerId(warehouseReserveInfo.get(0).getContainerId()); + opeUseFlow.setCreateTime(warehouseReserveInfo.get(0).getUpdateTime()); + opeUseFlow.setUserId(warehouseReserveInfo.get(0).getUserId()); + opeUseFlow.setRemainder(list2.get(i).getReagent().getMainMetering()!=null?list2.get(i).getReagent().getMainMetering():new BigDecimal(0)); + opeUseFlow.setStoreType(StoreType.DIRECTSTORE); + + Map<String, String> metaMap = new HashMap<>(); + metaMap.put("groupId", "operate_status"); + metaMap.put("metaKey", String.valueOf(OperateStatus.WAREHOUSEIN.getKey())); + List<BaseMeta> baseMetaList = baseMetaDao.getBaseMetaList(metaMap); + opeUseFlow.setOperateState(baseMetaList.get(0).getId()); + this.opeUseFlowService.insertOpeUseFlow(opeUseFlow); + reagentCodes.remove(0); + } + list2.get(i).setReserve(list2.get(i).getReserve()-list2.get(i).getSelectNum()); - opeWarehouseReserveDao.updateOpeWarehouseReserve(list2.get(i)); + opeWarehouseReserveDao.updateOpeWarehouseReserve2(list2.get(i)); } @@ -1577,6 +1637,13 @@ */ public void onSaveInputWarehouseClick(){ try{ + //0.0输入校验 + for (OpeApplyReserve opeApplyReserve : opeApplyList) { + if (StringUtils.isBlank(opeApplyReserve.getArticleNumber())) { + throw new BusinessException(ExceptionEnumCode.PARAM_EXIST, opeApplyReserve.getReagent().getName() + ":批号不能为空"); + } + } + //用来检验提交表单得试剂条码是否重复 Map<String,Boolean> checkTable= new HashMap<>(); if (opeApplyList != null && opeApplyList.size() > 0) { @@ -1629,11 +1696,11 @@ Map<String, Object> filters) { List<OpeWarehouseReserve> list = null; try { - int count = opeWarehouseReserveService.getOpeWarehouseReserveTotalCountByName(reagentId, supplierId,productSn); + int count = opeWarehouseReserveService.getOpeWarehouseReserveTotalCountByName(reagentId, supplierId,productSn,warehouseName); this.setRowCount(count); if (count > 0) { list = opeWarehouseReserveService.getOpeWarehouseReserveListByName(reagentId, supplierId, first, - pageSize,productSn); + pageSize,productSn,warehouseName); } } catch (Exception e) { logger.error(e); @@ -1679,11 +1746,11 @@ } try { - int count = opeApplyService.getOpeApplyReserveTotalCountByNameFor(id,reagentId, userName,productSn,applyCode,status); + int count = opeApplyService.getOpeApplyReserveTotalCountByNameFor(id, reagentId, userName, productSn, applyCode, status, isAllApply); this.setRowCount(count); if (count > 0) { - list = opeApplyService.getOpeApplyReserveListByNameFor(id,reagentId, userName, first, - pageSize,productSn,applyCode,status); + list = opeApplyService.getOpeApplyReserveListByNameFor(id, reagentId, userName, first, + pageSize, productSn, applyCode, status, isAllApply); } } catch (Exception e) { logger.error(e); @@ -1788,7 +1855,7 @@ realDataList=selectedListForPerson; }else { realDataList = opeApplyService.getOpeApplyReserveListByNameFor(id,reagentId, userName, null, - null,productSn,applyCode,status); + null,productSn,applyCode,status,isAllApply); } List<String> headerList = new ArrayList<>(); headerList.add("申购编号"); @@ -1905,7 +1972,7 @@ realDataList=selectedList; }else { realDataList = opeWarehouseReserveService.getOpeWarehouseReserveListByName(reagentId, supplierId, null, - null,productSn); + null,productSn,warehouseName); } List<String> headerList = new ArrayList<>(); headerList.add("试剂名称"); @@ -2506,7 +2573,7 @@ list.add(sysUser); applyUserSelectList = list; } else { - applyUserSelectList = this.sysUserService.getSysUserList(null, null, null, null, null); + applyUserSelectList = this.sysUserService.getSysUserList(null, null, null, null, null,null,null); } } return applyUserSelectList; @@ -2653,7 +2720,9 @@ public List<SysLaboratory> getLaboratory() { if(userId != null && userId.trim().length() > 0) { - this.laboratory = this.sysLaboratoryService.getSysLaboratoryListByDep(sysUserService.getSysUser(userId).getDepartment()); + + //Todo 修改申领人的实验室显示信息 + this.laboratory = this.sysLaboratoryService.getSysLaboratoryListByUserId(userId); if(this.laboratory != null && this.laboratory.size() > 0) { //flag =true; @@ -2664,8 +2733,9 @@ //{ // this.oriLaboratoryId = this.laboratory.get(0).getId(); //} - this.laboratoryId=this.laboratory.get(0).getId(); - this.laboratoryContainers = this.sysLaboratoryContainerService.getSysLaboratoryContainerList(this.laboratory.get(0).getId()); + + this.laboratoryId = this.laboratory.get(0).getId(); + this.laboratoryContainers = this.sysLaboratoryContainerService.getSysLaboratoryContainerList(laboratoryId); }else { this.oriLaboratoryId = null; this.laboratoryContainers = null; @@ -2704,6 +2774,7 @@ } public String getLaboratoryContainerId() { + return laboratoryContainerId; } @@ -2831,7 +2902,7 @@ } public List getConsignee() { - List<SysUser> dataList = this.sysUserService.getSysUserList(null, null, null, null, null); + List<SysUser> dataList = this.sysUserService.getSysUserList(null, null, null, null, null,null,null); //将admin置于首位 for (int i = 0; i < dataList.size(); i++) { if ("admin".equals(dataList.get(i).getAccount())){ @@ -2969,4 +3040,20 @@ public void setReceiptNumber(String receiptNumber) { this.receiptNumber = receiptNumber; } + + public String getWarehouseName() { + return warehouseName; + } + + public void setWarehouseName(String warehouseName) { + this.warehouseName = warehouseName; + } + + public Integer getIsAllApply() { + return isAllApply; + } + + public void setIsAllApply(Integer isAllApply) { + this.isAllApply = isAllApply; + } } -- Gitblit v1.9.2