Explorar o código

新增新媒体矩阵管理界面

wrh %!s(int64=2) %!d(string=hai) anos
pai
achega
f0dd8f5f2e
Modificáronse 15 ficheiros con 660 adicións e 268 borrados
  1. 69 67
      nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/package-lock.json
  2. 1 3
      nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/App.vue
  3. 21 0
      nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/api/index.js
  4. 24 6
      nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/router/index.js
  5. 0 1
      nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/views/NananDetail.vue
  6. 9 183
      nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/views/decisionMatters/DecisionMatters.vue
  7. 0 1
      nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/views/history/HistoryDetail.vue
  8. 0 1
      nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/views/history/InformationEntry.vue
  9. 1 1
      nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/views/impressionNanan/Administration.vue
  10. 0 1
      nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/views/impressionNanan/ImpressionNanan.vue
  11. 0 1
      nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/views/mapEdit/MapDetails.vue
  12. 0 1
      nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/views/mapEdit/MapEdit.vue
  13. 0 1
      nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/views/mechanism/Column.vue
  14. 0 1
      nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/views/mechanism/Department.vue
  15. 535 0
      nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/views/newMediaMatrix/NewMediaMatrix.vue

+ 69 - 67
nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/package-lock.json

@@ -1925,51 +1925,6 @@
           "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
           "dev": true
         },
-        "ansi-styles": {
-          "version": "4.3.0",
-          "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz",
-          "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "color-convert": "^2.0.1"
-          }
-        },
-        "chalk": {
-          "version": "4.1.2",
-          "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz",
-          "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "ansi-styles": "^4.1.0",
-            "supports-color": "^7.1.0"
-          }
-        },
-        "color-convert": {
-          "version": "2.0.1",
-          "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz",
-          "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "color-name": "~1.1.4"
-          }
-        },
-        "color-name": {
-          "version": "1.1.4",
-          "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz",
-          "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
-          "dev": true,
-          "optional": true
-        },
-        "has-flag": {
-          "version": "4.0.0",
-          "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz",
-          "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
-          "dev": true,
-          "optional": true
-        },
         "ssri": {
           "version": "8.0.1",
           "resolved": "https://registry.npmmirror.com/ssri/-/ssri-8.0.1.tgz",
@@ -1978,28 +1933,6 @@
           "requires": {
             "minipass": "^3.1.1"
           }
-        },
-        "supports-color": {
-          "version": "7.2.0",
-          "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz",
-          "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "has-flag": "^4.0.0"
-          }
-        },
-        "vue-loader-v16": {
-          "version": "npm:vue-loader@16.8.3",
-          "resolved": "https://registry.npmmirror.com/vue-loader/-/vue-loader-16.8.3.tgz",
-          "integrity": "sha512-7vKN45IxsKxe5GcVCbc2qFU5aWzyiLrYJyUuMz4BQLKctCj/fmCa0w6fGiiQ2cLFetNcek1ppGJQDCup0c1hpA==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "chalk": "^4.1.0",
-            "hash-sum": "^2.0.0",
-            "loader-utils": "^2.0.0"
-          }
         }
       }
     },
@@ -12719,6 +12652,75 @@
         }
       }
     },
+    "vue-loader-v16": {
+      "version": "npm:vue-loader@16.8.3",
+      "resolved": "https://registry.npmmirror.com/vue-loader/-/vue-loader-16.8.3.tgz",
+      "integrity": "sha512-7vKN45IxsKxe5GcVCbc2qFU5aWzyiLrYJyUuMz4BQLKctCj/fmCa0w6fGiiQ2cLFetNcek1ppGJQDCup0c1hpA==",
+      "dev": true,
+      "optional": true,
+      "requires": {
+        "chalk": "^4.1.0",
+        "hash-sum": "^2.0.0",
+        "loader-utils": "^2.0.0"
+      },
+      "dependencies": {
+        "ansi-styles": {
+          "version": "4.3.0",
+          "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz",
+          "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "color-convert": "^2.0.1"
+          }
+        },
+        "chalk": {
+          "version": "4.1.2",
+          "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz",
+          "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "ansi-styles": "^4.1.0",
+            "supports-color": "^7.1.0"
+          }
+        },
+        "color-convert": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz",
+          "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "color-name": "~1.1.4"
+          }
+        },
+        "color-name": {
+          "version": "1.1.4",
+          "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz",
+          "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+          "dev": true,
+          "optional": true
+        },
+        "has-flag": {
+          "version": "4.0.0",
+          "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz",
+          "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+          "dev": true,
+          "optional": true
+        },
+        "supports-color": {
+          "version": "7.2.0",
+          "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz",
+          "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "has-flag": "^4.0.0"
+          }
+        }
+      }
+    },
     "vue-router": {
       "version": "3.5.4",
       "resolved": "https://registry.npmmirror.com/vue-router/-/vue-router-3.5.4.tgz",

+ 1 - 3
nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/App.vue

@@ -1,8 +1,6 @@
 <template>
     <div id="app">
-        <keep-alive>
-            <router-view />
-        </keep-alive>
+        <router-view></router-view>
     </div>
 </template>
 <script>

+ 21 - 0
nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/api/index.js

@@ -176,6 +176,27 @@ export default {
     return request.post('tj/updateChnlidBelong', data)
   },
 
+  // 分页查询新媒体矩阵
+  sortArticleHeadlinesPage(data) {
+    return request.get('sortArticleHeadlines/page', data)
+  },
+  // 新增新媒体矩阵
+  addArticle(data) {
+    return request.post('sortArticleHeadlines/addArticle', data)
+  },
+  // 编辑新媒体矩阵
+  updateArticle(data) {
+    return request.post('sortArticleHeadlines/updateArticle', data)
+  },
+  // 删除新媒体矩阵
+  deleteArticleById(data) {
+    return request.post('sortArticleHeadlines/deleteArticleById', data)
+  },
+  // 上传新媒体矩阵excel
+  uploadArticleExcel(data) {
+    return request.post('sortArticleHeadlines/add/batch', data)
+  },
+
 }
 
 // export const addInfo = (problemInfo)=>{

+ 24 - 6
nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/router/index.js

@@ -19,7 +19,7 @@ import MapDetails from '../views/mapEdit/MapDetails' // 地图详情
 import DecisionMatters from '../views/decisionMatters/DecisionMatters' // 决策事项管理
 import Department from '../views/mechanism/Department' // 部门管理
 import Column from '../views/mechanism/Column' // 栏目管理
-
+import NewMediaMatrix from '../views/newMediaMatrix/NewMediaMatrix' // 新媒体矩阵管理
 
 export const constantRoutes = [{
     path: '/redirect',
@@ -106,7 +106,7 @@ export const constantRoutes = [{
     path: '/decisionMatters',
     component: Layout,
     redirect: '/decisionMatters/index',
-    name: 'decisionMatters',
+    name: 'DecisionMatters',
     meta: {
       title: '决策事项管理',
       icon: 'el-icon-s-cooperation'
@@ -114,17 +114,35 @@ export const constantRoutes = [{
     children: [{
       path: 'index',
       component: DecisionMatters,
-      name: 'DecisionMatters',
+      name: 'DecisionMattersIndex',
       meta: {
         title: '决策事项管理'
       }
     }]
   },
   {
+    path: '/newMediaMatrix',
+    component: Layout,
+    redirect: '/newMediaMatrix/index',
+    name: 'NewMediaMatrix',
+    meta: {
+      title: '新媒体矩阵管理',
+      icon: 'el-icon-s-cooperation'
+    },
+    children: [{
+      path: 'index',
+      component: NewMediaMatrix,
+      name: 'NewMediaMatrix',
+      meta: {
+        title: '新媒体矩阵管理'
+      }
+    }]
+  },
+  {
     path: '/mechanism',
     component: Layout,
     redirect: '/mechanism/department',
-    name: 'mechanism',
+    name: 'Mechanism',
     meta: {
       title: '机构管理',
       icon: 'dashboard'
@@ -162,7 +180,7 @@ export const constantRoutes = [{
     path: '/mapEdit',
     component: Layout,
     redirect: '/mapEdit/index',
-    name: 'mapEdit',
+    name: 'MapEdit',
     meta: {
       title: '地图纠错',
       icon: 'el-icon-map-location'
@@ -170,7 +188,7 @@ export const constantRoutes = [{
     children: [{
         path: 'index',
         component: MapEdit,
-        name: 'MapEdit',
+        name: 'MapEditIndex',
         meta: {
           title: '地图纠错'
         }

+ 0 - 1
nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/views/NananDetail.vue

@@ -9,7 +9,6 @@
 
 <script>
     export default {
-        name: 'NananDetail',
         data() {
             return {
                 isShowExamineState: false

+ 9 - 183
nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/views/decisionMatters/DecisionMatters.vue

@@ -3,18 +3,6 @@
         <!-- 操作栏 -->
         <div style="display: flex;justify-content: space-between;margin-bottom: 10px">
             <el-button type="primary" class="add" @click="openAddWork">新增</el-button>
-            <!-- <div style="display: flex">
-                <el-select ref="querySelect" style="width: 200px" clearable v-model="form.region" placeholder="请选择搜索方式"
-                    @change="selectRegion">
-                    <el-option label="作品电话" value="uploaderPhone"></el-option>
-                    <el-option label="作品名称" value="pictureTitle"></el-option>
-                    <el-option label="作品作者" value="pictureAuthor"></el-option>
-                </el-select>
-                <el-input v-model.trim="form.name" clearable @clear="clearreset" style="margin: 0 10px;width: 200px">
-                </el-input>
-                <el-button type="primary" class="search" @click="serachWork">搜索</el-button>
-                <el-button type="primary" class="search" @click="reset" style="margin-left: 5px">重置</el-button>
-            </div> -->
         </div>
         <!--表格-->
         <el-table :data="tableData" border ref='multipleTable' :height="tableH" stripe
@@ -34,17 +22,6 @@
             </el-table-column>
             <el-table-column prop="addTime" label="创建时间" :show-overflow-tooltip="true" />
             <el-table-column prop="releaseTime" label="发布时间" :show-overflow-tooltip="true" />
-            <!-- <el-table-column prop="vestingDate" label="决策公示开始时间" width="140" :show-overflow-tooltip="true">
-            </el-table-column>
-            <el-table-column prop="vestingDate" label="决策公示结束时间" width="140" :show-overflow-tooltip="true">
-            </el-table-column>
-            <el-table-column prop="vestingDate" label="意见征集开始时间" width="140" :show-overflow-tooltip="true">
-            </el-table-column>
-            <el-table-column prop="vestingDate" label="意见征集结束时间" width="140" :show-overflow-tooltip="true">
-            </el-table-column>
-            <el-table-column prop="opinionFeedbackEnd" label="意见反馈开始时间" width="140" :show-overflow-tooltip="true">
-            </el-table-column>
-            <el-table-column prop="uploadTime" sortable label="意见反馈结束时间" width="140"></el-table-column> -->
             <el-table-column label="操作" prop="examineState,id" width="220" slot="default" fixed="right">
                 <template slot-scope="scope">
                     <el-button class="but" type="primary" @click="openDialog(scope.row.id)">查看</el-button>
@@ -211,7 +188,6 @@
         created() {
             this.getData()
         },
-        mounted() {},
         data() {
             return {
                 fileUploadList: [{
@@ -239,12 +215,6 @@
                 },
                 tableH: 'calc(100vh - 230px)',
                 label: "决策事项管理",
-                // 搜索参数
-                form: {
-                    name: '',
-                    region: '',
-                    type: []
-                },
                 // 列表数据
                 tableData: [],
                 // 总数
@@ -431,7 +401,6 @@
                 fd.append('opinionFeedbackEnd', this.postManagement.opinionFeedbackEnd);
                 fd.append('type', this.postManagement.type);
                 if (this.workTitle == '编辑决策事项') {
-                    console.log(this.postManagement);
                     fd.append('id', this.postManagement.id);
                     fd.append('draftInterpretation', this.postManagement.file1 ? null : this.postManagement
                         .draftInterpretation);
@@ -465,97 +434,6 @@
                     })
                 }
             },
-            //选取条件
-            selectRegion() {
-                // console.log(this.form.region)
-            },
-            //根据条件查询
-            serachWork() {
-                // if (this.form.region !== '') {
-                //     if (this.form.region === 'uploaderPhone') {
-                //         // let params = {
-                //         //     page: 1,
-                //         //     limit: 10,
-                //         //     uploaderPhone: this.form.name
-                //         // }
-                //         this.sorts.uploaderPhone = this.form.name;
-                //         this.sorts.pictureTitle = '';
-                //         this.sorts.pictureAuthor = '';
-                //         this.sorts.page = 1;
-                //         let params = this.sorts;
-                //         api.queryWork({
-                //             params
-                //         }).then(res => {
-                //             this.total = res.data.count
-                //             this.tableData = res.data.data
-                //         })
-                //     }
-                //     if (this.form.region === 'pictureTitle') {
-                //         // let params = {
-                //         //     page: 1,
-                //         //     limit: 10,
-                //         //     pictureTitle: this.form.name
-                //         // }
-                //         this.sorts.pictureTitle = this.form.name;
-                //         this.sorts.uploaderPhone = '';
-                //         this.sorts.pictureAuthor = '';
-                //         this.sorts.page = 1;
-                //         let params = this.sorts;
-                //         api.queryWork({
-                //             params
-                //         }).then(res => {
-                //             this.total = res.data.count
-                //             this.tableData = res.data.data
-                //             // console.log(this.tableData);
-                //         })
-                //     }
-                //     if (this.form.region === 'pictureAuthor') {
-                //         // let params = {
-                //         //     page: 1,
-                //         //     limit: 10,
-                //         //     pictureAuthor: this.form.name
-                //         // }
-                //         this.sorts.pictureTitle = '';
-                //         this.sorts.uploaderPhone = '';
-                //         this.sorts.pictureAuthor = this.form.name;
-                //         this.sorts.page = 1;
-                //         let params = this.sorts;
-                //         api.queryWork({
-                //             params
-                //         }).then(res => {
-                //             this.total = res.data.count
-                //             this.tableData = res.data.data
-                //             // console.log(this.tableData);
-                //         })
-                //     }
-                // } else {
-                //     this.$refs.multipleTable.clearSort();
-                //     this.column = undefined
-                //     this.sorts.page = 1
-                //     this.sorts = {
-                //         page: 1,
-                //         limit: 10,
-                //         isAlbum: '',
-                //         examineState: '',
-                //         pictureType: '',
-                //         uploadTime: '',
-                //         updateTime: '',
-                //         uploaderPhone: '',
-                //         pictureTitle: '',
-                //         pictureAuthor: '',
-                //     }
-                //     let params = this.sorts
-                //     // this.getData()
-                //     api.queryWork({
-                //         params
-                //     }).then(res => {
-                //         this.total = res.data.count
-                //         this.tableData = res.data.data
-                //         // console.log(this.tableData);
-                //     })
-                // }
-
-            },
             //发布事项
             releaseDecision(id) {
                 let params = {
@@ -640,68 +518,16 @@
             },
             // 获取列表数据
             getData() {
-                if (this.form.region !== '') {
-                    if (this.form.region === 'uploaderPhone') {
-                        let params = {
-                            page: this.sorts.page,
-                            limit: this.sorts.limit,
-                            uploaderPhone: this.form.name
-                        }
-                        api.selectPostList({
-                            params
-                        }).then(r => {
-                            this.total = r.data.count
-                            this.tableData = r.data.data
-                        })
-                    }
-                    if (this.form.region === 'pictureTitle') {
-                        let params = {
-                            page: this.sorts.page,
-                            limit: this.sorts.limit,
-                            pictureTitle: this.form.name
-                        }
-                        api.selectPostList({
-                            params
-                        }).then(r => {
-                            this.total = r.data.count
-                            this.tableData = r.data.data
-                        })
-                    }
-                    if (this.form.region === 'pictureAuthor') {
-                        let params = {
-                            page: this.sorts.page,
-                            limit: this.sorts.limit,
-                            pictureAuthor: this.form.name
-                        }
-                        api.selectPostList({
-                            params
-                        }).then(r => {
-                            this.total = r.data.count
-                            this.tableData = r.data.data
-                        })
-                    }
-                } else {
-                    let params = {
-                        page: this.sorts.page,
-                        limit: this.sorts.limit,
-                    }
-                    api.selectPostList({
-                        params
-                    }).then(r => {
-                        this.total = r.data.count
-                        this.tableData = r.data.data
-                    })
+                let params = {
+                    page: this.sorts.page,
+                    limit: this.sorts.limit,
                 }
-            },
-            // 清空输入框
-            clearreset() {
-                this.form.name = ''
-            },
-            // 清空输入框
-            reset() {
-                this.form.region = ''
-                this.form.name = ''
-                this.getData()
+                api.selectPostList({
+                    params
+                }).then(r => {
+                    this.total = r.data.count
+                    this.tableData = r.data.data
+                })
             }
         },
     }

+ 0 - 1
nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/views/history/HistoryDetail.vue

@@ -36,7 +36,6 @@
 
 <script>
     export default {
-        name: 'HistoryDetail',
         data() {
             return {
                 label: "历史记录",

+ 0 - 1
nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/views/history/InformationEntry.vue

@@ -68,7 +68,6 @@
     import api from '../../api/index'
 
     export default {
-        name: 'InformationEntry',
         data() {
             return {
                 fileList:[],

+ 1 - 1
nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/views/impressionNanan/Administration.vue

@@ -418,7 +418,7 @@
 import request from '../../utils/request'
 import api from '../../api/index'
 export default {
-    name: "administration",
+    name: "Administration",
     created() {
         // this.getData();
         this.getalbum();

+ 0 - 1
nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/views/impressionNanan/ImpressionNanan.vue

@@ -589,7 +589,6 @@ const requiredValidator = (rule, value, callback) => {
 }
 
 export default {
-    name: 'ImpressionNanan',
     created() {
         this.getData()
     },

+ 0 - 1
nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/views/mapEdit/MapDetails.vue

@@ -92,7 +92,6 @@
 
 <script>
 export default {
-	name: 'MapDetails',
 	created() {
 	// 传来的参数
 	var json = localStorage.getItem('mapTempData')

+ 0 - 1
nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/views/mapEdit/MapEdit.vue

@@ -52,7 +52,6 @@ import api from '../../api/index'
 import { mapState } from './constants/mapState'
 
 export default {
-    name: 'MapEdit',
     created() {
         this.getData()
     },

+ 0 - 1
nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/views/mechanism/Column.vue

@@ -180,7 +180,6 @@
         created() {
             this.getData()
         },
-        mounted() {},
         data() {
             return {
                 tableStyle: {

+ 0 - 1
nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/views/mechanism/Department.vue

@@ -365,7 +365,6 @@
         created() {
             this.getData()
         },
-        mounted() {},
         data() {
             return {
                 tableStyle: {

+ 535 - 0
nngkxxdp/src/main/resources/static/naqwzsjtj/naqwzsjtj/src/views/newMediaMatrix/NewMediaMatrix.vue

@@ -0,0 +1,535 @@
+<template>
+    <div class="yxnaContent">
+        <!--操作栏-->
+        <div style="display: flex;justify-content: space-between;margin-bottom: 10px">
+            <div>
+                <el-button type="primary" class="add" @click="openAddWork">新增</el-button>
+                <el-button type="primary" class="add" @click="upload.open = true;upload.fileList = []">导入
+                </el-button>
+            </div>
+            <div style="display: flex">
+                <label style="margin: auto; color: grey">公众号</label>
+                <el-input v-model.trim="query.officialAccount" clearable placeholder="请输入公众号"
+                    style="margin: 0 10px;width: 200px" />
+                <label style="margin: auto; color: grey">标题</label>
+                <el-input v-model.trim="query.title" clearable placeholder="请输入标题"
+                    style="margin: 0 10px;width: 200px" />
+                <el-button type="primary" class="search" @click="searchData">搜索</el-button>
+                <el-button type="primary" class="search" @click="reset" style="margin-left: 5px">重置</el-button>
+            </div>
+        </div>
+        <!--表格-->
+        <el-table :data="tableData" border ref='multipleTable' :height="tableH" stripe
+            :header-cell-style="{ background: '#e5e8ed', color: '#666', textAlign: 'center' }" :cell-style="tableStyle"
+            style="cursor: default">
+            <el-table-column width="50" label="序号">
+                <template slot-scope="scope">
+                    {{ (sorts.page - 1) * sorts.limit + scope.$index + 1 }}
+                </template>
+            </el-table-column>
+            <el-table-column prop="officialAccount" label="公众号" />
+            <el-table-column prop="title" :show-overflow-tooltip="true" label="标题" />
+            <el-table-column prop="url" :show-overflow-tooltip="true" label="url" />
+            <el-table-column prop="sort" label="排序号" />
+            <el-table-column prop="createTime" label="创建时间" />
+            <el-table-column label="操作" prop="examineState,id" width="230" slot="default" fixed="right">
+                <template slot-scope="scope">
+                    <el-button class="but" type="primary" @click="openModifyWorkDialog(scope.row)">
+                        编辑</el-button>
+                    <el-button class="but" type="danger" @click="handleDelete(scope.row.id, scope.$index)">删除
+                    </el-button>
+                </template>
+            </el-table-column>
+        </el-table>
+        <div class="block">
+            <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
+                :current-page="sorts.page" :page-sizes="[10, 20, 30, 40, 50]" :page-size="sorts.limit"
+                layout="prev, pager,next,jumper,total,sizes" :total="total">
+            </el-pagination>
+        </div>
+        <!-- 新增/编辑媒体 -->
+        <el-dialog :visible.sync="workDialog" width="80%" class="detailDialog" :close-on-click-modal="false" top="40px">
+            <div slot="title">
+                <div class="addTitle">{{workTitle}}</div>
+            </div>
+            <div style="height:65vh;overflow: auto;padding-right: 20px">
+                <el-form :model="postManagement" label-width="140px">
+                    <el-row>
+                        <el-col :span="12">
+                            <el-form-item label="公众号" prop="officialAccount">
+                                <el-input v-model="postManagement.officialAccount" placeholder="请输入公众号">
+                                </el-input>
+                            </el-form-item>
+                        </el-col>
+                    </el-row>
+                    <el-row>
+                        <el-col :span="12">
+                            <el-form-item label="标题" prop="title">
+                                <el-input v-model="postManagement.title" placeholder="请输入标题">
+                                </el-input>
+                            </el-form-item>
+                        </el-col>
+                    </el-row>
+                    <el-row>
+                        <el-col :span="12">
+                            <el-form-item label="url" prop="url">
+                                <el-input v-model="postManagement.url" placeholder="请输入url">
+                                </el-input>
+                            </el-form-item>
+                        </el-col>
+                    </el-row>
+                    <el-row>
+                        <el-col :span="12">
+                            <el-form-item label="排序号" prop="sort">
+                                <el-input-number v-model="postManagement.sort">
+                                </el-input-number>
+                            </el-form-item>
+                        </el-col>
+                    </el-row>
+                    <el-row>
+                        <el-col :span="12">
+                            <el-form-item label="创建时间" prop="createTime">
+                                <el-date-picker v-model="postManagement.createTime" type="datetime"
+                                    placeholder="请选择创建时间" value-format="yyyy-MM-dd HH:mm:ss" style="width: 100%">
+                                </el-date-picker>
+                            </el-form-item>
+                        </el-col>
+                    </el-row>
+                </el-form>
+            </div>
+            <div slot="footer" class="dialog-footer">
+                <el-button type="primary" size="mini" @click="saveWork">提交</el-button>
+                <el-button @click="goBackyynn" size="mini">返回</el-button>
+            </div>
+        </el-dialog>
+        <!-- 上传文件 -->
+        <el-dialog title="提示" :visible.sync="upload.open" width="400px">
+            <el-upload class="upload-demo" :file-list="upload.fileList" :on-change="onChange" :auto-upload="false"
+                accept=".xlsx, .xls" drag action="#" multiple>
+                <i class="el-icon-upload"></i>
+                <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+                <div class="el-upload__tip" slot="tip" style="text-align: center">仅允许导入xls、xlsx格式文件。</div>
+            </el-upload>
+            <span slot="footer" class="dialog-footer">
+                <el-button @click="upload.open = false">取 消</el-button>
+                <el-button type="primary" :loading="upload.isUploading" @click="submitFileForm">确 定</el-button>
+            </span>
+        </el-dialog>
+    </div>
+</template>
+
+<script>
+    import api from '../../api/index'
+
+    export default {
+        name: 'NewMediaMatrix',
+        created() {
+            this.getData()
+        },
+        data() {
+            return {
+                tableStyle: {
+                    textAlign: 'center',
+                },
+                tableH: 'calc(100vh - 230px)',
+                // 搜索参数
+                query: {
+                    officialAccount: '',
+                    title: ''
+                },
+                // 列表数据
+                tableData: [],
+                // 总数
+                total: 0,
+                // 上传相关
+                upload: {
+                    open: false,
+                    isUploading: false,
+                    file: null,
+                    fileList: []
+                },
+                // 上传文件界面
+                dialogVisible: false,
+                //新增/编辑媒体界面
+                workDialog: false,
+                //新增/编辑媒体标题
+                workTitle: '新增媒体',
+                // 新增/编辑表单
+                postManagement: {
+                    officialAccount: '',
+                    title: '',
+                    url: '',
+                    sort: 0,
+                    createTime: ''
+                },
+                // 分页
+                sorts: {
+                    page: 1,
+                    limit: 10,
+                }
+            }
+        },
+        methods: {
+            //返回
+            goBackyynn() {
+                this.workDialog = false;
+            },
+            //打开新增媒体界面
+            openAddWork() {
+                this.postManagement = {
+                    officialAccount: '',
+                    title: '',
+                    url: '',
+                    sort: 0,
+                    createTime: ''
+                };
+                this.workTitle = '新增媒体'
+                this.workDialog = true;
+            },
+            //打开修改媒体界面
+            openModifyWorkDialog(data) {
+                this.workTitle = '编辑媒体';
+                this.postManagement = data;
+                this.workDialog = true;
+            },
+            //保存
+            saveWork() {
+                if (!this.postManagement.officialAccount) {
+                    this.$message.error('请输入公众号!');
+                    return;
+                }
+                if (!this.postManagement.title) {
+                    this.$message.error('请输入标题!');
+                    return;
+                }
+                if (!this.postManagement.url) {
+                    this.$message.error('请输入url!');
+                    return;
+                }
+                if (!this.postManagement.createTime) {
+                    this.$message.error('请选择创建时间!');
+                    return;
+                }
+                if (this.workTitle == '编辑媒体') {
+                    fd.append('id', this.postManagement.id);
+                    api.updateArticle(this.postManagement).then(r => {
+                        if (r.data.result) {
+                            this.$message.success('编辑成功');
+                            this.getData();
+                            this.workDialog = false;
+                        } else {
+                            this.$message.error("编辑失败");
+                        }
+                    }).catch(() => {
+                        this.$message.error("编辑失败");
+                    })
+                } else {
+                    api.addArticle(this.postManagement).then(r => {
+                        if (r.data.result) {
+                            this.$message.success('新增成功');
+                            this.getData();
+                            this.workDialog = false;
+                        } else {
+                            this.$message.error("新增失败");
+                        }
+                    }).catch(() => {
+                        this.$message.error("新增失败");
+                    })
+                }
+            },
+            //切换列表条数
+            handleSizeChange(pageSize) {
+                this.sorts.limit = pageSize
+                this.sorts.page = 1;
+                this.getData();
+            },
+            //切换页码
+            handleCurrentChange(currentPage) {
+                this.$refs.multipleTable.bodyWrapper.scrollTop = 0;
+                this.sorts.page = currentPage;
+                this.getData();
+            },
+            //删除
+            handleDelete(id, index) {
+                this.$confirm("您确定要删除该数据吗?", "提示", {
+                    cancelButtonClass: "btn-custom-cancel",
+                    confirmButtonText: "确定",
+                    cancelButtonText: "取消",
+                    type: "warning"
+                }).then(() => {
+                    let fd = new FormData();
+                    fd.append('id', id);
+                    api.deleteArticleById(fd).then(res => {
+                        if (res.data.result) {
+                            this.$message({
+                                type: 'success',
+                                message: '删除成功!'
+                            });
+                            this.tableData.splice(index, 1);
+                            this.getData();
+                        } else {
+                            this.$message({
+                                type: 'info',
+                                message: '删除失败!'
+                            });
+                        }
+                    })
+                }).catch(() => {
+                    this.$message({
+                        type: 'info',
+                        message: '已取消删除'
+                    });
+                })
+            },
+            // 获取列表数据
+            getData() {
+                let params = {
+                    page: this.sorts.page,
+                    limit: this.sorts.limit,
+                    officialAccount: this.query.officialAccount,
+                    title: this.query.title
+                }
+                api.sortArticleHeadlinesPage({
+                    params
+                }).then(r => {
+                    this.total = r.data.count
+                    this.tableData = r.data.data
+                })
+            },
+            // 搜索
+            searchData() {
+                this.sorts.page = 1;
+                this.getData()
+            },
+            // 清空输入框
+            reset() {
+                this.query.officialAccount = '';
+                this.query.title = '';
+                this.sorts.page = 1;
+                this.getData()
+            },
+            // 更改文件
+            onChange(file, fileList) {
+                if (file.raw.type === 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' || file.raw
+                    .type === 'application/vnd.ms-excel') {
+                    this.upload.file = file;
+                    // 覆盖上次上传的文件
+                    if (fileList.length > 0) {
+                        this.upload.fileList = [fileList[fileList.length - 1]];
+                    }
+                } else {
+                    this.$message.error('只能上传xls、xlsx文件!');
+                }
+            },
+            // 提交上传文件
+            submitFileForm() {
+                if (!this.upload.file) {
+                    this.$message.error('请上传文件!');
+                    return;
+                }
+                let fd = new FormData();
+                fd.append('file', this.upload.file.raw);
+                this.upload.isUploading = true;
+                api.uploadArticleExcel(fd).then(r => {
+                    if (r.data.result) {
+                        this.sorts.page = 1;
+                        this.getData();
+                        this.$message.success("上传成功");
+                        this.upload.open = false;
+                        this.upload.isUploading = false;
+                    } else {
+                        this.upload.open = false;
+                        this.upload.isUploading = false;
+                        this.$message.error("上传失败,请确认数据正确");
+                    }
+                }).catch(() => {
+                    this.upload.open = false;
+                    this.upload.isUploading = false;
+                    this.$message.error("上传失败");
+                })
+            }
+        },
+    }
+</script>
+
+<style scoped lang="less">
+    /* 禁用后的勾选*/
+    /deep/ .el-checkbox__input.is-disabled.is-checked .el-checkbox__inner::after {
+        border-color: #def5cb;
+    }
+
+    /deep/ .el-checkbox__input.is-disabled.is-checked .el-checkbox__inner {
+        background-color: #157de9;
+        border-color: #DCDFE6;
+    }
+
+    /deep/ [data-v-2cde7735] .el-upload-list--picture .el-upload-list__item-name {
+        display: block;
+        margin-top: 0px;
+        margin-left: -78px;
+    }
+
+    /deep/ .el-upload-list--picture .el-upload-list__item {
+        display: flex;
+        flex-direction: column-reverse;
+        width: 100%;
+        height: 100%;
+    }
+
+    /deep/ .el-upload-list--picture .el-upload-list__item-name i {
+        display: none;
+    }
+
+    /deep/ .el-upload-list--picture .el-upload-list__item-name {
+        display: block;
+        margin-top: 0px;
+    }
+
+    /deep/ .el-upload-list--picture .el-upload-list__item-thumbnail {
+        width: 100%;
+        height: 100%;
+    }
+
+    /deep/ .el-dialog__body {
+        padding: 0 0 30px 20px;
+        color: #606266;
+        font-size: 14px;
+        word-break: break-all;
+    }
+
+    /deep/ .el-dialog {
+        margin: 0 auto 0;
+    }
+
+    /deep/ .el-form-item__label {
+        padding: 0;
+    }
+
+    .yxnaContent {
+        padding: 10px;
+    }
+
+    .addTitle {
+        font-size: 18px;
+        font-weight: bold;
+        margin-bottom: 10px;
+    }
+
+    /deep/ .btn-custom-cancel {
+        float: right !important;
+        margin-left: 10px !important;
+    }
+
+    .add {
+        width: 66px;
+        height: 38px;
+        margin-left: 0;
+    }
+
+    /deep/ .el-message-box__btns .el-button:nth-child(2) {
+        margin-right: 10px;
+        float: right;
+    }
+
+    /deep/ .el-col-12 {
+        width: 50%;
+        text-align: left;
+    }
+
+    .search {
+        width: 66px;
+        height: 38px;
+        margin-left: 0;
+    }
+
+    /deep/ .el-form-item__label {
+        height: 40px;
+        width: 110px;
+        background-color: #FAFAFA;
+        text-align: center;
+        border: 1px solid #DCDFE6;
+        border-radius: 2px 0 0 2px;
+    }
+
+    /deep/ .el-button.is-disabled {
+        color: #C0C4CC !important;
+    }
+
+    /deep/.el-button--primary.is-disabled {
+        color: #FFF !important;
+    }
+
+    /deep/ .el-input__inner {
+        border-radius: 2px 0 0 2px;
+    }
+
+    .el-select>.el-input {
+        width: 200px;
+    }
+
+    /deep/ .el-textarea__inner {
+        height: 100px;
+    }
+
+
+    /deep/ .el-dialog__title {
+        font-size: 14px;
+    }
+
+    /deep/ .el-pagination__total {
+        margin-left: 10px !important;
+    }
+
+    .el-pagination {
+        margin: 0;
+        margin-top: 10px;
+        /* position: fixed;
+        left: 13rem; */
+    }
+
+    /deep/ .el-table--scrollable-x .el-table__body-wrapper {
+        z-index: 2;
+    }
+
+    .imgBox {
+        width: 100%;
+        /*height: 55vh;*/
+        height: 100%;
+    }
+
+    .but {
+        width: 36px;
+        height: 22px;
+        padding: 0;
+        font-size: 12px;
+    }
+
+    .el-checkbox {
+        margin: 0;
+        margin-right: 10px;
+    }
+
+    /deep/ .bewrite>.el-form-item__label {
+        width: 100%;
+        text-align: left;
+        padding-left: 21px;
+    }
+
+    /deep/ .el-form--inline .el-form-item {
+        margin-right: 0px;
+    }
+
+    /deep/ [data-v-2cde7735] .el-form-item__label {
+        border: 1px solid #DCDFE6;
+        /*border-right: transparent;*/
+    }
+
+    /*    空白框*/
+    /deep/ .formTempBox {
+        height: 38px;
+        border: 1px solid #DCDFE6;
+        width: 100%;
+        border-left: transparent;
+        background-color: #FAFAFA;
+    }
+</style>