value
2024-04-30 825dbe8e9ffbbc0ff084f8bca9d0af22024cdf16
功能修复
已修改3个文件
79 ■■■■ 文件已修改
src/components/tool/value-table.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/view/person-manage.vue 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/view/role-manage.vue 53 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/tool/value-table.vue
@@ -229,10 +229,10 @@
      <div class="body" v-if="addDia" style="max-height: 550px;overflow-y: auto;padding: 5px 10px 5px 0;">
        <div v-if="data.row > 1">
          <div v-for="(a, ai) in upHead" :key="ai" style="line-height: 50px;">
            <el-col :span="6/data.row" style="text-align: right;"><span class="required-span"
            <el-col :span="6/data.row" style="text-align: right;" :offset="1"><span class="required-span"
                v-if="showAddReq(a.label)">*
              </span>{{a.value}}:</el-col>
            <el-col :span="16/data.row" :offset="1">
            <el-col :span="16/data.row">
              <el-input v-model="upData[a.label]" size="small" clearable :placeholder="`请输入${a.value}`"
                v-if="showType(a.label, data.selectField) == null&&!showUpload(a.label)&&!showCascader(a.label)"></el-input>
              <el-select v-model="upData[a.label]" size="small" v-if="showType(a.label, data.selectField) != null"
src/components/view/person-manage.vue
@@ -35,6 +35,15 @@
        padding: 20px;
    }
</style>
<style>
  .el-upload--text{
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
</style>
<template>
    <div class="person_manage">
@@ -97,6 +106,7 @@
                            order: 'asc'
                        }
                    },
          row: 2,
                    isIndex: true,
                    showSelect: false,
                    select: false,
@@ -137,7 +147,7 @@
                            select: []
                        }
                    },
          cascaderField:{
          /* cascaderField:{
            departId:{
              tree:[]
            },
@@ -147,9 +157,9 @@
              label:'name',
              checkStrictly: true
            }
          },
                    requiredAdd:['account','name','state','roleId','password','departId'],
                    requiredUp:['account','name','state','roleId','departId'],
          }, */
                    requiredAdd:['account','name','state','roleId','password'],
                    requiredUp:['account','name','state','roleId'],
          addUpload:['pictureUrl','signatureUrl'],
          addUploadConfig:{
            accept:'.png, .jpg, .jpeg, .gif',
@@ -195,10 +205,10 @@
                this.$refs.ValueTable.openAddDia(this.$api.user.addUser);
            },
      selectTreeList(){
        this.$axios.get(this.$api.department.selectDepartment).then(res => {
       /* this.$axios.get(this.$api.department.selectDepartment).then(res => {
          this.componentData.cascaderField.departId.tree = this.handleTree(res.data[0].children)
                }) */
          this.$refs.ValueTable.selectList()
                })
      },
      handleTree(arr){
        arr.forEach(a => {
src/components/view/role-manage.vue
@@ -61,17 +61,25 @@
            <ValueTable ref="ValueTable" :url="$api.user.selectRoleLists" :delUrl="$api.user.delRole"
                :componentData="componentData" :key="upIndex" @upRole="upRole" @selectRole="selectRole" />
        </div>
        <el-dialog :title="type" :visible.sync="addDia" width="500px" @closed="closed">
            <div style="max-height: 500px;overflow-y: auto;padding: 8px;" v-if="addDia">
                <el-row style="line-height: 40px;margin-bottom: 15px;">
                    <el-col :span="8"><span class="required-span">* </span>角色名</el-col>
    <el-dialog :title="type" :visible.sync="addDia" width="550px" @closed="closed">
      <div style="max-height: 500px;overflow-y: auto;padding: 10px;" v-if="addDia">
        <el-row style="line-height: 40px;margin-bottom: 20px;">
          <el-col :span="8" style="font-size: 16px;"><span class="required-span">* </span>角色名</el-col>
                    <el-col :span="16">
                        <el-input v-model="addData.roleName" size="medium" placeholder="需唯一角色名" clearable :disabled="type=='查看'"></el-input>
            <el-input v-model="addData.roleName" size="medium" placeholder="需唯一角色名" clearable
              :disabled="type=='查看'"></el-input>
                    </el-col>
                </el-row>
                <el-divider content-position="left">权限分配</el-divider>
                <el-collapse style="margin-top: 10px;">
                    <el-collapse-item title="查询">
        <el-collapse style="margin-top: 10px;padding: 0 10px;">
          <el-collapse-item v-for="(category, ci) in menuCategroy" :key="ci">
            <template slot="title">
              <i class="el-icon-circle-plus-outline" style="margin-right: 10px;"></i>{{category}}
            </template>
            <div style="padding: 3px 30px;" v-for="(a, ai) in menu" :key="ai" v-if="a.type==category"><el-checkbox
                v-model="a.isClick" :disabled="type=='查看'">{{a.remark}}</el-checkbox></div>
          </el-collapse-item>
          <!-- <el-collapse-item title="查询">
                        <el-row style="padding: 3px 30px;" v-for="(a, ai) in menu" :key="ai" v-if="a.type=='查询'">
                            <el-col :span="18">
                                <el-checkbox :disabled="type=='查看'" v-model="a.isClick">{{a.remark}}</el-checkbox>
@@ -80,27 +88,7 @@
                                <el-checkbox :disabled="type=='查看'" v-model="a.look">只看我</el-checkbox>
                            </el-col>
                        </el-row>
                    </el-collapse-item>
                    <el-collapse-item title="添加">
                        <div style="padding: 3px 30px;" v-for="(a, ai) in menu" :key="ai" v-if="a.type=='添加'"><el-checkbox
                                v-model="a.isClick" :disabled="type=='查看'">{{a.remark}}</el-checkbox></div>
                    </el-collapse-item>
                    <el-collapse-item title="修改">
                        <div style="padding: 3px 30px;" v-for="(a, ai) in menu" :key="ai" v-if="a.type=='修改'"><el-checkbox
                                v-model="a.isClick" :disabled="type=='查看'">{{a.remark}}</el-checkbox></div>
                    </el-collapse-item>
                    <el-collapse-item title="删除">
                        <div style="padding: 3px 30px;" v-for="(a, ai) in menu" :key="ai" v-if="a.type=='删除'"><el-checkbox
                                v-model="a.isClick" :disabled="type=='查看'">{{a.remark}}</el-checkbox></div>
                    </el-collapse-item>
                    <el-collapse-item title="导入">
                        <div style="padding: 3px 30px;" v-for="(a, ai) in menu" :key="ai" v-if="a.type=='导入'"><el-checkbox
                                v-model="a.isClick" :disabled="type=='查看'">{{a.remark}}</el-checkbox></div>
                    </el-collapse-item>
                    <el-collapse-item title="导出">
                        <div style="padding: 3px 30px;" v-for="(a, ai) in menu" :key="ai" v-if="a.type=='导出'"><el-checkbox
                                v-model="a.isClick" :disabled="type=='查看'">{{a.remark}}</el-checkbox></div>
                    </el-collapse-item>
                    </el-collapse-item> -->
                </el-collapse>
            </div>
            <span slot="footer" class="dialog-footer">
@@ -112,6 +100,9 @@
</template>
<script>
  import {
    set
  } from 'vue'
    import ValueTable from '../tool/value-table.vue'
    export default {
        components: {
@@ -158,6 +149,7 @@
                    powers: []
                },
                menu: [],
        menuCategroy: [],
                menuCopy: [],
                type: '新增',
                addPower: true
@@ -182,6 +174,11 @@
                        a.isClick = false
                        a.look = false
                    })
          let set = new Set()
          res.data.forEach(a => {
            set.add(a.type)
          })
          this.menuCategroy = set
                    this.menu = res.data
                    this.menuCopy = this.HaveJson(res.data)
                })