From 47a751cb301d05276ae5d75145d57b2d090fe4e1 Mon Sep 17 00:00:00 2001
From: kongzy <kongzy>
Date: Mon, 01 Jul 2024 10:58:35 +0800
Subject: [PATCH] change
---
src/main/java/com/nanometer/smartlab/controller/LaboratoryMngController.java | 103 ++++++++++++++++++++++++++++++++++++---------------
1 files changed, 73 insertions(+), 30 deletions(-)
diff --git a/src/main/java/com/nanometer/smartlab/controller/LaboratoryMngController.java b/src/main/java/com/nanometer/smartlab/controller/LaboratoryMngController.java
index 5153a26..dce2411 100644
--- a/src/main/java/com/nanometer/smartlab/controller/LaboratoryMngController.java
+++ b/src/main/java/com/nanometer/smartlab/controller/LaboratoryMngController.java
@@ -2,16 +2,18 @@
import java.io.InputStream;
import java.math.BigDecimal;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
+import java.util.stream.Collectors;
import javax.annotation.Resource;
import com.nanometer.smartlab.entity.BaseMeta;
+import com.nanometer.smartlab.entity.SysProject;
import com.nanometer.smartlab.entity.SysReagent;
import com.nanometer.smartlab.service.BaseMetaService;
+import com.nanometer.smartlab.service.SysLaboratoryContainerService;
+import com.nanometer.smartlab.service.SysProjectService;
+import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Row;
@@ -45,7 +47,11 @@
@Resource
private SysLaboratoryService sysLaboratoryService;
@Resource
+ private SysLaboratoryContainerService sysLaboratoryContainerService;
+ @Resource
private BaseMetaService baseMetaService;
+ @Resource
+ private SysProjectService sysProjectService;
/**
* 数据源
*/
@@ -53,13 +59,14 @@
/**
* 数据模型
*/
- private SysLaboratory sysLaboratory;
+ private SysLaboratory sysLaboratory=new SysLaboratory();
/**
* 选中的list
*/
private List<SysLaboratory> selectedList;
private String type;
private String name;
+ private String project;
private int action;
@@ -82,9 +89,22 @@
RequestContext.getCurrentInstance().execute("PF('dialog').show()");
}
+ public String getProjectName(String project){
+ if(StringUtils.isBlank(project)){
+ return "";
+ }
+ List<String> idstrs = Arrays.asList(project.split(","));
+ List<Long> ids=idstrs.stream().map(item -> Long.valueOf(item)).collect(Collectors.toList());
+ List<SysProject> projects=this.sysProjectService.getProjectByIds(ids);
+ if(projects==null||projects.size()==0){
+ return "";
+ }
+ List<String> projectNames=projects.stream().map(SysProject::getProjectName).collect(Collectors.toList());
+ return String.join(",",projectNames);
+ }
public void exportLab2Excel(){
try {
- List<Map> list = sysLaboratoryService.exportLabList(type, name);
+ List<SysLaboratory> list = sysLaboratoryService.exportLabList(type, name,project);
sysLaboratoryService.exportLab2Excel(list);
FacesUtils.info("导出成功");
}catch (Exception e){
@@ -94,7 +114,6 @@
}
public void uploadFile(FileUploadEvent event) {
- System.out.println("=========导入开始=====");
List<BaseMeta> typeList=baseMetaService.getBaseMetaList("laboratory_type");
List<BaseMeta> departList=baseMetaService.getBaseMetaList("user_department");
try{
@@ -150,10 +169,10 @@
}
valuesList.add(cellInfo);
-
-
}
- System.out.println("value : "+valuesList);
+ if (valuesList.size() != 8){
+ break;
+ }
SysLaboratory laboratory=new SysLaboratory();
laboratory.setType(returnTypeId(typeList,valuesList.get(0)));
laboratory.setName(valuesList.get(1));
@@ -162,10 +181,23 @@
laboratory.setLocation1(valuesList.get(4));
laboratory.setLocation2(valuesList.get(5));
laboratory.setDepartment(returnDepartId(departList,valuesList.get(6)));
+
+ if (valuesList.size() > 7 && !valuesList.get(7).replace(" ","").isEmpty()){
+ List<String> projects = Arrays.asList(valuesList.get(7).split(","));
+ for (String project : projects) {
+ //不存再就直接推出
+ if (!sysProjectService.isExistProject(project)) {
+ throw new Exception("课题组不存在,(" + i + "行)");
+ }
+ }
+ //都存在就设置
+ laboratory.setProject(valuesList.get(7).replace(" ",""));
+ }else{
+ laboratory.setProject(null);
+ }
sysLaboratories.add(laboratory);
}
sysLaboratoryService.insertSysReagentList(sysLaboratories);
- System.out.println("=========导入结束=====");
FacesUtils.info("导入成功。");
}catch (Exception ex) {
ex.printStackTrace();
@@ -173,8 +205,8 @@
}
}
- public String returnTypeId(List<BaseMeta> list,String name){
- String id="";
+ public Long returnTypeId(List<BaseMeta> list,String name){
+ Long id=null;
for(int i=0;i<list.size();i++){
if(name.equals(list.get(i).getMetaValue())){
id=list.get(i).getId();
@@ -183,8 +215,8 @@
return id;
}
- public String returnDepartId(List<BaseMeta> list,String name){
- String id="";
+ public Long returnDepartId(List<BaseMeta> list,String name){
+ Long id=null;
for(int i=0;i<list.size();i++){
if(name.equals(list.get(i).getMetaValue())){
id=list.get(i).getId();
@@ -227,8 +259,8 @@
}
//实体类重新获取项目组信息
- sysLaboratory.setProject(null);
- sysLaboratory.getProject();
+// sysLaboratory.setProject(null);
+// sysLaboratory.getProject();
this.sysLaboratoryService.updateSysLaboratory(sysLaboratory);
FacesUtils.info("修改成功。");
@@ -248,6 +280,7 @@
}
this.sysLaboratoryService.deleteSysLaboratory(this.selectedList);
+ this.sysLaboratoryContainerService.delBySlcIds(this.selectedList);
FacesUtils.info("删除成功。");
} catch (Exception e) {
@@ -265,11 +298,12 @@
Map<String, Object> filters) {
List<SysLaboratory> list = null;
try {
- int count = sysLaboratoryService.getSysLaboratoryTotalCount(type, name);
+ int count = sysLaboratoryService.getSysLaboratoryTotalCount(type, name,project);
this.setRowCount(count);
if (count > 0) {
- list = sysLaboratoryService.getSysLaboratoryList(type, name, first, pageSize);
+ list = sysLaboratoryService.getSysLaboratoryList(type, name,project, first, pageSize);
}
+ selectedList = new ArrayList<> ();
} catch (Exception e) {
logger.error(e);
}
@@ -278,17 +312,18 @@
@Override
public SysLaboratory getRowData(String rowKey) {
- Iterator<SysLaboratory> iterator = this.iterator();
- if (iterator != null) {
- SysLaboratory su = null;
- while (iterator.hasNext()) {
- su = iterator.next();
- if (rowKey.equals(su.getId())) {
- return su;
- }
- }
- }
- return null;
+// Iterator<SysLaboratory> iterator = this.iterator();
+// if (iterator != null) {
+// SysLaboratory su = null;
+// while (iterator.hasNext()) {
+// su = iterator.next();
+// if (rowKey.equals(su.getId())) {
+// return su;
+// }
+// }
+// }
+ Long id=Long.valueOf(rowKey);
+ return sysLaboratoryService.getSysLaboratory(id);
}
};
}
@@ -330,4 +365,12 @@
public void setType(String type) {
this.type = type;
}
+
+ public String getProject() {
+ return project;
+ }
+
+ public void setProject(String project) {
+ this.project = project;
+ }
}
--
Gitblit v1.9.2