From 2b6c67c330d86e84dfbeec9b7b66a45567aaeb00 Mon Sep 17 00:00:00 2001 From: Lius <Lius2225@163.com> Date: 星期二, 05 八月 2025 17:11:46 +0800 Subject: [PATCH] MDC设备车间树改造,设备权限改造 --- src/views/system/modules/UserModal.vue | 116 +++++++++++++++++++++++++++++++++------------------------- 1 files changed, 66 insertions(+), 50 deletions(-) diff --git a/src/views/system/modules/UserModal.vue b/src/views/system/modules/UserModal.vue index 8044934..93f60a0 100644 --- a/src/views/system/modules/UserModal.vue +++ b/src/views/system/modules/UserModal.vue @@ -136,40 +136,55 @@ </a-form-model-item> <!--杞﹂棿鍒嗛厤--> +<!-- <a-form-model-item--> +<!-- label="杞﹂棿鍒嗛厤"--> +<!-- :labelCol="labelCol"--> +<!-- :wrapperCol="wrapperCol"--> +<!-- v-show="!productionDisabled"--> +<!-- >--> +<!-- <j-select-production--> +<!-- v-model="model.selectedProduction"--> +<!-- :multi="true"--> +<!-- @back="backProductionInfo"--> +<!-- :backProduction="true"--> +<!-- :treeProductOpera="true"--> +<!-- ></j-select-production>--> +<!-- </a-form-model-item>--> + + <!--涓績鍒嗛厤--> <a-form-model-item - label="杞﹂棿鍒嗛厤" + label="涓績鍒嗛厤" :labelCol="labelCol" :wrapperCol="wrapperCol" - v-show="!productionDisabled" + v-show="!factoryDisabled" > - <j-select-production - v-model="model.selectedProduction" + <j-select-factory + v-model="model.selectedFactorys" :multi="true" - @back="backProductionInfo" - :backProduction="true" - :treeProductOpera="true" - ></j-select-production> + @back="backFactoryInfo" + :backFactory="true" + :treeFactoryOpera="true" + ></j-select-factory> </a-form-model-item> - - <a-form-model-item - label="閫夋嫨璁惧" - :labelCol="labelCol" - :wrapperCol="wrapperCol" - v-show="!productionDisabled" - > - <a-tooltip title="閫夋嫨璁惧鍚庯紝鐢ㄦ埛灏卞彧鏈夎繖浜涜澶囩殑鏉冮檺锛佷笉閫夋嫨璁惧锛屽垯浼氭牴鎹溅闂村垎閰嶆帶鍒惰澶囩殑鏉冮檺锛�" - placement="topRight"> - <a-input-search - :readOnly="true" - v-model="model.equipmentIds" - @search="deviceSearch" - enter-button - placeholder="璇烽�夋嫨璁惧" - :disabled="!model.selectedProduction" - /> - </a-tooltip> - </a-form-model-item> +<!-- <a-form-model-item--> +<!-- label="閫夋嫨璁惧"--> +<!-- :labelCol="labelCol"--> +<!-- :wrapperCol="wrapperCol"--> +<!-- v-show="!productionDisabled"--> +<!-- >--> +<!-- <a-tooltip title="閫夋嫨璁惧鍚庯紝鐢ㄦ埛灏卞彧鏈夎繖浜涜澶囩殑鏉冮檺锛佷笉閫夋嫨璁惧锛屽垯浼氭牴鎹溅闂村垎閰嶆帶鍒惰澶囩殑鏉冮檺锛�"--> +<!-- placement="topRight">--> +<!-- <a-input-search--> +<!-- :readOnly="true"--> +<!-- v-model="model.equipmentIds"--> +<!-- @search="deviceSearch"--> +<!-- enter-button--> +<!-- placeholder="璇烽�夋嫨璁惧"--> +<!-- :disabled="!model.selectedProduction"--> +<!-- />--> +<!-- </a-tooltip>--> +<!-- </a-form-model-item>--> <!--<a-form-model-item--> @@ -356,7 +371,7 @@ import { addUser, editUser, queryUserRole, queryall } from '@/api/api' import { disabledAuthFilter } from '@/utils/authFilter' import { duplicateCheck } from '@/api/api' -import JSelectProduction from '../../../components/jeecgbiz/JSelectProduction' +import JSelectFactory from '../../../components/jeecgbiz/JSelectFactory' import { mapActions } from 'vuex' import { ajaxGetDictItems, getDictItemsFromCache } from '@/api/api' import SelectDeviceModal from './SelectDeviceModal' @@ -365,12 +380,12 @@ name: 'UserModal', components: { SelectDeviceModal, - JSelectProduction + JSelectFactory }, data() { return { departDisabled: false, //鏄惁鏄垜鐨勯儴闂ㄨ皟鐢ㄨ椤甸潰 - productionDisabled: false, //鏄惁鏄垜鐨勮溅闂磋皟鐢ㄨ椤甸潰 + factoryDisabled: false, //鏄惁鏄垜鐨勮溅闂磋皟鐢ㄨ椤甸潰 roleDisabled: false, //鏄惁鏄鑹茬淮鎶よ皟鐢ㄨ椤甸潰 modalWidth: 800, drawerWidth: 700, @@ -404,7 +419,6 @@ departIdShow: false, title: '鎿嶄綔', visible: false, - model: {}, labelCol: { xs: { span: 24 }, sm: { span: 5 } @@ -420,7 +434,7 @@ fileUpload: window._CONFIG['domianURL'] + 'sys/common/upload', userWithDepart: '/sys/user/userDepartList', // 寮曞叆涓烘寚瀹氱敤鎴锋煡鐪嬮儴闂ㄤ俊鎭渶瑕佺殑url //寮曞叆涓烘寚瀹氱敤鎴锋煡鐪嬭溅闂翠俊鎭渶瑕佺殑url - userProductionList: '/sys/user/userProductionList', + userFactoryList: '/sys/user/userFactorysList', userId: '/sys/user/generateUserId', // 寮曞叆鐢熸垚娣诲姞鐢ㄦ埛鎯呭喌涓嬬殑url syncUserByUserName: '/act/process/extActProcess/doSyncUserByUserName',//鍚屾鐢ㄦ埛鍒板伐浣滄祦 queryTenantList: '/sys/tenant/queryList' @@ -428,10 +442,10 @@ tenantsOptions: [], rolesOptions: [], nextDepartOptions: [], - nextProductionOptions: [], + nextFactoryOptions: [], isDepartType: '', model: { - selectedProduction: '' + selectedFactorys: '' } } }, @@ -441,7 +455,7 @@ if (value) this.initDictData('password_length') } }, - 'model.selectedProduction': { + 'model.selectedFactorys': { handler(newVal, oldVal) { if (newVal && this.$refs.selectDeviceModal) { // 濡傛灉杞﹂棿閫夋嫨鍓嶅悗涓嶄竴鑷村垯閲嶇疆閫夋嫨璁惧 @@ -489,7 +503,7 @@ userIdentity: 1, selectedroles: '', selecteddeparts: '', - selectedProduction: '' + selectedFactorys: '' }) }, edit(record) { @@ -510,6 +524,7 @@ if (record.hasOwnProperty('id')) { that.getUserRoles(record.id) that.getUserDeparts(record.id) + that.getUserFactorys(record.id) } }, isDisabledAuth(code) { @@ -582,26 +597,27 @@ that.nextDepartOptions = departOptions } }) - + }, + getUserFactorys(userid) { + let that = this // 鑾峰彇杞﹂棿鍒嗛厤 - getAction(that.url.userProductionList, { userId: userid }).then((res) => { + getAction(that.url.userFactoryList, { userId: userid }).then((res) => { if (res.success) { - let ProductionOptions = [] - let selectProductKeys = [] + let factoryOptions = [] + let selectFactoryKeys = [] for (let i = 0; i < res.result.length; i++) { - selectProductKeys.push(res.result[i].key) + selectFactoryKeys.push(res.result[i].key) //鏂板璐熻矗閮ㄩ棬閫夋嫨涓嬫媺妗� - ProductionOptions.push({ + factoryOptions.push({ value: res.result[i].key, label: res.result[i].title }) } - this.$set(this.model, 'selectedProduction', selectProductKeys.join(',')) - that.nextProductionOptions = ProductionOptions + this.$set(this.model, 'selectedFactorys', selectFactoryKeys.join(',')) + that.nextFactoryOptions = factoryOptions } }) - //杞﹂棿鐨剈rl }, backDepartInfo(info) { this.model.departIds = this.model.selecteddeparts @@ -610,9 +626,9 @@ return c }) }, - backProductionInfo(info) { - this.model.productionIds = this.model.selectedProduction - this.nextProductionOptions = info.map((item, index, arr) => { + backFactoryInfo(info) { + this.model.productionIds = this.model.selectedFactorys + this.nextFactoryOptions = info.map((item, index, arr) => { let c = { label: item.text, value: item.value + '' } return c }) @@ -621,7 +637,7 @@ refresh() { this.userId = '' this.nextDepartOptions = [] - this.nextProductionOptions = [] + this.nextFactoryOptions = [] this.departIdShow = false }, close() { @@ -629,7 +645,7 @@ this.visible = false this.disableSubmit = false this.nextDepartOptions = [] - this.nextProductionOptions = [] + this.nextFactoryOptions = [] this.departIdShow = false this.$refs.form.resetFields() }, -- Gitblit v1.9.3