From c3510da29a7974c6af7ff3de1ade3db429d6f848 Mon Sep 17 00:00:00 2001
From: 李宇 <986321569@qq.com>
Date: 星期三, 18 八月 2021 14:27:59 +0800
Subject: [PATCH] 申购管理申请履历显示所有历史单据,提交时如有无效试剂耗材报错

---
 src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java |   39 ++++++++++++++++++++++++++++++++++++---
 1 files changed, 36 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java
index e4c01c7..e39a5fd 100644
--- a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java
+++ b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java
@@ -1,7 +1,10 @@
 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;
 import com.nanometer.smartlab.exception.BusinessException;
@@ -37,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)) {
@@ -48,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);
@@ -59,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)) {
@@ -68,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);
@@ -238,19 +245,45 @@
 		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);
 	}
 
+    @Override
+    public List<LaboratoryVo.Laboratory> getLaboratoryByProject(String project) {
+		return sysLaboratoryDao.getLaboratoryByProject(project);
+    }
+
+	@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) {

--
Gitblit v1.9.2