From 12e90cca31d377e28cfe5c6442509841991308e9 Mon Sep 17 00:00:00 2001
From: hanbaoshan <hanbaoshan@aiotlink.com>
Date: 星期四, 25 二月 2021 11:00:57 +0800
Subject: [PATCH] ztree分析图标着色;应用中心产品详情弹框初步搭建
---
src/pages/shuohuangMonitorAnalyze/components/memberManage.vue | 134 +++++++++++++++++++++++++-------------------
1 files changed, 77 insertions(+), 57 deletions(-)
diff --git a/src/pages/shuohuangMonitorAnalyze/components/memberManage.vue b/src/pages/shuohuangMonitorAnalyze/components/memberManage.vue
index 4f1ca37..bfe6e92 100644
--- a/src/pages/shuohuangMonitorAnalyze/components/memberManage.vue
+++ b/src/pages/shuohuangMonitorAnalyze/components/memberManage.vue
@@ -33,11 +33,12 @@
<el-option
v-for="item in genders"
:key="item.id"
- :value="item.id"
+ :value="item.name=='鍏ㄩ儴'?'':item.name"
:label="item.name"
>{{item.name}}</el-option>
</el-select>
<el-button type="primary" size="small" @click="renderMemberTable">鏌ヨ</el-button>
+ <el-button type="primary" size="small" @click="resetFilter">閲嶇疆</el-button>
</div>
<div class="table-area">
<div class="actions">
@@ -98,6 +99,15 @@
</template>
</el-table-column>
</el-table>
+ <el-pagination
+ @size-change="handleTableSizeChange"
+ @current-change="renderMemberTable"
+ :current-page.sync="PageIndex"
+ :page-size="PageSize"
+ :page-sizes="pageSizes"
+ layout="total,sizes, prev, pager, next"
+ :total="tableTotal"
+ ></el-pagination>
</div>
</div>
<el-dialog
@@ -148,7 +158,7 @@
<el-form-item label="韬唤璇佸彿:">
<el-input v-model="memberEditForm.OwnerID" size="mini"></el-input>
</el-form-item>
- <el-form-item label="鎵嬫満鍙�:">
+ <el-form-item label="鎵嬫満鍙�:" prop="Tel">
<el-input v-model="memberEditForm.Tel" size="mini"></el-input>
</el-form-item>
<div class="btns">
@@ -196,45 +206,25 @@
<p class="tip">
*璇锋彁鍓嶆牴鎹枃浠舵ā鏉夸腑鐨勮姹傛敹闆嗕汉鍛樹俊鎭紝鍦ㄤ竴涓枃浠跺す涓瓨鏀句汉鍛樼収鐗囧拰EXCEL鏂囦欢
(
- <a href="javascript:;" @mouseover="showDemo=true" @mouseout="showDemo=false">绀轰緥</a>),鐐瑰嚮
+ <a
+ href="javascript:;"
+ @mouseover="showDemo=true"
+ @mouseout="showDemo=false"
+ >绀轰緥</a>),鐐瑰嚮
<a href="javascript:;">涓嬭浇妯℃澘.excel</a>
<img class="tip-demo" v-if="showDemo" :src="`${publicPath}images/shuohuang/tip.jpg`" alt />
</p>
<div class="flex-box">
- <label>涓婁紶鏂囦欢:</label>
+ <label>涓婁紶鏂囦欢澶�:</label>
<el-button size="mini" type="primary" @click="uploadDirectoryTrigger">鐐瑰嚮涓婁紶</el-button>
<input ref="directoryInput" @change="importDirectory" hidden type="file" webkitdirectory />
- <!-- <el-button size="mini" type="primary" @click="uploadExeclTrigger" style="margin-left:10px;">鐐瑰嚮涓婁紶Excel</el-button>
- <input ref="excelInput" @change="importExecl" hidden type="file" accept=".xlsx">-->
- <!-- <el-upload
- class="upload-demo batch-upload"
- action="https://jsonplaceholder.typicode.com/posts/"
- :on-remove="handleRemove"
- multiple
- :limit="3"
- :http-request="batchImportFiles"
- :on-exceed="handleExceed"
- :file-list="fileList"
- >
- <el-button size="small" type="primary">鐐瑰嚮涓婁紶</el-button>
- <div slot="tip" class="el-upload__tip"></div>
- </el-upload>-->
</div>
<el-table class="thbg" :data="batchImportTableData" fit>
<el-table-column type="index" label="搴忓彿"></el-table-column>
- <el-table-column prop="filename" label="鏂囦欢鍚嶇О"></el-table-column>
- <el-table-column prop="time" label="涓婁紶鏃堕棿"></el-table-column>
- <el-table-column prop="state" label="鐘舵��"></el-table-column>
+ <el-table-column prop="Name" label="鏂囦欢鍚嶇О"></el-table-column>
+ <el-table-column prop="UploadTime" label="涓婁紶鏃堕棿"></el-table-column>
+ <el-table-column prop="Status" label="鐘舵��"></el-table-column>
</el-table>
- <el-pagination
- @size-change="handleTableSizeChange"
- @current-change="renderMemberTable"
- :current-page.sync="PageIndex"
- :page-size="PageSize"
- :page-sizes="pageSizes"
- layout="total,sizes, prev, pager, next"
- :total="tableTotal"
- ></el-pagination>
</div>
</el-dialog>
</div>
@@ -242,8 +232,7 @@
<script>
-import { getShuohuangDepartTree, getOrganizeTree, getMemberList, updateMemberInfo, addMember, updateUnit, uploadMemberPic, uploadDirectory } from '@/api/shuohuang'
-
+import { getShuohuangDepartTree, getOrganizeTree, getMemberList, updateMemberInfo, addMember, updateUnit, uploadMemberPic, uploadDirectory, uploadFile } from '@/api/shuohuang'
export default {
data () {
return {
@@ -258,7 +247,7 @@
menuLeft: 0,
keyword: '',
gender: '',
- genders: [{ name: '鐢�', id: 'g0' }, { name: '濂�', id: 'g1' }],
+ genders: [{id:'g3',name:'鍏ㄩ儴'},{ name: '鐢�', id: 'g0' }, { name: '濂�', id: 'g1' }],
tableData: [],
multipleTableSelection: [],
PageIndex: 1,
@@ -276,7 +265,8 @@
memberEditFormRule: {
Name: [{ required: true, message: '璇疯緭鍏ュ鍚�', trigger: 'change' }],
UserName: [{ required: true, message: '璇疯緭鍏ュ鍚�', trigger: 'change' }],
- Sex: [{ required: true, message: '璇烽�夋嫨鎬у埆', trigger: 'change' }]
+ Sex: [{ required: true, message: '璇烽�夋嫨鎬у埆', trigger: 'change' }],
+ Tel: [{ validator: this.isPhone, trigger: 'change' }],
},
memberPicUrl: '',
showDemo: false,
@@ -290,8 +280,21 @@
},
methods: {
+ resetFilter(){
+ this.keyword = '';
+ this.gender = '';
+ this.renderMemberTable();
+ },
+ isPhone (rule, value, callback) {
+ if (value.trim()) {
+ var pattern = /^1[345789]\d{9}$/
+ if (pattern.test(value)) {
+ return callback()
+ }
+ return callback(new Error('杈撳叆鐨勬墜鏈哄彿閿欒'))
+ }
+ },
nodeContextMenu (e, data, node, comp) {
- debugger
this.showMenu = true;
this.menuTop = e.pageY;
this.menuLeft = e.pageX;
@@ -325,8 +328,9 @@
memberSave () {
this.$refs['memberForm'].validate((valid) => {
if (valid) {
+ let params = Object.assign({ DeptID: this.curLeftTreeNode.id }, this.memberEditForm);
if (this.memberEditForm.ID) {
- updateMemberInfo(this.memberEditForm).then(res => {
+ updateMemberInfo(params).then(res => {
if (res.success) {
this.$notify({
type: 'success',
@@ -334,16 +338,19 @@
});
this.memberEditDialogVisible = false;
this.renderMemberTable();
+ this.searchLeftTreeData();
}
})
} else {
- addMember(this.memberEditForm).then(res => {
+ addMember(params).then(res => {
if (res.success) {
this.$notify({
type: 'success',
message: res.msg
})
this.renderMemberTable();
+ this.memberEditDialogVisible = false;
+ this.searchLeftTreeData();
}
})
}
@@ -353,11 +360,10 @@
})
},
delMember (member) {
- member.IsDel = true;
+ member.IsDel = '1';
this.memberUpdate(member);
},
editMember (member) {
- debugger
this.memberEditDialogVisible = true;
this.memberEditForm = member;
},
@@ -369,11 +375,12 @@
message: res.msg
});
this.renderMemberTable();
+ this.searchLeftTreeData();
}
})
},
checkNode (a, b, c) {
- if (a.children) {
+ if (a.hasOwnProperty('children')) {
this.curLeftTreeNode = a;
this.deptId = a.id;
this.renderMemberTable();
@@ -387,13 +394,14 @@
let _this = this;
let params = {
DeptID: this.deptId,
- keyword: this.keyword,
+ Keyword: this.keyword,
Sex: this.gender,
PageIndex: this.PageIndex,
PageSize: this.PageSize
}
getMemberList(params).then(res => {
_this.tableData = res.data;
+ _this.tableTotal = res.total;
})
},
uploadPic () {
@@ -402,19 +410,20 @@
uploadDirectoryTrigger () {
this.$refs['directoryInput'].click();
},
- // uploadExeclTrigger(){
- // this.$refs['excelInput'].click();
- // },
importDirectory () {
+ let _this = this;
//this.$refs['directoryInput'].files //鏂囦欢澶筸ap
let formData = new FormData;
- formData.append('File', this.$refs['directoryInput'].files)
- debugger
- // uploadDirectory(formData).then(res=>{
- // debugger
+ for (var file in this.$refs['directoryInput'].files) {
+ formData.append('files', this.$refs['directoryInput'].files[file])
+ }
+ //formData.append('files', this.$refs['directoryInput'].files)
- // })
-
+ uploadDirectory(formData).then(res => {
+ debugger
+ _this.batchImportTableData = res.data;
+ _this.renderMemberTable();
+ })
},
handleRemove () {
@@ -438,8 +447,10 @@
},
deepNodeChildren (node) {
+ var arr1 = [];
+ var arr2 = [];
if (node.ChildDept && node.ChildDept.length > 0) {
- return node.ChildDept.map(child => {
+ arr1 = node.ChildDept.map(child => {
let childObj = {};
childObj.id = child.ID;
childObj.label = child.Name;
@@ -452,8 +463,9 @@
}
return childObj;
});
- } else if (node.UserLst && node.UserLst.length > 0) {
- return node.UserLst.map(child => {
+ }
+ if (node.UserLst && node.UserLst.length > 0) {
+ arr2 = node.UserLst.map(child => {
let childObj = {};
childObj.id = child.ID;
childObj.label = child.Name;
@@ -461,6 +473,7 @@
return childObj;
});
}
+ return arr1.concat(arr2)
},
getOrganizeTreeData () {
let _this = this;
@@ -487,9 +500,13 @@
return obj
});
this.$nextTick(() => {
- _this.$refs['leftTreeNodes'].setCurrentNode(_this.treeData[0]);
- _this.curLeftTreeNode = _this.treeData[0];
- _this.checkNode(_this.treeData[0]);
+ if (!Object.keys(_this.curLeftTreeNode).length) {
+ _this.curLeftTreeNode = _this.treeData[0];
+ _this.$refs['leftTreeNodes'].setCurrentNode(_this.treeData[0]);
+ } else {
+ _this.$refs['leftTreeNodes'].setCurrentNode(_this.curLeftTreeNode);
+ }
+ _this.checkNode(_this.curLeftTreeNode);
})
})
@@ -557,6 +574,9 @@
.el-form-item__label {
width: 100px;
}
+ .el-form-item__error {
+ left: 120px;
+ }
}
}
.el-input {
--
Gitblit v1.8.0