From e1947c8638faedf07e2298a57a850f711196845f Mon Sep 17 00:00:00 2001
From: gaoshp <291585735@qq.com>
Date: 星期六, 27 四月 2024 21:41:39 +0800
Subject: [PATCH] 机器组
---
src/utils/request.js | 70 +++++++++++-----------
src/views/tpm/machine-management.vue | 13 ---
src/views/tpm/MachineGroup.vue | 80 +++++++++++++++++++++-----
3 files changed, 101 insertions(+), 62 deletions(-)
diff --git a/src/utils/request.js b/src/utils/request.js
index 262d2f1..ec1904e 100644
--- a/src/utils/request.js
+++ b/src/utils/request.js
@@ -13,10 +13,10 @@
(config) => {
let token = tool.cookie.get("TOKEN");
config.headers['Authorization'] = 'Basic c2FiZXI6c2FiZXJfc2VjcmV0'
- if(token){
+ if (token) {
config.headers[sysConfig.TOKEN_NAME] = sysConfig.TOKEN_PREFIX + token
}
- if(!sysConfig.REQUEST_CACHE && config.method == 'get'){
+ if (!sysConfig.REQUEST_CACHE && config.method == 'get') {
config.params = config.params || {};
// config.params['_'] = new Date().getTime();
}
@@ -49,7 +49,7 @@
message: error.response.data.message || "Status:500锛屾湇鍔″櫒鍙戠敓閿欒锛�"
});
} else if (error.response.status == 401) {
- if(!MessageBox_401_show){
+ if (!MessageBox_401_show) {
MessageBox_401_show = true
ElMessageBox.confirm('褰撳墠鐢ㄦ埛宸茶鐧诲嚭鎴栨棤鏉冮檺璁块棶褰撳墠璧勬簮锛岃灏濊瘯閲嶆柊鐧诲綍鍚庡啀鎿嶄綔銆�', '鏃犳潈闄愯闂�', {
type: 'error',
@@ -61,8 +61,8 @@
done()
}
}).then(() => {
- router.replace({path: '/login'});
- }).catch(() => {})
+ router.replace({ path: '/login' });
+ }).catch(() => { })
}
} else {
ElNotification.error({
@@ -81,16 +81,16 @@
}
);
function qsStringify(obj) {
- return Object.keys(obj)
- .map(key => {
- if (Array.isArray(obj[key])) {
- return obj[key]
- .map(arrayValue => `${encodeURIComponent(key)}=${encodeURIComponent(arrayValue)}`)
- .join('&');
- }
- return `${encodeURIComponent(key)}=${encodeURIComponent(obj[key])}`;
- })
- .join('&');
+ return Object.keys(obj)
+ .map(key => {
+ if (Array.isArray(obj[key])) {
+ return obj[key]
+ .map(arrayValue => `${encodeURIComponent(key)}=${encodeURIComponent(arrayValue)}`)
+ .join('&');
+ }
+ return `${encodeURIComponent(key)}=${encodeURIComponent(obj[key])}`;
+ })
+ .join('&');
}
var http = {
@@ -100,7 +100,7 @@
* @param {object} params 璇锋眰鍙傛暟
* @param {object} config 鍙傛暟
*/
- get: function(url, params={}, config={}) {
+ get: function (url, params = {}, config = {}) {
return new Promise((resolve, reject) => {
axios({
method: 'get',
@@ -120,7 +120,7 @@
* @param {object} data 璇锋眰鍙傛暟
* @param {object} config 鍙傛暟
*/
- post: function(url, data={}, config={}) {
+ post: function (url, data = {}, config = {}) {
return new Promise((resolve, reject) => {
axios({
method: 'post',
@@ -130,12 +130,12 @@
}).then((response) => {
resolve(response.data);
}).catch((error) => {
- if(error.status == 400) {
+ if (error.status == 400) {
ElMessage({
- message: error.data.msg,
- type: 'warning',
- })
- }else {
+ message: error.data.msg,
+ type: 'warning',
+ })
+ } else {
reject(error);
}
})
@@ -146,13 +146,13 @@
* @param {object} data 璇锋眰鍙傛暟
* @param {object} config 鍙傛暟
*/
- postJ: function(url, data={}, config={}) {
+ postJ: function (url, data = {}, config = {}) {
return new Promise((resolve, reject) => {
console.log(qsStringify(data))
axios({
method: 'post',
url: url,
- headers: { 'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'},
+ headers: { 'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8' },
data: qsStringify(data),
...config
}).then((response) => {
@@ -167,7 +167,7 @@
* @param {object} data 璇锋眰鍙傛暟
* @param {object} config 鍙傛暟
*/
- put: function(url, data={}, config={}) {
+ put: function (url, data = {}, config = {}) {
return new Promise((resolve, reject) => {
axios({
method: 'put',
@@ -187,7 +187,7 @@
* @param {object} data 璇锋眰鍙傛暟
* @param {object} config 鍙傛暟
*/
- patch: function(url, data={}, config={}) {
+ patch: function (url, data = {}, config = {}) {
return new Promise((resolve, reject) => {
axios({
method: 'patch',
@@ -207,7 +207,7 @@
* @param {object} data 璇锋眰鍙傛暟
* @param {object} config 鍙傛暟
*/
- delete: function(url, data={}, config={}) {
+ delete: function (url, data = {}, config = {}) {
return new Promise((resolve, reject) => {
axios({
method: 'delete',
@@ -217,12 +217,12 @@
}).then((response) => {
resolve(response.data);
}).catch((error) => {
- if(error.status == 400) {
+ if (error.status == 400) {
ElMessage({
- message: error.data.msg,
- type: 'warning',
- })
- }else {
+ message: error.data.msg,
+ type: 'warning',
+ })
+ } else {
reject(error);
}
})
@@ -233,19 +233,19 @@
* @param {string} url 鎺ュ彛鍦板潃
* @param {string} name JSONP鍥炶皟鍑芥暟鍚嶇О
*/
- jsonp: function(url, name='jsonp'){
+ jsonp: function (url, name = 'jsonp') {
return new Promise((resolve) => {
var script = document.createElement('script')
var _id = `jsonp${Math.ceil(Math.random() * 1000000)}`
script.id = _id
script.type = 'text/javascript'
script.src = url
- window[name] =(response) => {
+ window[name] = (response) => {
resolve(response)
document.getElementsByTagName('head')[0].removeChild(script)
try {
delete window[name];
- }catch(e){
+ } catch (e) {
window[name] = undefined;
}
}
diff --git a/src/views/tpm/MachineGroup.vue b/src/views/tpm/MachineGroup.vue
index 918ea95..e77729e 100644
--- a/src/views/tpm/MachineGroup.vue
+++ b/src/views/tpm/MachineGroup.vue
@@ -1,7 +1,7 @@
<!--
* @Date: 2024-04-27 20:02:44
* @LastEditors: Sneed
- * @LastEditTime: 2024-04-27 20:49:52
+ * @LastEditTime: 2024-04-27 21:40:33
* @FilePath: /belleson-frontend/Users/mache/Documents/demo/cps-web/src/views/tpm/MachineGroup.vue
-->
<template>
@@ -9,8 +9,9 @@
<el-aside width="200px" v-loading="showGrouploading">
<el-container>
<el-main class="nopadding">
- <el-tree ref="group" node-key="id" :data="group" :current-node-key="treeCheckKey"
- :highlight-current="true" default-expand-all @node-click="groupClick"></el-tree>
+ <el-tree ref="group" node-key="id" :data="group" :current-node-key="form.id"
+ :highlight-current="true" :expand-on-click-node="false" default-expand-all
+ @node-click="groupClick"></el-tree>
</el-main>
</el-container>
</el-aside>
@@ -24,13 +25,15 @@
<el-main class="">
<el-form :model="form" :rules="rules" ref="dialogForm" label-width="200px" label-position="left">
<el-form-item label="涓婄骇鐩綍" prop="parentName">
- <el-input style="width: 240px" v-model="form.parentName"></el-input>
+ <el-input disabled style="width: 240px" v-model="form.parentName"></el-input>
</el-form-item>
<el-form-item label="鏈哄櫒缁勫悕绉�" prop="name">
- <el-input style="width: 240px" v-model="form.name" clearable></el-input>
+ <el-input :disabled="(form.id === '102' || form.id === '2')" style="width: 240px"
+ v-model="form.name" clearable></el-input>
</el-form-item>
</el-form>
- <el-button @click="save" style="width: 100px" type="primary" plain>淇濆瓨</el-button>
+ <el-button @click="save" v-show="!(form.id === '102' || form.id === '2')" style="width: 100px"
+ type="primary" plain>淇濆瓨</el-button>
</el-main>
</el-container>
</el-container>
@@ -41,16 +44,16 @@
data() {
return {
group: [],
- treeCheckKey: '',
form: {
+ code: '',
name: '',
+ id: '',
+ groupType: '',
+ groupCategory: '',
parentName: '',
parentId: '',
- id: '',
- groupType: 'group_machine',
- groupCategory: '1',
- code: ''
},
+ disabled: false,
}
},
created() {
@@ -61,17 +64,62 @@
this.$HTTP.get('/api/blade-cps/group/tree?groupCategory=1&groupType=group_machine').then(res => {
if (res.code === 200) {
this.group = res.data
- this.treeCheckKey = res.data[0].id
+ this.groupClick(res.data[0])
}
})
},
- groupClick() {
+ groupClick(node, node1) {
+ console.log(node, node1?.parent?.data?.name)
+ this.disabled = false
+ Object.keys(this.form).forEach(item => {
+ this.form[item] = node[item]
+ })
+ if (node1?.parent?.data?.name) {
+ this.form.parentName = node1?.parent?.data?.name
+ }
+ if (node.id === '102' || node.id === '2') {
+ this.form.parentName = node.name
+ this.disabled = true
+ }
+ },
+ addChild() {
+ let { name, id, groupType, groupCategory } = this.form
+ this.form.id = ''
+ this.form.name = ''
+ this.form.code = ''
+ this.form.groupType = groupType
+ this.form.groupCategory = groupCategory
+ this.form.parentName = name
+ this.form.parentId = id
+ },
+ del() {
+ this.$confirm(
+ '纭鍒犻櫎璇ユ満鍣ㄧ粍锛�',
+ {
+ distinguishCancelAndClose: true,
+ confirmButtonText: '鍒犻櫎',
+ cancelButtonText: '鍙栨秷',
+ }
+ )
+ .then(() => {
+ this.$HTTP.delete('/api/blade-cps/group/deleteGroup', {}, { params: { groupId: this.form.id } }).then(res => {
+ if (res.code === 200) {
+ this.$message.success("鎿嶄綔鎴愬姛");
+ this.getTreeData()
+ }
+ })
+ }).catch(() => {
+ this.$message.success("鍙栨秷鎿嶄綔");
+ })
},
- addChild() { },
- del() { },
save() {
-
+ this.group = []
+ this.$HTTP.post('/api/blade-cps/group', this.form).then(res => {
+ if (res.code === 200) {
+ this.getTreeData()
+ }
+ })
}
}
}
diff --git a/src/views/tpm/machine-management.vue b/src/views/tpm/machine-management.vue
index a86a4e0..d5ba3ad 100644
--- a/src/views/tpm/machine-management.vue
+++ b/src/views/tpm/machine-management.vue
@@ -51,19 +51,10 @@
},
immediate: true
},
- treeCheckedNode: {
- handler(val) {
- this.addGroupShow = false
- Object.keys(this.form).forEach(key => {
- this.form[key] = val?.[key]
- })
- },
- deep: true
- }
},
created() {
- this.init()
- this.queryList()
+ // this.init()
+ // this.queryList()
},
methods: {
--
Gitblit v1.9.3