kongzy
2023-11-01 dd8795a2675e32b25abe98f644f80d5f72fadb90
src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerServiceImpl.java
@@ -1,13 +1,17 @@
package com.nanometer.smartlab.service;
import java.util.*;
import javax.annotation.Resource;
import com.google.common.collect.ImmutableBiMap;
import com.nanometer.smartlab.entity.*;
import com.nanometer.smartlab.entity.enumtype.ArrivalStatus;
import com.nanometer.smartlab.dao.SysLaboratoryContainerDao;
import com.nanometer.smartlab.entity.SysLaboratory;
import com.nanometer.smartlab.entity.SysLaboratoryContainer;
import com.nanometer.smartlab.exception.AlarmCode;
import com.nanometer.smartlab.exception.AlarmException;
import com.nanometer.smartlab.exception.BusinessException;
import com.nanometer.smartlab.exception.ExceptionEnumCode;
import com.nanometer.smartlab.model.CommonPage;
import com.nanometer.smartlab.util.ExcelUtils;
import com.nanometer.smartlab.util.IDUtils;
import com.nanometer.smartlab.util.MessageUtil;
import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;
import org.springframework.dao.DataAccessException;
@@ -17,13 +21,8 @@
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import com.nanometer.smartlab.dao.SysLaboratoryContainerDao;
import com.nanometer.smartlab.exception.AlarmCode;
import com.nanometer.smartlab.exception.AlarmException;
import com.nanometer.smartlab.exception.BusinessException;
import com.nanometer.smartlab.exception.ExceptionEnumCode;
import com.nanometer.smartlab.util.IDUtils;
import com.nanometer.smartlab.util.MessageUtil;
import javax.annotation.Resource;
import java.util.*;
/**
 * Created by cmower on 17/11/20.
@@ -60,6 +59,38 @@
         throw new BusinessException(ExceptionEnumCode.DB_ERR,
               MessageUtil.getMessageByCode(ExceptionEnumCode.DB_ERR.getCode()), e);
      }
   }
   @Override
   public CommonPage<SysLaboratoryContainer> getSysLaboratoryContainerList(Integer pageNum, Integer pageSize, String name, String controllerName) {
      if(pageNum==null||pageNum<1){
         pageNum=1;
      }
      if(pageSize==null||pageSize<1){
         pageSize=10;
      }
      if(pageSize>50){
         pageSize=50;
      }
      Map<String, Object> params = new HashMap<>();
      if (StringUtils.isNotBlank(name)) {
         params.put("laboratoryName","%" + name+ "%");
      }
      if (StringUtils.isNotBlank(controllerName)) {
         params.put("controllerName", "%" + controllerName + "%");
      }
      params.put("first", (pageNum-1)*pageSize);
      params.put("pageSize", pageSize);
      CommonPage commonPage=new CommonPage();
      commonPage.setPageNum(pageNum);
      commonPage.setPageSize(pageSize);
      Long total=new Long(sysLaboratoryContainerDao.getSysLaboratoryContainerTotalCount(params));
      commonPage.setTotal(total);
      commonPage.setTotalPage(CommonPage.getTotalPage(total,pageSize));
      List<SysLaboratoryContainer> sysReagents=sysLaboratoryContainerDao.getSysLaboratoryContainerSimpleInfoList(params);
      commonPage.setList(sysReagents);
      return commonPage;
   }
   @Transactional(propagation = Propagation.REQUIRED)
@@ -187,8 +218,7 @@
         Map<String, Object> params = new HashMap<String, Object>();
         params.put("containerCode", containerCode);
         params.put("editId", editId);
         int count = this.sysLaboratoryContainerDao.getSysLaboratoryContainerTotalCount(params);
         int count = this.sysLaboratoryContainerDao.getSysLaboratoryContainerExist(params);
         return count > 0;
      } catch (DataAccessException e) {
         logger.error(e.getMessage(), e);
@@ -302,4 +332,28 @@
      return null;
    }
   @Override
   public boolean delBySlcIds(List<SysLaboratory> sysLaboratoryList) {
      try {
         if (sysLaboratoryList == null || sysLaboratoryList.size() == 0) {
            return false;
         }
         List<String> ids = new ArrayList<String>();
         for (SysLaboratory sysLaboratory : sysLaboratoryList) {
            ids.add(sysLaboratory.getId());
         }
         int row = this.sysLaboratoryContainerDao.delSlcIds(ids);
         return row != 0;
      } catch (DataIntegrityViolationException ex) {
         logger.warn(ex.getMessage(), ex);
         throw new AlarmException(AlarmCode.DATA_CONFICT, MessageUtil.getMessage(AlarmCode.DATA_CONFICT.getCode()));
      } catch (DataAccessException ex) {
         logger.error(ex.getMessage(), ex);
         throw new BusinessException(ExceptionEnumCode.DB_ERR,
               MessageUtil.getMessageByCode(ExceptionEnumCode.DB_ERR.getCode()), ex);
      }
   }
}