Pārlūkot izejas kodu

2期修改合并

zhangli 1 gadu atpakaļ
vecāks
revīzija
a7f3e0fe1d
26 mainītis faili ar 283 papildinājumiem un 163 dzēšanām
  1. 20 18
      package-lock.json
  2. 1 2
      package.json
  3. 1 1
      src/api/knowledge/auditProcess.js
  4. 0 23
      src/api/knowledge/statistics/search.js
  5. 0 33
      src/api/knowledge/statistics/synthesize.js
  6. 0 27
      src/api/knowledge/statistics/warehouse.js
  7. 36 7
      src/views/modules/knowledge/album/albumInfo.vue
  8. 31 3
      src/views/modules/knowledge/album/albumList.vue
  9. 2 2
      src/views/modules/knowledge/album/checkInfo.vue
  10. 12 1
      src/views/modules/knowledge/album/checkProcessMaintain.vue
  11. 13 2
      src/views/modules/knowledge/album/components/albumCatalog.vue
  12. 41 0
      src/views/modules/knowledge/components/previewVisible.vue
  13. 11 3
      src/views/modules/knowledge/config/bannerAddEdit.vue
  14. 8 2
      src/views/modules/knowledge/config/bannerList.vue
  15. 10 5
      src/views/modules/knowledge/map/addUpdateMap.vue
  16. 2 1
      src/views/modules/knowledge/map/components/orgPeople.vue
  17. 12 4
      src/views/modules/knowledge/news/newsAddEdit.vue
  18. 9 2
      src/views/modules/knowledge/news/newsList.vue
  19. 3 1
      src/views/modules/knowledge/statistics/components/LineEchart.vue
  20. 1 1
      src/views/modules/knowledge/statistics/components/commonEchart.vue
  21. 4 4
      src/views/modules/knowledge/statistics/components/pieChange.vue
  22. 7 3
      src/views/modules/knowledge/warehouse/auditManageList.vue
  23. 7 3
      src/views/modules/knowledge/warehouse/knowledgeAddUpdate.vue
  24. 42 9
      src/views/modules/knowledge/warehouse/knowledgeClassList.vue
  25. 7 3
      src/views/modules/knowledge/warehouse/knowledgeManageList.vue
  26. 3 3
      vue.config.js

+ 20 - 18
package-lock.json

@@ -17,8 +17,7 @@
         "codemirror": "^5.65.1",
         "core-js": "^2.6.9",
         "diff-match-patch": "^1.0.5",
-        "echarts": "^5.3.0",
-        "element-resize-detector": "^1.2.4",
+        "echarts": "^5.1.1",
         "enquire.js": "^2.1.6",
         "html2canvas": "^1.4.1",
         "increase-memory-limit": "^1.0.7",
@@ -10923,12 +10922,13 @@
       }
     },
     "node_modules/echarts": {
-      "version": "5.3.0",
-      "resolved": "https://registry.npmmirror.com/echarts/-/echarts-5.3.0.tgz",
-      "integrity": "sha512-zENufmwFE6WjM+24tW3xQq4ICqQtI0CGj4bDVDNd3BK3LtaA/5wBp+64ykIyKy3QElz0cieKqSYP4FX9Lv9MwQ==",
+      "version": "5.2.2",
+      "resolved": "http://nexus.redxun.cn:18081/repository/npm-redxun-group/echarts/-/echarts-5.2.2.tgz",
+      "integrity": "sha512-yxuBfeIH5c+0FsoRP60w4De6omXhA06c7eUYBsC1ykB6Ys2yK5fSteIYWvkJ4xJVLQgCvAdO8C4mN6MLeJpBaw==",
+      "license": "Apache-2.0",
       "dependencies": {
         "tslib": "2.3.0",
-        "zrender": "5.3.0"
+        "zrender": "5.2.1"
       }
     },
     "node_modules/editorconfig": {
@@ -10992,8 +10992,9 @@
     },
     "node_modules/element-resize-detector": {
       "version": "1.2.4",
-      "resolved": "https://registry.npmmirror.com/element-resize-detector/-/element-resize-detector-1.2.4.tgz",
+      "resolved": "http://nexus.redxun.cn:18081/repository/npm-redxun-group/element-resize-detector/-/element-resize-detector-1.2.4.tgz",
       "integrity": "sha512-Fl5Ftk6WwXE0wqCgNoseKWndjzZlDCwuPTcoVZfCP9R3EHQF8qUtr3YUPNETegRBOKqQKPW3n4kiIWngGi8tKg==",
+      "license": "MIT",
       "dependencies": {
         "batch-processor": "1.0.0"
       }
@@ -26444,9 +26445,10 @@
       }
     },
     "node_modules/zrender": {
-      "version": "5.3.0",
-      "resolved": "https://registry.npmmirror.com/zrender/-/zrender-5.3.0.tgz",
-      "integrity": "sha512-Ln2QB5uqI1ftNYMtCRxd+XDq6MOttLgam2tmhKAVA+j0ko47UT+VNlDvKTkqe4K2sJhBvB0EhYNLebqlCTjatQ==",
+      "version": "5.2.1",
+      "resolved": "http://nexus.redxun.cn:18081/repository/npm-redxun-group/zrender/-/zrender-5.2.1.tgz",
+      "integrity": "sha512-M3bPGZuyLTNBC6LiNKXJwSCtglMp8XUEqEBG+2MdICDI3d1s500Y4P0CzldQGsqpRVB7fkvf3BKQQRxsEaTlsw==",
+      "license": "BSD-3-Clause",
       "dependencies": {
         "tslib": "2.3.0"
       }
@@ -34468,12 +34470,12 @@
       }
     },
     "echarts": {
-      "version": "5.3.0",
-      "resolved": "https://registry.npmmirror.com/echarts/-/echarts-5.3.0.tgz",
-      "integrity": "sha512-zENufmwFE6WjM+24tW3xQq4ICqQtI0CGj4bDVDNd3BK3LtaA/5wBp+64ykIyKy3QElz0cieKqSYP4FX9Lv9MwQ==",
+      "version": "5.2.2",
+      "resolved": "http://nexus.redxun.cn:18081/repository/npm-redxun-group/echarts/-/echarts-5.2.2.tgz",
+      "integrity": "sha512-yxuBfeIH5c+0FsoRP60w4De6omXhA06c7eUYBsC1ykB6Ys2yK5fSteIYWvkJ4xJVLQgCvAdO8C4mN6MLeJpBaw==",
       "requires": {
         "tslib": "2.3.0",
-        "zrender": "5.3.0"
+        "zrender": "5.2.1"
       }
     },
     "editorconfig": {
@@ -34526,7 +34528,7 @@
     },
     "element-resize-detector": {
       "version": "1.2.4",
-      "resolved": "https://registry.npmmirror.com/element-resize-detector/-/element-resize-detector-1.2.4.tgz",
+      "resolved": "http://nexus.redxun.cn:18081/repository/npm-redxun-group/element-resize-detector/-/element-resize-detector-1.2.4.tgz",
       "integrity": "sha512-Fl5Ftk6WwXE0wqCgNoseKWndjzZlDCwuPTcoVZfCP9R3EHQF8qUtr3YUPNETegRBOKqQKPW3n4kiIWngGi8tKg==",
       "requires": {
         "batch-processor": "1.0.0"
@@ -46088,9 +46090,9 @@
       }
     },
     "zrender": {
-      "version": "5.3.0",
-      "resolved": "https://registry.npmmirror.com/zrender/-/zrender-5.3.0.tgz",
-      "integrity": "sha512-Ln2QB5uqI1ftNYMtCRxd+XDq6MOttLgam2tmhKAVA+j0ko47UT+VNlDvKTkqe4K2sJhBvB0EhYNLebqlCTjatQ==",
+      "version": "5.2.1",
+      "resolved": "http://nexus.redxun.cn:18081/repository/npm-redxun-group/zrender/-/zrender-5.2.1.tgz",
+      "integrity": "sha512-M3bPGZuyLTNBC6LiNKXJwSCtglMp8XUEqEBG+2MdICDI3d1s500Y4P0CzldQGsqpRVB7fkvf3BKQQRxsEaTlsw==",
       "requires": {
         "tslib": "2.3.0"
       }

+ 1 - 2
package.json

@@ -21,8 +21,7 @@
     "codemirror": "^5.65.1",
     "core-js": "^2.6.9",
     "diff-match-patch": "^1.0.5",
-    "echarts": "^5.3.0",
-    "element-resize-detector": "^1.2.4",
+    "echarts": "^5.1.1",
     "enquire.js": "^2.1.6",
     "html2canvas": "^1.4.1",
     "increase-memory-limit": "^1.0.7",

+ 1 - 1
src/api/knowledge/auditProcess.js

@@ -16,7 +16,7 @@ returnData.findAllApprovalNodes=function (parameter) {
 // 保存
 returnData.batchInsertApprovalNodes=function (parameter) {
   var url= returnData.baseUrl + '/knowledgeApprovalNode/batchInsertApprovalNodes'
-  return rxAjax.postForm(url,parameter).then (res => {
+  return rxAjax.postJson(url,parameter).then (res => {
     return res
   })
 }

+ 0 - 23
src/api/knowledge/statistics/search.js

@@ -1,23 +0,0 @@
-import rxAjax from '@/assets/js/ajax.js';
-// 栏目定义 api接口
-export const returnData = {};
-
-returnData.baseUrl= '/api-knowledge';
-
-// 各业务系统分布
-returnData.searchSystemDetailVisits=function (parameter) {
-  var url= returnData.baseUrl + '/analysis/searchSystemDetailVisits'
-  return rxAjax.get(url,parameter).then (res => {
-    return res
-  })
-}
-
-// 组织访问量
-returnData.organizationSearchs=function (parameter) {
-  var url= returnData.baseUrl + '/analysis/organizationSearchs'
-  return rxAjax.postJson(url,parameter).then (res => {
-    return res
-  })
-}
-
-export default returnData

+ 0 - 33
src/api/knowledge/statistics/synthesize.js

@@ -1,33 +0,0 @@
-import rxAjax from '@/assets/js/ajax.js';
-// 栏目定义 api接口
-export const returnData = {};
-
-returnData.baseUrl= '/api-knowledge';
-
-// 各板块访问量分布
-returnData.moduleUserVisits=function (parameter) {
-  var url= returnData.baseUrl + '/analysis/moduleUserVisits'
-  return rxAjax.get(url,parameter).then (res => {
-    return res
-  })
-}
-
-// 各板块访问量分布(UV)
-returnData.moduleUserUniqueVisits=function (parameter) {
-  var url= returnData.baseUrl + '/analysis/moduleUserUniqueVisits'
-  return rxAjax.get(url,parameter).then (res => {
-    return res
-  })
-}
-
-// 组织访问量
-// returnData.organizationVisits=function (parameter) {
-//   var url= returnData.baseUrl + '/analysis/organizationVisits'
-//   return rxAjax.postJson(url,parameter).then (res => {
-//     return res
-//   })
-// }
-
-returnData.organizationVisits = returnData.baseUrl + '/analysis/organizationVisits'
-
-export default returnData

+ 0 - 27
src/api/knowledge/statistics/warehouse.js

@@ -1,27 +0,0 @@
-import rxAjax from '@/assets/js/ajax.js';
-// 栏目定义 api接口
-export const returnData = {};
-
-returnData.baseUrl= '/api-knowledge';
-
-// 知识类型访问量分布
-returnData.knowledgeTypeVisitProportion=function (parameter) {
-  var url= returnData.baseUrl + '/analysis/knowledgeTypeVisitProportion'
-  return rxAjax.get(url,parameter).then (res => {
-    return res
-  })
-}
-
-// 各一级分类知识创建数量
-returnData.level1KnowledgeHistogram=function (parameter) {
-  var url= returnData.baseUrl + '/analysis/level1KnowledgeHistogram'
-  return rxAjax.get(url,parameter).then (res => {
-    return res
-  })
-}
-
-// 组织创建知识数量
-// 专辑分类搜索查询
-returnData.organizationKnowledges = returnData.baseUrl + '/analysis/organizationKnowledges'
-
-export default returnData

+ 36 - 7
src/views/modules/knowledge/album/albumInfo.vue

@@ -31,7 +31,7 @@
               </div>
             </div>
             <div>
-              <img :src="'/api/api-system/system/core/sysFile/previewFile?fileId='+baseInfo.cover" alt="">
+              <img @click="openPreview(baseInfo.cover)" :src="'/api/api-system/system/core/sysFile/previewFile?fileId='+baseInfo.cover" alt="">
             </div>
           </div>
         </div>
@@ -166,7 +166,8 @@
             okText="保存"
             @ok="handleOk">
         <org-people style="width:1100px;height:540px;" isOnlyChoosePeople @transCheckedTarget="transCheckedTarget"></org-people>
-      </a-modal>    
+      </a-modal> 
+      <previewVisible ref="previewVisible"></previewVisible>
     </div> 
   </rx-layout>
 </template>
@@ -177,15 +178,18 @@ import orgPeople from './components/orgPeople'
 import albumCatalog from './components/albumCatalog.vue'
 import api from '@/api/knowledge/album/albumInfo'
 import albumAuditApi from '@/api/knowledge/album/albumAudit'
+import previewVisible from '../components/previewVisible'
 export default {
   name: 'albumInfo',
   components: {
     breadcrumb,
     albumCatalog,
-    orgPeople
+    orgPeople,
+    previewVisible
   },
   data() {
     return {
+      previewVisible:false,
       saveLoading: false,
       api,
       // 专辑id
@@ -326,6 +330,9 @@ export default {
         }
       })
     },
+    openPreview(src){
+      this.$refs.previewVisible.openBig(src)
+    },
     // 关闭专辑
     handleSwitchClick() {
       this.saveLoading = true
@@ -443,13 +450,35 @@ export default {
     },
     // 删除点评信息
     handleRemarkDelClick(index,pkId) {
-      this.yelpList.splice(index, 1)
-      this.yelps.push(pkId)
+      let that=this
+      this.$confirm({
+        title: `确认要删除吗?`,
+        content: `点击下方保存后将删除数据`,
+        centered: true,
+        icon: 'info-circle',
+        okText: '确定',
+        cancelText: '取消',
+        async onOk() {
+          that.yelpList.splice(index, 1)
+          that.yelps.push(pkId)
+        }
+      })
     },
     // 删除回复信息
     handleReplyDelClick(index,indey,pkId) {
-      this.yelpList[index].replies.splice(indey, 1)
-      this.yelps.push(pkId)
+      let that=this
+      this.$confirm({
+        title: `确认要删除吗?`,
+        content: `点击下方保存后将删除数据`,
+        centered: true,
+        icon: 'info-circle',
+        okText: '确定',
+        cancelText: '取消',
+        async onOk() {
+          that.yelpList[index].replies.splice(indey, 1)
+          that.yelps.push(pkId)
+        }
+      })
     },
     // 保存
     handleSaveClick() {

+ 31 - 3
src/views/modules/knowledge/album/albumList.vue

@@ -45,6 +45,16 @@
                       <a-icon v-if="$store.state.appSetting.collapsed" slot="suffixIcon" type="calendar" />
                     </a-range-picker>
                   </a-form-item>
+                  <a-form-item
+                      class="form-item-style"
+                      label="状态"
+                      name="state">
+                      <a-select class="set-input" v-model="queryParam.state" placeholder="请选择"  allowClear>
+                        <a-select-option v-for="(item,index) in stateList" :key="index" :value="item.value">
+                          {{item.label}}
+                        </a-select-option>
+                      </a-select>
+                    </a-form-item>
                   <div style="display:flex;justify-content:center;margin-top: 8px;">
                     <a-button @click="handleResetClick(true)">重置</a-button>
                     <a-button type="primary" @click="handleSearchClick">查询</a-button>
@@ -179,7 +189,15 @@ export default {
         ownerName: '',
         createTimeStart: '',
         createTimeEnd: '',
+        state:undefined
       },
+      stateList:[
+        {value: 0, label: '专辑关闭'},
+        {value: 1, label: '审核中'},
+        {value: 2, label: '发布中'},
+        //{value: 3, label: '无此状态'},
+        {value: 4, label: '已驳回'},
+      ],
       classifyLevelList: [],
       createTime: [],
       categoryIds: [],
@@ -208,19 +226,25 @@ export default {
           title: '收录知识量',
           dataIndex: 'knowledgeTotal',
           align: 'center',
-          width: 100
+          width: 100,
+          sorter:true,
+          sortField:'knowledgeTotal'
         },
           {
           title: '点评量',
           dataIndex: 'yelpTotal',
           align: 'center',
-          width: 100
+          width: 100,
+          sorter:true,
+          sortField:'yelpTotal'
         },
         {
           title: '访问量',
           dataIndex: 'views',
           align: 'center',
-          width: 100
+          width: 100,
+          sorter:true,
+          sortField:'views'
         },
         {
           title: '专辑负责人',
@@ -232,6 +256,8 @@ export default {
           title: '创建时间',
           dataIndex: 'createTime',
           align: 'center',
+          sorter:true,
+          sortField:'createTime'
         },
          {
           title: '状态',
@@ -250,6 +276,8 @@ export default {
           title: '操作时间',
           dataIndex: 'updateTime',
           align: 'center',
+          sorter:true,
+          sortField:'updateTime'
         },
         { 
           title: '操作',

+ 2 - 2
src/views/modules/knowledge/album/checkInfo.vue

@@ -86,9 +86,9 @@
               </div>
             </div>
             <a-divider />
-            <!--  专辑审批记录  -->
+            <!--  点评审批记录  -->
             <div class="album-check-record">
-              <div>专辑审批记录</div>
+              <div>点评审批记录</div>
               <div>
                 <a-table :columns="approverColumns" :data-source="approverData" :pagination="false">
                 </a-table>

+ 12 - 1
src/views/modules/knowledge/album/checkProcessMaintain.vue

@@ -188,7 +188,18 @@ export default {
       this.init()
     },
     delRow(num){
-      this.formData.splice(num, 1);
+      let that=this
+      this.$confirm({
+        title: `确认要删除吗?`,
+        content: `点击下方保存后将删除数据`,
+        centered: true,
+        icon: 'info-circle',
+        okText: '确定',
+        cancelText: '取消',
+        async onOk() {
+          that.formData.splice(num, 1);
+        }
+      })
     },
     addRow(index){
       let tempData={

+ 13 - 2
src/views/modules/knowledge/album/components/albumCatalog.vue

@@ -51,8 +51,19 @@ export default {
     // 移除知识 
     // index 目录索引  indey 知识索引  pkId 目录id  knowledgeId 知识id
     handleRemoveKnowledgeClick(index,indey,pkId,knowledgeId) {
-      this.catalogInfo[index].contents.splice(indey,1)
-      this.$emit('handleRemoveId',{pkId: pkId, knowledgeId: knowledgeId})
+      let that=this
+      this.$confirm({
+        title: `确认要移除吗?`,
+        content: `点击下方保存后将移除数据`,
+        centered: true,
+        icon: 'info-circle',
+        okText: '确定',
+        cancelText: '取消',
+        async onOk() {
+          that.catalogInfo[index].contents.splice(indey,1)
+          that.$emit('handleRemoveId',{pkId: pkId, knowledgeId: knowledgeId})
+        }
+      })
     },
     handleLookKnowledgeClick(pkId) {
       console.log(pkId)

+ 41 - 0
src/views/modules/knowledge/components/previewVisible.vue

@@ -0,0 +1,41 @@
+<template>
+  <div>
+    <a-modal :closable="false" class="previewImg" width="50%" :visible="previewVisible" :footer="null" @cancel="handleCancel">
+      <img alt="example" style="width: 100%;margin-top: -1vw;" :src="'/api/api-system/system/core/sysFile/previewFile?fileId='+imgStr"/>
+    </a-modal>
+  </div>
+</template>
+
+<script>
+export default {
+  props: {
+  },
+  data() {
+    return {
+      previewVisible: false,
+      imgStr: ''
+    }
+  },
+  mounted() {
+
+  },
+  methods: {
+    //打开大图
+    openBig(data){
+      this.imgStr=data
+      this.previewVisible = true
+    },
+    //关闭大图
+    handleCancel(){
+      this.previewVisible = false
+    },
+  }
+}
+</script>
+
+<style scoped>
+.previewImg /deep/.ant-modal-content{
+  background: none;
+  box-shadow: none;
+}
+</style>

+ 11 - 3
src/views/modules/knowledge/config/bannerAddEdit.vue

@@ -59,6 +59,7 @@
                 <a-col :span="10" :push="2">
                   <div>*图片(仅一张)</div>
                   <a-form-model-item prop="bannerFile">
+                    <div style="display:flex">
                     <a-upload
                     name="file"
                     accept=".png"
@@ -68,8 +69,7 @@
                     :headers="headers"
                     @change="handleImgChange"
                   >
-                    <img v-if="bannerForm.bannerFile" mode="aspectFill" :src="'/api/api-system/system/core/sysFile/previewFile?fileId='+bannerForm.bannerFile" alt="" />
-                    <div v-else class="upload-inline">
+                    <div class="upload-inline">
                       <div>
                         <a-icon v-if="!loading" type="plus" style="fontSize:20px;color:#aaa;" />
                         <a-icon v-else type="loading" />
@@ -84,6 +84,8 @@
                       <span style="margin-top:10px;font-size:12px;">推荐尺寸 (1920*460)</span>
                     </div>
                     </a-upload>
+                    <img @click="openPreview(bannerForm.bannerFile)" v-if="bannerForm.bannerFile" style="margin-left:20px;width: 128px;" mode="aspectFill" :src="'/api/api-system/system/core/sysFile/previewFile?fileId='+bannerForm.bannerFile" alt="" />
+                    </div>
                   </a-form-model-item>
                 </a-col>
               </a-row>
@@ -96,6 +98,7 @@
         </div>
         <!-- <a-spin tip="Loading..." class="loadBox" v-show="loading"></a-spin> -->
       </div>
+      <previewVisible ref="previewVisible"></previewVisible>
     </div> 
   </rx-layout>
 </template>
@@ -107,9 +110,11 @@ import { getCategoryId } from '../aJs/getClassifyTree'
 import api from '@/api/knowledge/config'
 import classApi from '@/api/knowledge/classify'
 import initMixin from "../aMixin/initMixin"
+import previewVisible from '../components/previewVisible'
 export default {
   components: {
-    breadcrumb
+    breadcrumb,
+    previewVisible
   },
   mixins: [ initMixin ],
   data() {
@@ -167,6 +172,9 @@ export default {
     this.$refs.bannerRef.clearValidate()
   },
   methods: {
+    openPreview(src){
+      this.$refs.previewVisible.openBig(src)
+    },
     async getUpdateData(pkId) {
       let res = await api.getData({pkId})
       let data = res.data

+ 8 - 2
src/views/modules/knowledge/config/bannerList.vue

@@ -154,7 +154,7 @@
             <div style="white-space: pre-line">{{ text }}</div>
           </template>
           <template slot="bannerFile" slot-scope="{text}">
-            <img style="width: 40px;height: 40px;" :src="'/api/api-system/system/core/sysFile/previewFile?fileId='+ text" alt="">
+            <img @click="openPreview(text)" style="width: 40px;height: 40px;" :src="'/api/api-system/system/core/sysFile/previewFile?fileId='+ text" alt="">
           </template>
           <template slot="type" slot-scope="{text}">
             <div>{{ text == 1 ? '展示' : '内部知识' }}</div>
@@ -176,6 +176,7 @@
           </template>
         </rx-grid>
       </rx-fit>
+      <previewVisible ref="previewVisible"></previewVisible>
     </div> 
   </rx-layout>
 </template>
@@ -184,11 +185,13 @@
 import breadcrumb from '../components/breadcrumb'
 import api from '@/api/knowledge/config'
 import mixin from "../aMixin/mixin"
+import previewVisible from '../components/previewVisible'
 const bannerMixin = new mixin('banner')
 export default {
   name: 'bannerList',
   components: {
-    breadcrumb
+    breadcrumb,
+    previewVisible
   },
   mixins:[ bannerMixin ],
   data() {
@@ -279,6 +282,9 @@ export default {
     }
   },
   methods: {
+    openPreview(src){
+      this.$refs.previewVisible.openBig(src)
+    },
     // 编辑
     handleJumpUpdateClick(record) {
       this.$router.push({

+ 10 - 5
src/views/modules/knowledge/map/addUpdateMap.vue

@@ -523,12 +523,13 @@ export default {
       })
       this.showUserFlag = false
       // if(this.pkId) {
-      this.userList = [ ...this.userList, ...this.choosePeople ]
+      let userListBas = [ ...this.userList, ...this.choosePeople ]
       const map = new Map()
-      let filterList = this.userList.filter(el => !map.has(el.userId) && map.set(el.userId,true))
+      let filterList = userListBas.filter(el => !map.has(el.userId) && map.set(el.userId,true))
       this.userList = filterList
       this.$refs.orgPeopleRef.$refs.mapRef.selectedRowKeys = []
       this.choosePeople = []
+      this.onChange(Math.ceil(this.userList.length/this.pageParam.pageSize))
       // } else {
       //   this.userList = [ ...res ]
       // }
@@ -677,14 +678,18 @@ export default {
     addLearnInfo(){
       this.learnForm = Object.assign({},this.$options.data().learnForm)
       this.showLearnFlag = true
-
-      setInterval(() => {
+      document.onclick=function(element){
+        if(element.target.className.indexOf('ant-cascader-menu-item')>-1){
+          document.querySelector('.ant-cascader-menus').scrollLeft = 20480
+        }
+      }
+      /*setInterval(() => {
         document.querySelectorAll('.ant-cascader-menu-item').forEach(el => {
           el.onclick = function() {
             document.querySelector('.ant-cascader-menus').scrollLeft = 2048
           }
         })
-      }, 1000)
+      }, 1000)*/
     },
     // 选中分类
     async handleClassifyChange(value, selectedOptions) {

+ 2 - 1
src/views/modules/knowledge/map/components/orgPeople.vue

@@ -207,7 +207,8 @@
             return orgData;
         },
         onSelectChange(keys,rows) {
-            this.$emit('transCheckedTarget',rows)
+            let returnArr=rows.filter(item => keys.indexOf(item.userId) > -1)
+            this.$emit('transCheckedTarget',returnArr)
         },
     },
 }

+ 12 - 4
src/views/modules/knowledge/news/newsAddEdit.vue

@@ -43,6 +43,7 @@
                 <a-col :span="6" :push="2">
                   <div>*缩略图</div>
                   <a-form-model-item prop="thumbnail">
+                   
                     <a-upload
                     name="file"
                     accept=".png"
@@ -52,8 +53,7 @@
                     :headers="headers"
                     @change="handleImgChange"
                   >
-                    <img v-if="newsForm.thumbnail" mode="aspectFill" :src="'/api/api-system/system/core/sysFile/previewFile?fileId='+newsForm.thumbnail" alt="" />
-                    <div v-else class="upload-inline">
+                    <div class="upload-inline">
                       <div>
                         <a-icon v-if="!loading" type="plus" style="fontSize:20px;color:#aaa;" />
                         <a-icon v-else type="loading" />
@@ -67,7 +67,9 @@
                       </div>
                     </div>
                   </a-upload>
-                  </a-form-model-item>
+                  <img style="margin-top:20px;width: 128px;" @click="openPreview(newsForm.thumbnail)" v-if="newsForm.thumbnail" mode="aspectFill" :src="'/api/api-system/system/core/sysFile/previewFile?fileId='+newsForm.thumbnail" alt="" />
+                
+                </a-form-model-item>
                 </a-col>
               </a-row>
               <a-row :gutter="24" type="flex" justify="end">
@@ -78,6 +80,7 @@
           </div>
         </div>
       </div>
+      <previewVisible ref="previewVisible"></previewVisible>
     </div> 
   </rx-layout>
 </template>
@@ -88,10 +91,12 @@ import breadcrumb from '../components/breadcrumb'
 import { ACCESS_TOKEN } from '@/store/mutation-types';
 import { mapState } from "vuex";
 import api from '@/api/knowledge/news'
+import previewVisible from '../components/previewVisible'
 export default {
   components: {
     editor,
-    breadcrumb
+    breadcrumb,
+    previewVisible
   },
   data() {
     return {
@@ -136,6 +141,9 @@ export default {
     this.$refs.newsRef.clearValidate()
   },
   methods: {
+    openPreview(src){
+      this.$refs.previewVisible.openBig(src)
+    },
     getUpdateData(pkId) {
       api.getData({pkId}).then(res => {
         if(res.code == 200) {

+ 9 - 2
src/views/modules/knowledge/news/newsList.vue

@@ -131,7 +131,7 @@
             <div style="white-space: pre-line">{{ text }}</div>
           </template>
           <template slot="thumbnail" slot-scope="{text}">
-            <img style="width: 40px;height: 40px;" :src="'/api/api-system/system/core/sysFile/previewFile?fileId='+ text" alt="">
+            <img @click="openPreview(text)" style="width: 40px;height: 40px;" :src="'/api/api-system/system/core/sysFile/previewFile?fileId='+ text" alt="">
           </template>
           <template slot="enabled" slot-scope="{text}">
             <div>{{ text == 1 ? '上线' : '下线' }}</div>
@@ -147,23 +147,27 @@
           </template>
         </rx-grid>
       </rx-fit>
+      <previewVisible ref="previewVisible"></previewVisible>
     </div> 
   </rx-layout>
 </template>
 
 <script>
 import breadcrumb from '../components/breadcrumb'
+import previewVisible from '../components/previewVisible'
 import api from '@/api/knowledge/news'
 import mixin from "../aMixin/mixin"
 const newsMixin = new mixin('news');
 export default {
   name: 'newsList',
   components: {
-    breadcrumb
+    breadcrumb,
+    previewVisible
   },
   mixins:[ newsMixin ],
   data() {
     return {
+      previewVisible:false,
       api,
       extend: true,
       queryParam: {
@@ -229,6 +233,9 @@ export default {
     }
   },
   methods: {
+    openPreview(src){
+      this.$refs.previewVisible.openBig(src)
+    },
     // 编辑
     handleJumpUpdateClick(record) {
       this.$router.push({

+ 3 - 1
src/views/modules/knowledge/statistics/components/LineEchart.vue

@@ -81,7 +81,9 @@ export default {
           feature: {
               magicType: {
                   show: true,
-                  type: ['line', 'bar']
+                  type: ['line', 'bar'],
+                  iconStyle:{borderColor:'#6d6d6d'},
+                  emphasis:{iconStyle:{borderColor:'#6d6d6d'}}
               }
           },
           right:'4%'

+ 1 - 1
src/views/modules/knowledge/statistics/components/commonEchart.vue

@@ -53,7 +53,7 @@ export default {
      _initEchart() {
       let that=this
       const echartInstance = echarts.init(this.$refs.baseEchartRef);
-      
+      console.log(this.option)
       echartInstance.setOption(this.option);
       echartInstance.on('legendselectchanged', function (params) {
         if(that.option.name=='barOption'){

+ 4 - 4
src/views/modules/knowledge/statistics/components/pieChange.vue

@@ -2,15 +2,15 @@
   <div class="pieTypeBox">
     <a-tooltip placement="bottom" overlayClassName="tooltipBoxpieChange">
       <template slot="title">
-        <span style="color:#3e98c5">切换为饼状图</span>
+        <span style="color:#6d6d6d">切换为饼状图</span>
       </template>
-      <a-icon @click="changePeitype(1)" type="pie-chart" :style="{marginRight:'0.5vw',color:peitype==1?'#3e98c5':'#6d6d6d','borderBottom': peitype==1?'1px solid #3e98c5':'1px solid #6d6d6d'}"/>
+      <a-icon @click="changePeitype(1)" type="pie-chart" :style="{marginRight:'0.5vw',color:peitype==1?'#6d6d6d':'#6d6d6d','borderBottom': peitype==1?'1px solid #6d6d6d':'1px solid #6d6d6d'}"/>
     </a-tooltip>
     <a-tooltip placement="bottom" overlayClassName="tooltipBoxpieChange">
       <template slot="title">
-        <span style="color:#3e98c5">切换为环状图</span>
+        <span style="color:#6d6d6d">切换为环状图</span>
       </template>
-      <a-icon @click="changePeitype(2)" type="chrome" :style="{color:peitype==2?'#3e98c5':'#6d6d6d','borderBottom': peitype==2?'1px solid #3e98c5':'1px solid #6d6d6d'}"/>    </a-tooltip>
+      <a-icon @click="changePeitype(2)" type="chrome" :style="{color:peitype==2?'#6d6d6d':'#6d6d6d','borderBottom': peitype==2?'1px solid #6d6d6d':'1px solid #6d6d6d'}"/>    </a-tooltip>
   </div>
 </template>
 

+ 7 - 3
src/views/modules/knowledge/warehouse/auditManageList.vue

@@ -433,14 +433,18 @@ export default {
       let offsetWidth = document.querySelector('.scroll-ckunk').getBoundingClientRect().left
       this.widthVar = innerWidth - offsetWidth - 40
     }, 1000);
-    
-    setInterval(() => {
+    document.onclick=function(element){
+      if(element.target.className.indexOf('ant-cascader-menu-item')>-1){
+        document.querySelector('.ant-cascader-menus').scrollLeft = 20480
+      }
+    }
+    /*setInterval(() => {
       document.querySelectorAll('.ant-cascader-menu-item').forEach(el => {
         el.onclick = function() {
           document.querySelector('.ant-cascader-menus').scrollLeft = 2048
         }
       })
-    }, 1000)
+    }, 1000)*/
    
   },
   computed: {

+ 7 - 3
src/views/modules/knowledge/warehouse/knowledgeAddUpdate.vue

@@ -331,14 +331,18 @@ export default {
       let offsetWidth = document.querySelector('.scroll-ckunk').getBoundingClientRect().left
       this.widthVar = innerWidth - offsetWidth - 40
     }, 1000);
-    
-    setInterval(() => {
+    document.onclick=function(element){
+      if(element.target.className.indexOf('ant-cascader-menu-item')>-1){
+        document.querySelector('.ant-cascader-menus').scrollLeft = 20480
+      }
+    }
+    /*setInterval(() => {
       document.querySelectorAll('.ant-cascader-menu-item').forEach(el => {
         el.onclick = function() {
           document.querySelector('.ant-cascader-menus').scrollLeft = 2048
         }
       })
-    }, 1000)
+    }, 1000)*/
    
   },
   beforeDestroy() {

+ 42 - 9
src/views/modules/knowledge/warehouse/knowledgeClassList.vue

@@ -39,7 +39,6 @@
             :dataSource="dataSource"
             :heightAuto="true"
             :showPage="false"
-            idField="pkId"
           >
             <template slot="name" slot-scope="{text}">
                 <div style="white-space: nowrap">{{ text }}</div>
@@ -258,22 +257,50 @@ export default {
   },
   mounted() {
     let that = this
-    setInterval(() => {
+    document.onclick=function(element){
+      if(element.target.className.indexOf('ant-cascader-menu-item')>-1){
+        document.querySelector('.ant-cascader-menus').scrollLeft = 20480
+      }
+    }
+    /*setTimeout(() => {
       document.querySelectorAll('.ant-cascader-menu-item').forEach(el => {
         el.onclick = function() {
-          document.querySelector('.ant-cascader-menus').scrollLeft = 2048
+          document.querySelector('.ant-cascader-menus').scrollLeft = 20480
         }
       })
-    }, 1000)
-    setInterval(() => {
+    }, 1000)*/
+    let timer=setInterval(function(){
+      if(document.querySelectorAll('.ant-table-row-expand-icon').length>0){
+        that.$nextTick(() => {
+          clearInterval(timer)
+          timer=null
+          that.setDomClick()
+          document.querySelectorAll('.ant-table-row td:nth-child(2)').forEach(item => {
+            item.style.width = '233px'
+          })
+          document.querySelectorAll('.ant-table-thead tr th:nth-child(2)').forEach(item => {
+            item.style.width = '233px'
+          })
+        })
+      }
+    },1000)
+  },
+  methods: {
+    setDomClick(){
+      let that = this
       document.querySelectorAll('.ant-table-row-expand-icon').forEach(el => {
         el.onclick = function() {
+          setTimeout(() => {
+            that.setDomClick()
+          }, 200)
           // 前一个兄弟元素
           let preElement = el.previousElementSibling
           
           // 获取level
           let className = preElement.getAttribute('class')
-          let level = parseInt(className.charAt(className.length - 1))
+          console.log(className.replace("ant-table-row-indent indent-level-",""))
+          let level =parseInt(className.replace("ant-table-row-indent indent-level-",""))
+          //let level = parseInt(className.charAt(className.length - 1))
           // preElement.parentNode.parentNode.nextSibling.firstElementChild.nextSibling.firstElementChild.style.paddingLeft = 30*(level+1) + 'px'
 
           let maxLevel = that.maxLevel
@@ -291,9 +318,7 @@ export default {
           })
         }
       })
-    }, 1000)
-  },
-  methods: {
+    },
     getClassifyData(flag) {
       this.loading = true
       api.findAllKnowledgeCategory(this.queryParam).then(res => {
@@ -316,6 +341,9 @@ export default {
             })
           }
           this.loading = false
+          this.$nextTick(() => {
+            this.setDomClick()
+          })
         }
       })
     },
@@ -340,6 +368,11 @@ export default {
     //   return data
     // },
     // 搜索
+    handleResetClick(){
+      this.queryParam.params.name = ''
+      this.isShowButton = this.queryParam.params.name ? false : true
+      this.reloadTable()
+    },
     handleSearchClick() {
       this.isShowButton = this.queryParam.params.name ? false : true
       this.reloadTable()

+ 7 - 3
src/views/modules/knowledge/warehouse/knowledgeManageList.vue

@@ -310,14 +310,18 @@ export default {
       let offsetWidth = document.querySelector('.scroll-ckunk').getBoundingClientRect().left
       this.widthVar = innerWidth - offsetWidth - 40
     }, 1000);
-    
-    setInterval(() => {
+    document.onclick=function(element){
+      if(element.target.className.indexOf('ant-cascader-menu-item')>-1){
+        document.querySelector('.ant-cascader-menus').scrollLeft = 20480
+      }
+    }
+    /*setInterval(() => {
       document.querySelectorAll('.ant-cascader-menu-item').forEach(el => {
         el.onclick = function() {
           document.querySelector('.ant-cascader-menus').scrollLeft = 2048
         }
       })
-    }, 1000)
+    }, 1000)*/
    
   },
   methods: {

+ 3 - 3
vue.config.js

@@ -156,10 +156,10 @@ const vueConfig = {
     proxy: {
         '/api-knowledge': {
             // target: 'http://10.5.100.64:5208',
-             target: 'http://10.5.100.230:9009',//服务器
-            // target: 'http://www.hkcqjy.com.cn:8096',
+            target: 'http://10.5.100.230:9009',//服务器
+            // target: 'http://www.hkcqjy.com.cn:8088',
             // target: 'http://192.168.0.185:7206',    // 张哲
-            //target: 'http://192.168.0.205:7206',//柳哥
+            // target: 'http://192.168.0.205:7206',//柳哥
             // target: 'http://10.5.0.233:9900',
             // target: 'http://10.5.100.64:9900',
             pathRewrite: { '^/api': '' },