edit.vue 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. <template>
  2. <div class="cmain">
  3. <el-form ref="form" :model="form" :rules="rules" label-width="100px">
  4. <el-form-item label="通知标题" prop="title">
  5. <el-input v-model="form.title" placeholder="请输入标题" clearable maxlength="30" show-word-limit />
  6. </el-form-item>
  7. <el-form-item label="通知内容" prop="contents">
  8. <editor v-model="form.contents" placeholder="请输入内容"></editor>
  9. </el-form-item>
  10. <el-row>
  11. <el-col :span="12">
  12. <el-form-item label="通知状态" prop="state">
  13. <el-select v-model="form.state" placeholder="请选择">
  14. <el-option label="正常" :value="0"></el-option>
  15. <el-option label="停用" :value="1"></el-option>
  16. </el-select>
  17. </el-form-item>
  18. </el-col>
  19. <el-col :span="12">
  20. <el-form-item label="通知置顶" prop="top">
  21. <el-select v-model="form.top" placeholder="请选择">
  22. <el-option label="否" :value="0"></el-option>
  23. <el-option label="是" :value="1"></el-option>
  24. </el-select>
  25. </el-form-item>
  26. </el-col>
  27. </el-row>
  28. </el-form>
  29. <div class="mfooter">
  30. <el-button type="primary" @click="submitForm">确 定</el-button>
  31. <el-button @click="$layer.close(layerid)">取 消</el-button>
  32. </div>
  33. </div>
  34. </template>
  35. <script>
  36. export default {
  37. data() {
  38. return {
  39. form: { state: 0, top: 0 },
  40. rules: {
  41. title: [{ required: true, message: '标题不能为空', trigger: 'blur' }],
  42. contents: [{ required: true, message: '内容不能为空', trigger: 'blur' }],
  43. top: [{ required: true, message: '是否置顶不能为空', trigger: 'blur' }],
  44. state: [{ required: true, message: '状态不能为空', trigger: 'blur' }]
  45. }
  46. };
  47. },
  48. props: {
  49. param: {
  50. type: Object,
  51. default: () => {
  52. return {};
  53. }
  54. },
  55. layerid: {
  56. type: String
  57. }
  58. },
  59. mounted() {
  60. if (this.param.id) {
  61. this.ajax({ url: '/work/notice/detail/' + this.param.id }).then((response) => {
  62. this.form = response.data;
  63. });
  64. }
  65. },
  66. methods: {
  67. submitForm() {
  68. this.$refs['form'].validate((valid) => {
  69. if (valid) {
  70. if (this.form.id) {
  71. this.ajax({ method: 'post', url: '/work/notice/edit', data: this.form }).then((response) => {
  72. this.$modal.msgSuccess('修改成功');
  73. this.$layer.close(this.layerid);
  74. this.$parent.getList();
  75. });
  76. } else {
  77. this.ajax({ method: 'post', url: '/work/notice/add', data: this.form }).then((response) => {
  78. this.$modal.msgSuccess('新增成功');
  79. this.$layer.close(this.layerid);
  80. this.$parent.getList();
  81. });
  82. }
  83. }
  84. });
  85. }
  86. }
  87. };
  88. </script>