src/main/java/com/nanometer/smartlab/controller/LaboratoryMngController.java
@@ -2,16 +2,14 @@ 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 javax.annotation.Resource; import com.nanometer.smartlab.entity.BaseMeta; import com.nanometer.smartlab.entity.SysReagent; import com.nanometer.smartlab.service.BaseMetaService; import com.nanometer.smartlab.service.SysProjectService; import org.apache.log4j.Logger; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.Row; @@ -46,6 +44,8 @@ private SysLaboratoryService sysLaboratoryService; @Resource private BaseMetaService baseMetaService; @Resource private SysProjectService sysProjectService; /** * 数据源 */ @@ -162,6 +162,20 @@ 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); src/main/java/com/nanometer/smartlab/dao/SysProjectDao.java
@@ -26,4 +26,7 @@ //获取不重复的课题组名 List<SysProject> selectDistinctProjects(); //课题组是否存在 int selectByProject(String project); } src/main/java/com/nanometer/smartlab/dao/SysProjectDao.xml
@@ -123,6 +123,13 @@ limit #{first}, #{pageSize} </if> </select> <select id="selectByProject" resultType="java.lang.Integer"> select count(0) from sys_project where valid_flag = 1 and project = #{0} </select> <insert id="insertSysProject" parameterType="com.nanometer.smartlab.entity.SysProject"> insert into sys_project(id, project_id,project_name,sys_user_id,remark,valid_flag,creater_user,create_time,project) src/main/java/com/nanometer/smartlab/service/SysProjectService.java
@@ -34,4 +34,7 @@ void importProject(FileUploadEvent event, SysUser user) throws Exception; List<SysProject> getAll(); //课题组是否存在 Boolean isExistProject(String project); } src/main/java/com/nanometer/smartlab/service/SysProjectServiceImpl.java
@@ -245,6 +245,11 @@ } @Override public Boolean isExistProject(String project) { return sysProjectDao.selectByProject(project) > 0; } @Override public List<SysProject> getSysProjectList(int first, int pageSize) { Map<String, Object> params = new HashMap<>(); params.put("first", first); src/main/webapp/resources/template/实验室导入模板.xlsxBinary files differ