李宇
2021-08-18 c3510da29a7974c6af7ff3de1ade3db429d6f848
src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java
@@ -1,7 +1,9 @@
package com.nanometer.smartlab.service;
import com.nanometer.smartlab.dao.SysLaboratoryDao;
import com.nanometer.smartlab.dao.SysUserDao;
import com.nanometer.smartlab.entity.SysLaboratory;
import com.nanometer.smartlab.entity.SysUser;
import com.nanometer.smartlab.entity.dto.LaboratoryVo;
import com.nanometer.smartlab.exception.AlarmCode;
import com.nanometer.smartlab.exception.AlarmException;
@@ -38,9 +40,11 @@
   @Resource(name = "sysLaboratoryDao")
   SysLaboratoryDao sysLaboratoryDao;
   @Resource
   SysUserDao sysUserDao;
   @Transactional(propagation = Propagation.REQUIRED)
   public List<SysLaboratory> getSysLaboratoryList(String type, String name, Integer first, Integer pageSize) {
   public List<SysLaboratory> getSysLaboratoryList(String type, String name,String project,Integer first, Integer pageSize) {
      try {
         Map<String, Object> params = new HashMap<String, Object>();
         if (StringUtils.isNotBlank(type)) {
@@ -49,6 +53,7 @@
         if (StringUtils.isNotBlank(name)) {
            params.put("name", "%" + name + "%");
         }
         params.put("project", project);
         params.put("first", first);
         params.put("pageSize", pageSize);
         return this.sysLaboratoryDao.getSysLaboratoryList(params);
@@ -60,7 +65,7 @@
   }
   @Transactional(propagation = Propagation.REQUIRED)
   public int getSysLaboratoryTotalCount(String type, String name) {
   public int getSysLaboratoryTotalCount(String type, String name,String project) {
      try {
         Map<String, Object> params = new HashMap<String, Object>();
         if (StringUtils.isNotBlank(type)) {
@@ -69,6 +74,7 @@
         if (StringUtils.isNotBlank(name)) {
            params.put("name", "%" + name + "%");
         }
         params.put("project", project);
         return this.sysLaboratoryDao.getSysLaboratoryTotalCount(params);
      } catch (DataAccessException e) {
         logger.error(e.getMessage(), e);
@@ -239,16 +245,18 @@
      map.put("barCode", "地址码");
      map.put("location", "地址");
      map.put("department", "部门");
      map.put("project", "课题组");
      ExcelUtils.export2Excel(list,"实验室信息",map);
   }
   @Override
   public List<Map> exportLabList(String type, String name) {
   public List<Map> exportLabList(String type, String name,String project) {
      Map<String,String> params = new HashMap<>();
      params.put("type", type);
      params.put("name", name);
      params.put("project", project);
      return sysLaboratoryDao.exportLabList(params);
   }
@@ -257,7 +265,26 @@
      return sysLaboratoryDao.getLaboratoryByProject(project);
    }
    @Override
   @Override
   public List<SysLaboratory> getSysLaboratoryListByUserId(String userId) {
      //1.根据用户的课题组获取实验室,没有就按照部门
      SysUser user = sysUserDao.getSysUser(userId);
      Map<String,Object> params = new HashMap<>();
      if (StringUtils.isNotBlank(user.getProject())){
         params.put("project", user.getProject());
         List<SysLaboratory> list = sysLaboratoryDao.getSysLaboratoryList(params);
         if (list.size() < 1) {
            return this.getSysLaboratoryListByDep(user.getDepartment());
         }else {
            return list;
         }
      }else {
         return this.getSysLaboratoryListByDep(user.getDepartment());
      }
   }
   @Override
   @Transactional(propagation = Propagation.REQUIRED)
   public List<SysLaboratory> getSysLaboratoryListByDep(String depId) {
      try {