<template> 
 | 
  <GlobalWindow 
 | 
      :title="dictName + '数据管理'" 
 | 
      width="78%" 
 | 
      :visible.sync="visible" 
 | 
      :with-footer="false" 
 | 
  > 
 | 
    <TableLayout :with-breadcrumb="false"> 
 | 
      <!-- 表格和分页 --> 
 | 
      <template v-slot:table-wrap> 
 | 
        <ul class="toolbar"> 
 | 
          <li><el-button type="primary" @click="$refs.operaDictDataWindow.open('新建字典数据', searchForm.dictId)" icon="el-icon-plus">新建</el-button></li> 
 | 
          <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete">删除</el-button></li> 
 | 
        </ul> 
 | 
        <el-table 
 | 
            v-loading="isWorking.search" 
 | 
            :data="tableData.list" 
 | 
            stripe 
 | 
            @selection-change="handleSelectionChange" 
 | 
        > 
 | 
          <el-table-column type="selection" width="55"></el-table-column> 
 | 
          <el-table-column prop="label" label="数据标签" min-width="100px"></el-table-column> 
 | 
          <el-table-column prop="code" label="数据值" min-width="100px"> 
 | 
            <template slot-scope="{row}"> 
 | 
              <div v-if="row.code || row.code.length>500" > 
 | 
                <el-button type="text" @click="showCode(row)" >点击查看</el-button> 
 | 
              </div> 
 | 
              <div v-else>{{row.code}}</div> 
 | 
            </template> 
 | 
          </el-table-column> 
 | 
          <el-table-column prop="disabled" label="状态" min-width="100px"> 
 | 
            <template slot-scope="{row}">{{row.disabled | disabledText}}</template> 
 | 
          </el-table-column> 
 | 
          <el-table-column prop="createUser" label="创建人" min-width="100px"> 
 | 
            <template slot-scope="{row}">{{row.createUserInfo == null ? '' : row.createUserInfo.username}}</template> 
 | 
          </el-table-column> 
 | 
          <el-table-column prop="updateUser" label="更新人" min-width="100px"> 
 | 
            <template slot-scope="{row}">{{row.updateUserInfo == null ? '' : row.updateUserInfo.username}}</template> 
 | 
          </el-table-column> 
 | 
          <el-table-column prop="createTime" label="创建时间" min-width="100px"></el-table-column> 
 | 
          <el-table-column prop="updateTime" label="更新时间" min-width="100px"></el-table-column> 
 | 
          <el-table-column 
 | 
              label="操作" 
 | 
              min-width="120" 
 | 
              fixed="right" 
 | 
          > 
 | 
            <template slot-scope="{row}"> 
 | 
              <el-button type="text" @click="$refs.operaDictDataWindow.open('编辑字典数据', searchForm.dictId, row)" icon="el-icon-edit">编辑</el-button> 
 | 
              <el-button type="text" @click="deleteById(row)" icon="el-icon-delete">删除</el-button> 
 | 
            </template> 
 | 
          </el-table-column> 
 | 
        </el-table> 
 | 
        <pagination 
 | 
            @size-change="handleSizeChange" 
 | 
            @current-change="handlePageChange" 
 | 
            :pagination="tableData.pagination" 
 | 
        ></pagination> 
 | 
      </template> 
 | 
      <!-- 新建/修改 --> 
 | 
      <OperaDictDataWindow ref="operaDictDataWindow" @success="handlePageChange(tableData.pagination.pageIndex)"/> 
 | 
  
 | 
      <el-dialog 
 | 
          class="center-title" 
 | 
          title="字典值" 
 | 
          width="70%" 
 | 
          height="70%" 
 | 
          text="字典值" 
 | 
          :visible.sync="visible1" 
 | 
          append-to-body 
 | 
      > 
 | 
        <div class="agree-list"  v-html="agreement"> 
 | 
        </div> 
 | 
        <template  v-slot:footer> 
 | 
          <el-button @click="visible1=false">返回</el-button> 
 | 
        </template> 
 | 
      </el-dialog> 
 | 
    </TableLayout> 
 | 
  </GlobalWindow> 
 | 
</template> 
 | 
  
 | 
<script> 
 | 
import BaseTable from '@/components/base/BaseTable' 
 | 
import Pagination from '@/components/common/Pagination' 
 | 
import GlobalWindow from '@/components/common/GlobalWindow' 
 | 
import TableLayout from '@/layouts/TableLayout' 
 | 
import OperaDictDataWindow from './OperaDictDataWindow' 
 | 
export default { 
 | 
  name: 'DictDataManagerWindow', 
 | 
  extends: BaseTable, 
 | 
  components: { OperaDictDataWindow, TableLayout, GlobalWindow, Pagination }, 
 | 
  data () { 
 | 
    return { 
 | 
      visible: false, 
 | 
      visible1: false, 
 | 
      agreement: '', 
 | 
      searchForm: { 
 | 
        // 字典ID 
 | 
        dictId: null 
 | 
      }, 
 | 
      // 字典名称 
 | 
      dictName: '' 
 | 
    } 
 | 
  }, 
 | 
  methods: { 
 | 
    // 打开数据管理 
 | 
    open (dictId, dictName) { 
 | 
      this.searchForm.dictId = dictId 
 | 
      this.dictName = dictName 
 | 
      this.visible = true 
 | 
      this.search() 
 | 
    }, 
 | 
    showCode(row){ 
 | 
      this.agreement=row.code 
 | 
      this.visible1=true 
 | 
    } 
 | 
  }, 
 | 
  created () { 
 | 
    this.config({ 
 | 
      api: '/system/dictData', 
 | 
      'field.main': 'label' 
 | 
    }) 
 | 
  } 
 | 
} 
 | 
</script> 
 | 
  
 | 
<style scoped lang="scss"> 
 | 
.agree-list{ 
 | 
  height: 550px; 
 | 
  //max-height: 50%; 
 | 
  overflow: auto; 
 | 
} 
 | 
  
 | 
/deep/ .window__body { 
 | 
  .table-content { 
 | 
    padding: 0; 
 | 
    .table-wrap { 
 | 
      padding-top: 0; 
 | 
    } 
 | 
  } 
 | 
  
 | 
} 
 | 
</style> 
 |