From 9d67939cb72ce57e3717b45b48c28655adc628a7 Mon Sep 17 00:00:00 2001
From: Lius <Lius2225@163.com>
Date: 星期一, 28 七月 2025 22:54:30 +0800
Subject: [PATCH] MDC车间分配
---
src/views/system/modules/UserModal.vue | 67 ++++++++++++++++++++++++++++++++-
1 files changed, 64 insertions(+), 3 deletions(-)
diff --git a/src/views/system/modules/UserModal.vue b/src/views/system/modules/UserModal.vue
index 5cd27b2..7cb8619 100644
--- a/src/views/system/modules/UserModal.vue
+++ b/src/views/system/modules/UserModal.vue
@@ -150,6 +150,22 @@
></j-select-factory>
</a-form-model-item>
+ <!--杞﹂棿鍒嗛厤-->
+ <a-form-model-item
+ label="MDC杞﹂棿鍒嗛厤"
+ :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="閫夋嫨璁惧"-->
<!--:labelCol="labelCol"-->
@@ -353,18 +369,21 @@
import JSelectFactory from '../../../components/jeecgbiz/JSelectFactory'
import { mapActions } from 'vuex'
import { ajaxGetDictItems, getDictItemsFromCache } from '@/api/api'
+ import JSelectProduction from '../../../components/jeecgbiz/JSelectProduction'
// import SelectDeviceModal from './SelectDeviceModal'
export default {
name: 'UserModal',
components: {
// SelectDeviceModal,
- JSelectFactory
+ JSelectFactory,
+ JSelectProduction
},
data() {
return {
departDisabled: false, //鏄惁鏄垜鐨勯儴闂ㄨ皟鐢ㄨ椤甸潰
factoryDisabled: false, //鏄惁鏄垜鐨勮溅闂磋皟鐢ㄨ椤甸潰
+ productionDisabled: false, //鏄惁鏄垜鐨勮溅闂磋皟鐢ㄨ椤甸潰
roleDisabled: false, //鏄惁鏄鑹茬淮鎶よ皟鐢ㄨ椤甸潰
modalWidth: 800,
drawerWidth: 700,
@@ -421,9 +440,11 @@
rolesOptions: [],
nextDepartOptions: [],
nextFactoryOptions: [],
+ nextProductionOptions: [],
isDepartType: '',
model: {
- selectedFactory: ''
+ selectedFactory: '',
+ selectedProduction: ''
}
}
},
@@ -439,6 +460,17 @@
// 濡傛灉杞﹂棿閫夋嫨鍓嶅悗涓嶄竴鑷村垯閲嶇疆閫夋嫨璁惧
if ((oldVal && newVal !== oldVal)) this.model.equipmentIds = ''
//this.$refs.selectDeviceModal.queryTreeData(newVal)
+ }
+ // 濡傛灉娓呯┖杞﹂棿鍊煎垯閲嶇疆閫夋嫨璁惧
+ if (newVal === '') this.model.equipmentIds = ''
+ }
+ },
+ 'model.selectedProduction': {
+ handler(newVal, oldVal) {
+ if (newVal && this.$refs.selectDeviceModal) {
+ // 濡傛灉杞﹂棿閫夋嫨鍓嶅悗涓嶄竴鑷村垯閲嶇疆閫夋嫨璁惧
+ if ((oldVal && newVal !== oldVal)) this.model.equipmentIds = ''
+ this.$refs.selectDeviceModal.queryTreeData(newVal)
}
// 濡傛灉娓呯┖杞﹂棿鍊煎垯閲嶇疆閫夋嫨璁惧
if (newVal === '') this.model.equipmentIds = ''
@@ -481,7 +513,8 @@
userIdentity: 1,
selectedroles: '',
selecteddeparts: '',
- selectedFactory: ''
+ selectedFactory: '',
+ selectedProduction: ''
})
},
edit(record) {
@@ -593,6 +626,24 @@
that.nextFactoryOptions = FactoryOptions
}
})
+
+ getAction(that.url.userProductionList, { userId: userid }).then((res) => {
+ if (res.success) {
+ let ProductionOptions = []
+ let selectProductKeys = []
+ for (let i = 0; i < res.result.length; i++) {
+ selectProductKeys.push(res.result[i].key)
+ //鏂板璐熻矗閮ㄩ棬閫夋嫨涓嬫媺妗�
+ ProductionOptions.push({
+ value: res.result[i].key,
+ label: res.result[i].title
+ })
+ }
+
+ this.$set(this.model, 'selectedProduction', selectProductKeys.join(','))
+ that.nextProductionOptions = ProductionOptions
+ }
+ })
//杞﹂棿鐨剈rl
},
backDepartInfo(info) {
@@ -610,10 +661,19 @@
})
},
+ backProductionInfo(info) {
+ this.model.productionIds = this.model.selectedProduction
+ this.nextProductionOptions = info.map((item, index, arr) => {
+ let c = { label: item.text, value: item.value + '' }
+ return c
+ })
+ },
+
refresh() {
this.userId = ''
this.nextDepartOptions = []
this.nextFactoryOptions = []
+ this.nextProductionOptions = []
this.departIdShow = false
},
close() {
@@ -622,6 +682,7 @@
this.disableSubmit = false
this.nextDepartOptions = []
this.nextFactoryOptions = []
+ this.nextProductionOptions = []
this.departIdShow = false
this.$refs.form.resetFields()
},
--
Gitblit v1.9.3