Parcourir la source

修改已办任务显示、修改用车审批等

余思翰 il y a 1 an
Parent
révision
2287784c0b

+ 36
- 0
oa-ui/src/assets/styles/element-reset.scss Voir le fichier

@@ -0,0 +1,36 @@
1
+::v-deep .el-input.is-disabled .el-input__inner {
2
+  color: #686a6e;
3
+}
4
+
5
+::v-deep .el-textarea.is-disabled .el-textarea__inner,
6
+.el-radio__input.is-disabled+span.el-radio__label {
7
+  color: #686a6e;
8
+}
9
+
10
+::v-deep .el-radio__input.is-disabled+span.el-radio__label {
11
+  color: #686a6e;
12
+}
13
+
14
+::v-deep .el-radio__input.is-disabled.is-checked .el-radio__inner::after {
15
+  background-color: #409EFF;
16
+  width: 6px;
17
+  height: 6px;
18
+}
19
+
20
+::v-deep .el-radio__input.is-disabled .el-radio__inner,
21
+.el-radio__input.is-disabled.is-checked .el-radio__inner {
22
+  border-color: #409EFF;
23
+}
24
+
25
+// 复选框
26
+::v-deep .el-checkbox__input.is-disabled+span.el-checkbox__label{
27
+  color: #686a6e;
28
+}
29
+
30
+::v-deep .el-checkbox__input.is-disabled.is-checked .el-checkbox__inner{
31
+  background-color: #409EFF;
32
+  border-color: #409EFF;
33
+}
34
+::v-deep .el-checkbox__input.is-disabled.is-checked .el-checkbox__inner::after{
35
+  border-color: #fff;
36
+}

+ 3
- 2
oa-ui/src/assets/styles/element-ui.scss Voir le fichier

@@ -97,7 +97,8 @@
97 97
   overflow-x: hidden;
98 98
 }
99 99
 
100
-.el-form-item__label{
100
+.el-form-item__label {
101 101
   font-family: '微软雅黑';
102 102
   color: #34363b;
103
-}
103
+}
104
+

+ 5
- 0
oa-ui/src/assets/styles/index.scss Voir le fichier

@@ -198,4 +198,9 @@ aside {
198 198
   writing-mode: vertical-rl;
199 199
   transform: rotate(360deg);
200 200
   letter-spacing: 5px;
201
+}
202
+
203
+.auditor {
204
+  font-family: '华文行楷';
205
+  font-size: 20px;
201 206
 }

+ 23
- 0
oa-ui/src/assets/styles/ruoyi.scss Voir le fichier

@@ -289,3 +289,26 @@
289 289
   position: relative;
290 290
   float: right;
291 291
 }
292
+el-input.is-disabled >.el-input__inner {
293
+  color: #686a6e;
294
+}
295
+
296
+::v-deep .el-textarea.is-disabled .el-textarea__inner,
297
+.el-radio__input.is-disabled+span.el-radio__label {
298
+  color: #686a6e;
299
+}
300
+
301
+::v-deep .el-radio__input.is-disabled+span.el-radio__label {
302
+  color: #686a6e;
303
+}
304
+
305
+::v-deep .el-radio__input.is-disabled.is-checked .el-radio__inner::after {
306
+  background-color: var(--current-color);
307
+  width: 6px;
308
+  height: 6px;
309
+}
310
+
311
+::v-deep .el-radio__input.is-disabled .el-radio__inner,
312
+.el-radio__input.is-disabled.is-checked .el-radio__inner {
313
+  border-color: var(--current-color);
314
+}

+ 5
- 3
oa-ui/src/layout/components/Navbar.vue Voir le fichier

@@ -24,7 +24,7 @@
24 24
         </el-tooltip>
25 25
 
26 26
       </template> -->
27
-
27
+      <span class="right-menu-item">当前用户:{{ name }}</span>
28 28
       <el-dropdown class="avatar-container right-menu-item hover-effect" trigger="click">
29 29
         <div class="avatar-wrapper">
30 30
           <img :src="avatar" class="user-avatar">
@@ -72,7 +72,8 @@ export default {
72 72
     ...mapGetters([
73 73
       'sidebar',
74 74
       'avatar',
75
-      'device'
75
+      'device',
76
+      'name'
76 77
     ]),
77 78
     setting: {
78 79
       get() {
@@ -158,7 +159,7 @@ export default {
158 159
       display: inline-block;
159 160
       padding: 0 8px;
160 161
       height: 100%;
161
-      font-size: 18px;
162
+      font-size: 14px;
162 163
       color: #5a5e66;
163 164
       vertical-align: text-bottom;
164 165
 
@@ -197,4 +198,5 @@ export default {
197 198
     }
198 199
   }
199 200
 }
201
+
200 202
 </style>

+ 65
- 43
oa-ui/src/views/flowable/form/carForm.vue Voir le fichier

@@ -1,12 +1,12 @@
1 1
 <!--
2 2
  * @Author: ysh
3 3
  * @Date: 2024-02-29 11:44:28
4
- * @LastEditors: wrh
5
- * @LastEditTime: 2024-04-19 17:39:20
4
+ * @LastEditors: Please set LastEditors
5
+ * @LastEditTime: 2024-04-23 14:48:39
6 6
 -->
7 7
 
8 8
 <template>
9
-  <div>
9
+  <div v-loading="loading" element-loading-text="拼命加载中" element-loading-spinner="el-icon-loading">
10 10
     <el-row :gutter="20">
11 11
       <el-col :span="18" :xs="24">
12 12
         <el-card>
@@ -35,36 +35,36 @@
35 35
                     </el-date-picker>
36 36
                   </el-form-item>
37 37
                 </el-col>
38
-                <el-col :span="6" :xs="24">
39
-                  <el-form-item label="申请用途:" prop="carUsage">
40
-                    <el-radio-group v-model="form.carUsage" @change="useChange" size="small"
41
-                      :disabled="taskName != '用车申请'">
42
-                      <el-radio-button label="1">工会用车</el-radio-button>
43
-                      <el-radio-button label="0">非工会用车</el-radio-button>
44
-                    </el-radio-group>
45
-                  </el-form-item>
46
-                </el-col>
47 38
               </el-row>
48
-              <el-form-item label="项目编号:" prop="projectId">
39
+              <el-form-item label="申请用途:" prop="carUsage">
40
+                <el-radio-group v-model="form.carUsage" @change="useChange" size="small" :disabled="taskName != '用车申请'">
41
+                  <el-radio label="0">项目用车</el-radio>
42
+                  <el-radio label="1">非项目用车</el-radio>
43
+                  <el-radio label="2">工会用车</el-radio>
44
+                  <el-radio label="3">党委用车</el-radio>
45
+                  <el-radio label="4">团委用车</el-radio>
46
+                </el-radio-group>
47
+              </el-form-item>
48
+              <el-form-item label="项目编号:" prop="projectId" v-if="form.carUsage == '0'">
49 49
                 <el-select v-model="form.projectId" filterable placeholder="请选择" @change="handleSelectProject"
50
-                  :disabled="taskName != '用车申请' || form.carUsage == '1'" clearable>
50
+                  :disabled="taskName != '用车申请'" clearable>
51 51
                   <el-option v-for="item in projectList" :key="item.value" :label="item.projectNumber"
52 52
                     :value="item.projectId">
53 53
                   </el-option>
54 54
                 </el-select>
55 55
                 <el-descriptions border v-if="isSelect" style="margin-top: 10px;" :column="1">
56 56
                   <el-descriptions-item label="项目编号" label-class-name="my-label">{{ chooseProject.projectNumber
57
-                  }}</el-descriptions-item>
57
+                    }}</el-descriptions-item>
58 58
                   <el-descriptions-item label="项目名称" label-class-name="my-label">{{ chooseProject.projectName
59
-                  }}</el-descriptions-item>
59
+                    }}</el-descriptions-item>
60 60
                   <el-descriptions-item label="项目负责人" label-class-name="my-label">{{ chooseProject.projectLeaderUser ?
61
-                    chooseProject.projectLeaderUser.nickName : ''
62
-                  }}</el-descriptions-item>
61
+    chooseProject.projectLeaderUser.nickName : ''
62
+                    }}</el-descriptions-item>
63 63
                   <el-descriptions-item label="承担部门" label-class-name="my-label">
64 64
                     <el-tag size="small">{{ chooseProject.undertakingDeptName }}</el-tag>
65 65
                   </el-descriptions-item>
66 66
                   <el-descriptions-item label="项目类型" label-class-name="my-label">{{ chooseProject.projectType
67
-                  }}</el-descriptions-item>
67
+                    }}</el-descriptions-item>
68 68
                 </el-descriptions>
69 69
               </el-form-item>
70 70
               <el-form-item label="用车事由:" prop="applyReason">
@@ -75,7 +75,8 @@
75 75
               <el-row>
76 76
                 <el-col :span="6" :xs="24">
77 77
                   <el-form-item label="乘车人数:" prop="passengers">
78
-                    <el-input-number v-model="form.passengers" :min="1" :disabled="taskName != '用车申请'"></el-input-number>
78
+                    <el-input-number v-model="form.passengers" :min="1"
79
+                      :disabled="taskName != '用车申请'"></el-input-number>
79 80
                   </el-form-item>
80 81
                 </el-col>
81 82
                 <el-col :span="6" :xs="24">
@@ -135,20 +136,20 @@
135 136
                   </el-form-item>
136 137
                 </el-col>
137 138
               </el-row>
138
-              <!-- 工会审核意见 -->
139
-              <el-form-item label="工会审核意见:" prop="unionComment" label-width="120px" v-if="showFormItem('工会审核')">
140
-                <el-input type="textarea" :rows="2" placeholder="请输入工会审核意见" v-model="form.unionComment"
141
-                  :disabled="taskName != '工会审核'">
139
+              <!-- 党工团审核意见 -->
140
+              <el-form-item :label="dgtAdvice" prop="unionComment" label-width="120px" v-if="showFormItem('党工团审核')">
141
+                <el-input type="textarea" :rows="2" placeholder="请输入审核意见" v-model="form.unionComment"
142
+                  :disabled="taskName != '党工团审核'">
142 143
                 </el-input>
143 144
               </el-form-item>
144 145
               <el-row>
145 146
                 <el-col :span="6" :xs="24" :offset="12">
146
-                  <el-form-item label="签名:" label-width="120px" v-if="showFormItem('工会审核签名')">
147
+                  <el-form-item label="签名:" label-width="120px" v-if="showFormItem('党工团审核签名')">
147 148
                     <span class="auditor"> {{ form.unionUser ? form.unionUser.nickName : unionUser }} </span>
148 149
                   </el-form-item>
149 150
                 </el-col>
150 151
                 <el-col :span="6">
151
-                  <el-form-item label="日期:" label-width="120px" v-if="showFormItem('工会审核签名')">
152
+                  <el-form-item label="日期:" label-width="120px" v-if="showFormItem('党工团审核签名')">
152 153
                     <span> {{ form.unionTime ? form.unionTime : unionTime }} </span>
153 154
                   </el-form-item>
154 155
                 </el-col>
@@ -263,7 +264,7 @@ export default {
263 264
       this.managerUser = this.$store.getters.name;
264 265
       this.managerTime = parseTime(new Date(), '{y}-{m}-{d}')
265 266
     }
266
-    if (this.taskName == '工会审核') {
267
+    if (this.taskName == '党工团审核') {
267 268
       this.unionUser = this.$store.getters.name;
268 269
       this.unionTime = parseTime(new Date(), '{y}-{m}-{d}')
269 270
     }
@@ -285,6 +286,7 @@ export default {
285 286
   },
286 287
   data() {
287 288
     return {
289
+      loading: true,
288 290
       deptUser: '',
289 291
       managerUser: '',
290 292
       unionUser: '',
@@ -335,6 +337,7 @@ export default {
335 337
       formTotal: 0,
336 338
       flowData: {},
337 339
       dept: 0,
340
+      dgtAdvice: '审核意见'//党工团审核意见的label
338 341
     }
339 342
   },
340 343
   mounted() {
@@ -351,10 +354,19 @@ export default {
351 354
           this.dept = this.$store.getters.deptId;
352 355
           this.form.dept.deptName = this.$store.getters.deptName;
353 356
           this.form.applyDate = new Date();
357
+          this.loading = false
354 358
         }
355 359
         else {
356 360
           this.formTotal = 1;
357 361
           let data = res.data;
362
+          // 初始化党工团审核意见的label
363
+          if (data.carUsage == '2') {
364
+            this.dgtAdvice = '工会审核意见'
365
+          } else if (data.carUsage == '3') {
366
+            this.dgtAdvice = '党委审核意见'
367
+          } else {
368
+            this.dgtAdvice = '团委审核意见'
369
+          }
358 370
           if (res.data.drivers == null || res.data.drivers == undefined || res.data.drivers == "") {
359 371
             data.drivers = []
360 372
           } else {
@@ -382,6 +394,7 @@ export default {
382 394
               this.isSelect = true
383 395
             })
384 396
           }
397
+          this.loading = false
385 398
         }
386 399
       })
387 400
     },
@@ -410,6 +423,7 @@ export default {
410 423
       })
411 424
     },
412 425
     completeApply() {
426
+      debugger
413 427
       this.form.formId = this.taskForm.formId;
414 428
       this.form.carApplyId = this.taskForm.formId;
415 429
       let formData = new FormData();
@@ -428,9 +442,15 @@ export default {
428 442
     getNextFlowNodeApproval() {
429 443
       if (this.taskName == '用车申请') {
430 444
         getUsersDeptLeader({ userId: this.$store.getters.userId }).then(res => {
445
+          debugger
431 446
           this.$set(this.taskForm.variables, "dept", this.dept);
432
-          if (res.data)
447
+          if (res.data && this.dept != 0) {
433 448
             this.$set(this.taskForm.variables, "approval", res.data.userId);
449
+          } else {
450
+            let userId = this.getChooseType()
451
+            this.$set(this.taskForm.variables, "approval", userId);
452
+          }
453
+
434 454
           complete(this.taskForm).then(response => {
435 455
             this.$modal.msgSuccess(response.msg);
436 456
             this.$emit('goBack')
@@ -445,7 +465,7 @@ export default {
445 465
             this.$emit('goBack')
446 466
           });
447 467
         })
448
-      } else if (this.taskName == '分管审核' || this.taskName == '工会审核' || this.taskName == '总经理审核') {
468
+      } else if (this.taskName == '分管审核' || this.taskName == '党工团审核' || this.taskName == '总经理审核') {
449 469
         this.$set(this.taskForm.variables, "approvalList", [8, 16]);
450 470
         complete(this.taskForm).then(response => {
451 471
           this.$modal.msgSuccess(response.msg);
@@ -458,6 +478,13 @@ export default {
458 478
         });
459 479
       }
460 480
     },
481
+    getChooseType() {
482
+      if (this.form.carUsage == '2' || this.form.carUsage == '3') {
483
+        return 4 // 4为党委书记
484
+      } else {
485
+        return 142  //142为团委书记
486
+      }
487
+    },
461 488
     // 查询项目列表
462 489
     getProjectList() {
463 490
       this.loading = true
@@ -525,8 +552,9 @@ export default {
525 552
       return true;
526 553
     },
527 554
     useChange(val) {
528
-      if (val == '1')
555
+      if (val == '2' || val == '3' || val == '4') {
529 556
         this.dept = 0;
557
+      }
530 558
       else
531 559
         this.dept = this.$store.getters.deptId;
532 560
     },
@@ -536,16 +564,16 @@ export default {
536 564
         isShow = (this.dept > 102 && this.taskName == '用车申请') || (this.taskName == '部门审核' || this.taskName == '分管审核') || ((this.taskName == '安排用车' || this.taskName == '申请确认') && this.form.deptUserId != null);
537 565
       else if (name == '分管审核')
538 566
         isShow = (this.dept > 102 && this.taskName == '用车申请') || (this.taskName == '部门审核' || this.taskName == '分管审核') || ((this.taskName == '安排用车' || this.taskName == '申请确认') && this.form.managerUserId != null);
539
-      else if (name == '工会审核')
540
-        isShow = (this.dept == 0 && this.taskName == '用车申请') || this.taskName == '工会审核' || ((this.taskName == '安排用车' || this.taskName == '申请确认') && this.form.unionUserId != null);
567
+      else if (name == '党工团审核')
568
+        isShow = (this.dept == 0 && this.taskName == '用车申请') || this.taskName == '党工团审核' || ((this.taskName == '安排用车' || this.taskName == '申请确认') && this.form.unionUserId != null);
541 569
       else if (name == '总经理审核')
542 570
         isShow = (this.dept == 102 && this.taskName == '用车申请') || this.taskName == '总经理审核' || ((this.taskName == '安排用车' || this.taskName == '申请确认') && this.form.gmUserId != null);
543 571
       else if (name == '部门审核签名')
544 572
         isShow = (this.taskName == '部门审核' || this.taskName == '分管审核') || ((this.taskName == '安排用车' || this.taskName == '申请确认') && this.form.deptUserId != null);
545 573
       else if (name == '分管审核签名')
546 574
         isShow = this.taskName == '分管审核' || ((this.taskName == '安排用车' || this.taskName == '申请确认') && this.form.managerUserId != null);
547
-      else if (name == '工会审核签名')
548
-        isShow = this.taskName == '工会审核' || ((this.taskName == '安排用车' || this.taskName == '申请确认') && this.form.unionUserId != null);
575
+      else if (name == '党工团审核签名')
576
+        isShow = this.taskName == '党工团审核' || ((this.taskName == '安排用车' || this.taskName == '申请确认') && this.form.unionUserId != null);
549 577
       else if (name == '总经理审核签名')
550 578
         isShow = this.taskName == '总经理审核' || ((this.taskName == '安排用车' || this.taskName == '申请确认') && this.form.gmUserId != null);
551 579
       return isShow;
@@ -554,7 +582,9 @@ export default {
554 582
 }
555 583
 </script>
556 584
 
557
-<style lang="scss" scoped></style>
585
+<style lang="scss" scoped>
586
+@import "@/assets/styles/element-reset.scss";
587
+</style>
558 588
 
559 589
 <style>
560 590
 .auditor {
@@ -566,12 +596,4 @@ export default {
566 596
   width: 100px;
567 597
   background: #E1F3D8;
568 598
 }
569
-
570
-::v-deep .el-input.is-disabled .el-input__inner {
571
-  color: #121212 !important;
572
-}
573
-
574
-::v-deep .el-textarea.is-disabled .el-textarea__inner {
575
-  color: #121212 !important;
576
-}
577 599
 </style>

+ 70
- 0
oa-ui/src/views/flowable/form/conditionDisplay/index.vue Voir le fichier

@@ -0,0 +1,70 @@
1
+<template>
2
+  <div>
3
+    <sc-table :taskForm="taskForm" :tableForm="tableForm" v-if="taskForm.procDefName == '生产部门考核'"></sc-table>
4
+    <jy-table :taskForm="taskForm" :tableForm="tableForm" v-else-if="taskForm.procDefName == '经营发展部考核'"></jy-table>
5
+    <js-table :taskForm="taskForm" :tableForm="tableForm" v-else-if="taskForm.procDefName == '技术质量部考核'"></js-table>
6
+    <xm-table :taskForm="taskForm" :tableForm="tableForm" v-else-if="taskForm.procDefName == '项目管理部考核'"></xm-table>
7
+    <cw-table :taskForm="taskForm" :tableForm="tableForm" v-else-if="taskForm.procDefName == '财务部考核'"></cw-table>
8
+    <zh-table :taskForm="taskForm" :tableForm="tableForm" v-else-if="taskForm.procDefName == '综合事务部考核'"></zh-table>
9
+    <project-process :taskForm="taskForm" :taskName="''" v-else-if="taskForm.procDefName == '项目流转'"></project-process>
10
+    <car-form :taskForm="taskForm" :taskName="''" v-else-if="taskForm.procDefName == '用车审批'"></car-form>
11
+    <technical-form :taskForm="taskForm" v-else-if="taskForm.procDefName == '技术交底'"></technical-form>
12
+    <safe-form :taskForm="taskForm" v-else-if="taskForm.procDefName == '安全交底'"></safe-form>
13
+  </div>
14
+</template>
15
+
16
+<script>
17
+import ScTable from "@/views/flowable/form/scTable.vue";
18
+import JyTable from "@/views/flowable/form/jyTable.vue";
19
+import ZhTable from "@/views/flowable/form/zhTable.vue";
20
+import JsTable from "@/views/flowable/form/jsTable.vue";
21
+import XmTable from "@/views/flowable/form/xmTable.vue";
22
+import CwTable from "@/views/flowable/form/cwTable.vue";
23
+import CarForm from '@/views/flowable/form/carForm.vue';
24
+import projectProcess from '@/views/flowable/form/projectProcess/index'
25
+import TechnicalForm from '@/views/flowable/form/technicalForm.vue';
26
+import SafeForm from '@/views/flowable/form/safeForm.vue';
27
+export default {
28
+  props: {
29
+    passingParam: {
30
+      type: Object
31
+    }
32
+  },
33
+  watch:{
34
+    passingParam(newval,old){
35
+      this.init(newval)
36
+    }
37
+  },
38
+  components: {
39
+    ScTable,
40
+    ZhTable,
41
+    JsTable,
42
+    XmTable,
43
+    CwTable,
44
+    JyTable,
45
+    CarForm,
46
+    projectProcess,
47
+    TechnicalForm,
48
+    SafeForm
49
+  },
50
+  data() {
51
+    return {
52
+      taskForm: {},
53
+      taskName: '',
54
+      procDefName: ''
55
+    }
56
+  },
57
+  created() {
58
+    this.init(this.passingParam)
59
+  },
60
+  methods: {
61
+    init(val) {
62
+      this.taskForm = val
63
+      this.taskName = val.taskName
64
+      this.procDefName = val.procDefName
65
+    }
66
+  }
67
+}
68
+</script>
69
+
70
+<style lang="scss" scoped></style>

+ 2
- 1
oa-ui/src/views/flowable/form/projectProcess/addproject.vue Voir le fichier

@@ -2,7 +2,7 @@
2 2
  * @Author: ysh
3 3
  * @Date: 2024-02-27 14:49:15
4 4
  * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-04-17 15:27:10
5
+ * @LastEditTime: 2024-04-23 17:50:04
6 6
 -->
7 7
 
8 8
 <template>
@@ -164,6 +164,7 @@ export default {
164 164
   },
165 165
   created() {
166 166
     this.registerTime = parseTime(new Date(), '{y}-{m}-{d}')
167
+    debugger
167 168
     if (this.$route.query.taskName != '项目登记') {
168 169
       this.getProjectInfo();
169 170
       this.getProjectWorkList();

+ 5
- 5
oa-ui/src/views/flowable/form/projectProcess/inProgress.vue Voir le fichier

@@ -2,12 +2,12 @@
2 2
  * @Author: ysh
3 3
  * @Date: 2024-04-08 13:56:14
4 4
  * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-04-17 17:58:35
5
+ * @LastEditTime: 2024-04-22 11:31:51
6 6
 -->
7 7
 <template>
8 8
   <div>
9
-    <el-skeleton animated :rows="20" v-if="loading" class="app-container" />
10
-    <div class="app-container" v-if="!loading">
9
+    <!-- <el-skeleton animated :rows="20" v-if="loading" class="app-container" /> -->
10
+    <div class="app-container">
11 11
       <h2 style="text-align: center">项目运作情况</h2>
12 12
       <div class="headers">
13 13
         基本作业情况记录
@@ -29,8 +29,8 @@
29 29
         <el-form-item label="参与人员:" v-if="!noBudget">
30 30
           {{ form.staff }}
31 31
         </el-form-item>
32
-        <div v-if="noBudget">
33
-          <el-alert title="项目未做预算表,请先编制预算表" type="warning" effect="dark">
32
+        <div v-if="noBudget" class="mb20">
33
+          <el-alert title="项目未做预算表,请先编制预算表" type="warning" :closable="false">
34 34
           </el-alert>
35 35
         </div>
36 36
         <el-row :gutter="20">

+ 4
- 2
oa-ui/src/views/flowable/form/projectProcess/index.vue Voir le fichier

@@ -2,7 +2,7 @@
2 2
  * @Author: ysh
3 3
  * @Date: 2024-02-27 14:49:15
4 4
  * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-04-19 17:39:47
5
+ * @LastEditTime: 2024-04-23 16:06:30
6 6
 -->
7 7
 
8 8
 <template>
@@ -125,7 +125,9 @@ export default {
125 125
     }
126 126
   },
127 127
   created() {
128
-    this.activeName = this.taskName;
128
+    if(this.taskName !='' && this.taskName != undefined &&this.taskName != null){
129
+      this.activeName = this.taskName;
130
+    }
129 131
     console.log(this.taskName);
130 132
     this.getList();
131 133
     this.getDeptList();

+ 3
- 2
oa-ui/src/views/flowable/form/safeForm.vue Voir le fichier

@@ -2,7 +2,7 @@
2 2
   <div class="app-container">
3 3
     <el-row :gutter="20">
4 4
       <el-col :span="18" :xs="24">
5
-        <el-form ref="form" :model="form" :rules="rules" label-width="150px">
5
+        <el-form ref="form" :model="form" :rules="rules" label-width="150px" :disabled="taskName != '安全交底'">
6 6
           <el-form-item label="项目编号:" prop="projectId" v-if="taskForm.procDefName == '安全交底'">
7 7
             <el-input v-model="chooseProject.projectNumber" placeholder="请输入项目编号" disabled style="width: 300px" />
8 8
             <el-descriptions border v-if="isSelect" style="margin-top: 10px;" :column="1">
@@ -316,7 +316,8 @@ export default {
316 316
 };
317 317
 </script>
318 318
 
319
-<style>
319
+<style lang="scss" scoped>
320
+@import "@/assets/styles/element-reset.scss";
320 321
 .auditor {
321 322
   font-family: '华文行楷';
322 323
   font-size: 20px;

+ 1
- 2
oa-ui/src/views/flowable/form/technicalForm.vue Voir le fichier

@@ -155,8 +155,7 @@ export default {
155 155
   name: "Technical",
156 156
   props: {
157 157
     taskName: {
158
-      type: String,
159
-      required: true
158
+      type: String
160 159
     },
161 160
     taskForm: {
162 161
       type: Object,

+ 14
- 2
oa-ui/src/views/flowable/task/finished/detail/index.vue Voir le fichier

@@ -21,6 +21,10 @@
21 21
           <xm-table :taskForm="taskForm" :tableForm="tableForm" v-else-if="taskForm.procDefName == '项目管理部考核'"></xm-table>
22 22
           <cw-table :taskForm="taskForm" :tableForm="tableForm" v-else-if="taskForm.procDefName == '财务部考核'"></cw-table>
23 23
           <zh-table :taskForm="taskForm" :tableForm="tableForm" v-else-if="taskForm.procDefName == '综合事务部考核'"></zh-table>
24
+          <project-process :taskForm="taskForm" v-else-if="taskForm.procDefName == '项目流转'"></project-process>
25
+          <car-form :taskForm="taskForm" v-else-if="taskForm.procDefName == '用车审批'"></car-form>
26
+          <technical-form :taskForm="taskForm" v-else-if="taskForm.procDefName == '技术交底'"></technical-form>
27
+          <safe-form :taskForm="taskForm" v-else-if="taskForm.procDefName == '安全交底'"></safe-form>
24 28
           <el-col :span="16" :offset="4" v-else>
25 29
             <div class="test-form">
26 30
               <parser :key="new Date().getTime()" :form-conf="variablesData" />
@@ -83,13 +87,17 @@ import Parser from '@/components/parser/Parser'
83 87
 import { getProcessVariables, flowXmlAndNode } from "@/api/flowable/definition";
84 88
 import flow from '@/views/flowable/task/finished/detail/flow'
85 89
 import "@riophae/vue-treeselect/dist/vue-treeselect.css";
86
-import ScTable from "../../../form/scTable.vue";
87 90
 import { getAssess, modifyAssess } from '@/api/oa/assess/assess'
91
+import ScTable from "@/views/flowable/form/scTable.vue";
88 92
 import JyTable from "@/views/flowable/form/jyTable.vue";
89 93
 import ZhTable from "@/views/flowable/form/zhTable.vue";
90 94
 import JsTable from "@/views/flowable/form/jsTable.vue";
91 95
 import XmTable from "@/views/flowable/form/xmTable.vue";
92 96
 import CwTable from "@/views/flowable/form/cwTable.vue";
97
+import CarForm from '@/views/flowable/form/carForm.vue';
98
+import projectProcess from '@/views/flowable/form/projectProcess/index'
99
+import TechnicalForm from '../../../form/technicalForm.vue';
100
+import SafeForm from '../../../form/safeForm.vue';
93 101
 
94 102
 export default {
95 103
   name: "Record",
@@ -101,7 +109,11 @@ export default {
101 109
     JsTable,
102 110
     XmTable,
103 111
     CwTable,
104
-    JyTable
112
+    JyTable,
113
+    CarForm,
114
+    projectProcess,
115
+    TechnicalForm,
116
+    SafeForm
105 117
   },
106 118
   props: {},
107 119
   data() {

+ 2
- 2
oa-ui/src/views/flowable/task/finished/index.vue Voir le fichier

@@ -40,8 +40,8 @@
40 40
       <el-table-column label="操作" width="150" fixed="right" class-name="small-padding fixed-width">
41 41
         <template slot-scope="scope">
42 42
           <el-button size="mini" type="text" icon="el-icon-tickets" @click="handleFlowRecord(scope.row)">流转记录</el-button>
43
-          <el-button size="mini" type="text" icon="el-icon-refresh-left" @click="handleRevoke(scope.row)">撤回
44
-          </el-button>
43
+          <!-- <el-button size="mini" type="text" icon="el-icon-refresh-left" @click="handleRevoke(scope.row)">撤回
44
+          </el-button> -->
45 45
         </template>
46 46
       </el-table-column>
47 47
     </el-table>

+ 40
- 20
oa-ui/src/views/flowable/task/myProcess/index.vue Voir le fichier

@@ -2,7 +2,7 @@
2 2
  * @Author: ysh
3 3
  * @Date: 2024-01-03 09:23:11
4 4
  * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-04-19 15:08:13
5
+ * @LastEditTime: 2024-04-23 17:17:12
6 6
 -->
7 7
 <template>
8 8
   <div class="app-container">
@@ -36,37 +36,37 @@
36 36
 
37 37
     <el-table v-loading="loading" :data="myProcessList" border @selection-change="handleSelectionChange">
38 38
       <el-table-column type="selection" width="55" align="center" />
39
+      <el-table-column label="流程状态" align="center" width="100">
40
+        <template slot-scope="scope">
41
+          <el-tag v-if="scope.row.finishTime == null" size="mini">进行中</el-tag>
42
+          <el-tag type="success" v-if="scope.row.finishTime != null" size="mini">已完成</el-tag>
43
+        </template>
44
+      </el-table-column>
39 45
       <el-table-column label="流程编号" align="center" prop="procInsId" :show-overflow-tooltip="true" />
40 46
       <el-table-column label="流程名称" align="center" prop="procDefName" :show-overflow-tooltip="true" />
41
-      <el-table-column label="流程类别" align="center" prop="category" width="100px" />
47
+      <!-- <el-table-column label="流程类别" align="center" prop="category" width="100px" /> -->
42 48
       <!-- <el-table-column label="流程版本" align="center" width="80px">
43 49
         <template slot-scope="scope">
44 50
           <el-tag size="medium">v{{ scope.row.procDefVersion }}</el-tag>
45 51
         </template>
46 52
 </el-table-column> -->
47 53
       <el-table-column label="提交时间" align="center" prop="createTime" width="180" />
48
-      <el-table-column label="流程状态" align="center" width="100">
49
-
50
-        <template slot-scope="scope">
51
-          <el-tag v-if="scope.row.finishTime == null" size="mini">进行中</el-tag>
52
-          <el-tag type="success" v-if="scope.row.finishTime != null" size="mini">已完成</el-tag>
53
-        </template>
54
-      </el-table-column>
55 54
       <el-table-column label="耗时" align="center" prop="duration" width="180" />
56 55
       <el-table-column label="当前节点" align="center" prop="taskName" />
57
-      <el-table-column label="办人" align="center">
56
+      <el-table-column label="待办人" align="center">
58 57
 
59 58
         <template slot-scope="scope">
60
-          <label v-if="scope.row.assigneeName">{{ scope.row.assigneeName }} <el-tag type="info" size="mini">{{
61
-      scope.row.assigneeDeptName }}</el-tag></label>
59
+          <label v-if="scope.row.assigneeName">
60
+            {{ scope.row.assigneeName }}
61
+            <el-tag type="info" size="mini">{{ scope.row.assigneeDeptName }}</el-tag></label>
62 62
           <!--          <label v-if="scope.row.candidate">{{scope.row.candidate}}</label>-->
63 63
         </template>
64 64
       </el-table-column>
65
-      <el-table-column label="操作" width="150" fixed="right" class-name="small-padding fixed-width">
66
-
65
+      <el-table-column label="操作" width="200" fixed="right" class-name="small-padding fixed-width">
67 66
         <template slot-scope="scope">
68
-          <el-button @click="handleFlowRecord(scope.row)" type="text" size="small">进度</el-button>
69
-          <el-button @click="handleStop(scope.row)" type="text" size="small">取消申请</el-button>
67
+          <el-button @click="handleFlowRecord(scope.row)" type="text" size="small">办理进度</el-button>
68
+          <el-button @click="handleFlowNote(scope.row)" type="text" size="small">表单信息</el-button>
69
+          <!-- <el-button @click="handleStop(scope.row)" type="text" size="small">取消申请</el-button> -->
70 70
           <el-button @click="handleDelete(scope.row)" type="text" size="small"
71 71
             v-hasPermi="['system:deployment:remove']">删除</el-button>
72 72
         </template>
@@ -113,6 +113,10 @@
113 113
         <RowDetail :rows="clickRow"></RowDetail>
114 114
       </el-scrollbar>
115 115
     </el-dialog>
116
+
117
+    <el-dialog title="表单信息" :visible.sync="formOpen" append-to-body width="80%">
118
+      <conditionDisplay :passingParam="passingParam"></conditionDisplay>
119
+    </el-dialog>
116 120
   </div>
117 121
 </template>
118 122
 
@@ -133,11 +137,14 @@ import { definitionStart, flowXmlAndNode } from "@/api/flowable/definition";
133 137
 import { Snowflake } from '@/utils/snowFlake.js'
134 138
 import RowDetail from './send/rowDetail.vue'
135 139
 import ProgressTree from './progressTree.vue';
140
+import { getProcessVariables } from "@/api/flowable/definition";
141
+import conditionDisplay from '@/views/flowable/form/conditionDisplay/index'
136 142
 export default {
137 143
   name: "Deploy",
138 144
   components: {
139 145
     RowDetail,
140
-    ProgressTree
146
+    ProgressTree,
147
+    conditionDisplay
141 148
   },
142 149
   data() {
143 150
     return {
@@ -163,6 +170,7 @@ export default {
163 170
       open: false,
164 171
       // 详情弹出框
165 172
       detailsOpen: false,
173
+      formOpen: false,
166 174
       src: "",
167 175
       definitionList: [],
168 176
       // 查询参数
@@ -199,7 +207,8 @@ export default {
199 207
       rules: {
200 208
       },
201 209
       // 当前点击的行数据
202
-      clickRow: {}
210
+      clickRow: {},
211
+      passingParam: {}
203 212
     };
204 213
   },
205 214
   created() {
@@ -278,8 +287,8 @@ export default {
278 287
     /**  发起流程申请 */
279 288
     handleStartProcess(row) {
280 289
       // if (row.category == "assess" || row.category == "car" || ) {
281
-        let formId = new Snowflake(1n, 1n, 0n).nextId().toString();
282
-      getNextFlowNodeByStart({ deploymentId: row.deploymentId, variables: {formId:formId} }).then(res => {
290
+      let formId = new Snowflake(1n, 1n, 0n).nextId().toString();
291
+      getNextFlowNodeByStart({ deploymentId: row.deploymentId, variables: { formId: formId } }).then(res => {
283 292
         let data = res.data;
284 293
         if (data.dataType === 'dynamic') {
285 294
           if (data.type === 'assignee') { // 指定人员
@@ -373,6 +382,17 @@ export default {
373 382
       this.clickRow = row;
374 383
       this.detailsOpen = true;
375 384
     },
385
+    // 表单信息
386
+    handleFlowNote(row) {
387
+      getProcessVariables(row.taskId).then(res => {
388
+        console.log(res);
389
+        if (res.data) {
390
+          this.passingParam = row
391
+          this.passingParam.formId = res.data.formId
392
+          this.formOpen = true
393
+        }
394
+      })
395
+    },
376 396
     /** 修改按钮操作 */
377 397
     handleUpdate(row) {
378 398
       this.reset();

Loading…
Annuler
Enregistrer