From e57dc5878ff7170e2a8d8da145289ad1abcd70f8 Mon Sep 17 00:00:00 2001 From: gdg <764716047@qq.com> Date: 星期四, 28 一月 2021 16:47:52 +0800 Subject: [PATCH] 申领人实验室搜索逻辑修改 ->优先课题组下的实验室,如果没有则搜索部门下的实验室 --- src/main/java/com/nanometer/smartlab/dao/SysLaboratoryDao.xml | 3 +++ src/main/java/com/nanometer/smartlab/service/SysLaboratoryService.java | 4 ++++ src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java | 21 ++++++++++++++++++++- src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java | 4 +++- 4 files changed, 30 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java b/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java index c7697d0..279535c 100644 --- a/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java +++ b/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java @@ -2682,7 +2682,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; diff --git a/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryDao.xml b/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryDao.xml index 0a59ab5..a557fe8 100644 --- a/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryDao.xml +++ b/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryDao.xml @@ -31,6 +31,9 @@ <if test="department != null and department != ''"> and su.department = #{department} </if> + <if test="project != null and project != ''"> + and su.project like concat("%",#{project},"%") + </if> </sql> <select id="getSysLaboratory" parameterType="java.lang.String" resultMap="SysLaboratory" > diff --git a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryService.java b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryService.java index b7733c8..a206039 100644 --- a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryService.java +++ b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryService.java @@ -38,4 +38,8 @@ List<Map> exportLabList(String type, String name); List<LaboratoryVo.Laboratory> getLaboratoryByProject(String project); + + List<SysLaboratory> getSysLaboratoryListByUserId(String userId); + + } diff --git a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java index b169e9f..9abf0fc 100644 --- a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java +++ b/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,6 +40,8 @@ @Resource(name = "sysLaboratoryDao") SysLaboratoryDao sysLaboratoryDao; + @Resource + SysUserDao sysUserDao; @Transactional(propagation = Propagation.REQUIRED) public List<SysLaboratory> getSysLaboratoryList(String type, String name, Integer first, Integer pageSize) { @@ -257,7 +261,22 @@ return sysLaboratoryDao.getLaboratoryByProject(project); } - @Override + @Override + public List<SysLaboratory> getSysLaboratoryListByUserId(String userId) { + + //1.根据用户的课题组获取实验室,没有就按照部门 + SysUser user = sysUserDao.getSysUser(userId); + Map<String,Object> params = new HashMap<>(); + params.put("project", user.getProject()); + List<SysLaboratory> list = sysLaboratoryDao.getSysLaboratoryList(params); + if (list.size() < 1) { + return this.getSysLaboratoryListByDep(user.getDepartment()); + }else{ + return list; + } + } + + @Override @Transactional(propagation = Propagation.REQUIRED) public List<SysLaboratory> getSysLaboratoryListByDep(String depId) { try { -- Gitblit v1.9.2