panhui преди 4 години
родител
ревизия
1e508faabc
променени са 3 файла, в които са добавени 98 реда и са изтрити 1 реда
  1. 9 0
      src/main/vue/src/router.js
  2. 88 0
      src/main/vue/src/views/AnnouncementDetail.vue
  3. 1 1
      src/main/vue/src/widgets/BoardWidget.vue

+ 9 - 0
src/main/vue/src/router.js

@@ -808,6 +808,15 @@ const router = new Router({
                         title: '通知公告编辑'
                     }
                 },
+                {
+                    path: '/announcementDetail',
+                    name: 'AnnouncementDetail',
+                    component: () =>
+                        import(/* webpackChunkName: "announcementEdit" */ '@/views/AnnouncementDetail.vue'),
+                    meta: {
+                        title: '通知公告'
+                    }
+                },
                 {
                     path: '/announcementList',
                     name: 'AnnouncementList',

+ 88 - 0
src/main/vue/src/views/AnnouncementDetail.vue

@@ -0,0 +1,88 @@
+<template>
+    <div class="edit-view">
+        <div class="title">{{ formData.title }}</div>
+
+        <div class="content" v-html="formData.content"></div>
+    </div>
+</template>
+<script>
+export default {
+    name: 'AnnouncementEdit',
+    created() {
+        if (this.$route.query.id) {
+            this.$http
+                .get('announcement/get/' + this.$route.query.id)
+                .then(res => {
+                    this.formData = res;
+                })
+                .catch(e => {
+                    console.log(e);
+                    this.$message.error(e.error);
+                });
+        }
+    },
+    data() {
+        return {
+            saving: false,
+            formData: {},
+            rules: {}
+        };
+    },
+    methods: {
+        onSave() {
+            this.$refs.form.validate(valid => {
+                if (valid) {
+                    this.submit();
+                } else {
+                    return false;
+                }
+            });
+        },
+        submit() {
+            let data = { ...this.formData };
+
+            this.saving = true;
+            this.$http
+                .post('/announcement/save', data, { body: 'json' })
+                .then(res => {
+                    this.saving = false;
+                    this.$message.success('成功');
+                    this.$router.go(-1);
+                })
+                .catch(e => {
+                    console.log(e);
+                    this.saving = false;
+                    this.$message.error(e.error);
+                });
+        },
+        onDelete() {
+            this.$alert('删除将无法恢复,确认要删除么?', '警告', { type: 'error' })
+                .then(() => {
+                    return this.$http.post(`/announcement/del/${this.formData.id}`);
+                })
+                .then(() => {
+                    this.$message.success('删除成功');
+                    this.$router.go(-1);
+                })
+                .catch(e => {
+                    if (e !== 'cancel') {
+                        console.log(e);
+                        this.$message.error((e || {}).error || '删除失败');
+                    }
+                });
+        }
+    }
+};
+</script>
+<style lang="less" scoped>
+.title {
+    font-size: 24px;
+    text-align: center;
+    padding: 20px;
+    font-weight: bold;
+}
+
+.content {
+    padding: 20px 50px;
+}
+</style>

+ 1 - 1
src/main/vue/src/widgets/BoardWidget.vue

@@ -7,7 +7,7 @@
             <router-link
                 :underline="false"
                 :to="{
-                    path: '/announcementEdit',
+                    path: '/announcementDetail',
                     query: {
                         id: item.id
                     }