updateLogManage.vue 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175
  1. <template>
  2. <div class="update-log-manage-wrap">
  3. <div class="top-wrap">
  4. <el-button type="primary" @click="isLogSetShow=true">添加日志</el-button>
  5. <!-- <el-date-picker
  6. v-model="timeRange"
  7. type="daterange"
  8. clearable
  9. value-format="yyyy-MM-dd"
  10. range-separator="至"
  11. start-placeholder="开始日期"
  12. end-placeholder="结束日期">
  13. </el-date-picker> -->
  14. <el-input v-model="searchText" @input="getTableData"
  15. prefix-icon="el-icon-search" placeholder="输入更新内容检索" clearable></el-input>
  16. </div>
  17. <div class="table-wrap">
  18. <el-table :data="tableData"
  19. @sort-change="sortChangeHandle" border>
  20. <el-table-column
  21. v-for="item in tableColumns" :key="item.key"
  22. :label="item.label" :sortable="item.sort"
  23. align="center"
  24. >
  25. <template slot-scope="{row}">
  26. <div v-if="item.key==='Content'" v-html="row[item.key]"></div>
  27. <span v-else>{{ row[item.key] }}</span>
  28. </template>
  29. </el-table-column>
  30. <el-table-column label="操作" align="center">
  31. <template slot-scope="{row}">
  32. <el-button type="text" @click="handleEditLog(row)">编辑</el-button>
  33. <el-button type="text" style="color: red;" @click="handleDeleteLog(row)">删除</el-button>
  34. </template>
  35. </el-table-column>
  36. </el-table>
  37. <el-pagination
  38. layout="prev,pager,next,total"
  39. background
  40. :current-page="pageNo"
  41. @current-change="currentChange"
  42. :page-size="pageSize"
  43. :total="total"
  44. >
  45. </el-pagination>
  46. </div>
  47. <LogSetDialog
  48. :isLogSetShow="isLogSetShow"
  49. :logInfo="logInfo"
  50. @saveLog="saveLog"
  51. @close="()=>{logInfo = {};isLogSetShow = false}"
  52. />
  53. </div>
  54. </template>
  55. <script>
  56. import LogSetDialog from './components/logSetDialog.vue';
  57. import {updateLogInterface} from '@/api/modules/updateLogApi';
  58. export default {
  59. components: { LogSetDialog },
  60. data() {
  61. return {
  62. /* select */
  63. timeRange: null,
  64. searchText: '',
  65. /* dialog */
  66. logInfo:{},
  67. isLogSetShow:false,
  68. /* table */
  69. tableData: [],
  70. tableColumns: [
  71. {
  72. label: '更新内容',
  73. key: 'Content'
  74. },
  75. {
  76. label: '版本号',
  77. key: 'Version'
  78. },
  79. {
  80. label: '更新日期',
  81. key: 'UpdateDate',
  82. sort:true
  83. },
  84. ],
  85. pageNo: 1,
  86. pageSize: 10,
  87. total: 0,
  88. sortType:0,
  89. };
  90. },
  91. methods: {
  92. getTableData(){
  93. updateLogInterface.getLogList({
  94. Keyword:this.searchText,
  95. SortType:this.sortType,
  96. CurrentIndex:this.pageNo,
  97. PageSize:this.pageSize
  98. }).then(res=>{
  99. if(res.Ret!==200) return
  100. this.tableData = res.Data.List||[]
  101. this.total = res.Data.Paging.Totals
  102. })
  103. },
  104. currentChange(page) {
  105. this.pageNo = page;
  106. this.getTableData()
  107. },
  108. sortChangeHandle(params){
  109. this.sortType = params.order === 'ascending' ? 1 :params.order === 'descending' ? 2 : 0
  110. this.pageNo = 1
  111. this.getTableData()
  112. },
  113. handleEditLog(row){
  114. this.logInfo = row
  115. this.isLogSetShow = true
  116. },
  117. handleDeleteLog(row){
  118. //二次确认
  119. this.$confirm('删除操作不可恢复,确认删除吗?','提示',{
  120. confirmButtonText: '确定',
  121. cancelButtonText: '取消',
  122. type: 'warning',
  123. }).then(() => {
  124. updateLogInterface.deleteLogData({Id:row.Id}).then(res=>{
  125. if(res.Ret!==200) return
  126. this.$message.success('删除成功')
  127. this.getTableData()
  128. })
  129. }).catch(() => {});
  130. },
  131. async saveLog(form){
  132. const res = form.Id
  133. ?await updateLogInterface.editLogData(form)
  134. :await updateLogInterface.addLogData(form)
  135. if(res.Ret!==200) return
  136. this.$message.success(`${form.Id?'编辑':'添加'}成功`)
  137. this.getTableData()
  138. this.isLogSetShow = false
  139. }
  140. },
  141. mounted(){
  142. this.getTableData()
  143. }
  144. };
  145. </script>
  146. <style scoped lang="scss">
  147. .update-log-manage-wrap{
  148. padding:30px;
  149. background-color: #fff;
  150. border-radius: 4px;
  151. .top-wrap{
  152. display: flex;
  153. justify-content: space-between;
  154. .el-date-editor{
  155. margin-left: auto;
  156. }
  157. .el-input{
  158. margin-left:30px;
  159. width:420px;
  160. }
  161. }
  162. .table-wrap{
  163. margin-top: 30px;
  164. .el-pagination{
  165. margin-top: 30px;
  166. text-align: right;
  167. }
  168. }
  169. }
  170. </style>