From 47a751cb301d05276ae5d75145d57b2d090fe4e1 Mon Sep 17 00:00:00 2001
From: kongzy <kongzy>
Date: 星期一, 01 七月 2024 10:58:35 +0800
Subject: [PATCH] change

---
 src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java |   66 +++++++++++++++++++++++----------
 1 files changed, 46 insertions(+), 20 deletions(-)

diff --git a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java
index 2fe86b9..e5fb743 100644
--- a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java
+++ b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java
@@ -3,6 +3,7 @@
 import com.nanometer.smartlab.dao.SysLaboratoryDao;
 import com.nanometer.smartlab.dao.SysUserDao;
 import com.nanometer.smartlab.entity.SysLaboratory;
+import com.nanometer.smartlab.entity.SysProject;
 import com.nanometer.smartlab.entity.SysUser;
 import com.nanometer.smartlab.entity.dto.LaboratoryVo;
 import com.nanometer.smartlab.exception.AlarmCode;
@@ -24,6 +25,7 @@
 
 import javax.annotation.Resource;
 import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * Created by cmower on 17/11/20.
@@ -105,7 +107,7 @@
 		}
 	}
 
-	public SysLaboratory getSysLaboratory(String id) {
+	public SysLaboratory getSysLaboratory(Long id) {
 		try {
 			return this.sysLaboratoryDao.getSysLaboratory(id);
 		} catch (DataAccessException e) {
@@ -115,7 +117,7 @@
 		}
 	}
 
-	public SysLaboratory getSysLaboratorySimpleInfo(String id) {
+	public SysLaboratory getSysLaboratorySimpleInfo(Long id) {
 		try {
 			return this.sysLaboratoryDao.getSysLaboratorySimpleInfo(id);
 		} catch (DataAccessException e) {
@@ -127,9 +129,9 @@
 
 	public SysLaboratory insertSysLaboratory(SysLaboratory sysLaboratory) {
 		try {
-			if (sysLaboratory.getId() == null) {
-				sysLaboratory.setId(IDUtils.uuid());
-			}
+//			if (sysLaboratory.getId() == null) {
+//				sysLaboratory.setId(IDUtils.uuid());
+//			}
 			this.sysLaboratoryDao.insertSysLaboratory(sysLaboratory);
 			return sysLaboratory;
 		} catch (DuplicateKeyException ex) {
@@ -172,7 +174,7 @@
 				return false;
 			}
 
-			List<String> ids = new ArrayList<String>();
+			List<Long> ids = new ArrayList<Long>();
 			for (SysLaboratory sysLaboratory : sysLaboratoryList) {
 				ids.add(sysLaboratory.getId());
 			}
@@ -200,7 +202,7 @@
 	}
 
 
-	public boolean isSysLaboratoryExist(String barCode, String editId) {
+	public boolean isSysLaboratoryExist(String barCode, Long editId) {
 		try {
 			Map<String, Object> params = new HashMap<String, Object>();
 			params.put("barCode", barCode);
@@ -245,9 +247,9 @@
 					sysLaboratory.setId(sysLaboratoryTmpl.getId());
 					this.sysLaboratoryDao.updateLabExport(sysLaboratory);
 				}else{
-					if (sysLaboratoryTmpl == null) {
-						sysLaboratory.setId(IDUtils.uuid());
-					}
+//					if (sysLaboratoryTmpl == null) {
+//						sysLaboratory.setId(IDUtils.uuid());
+//					}
 					this.sysLaboratoryDao.insertSysLaboratory(sysLaboratory);
 				}
 			}
@@ -265,7 +267,7 @@
 	}
 
     @Override
-    public void exportLab2Excel(List<Map> list) throws Exception {
+    public void exportLab2Excel(List<SysLaboratory> list) throws Exception {
 
 		Map<String, String> map = new LinkedHashMap<>();
 		map.put("type", "类型");
@@ -275,13 +277,30 @@
 		map.put("location", "地址");
 		map.put("department", "部门");
 		map.put("project", "课题组");
-		ExcelUtils.export2Excel(list,"实验室信息",map);
+		List<Map> labList=new ArrayList<>();
+		for(SysLaboratory sysLaboratory:list){
+			Map<String,Object> labmap=new HashMap<>();
+			labmap.put("type",sysLaboratory.getTypeName());
+			labmap.put("name",sysLaboratory.getName());
+			labmap.put("infoCode",sysLaboratory.getInfoCode());
+			labmap.put("barCode",sysLaboratory.getBarCode());
+			labmap.put("location",sysLaboratory.getLocation());
+			labmap.put("department",sysLaboratory.getDepartmentName());
+			List<SysProject> projects=sysLaboratory.getProjects();
+			List<String> projectNames=new ArrayList<>();
+			if(projects!=null&&projects.size()>0){
+				projectNames=projects.stream().map(SysProject::getProjectName).collect(Collectors.toList());
+			}
+			labmap.put("project",String.join(",",projectNames));
+			labList.add(labmap);
+		}
+		ExcelUtils.export2Excel(labList,"实验室信息",map);
 
 
 	}
 
 	@Override
-	public List<Map> exportLabList(String type, String name,String project) {
+	public List<SysLaboratory> exportLabList(String type, String name,String project) {
 		Map<String,String> params = new HashMap<>();
 		params.put("type", type);
 		params.put("name", name);
@@ -290,17 +309,17 @@
 	}
 
     @Override
-    public List<LaboratoryVo.Laboratory> getLaboratoryByProject(String project) {
-		return sysLaboratoryDao.getLaboratoryByProject(project);
+    public List<LaboratoryVo.Laboratory> getLaboratoryByProject(Long projectId) {
+		return sysLaboratoryDao.getLaboratoryByProject(projectId);
     }
 
 	@Override
-	public List<SysLaboratory> getSysLaboratoryListByUserId(String userId) {
+	public List<SysLaboratory> getSysLaboratoryListByUserId(Long userId) {
 		//1.根据用户的课题组获取实验室,没有就按照部门
 		SysUser user = sysUserDao.getSysUser(userId);
 		Map<String,Object> params = new HashMap<>();
-		if (StringUtils.isNotBlank(user.getProject())){
-			params.put("project", user.getProject());
+		if (user.getProjectId()!=null){
+			params.put("project", user.getProjectId());
 			List<SysLaboratory> list = sysLaboratoryDao.getSysLaboratoryList(params);
 			if (list.size() < 1) {
 				return this.getSysLaboratoryListByDep(user.getDepartment());
@@ -328,10 +347,17 @@
 	}
 
 	@Override
-	public List<SysLaboratory> getSysLaboratoryListByDep(String depId) {
+	public List<SysLaboratory> getLaboratoryByProjectId(Long projectId) {
+		return sysLaboratoryDao.getLaboratoryByProjectId(projectId);
+	}
+
+
+
+	@Override
+	public List<SysLaboratory> getSysLaboratoryListByDep(Long depId) {
 		try {
 			Map<String, Object> params = new HashMap<String, Object>();
-			if (StringUtils.isNotBlank(depId)) {
+			if (depId!=null) {
 				params.put("department", depId);
 			}
 			return this.sysLaboratoryDao.getSysLaboratoryList(params);

--
Gitblit v1.9.2