loulijun2021
2022-07-22 4bcf7f5cbc8185b10e773feda6bee90fe3f32137
src/views/jcsz/jsqd.vue
@@ -47,14 +47,13 @@
      <div style="margin-left: 10px;display: flex">
        <el-button type="primary" icon="el-icon-circle-plus-outline" @click="add('add')">新增</el-button>
        <el-button type="primary" icon="el-icon-setting" @click="settingButton">设置</el-button>
        <!--        <el-button type="primary" icon="el-icon-upload2" @click="upload">导入</el-button>-->
        <el-button type="primary" icon="el-icon-upload2" @click="upload">导入</el-button>
      </div>
      <el-divider />
      <div class="elTableDiv">
        <el-table
          :data="tableData"
          border
          stripe
          :height="tableHeight+'px'"
          :style="{width: 100+'%',height:tableHeight+'px'}"
@@ -72,24 +71,29 @@
            prop="RowNum"
            width="50"
            label="序号"
            fixed
          />
          <el-table-column
            prop="role_code"
            label="角色编码"
            sortable="custom"
            min-width="110"
          />
          <el-table-column
            prop="role_name"
            label="角色名称"
            sortable="custom"
            min-width="110"
          />
          <el-table-column
            prop="roletype_name"
            label="角色类型"
            sortable="custom"
            min-width="110"
          />
          <el-table-column
            prop="description"
            min-width="160"
            label="角色描述"
            sortable="custom"
          />
@@ -97,10 +101,12 @@
            prop="lm_user"
            label="创建人员"
            sortable="custom"
            width="110"
          />
          <el-table-column
            prop="lm_date"
            label="创建时间"
            min-width="160"
            sortable="custom"
          />
          <el-table-column
@@ -111,7 +117,7 @@
          >
            <template slot-scope="{row}">
              <i v-if="row.is_user==='Y'" class="el-icon-user-solid" @click="userClick(row)" />
              <i v-if="row.is_user==='N'" class="el-icon-user-solid" style="color: #E4E7ED" @click="userClick(row)" />
              <i v-if="row.is_user==='N'" class="el-icon-user-solid" style="color: rgb(180 ,181, 185)" @click="userClick(row)" />
            </template>
          </el-table-column>
          <el-table-column
@@ -122,11 +128,12 @@
          >
            <template slot-scope="{row}">
              <i v-if="row.is_right==='Y'" class="el-icon-share" @click="rightClick(row)" />
              <i v-if="row.is_right==='N'" class="el-icon-share" style="color: #E4E7ED" @click="rightClick(row)" />
              <i v-if="row.is_right==='N'" class="el-icon-share" style="color: rgb(180 ,181, 185)" @click="rightClick(row)" />
            </template>
          </el-table-column>
          <el-table-column
            label="操作"
            fixed="right"
          >
            <template slot-scope="{row}">
              <div class="operationClass">
@@ -497,11 +504,16 @@
        </div>
      </span>
    </el-dialog>
    <!--导入组件-->
    <import-picker ref="importPickerFunc" :shows.sync="shows" :title="title_value" :colos="colos" :code="code" />
  </div>
</template>
<script>
import Pagination from '@/components/Pagination'
import ImportPicker from '@/components/ImportPicker'
import {
  AddUpdateRole,
  DeleteRole, RoleAssociationRight,
@@ -517,7 +529,7 @@
export default {
  name: 'JSQD',
  components: {
    Pagination
    Pagination, ImportPicker
  },
  data() {
    const validateName = (rule, value, callback) => {
@@ -531,13 +543,6 @@
        }
      }
    }
    // const validateTypeCode = (rule, value, callback) => {
    //   if (!value) {
    //     return callback(new Error('请选择上级'))
    //   } else {
    //     callback()
    //   }
    // }
    return {
      isFullscreen: false,
      mainHeight: 0,
@@ -635,7 +640,18 @@
        value: 'code'
      },
      PCTrue: false, // 是否展示
      APPTrue: false// 是否展示
      APPTrue: false, // 是否展示
      title_value: '数据导入 / 角色清单',
      code: '1',
      shows: false
    }
  },
  watch: {
    shows() {
      if (!this.shows) {
        this.getRoleSearch()
      }
    }
  },
  created() {
@@ -700,10 +716,6 @@
      this.formSetting.order = order
      this.formSetting.prop = prop
      this.getRoleTypeSearch()
    },
    upload() {
    },
    // 查询
    search() {
@@ -975,49 +987,24 @@
        type: ''
      }
      const { data: res } = await RoleAssociationRight(data)// 接口获取数据
      // '0'显示  '1' 不显示
      this.dialogFormRight.rightPCArr = res[0][0].is_delete === '0' ? res[0] : []
      this.dialogFormRight.rightAPPArr = res[1][0].is_delete === '0' ? res[1] : []
      this.PCTrue = res[0][0].is_delete === '0'
      this.APPTrue = res[1][0].is_delete === '0'
      // '0'显示  '1' 不显示   过滤出相对应的菜单
      if (this.PCTrue) {
        this.dialogFormRight.rightPCArr[0].children.forEach((item, index) => {
          if (item.is_delete === '1') {
            this.dialogFormRight.rightPCArr[0].children.splice(index, 1)
          } else {
            if (item.children.length > 0 && item.children) {
              item.children.forEach((it, ind) => {
                console.log(it, 9)
                console.log(it.is_delete, 9)
                if (it.is_delete === '1') {
                  item.children.splice(ind, 1)
                }
              })
            }
            if (item.children.length === 0) {
              this.dialogFormRight.rightPCArr[0].children.splice(index, 1)
            }
          }
        this.dialogFormRight.rightPCArr[0].children = this.dialogFormRight.rightPCArr[0].children.filter(item => item.is_delete === '0')
        this.dialogFormRight.rightPCArr[0].children.forEach(item => {
          item.children = item.children.filter(it => it.is_delete === '0')
        })
      }
      if (this.APPTrue) {
        this.dialogFormRight.rightAPPArr[0].children.forEach((item, index) => {
          if (item.is_delete === '1') {
            this.dialogFormRight.rightAPPArr[0].children.splice(index, 1)
          } else {
            if (item.children.length > 0 && item.children) {
              item.children.forEach((it, ind) => {
                if (it.is_delete === '1') {
                  item.children.splice(ind, 1)
                }
              })
            }
            if (item.children.length === 0) {
              this.dialogFormRight.rightAPPArr[0].children.splice(index, 1)
            }
          }
        this.dialogFormRight.rightAPPArr[0].children = this.dialogFormRight.rightAPPArr[0].children.filter(item => item.is_delete === '0')
        this.dialogFormRight.rightAPPArr[0].children.forEach(item => {
          item.children = item.children.filter(it => it.is_delete === '0')
        })
      }
@@ -1448,6 +1435,14 @@
          this.dialogFormRight.rightAPPArrSelected = ['APP']
        }
      }
    },
    // 导入按钮
    upload() {
      this.shows = true
      this.$refs.importPickerFunc.newDataFunc()
    },
    colos() {
      this.shows = false
    }
  }