From 8722d2bb39c6c0697647e77a879d14b28d3ef0f5 Mon Sep 17 00:00:00 2001
From: zmk <496160012@qq.com>
Date: 星期五, 17 五月 2024 19:16:36 +0800
Subject: [PATCH] Merge branch 'master' of ssh://117.78.1.188:29418/dkyChenJiang
---
javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/controller/ProjectDataController.java | 48 ++
javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/domain/ProjectPerson.java | 35 +
javaweb-plus/javaweb-cms/src/main/resources/mapper/geo/DeviceLogMapper.xml | 14
javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/upload.html | 90 +++++
javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/controller/HoleController.java | 19
javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/projectData2.html | 137 ++++++++
javaweb-plus/javaweb-cms/src/main/resources/templates/geo/hole/hole.html | 27 +
javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/edit.html | 20
javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/impl/ProjectDataServiceImpl.java | 101 +++++
javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/add.html | 4
javaweb-plus/javaweb-cms/src/main/resources/templates/geo/deviceLog/deviceLog.html | 40 +-
javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectPerson/add.html | 10
javaweb-plus/javaweb-cms/src/main/resources/templates/geo/deviceLog/edit.html | 35 +-
javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/impl/HoleServiceImpl.java | 136 +++++--
javaweb-plus/javaweb-cms/src/main/resources/templates/geo/project/navigate.html | 2
javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/projectData.html | 59 +--
javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/impl/DeviceLogServiceImpl.java | 30 -
javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectPerson/edit.html | 10
javaweb-plus/javaweb-cms/src/main/resources/mapper/geo/ProjectPersonMapper.xml | 14
javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/domain/DeviceLog.java | 46 +-
javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectPerson/projectPerson.html | 8
javaweb-plus/javaweb-cms/src/main/resources/templates/geo/deviceLog/add.html | 34 +-
javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/image_view.html | 28 +
javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/IHoleService.java | 7
javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/IProjectDataService.java | 9
25 files changed, 740 insertions(+), 223 deletions(-)
diff --git a/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/controller/HoleController.java b/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/controller/HoleController.java
index 6ae2f30..307390f 100644
--- a/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/controller/HoleController.java
+++ b/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/controller/HoleController.java
@@ -6,11 +6,7 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.bind.annotation.*;
import com.javaweb.common.annotation.Log;
import com.javaweb.common.enums.BusinessType;
import com.javaweb.geo.domain.Hole;
@@ -19,6 +15,7 @@
import com.javaweb.common.core.domain.AjaxResult;
import com.javaweb.common.utils.poi.ExcelUtil;
import com.javaweb.common.core.page.TableDataInfo;
+import org.springframework.web.multipart.MultipartFile;
/**
* 閽诲瓟Controller
@@ -121,4 +118,16 @@
return toAjax(holeService.deleteHoleByIds(ids));
}
+ /**
+ * 瀵煎叆閽诲瓟
+ */
+ @RequiresPermissions("geo:hole:import")
+ @Log(title = "瀵煎叆閽诲瓟")
+ @PostMapping( "/importHole/{projectId}")
+ @ResponseBody
+ public AjaxResult importHole(@PathVariable("projectId") String projectId, @RequestParam("file") MultipartFile file, boolean updateSupport){
+ String message = holeService.importHole(projectId,file,updateSupport);
+ return AjaxResult.success(message);
+ }
+
}
diff --git a/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/controller/ProjectDataController.java b/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/controller/ProjectDataController.java
index 7380ad3..f99e75f 100644
--- a/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/controller/ProjectDataController.java
+++ b/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/controller/ProjectDataController.java
@@ -6,11 +6,8 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.util.ObjectUtils;
+import org.springframework.web.bind.annotation.*;
import com.javaweb.common.annotation.Log;
import com.javaweb.common.enums.BusinessType;
import com.javaweb.geo.domain.ProjectData;
@@ -19,6 +16,9 @@
import com.javaweb.common.core.domain.AjaxResult;
import com.javaweb.common.utils.poi.ExcelUtil;
import com.javaweb.common.core.page.TableDataInfo;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.servlet.http.HttpServletRequest;
/**
* 椤圭洰璧勬枡Controller
@@ -42,7 +42,35 @@
return prefix + "/projectData";
}
+ @RequiresPermissions("geo:projectData:view")
+ @GetMapping("/2")
+ public String projectData2(String id, String type, ModelMap mmap) {
+ mmap.put("projectId", id);
+ mmap.put("type", type);
+ return prefix + "/projectData2";
+ }
+ /**
+ * 瀵煎叆鍘嬬缉鍖�
+ */
+ @GetMapping("/importImg")
+ public String importPdf(){
+ return prefix + "/upload";
+ }
+
+ /**
+ * 鍥剧墖灞曠ず
+ */
+ @GetMapping("/viewImage")
+ public String viewImage(ModelMap mmap, @RequestParam("id") String id){
+ ProjectData data = projectDataService.selectProjectDataById(id);
+ String path = "";
+ if (!ObjectUtils.isEmpty(data)){
+ path = data.getDataUrl();
+ }
+ mmap.put("urlAddress",path);
+ return prefix + "/image_view";
+ }
/**
* 鏌ヨ椤圭洰璧勬枡鍒楄〃
@@ -121,4 +149,14 @@
public AjaxResult remove(String ids) {
return toAjax(projectDataService.deleteProjectDataByIds(ids));
}
+
+ /**
+ * 涓婁紶鍘嬬缉鍖�
+ */
+ @PostMapping("/uploadZIP")
+ @ResponseBody
+ public AjaxResult uploadZIP(MultipartFile file, HttpServletRequest request){
+ return projectDataService.uploadZIP(file,request);
+ }
+
}
diff --git a/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/domain/DeviceLog.java b/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/domain/DeviceLog.java
index 5b674b3..0c65631 100644
--- a/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/domain/DeviceLog.java
+++ b/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/domain/DeviceLog.java
@@ -40,20 +40,24 @@
@Excel(name = "璁惧鍚嶇О")
private String deviceName;
- /** 鍑哄叆搴撶被鍨嬶紙in /out锛� */
- @Excel(name = "鍑哄叆搴撶被鍨�", readConverterExp = "i=n,/=out")
+ /** 绫诲瀷锛堣澶囷紝鏉愭枡锛� */
+ @Excel(name = "鍑哄叆搴撶被鍨�", readConverterExp = "绫诲瀷锛堣澶囷紝鏉愭枡锛�")
private String type;
- /** 鍑哄叆搴撴椂闂� */
- @Excel(name = "鍑哄叆搴撴椂闂�")
- private String transactionDate;
+ /** 鍑哄簱鏃堕棿 */
+ @Excel(name = "鍑哄簱鏃堕棿")
+ private String outboundDate;
+
+ /** 鍏ュ簱鏃堕棿 */
+ @Excel(name = "鍏ュ簱鏃堕棿")
+ private String inboundDate;
/** 缁忓姙浜� */
@Excel(name = "缁忓姙浜�")
private String optUser;
/** 浣跨敤浜� */
- @Excel(name = "浣跨敤浜�")
+ @Excel(name = "璐熻矗浜�")
private String applyUser;
/** 鍑哄叆搴撴暟閲� */
@@ -130,25 +134,31 @@
this.type = type;
}
- public String getType()
- {
+ public String getType() {
return type;
}
- public void setTransactionDate(String transactionDate)
- {
- this.transactionDate = transactionDate;
+
+ public String getOutboundDate() {
+ return outboundDate;
}
- public String getTransactionDate()
- {
- return transactionDate;
+ public void setOutboundDate(String outboundDate) {
+ this.outboundDate = outboundDate;
}
- public void setOptUser(String optUser)
- {
+
+ public String getInboundDate() {
+ return inboundDate;
+ }
+
+ public void setInboundDate(String inboundDate) {
+ this.inboundDate = inboundDate;
+ }
+
+ public void setOptUser(String optUser) {
this.optUser = optUser;
}
- public String getOptUser()
+ public String getOptUser()
{
return optUser;
}
@@ -190,8 +200,6 @@
.append("deviceId", getDeviceId())
.append("deviceCode", getDeviceCode())
.append("deviceName", getDeviceName())
- .append("type", getType())
- .append("transactionDate", getTransactionDate())
.append("optUser", getOptUser())
.append("applyUser", getApplyUser())
.append("number", getNumber())
diff --git a/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/domain/ProjectPerson.java b/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/domain/ProjectPerson.java
index 2d694c7..4b1904d 100644
--- a/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/domain/ProjectPerson.java
+++ b/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/domain/ProjectPerson.java
@@ -36,9 +36,13 @@
@Excel(name = "鎵嬫満鍙�")
private String phone;
- /** 鍦板潃 */
- @Excel(name = "鍦板潃")
- private String address;
+ /** 韬唤璇佸彿 */
+ @Excel(name = "韬唤璇佸彿")
+ private String idCard;
+
+ /** 浜哄憳鍒嗙粍 */
+ @Excel(name = "浜哄憳鍒嗙粍")
+ private String personGroup;
/** 鑱岃矗 */
@Excel(name = "鑱岃矗")
@@ -100,20 +104,28 @@
this.phone = phone;
}
- public String getPhone()
+ public String getPhone()
{
return phone;
}
- public void setAddress(String address)
- {
- this.address = address;
+
+ public String getIdCard() {
+ return idCard;
}
- public String getAddress()
- {
- return address;
+ public void setIdCard(String idCard) {
+ this.idCard = idCard;
}
- public void setResponsibility(String responsibility)
+
+ public String getPersonGroup() {
+ return personGroup;
+ }
+
+ public void setPersonGroup(String personGroup) {
+ this.personGroup = personGroup;
+ }
+
+ public void setResponsibility(String responsibility)
{
this.responsibility = responsibility;
}
@@ -150,7 +162,6 @@
.append("name", getName())
.append("type", getType())
.append("phone", getPhone())
- .append("address", getAddress())
.append("responsibility", getResponsibility())
.append("status", getStatus())
.append("isDeleted", getIsDeleted())
diff --git a/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/IHoleService.java b/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/IHoleService.java
index 7ca5bdd..95f9c43 100644
--- a/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/IHoleService.java
+++ b/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/IHoleService.java
@@ -1,6 +1,8 @@
package com.javaweb.geo.service;
import com.javaweb.geo.domain.Hole;
+import org.springframework.web.multipart.MultipartFile;
+
import java.util.List;
/**
@@ -58,4 +60,9 @@
* @return 缁撴灉
*/
public int deleteHoleById(String ids);
+
+ /**
+ * 瀵煎叆閽诲瓟
+ */
+ String importHole(String projectId, MultipartFile file, boolean updateSupport);
}
diff --git a/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/IProjectDataService.java b/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/IProjectDataService.java
index 47afa98..1c21d65 100644
--- a/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/IProjectDataService.java
+++ b/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/IProjectDataService.java
@@ -1,6 +1,10 @@
package com.javaweb.geo.service;
+import com.javaweb.common.core.domain.AjaxResult;
import com.javaweb.geo.domain.ProjectData;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
@@ -58,4 +62,9 @@
* @return 缁撴灉
*/
public int deleteProjectDataById(String id);
+
+ /**
+ * 涓婁紶鍘嬬缉鍖�
+ */
+ AjaxResult uploadZIP(MultipartFile file, HttpServletRequest request);
}
diff --git a/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/impl/DeviceLogServiceImpl.java b/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/impl/DeviceLogServiceImpl.java
index f958545..df6206c 100644
--- a/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/impl/DeviceLogServiceImpl.java
+++ b/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/impl/DeviceLogServiceImpl.java
@@ -38,9 +38,6 @@
@Autowired
private IProjectService projectService;
- @Autowired
- private IDeviceService deviceService;
-
private String fileSaveDir = Global.getProfile() + "\\template\\" ;
/**
@@ -130,24 +127,6 @@
item.setProjectId(projectId);
item.setProjectName(project.getFullName());
- // 杞崲鍑哄叆搴撶被鍨�
- String proTypeCode = RecordType.getKeyByName(item.getType());
- item.setType(proTypeCode);
-
- // 杞崲璁惧缂栫爜
- String deviceCode = item.getDeviceCode();
- if (!ObjectUtils.isEmpty(deviceCode)){
- Device param = new Device();
- param.setCode(deviceCode);
- List<Device> devices = deviceService.selectDeviceList(param);
- if (!ObjectUtils.isEmpty(devices)){
- Device device = devices.get(0);
- item.setDeviceId(device.getId());
- item.setDeviceCode(device.getCode());
- item.setDeviceName(device.getName());
- }
- }
-
item.setCreateDate(DateUtils.getNowDate());
insertDeviceLog(item);
}
@@ -176,11 +155,12 @@
private List<DeviceLog> readData(String filepath) {
ExcelReader reader = ExcelUtil.getReader(filepath, 0);
reader.addHeaderAlias("鍑哄叆搴撳崟瀛愬彿", "code");
- reader.addHeaderAlias("璁惧缂栫爜", "deviceCode");
- reader.addHeaderAlias("鍑哄叆搴撶被鍨�", "type");
- reader.addHeaderAlias("鍑哄叆搴撴椂闂�", "transactionDate");
+ reader.addHeaderAlias("璁惧鍚嶇О", "deviceName");
+ reader.addHeaderAlias("绫诲瀷", "type");
+ reader.addHeaderAlias("鍏ュ簱鏃堕棿", "inboundDate");
+ reader.addHeaderAlias("鍑哄簱鏃堕棿", "outboundDate");
reader.addHeaderAlias("缁忓姙浜�", "optUser");
- reader.addHeaderAlias("浣跨敤浜�", "applyUser");
+ reader.addHeaderAlias("璐熻矗浜�", "applyUser");
reader.addHeaderAlias("鍑哄叆搴撴暟閲�", "number");
reader.addHeaderAlias("澶囨敞", "remark");
diff --git a/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/impl/HoleServiceImpl.java b/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/impl/HoleServiceImpl.java
index ba7f4c6..b7422a6 100644
--- a/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/impl/HoleServiceImpl.java
+++ b/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/impl/HoleServiceImpl.java
@@ -1,7 +1,11 @@
package com.javaweb.geo.service.impl;
+import java.io.File;
import java.util.List;
+import cn.hutool.poi.excel.ExcelReader;
+import cn.hutool.poi.excel.ExcelUtil;
+import com.javaweb.common.config.Global;
import com.javaweb.common.utils.DateUtils;
import com.javaweb.common.utils.IdGenerate;
import com.javaweb.geo.domain.*;
@@ -11,6 +15,7 @@
import org.springframework.stereotype.Service;
import com.javaweb.common.core.text.Convert;
import org.springframework.util.ObjectUtils;
+import org.springframework.web.multipart.MultipartFile;
/**
* 閽诲瓟Service涓氬姟灞傚鐞�
@@ -41,6 +46,12 @@
@Autowired
private HoleYantuMapper holeYantuMapper;
+
+
+ @Autowired
+ private IProjectService projectService;
+
+ private String fileSaveDir = Global.getProfile() + "\\template\\" ;
/**
* 鏌ヨ閽诲瓟
@@ -99,44 +110,43 @@
*/
@Override
public int deleteHoleByIds(String ids) {
-
// 鎵归噺鍒犻櫎閽诲瓟涓嬮潰鐨勫叧鑱旀暟鎹�
- String[] strings = Convert.toStrArray(ids);
- if (!ObjectUtils.isEmpty(strings)) {
- for (String holeId : strings) {
-
- // =======鏍囪疮==========
- List<HoleBiaoguan> biaoguans = holeBiaoguanMapper.selectHoleBiaoguanByHoleId(holeId);
- String[] biaoguanIds = biaoguans.stream().map(HoleBiaoguan::getIds).toArray(String[]::new);
-
- // =======鍥炴==========
- List<HoleHuici> holeHuicis = holeHuiciMapper.selectHoleHuiciByHoleId(holeId);
- String[] huiCiIds = holeHuicis.stream().map(HoleHuici::getIds).toArray(String[]::new);
-
- // =======浜哄憳==========
- List<HolePerson> persons = holePersonMapper.selectHolePersonByHoleId(holeId);
- String[] personIds = persons.stream().map(HolePerson::getIds).toArray(String[]::new);
-
- // =======鍙栧湡==========
- List<HoleQutu> qutus = holeQutuMapper.selectHoleQutuByHoleId(holeId);
- String[] qutuIds = qutus.stream().map(HoleQutu::getIds).toArray(String[]::new);
-
- // =======姘翠綅==========
- List<HoleShuiwei> shuiweis = holeShuiweiMapper.selectHoleShuiWeiByHoleId(holeId);
- String[] shuiweiIds = shuiweis.stream().map(HoleShuiwei::getIds).toArray(String[]::new);
-
- // =======宀╁湡==========
- List<HoleYantu> yantus = holeYantuMapper.selectHoleYantuListByHoleId(holeId);
- String[] yantusIds = yantus.stream().map(HoleYantu::getIds).toArray(String[]::new);
-
- holeBiaoguanMapper.deleteHoleBiaoguanByIds(biaoguanIds);
- holeHuiciMapper.deleteHoleHuiciByIds(huiCiIds);
- holePersonMapper.deleteHolePersonByIds(personIds);
- holeQutuMapper.deleteHoleQutuByIds(qutuIds);
- holeShuiweiMapper.deleteHoleShuiweiByIds(shuiweiIds);
- holeYantuMapper.deleteHoleYantuByIds(yantusIds);
- }
- }
+// String[] strings = Convert.toStrArray(ids);
+// if (!ObjectUtils.isEmpty(strings)) {
+// for (String holeId : strings) {
+//
+// // =======鏍囪疮==========
+// List<HoleBiaoguan> biaoguans = holeBiaoguanMapper.selectHoleBiaoguanByHoleId(holeId);
+// String[] biaoguanIds = biaoguans.stream().map(HoleBiaoguan::getIds).toArray(String[]::new);
+//
+// // =======鍥炴==========
+// List<HoleHuici> holeHuicis = holeHuiciMapper.selectHoleHuiciByHoleId(holeId);
+// String[] huiCiIds = holeHuicis.stream().map(HoleHuici::getIds).toArray(String[]::new);
+//
+// // =======浜哄憳==========
+// List<HolePerson> persons = holePersonMapper.selectHolePersonByHoleId(holeId);
+// String[] personIds = persons.stream().map(HolePerson::getIds).toArray(String[]::new);
+//
+// // =======鍙栧湡==========
+// List<HoleQutu> qutus = holeQutuMapper.selectHoleQutuByHoleId(holeId);
+// String[] qutuIds = qutus.stream().map(HoleQutu::getIds).toArray(String[]::new);
+//
+// // =======姘翠綅==========
+// List<HoleShuiwei> shuiweis = holeShuiweiMapper.selectHoleShuiWeiByHoleId(holeId);
+// String[] shuiweiIds = shuiweis.stream().map(HoleShuiwei::getIds).toArray(String[]::new);
+//
+// // =======宀╁湡==========
+// List<HoleYantu> yantus = holeYantuMapper.selectHoleYantuListByHoleId(holeId);
+// String[] yantusIds = yantus.stream().map(HoleYantu::getIds).toArray(String[]::new);
+//
+// holeBiaoguanMapper.deleteHoleBiaoguanByIds(biaoguanIds);
+// holeHuiciMapper.deleteHoleHuiciByIds(huiCiIds);
+// holePersonMapper.deleteHolePersonByIds(personIds);
+// holeQutuMapper.deleteHoleQutuByIds(qutuIds);
+// holeShuiweiMapper.deleteHoleShuiweiByIds(shuiweiIds);
+// holeYantuMapper.deleteHoleYantuByIds(yantusIds);
+// }
+// }
return holeMapper.deleteHoleByIds(Convert.toStrArray(ids));
}
@@ -151,4 +161,56 @@
public int deleteHoleById(String ids) {
return holeMapper.deleteHoleById(ids);
}
+
+ /**
+ * 瀵煎叆閽诲瓟
+ */
+ @Override
+ public String importHole(String projectId, MultipartFile file, boolean updateSupport) {
+ try {
+ String dest = saveExcel(file);
+ List<Hole> list = readData(dest);
+ if(!ObjectUtils.isEmpty(list)){
+ for (Hole item : list) {
+ item.setProjectId(projectId);
+ insertHole(item);
+ }
+ }
+ } catch (Exception e) {
+ return e.toString();
+ }
+ return "瀵煎叆瀹屾瘯" ;
+ }
+
+ private String saveExcel(MultipartFile file) {
+ String filename = file.getOriginalFilename();
+ File dir = new File(fileSaveDir);
+ if (!dir.exists()) {
+ dir.mkdir();
+ }
+ String addr = fileSaveDir + filename;
+ try {
+ File dest = new File(addr);
+ file.transferTo(dest);
+ } catch (Exception e) {
+ return null;
+ }
+ return addr;
+ }
+
+ private List<Hole> readData(String filepath) {
+ ExcelReader reader = ExcelUtil.getReader(filepath, 0);
+ reader.addHeaderAlias("閽诲瓟缂栧彿", "code");
+ reader.addHeaderAlias("瀛斿彛楂樼▼", "elevation");
+ reader.addHeaderAlias("璁捐瀛旀繁", "depth");
+ reader.addHeaderAlias("閽诲瓟缁忓害", "longitude");
+ reader.addHeaderAlias("閽诲瓟绾害", "latitude");
+ reader.addHeaderAlias("杩涘害", "pic1");
+
+ List<Hole> list = reader.readAll(Hole.class);
+ return list;
+ }
+
+
+
}
diff --git a/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/impl/ProjectDataServiceImpl.java b/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/impl/ProjectDataServiceImpl.java
index e5a66b5..ba4ecd0 100644
--- a/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/impl/ProjectDataServiceImpl.java
+++ b/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/impl/ProjectDataServiceImpl.java
@@ -1,9 +1,17 @@
package com.javaweb.geo.service.impl;
+import java.io.File;
+import java.nio.charset.Charset;
+import java.util.ArrayList;
import java.util.List;
+import cn.hutool.core.io.FileUtil;
+import cn.hutool.core.util.ZipUtil;
+import com.javaweb.common.config.Global;
+import com.javaweb.common.core.domain.AjaxResult;
import com.javaweb.common.utils.DateUtils;
import com.javaweb.common.utils.IdGenerate;
+import com.javaweb.common.utils.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.javaweb.geo.mapper.ProjectDataMapper;
@@ -11,6 +19,9 @@
import com.javaweb.geo.service.IProjectDataService;
import com.javaweb.common.core.text.Convert;
import org.springframework.util.ObjectUtils;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.servlet.http.HttpServletRequest;
/**
* 椤圭洰璧勬枡Service涓氬姟灞傚鐞�
@@ -20,6 +31,12 @@
*/
@Service
public class ProjectDataServiceImpl implements IProjectDataService {
+
+
+ private static String manUploadPath = "imgupload";
+
+ private static String imgUploadPath = Global.getProfile() + "\\" + manUploadPath + "\\";
+
@Autowired
private ProjectDataMapper projectDataMapper;
@@ -42,8 +59,8 @@
*/
@Override
public List<ProjectData> selectProjectDataList(ProjectData projectData) {
- if (!ObjectUtils.isEmpty(projectData.getDataType()) && projectData.getDataType().endsWith(",")){
- projectData.setDataType(projectData.getDataType().substring(0,1));
+ if (!ObjectUtils.isEmpty(projectData.getDataType()) && projectData.getDataType().endsWith(",")) {
+ projectData.setDataType(projectData.getDataType().substring(0, 1));
}
return projectDataMapper.selectProjectDataList(projectData);
}
@@ -96,4 +113,84 @@
public int deleteProjectDataById(String id) {
return projectDataMapper.deleteProjectDataById(id);
}
+
+ @Override
+ public AjaxResult uploadZIP(MultipartFile file, HttpServletRequest request) {
+ String uploadPath = Global.getProfile() + "\\";
+
+ String originalFilename = file.getOriginalFilename();
+
+ String fieldname = request.getParameter("fieldname");
+ if (StringUtils.isEmpty(fieldname)) {
+ fieldname = "filename";
+ }
+
+ //鑾峰彇鍚庣紑.zip 淇濆瓨鐨勬枃浠跺悕
+ String substring = originalFilename.substring(originalFilename.lastIndexOf("."));
+ String UID = IdGenerate.nextId();
+ String dFileName = UID + substring;
+
+ File file2 = new File(uploadPath + dFileName);
+ try {
+ file.transferTo(file2);
+ } catch (Exception e) {
+ return AjaxResult.warn("闄勪欢涓婁紶澶辫触锛�");
+ }
+
+ //瑙e帇缂�
+ try {
+ ZipUtil.unzip(file2, Charset.forName("GBK"));
+ } catch (Exception e) {
+ return AjaxResult.warn("闄勪欢瑙e帇缂╁け璐ワ紒");
+ }
+ String moveDir = Global.getProfile() + "\\" + UID + "\\" + originalFilename.replace(substring, "");
+ List<String> movedFiles = moveFile(moveDir);
+ updateFilePath(fieldname, movedFiles);
+
+ FileUtil.del(new File(uploadPath + UID));
+ FileUtil.del(file2);
+ return AjaxResult.success("涓婁紶鎴愬姛");
+ }
+
+ //绉诲姩 鏂囦欢
+ private List<String> moveFile(String moveDir) {
+ List<String> list = new ArrayList<>();
+ File file = new File(moveDir);
+ String detpath = imgUploadPath;
+ if (file.isDirectory()) {
+ File[] files = file.listFiles();
+ int len = files.length;
+ for (int i = 0; i < len; i++) {
+ String filename = files[i].getName();
+ list.add(filename);
+ FileUtil.copy(files[i], new File(detpath + filename), true);
+ }
+ }
+ return list;
+ }
+
+ private void updateFilePath(String filedname, List<String> filesPath) {
+
+ for (String fileName : filesPath) {
+ String substring = fileName.substring(fileName.lastIndexOf("."));
+ String docFileName = fileName.replace(substring, "").trim();
+ ProjectData param = new ProjectData();
+
+ if (filedname.equals("filename")) {
+ param.setName(docFileName);
+ }
+
+ List<ProjectData> list = projectDataMapper.selectProjectDataList(param);
+ if (!ObjectUtils.isEmpty(list)) {
+ for (ProjectData item : list) {
+ ProjectData entity = new ProjectData();
+ entity.setId(item.getId());
+ entity.setDataUrl(manUploadPath + "/" + fileName);
+ projectDataMapper.updateProjectData(entity);
+ }
+ }
+
+ }
+
+ }
}
diff --git a/javaweb-plus/javaweb-cms/src/main/resources/mapper/geo/DeviceLogMapper.xml b/javaweb-plus/javaweb-cms/src/main/resources/mapper/geo/DeviceLogMapper.xml
index fc033af..424d266 100644
--- a/javaweb-plus/javaweb-cms/src/main/resources/mapper/geo/DeviceLogMapper.xml
+++ b/javaweb-plus/javaweb-cms/src/main/resources/mapper/geo/DeviceLogMapper.xml
@@ -13,7 +13,8 @@
<result property="deviceCode" column="device_code" />
<result property="deviceName" column="device_name" />
<result property="type" column="type" />
- <result property="transactionDate" column="transaction_date" />
+ <result property="outboundDate" column="outbound_date" />
+ <result property="inboundDate" column="inbound_date" />
<result property="optUser" column="opt_user" />
<result property="applyUser" column="apply_user" />
<result property="number" column="number" />
@@ -22,7 +23,7 @@
</resultMap>
<sql id="selectDeviceLogVo">
- select id, code, project_id, project_name, device_id, device_code, device_name, type, transaction_date, opt_user, apply_user, number, create_date, remark from js_device_log
+ select id, code, project_id, project_name, device_id, device_code, device_name, type, outbound_date, inbound_date, opt_user, apply_user, number, create_date, remark from js_device_log
</sql>
<select id="selectDeviceLogList" parameterType="DeviceLog" resultMap="DeviceLogResult">
@@ -57,7 +58,8 @@
<if test="deviceCode != null and deviceCode != ''">device_code,</if>
<if test="deviceName != null and deviceName != ''">device_name,</if>
<if test="type != null and type != ''">type,</if>
- <if test="transactionDate != null and transactionDate != ''">transaction_date,</if>
+ <if test="outboundDate != null and outboundDate != ''">outbound_date,</if>
+ <if test="inboundDate != null and inboundDate != ''">inbound_date,</if>
<if test="optUser != null and optUser != ''">opt_user,</if>
<if test="applyUser != null and applyUser != ''">apply_user,</if>
<if test="number != null and number != ''">number,</if>
@@ -73,7 +75,8 @@
<if test="deviceCode != null and deviceCode != ''">#{deviceCode},</if>
<if test="deviceName != null and deviceName != ''">#{deviceName},</if>
<if test="type != null and type != ''">#{type},</if>
- <if test="transactionDate != null and transactionDate != ''">#{transactionDate},</if>
+ <if test="outboundDate != null and outboundDate != ''">#{outboundDate},</if>
+ <if test="inboundDate != null and inboundDate != ''">#{inboundDate},</if>
<if test="optUser != null and optUser != ''">#{optUser},</if>
<if test="applyUser != null and applyUser != ''">#{applyUser},</if>
<if test="number != null and number != ''">#{number},</if>
@@ -92,7 +95,8 @@
<if test="deviceCode != null and deviceCode != ''">device_code = #{deviceCode},</if>
<if test="deviceName != null and deviceName != ''">device_name = #{deviceName},</if>
<if test="type != null and type != ''">type = #{type},</if>
- <if test="transactionDate != null and transactionDate != ''">transaction_date = #{transactionDate},</if>
+ <if test="outboundDate != null and outboundDate != ''">outbound_date = #{outboundDate},</if>
+ <if test="inboundDate != null and inboundDate != ''">inbound_date = #{inboundDate},</if>
<if test="optUser != null and optUser != ''">opt_user = #{optUser},</if>
<if test="applyUser != null and applyUser != ''">apply_user = #{applyUser},</if>
<if test="number != null and number != ''">number = #{number},</if>
diff --git a/javaweb-plus/javaweb-cms/src/main/resources/mapper/geo/ProjectPersonMapper.xml b/javaweb-plus/javaweb-cms/src/main/resources/mapper/geo/ProjectPersonMapper.xml
index 800a99a..b878eed 100644
--- a/javaweb-plus/javaweb-cms/src/main/resources/mapper/geo/ProjectPersonMapper.xml
+++ b/javaweb-plus/javaweb-cms/src/main/resources/mapper/geo/ProjectPersonMapper.xml
@@ -11,7 +11,8 @@
<result property="name" column="name" />
<result property="type" column="type" />
<result property="phone" column="phone" />
- <result property="address" column="address" />
+ <result property="idCard" column="id_card" />
+ <result property="personGroup" column="person_group" />
<result property="responsibility" column="responsibility" />
<result property="status" column="status" />
<result property="isDeleted" column="is_deleted" />
@@ -23,7 +24,7 @@
</resultMap>
<sql id="selectProjectPersonVo">
- select ids, project_id, hole_id, name, type, phone, address, responsibility, status, is_deleted, create_by, create_time, update_by, update_time, remark from js_project_person
+ select ids, project_id, hole_id, name, type, phone, id_card , person_group , responsibility, status, is_deleted, create_by, create_time, update_by, update_time, remark from js_project_person
</sql>
<select id="selectProjectPersonList" parameterType="ProjectPerson" resultMap="ProjectPersonResult">
@@ -51,7 +52,8 @@
<if test="name != null and name != ''">name,</if>
<if test="type != null and type != ''">type,</if>
<if test="phone != null and phone != ''">phone,</if>
- <if test="address != null and address != ''">address,</if>
+ <if test="idCard != null and idCard != ''">id_card,</if>
+ <if test="personGroup != null and personGroup != ''">person_group,</if>
<if test="responsibility != null and responsibility != ''">responsibility,</if>
<if test="status != null and status != ''">status,</if>
<if test="isDeleted != null and isDeleted != ''">is_deleted,</if>
@@ -68,7 +70,8 @@
<if test="name != null and name != ''">#{name},</if>
<if test="type != null and type != ''">#{type},</if>
<if test="phone != null and phone != ''">#{phone},</if>
- <if test="address != null and address != ''">#{address},</if>
+ <if test="idCard != null and idCard != ''">#{idCard},</if>
+ <if test="personGroup != null and personGroup != ''">#{personGroup},</if>
<if test="responsibility != null and responsibility != ''">#{responsibility},</if>
<if test="status != null and status != ''">#{status},</if>
<if test="isDeleted != null and isDeleted != ''">#{isDeleted},</if>
@@ -88,7 +91,8 @@
<if test="name != null and name != ''">name = #{name},</if>
<if test="type != null and type != ''">type = #{type},</if>
<if test="phone != null and phone != ''">phone = #{phone},</if>
- <if test="address != null and address != ''">address = #{address},</if>
+ <if test="idCard != null and idCard != ''">id_card = #{idCard},</if>
+ <if test="personGroup != null and personGroup != ''">person_group = #{personGroup},</if>
<if test="responsibility != null and responsibility != ''">responsibility = #{responsibility},</if>
<if test="status != null and status != ''">status = #{status},</if>
<if test="isDeleted != null and isDeleted != ''">is_deleted = #{isDeleted},</if>
diff --git a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/deviceLog/add.html b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/deviceLog/add.html
index 6a96c70..1f749e9 100644
--- a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/deviceLog/add.html
+++ b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/deviceLog/add.html
@@ -12,26 +12,14 @@
<input name="code" class="form-control" type="text">
</div>
</div>
- <div class="form-group">
- <label class="col-sm-3 control-label">椤圭洰鍚嶇О锛�</label>
- <div class="col-sm-8">
- <input name="projectName" class="form-control" type="text">
- </div>
- </div>
<div class="form-group">
- <label class="col-sm-3 control-label">璁惧缂栧彿锛�</label>
- <div class="col-sm-8">
- <input name="deviceCode" class="form-control" type="text">
- </div>
- </div>
- <div class="form-group">
- <label class="col-sm-3 control-label">璁惧鍚嶇О锛�</label>
+ <label class="col-sm-3 control-label">鍚嶇О锛�</label>
<div class="col-sm-8">
<input name="deviceName" class="form-control" type="text">
</div>
</div>
<div class="form-group">
- <label class="col-sm-3 control-label">鍑哄叆搴撶被鍨嬶細</label>
+ <label class="col-sm-3 control-label">绫诲瀷锛�</label>
<div class="col-sm-8">
<select name="type" class="form-control m-b" th:with="type=${@dict.getType('device_log_type')}">
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
@@ -39,9 +27,15 @@
</div>
</div>
<div class="form-group">
- <label class="col-sm-3 control-label">鍑哄叆搴撴椂闂达細</label>
+ <label class="col-sm-3 control-label">鍏ュ簱鏃堕棿锛�</label>
<div class="col-sm-8">
- <input name="transactionDate" class="form-control" type="text">
+ <input name="inboundDate" class="form-control" type="text">
+ </div>
+ </div>
+ <div class="form-group">
+ <label class="col-sm-3 control-label">鍑哄簱鏃堕棿锛�</label>
+ <div class="col-sm-8">
+ <input name="outboundDate" class="form-control" type="text">
</div>
</div>
<div class="form-group">
@@ -51,7 +45,7 @@
</div>
</div>
<div class="form-group">
- <label class="col-sm-3 control-label">浣跨敤浜猴細</label>
+ <label class="col-sm-3 control-label">璐熻矗浜猴細</label>
<div class="col-sm-8">
<input name="applyUser" class="form-control" type="text">
</div>
@@ -62,6 +56,12 @@
<input name="number" class="form-control" type="text">
</div>
</div>
+ <div class="form-group">
+ <label class="col-sm-3 control-label">澶囨敞锛�</label>
+ <div class="col-sm-8">
+ <textarea id="remark" name="remark" class="form-control"></textarea>
+ </div>
+ </div>
</form>
</div>
<th:block th:include="include :: footer" />
diff --git a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/deviceLog/deviceLog.html b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/deviceLog/deviceLog.html
index 8f51043..ce46554 100644
--- a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/deviceLog/deviceLog.html
+++ b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/deviceLog/deviceLog.html
@@ -15,15 +15,11 @@
<input type="text" name="code"/>
</li>
<li>
- <p>椤圭洰鍚嶇О锛�</p>
- <input type="text" name="projectName"/>
- </li>
- <li>
- <p>璁惧鍚嶇О锛�</p>
+ <p>鍚嶇О锛�</p>
<input type="text" name="deviceName"/>
</li>
<li>
- <p>鍑哄叆搴撶被鍨嬶細</p>
+ <p>璁惧/鏉愭枡绫诲瀷锛�</p>
<select name="type" th:with="type=${@dict.getType('device_log_type')}">
<option value="">鎵�鏈�</option>
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
@@ -34,7 +30,7 @@
<input type="text" name="optUser"/>
</li>
<li>
- <p>浣跨敤浜猴細</p>
+ <p>璐熻矗浜猴細</p>
<input type="text" name="applyUser"/>
</li>
<li>
@@ -99,26 +95,32 @@
},
{
field : 'projectName',
- title : '椤圭洰鍚嶇О'
+ title : '鍦哄湴鍚嶇О',
+ visible: false
},
{
field : 'deviceCode',
- title : '璁惧缂栫爜'
+ title : '缂栧彿',
+ visible: false
+ },
+ {
+ field : 'deviceName',
+ title : '鍚嶇О'
},
{
- field : 'deviceName',
- title : '璁惧鍚嶇О'
- },
- {
field : 'type',
- title : '鍑哄叆搴撶被鍨�',
+ title : '璁惧/鏉愭枡绫诲瀷',
formatter: function(value, row, index) {
return $.table.selectDictLabel(typeDatas, value);
}
},
+ {
+ field : 'inboundDate',
+ title : '鍏ュ簱鏃堕棿'
+ },
{
- field : 'transactionDate',
- title : '鍑哄叆搴撴椂闂�'
+ field : 'outboundDate',
+ title : '鍑哄簱鏃堕棿'
},
{
field : 'optUser',
@@ -126,11 +128,11 @@
},
{
field : 'applyUser',
- title : '浣跨敤浜�'
+ title : '璐熻矗浜�'
},
{
field : 'number',
- title : '鍑哄叆搴撴暟閲�'
+ title : '鏁伴噺'
},
{
field : 'remark',
@@ -164,7 +166,7 @@
<div class="col-xs-offset-1">
<input type="file" id="file" name="file"/>
<div class="mt10 pt5">
- <input type="checkbox" id="updateSupport" name="updateSupport" title="瀵煎叆璁惧鍑哄叆搴撲俊鎭俊鎭�"> 鏄惁鏇存柊宸茬粡瀛樺湪鐨勬暟鎹�
+ <input type="checkbox" id="updateSupport" name="updateSupport" title="瀵煎叆璁惧鍑哄叆搴撲俊鎭�"> 鏄惁鏇存柊宸茬粡瀛樺湪鐨勬暟鎹�
<a onclick="importTemplate()" class="btn btn-default btn-xs"><i class="fa fa-file-excel-o"></i> 涓嬭浇妯℃澘</a>
</div>
<font color="red" class="pull-left mt10">
diff --git a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/deviceLog/edit.html b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/deviceLog/edit.html
index f789000..4353bef 100644
--- a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/deviceLog/edit.html
+++ b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/deviceLog/edit.html
@@ -13,26 +13,14 @@
<input name="code" th:field="*{code}" class="form-control" type="text">
</div>
</div>
- <div class="form-group">
- <label class="col-sm-3 control-label">椤圭洰鍚嶇О锛�</label>
- <div class="col-sm-8">
- <input name="projectName" th:field="*{projectName}" class="form-control" type="text">
- </div>
- </div>
<div class="form-group">
- <label class="col-sm-3 control-label">璁惧缂栧彿锛�</label>
- <div class="col-sm-8">
- <input name="deviceCode" th:field="*{deviceCode}" class="form-control" type="text">
- </div>
- </div>
- <div class="form-group">
- <label class="col-sm-3 control-label">璁惧鍚嶇О锛�</label>
+ <label class="col-sm-3 control-label">鍚嶇О锛�</label>
<div class="col-sm-8">
<input name="deviceName" th:field="*{deviceName}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
- <label class="col-sm-3 control-label">鍑哄叆搴撶被鍨嬶細</label>
+ <label class="col-sm-3 control-label">绫诲瀷锛�</label>
<div class="col-sm-8">
<select name="type" class="form-control m-b" th:with="type=${@dict.getType('device_log_type')}">
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:field="*{type}"></option>
@@ -40,9 +28,15 @@
</div>
</div>
<div class="form-group">
- <label class="col-sm-3 control-label">鍑哄叆搴撴椂闂达細</label>
+ <label class="col-sm-3 control-label">鍏ュ簱鏃堕棿锛�</label>
<div class="col-sm-8">
- <input name="transactionDate" th:field="*{transactionDate}" class="form-control" type="text">
+ <input name="inboundDate" th:field="*{inboundDate}" class="form-control" type="text">
+ </div>
+ </div>
+ <div class="form-group">
+ <label class="col-sm-3 control-label">鍑哄簱鏃堕棿锛�</label>
+ <div class="col-sm-8">
+ <input name="outboundDate" th:field="*{outboundDate}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
@@ -52,7 +46,7 @@
</div>
</div>
<div class="form-group">
- <label class="col-sm-3 control-label">浣跨敤浜猴細</label>
+ <label class="col-sm-3 control-label">璐熻矗浜猴細</label>
<div class="col-sm-8">
<input name="applyUser" th:field="*{applyUser}" class="form-control" type="text">
</div>
@@ -63,6 +57,13 @@
<input name="number" th:field="*{number}" class="form-control" type="text">
</div>
</div>
+ <div class="form-group">
+ <label class="col-sm-3 control-label">澶囨敞锛�</label>
+ <div class="col-sm-8">
+ <textarea id="remark" th:field="*{remark}" name="remark" class="form-control"></textarea>
+ </div>
+ </div>
+
</form>
</div>
<th:block th:include="include :: footer" />
diff --git a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/hole/hole.html b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/hole/hole.html
index d8f0e22..11fd90d 100644
--- a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/hole/hole.html
+++ b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/hole/hole.html
@@ -45,6 +45,9 @@
<a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="geo:hole:remove">
<i class="fa fa-remove"></i> 鍒犻櫎
</a>
+ <a class="btn btn-info" onclick="$.table.importExcel()" shiro:hasPermission="geo:hole:import">
+ <i class="fa fa-upload"></i> 瀵煎叆
+ </a>
</div>
<div class="col-sm-12 select-table table-striped">
<table id="bootstrap-table"></table>
@@ -67,6 +70,7 @@
updateUrl: prefix + "/edit/{id}",
removeUrl: prefix + "/remove",
exportUrl: prefix + "/export",
+ importUrl: prefix + "/importHole/"+projectId,
modalName: "閽诲瓟",
columns: [{
checkbox: true
@@ -123,6 +127,29 @@
};
$.table.init(options);
});
+
+ //涓嬭浇
+ function importTemplate() {
+ var filename="閽诲瓟妯℃澘.xls";
+ window.location.href = ctx + "common/download?fileName=" + encodeURI(filename) + "&delete=" + false;
+ }
</script>
</body>
+
+<!-- 瀵煎叆鍖哄煙 -->
+<script id="importTpl" type="text/template">
+ <form enctype="multipart/form-data" class="mt20 mb10">
+ <div class="col-xs-offset-1">
+ <input type="file" id="file" name="file"/>
+ <div class="mt10 pt5">
+ <input type="checkbox" id="updateSupport" name="updateSupport" title="瀵煎叆閽诲瓟淇℃伅"> 鏄惁鏇存柊宸茬粡瀛樺湪鐨勬暟鎹�
+ <a onclick="importTemplate()" class="btn btn-default btn-xs"><i class="fa fa-file-excel-o"></i> 涓嬭浇妯℃澘</a>
+ </div>
+ <font color="red" class="pull-left mt10">
+ 鎻愮ず锛氫粎鍏佽瀵煎叆鈥渪ls鈥濇垨鈥渪lsx鈥濇牸寮忔枃浠讹紒
+ </font>
+ </div>
+ </form>
+</script>
+
</html>
\ No newline at end of file
diff --git a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/project/navigate.html b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/project/navigate.html
index 23dd7ae..d17a8c2 100644
--- a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/project/navigate.html
+++ b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/project/navigate.html
@@ -51,7 +51,7 @@
</div>
<div class="box-header ">
<div class="box-title">
- <i class="glyphicon glyphicon-th-list"></i> <a class="afont" th:href="@{/geo/projectData(id=${project.ids},type='3')}" target="mainFrame" onclick="selected(this)">鏂藉伐鐜板満绠$悊</a>
+ <i class="glyphicon glyphicon-th-list"></i> <a class="afont" th:href="@{/geo/projectData/2(id=${project.ids},type='3')}" target="mainFrame" onclick="selected(this)">鏂藉伐鐜板満绠$悊</a>
</div>
</div>
<div class="box-header ">
diff --git a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/add.html b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/add.html
index d42906e..f31e8cf 100644
--- a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/add.html
+++ b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/add.html
@@ -20,8 +20,8 @@
<!-- </select>-->
<!-- </div>-->
<!-- </div>-->
- <div class="form-group">
- <label class="col-sm-3 control-label">鏂囦欢绫诲瀷锛�</label>
+ <div th:if="${dataType}=='3'" class="form-group">
+ <label class="col-sm-3 control-label">涓氬姟绫诲瀷锛�</label>
<div class="col-sm-8">
<select name="fileType" class="form-control m-b" th:with="type=${@dict.getType('project_data_file_type')}">
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
diff --git a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/edit.html b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/edit.html
index 804b13c..49ec861 100644
--- a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/edit.html
+++ b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/edit.html
@@ -13,16 +13,16 @@
<input name="name" th:field="*{name}" class="form-control" type="text">
</div>
</div>
- <div class="form-group">
- <label class="col-sm-3 control-label">璧勬枡绫诲瀷锛�</label>
- <div class="col-sm-8">
- <select name="dataType" class="form-control m-b" th:with="type=${@dict.getType('project_data_type')}" required>
- <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:field="*{dataType}"></option>
- </select>
- </div>
- </div>
- <div class="form-group">
- <label class="col-sm-3 control-label">鏂囦欢绫诲瀷锛�</label>
+<!-- <div class="form-group"> -->
+<!-- <label class="col-sm-3 control-label">璧勬枡绫诲瀷锛�</label>-->
+<!-- <div class="col-sm-8">-->
+<!-- <select name="dataType" class="form-control m-b" th:with="type=${@dict.getType('project_data_type')}" required>-->
+<!-- <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:field="*{dataType}"></option>-->
+<!-- </select>-->
+<!-- </div>-->
+<!-- </div>-->
+ <div th:if="${dataType}=='3'" class="form-group">
+ <label class="col-sm-3 control-label">涓氬姟绫诲瀷绫诲瀷锛�</label>
<div class="col-sm-8">
<select name="fileType" class="form-control m-b" th:with="type=${@dict.getType('project_data_file_type')}">
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:field="*{fileType}"></option>
diff --git a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/image_view.html b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/image_view.html
new file mode 100644
index 0000000..d57fba5
--- /dev/null
+++ b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/image_view.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
+<head>
+ <th:block th:include="include :: header('鏌ョ湅鍥剧墖')" />
+ <th:block th:include="include :: bootstrap-fileinput-css" />
+</head>
+<body class="gray-bg">
+
+ <div class="container-div">
+ <div class="row">
+ <img id="imgId" style="margin-left: 50%;transform: translateX(-50%)" >
+ </div>
+ </div>
+ <th:block th:include="include :: footer" />
+
+
+ <script th:inline="javascript">
+ var urlAddress = [[${urlAddress}]];
+
+ $(document).ready(function(){
+ $("#imgId").attr("src","/bjfw/profile/" + urlAddress);
+ })
+ </script>
+
+
+</body>
+
+</html>
\ No newline at end of file
diff --git a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/projectData.html b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/projectData.html
index ef289a1..50579ed 100644
--- a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/projectData.html
+++ b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/projectData.html
@@ -8,33 +8,7 @@
<div class="row">
<div class="col-sm-12 search-collapse">
<form id="formId">
-
- <!-- 鏉′欢琛ㄨ揪寮� -->
- <div th:if="${type}=='3'" class="select-list">
- <ul>
- <li>
- <p>璧勬枡鍚嶇О锛�</p>
- <input type="text" name="name"/>
- </li>
- <li>
- <p>涓氬姟绫诲瀷锛�</p>
- <select name="fileType" th:with="type=${@dict.getType('project_data_file_type')}">
- <option value="">鎵�鏈�</option>
- <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
- </select>
- </li>
- <li>
- <p>鏍囩锛�</p>
- <input type="text" name="labels"/>
- </li>
- <li>
- <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i> 鎼滅储</a>
- <a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i> 閲嶇疆</a>
- </li>
- </ul>
- </div>
- <!-- 鏉′欢琛ㄨ揪寮� -->
- <div th:if="${type}!='3'" class="select-list">
+ <div class="select-list">
<ul>
<li>
<p>璧勬枡鍚嶇О锛�</p>
@@ -67,6 +41,9 @@
<!-- <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="geo:projectData:export">-->
<!-- <i class="fa fa-download"></i> 瀵煎嚭-->
<!-- </a>-->
+ <a class="btn btn-danger" data-toggle="modal" onclick="uploadZIP();">
+ <i class="fa fa-upload"></i>涓婁紶闄勪欢
+ </a>
</div>
<div class="col-sm-12 select-table table-striped">
<table id="bootstrap-table"></table>
@@ -101,15 +78,8 @@
visible: false
},
{
- field : 'name',
+ field : 'name',
title : '璧勬枡鍚嶇О'
- },
- {
- field : 'fileType',
- title : '鏂囦欢绫诲瀷',
- formatter: function(value, row, index) {
- return $.table.selectDictLabel(fileTypeDatas, value);
- }
},
{
field : 'labels',
@@ -125,13 +95,30 @@
formatter: function(value, row, index) {
var actions = [];
actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.edit(\'' + row.id + '\')"><i class="fa fa-edit"></i>缂栬緫</a> ');
- actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>鍒犻櫎</a>');
+ actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>鍒犻櫎</a> ');
+ actions.push('<a class="btn btn-info btn-xs ' + '" href="javascript:void(0)" onclick="viewImg(\'' + row.dataUrl + '\' , \'' + row.id + '\')"><i class="glyphicon glyphicon-menu-hamburger"></i>鏌ョ湅闄勪欢</a>');
return actions.join('');
}
}]
};
$.table.init(options);
});
+
+ // 涓婁紶闄勪欢
+ function uploadZIP(){
+ $.modal.open('涓婁紶闄勪欢', prefix + "/importImg");
+ }
+
+
+ // 鏌ョ湅鍥剧墖璇︽儏
+ function viewImg(path, id) {
+ if(path === null || path === '' || path === 'null'){
+ $.modal.alertSuccess("鏂囦欢鏃犳硶鎵撳紑锛�");
+ return;
+ }
+ var url = prefix + "/viewImage?id=" + id;
+ $.modal.open("鏌ョ湅鍥剧墖", url, 800, 600);
+ }
</script>
</body>
</html>
\ No newline at end of file
diff --git a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/projectData2.html b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/projectData2.html
new file mode 100644
index 0000000..cd45369
--- /dev/null
+++ b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/projectData2.html
@@ -0,0 +1,137 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
+<head>
+ <th:block th:include="include :: header('椤圭洰璧勬枡鍒楄〃')" />
+</head>
+<body class="gray-bg">
+ <div class="container-div">
+ <div class="row">
+ <div class="col-sm-12 search-collapse">
+ <form id="formId">
+ <div th:if="${type}=='3'" class="select-list">
+ <ul>
+ <li>
+ <p>璧勬枡鍚嶇О锛�</p>
+ <input type="text" name="name"/>
+ </li>
+ <li>
+ <p>涓氬姟绫诲瀷锛�</p>
+ <select name="fileType" th:with="type=${@dict.getType('project_data_file_type')}">
+ <option value="">鎵�鏈�</option>
+ <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
+ </select>
+ </li>
+ <li>
+ <p>鏍囩锛�</p>
+ <input type="text" name="labels"/>
+ </li>
+ <li>
+ <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i> 鎼滅储</a>
+ <a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i> 閲嶇疆</a>
+ </li>
+ </ul>
+ </div>
+ </form>
+ </div>
+
+ <div class="btn-group-sm" id="toolbar" role="group">
+ <a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="geo:projectData:add">
+ <i class="fa fa-plus"></i> 娣诲姞
+ </a>
+ <a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="geo:projectData:edit">
+ <i class="fa fa-edit"></i> 淇敼
+ </a>
+ <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="geo:projectData:remove">
+ <i class="fa fa-remove"></i> 鍒犻櫎
+ </a>
+<!-- <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="geo:projectData:export">-->
+<!-- <i class="fa fa-download"></i> 瀵煎嚭-->
+<!-- </a>-->
+ <a class="btn btn-danger" data-toggle="modal" onclick="uploadZIP();">
+ <i class="fa fa-upload"></i>涓婁紶闄勪欢
+ </a>
+ </div>
+ <div class="col-sm-12 select-table table-striped">
+ <table id="bootstrap-table"></table>
+ </div>
+ </div>
+ </div>
+ <th:block th:include="include :: footer" />
+ <script th:inline="javascript">
+ var editFlag = [[${@permission.hasPermi('geo:projectData:edit')}]];
+ var removeFlag = [[${@permission.hasPermi('geo:projectData:remove')}]];
+ var dataTypeDatas = [[${@dict.getType('project_data_type')}]];
+ var fileTypeDatas = [[${@dict.getType('project_data_file_type')}]];
+ var projectId=[[${projectId}]];
+ var type=[[${type}]];
+ var prefix = ctx + "geo/projectData";
+ console.log("type",type);
+
+ $(function() {
+ var options = {
+ url: prefix + "/list?projectId=" + projectId + "&dataType=" + type,
+ createUrl: prefix + "/add?projectId=" + projectId + "&dataType=" + type,
+ updateUrl: prefix + "/edit/{id}",
+ removeUrl: prefix + "/remove",
+ exportUrl: prefix + "/export",
+ modalName: "椤圭洰璧勬枡",
+ columns: [{
+ checkbox: true
+ },
+ {
+ field : 'id',
+ title : '涓婚敭',
+ visible: false
+ },
+ {
+ field : 'name',
+ title : '璧勬枡鍚嶇О'
+ },
+ {
+ field : 'fileType',
+ title : '涓氬姟绫诲瀷',
+ formatter: function(value, row, index) {
+ return $.table.selectDictLabel(fileTypeDatas, value);
+ }
+ },
+ {
+ field : 'labels',
+ title : '鏍囩'
+ },
+ {
+ field : 'remark',
+ title : '澶囨敞'
+ },
+ {
+ title: '鎿嶄綔',
+ align: 'center',
+ formatter: function(value, row, index) {
+ var actions = [];
+ actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.edit(\'' + row.id + '\')"><i class="fa fa-edit"></i>缂栬緫</a> ');
+ actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>鍒犻櫎</a> ');
+ actions.push('<a class="btn btn-info btn-xs ' + '" href="javascript:void(0)" onclick="viewImg(\'' + row.dataUrl + '\' , \'' + row.id + '\')"><i class="glyphicon glyphicon-menu-hamburger"></i>鏌ョ湅闄勪欢</a>');
+ return actions.join('');
+ }
+ }]
+ };
+ $.table.init(options);
+ });
+
+ // 涓婁紶闄勪欢
+ function uploadZIP(){
+ $.modal.open('涓婁紶闄勪欢', prefix + "/importImg");
+ }
+
+
+ // 鏌ョ湅鍥剧墖璇︽儏
+ function viewImg(path, id) {
+ if(path === null || path === '' || path === 'null'){
+ $.modal.alertSuccess("鏂囦欢鏃犳硶鎵撳紑锛�");
+ return;
+ }
+ var url = prefix + "/viewImage?id=" + id;
+ $.modal.open("鏌ョ湅鍥剧墖", url, 800, 600);
+ }
+ </script>
+</body>
+</html>
\ No newline at end of file
diff --git a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/upload.html b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/upload.html
new file mode 100644
index 0000000..af16c54
--- /dev/null
+++ b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectData/upload.html
@@ -0,0 +1,90 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
+
+<head>
+ <th:block th:include="include :: header('鏂囨。鎻忚堪鍒楄〃')" />
+ <th:block th:include="include :: select2-css" />
+</head>
+
+<body class="gray-bg">
+ <div class="container-div">
+ <div class="row">
+ <div class="col-sm-12 search-collapse">
+ <form id="formId" enctype="multipart/form-data">
+ <div class="select-list">
+ <ul>
+ <li>
+ <p>鍖归厤瀛楁锛�</p>
+ <select id="docId" name="docId" class="form-control m-b">
+ <option value="filename">鍥剧墖鍚嶇О</option>
+ </select>
+ </li>
+
+ <li>
+ <p>鍘嬬缉鍖咃細</p>
+ <input type="file" id="file" name="file"/>
+ </li>
+
+ <li>
+ <a class="btn btn-primary btn-rounded btn-sm" onclick="upload()"><i class="fa fa-search"></i> 涓婁紶</a>
+ </li>
+
+ </ul>
+ </div>
+ </form>
+ </div>
+
+ <div class="col-sm-12 select-table table-striped">
+ <span>1銆佸崟涓垨鑰呭涓枃浠惰浠�.ZIP鍘嬬缉鍖呯殑褰㈠紡涓婁紶锛屾妸鍗曚釜鎴栬�呭涓枃浠舵斁鍒版枃浠跺す涓紝鍘嬬缉鏂囦欢澶逛负zip鏍煎紡<br> </span>
+ <span>1銆侀檮浠跺悕绉伴渶瑕佷笌绯荤粺鍐呯殑璧勬枡鍚嶇О涓�鑷�<br> </span>
+ <span>2銆佹枃浠朵笉鍏佽鍖呭惈鐗规畩瀛楃锛氱┖鏍� 銆佹鍙嶆枩绾裤�侀棶鍙枫�佹槦鍙风瓑<br> </span>
+ <span>3銆佷笂浼犳枃浠剁粡杩囦簡 瑙e帇 銆� 绉诲姩 銆侀亶鍘� 銆佹洿鏂版暟鎹簱绛夊涓楠わ紝璇疯�愬績绛夊緟<br> </span>
+ </div>
+
+ </div>
+ </div>
+
+ <th:block th:include="include :: footer" />
+ <th:block th:include="include :: select2-js" />
+ <script th:inline="javascript">
+
+ function upload(){
+ var file = $('#file').val();
+ if (file == '' || (!$.common.endWith(file, '.zip'))){
+ $.modal.msgWarning("璇烽�夋嫨鍘嬬缉鍖�");
+ return false;
+ }
+
+ var formData = new FormData();
+ formData.append("file", $('#file')[0].files[0]);
+ formData.append("fieldname", $('#docId').val());
+ $.modal.loading("鏁版嵁涓婁紶瑙f瀽涓�");
+
+ $.ajax({
+ url: ctx + "geo/projectData/uploadZIP",
+ data: formData,
+ cache: false,
+ contentType: false,
+ processData: false,
+ type: 'POST',
+ success: function (result) {
+ if (result.code == web_status.SUCCESS) {
+ $.modal.closeLoading();
+ $.modal.alertSuccess(result.msg);
+ } else if (result.code == web_status.WARNING) {
+
+ $.modal.closeLoading();
+ $.modal.alertWarning(result.msg)
+ } else {
+
+ $.modal.closeLoading();
+ $.modal.alertError(result.msg);
+ }
+ }
+ });
+ }
+
+ </script>
+</body>
+
+</html>
\ No newline at end of file
diff --git a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectPerson/add.html b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectPerson/add.html
index 1e6efd5..e023eaa 100644
--- a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectPerson/add.html
+++ b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectPerson/add.html
@@ -27,9 +27,15 @@
</div>
</div>
<div class="form-group">
- <label class="col-sm-3 control-label">鍦板潃锛�</label>
+ <label class="col-sm-3 control-label">韬唤璇佸彿锛�</label>
<div class="col-sm-8">
- <input name="address" class="form-control" type="text">
+ <input name="idCard" class="form-control" type="text">
+ </div>
+ </div>
+ <div class="form-group">
+ <label class="col-sm-3 control-label">浜哄憳鍒嗙粍锛�</label>
+ <div class="col-sm-8">
+ <input name="personGroup" class="form-control" type="text">
</div>
</div>
<div class="form-group">
diff --git a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectPerson/edit.html b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectPerson/edit.html
index 438156c..252804b 100644
--- a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectPerson/edit.html
+++ b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectPerson/edit.html
@@ -28,9 +28,15 @@
</div>
</div>
<div class="form-group">
- <label class="col-sm-3 control-label">鍦板潃锛�</label>
+ <label class="col-sm-3 control-label">韬唤璇佸彿锛�</label>
<div class="col-sm-8">
- <input name="address" th:field="*{address}" class="form-control" type="text">
+ <input name="idCard" th:field="*{idCard}" class="form-control" type="text">
+ </div>
+ </div>
+ <div class="form-group">
+ <label class="col-sm-3 control-label">浜哄憳鍒嗙粍锛�</label>
+ <div class="col-sm-8">
+ <input name="personGroup" th:field="*{personGroup}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
diff --git a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectPerson/projectPerson.html b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectPerson/projectPerson.html
index f2c1bc0..92f8fe4 100644
--- a/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectPerson/projectPerson.html
+++ b/javaweb-plus/javaweb-cms/src/main/resources/templates/geo/projectPerson/projectPerson.html
@@ -93,9 +93,13 @@
title : '鎵嬫満鍙�'
},
{
- field : 'address',
- title : '鍦板潃'
+ field : 'idCard',
+ title : '韬唤璇佸彿'
},
+ {
+ field : 'personGroup',
+ title : '浜哄憳鍒嗙粍'
+ },
{
field : 'responsibility',
title : '鑱岃矗'
--
Gitblit v1.9.1