Lius
2025-07-04 c34e08d3ea5c4bb125cf632b43f657e81387ea1c
src/views/system/modules/UserModal.vue
@@ -212,6 +212,20 @@
          />
        </a-form-model-item>
        <a-form-model-item
          label="维修部门/班组分配"
          :labelCol="labelCol"
          :wrapperCol="wrapperCol"
          v-show="!repairDepartDisabled"
        >
          <j-select-repair-depart
            v-model="model.selectedRepairDeparts"
            :multi="true"
            @back="backRepairDepartInfo"
            :backRepairDepart="true"
            :treeRepairDepartOpera="true"
          ></j-select-repair-depart>
        </a-form-model-item>
        <a-form-model-item
          label="负责部门"
@@ -267,6 +281,7 @@
  import { disabledAuthFilter } from '@/utils/authFilter'
  import { duplicateCheck } from '@/api/api'
  import JSelectProduction from '../../../components/jeecgbiz/JSelectProduction'
  import JSelectRepairDepart from '../../../components/jeecgbiz/JSelectRepairDepart'
  import { mapActions } from 'vuex'
  import { ajaxGetDictItems, getDictItemsFromCache } from '@/api/api'
  import SelectDeviceModal from './SelectDeviceModal'
@@ -275,13 +290,15 @@
    name: 'UserModal',
    components: {
      SelectDeviceModal,
      JSelectProduction
      JSelectProduction,
      JSelectRepairDepart
    },
    data() {
      return {
        departDisabled: false, //是否是我的部门调用该页面
        productionDisabled: false, //是否是我的车间调用该页面
        roleDisabled: false, //是否是角色维护调用该页面
        repairDepartDisabled: false, //是否是我的维修部门班组调用该页面
        modalWidth: 800,
        drawerWidth: 700,
        modaltoggleFlag: true,
@@ -331,15 +348,19 @@
          userProductionList: '/sys/user/userProductionList',
          userId: '/sys/user/generateUserId', // 引入生成添加用户情况下的url
          syncUserByUserName: '/act/process/extActProcess/doSyncUserByUserName',//同步用户到工作流
          queryTenantList: '/sys/tenant/queryList'
          queryTenantList: '/sys/tenant/queryList',
          userRepairDepartList: '/sys/user/userRepairDepartList',
          repairDepartTreeList: '/eam/eamBaseRepairDepart/queryTreeList'
        },
        tenantsOptions: [],
        rolesOptions: [],
        nextDepartOptions: [],
        nextProductionOptions: [],
        nextRepairDepartOptions: [],
        isDepartType: '',
        model: {
          selectedProduction: ''
          selectedProduction: '',
          selectedRepairDeparts: ''
        }
      }
    },
@@ -367,6 +388,7 @@
      this.initRoleList()
      this.initTenantList()
      this.queryTreeData()
      this.getRepairDepartTreeDataByApi()
    },
    computed: {
      uploadAction: function() {
@@ -389,6 +411,20 @@
        }).finally(() => {
        })
      },
      // 获取维修班组树
      getRepairDepartTreeDataByApi() {
        getAction(this.url.repairDepartTreeList)
          .then(res => {
            if (res.success) {
              this.repairDepartTreeData = res.result
            } else {
              this.$notification.warning({
                message: '消息',
                description: res.message
              })
            }
          })
      },
      add() {
        this.refresh()
        this.edit({
@@ -397,7 +433,8 @@
          userIdentity: 1,
          selectedroles: '',
          selecteddeparts: '',
          selectedProduction: ''
          selectedProduction: '',
          selectedRepairDeparts: ''
        })
      },
      edit(record) {
@@ -418,6 +455,8 @@
        if (record.hasOwnProperty('id')) {
          that.getUserRoles(record.id)
          that.getUserDeparts(record.id)
          that.getUserProductions(record.id)
          that.getUserRepairDeparts(record.id)
        }
      },
      isDisabledAuth(code) {
@@ -490,7 +529,9 @@
            that.nextDepartOptions = departOptions
          }
        })
      },
      getUserProductions(userid) {
        let that = this
        // 获取车间分配
        getAction(that.url.userProductionList, { userId: userid }).then((res) => {
          if (res.success) {
@@ -509,7 +550,27 @@
            that.nextProductionOptions = ProductionOptions
          }
        })
        //车间的url
      },
      getUserRepairDeparts(userid) {
        let that = this
        // 获取维修部门/班组分配
        getAction(that.url.userRepairDepartList, { userId: userid }).then((res) => {
          if (res.success) {
            let repairDepartOptions = []
            let selectedRepairDepartKeys = []
            for (let i = 0; i < res.result.length; i++) {
              selectedRepairDepartKeys.push(res.result[i].key)
              //新增负责维修部门/班组选择下拉框
              repairDepartOptions.push({
                value: res.result[i].key,
                label: res.result[i].title
              })
            }
            this.$set(this.model, 'selectedRepairDeparts', selectedRepairDepartKeys.join(','))
            that.nextRepairDepartOptions = repairDepartOptions
          }
        })
      },
      backDepartInfo(info) {
        this.model.departIds = this.model.selecteddeparts
@@ -525,11 +586,19 @@
          return c
        })
      },
      backRepairDepartInfo(info) {
        this.model.repairDepartIds = this.model.selectedRepairDeparts
        this.nextRepairDepartOptions = info.map((item, index, arr) => {
          let c = { label: item.text, value: item.value + '' }
          return c
        })
      },
      refresh() {
        this.userId = ''
        this.nextDepartOptions = []
        this.nextProductionOptions = []
        this.nextRepairDepartOptions = []
        this.departIdShow = false
      },
      close() {
@@ -538,6 +607,7 @@
        this.disableSubmit = false
        this.nextDepartOptions = []
        this.nextProductionOptions = []
        this.nextRepairDepartOptions = []
        this.departIdShow = false
        this.$refs.form.resetFields()
      },