|
@@ -1,20 +1,23 @@
|
|
|
package com.ruoyi.web.controller.system;
|
|
|
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.HashMap;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
+import java.util.*;
|
|
|
+import java.util.concurrent.atomic.AtomicInteger;
|
|
|
import java.util.stream.Collectors;
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
|
|
|
+import cn.hutool.poi.excel.ExcelReader;
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONArray;
|
|
|
+import com.ruoyi.common.config.RuoYiConfig;
|
|
|
+import com.ruoyi.common.constant.Constants;
|
|
|
import com.ruoyi.common.core.domain.entity.SysDept;
|
|
|
import com.ruoyi.common.core.domain.entity.SysDictData;
|
|
|
import com.ruoyi.common.core.domain.entity.SysUser;
|
|
|
import com.ruoyi.common.utils.DateUtils;
|
|
|
import com.ruoyi.common.utils.JSUtils;
|
|
|
import com.ruoyi.common.utils.ServletUtils;
|
|
|
+import com.ruoyi.common.utils.file.FileUploadUtils;
|
|
|
+import com.ruoyi.common.utils.file.FileUtils;
|
|
|
import com.ruoyi.system.domain.TableDetection;
|
|
|
import com.ruoyi.system.domain.TblDetectionLog;
|
|
|
import com.ruoyi.system.service.ISysDeptService;
|
|
@@ -38,6 +41,9 @@ import com.ruoyi.system.domain.TblFacilities;
|
|
|
import com.ruoyi.system.service.ITblFacilitiesService;
|
|
|
import com.ruoyi.common.utils.poi.ExcelUtil;
|
|
|
import com.ruoyi.common.core.page.TableDataInfo;
|
|
|
+import org.springframework.web.multipart.MultipartFile;
|
|
|
+
|
|
|
+import static com.ruoyi.common.utils.file.FileUploadUtils.getAbsoluteFile;
|
|
|
|
|
|
/**
|
|
|
* 设施Controller
|
|
@@ -77,6 +83,128 @@ public class TblFacilitiesController extends BaseController
|
|
|
return getDataTable(list);
|
|
|
}
|
|
|
|
|
|
+ @PostMapping("/upload")
|
|
|
+ public AjaxResult uploadFile(MultipartFile file) throws Exception
|
|
|
+ {
|
|
|
+ try
|
|
|
+ {
|
|
|
+ // 上传文件路径
|
|
|
+ String filePath = RuoYiConfig.getUploadPath();
|
|
|
+ // 上传并返回新文件名称
|
|
|
+ String fileName = FileUploadUtils.upload(filePath, file);
|
|
|
+ if(fileName.contains(".xlsx")||fileName.contains(".xls")){
|
|
|
+ fileName = fileName.replace(Constants.RESOURCE_PREFIX+"/upload","");
|
|
|
+
|
|
|
+ ExcelReader reader = cn.hutool.poi.excel.ExcelUtil.getReader(getAbsoluteFile(RuoYiConfig.getUploadPath(), fileName).getAbsolutePath());
|
|
|
+ List<List<Object>> readAll = reader.read();
|
|
|
+ AtomicInteger index = new AtomicInteger();
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ SysDictData sysDictData = new SysDictData();
|
|
|
+ sysDictData = new SysDictData();
|
|
|
+ sysDictData.setDictType("sys_area");
|
|
|
+ List<SysDictData> list1 = list1 = sysDictDataService.selectDictDataList(sysDictData);
|
|
|
+ Map<String, String> areamap = new HashMap<>();
|
|
|
+ for (SysDictData d : list1
|
|
|
+ ) {
|
|
|
+ areamap.put( d.getDictLabel(),d.getDictValue());
|
|
|
+ }
|
|
|
+ sysDictData = new SysDictData();
|
|
|
+ sysDictData.setDictType("facilities_pstz");
|
|
|
+ list1 = sysDictDataService.selectDictDataList(sysDictData);
|
|
|
+ Map<String, String> facilities_pstz = new HashMap<>();
|
|
|
+ for (SysDictData d : list1
|
|
|
+ ) {
|
|
|
+ facilities_pstz.put(d.getDictLabel(),d.getDictValue());
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ List<SysDept> depts = deptService.selectDeptList(new SysDept());
|
|
|
+// Map<Long, SysDept> deptmap = new HashMap<>();
|
|
|
+// for (SysDept d : depts
|
|
|
+// ) {
|
|
|
+// deptmap.put(d.getDeptId(), d);
|
|
|
+// }
|
|
|
+ List<TblFacilities> facilities = new ArrayList<>();
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ readAll.forEach(i->{
|
|
|
+ if(index.getAndIncrement() >1){
|
|
|
+ if(i.size()>=34){
|
|
|
+ TblFacilities tblFacilities = new TblFacilities();
|
|
|
+ Map<String,Object> ext1 =new HashMap<>();
|
|
|
+ ext1.put("tz_id",i.get(1));
|
|
|
+ ext1.put("tz_ss_name",i.get(3));
|
|
|
+ ext1.put("tz_area_new",areamap.get(i.get(2)));
|
|
|
+ ext1.put("tz_ss_road",i.get(4));
|
|
|
+ ext1.put("tz_ss_pstz",facilities_pstz.get(i.get(5)));
|
|
|
+ ext1.put("tz_ss_road_se",i.get(6));
|
|
|
+ ext1.put("tz_ss_road_start",i.get(7));
|
|
|
+ ext1.put("tz_ss_road_end",i.get(8));
|
|
|
+ ext1.put("tz_ss_river",i.get(9));
|
|
|
+ ext1.put("tz_ssly",i.get(10));
|
|
|
+ ext1.put("tz_gwly",i.get(11));
|
|
|
+ ext1.put("tz_xlymc",i.get(12));
|
|
|
+ ext1.put("tz_pkbh",i.get(13));
|
|
|
+ ext1.put("tz_ss_dn",i.get(14));
|
|
|
+ ext1.put("tz_ss_data_length",i.get(15));
|
|
|
+ ext1.put("tz_ss_data_main_length",i.get(16));
|
|
|
+ ext1.put("tz_ss_data_minor_length",i.get(17));
|
|
|
+ ext1.put("tz_ss_data_jing",i.get(18));
|
|
|
+ ext1.put("tz_pfk",i.get(19));
|
|
|
+ ext1.put("tz_ss_data_ysk",i.get(20));
|
|
|
+ ext1.put("tz_bz_total",i.get(21));
|
|
|
+ ext1.put("tz_bz_dan",i.get(22));
|
|
|
+ ext1.put("tz_bz_shuang",i.get(23));
|
|
|
+ ext1.put("tz_bz_san",i.get(24));
|
|
|
+ ext1.put("tz_bz_si",i.get(25));
|
|
|
+ ext1.put("tz_bz_duo",i.get(26));
|
|
|
+ ext1.put("tz_ss_type",i.get(27));
|
|
|
+ ext1.put("tz_ss_info",i.get(28));
|
|
|
+ ext1.put("tz_jgsj",i.get(29));
|
|
|
+ ext1.put("tz_ss_time",i.get(30));
|
|
|
+ ext1.put("tz_ss_from",i.get(31));
|
|
|
+ ext1.put("tz_jssj",i.get(32));
|
|
|
+ if(i.get(33).toString().length()>0){
|
|
|
+ List<String> deptss = Arrays.asList(i.get(33).toString().split(","));
|
|
|
+ List<Long> deptids = new ArrayList<>();
|
|
|
+ depts.forEach(dept->{
|
|
|
+ if(deptss.contains(dept.getDeptName())){
|
|
|
+ deptids.add(dept.getDeptId());
|
|
|
+ }
|
|
|
+ });
|
|
|
+ ext1.put("tz_ss_unit",deptids.toArray());
|
|
|
+ }
|
|
|
+ ext1.put("tz_ss_more",i.get(34));
|
|
|
+ tblFacilities.setExt1(JSON.toJSONString(ext1));
|
|
|
+ tblFacilities.setParams(null);
|
|
|
+ facilities.add(tblFacilities);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ });
|
|
|
+
|
|
|
+ tblFacilitiesService.saveBatch(facilities);
|
|
|
+ System.out.println("ss");
|
|
|
+ }else{
|
|
|
+ return AjaxResult.error("请上传excel文件");
|
|
|
+ }
|
|
|
+
|
|
|
+ return AjaxResult.success();
|
|
|
+ }
|
|
|
+ catch (Exception e)
|
|
|
+ {
|
|
|
+ return AjaxResult.error(e.getMessage());
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
@PreAuthorize("@ss.hasPermi('system:facilities:list')")
|
|
|
@PostMapping("/list")
|