李宇
2021-04-07 fcdb56cf78b63f5b1455bbfab0c2bd7934b0aca5
src/main/java/com/nanometer/smartlab/controller/PersonalUseInfoController.java
@@ -9,6 +9,7 @@
import com.nanometer.smartlab.entity.SysLaboratory;
import com.nanometer.smartlab.entity.dto.ApplyListDto;
import com.nanometer.smartlab.entity.dto.PersonUseDetail;
import com.nanometer.smartlab.entity.enumtype.ArrivalStatus;
import com.nanometer.smartlab.service.SysLaboratoryService;
import com.nanometer.smartlab.util.FacesUtils;
import com.nanometer.smartlab.util.Utils;
@@ -54,6 +55,7 @@
    */
   private LazyDataModel<OpeReagentStatus> dataModel;
   private String reagentId;
    private String reagentName;
   private String reagentCode;
   private String applyPerson;
   private Date startTime;
@@ -117,8 +119,28 @@
   public void reagentReturn(){
      try {
         List<OpeReagentStatus> list=this.selectedList;
         opeReagentStatusService.batchUpdateStatusByCode(list);
         if (selectOne == null) {
            FacesUtils.warn("请选择单号");
            return;
         }
         //判断单子下的试剂是否全部 为 领用待入库-1,不是就不能取消领用
         List<PersonUseDetail> applyList = opeUseFlowService.getApplyInfo(selectOne.getReceiptNumber());
         boolean flag = applyList.stream().allMatch(pu ->
                  opeReagentStatusService.getOpeReagentStatusByReagentCode(pu.getReagentCode() ).getStatus()== ArrivalStatus.NOREGISTER);
         if (!flag) {
            FacesUtils.warn("试剂当前状态不可以取消领用");
            return;
         }
         //没有批次号不可以取消领用
         boolean flag1 = applyList.stream().allMatch(pu -> pu.getArticleNumber() != null);
         if (!flag1) {
            FacesUtils.warn("没有批次号不可以取消领用");
            return;
         }
         //取消领用
         opeReagentStatusService.batchUpdateStatusByCode(applyList);
         FacesUtils.info("已取消试剂");
      }catch (Exception e){
         FacesUtils.info("请选择数据");
@@ -244,11 +266,11 @@
                                       Map<String, Object> filters) {
               List<OpeUseFlow> list = null;
               try {
                  int count = opeUseFlowService.getPersonalUseInfoCount(reagentCode, getUserId(),startTime,endTime,receiptNumber,department,project);
                  int count = opeUseFlowService.getPersonalUseInfoCount(reagentCode, getUserId(),startTime,endTime,receiptNumber,department,project,applyPerson,reagentName);
                  this.setRowCount(count);
                  if (count > 0) {
                     list = opeUseFlowService.getPersonalUseInfoList
                           (reagentCode,  getUserId(),startTime,endTime ,receiptNumber,department,project,first,pageSize);
                           (reagentCode,  getUserId(),startTime,endTime ,receiptNumber,department,project,applyPerson,reagentName,first,pageSize);
                  }
               } catch (Exception e) {
                  logger.error(e);
@@ -365,4 +387,12 @@
   public void setPrintTable(Hashtable printTable) {
      this.printTable = printTable;
   }
    public String getReagentName() {
        return reagentName;
    }
    public void setReagentName(String reagentName) {
        this.reagentName = reagentName;
    }
}