From f4d506014035a2b0f0134068418525bb7458cc60 Mon Sep 17 00:00:00 2001
From: gdg <764716047@qq.com>
Date: 星期三, 09 十二月 2020 15:56:51 +0800
Subject: [PATCH] 模块:主控设备管理 新增:导出 提出:秦老师

---
 src/main/java/com/nanometer/smartlab/service/SysControllerServiceImpl.java      |   20 +++++++++++++++++++-
 src/main/java/com/nanometer/smartlab/dao/SysControllerDao.xml                   |   13 +++++++++++++
 src/main/java/com/nanometer/smartlab/dao/SysControllerDao.java                  |    2 ++
 src/main/java/com/nanometer/smartlab/service/SysControllerService.java          |    4 ++++
 src/main/java/com/nanometer/smartlab/controller/SysControllerMngController.java |   12 ++++++++++--
 5 files changed, 48 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/nanometer/smartlab/controller/SysControllerMngController.java b/src/main/java/com/nanometer/smartlab/controller/SysControllerMngController.java
index cac7f40..ba6d579 100644
--- a/src/main/java/com/nanometer/smartlab/controller/SysControllerMngController.java
+++ b/src/main/java/com/nanometer/smartlab/controller/SysControllerMngController.java
@@ -134,6 +134,16 @@
         }
     }
 
+    public void export2Excel(){
+        List<Map> list = sysControllerService.exportExcelList(name, code);
+        try{
+            sysControllerService.export2Excel(list);
+        }catch (Exception e){
+            e.printStackTrace();
+            FacesUtils.warn("导出失败");
+        }
+    }
+
     public LazyDataModel<SysController> getDataModel() {
         if (this.dataModel == null) {
             this.dataModel = new LazyDataModel<SysController>() {
@@ -171,8 +181,6 @@
 
         return dataModel;
     }
-
-
 
     public String getName() {
 		return name;
diff --git a/src/main/java/com/nanometer/smartlab/dao/SysControllerDao.java b/src/main/java/com/nanometer/smartlab/dao/SysControllerDao.java
index a8496f5..b8ae8d9 100644
--- a/src/main/java/com/nanometer/smartlab/dao/SysControllerDao.java
+++ b/src/main/java/com/nanometer/smartlab/dao/SysControllerDao.java
@@ -26,4 +26,6 @@
     List<SysController> getSysControllerList(Map params);
     
     int deleteSysControllers(List<Integer> ids);
+
+    List<Map> exportExcelList(Map params);
 }
diff --git a/src/main/java/com/nanometer/smartlab/dao/SysControllerDao.xml b/src/main/java/com/nanometer/smartlab/dao/SysControllerDao.xml
index 18e02d2..1141925 100644
--- a/src/main/java/com/nanometer/smartlab/dao/SysControllerDao.xml
+++ b/src/main/java/com/nanometer/smartlab/dao/SysControllerDao.xml
@@ -52,6 +52,19 @@
     </if>
   </select>
 
+  <select id="exportExcelList" parameterType="java.util.Map" resultType="java.util.Map">
+    select sc.controller_name name,sc.controller_code code,b.meta_value type from sys_controller sc
+    left join base_meta b on b.id=sc.type
+    where sc.valid_flag = 1
+    <if test="code != null and code != ''">
+      and sc.controller_code like concat ("%",#{code},"%")
+    </if>
+    <if test="name != null and name != ''">
+      and sc.controller_name like concat ("%",#{name},"%")
+    </if>
+    order by create_time desc
+  </select>
+
   <insert id="insertSysController" parameterType="com.nanometer.smartlab.entity.SysController">
     insert into sys_controller(type,controller_code, controller_name, valid_flag, create_time, update_time)
     values (#{type},#{controllerCode}, #{controllerName}, #{validFlag}, #{createTime}, #{updateTime})
diff --git a/src/main/java/com/nanometer/smartlab/service/SysControllerService.java b/src/main/java/com/nanometer/smartlab/service/SysControllerService.java
index 38ff373..3d656ea 100644
--- a/src/main/java/com/nanometer/smartlab/service/SysControllerService.java
+++ b/src/main/java/com/nanometer/smartlab/service/SysControllerService.java
@@ -1,6 +1,7 @@
 package com.nanometer.smartlab.service;
 
 import java.util.List;
+import java.util.Map;
 
 import com.nanometer.smartlab.entity.SysController;
 import org.primefaces.event.FileUploadEvent;
@@ -27,4 +28,7 @@
 
     void uploadFile(FileUploadEvent event) throws Exception;
 
+    List<Map> exportExcelList(String name, String code);
+
+    void export2Excel(List<Map> list) throws  Exception;
 }
diff --git a/src/main/java/com/nanometer/smartlab/service/SysControllerServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/SysControllerServiceImpl.java
index a1c6c0f..490e384 100644
--- a/src/main/java/com/nanometer/smartlab/service/SysControllerServiceImpl.java
+++ b/src/main/java/com/nanometer/smartlab/service/SysControllerServiceImpl.java
@@ -10,6 +10,7 @@
 import com.nanometer.smartlab.entity.BaseMeta;
 import com.nanometer.smartlab.entity.SysLaboratoryContainer;
 import com.nanometer.smartlab.entity.enumtype.ValidFlag;
+import com.nanometer.smartlab.util.ExcelUtils;
 import org.apache.commons.lang.StringUtils;
 import org.apache.log4j.Logger;
 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
@@ -200,7 +201,24 @@
 
     }
 
-    @Override
+	@Override
+	public List<Map> exportExcelList(String name, String code) {
+		Map<String, String> params = new HashMap<>();
+		params.put("name", name);
+		params.put("code", code);
+		return sysControllerDao.exportExcelList(params);
+	}
+
+	@Override
+	public void export2Excel(List<Map> list) throws Exception {
+		Map<String, String> map = new LinkedHashMap<>();
+		map.put("name", "设备名称");
+		map.put("code", "设备代码");
+		map.put("type", "设备类型");
+		ExcelUtils.export2Excel(list,"主控设备信息",map);
+	}
+
+	@Override
 	public SysController getSysController(Integer id) {
 		try {
 			return this.sysControllerDao.getSysController(id);

--
Gitblit v1.9.2