前端添加导入名单动画,区域管理添加区域树形图
diff --git a/src/main/java/com/supwisdom/dlpay/system/bean/RegionZTreeNodes.java b/src/main/java/com/supwisdom/dlpay/system/bean/RegionZTreeNodes.java
new file mode 100644
index 0000000..635ea74
--- /dev/null
+++ b/src/main/java/com/supwisdom/dlpay/system/bean/RegionZTreeNodes.java
@@ -0,0 +1,49 @@
+package com.supwisdom.dlpay.system.bean;
+
+public class RegionZTreeNodes {
+ private String id;
+ private String pId;
+ private String name;
+ private boolean isParent;
+ private boolean open;
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getpId() {
+ return pId;
+ }
+
+ public void setpId(String pId) {
+ this.pId = pId;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public boolean isParent() {
+ return isParent;
+ }
+
+ public void setParent(boolean parent) {
+ isParent = parent;
+ }
+
+ public boolean isOpen() {
+ return open;
+ }
+
+ public void setOpen(boolean open) {
+ this.open = open;
+ }
+}
diff --git a/src/main/java/com/supwisdom/dlpay/system/controller/SystemController.java b/src/main/java/com/supwisdom/dlpay/system/controller/SystemController.java
index c5409c5..605449e 100644
--- a/src/main/java/com/supwisdom/dlpay/system/controller/SystemController.java
+++ b/src/main/java/com/supwisdom/dlpay/system/controller/SystemController.java
@@ -9,6 +9,7 @@
import com.supwisdom.dlpay.system.bean.AllotBuildingBean;
import com.supwisdom.dlpay.system.bean.BuildingBean;
import com.supwisdom.dlpay.system.bean.RegionBean;
+import com.supwisdom.dlpay.system.bean.RegionZTreeNodes;
import com.supwisdom.dlpay.system.domain.*;
import com.supwisdom.dlpay.system.page.Pagination;
import com.supwisdom.dlpay.system.service.SystemService;
@@ -423,6 +424,21 @@
return map;
}
+
+ /**
+ * 填充区域树
+ * @param operator
+ * @return
+ */
+ @ResponseBody
+ @RequestMapping("/fillRegionTree")
+ public Map fillRegionTree(@AuthenticationPrincipal TOperator operator){
+ Map map = new HashMap();
+ List<RegionZTreeNodes> regionTreeList = systemService.getAllRegionTreeList();
+ map.put("regionTree", regionTreeList);
+ return map;
+ }
+
/**
* 根据查询条件分页获取楼栋
* @param request
diff --git a/src/main/java/com/supwisdom/dlpay/system/service/SystemService.java b/src/main/java/com/supwisdom/dlpay/system/service/SystemService.java
index d9402a6..ff84e30 100644
--- a/src/main/java/com/supwisdom/dlpay/system/service/SystemService.java
+++ b/src/main/java/com/supwisdom/dlpay/system/service/SystemService.java
@@ -3,6 +3,7 @@
import com.supwisdom.dlpay.ncmgr.domain.TBuilding;
import com.supwisdom.dlpay.system.bean.AllotBuildingBean;
+import com.supwisdom.dlpay.system.bean.RegionZTreeNodes;
import com.supwisdom.dlpay.system.domain.*;
import com.supwisdom.dlpay.system.page.Pagination;
@@ -80,6 +81,9 @@
//修改区域
public boolean updateRegion(TRegion bean);
+ //获取区域树形数据
+ public List<RegionZTreeNodes> getAllRegionTreeList();
+
//根据查询条件分页获取所有楼栋
public Pagination getSystemBuildingList(String regionid,String buildingname,int pageNo,int pageSize);
diff --git a/src/main/java/com/supwisdom/dlpay/system/service/impl/SystemServiceImpl.java b/src/main/java/com/supwisdom/dlpay/system/service/impl/SystemServiceImpl.java
index 9205dda..3cbe761 100644
--- a/src/main/java/com/supwisdom/dlpay/system/service/impl/SystemServiceImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/system/service/impl/SystemServiceImpl.java
@@ -2,6 +2,7 @@
import com.supwisdom.dlpay.ncmgr.domain.TBuilding;
import com.supwisdom.dlpay.system.bean.AllotBuildingBean;
+import com.supwisdom.dlpay.system.bean.RegionZTreeNodes;
import com.supwisdom.dlpay.system.dao.BuildingDao;
import com.supwisdom.dlpay.system.dao.DictionaryDao;
import com.supwisdom.dlpay.system.dao.OperatorDao;
@@ -12,6 +13,7 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import java.util.ArrayList;
import java.util.List;
@Service
@@ -149,6 +151,22 @@
return regionDao.updateRegion(bean);
}
+ @Override
+ public List<RegionZTreeNodes> getAllRegionTreeList() {
+ List<RegionZTreeNodes> regionZTreeNodesList = new ArrayList<>();
+ List<TRegion> regions = regionDao.getAllRegions();
+ for (TRegion region:regions){
+ RegionZTreeNodes node = new RegionZTreeNodes();
+ node.setId(region.getRegionid());
+ node.setName(region.getRegionname()+"-"+region.getLevel()+"级");
+ node.setpId(region.getParentid());
+ node.setParent(false);
+ regionZTreeNodesList.add(node);
+ }
+
+ return regionZTreeNodesList;
+ }
+
@Override
public Pagination getSystemBuildingList(String regionid, String buildingname, int pageNo, int pageSize) {
diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties
index b17f28c..3421309 100644
--- a/src/main/resources/application.properties
+++ b/src/main/resources/application.properties
@@ -31,6 +31,8 @@
server.tomcat.uri-encoding=UTF-8
################################################
+
+spring.servlet.multipart.max-file-size=10MB
# user password
auth.password.bcrypt.length=10
diff --git a/src/main/resources/templates/doorlist/impCustomerlist.html b/src/main/resources/templates/doorlist/impCustomerlist.html
index 884f36b..89a31b4 100644
--- a/src/main/resources/templates/doorlist/impCustomerlist.html
+++ b/src/main/resources/templates/doorlist/impCustomerlist.html
@@ -7,7 +7,10 @@
</span>
</div>
<div class="layui-card-body">
- <div id="impCustomerlist">
+ <div id="impCustomerlist" v-loading.lock="loading"
+ element-loading-text="拼命导入ing不要取消~~~"
+ element-loading-spinner="el-icon-loading"
+ element-loading-background="rgba(0, 0, 0, 0.8)">
<el-alert
title="人员名单导入步骤:"
type="info"
@@ -56,6 +59,8 @@
exceltable:[],
textfield:'',
+ loading:false,
+
per_sheetname:'sheet1',
impDoorForm:{
}
@@ -81,16 +86,23 @@
var path=JSON.parse(JSON.stringify(this.textfield));
console.log(path);
var file=path.substring(path.lastIndexOf(".") + 1);
+
impCustomerlist_uploadExcel(path,file);
this.textfield='';
+
},
+
+
+
},
created:function(){
}
});
+
+
function impCustomerlist_uploadExcel(path,file) {
if (path.length == 0) {
layer.msg('请选择要上传的文件!', {icon: 2, time: 1000});
@@ -113,6 +125,7 @@
$('#excelTable').show();
var token=$("meta[name='_csrf_token']").attr("value");
+ impCustomerlist_vue.loading = true;
var options = {
success: "",
type: 'post',
@@ -126,6 +139,7 @@
//data: formData,
success:function(data){
//console.log(data);
+ impCustomerlist_vue.loading = false;
if (data.flag==1){
var tmpStr = "共:"+data.imp_totCnt+"条,成功:"+data.imp_succCnt+"条,失败:"+data.imp_errCnt+"条";
layer.alert('人员名单导入完成-->'+tmpStr, {icon: 6});
diff --git a/src/main/resources/templates/system/region.html b/src/main/resources/templates/system/region.html
index bdcb65d..5bdffbe 100644
--- a/src/main/resources/templates/system/region.html
+++ b/src/main/resources/templates/system/region.html
@@ -19,11 +19,11 @@
</div>
</div>
</div>
- <div class="col-md-3">
+ <div class="col-md-6">
<div class="form-group">
<button type="button" class="btn btn-info" @click="query" id="region_qrybtn">查 询</button>
<button class="btn btn-primary" type="button" @click="addRegion">添加区域</button>
- <!--<button class="btn btn-info" type="button" @click="lookTree">查看区域树形图</button>-->
+ <button class="btn btn-info" type="button" @click="lookTree">查看区域树形图</button>
</div>
</div>
</el-form>
@@ -143,6 +143,23 @@
<el-button type="primary" @click="saveRegion('regionDiaForm')">确 定</el-button>
</div>
</el-dialog>
+
+ <!--区域树形图-->
+ <el-dialog :title="regionTreetitile" :visible.sync="dialogTreeVisible" :modal-append-to-body='false' >
+ <el-input
+ placeholder="输入关键字进行过滤"
+ v-model="filterText">
+ </el-input>
+
+ <el-tree
+ class="filter-tree"
+ :data="regionTreeList"
+ :props="defaultProps"
+ default-expand-all
+ :filter-node-method="filterNode"
+ ref="tree">
+ </el-tree>
+ </el-dialog>
</div>
</div>
</div>
@@ -161,6 +178,7 @@
regionname:''
},
dialogFormVisible: false,
+ dialogTreeVisible: false,
regionidDis:false,
dlgAllotDevVisible:false,
parentRegions:[],
@@ -186,6 +204,19 @@
]
},
regiontitile:'添加区域',
+ regionTreetitile:'区域树形图',
+
+ filterText: '',
+ regionTreeList: [],
+ defaultProps: {
+ children: 'children',
+ label: 'label'
+ }
+ },
+ watch:{
+ filterText(val) {
+ this.$refs.tree.filter(val);
+ }
},
methods:{
handleSizeChange:function(val) {
@@ -247,6 +278,15 @@
},
levelform: function (row, column, cellValue) {
return row.level+"级";
+ },
+ lookTree:function () {
+ region_fillTree(this);
+ this.dialogTreeVisible = true;
+
+ },
+ filterNode(value, data) {
+ if (!value) return true;
+ return data.label.indexOf(value) !== -1;
}
},
created:function(){
@@ -355,9 +395,59 @@
})
}
- /* function lookTree(){
- alert(tree);
- }*/
+ function region_fillTree(_self){
+ $.ajax({
+ type: "get",
+ url: encodeURI("[[@{/system/fillRegionTree}]]"),
+ dataType: "json",
+ contentType: "application/json",
+ success: function (data) {
+
+ _self.regionTreeList = getTreeData(data.regionTree) ;
+ }
+ });
+ }
+
+ function getTreeData(regionlst){
+ var f = [];
+
+ //获取第一级
+ for(var i=0;i<regionlst.length;i++){
+ if(regionlst[i].pId == 0){
+ f.push({
+ id:regionlst[i].id,
+ label:regionlst[i].name,
+ children:[]
+ })
+ }
+ }
+ if(f.length>0){
+ //获取第二级
+ pushRegion(regionlst,f);
+ }
+ for(var i in f){
+ var s = f[i].children;
+ if(s.length>0){
+ pushRegion(regionlst,s);
+ }
+ }
+
+ return f;
+ }
+
+ function pushRegion(regionlst,pRe){
+ for(var i in regionlst){
+ for(var j in pRe){
+ if(regionlst[i].pId == pRe[j].id){
+ pRe[j].children.push({
+ id:regionlst[i].id,
+ label:regionlst[i].name,
+ children:[]
+ })
+ }
+ }
+ }
+ }
function region_saveData(_that,formdata,formName){