049f467174104d8be8d2741cea3d4c9f1fd56c9d.svn-base 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. <template>
  2. <a-modal
  3. :title="title"
  4. :width="800"
  5. :visible="visible"
  6. :confirmLoading="confirmLoading"
  7. @ok="handleOk"
  8. @cancel="handleCancel"
  9. cancelText="关闭">
  10. <a-spin :spinning="confirmLoading">
  11. <a-form>
  12. <a-form-item
  13. :labelCol="labelCol"
  14. :wrapperCol="wrapperCol"
  15. label="模板标题">
  16. <a-input disabled v-model="templateName"/>
  17. </a-form-item>
  18. <a-form-item
  19. :labelCol="labelCol"
  20. :wrapperCol="wrapperCol"
  21. label="模板内容">
  22. <a-textarea disabled v-model="templateContent" :autosize="{ minRows: 5, maxRows: 8 }"/>
  23. </a-form-item>
  24. <a-form-item
  25. :labelCol="labelCol"
  26. :wrapperCol="wrapperCol"
  27. label="测试数据">
  28. <a-textarea placeholder="请输入json格式测试数据" v-model="testData" :autosize="{ minRows: 5, maxRows: 8 }"/>
  29. </a-form-item>
  30. <a-form-item
  31. :labelCol="labelCol"
  32. :wrapperCol="wrapperCol"
  33. label="消息类型">
  34. <j-dict-select-tag
  35. v-model="msgType"
  36. placeholder="请选择消息类型"
  37. dictCode="msgType"/>
  38. </a-form-item>
  39. <a-form-item
  40. :labelCol="labelCol"
  41. :wrapperCol="wrapperCol"
  42. label="消息接收方">
  43. <a-input placeholder="请输入消息接收方" v-model="receiver"/>
  44. </a-form-item>
  45. </a-form>
  46. </a-spin>
  47. </a-modal>
  48. </template>
  49. <script>
  50. import {httpAction} from '@/api/manage'
  51. export default {
  52. name: "SysMessageTestModal",
  53. data() {
  54. return {
  55. title: "操作",
  56. visible: false,
  57. model: {},
  58. labelCol: {
  59. xs: {span: 24},
  60. sm: {span: 5},
  61. },
  62. wrapperCol: {
  63. xs: {span: 24},
  64. sm: {span: 16},
  65. },
  66. confirmLoading: false,
  67. url: {
  68. send: "/sys/message/sysMessageTemplate/sendMsg",
  69. },
  70. templateName: "",
  71. templateContent: "",
  72. receiver: "",
  73. msgType: "",
  74. testData: "",
  75. sendParams: {}
  76. }
  77. },
  78. methods: {
  79. open(record) {
  80. this.sendParams.templateCode = record.templateCode;
  81. this.templateName = record.templateName;
  82. this.templateContent = record.templateContent;
  83. this.testData = record.templateTestJson;
  84. this.visible = true;
  85. },
  86. close() {
  87. this.receiver = "";
  88. this.msgType = "";
  89. this.sendParams = {};
  90. this.visible = false;
  91. },
  92. handleOk() {
  93. let httpurl = this.url.send;
  94. let method = 'post';
  95. this.sendParams.testData = this.testData;
  96. this.sendParams.receiver = this.receiver;
  97. this.sendParams.msgType = this.msgType;
  98. httpAction(httpurl, this.sendParams, method).then((res) => {
  99. if (res.success) {
  100. this.$message.success(res.message);
  101. } else {
  102. this.$message.warning(res.message);
  103. }
  104. }).finally(() => {
  105. this.confirmLoading = false;
  106. this.close();
  107. })
  108. },
  109. handleCancel() {
  110. this.close()
  111. },
  112. }
  113. }
  114. </script>
  115. <style scoped>
  116. </style>