Quellcode durchsuchen

项目信息去掉生产确认,新增项目导航

余思翰 vor 8 Monaten
Ursprung
Commit
ecc0af616e
1 geänderte Dateien mit 55 neuen und 11 gelöschten Zeilen
  1. 55
    11
      oa-ui/src/views/oa/project/info.vue

+ 55
- 11
oa-ui/src/views/oa/project/info.vue Datei anzeigen

1
 <template>
1
 <template>
2
   <div class="app-container">
2
   <div class="app-container">
3
+    <div class="anchor">
4
+      <div class="nav-item" @click="scrollToAnchor('section1')">项目基本信息</div>
5
+      <div class="nav-item" @click="scrollToAnchor('section2')">项目安排</div>
6
+      <div class="nav-item" @click="scrollToAnchor('section3')">技术安排</div>
7
+      <div class="nav-item" @click="scrollToAnchor('section4')">任务审核情况</div>
8
+      <div class="nav-item" @click="scrollToAnchor('section5')">项目生产情况</div>
9
+      <div class="nav-item" @click="scrollToAnchor('section6')">项目变更记录</div>
10
+    </div>
3
     <div class="header">
11
     <div class="header">
4
       <el-button icon="el-icon-d-arrow-left" plain type="primary" class="back" @click="goBack"
12
       <el-button icon="el-icon-d-arrow-left" plain type="primary" class="back" @click="goBack"
5
         v-show="needReturn">返回</el-button>
13
         v-show="needReturn">返回</el-button>
12
 
20
 
13
     <div class="content">
21
     <div class="content">
14
       <!-- 项目基本信息 -->
22
       <!-- 项目基本信息 -->
15
-      <div class="box1">
23
+      <div class="box1" ref="section1">
16
         <div class="title">项目基本信息
24
         <div class="title">项目基本信息
17
           <div class="line"></div>
25
           <div class="line"></div>
18
         </div>
26
         </div>
161
         </div>
169
         </div>
162
       </div>
170
       </div>
163
       <!-- 项目管理部安排 -->
171
       <!-- 项目管理部安排 -->
164
-      <div class="box1 mt20">
172
+      <div class="box1 mt20" ref="section2">
165
         <div class="title">项目安排
173
         <div class="title">项目安排
166
           <div class="line"></div>
174
           <div class="line"></div>
167
         </div>
175
         </div>
226
         </div>
234
         </div>
227
       </div>
235
       </div>
228
       <!-- 技术质量与安全部安排 -->
236
       <!-- 技术质量与安全部安排 -->
229
-      <div class="box1 mt20">
237
+      <div class="box1 mt20" ref="section3">
230
         <div class="title">技术安排
238
         <div class="title">技术安排
231
           <div class="line"></div>
239
           <div class="line"></div>
232
         </div>
240
         </div>
265
         </div>
273
         </div>
266
       </div>
274
       </div>
267
       <!-- 任务审核情况  -->
275
       <!-- 任务审核情况  -->
268
-      <div class="box1 mt20">
276
+      <div class="box1 mt20" ref="section4">
269
         <div class="title">任务审核情况
277
         <div class="title">任务审核情况
270
           <div class="line"></div>
278
           <div class="line"></div>
271
         </div>
279
         </div>
280
                 <el-input disabled type="textarea" v-model="projectComment.jyComment"></el-input>
288
                 <el-input disabled type="textarea" v-model="projectComment.jyComment"></el-input>
281
                 <div class="sign mt10">
289
                 <div class="sign mt10">
282
                   <div class="mr20">签名:<span class="auditor">{{ projectComment.jyUser ? projectComment.jyUser.nickName :
290
                   <div class="mr20">签名:<span class="auditor">{{ projectComment.jyUser ? projectComment.jyUser.nickName :
283
-          ''
291
+        ''
284
                       }}</span>
292
                       }}</span>
285
                   </div>
293
                   </div>
286
                   <div class="ml20"><span>审核时间:{{ projectComment.jyApprovalTime }}</span></div>
294
                   <div class="ml20"><span>审核时间:{{ projectComment.jyApprovalTime }}</span></div>
296
                 <el-input disabled type="textarea" v-model="projectComment.manageComment"></el-input>
304
                 <el-input disabled type="textarea" v-model="projectComment.manageComment"></el-input>
297
                 <div class="sign mt10">
305
                 <div class="sign mt10">
298
                   <div class="mr20">签名:<span class="auditor">{{ projectComment.managerUser ?
306
                   <div class="mr20">签名:<span class="auditor">{{ projectComment.managerUser ?
299
-          projectComment.managerUser.nickName : '' }}</span>
307
+        projectComment.managerUser.nickName : '' }}</span>
300
                   </div>
308
                   </div>
301
                   <div class="ml20"><span>审核时间:{{ projectComment.manageApprovalTime }}</span></div>
309
                   <div class="ml20"><span>审核时间:{{ projectComment.manageApprovalTime }}</span></div>
302
                 </div>
310
                 </div>
303
               </div>
311
               </div>
304
             </el-descriptions-item>
312
             </el-descriptions-item>
305
-            <el-descriptions-item>
313
+            <!-- <el-descriptions-item>
306
               <template slot="label">
314
               <template slot="label">
307
                 <svg-icon slot="prefix" icon-class="user" />
315
                 <svg-icon slot="prefix" icon-class="user" />
308
                 生产部门确认
316
                 生产部门确认
315
                   <div class="ml20"><span>审核时间:{{ projectComment.scApprovalTime }}</span></div>
323
                   <div class="ml20"><span>审核时间:{{ projectComment.scApprovalTime }}</span></div>
316
                 </div>
324
                 </div>
317
               </div>
325
               </div>
318
-            </el-descriptions-item>
326
+            </el-descriptions-item> -->
319
           </el-descriptions>
327
           </el-descriptions>
320
         </div>
328
         </div>
321
       </div>
329
       </div>
322
 
330
 
323
-      <div class="box1 mt20">
331
+      <div class="box1 mt20" ref="section5">
324
         <div class="title">项目生产情况
332
         <div class="title">项目生产情况
325
           <div class="line"></div>
333
           <div class="line"></div>
326
         </div>
334
         </div>
347
               </template>
355
               </template>
348
               <el-select v-model="devices" multiple disabled style="width:100%">
356
               <el-select v-model="devices" multiple disabled style="width:100%">
349
                 <el-option v-for="item in deviceList" :key="item.deviceId" :label="item.name + '【' + (item.brand != null ? item.brand : '') + (item.series != null ? '-' + item.series + '】' : '')
357
                 <el-option v-for="item in deviceList" :key="item.deviceId" :label="item.name + '【' + (item.brand != null ? item.brand : '') + (item.series != null ? '-' + item.series + '】' : '')
350
-          + (item.code != null ? '(设备编号:' + item.code + ')' : '') + '📍' + item.place" :value="item.deviceId">
358
+        + (item.code != null ? '(设备编号:' + item.code + ')' : '') + '📍' + item.place" :value="item.deviceId">
351
                 </el-option>
359
                 </el-option>
352
               </el-select>
360
               </el-select>
353
             </el-descriptions-item>
361
             </el-descriptions-item>
456
         </div>
464
         </div>
457
       </div>
465
       </div>
458
 
466
 
459
-      <div class="box1 mt20">
467
+      <div class="box1 mt20" ref="section6">
460
         <div class="title">项目变更记录
468
         <div class="title">项目变更记录
461
           <div class="line"></div>
469
           <div class="line"></div>
462
         </div>
470
         </div>
635
     }
643
     }
636
   },
644
   },
637
   methods: {
645
   methods: {
646
+    scrollToAnchor(anchor) {
647
+      const element = this.$refs[anchor];
648
+      console.log(element.offsetTop);
649
+      if (element) {
650
+        window.scrollTo({
651
+          behavior: 'smooth',
652
+          top: element.offsetTop - 80
653
+        });
654
+      }
655
+    },
638
     getProjectInfo(projectId) {
656
     getProjectInfo(projectId) {
639
       getProject(projectId).then(res => {
657
       getProject(projectId).then(res => {
640
         if (res.data) {
658
         if (res.data) {
894
   max-width: 1422px;
912
   max-width: 1422px;
895
 }
913
 }
896
 
914
 
915
+.anchor {
916
+  position: fixed;
917
+  right: 20px;
918
+  bottom: 0px;
919
+  z-index: 999;
920
+
921
+  .nav-item {
922
+    background-color: #fff;
923
+    padding: 8px;
924
+    border-radius: 4px;
925
+    box-shadow: 0 2px 4px rgba(0, 0, 0, .12), 0 0 6px rgba(0, 0, 0, .04);
926
+    text-align: center;
927
+    cursor: pointer;
928
+    font-size: 12px;
929
+  }
930
+
931
+  .nav-item:hover {
932
+    background-color: var(--current-color);
933
+    color: #fff;
934
+  }
935
+}
936
+
937
+html {
938
+  scroll-behavior: smooth;
939
+}
940
+
897
 ::v-deep .el-descriptions-item__label.is-bordered-label {
941
 ::v-deep .el-descriptions-item__label.is-bordered-label {
898
   color: #5a5757;
942
   color: #5a5757;
899
   background: rgba($color: #a9adb3, $alpha: 0.1);
943
   background: rgba($color: #a9adb3, $alpha: 0.1);

Laden…
Abbrechen
Speichern