调解系统PC端服务

emailRecord.vue 5.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. <template>
  2. <div class="app-container">
  3. <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
  4. <el-form-item label="案件编号" prop="caseNum">
  5. <el-input v-model="queryParams.caseNum" placeholder="请输入案件编号" clearable @keyup.enter.native="handleQuery" />
  6. </el-form-item>
  7. <el-form-item>
  8. <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
  9. <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
  10. </el-form-item>
  11. </el-form>
  12. <el-table v-loading="loading" :data="dataList" style="width: 100%">
  13. <el-table-column label="序号" type="index" align="center">
  14. <template slot-scope="scope">
  15. <span>{{
  16. (queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1
  17. }}</span>
  18. </template>
  19. </el-table-column>
  20. <el-table-column label="案件编号" align="center" prop="caseNum" :show-overflow-tooltip="true" />
  21. <el-table-column label="名称" align="center" prop="mailName" :show-overflow-tooltip="true" />
  22. <!-- <el-table-column label="证件号码" align="center" prop="caseNum" :show-overflow-tooltip="true" /> -->
  23. <el-table-column label="邮箱地址" align="center" prop="mailAddress" />
  24. <el-table-column label="发送时间" align="center" prop="sendTime" :show-overflow-tooltip="true" />
  25. <el-table-column label="发送状态" align="center" prop="sendStatus" />
  26. <!-- <el-table-column label="文书类型" align="center" prop="hearDate" :show-overflow-tooltip="true" /> -->
  27. <!-- 缴费人 -->
  28. <!-- <el-table-column label="案件状态" align="center" prop="caseStatusName" /> -->
  29. <el-table-column label="内容" align="center" prop="mailContent"></el-table-column>
  30. <el-table-column label="操作" align="center">
  31. <template slot-scope="scope">
  32. <el-button size="mini" type="text" @click="emailEditing(scope.row)" icon="el-icon-s-promotion">邮箱编辑</el-button>
  33. <el-button v-if="sendStatusMessage" size="mini" type="text" @click="resendCounts(scope.row)" icon="el-icon-s-promotion">重新发送</el-button>
  34. </template>
  35. </el-table-column>
  36. </el-table>
  37. <emailEdits :emailVidable="emailVidable" @cancelEmail="cancelEmail" @getList="getList" :queryParams="queryParams" :emailRow="emailRow"></emailEdits>
  38. <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
  39. @pagination="getList(queryParams)" />
  40. </div>
  41. </template>
  42. <script>
  43. import {
  44. emailList,
  45. } from "@/api/deliveryRecord/deliveryRecord.js";
  46. import emailEdits from "./components/emailEdits.vue";
  47. import { getDicts } from '@/api/system/dict/data.js'
  48. export default {
  49. name: "paymentList",
  50. dicts: ["case_status"],
  51. components: {emailEdits},
  52. data() {
  53. return {
  54. queryParams: {
  55. pageNum: 1,
  56. pageSize: 10,
  57. },
  58. caseStatus: [],
  59. // 遮罩层
  60. loading: false,
  61. // 总条数
  62. total: 0,
  63. // 表格数据
  64. form: {},
  65. // 校验表单
  66. rules: {},
  67. dataList: [],
  68. emailVidable:false,
  69. emailRow:{},
  70. sendStatusMessage:false,
  71. };
  72. },
  73. created() {
  74. getDicts("case_status").then(res => {
  75. this.caseStatus = res.data;
  76. this.getList(this.queryParams);
  77. })
  78. },
  79. methods: {
  80. /** 搜索按钮操作 */
  81. handleQuery() {
  82. this.queryParams.pageNum = 1;
  83. this.getList(this.queryParams);
  84. },
  85. /** 重置按钮操作 */
  86. resetQuery() {
  87. this.resetForm("queryForm");
  88. this.handleQuery();
  89. },
  90. // 查询列表数据
  91. getList(parms) {
  92. this.loading = true;
  93. emailList(parms).then((response) => {
  94. this.dataList = response.rows;
  95. this.dataList.forEach(item => {
  96. if (item.sendStatus == 0) {
  97. this.sendStatusMessage = true
  98. item.sendStatus = "未发送"
  99. } else if (item.sendStatus == 1) {
  100. this.sendStatusMessage = false
  101. item.sendStatus = "已发送"
  102. } else {
  103. item.sendStatus = "未发送"
  104. this.sendStatusMessage = true
  105. }
  106. })
  107. this.total = response.total;
  108. this.loading = false;
  109. });
  110. },
  111. // 邮箱编辑内容
  112. emailEditing(data){
  113. this.emailVidable = true
  114. this.emailRow = data;
  115. console.log(data)
  116. },
  117. // 关闭弹窗
  118. cancelEmail(){
  119. this.emailVidable = false
  120. },
  121. // 重新发送
  122. resendCounts(){
  123. }
  124. },
  125. };
  126. </script>
  127. <style lang="scss" scoped></style>