|
@@ -2,12 +2,26 @@
|
2
|
2
|
* @Author: ysh
|
3
|
3
|
* @Date: 2024-04-08 13:56:14
|
4
|
4
|
* @LastEditors: Please set LastEditors
|
5
|
|
- * @LastEditTime: 2024-09-11 16:29:59
|
|
5
|
+ * @LastEditTime: 2024-09-12 11:35:24
|
6
|
6
|
-->
|
7
|
7
|
<template>
|
8
|
8
|
<div class="app-container">
|
9
|
9
|
<h2 style="text-align:center;">分管审核</h2>
|
10
|
10
|
<el-form :model="form" :rules="rules" label-width="100px" :disabled="disabled">
|
|
11
|
+ <el-form-item label="交底情况:">
|
|
12
|
+ <el-row>
|
|
13
|
+ <el-checkbox v-model="safe" disabled>安全交底</el-checkbox>
|
|
14
|
+ <el-link class="ml20" type="primary" @click="openSafe = true">安全交底记录表</el-link>
|
|
15
|
+ </el-row>
|
|
16
|
+ <el-row>
|
|
17
|
+ <el-checkbox v-model="tech" disabled>技术交底</el-checkbox>
|
|
18
|
+ <el-link class="ml20" type="primary" @click="openTech = true">技术交底记录表</el-link>
|
|
19
|
+ </el-row>
|
|
20
|
+ <el-row>
|
|
21
|
+ <el-checkbox v-model="plan" disabled>技术方案</el-checkbox>
|
|
22
|
+ <el-link class="ml20" type="primary" @click="openPlan = true">技术方案</el-link>
|
|
23
|
+ </el-row>
|
|
24
|
+ </el-form-item>
|
11
|
25
|
<el-form-item label="审核意见:" prop="manageComment">
|
12
|
26
|
<el-input type="textarea" :rows="4" placeholder="请输入审核意见" v-model="form.manageComment">
|
13
|
27
|
</el-input>
|
|
@@ -22,6 +36,16 @@
|
22
|
36
|
<p style="text-align:center;"><el-button type="primary" @click="confirm">确认审核</el-button></p>
|
23
|
37
|
</el-form-item>
|
24
|
38
|
</el-form>
|
|
39
|
+
|
|
40
|
+ <el-dialog title="安全交底记录表" :visible.sync="openSafe" width="1000px" append-to-body>
|
|
41
|
+ <safe-tab :taskForm="taskForm"></safe-tab>
|
|
42
|
+ </el-dialog>
|
|
43
|
+ <el-dialog title="技术交底记录表" :visible.sync="openTech" width="1000px" append-to-body>
|
|
44
|
+ <technical-tab :taskForm="taskForm"></technical-tab>
|
|
45
|
+ </el-dialog>
|
|
46
|
+ <el-dialog title="技术方案" :visible.sync="openPlan" width="1000px" append-to-body>
|
|
47
|
+ <plan-tab :taskForm="taskForm"></plan-tab>
|
|
48
|
+ </el-dialog>
|
25
|
49
|
</div>
|
26
|
50
|
</template>
|
27
|
51
|
|
|
@@ -32,10 +56,17 @@ import { complete, rejectTask, returnList, returnTask, getNextFlowNode, delegate
|
32
|
56
|
import { getProjectComment, addProjectComment, updateProjectComment } from "@/api/oa/project/projectComment"
|
33
|
57
|
import { getProject } from "@/api/oa/project/project"
|
34
|
58
|
import { getUsersDeptLeaderByDept } from '@/api/system/post'
|
|
59
|
+import { getSafe } from "@/api/oa/safe/safe";
|
|
60
|
+import { getTechnical } from "@/api/oa/technical/technical";
|
|
61
|
+import { getTechnicalPlan } from "@/api/oa/technical/technicalPlan";
|
|
62
|
+import safeTab from '@/views/flowable/form/projectProcess/safeTab.vue';
|
|
63
|
+import PlanTab from '@/views/flowable/form/projectProcess/planTab.vue';
|
|
64
|
+import TechnicalTab from '@/views/flowable/form/projectProcess/technicalTab.vue';
|
35
|
65
|
export default {
|
36
|
66
|
computed: {
|
37
|
67
|
...mapGetters(['name', 'userId']),
|
38
|
68
|
},
|
|
69
|
+ components: { safeTab, PlanTab, TechnicalTab },
|
39
|
70
|
props: {
|
40
|
71
|
disabled: {
|
41
|
72
|
type: Boolean,
|
|
@@ -56,8 +87,14 @@ export default {
|
56
|
87
|
form: {
|
57
|
88
|
manageApprover: '',
|
58
|
89
|
manageApproverName: '',
|
59
|
|
- manageApprovalTime: ''
|
|
90
|
+ manageApprovalTime: '',
|
60
|
91
|
},
|
|
92
|
+ safe: false,
|
|
93
|
+ tech: false,
|
|
94
|
+ plan: false,
|
|
95
|
+ openSafe: false,
|
|
96
|
+ openTech: false,
|
|
97
|
+ openPlan: false,
|
61
|
98
|
rules: {
|
62
|
99
|
manageComment: [{ required: true, message: "请输入审核意见", trigger: "blur" }]
|
63
|
100
|
},
|
|
@@ -108,6 +145,22 @@ export default {
|
108
|
145
|
}
|
109
|
146
|
}
|
110
|
147
|
})
|
|
148
|
+ this.haveJD();
|
|
149
|
+ },
|
|
150
|
+ async haveJD() {
|
|
151
|
+ let formId = this.taskForm.formId;
|
|
152
|
+ let resSafe = await getSafe(formId);
|
|
153
|
+ let resPlan = await getTechnicalPlan(formId);
|
|
154
|
+ let resTech = await getTechnical(formId);
|
|
155
|
+ if (resSafe.data) {
|
|
156
|
+ this.safe = true
|
|
157
|
+ }
|
|
158
|
+ if (resPlan.data) {
|
|
159
|
+ this.plan = true
|
|
160
|
+ }
|
|
161
|
+ if (resTech.data) {
|
|
162
|
+ this.tech = true
|
|
163
|
+ }
|
111
|
164
|
},
|
112
|
165
|
getDeptLeader(val) {
|
113
|
166
|
this.deptLeaderList = [this.projectLeader];
|
|
@@ -123,6 +176,10 @@ export default {
|
123
|
176
|
}
|
124
|
177
|
},
|
125
|
178
|
confirm() {
|
|
179
|
+ if (!(this.safe && this.tech)) {
|
|
180
|
+ this.$message.error('安全交底或者技术交底未全部完成,等待相关人员完成才可提交')
|
|
181
|
+ return
|
|
182
|
+ }
|
126
|
183
|
this.form.projectId = this.taskForm.formId
|
127
|
184
|
updateProjectComment({ projectId: this.taskForm.formId, manageComment: this.form.manageComment })
|
128
|
185
|
const params = { taskId: this.taskForm.taskId };
|
|
@@ -153,7 +210,26 @@ export default {
|
153
|
210
|
</script>
|
154
|
211
|
|
155
|
212
|
<style lang="scss" scoped>
|
|
213
|
+@import "@/assets/styles/element-reset.scss";
|
|
214
|
+
|
156
|
215
|
::v-deep .el-textarea.is-disabled .el-textarea__inner {
|
157
|
216
|
color: #121212 !important;
|
158
|
217
|
}
|
|
218
|
+
|
|
219
|
+::v-deep .el-checkbox__input.is-disabled.is-checked .el-checkbox__inner::after {
|
|
220
|
+ border-color: #fff;
|
|
221
|
+}
|
|
222
|
+
|
|
223
|
+::v-deep .el-checkbox__input.is-disabled.is-checked .el-checkbox__inner {
|
|
224
|
+ background-color: #409eff;
|
|
225
|
+ border-color: #409eff;
|
|
226
|
+}
|
|
227
|
+
|
|
228
|
+::v-deep .el-checkbox__input.is-disabled+span.el-checkbox__label {
|
|
229
|
+ color: #000;
|
|
230
|
+}
|
|
231
|
+
|
|
232
|
+::v-deep .el-checkbox__label {
|
|
233
|
+ font-size: 12px;
|
|
234
|
+}
|
159
|
235
|
</style>
|