李宇
2021-01-27 d6c65a4e3d1ca7d9a7bd6806c99fee035d0a44eb
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.*;
@@ -74,6 +71,8 @@
   private SysSupplierService sysSupplierService;
   @Resource
   private OpeOrderService opeOrderService;
   @Resource
   private BaseMetaDao baseMetaDao;
   @Resource
   private MenuController menuController;
@@ -1148,7 +1147,7 @@
            this.opeWarehouseReserveService.reagentDStore3(opeList,userId);
            //扣库存
            opeWarehouseReserveService.btWarehouseReserveReduce(list2);
            opeWarehouseReserveService.btWarehouseReserveReduce(list2,userId);
         }
         for(int i=0;i<list2.size();i++){
@@ -1550,8 +1549,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(userId);
                  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));
            }
@@ -2664,8 +2693,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= laboratoryId==null?this.laboratory.get(0).getId():laboratoryId;
            this.laboratoryContainers = this.sysLaboratoryContainerService.getSysLaboratoryContainerList(laboratoryId);
         }else {
            this.oriLaboratoryId = null;
            this.laboratoryContainers = null;
@@ -2704,6 +2734,7 @@
   }
   public String getLaboratoryContainerId() {
      return laboratoryContainerId;
   }