Преглед на файлове

Merge remote-tracking branch 'origin/develop' into develop

weirenchun преди 2 години
родител
ревизия
1be83798a2

+ 2 - 0
src/router/index.js

@@ -4,6 +4,7 @@ import navStore from '../store/nav.js'
 import keepAliveStore from '../store/keepAlive.js'
 import generatedRoutes from '~pages'
 import { setupLayouts } from 'layouts-generated'
+import { removeWatermark } from '@/utils/watermark.js'
 
 // 导出路由
 const routes = setupLayouts(generatedRoutes)
@@ -23,6 +24,7 @@ router.beforeEach((to, from, next) => {
     keepAlive.add(to.name) // 将路由名称添加到 keepAlive 集合中
   }
   if (to.path === '/') {
+    removeWatermark()
     const menu = { active: 0, subActive: 0 }
     localStorage.setItem('index', JSON.stringify(menu))
     localStorage.setItem('data-type', 'project')

+ 54 - 13
src/views/project/componens/info2.vue

@@ -8,17 +8,27 @@
         v-model="form"
         v-model:page="page"
         :before-open="beforeOpen"
+        @row-update="rowUpdate"
         @row-del="rowDel"
         @current-change="currentChange"
         @size-change="sizeChange"
         @refresh-change="refreshChange"
       >
         <template #menu="{ row }">
-          <preview :id="row.bladeFileId">
-            <template #title>
-              <el-button type="primary" text icon="View">查看</el-button>
-            </template>
-          </preview>
+          <div class="flex flex-center">
+            <preview :id="row.bladeFileId">
+              <template #title>
+                <el-button type="primary" text icon="View">查看</el-button>
+              </template>
+            </preview>
+            <el-button
+              type="primary"
+              text
+              icon="Delete"
+              @click="this.$refs.crud.rowDel(row)"
+              >删除</el-button
+            >
+          </div>
         </template>
         <template #menu-left>
           <div class="flex flex-center">
@@ -83,12 +93,13 @@ export default {
       option: {
         align: 'center',
         menuAlign: 'center',
-        menuWidth: 180,
+        menuWidth: 240,
         size: 'mini',
         addBtn: false,
-        editBtn: false,
+        editBtn: true,
+        editBtnText: '编辑文号',
         viewBtn: false,
-        delBtn: true,
+        delBtn: false,
         columnBtn: false,
         labelWidth: 140,
         border: true,
@@ -97,20 +108,24 @@ export default {
             label: '文件名称',
             prop: 'fileName',
             fixed: true,
-            width: 400
+            width: 400,
+            editDisplay: false
           },
           {
             label: '文号',
-            prop: 'docNumber'
+            prop: 'docNumber',
+            span: 16
           },
           {
             label: '上传人',
             prop: 'createUserName',
-            width: 120
+            width: 120,
+            editDisplay: false
           },
           {
             label: '上传时间',
-            prop: 'createDate'
+            prop: 'createDate',
+            editDisplay: false
           }
         ]
       },
@@ -122,7 +137,7 @@ export default {
     }
   },
   created() {
-    // this.getDic(this.industry.value)
+    this.getDic(this.industry.value)
   },
   methods: {
     getDic(code) {
@@ -149,6 +164,32 @@ export default {
           }
         })
     },
+    beforeOpen(done, type) {
+      if (type === 'edit') {
+        done()
+      }
+    },
+    rowUpdate(row, index, done, loading) {
+      console.log(row)
+      loading()
+      this.$api.common
+        .fileUpdate({ id: row.bladeFileId, copyNumber: row.docNumber })
+        .then(
+          res => {
+            if (res.code === 200) {
+              this.$message.success(res.msg)
+            } else {
+              this.$message.error(res.msg)
+            }
+            done(row)
+            this.onLoad()
+          },
+          error => {
+            window.console.log(error)
+            loading()
+          }
+        )
+    },
     rowDel(row, index, done) {
       this.$confirm('确定将选择数据删除?', {
         type: 'warning'

+ 1 - 9
src/views/project/componens/info3.vue

@@ -60,21 +60,13 @@ export default {
     }
   },
   watch: {
-    projectId: {
-      handler(val) {
-        if (val.length > 0) {
-          this.onLoad()
-        }
-      },
-      immediate: true
-    },
     stageId: {
       handler(val) {
         if (val.length > 0) {
           this.onLoad()
         }
       },
-      immediate: true
+      immediate: false
     }
   },
   data() {

+ 0 - 1
src/views/project/componens/info5.vue

@@ -49,7 +49,6 @@ export default {
   watch: {
     info: {
       handler(val) {
-        console.log(val)
         this.form = val
       },
       immediate: true

+ 2 - 0
src/views/project/componens/map-picker.vue

@@ -292,6 +292,8 @@ export default {
   img {
     width: 120px;
     height: 120px;
+    object-fit: cover;
+    margin-left: 10px;
   }
 }
 </style>

+ 5 - 2
src/views/project/componens/top.vue

@@ -75,7 +75,10 @@ export default {
 </script>
 
 <style lang="scss" scoped>
-:deep(.el-input__wrapper) {
-  box-shadow: none;
+.picker {
+  border: #a3773d solid 1px;
+  :deep(.el-input__wrapper) {
+    box-shadow: none;
+  }
 }
 </style>

+ 4 - 2
src/views/project/index.vue

@@ -16,7 +16,6 @@
       </template>
     </tips-custom>
     <!--    content-->
-    {{ currentStage }}
     <div style="margin-bottom: 65px">
       <div v-if="[1, 2].includes(currentStage)">
         <!--        基础信息-->
@@ -47,7 +46,10 @@
       <info8 v-if="user.info.type === 4" :project-id="projectId" />
     </div>
     <!--    buttom-->
-    <div class="bottom flex flex-center flex-justify-end">
+    <div
+      class="bottom flex flex-center flex-justify-end"
+      v-if="user.info.type === 3"
+    >
       <div class="padding">
         <el-button type="primary" plain @click="projectCancel">退 库</el-button>
         <el-button

+ 1 - 1
src/views/resource/component/preview.vue

@@ -18,7 +18,7 @@
           {{ data ? data.title : '' }}
         </h4>
       </template>
-      <div v-watermark="{ text: '22' }">
+      <div>
         <div v-if="data">
           <div v-if="data.imgs.length === 0" class="flex flex-center">
             <div v-html="data.content" class="preview"></div>

+ 10 - 6
src/views/resource/index.vue

@@ -2,13 +2,11 @@
   <div>
     <tips-custom>
       <template #default>
-        <div class="flex flex-center">
-          <span class="mr-10 nowrap">项目阶段</span>
+        <div class="flex flex-center picker white-bg border radius-5">
+          <span class="padding" style="width: 100px">项目阶段</span>
           <el-select
             v-model="folderInfo.stageId"
-            remote
-            filterable
-            style="width: 200px"
+            style="width: 260px"
             clearable
             placeholder="筛选项目阶段"
             :disabled="!top"
@@ -17,7 +15,7 @@
             <el-option
               v-for="item in stage"
               :key="item.id"
-              :label="item.name"
+              :label="item.name + `,包含 ` + item.fileAmount + ` 个文件`"
               :value="item.id"
             >
             </el-option>
@@ -356,4 +354,10 @@ export default {
 .content {
   height: auto;
 }
+.picker {
+  border: #a3773d solid 1px;
+  :deep(.el-input__wrapper) {
+    box-shadow: none;
+  }
+}
 </style>