From 32ea29da90ecadc27a875926fc77f7c54f3c24f9 Mon Sep 17 00:00:00 2001 From: lzhe <181968431@qq.com> Date: 星期日, 24 三月 2024 23:13:19 +0800 Subject: [PATCH] Merge branch 'master' of https://gitee.com/gaosp123/cps-web --- src/utils/request.js | 5 src/views/basicdata/machine/workstation.vue | 209 ++++++++++++++++++++--------------------- src/config/index.js | 4 .env.production | 11 + src/api/model/basicdata.js | 18 +++ 5 files changed, 134 insertions(+), 113 deletions(-) diff --git a/.env.production b/.env.production index 9ea4fc6..c2eff2a 100644 --- a/.env.production +++ b/.env.production @@ -1,8 +1,15 @@ +### + # @Date: 2024-03-23 09:49:06 + # @LastEditors: gaoshp + # @LastEditTime: 2024-03-24 14:11:48 + # @FilePath: /cps-web/.env.production +### # 鐢熶骇鐜 NODE_ENV = production # 鏍囬 -VUE_APP_TITLE = SCUI +VUE_APP_TITLE = CPS10.0 # 鎺ュ彛鍦板潃 -VUE_APP_API_BASEURL = https://mock.apifox.com/m1/4021385-0-default/api \ No newline at end of file +VUE_APP_API_BASEURL = http://116.63.155.153:83 +VUE_APP_API_MYBASEURL = http://116.63.155.153:83 \ No newline at end of file diff --git a/src/api/model/basicdata.js b/src/api/model/basicdata.js new file mode 100644 index 0000000..e21493e --- /dev/null +++ b/src/api/model/basicdata.js @@ -0,0 +1,18 @@ +/* + * @Date: 2024-03-24 11:37:47 + * @LastEditors: gaoshp + * @LastEditTime: 2024-03-24 14:30:13 + * @FilePath: /cps-web/src/api/model/basicdata.js + */ +import config from "@/config" +import http from "@/utils/request" + +export default { + getWorkstationGroup: { + url: `${config.API_URL}/blade-cps/group/list?groupType=group_workstation&groupCategory=1`, + name: "鑾峰彇宸ヤ綅缁勬爲", + get: async function(params){ + return await http.get(this.url, params); + } + }, +} \ No newline at end of file diff --git a/src/config/index.js b/src/config/index.js index f43029a..1146f23 100644 --- a/src/config/index.js +++ b/src/config/index.js @@ -18,10 +18,10 @@ TIMEOUT: 10000, //TokenName - TOKEN_NAME: "Authorization", + TOKEN_NAME: "Blade-Auth", //Token鍓嶇紑锛屾敞鎰忔渶鍚庢湁涓┖鏍硷紝濡備笉闇�瑕侀渶璁剧疆绌哄瓧绗︿覆 - TOKEN_PREFIX: "Bearer ", + TOKEN_PREFIX: "", //杩藉姞鍏朵粬澶� HEADERS: {}, diff --git a/src/utils/request.js b/src/utils/request.js index 239f85b..9340c69 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -12,12 +12,13 @@ axios.interceptors.request.use( (config) => { let token = tool.cookie.get("TOKEN"); + config.headers['Authorization'] = 'Basic c2FiZXI6c2FiZXJfc2VjcmV0' if(token){ config.headers[sysConfig.TOKEN_NAME] = sysConfig.TOKEN_PREFIX + token } if(!sysConfig.REQUEST_CACHE && config.method == 'get'){ config.params = config.params || {}; - config.params['_'] = new Date().getTime(); + // config.params['_'] = new Date().getTime(); } Object.assign(config.headers, sysConfig.HEADERS) return config; @@ -144,7 +145,7 @@ axios({ method: 'post', url: url, - headers: { 'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8','Authorization': 'Basic c2FiZXI6c2FiZXJfc2VjcmV0'}, + headers: { 'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'}, data: qsStringify(data), ...config }).then((response) => { diff --git a/src/views/basicdata/machine/workstation.vue b/src/views/basicdata/machine/workstation.vue index 77a6579..53d10bc 100644 --- a/src/views/basicdata/machine/workstation.vue +++ b/src/views/basicdata/machine/workstation.vue @@ -1,78 +1,78 @@ <template> <el-main> <el-card shadow="never"> - <el-tabs tab-position="top" class="custom-tabs"> - - <el-tab-pane label="宸ヤ綅"> + <el-tabs tab-position="top" class="custom-tabs" v-model="activeName"> + <el-tab-pane label="宸ヤ綅" name="1"> <el-container> - <el-aside width="200px" v-loading="showGrouploading"> - <el-container> - <el-header> - <el-input placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�" v-model="groupFilterText" clearable></el-input> - </el-header> - <el-main class="nopadding"> - <el-tree ref="group" class="menu" node-key="id" :data="group" :current-node-key="''" - :highlight-current="true" :expand-on-click-node="false" - :filter-node-method="groupFilterNode" @node-click="groupClick"></el-tree> - </el-main> - </el-container> - </el-aside> - <el-container> - <el-header> - <div class="left-panel"> - <el-button type="primary" icon="el-icon-plus" @click="add"></el-button> - <el-button type="danger" plain icon="el-icon-delete" :disabled="selection.length == 0" - @click="batch_del"></el-button> - <el-button type="primary" plain :disabled="selection.length == 0">鍒嗛厤瑙掕壊</el-button> - <el-button type="primary" plain :disabled="selection.length == 0">瀵嗙爜閲嶇疆</el-button> - </div> - <div class="right-panel"> - <div class="right-panel-search"> - <el-input v-model="search.name" placeholder="鐧诲綍璐﹀彿 / 濮撳悕" clearable></el-input> - <el-button type="primary" icon="el-icon-search" @click="upsearch"></el-button> - </div> - </div> - </el-header> - <el-main class="nopadding"> - <scTable ref="table" :apiObj="apiObj" @selection-change="selectionChange" stripe remoteSort - remoteFilter> - <el-table-column type="selection" width="50"></el-table-column> - <el-table-column label="ID" prop="id" width="80" sortable='custom'></el-table-column> - <el-table-column label="澶村儚" width="80" column-key="filterAvatar" - :filters="[{ text: '宸蹭笂浼�', value: '1' }, { text: '鏈笂浼�', value: '0' }]"> - <template #default="scope"> - <el-avatar :src="scope.row.avatar" size="small"></el-avatar> - </template> - </el-table-column> - <el-table-column label="鐧诲綍璐﹀彿" prop="userName" width="150" sortable='custom' - column-key="filterUserName" - :filters="[{ text: '绯荤粺璐﹀彿', value: '1' }, { text: '鏅�氳处鍙�', value: '0' }]"></el-table-column> - <el-table-column label="濮撳悕" prop="name" width="150" sortable='custom'></el-table-column> - <el-table-column label="鎵�灞炶鑹�" prop="groupName" width="200" sortable='custom'></el-table-column> - <el-table-column label="鍔犲叆鏃堕棿" prop="date" width="170" sortable='custom'></el-table-column> - <el-table-column label="鎿嶄綔" fixed="right" align="right" width="160"> - <template #default="scope"> - <el-button-group> - <el-button text type="primary" size="small" - @click="table_show(scope.row, scope.$index)">鏌ョ湅</el-button> - <el-button text type="primary" size="small" - @click="table_edit(scope.row, scope.$index)">缂栬緫</el-button> - <el-popconfirm title="纭畾鍒犻櫎鍚楋紵" @confirm="table_del(scope.row, scope.$index)"> - <template #reference> - <el-button text type="primary" size="small">鍒犻櫎</el-button> + <el-aside width="200px" v-loading="showGrouploading"> + <el-container> + <el-main class="nopadding"> + <el-tree ref="group" class="menu" node-key="id" :data="group" :current-node-key="''" + :highlight-current="true" :expand-on-click-node="false" + :default-expanded-keys="[1]" :filter-node-method="groupFilterNode" + @node-click="groupClick"></el-tree> + </el-main> + </el-container> + </el-aside> + <el-container> + <el-header> + <div class="left-panel"> + <el-button type="primary" icon="el-icon-plus"></el-button> + <el-button type="danger" plain icon="el-icon-delete"></el-button> + <el-button type="primary" plain>瀵煎叆</el-button> + <el-button type="primary" plain>鎵归噺鎿嶄綔</el-button> + </div> + <div class="right-panel"> + <div class="right-panel-search"> + <el-select v-model="value" placeholder="Select" style="width: 240px"> + <el-option v-for="item in options" :key="item.value" :label="item.label" + :value="item.value" /> + </el-select> + <el-select v-model="value" placeholder="Select" style="width: 240px"> + <el-option v-for="item in options" :key="item.value" :label="item.label" + :value="item.value" /> + </el-select> + <el-input style="width: 240px" placeholder="璇疯緭鍏ュ伐浣嶅悕绉�/缂栧彿" clearable></el-input> + <el-button type="primary" icon="el-icon-search"></el-button> + </div> + </div> + </el-header> + <el-main class="nopadding"> + <scTable ref="table" :apiObj="apiObj" @selection-change="selectionChange" stripe + remoteSort remoteFilter> + <el-table-column type="selection" width="50"></el-table-column> + <el-table-column label="宸ヤ綅缂栧彿" prop="id" width="120" + sortable='custom'></el-table-column> + <el-table-column label="宸ヤ綅鍚嶇О" prop="id" width="120" + sortable='custom'></el-table-column> + <el-table-column label="宸ヤ綅绫诲瀷" prop="id" width="120" + sortable='custom'></el-table-column> + <el-table-column label="宸ヤ綅鏃ュ巻" prop="id" width="120" + sortable='custom'></el-table-column> + <el-table-column label="鎿嶄綔" fixed="right" align="right" width="160"> + <template #default="scope"> + <el-button-group> + <el-button text type="primary" size="small" + @click="table_show(scope.row, scope.$index)">鏌ョ湅</el-button> + <el-button text type="primary" size="small" + @click="table_edit(scope.row, scope.$index)">缂栬緫</el-button> + <el-popconfirm title="纭畾鍒犻櫎鍚楋紵" + @confirm="table_del(scope.row, scope.$index)"> + <template #reference> + <el-button text type="primary" size="small">鍒犻櫎</el-button> + </template> + </el-popconfirm> + </el-button-group> </template> - </el-popconfirm> - </el-button-group> - </template> - </el-table-column> + </el-table-column> - </scTable> - </el-main> - </el-container> - </el-container> + </scTable> + </el-main> + </el-container> + </el-container> </el-tab-pane> - <el-tab-pane label="宸ヤ綅缁�"> + <el-tab-pane label="宸ヤ綅缁�" name="2"> </el-tab-pane> @@ -86,47 +86,43 @@ name: 'system', data() { return { - sys: { - name: "SCUI", - logoUrl: "", - login: true, - passwordRules: "^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,20}$", - copyright: "@SCUI" - }, - msg: { - open: true, - appKey: "", - secretKey: "" - }, - setting: [ - { - key: "file_serve", - value: "https://file.scui.com", - category: "url", - title: "鏂囦欢鏈嶅姟鍣ㄥ湴鍧�" - }, - { - key: "cloud_url", - value: "-", - category: "url", - title: "瀹㈡埛绔湴鍧�" - }, - { - key: "crm_url", - value: "-", - category: "url", - title: "CRM鍦板潃" - }, - { - key: "autoSwitch", - value: true, - category: "user", - title: "鑷姩鍒ゆ柇boolean绫诲瀷" - } - ] + activeName: '1', + group: [], + groupFilterText: '' } }, + created() { + this.$API.basicdata.getWorkstationGroup.get().then(res => { + if (res.code == 200) { + let data = this.formatData(res.data) + this.group = data + } + }) + }, methods: { + formatData(data, current) { + let newData = [] + if (!current) { + newData = data.filter(item => item.parentId == 0).map(v => { + v.children = this.formatData(data, v) + return v + }) + } else { + let res = data.filter(v => v.parentId === current.id) + res = res.map(item => { + item.children = this.formatData(data, item) + return item + }) + return res + } + return newData + }, + groupFilterNode() { + + }, + groupClick() { + + }, table_add() { var newRow = { key: "", @@ -150,5 +146,4 @@ } </script> -<style> -</style> +<style></style> -- Gitblit v1.9.3