index.php 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. <?php
  2. use common\helpers\ComponentHelper;
  3. ComponentHelper::loadComponentView('com-list-page');
  4. ComponentHelper::loadComponentView('com-list-table');
  5. ?>
  6. <com-list-page :crumbs="crumbs" id="application">
  7. <com-list-table
  8. ref="table"
  9. :api="'star-chain/message/index'"
  10. :search-list="searchList"
  11. >
  12. <el-table-column type="selection"></el-table-column>
  13. <el-table-column prop="msg_id" label="MSG_ID" align="center"></el-table-column>
  14. <el-table-column prop="tenant_id" label="Tenant_Id" align="center"></el-table-column>
  15. <el-table-column prop="enum_num_text" label="消息类型" align="center"></el-table-column>
  16. <el-table-column prop="create_time" label="推送时间" align="center">
  17. <template slot-scope="scope">
  18. {{ scope.row.create_time|dateTimeFormat('Y-m-d H:i:s') }}
  19. </template>
  20. </el-table-column>
  21. <el-table-column align="center" label="操作">
  22. <template slot-scope="scope">
  23. <el-button type="text" @click="showDetail(scope.row)">消息内容</el-button>
  24. </template>
  25. </el-table-column>
  26. </com-list-table>
  27. <el-dialog title="消息内容" :visible.sync="dialogVisible" width="50%">
  28. <template>
  29. <el-descriptions title="" :column="column">
  30. <el-descriptions-item v-for="(value, key) in content">
  31. <span slot="label">
  32. {{ key }}
  33. </span>
  34. {{ value }}
  35. </el-descriptions-item>
  36. </el-descriptions>
  37. </template>
  38. <span slot="footer" class="dialog-footer">
  39. </span>
  40. </el-dialog>
  41. </com-list-page>
  42. <script>
  43. const application = new Vue({
  44. el: '#application',
  45. data: {
  46. crumbs: [
  47. {
  48. title: '首页',
  49. router: 'mall/overview/index',
  50. },
  51. {
  52. title: '消息管理',
  53. }
  54. ],
  55. searchList: [
  56. {
  57. key: 'enum_num',
  58. title: '导入状态',
  59. type: 'select',
  60. options: [],
  61. valueKey: {
  62. label: 'label',
  63. value: 'value',
  64. },
  65. },
  66. ],
  67. dialogVisible: false,
  68. column: {},
  69. content: {},
  70. },
  71. methods: {
  72. /**
  73. * 详情
  74. */
  75. showDetail(row) {
  76. this.content = row.content
  77. this.dialogVisible = true
  78. },
  79. /**
  80. * 获取商品库
  81. */
  82. getMessageList() {
  83. this.listLoading = true
  84. request({
  85. params: {
  86. r: 'star-chain/message/index',
  87. },
  88. }).then(e => {
  89. if (e.data.code === 0) {
  90. let object = e.data.data.enums
  91. for (const key in object) {
  92. if (Object.prototype.hasOwnProperty.call(object, key)) {
  93. this.searchList[0].options.push({
  94. value: key,
  95. label: object[key],
  96. })
  97. }
  98. }
  99. }
  100. })
  101. },
  102. },
  103. mounted: function() {
  104. this.getMessageList()
  105. }
  106. })
  107. </script>