From 8e2b983273b816b33e7456f6c30a2577d443fb43 Mon Sep 17 00:00:00 2001
From: lyfO_o <764716047@qq.com>
Date: 星期四, 22 四月 2021 10:26:44 +0800
Subject: [PATCH] 根据课题组展示库存情况

---
 src/main/java/com/nanometer/smartlab/service/OpeReagentStatusServiceImpl.java |   29 +++++++++++++++++++++++++++--
 1 files changed, 27 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/nanometer/smartlab/service/OpeReagentStatusServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/OpeReagentStatusServiceImpl.java
index f4c3e7a..8b14efa 100644
--- a/src/main/java/com/nanometer/smartlab/service/OpeReagentStatusServiceImpl.java
+++ b/src/main/java/com/nanometer/smartlab/service/OpeReagentStatusServiceImpl.java
@@ -17,6 +17,7 @@
 import org.springframework.dao.DataAccessException;
 import org.springframework.dao.DataIntegrityViolationException;
 import org.springframework.dao.DuplicateKeyException;
+import org.springframework.stereotype.Repository;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Propagation;
 import org.springframework.transaction.annotation.Transactional;
@@ -62,6 +63,8 @@
 	private OpeUseFlowDao opeUseFlowDao;
 	@Resource
 	private OpeWarehouseReserveDao opeWarehouseReserveDao;
+	@Resource
+	private BaseRoleService baseRoleService;
 
     @Resource(name="baseMetaDao")
     BaseMetaDao baseMetaDao;
@@ -106,7 +109,18 @@
 			params.put("name", "%" + name + "%");
 			params.put("articleNumber", articleNumber);
 			params.put("status", status);
-			addParamByUserId(userId, params);
+//			addParamByUserId(userId, params);
+			if (StringUtils.isNotBlank(userId)) {
+				SysUser sysUser = sysUserService.getSysUser(userId);
+				BaseRole baseRole = baseRoleService.getBaseRole(sysUser.getRoleId());
+				//不是系统管理员 根据用户的课题组判断可视(用户所在课题组是否 在实验室的课题组下)
+				if (!"系统管理员".equals(baseRole.getName())) {
+					if (StringUtils.isBlank(sysUser.getProject())) {
+						return null;
+					}
+					params.put("project", sysUser.getProject());
+				}
+			}
 			if (StringUtils.isNotBlank(reagentCode)) {
 				params.put("reagentCode", "%" + reagentCode + "%");
 			}
@@ -127,8 +141,19 @@
 			Map<String, Object> params = new HashMap<String, Object>();
 			params.put("name", "%" + name + "%");
 
-			addParamByUserId(userId, params);
+//			addParamByUserId(userId, params);
 			params.put("articleNumber", articleNumber);
+			if (StringUtils.isNotBlank(userId)) {
+				SysUser sysUser = sysUserService.getSysUser(userId);
+				BaseRole baseRole = baseRoleService.getBaseRole(sysUser.getRoleId());
+				//不是系统管理员 根据用户的课题组判断可视(用户所在课题组是否 在实验室的课题组下)
+				if (!"系统管理员".equals(baseRole.getName())) {
+					if (StringUtils.isBlank(sysUser.getProject())) {
+						return 0;
+					}
+					params.put("project", sysUser.getProject());
+				}
+			}
 			if (StringUtils.isNotBlank(reagentCode)) {
 				params.put("reagentCode", "%" + reagentCode + "%");
 			}

--
Gitblit v1.9.2