62e851bd3eafd41adb5e81a3994422cee9d2ff13.svn-base 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  1. <template>
  2. <a-card :bordered="false">
  3. <!-- 查询区域 -->
  4. <div class="table-page-search-wrapper">
  5. <a-form layout="inline" @keyup.enter.native="searchQuery">
  6. <a-row :gutter="24">
  7. </a-row>
  8. </a-form>
  9. </div>
  10. <!-- 查询区域-END -->
  11. <!-- 操作按钮区域 -->
  12. <div class="table-operator">
  13. <a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
  14. <a-dropdown v-if="selectedRowKeys.length > 0">
  15. <a-menu slot="overlay">
  16. <a-menu-item key="1" @click="batchDel"><a-icon type="delete"/>删除</a-menu-item>
  17. </a-menu>
  18. <a-button style="margin-left: 8px"> 批量操作 <a-icon type="down" /></a-button>
  19. </a-dropdown>
  20. </div>
  21. <!-- table区域-begin -->
  22. <div>
  23. <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
  24. <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项
  25. <a style="margin-left: 24px" @click="onClearSelected">清空</a>
  26. </div>
  27. <a-table
  28. ref="table"
  29. size="middle"
  30. :scroll="{x:true}"
  31. bordered
  32. rowKey="id"
  33. :columns="columns"
  34. :dataSource="dataSource"
  35. :pagination="ipagination"
  36. :loading="loading"
  37. :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
  38. class="j-table-force-nowrap"
  39. @change="handleTableChange">
  40. <template slot="htmlSlot" slot-scope="text">
  41. <div v-html="text"></div>
  42. </template>
  43. <template slot="imgSlot" slot-scope="text">
  44. <span v-if="!text" style="font-size: 12px;font-style: italic;">无图片</span>
  45. <img v-else :src="getImgView(text)" height="25px" alt="" style="max-width:80px;font-size: 12px;font-style: italic;"/>
  46. </template>
  47. <template slot="fileSlot" slot-scope="text">
  48. <span v-if="!text" style="font-size: 12px;font-style: italic;">无文件</span>
  49. <a-button
  50. v-else
  51. :ghost="true"
  52. type="primary"
  53. icon="download"
  54. size="small"
  55. @click="uploadFile(text)">
  56. 下载
  57. </a-button>
  58. </template>
  59. <span slot="action" slot-scope="text, record">
  60. <a @click="handleEdit(record)">编辑</a>
  61. <a-divider type="vertical" />
  62. <a-dropdown>
  63. <a class="ant-dropdown-link">更多 <a-icon type="down" /></a>
  64. <a-menu slot="overlay">
  65. <a-menu-item>
  66. <a @click="handleDetail(record)">详情</a>
  67. </a-menu-item>
  68. <a-menu-item>
  69. <a-popconfirm title="确定删除吗?" @confirm="() => handleDelete(record.id)">
  70. <a>删除</a>
  71. </a-popconfirm>
  72. </a-menu-item>
  73. </a-menu>
  74. </a-dropdown>
  75. </span>
  76. </a-table>
  77. </div>
  78. <tenant-modal ref="modalForm" @ok="modalFormOk"></tenant-modal>
  79. </a-card>
  80. </template>
  81. <script>
  82. import '@/assets/less/TableExpand.less'
  83. import { mixinDevice } from '@/utils/mixin'
  84. import { JeecgListMixin } from '@/mixins/JeecgListMixin'
  85. import TenantModal from './modules/TenantModal'
  86. export default {
  87. name: "TenantList",
  88. mixins:[JeecgListMixin, mixinDevice],
  89. components: {
  90. TenantModal
  91. },
  92. data () {
  93. return {
  94. description: 'adad管理页面',
  95. // 表头
  96. columns: [
  97. {
  98. title:'租户名称',
  99. align:"center",
  100. dataIndex: 'name'
  101. },{
  102. title:'租户编号',
  103. align:"center",
  104. dataIndex: 'id'
  105. },
  106. {
  107. title:'开始时间',
  108. align:"center",
  109. dataIndex: 'beginDate'
  110. },
  111. {
  112. title:'结束时间',
  113. align:"center",
  114. dataIndex: 'endDate'
  115. },
  116. {
  117. title:'状态',
  118. align:"center",
  119. dataIndex: 'status_dictText'
  120. },
  121. {
  122. title: '操作',
  123. dataIndex: 'action',
  124. align:"center",
  125. fixed:"right",
  126. width:147,
  127. scopedSlots: { customRender: 'action' }
  128. }
  129. ],
  130. url: {
  131. list: "/sys/tenant/list",
  132. delete: "/sys/tenant/delete",
  133. deleteBatch: "/sys/tenant/deleteBatch"
  134. },
  135. dictOptions:{},
  136. }
  137. },
  138. created() {
  139. },
  140. computed: {
  141. importExcelUrl: function(){
  142. return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`;
  143. },
  144. },
  145. methods: {
  146. initDictConfig(){
  147. }
  148. }
  149. }
  150. </script>
  151. <style scoped>
  152. @import '~@assets/less/common.less';
  153. </style>