From 13f8c6f988f54cc442280a51c23d6c53c126d3e9 Mon Sep 17 00:00:00 2001
From: lzhe <lzhe@example.com>
Date: 星期五, 10 五月 2024 12:10:24 +0800
Subject: [PATCH] 1
---
src/views/notification/business.vue | 87 ++++++++++++++++++++++++++++++++++++-------
1 files changed, 73 insertions(+), 14 deletions(-)
diff --git a/src/views/notification/business.vue b/src/views/notification/business.vue
index 179b73e..ab382a9 100644
--- a/src/views/notification/business.vue
+++ b/src/views/notification/business.vue
@@ -2,7 +2,7 @@
* @Author: lzhe lzhe@example.com
* @Date: 2024-03-26 10:28:33
* @LastEditors: lzhe lzhe@example.com
- * @LastEditTime: 2024-05-09 18:06:28
+ * @LastEditTime: 2024-05-10 12:08:41
* @FilePath: /smart-web/src/views/master/person/main/index.vue
* @Description: 杩欐槸榛樿璁剧疆,璇疯缃甡customMade`, 鎵撳紑koroFileHeader鏌ョ湅閰嶇疆 杩涜璁剧疆: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
-->
@@ -23,11 +23,11 @@
<div class="right-content">
<div class="content-title">
<span class="ct-span">閫氱煡鏂瑰紡</span>
- <el-icon><Setting /></el-icon>
+ <el-icon @click="gojob"><Setting /></el-icon>
</div>
<el-row class="template-content-box">
<el-col :span="8" v-for="(item,index) in contentData">
- <el-checkbox v-model="item.checked" label="閫夋嫨" size="large" />
+ <el-checkbox v-model="item.checked" label="閫夋嫨" size="large" @change="checkboxChange($event,index,item)"/>
<div class="box-top">
<div class="box-top-name">{{item.notifyName}}</div>
<div class="box-top-title">{{item.notifyTemplateName}}</div>
@@ -80,6 +80,7 @@
name: "business",
data(){
return {
+ businessKey: "",
isSaveing: false,
employeeLi: [],
organizationLi: [],
@@ -111,7 +112,6 @@
},
mounted(){
this.getTreeList();
- this.getbusiness();
this.getgroupType();
this.getEmployeeList();
},
@@ -119,15 +119,49 @@
...ElementPlusIconsVue,saveDialog
},
methods: {
+ gojob() {
+ window.open('http://116.63.148.72:8080/xxl-job-admin');
+ },
+ checkboxChange(e,index,item) {
+ var obj = {
+ businessKey: item.businessKey,
+ notifyType: item.notifyType,
+ status: e?"1":"0"
+ }
+ this.$HTTP.put("/api/blade-notify/business-notify/changeStatus",obj).then(res=> {
+ if(res.code == 200) {
+ this.getbusiness(); //鍒锋柊鍒楄〃
+ }
+ })
+ },
saveSubmit() {
-
+ var empIds = [];
+ var orgIds = [];
+ this.employeeLi.forEach(item=> {
+ empIds.push(item.id);
+ })
+ this.organizationLi.forEach(item=> {
+ orgIds.push(item.id);
+ })
+ var obj = {
+ businessKey: this.businessKey,empIds,orgIds
+ }
+ this.$HTTP.post("/api/blade-notify/business-notify",obj).then(res=> {
+ if(res.code == 200) {
+ this.$message.success("淇濆瓨鎴愬姛");
+ }
+ })
},
resetData() {
this.employeeLi = [];
this.organizationLi = [];
},
radio1Change(val) {
- this.getgroupType(val);
+ if(val == 1) {
+ this.getgroupType();
+ }else if(val == 2) {
+ this.getEmployeeList();
+ }
},
addOrganization() {
this.isaddOrganization = false;
@@ -194,29 +228,54 @@
})
},
getbusiness() {
- this.$HTTP.get("/api/blade-notify/business-notify?businessKey=maintenance").then(res=> {
+ this.$HTTP.get(`/api/blade-notify/business-notify?businessKey=${this.businessKey}`).then(res=> {
if(res.code == 200) {
res.data.businessNotifyDTOList.forEach(item=> {
item.checked = (item.status == '0'?false: true);
})
this.contentData = res.data.businessNotifyDTOList;
+ this.employeeLi = res.data.defaultObject.empList || []; //閮ㄩ棬鍙嶆樉
+ this.organizationLi = res.data.defaultObject.orgList || []; //鍛樺伐鍙嶆樉
+ if(this.organizationLi != null ) {
+ this.isaddOrganization = false;
+ }
}
})
},
handleNodeClick(data) {
- if(data.code) {
- this.lastLevelId = data.id;
- // this.$HTTP.post("/api/blade-cps/workstation-wcs-feedback/page?current=1&size=15",obj).then(res=> {
- // if(res.code == 200) {
- // this.searchDataList = res.data.records;
- // }
- // })
+ if(data.businessKey) {
+ this.businessKey = data.businessKey;
+ this.getbusiness();
}
+ },
+ getLastLevelIds(tree) {
+ if (tree.length === 0) return ""; // 濡傛灉娌℃湁鏍硅妭鐐癸紝杩斿洖绌�
+ const lastLevelIds = [];
+ const lastLevelCodes = [];
+ function traverseTree(node) {
+ if(!node.children) {
+ lastLevelCodes.push(node);
+ }
+ if (node.children) {
+ node.children.forEach(traverseTree); // 閫掑綊閬嶅巻瀛愯妭鐐�
+ } else {
+ lastLevelIds.push(node.id);
+ }
+ }
+ // 鍙亶鍘嗙涓�涓牴鑺傜偣
+ traverseTree(tree[0]);
+ return {lastLevelCodes,lastLevelId:lastLevelIds[0]}; // 杩斿洖lastLevelCodes锛氭病鏈塩ode鐨勬暟缁勩�俵astLevelId锛氭湁code鐨勭涓�涓猧d
},
getTreeList() {
this.$HTTP.get("/api/blade-notify/business-notify/tree").then(res=> {
if(res.code == 200) {
this.tableData = res.data;
+ this.lastLevelId = this.getLastLevelIds(this.tableData).lastLevelId;
+ this.$nextTick(()=>{
+ this.$refs.treeRef.setCurrentKey(this.lastLevelId); //绗竴涓妭鐐圭殑绗竴涓瓙鑺傜偣鏈�鍚庝竴绾ч粯璁ら�変腑
+ })
+ this.businessKey = this.getLastLevelIds(this.tableData).lastLevelCodes[0].businessKey;
+ this.getbusiness();
}
})
},
--
Gitblit v1.9.3