修改转件及退回功能页面分类
Showing
4 changed files
with
38 additions
and
232 deletions
... | @@ -155,7 +155,7 @@ export default { | ... | @@ -155,7 +155,7 @@ export default { |
155 | }, '90%', true) | 155 | }, '90%', true) |
156 | break; | 156 | break; |
157 | case "back": //退回按钮 | 157 | case "back": //退回按钮 |
158 | this.$popupDialog("退回", "workflow/components/th", { | 158 | this.$popupDialog("退回", "workflow/top/back/index", { |
159 | bsmSlsq: this.bsmSlsq, | 159 | bsmSlsq: this.bsmSlsq, |
160 | bestepid: this.bestepid ? this.bestepid : '' | 160 | bestepid: this.bestepid ? this.bestepid : '' |
161 | }, '800px', true) | 161 | }, '800px', true) | ... | ... |
src/views/workflow/components/th.vue
deleted
100644 → 0
1 | <!-- | ||
2 | * @Description: | ||
3 | * @Autor: renchao | ||
4 | * @LastEditTime: 2023-08-02 14:24:20 | ||
5 | --> | ||
6 | <template> | ||
7 | <div class="from-clues"> | ||
8 | <!-- 表单部分 --> | ||
9 | <div class="from-clues-header"> | ||
10 | <div class="title">请选择要退回到的环节:</div> | ||
11 | <el-form ref="queryForm" label-width="90px"> | ||
12 | <ul style="margin-bottom: 15px"> | ||
13 | <li | ||
14 | v-for="(item, index) in dataList" | ||
15 | class="listDetail" | ||
16 | :key="index" | ||
17 | @click="changeSelectItem(item)"> | ||
18 | <p class="icon"> | ||
19 | <el-radio | ||
20 | v-model="selectActivity" | ||
21 | :label="item.activityId" | ||
22 | @change="changeSelectItem(item)"></el-radio> | ||
23 | </p> | ||
24 | <p>{{ item.activityName }}</p> | ||
25 | <p v-for="(child, childIndex) in item.assignee" :key="childIndex"> | ||
26 | {{ child.name }} | ||
27 | </p> | ||
28 | </li> | ||
29 | </ul> | ||
30 | <div class="title">退回意见:</div> | ||
31 | <el-form-item> | ||
32 | <el-input | ||
33 | class="textArea" | ||
34 | type="textarea" | ||
35 | v-model="outstepopinion" | ||
36 | placeholder="请输入退回意见"></el-input> | ||
37 | </el-form-item> | ||
38 | <el-form-item> | ||
39 | <el-button style="float:right" @click="cancelBack">取消</el-button> | ||
40 | <el-button type="primary" @click="onSubmit" style="float:right">退回</el-button> | ||
41 | </el-form-item> | ||
42 | </el-form> | ||
43 | </div> | ||
44 | </div> | ||
45 | </template> | ||
46 | |||
47 | <script> | ||
48 | |||
49 | import { getTaskBackNode, sendBackTask } from "@/api/workFlow.js" | ||
50 | import { popupCacel } from "@/utils/popup.js"; | ||
51 | |||
52 | export default { | ||
53 | props: { | ||
54 | formData: { | ||
55 | type: Object, | ||
56 | default: {}, | ||
57 | }, | ||
58 | }, | ||
59 | data () { | ||
60 | return { | ||
61 | selectActivity: "", | ||
62 | dataList: [], | ||
63 | outstepopinion: "", | ||
64 | selectItem: {}, | ||
65 | }; | ||
66 | }, | ||
67 | created () { | ||
68 | this.getBackNode(); | ||
69 | }, | ||
70 | methods: { | ||
71 | /** | ||
72 | * @description: onSubmit | ||
73 | * @author: renchao | ||
74 | */ | ||
75 | onSubmit () { | ||
76 | if (!this.outstepopinion) { | ||
77 | this.$message.error("请填写退回意见"); | ||
78 | } else { | ||
79 | sendBackTask({ | ||
80 | bsmSlsq: this.formData.bsmSlsq, | ||
81 | backNodeList: [this.selectItem], | ||
82 | message: this.outstepopinion | ||
83 | }).then((res) => { | ||
84 | if (res.code == 200) { | ||
85 | this.$message.success("退回成功"); | ||
86 | setTimeout(() => { | ||
87 | if (window.opener && window.opener.getBpageList) { | ||
88 | window.opener.getBpageList(); | ||
89 | } else { | ||
90 | window.opener.frames[0].getBpageList(); | ||
91 | } | ||
92 | window.close(); | ||
93 | this.$emit("input", false); | ||
94 | }, 1000); | ||
95 | } else { | ||
96 | this.$message.error(res.message); | ||
97 | } | ||
98 | }); | ||
99 | } | ||
100 | }, | ||
101 | /** | ||
102 | * @description: changeSelectItem | ||
103 | * @param {*} item | ||
104 | * @author: renchao | ||
105 | */ | ||
106 | changeSelectItem (item) { | ||
107 | this.selectItem = item; | ||
108 | this.selectActivity = item.activityId; | ||
109 | }, | ||
110 | //获取可回退环节信息 | ||
111 | /** | ||
112 | * @description: 获取可回退环节信息 | ||
113 | * @author: renchao | ||
114 | */ | ||
115 | getBackNode () { | ||
116 | getTaskBackNode(this.formData).then((res) => { | ||
117 | if (res.code == 200) { | ||
118 | this.dataList = res.result; | ||
119 | console.log("this.dataList", this.dataList); | ||
120 | if (res.result) { | ||
121 | this.selectActivity = res.result[0].activityId; | ||
122 | this.selectItem = res.result[0]; | ||
123 | } | ||
124 | } | ||
125 | }); | ||
126 | }, | ||
127 | |||
128 | /** | ||
129 | * @description: cancelBack | ||
130 | * @author: renchao | ||
131 | */ | ||
132 | cancelBack () { | ||
133 | popupCacel(); | ||
134 | } | ||
135 | } | ||
136 | } | ||
137 | </script> | ||
138 | <style scoped lang="scss"> | ||
139 | @import "~@/styles/mixin.scss"; | ||
140 | |||
141 | .listDetail { | ||
142 | display: flex; | ||
143 | align-items: center; | ||
144 | width: 100%; | ||
145 | |||
146 | p { | ||
147 | line-height: 30px; | ||
148 | height: 30px; | ||
149 | @include flex-center; | ||
150 | flex: 1; | ||
151 | width: 100%; | ||
152 | border: 1px solid rgb(233, 235, 237); | ||
153 | margin-top: -1px; | ||
154 | margin-left: -1px; | ||
155 | } | ||
156 | |||
157 | .icon { | ||
158 | flex: 0 0 60px; | ||
159 | } | ||
160 | } | ||
161 | |||
162 | .title { | ||
163 | margin-bottom: 10px; | ||
164 | } | ||
165 | |||
166 | .textArea { | ||
167 | /deep/.el-textarea__inner { | ||
168 | min-height: 90px !important; | ||
169 | } | ||
170 | } | ||
171 | /deep/.el-radio .el-radio__label { | ||
172 | display: none; | ||
173 | } | ||
174 | </style> |
... | @@ -175,7 +175,7 @@ export default { | ... | @@ -175,7 +175,7 @@ export default { |
175 | }) | 175 | }) |
176 | break; | 176 | break; |
177 | case "back": //退回按钮 | 177 | case "back": //退回按钮 |
178 | this.$popupDialog("退回", "workflow/components/th", { | 178 | this.$popupDialog("退回", "workflow/top/back/index", { |
179 | bsmSlsq: this.bsmSlsq, | 179 | bsmSlsq: this.bsmSlsq, |
180 | bestepid: this.bestepid ? this.bestepid : '' | 180 | bestepid: this.bestepid ? this.bestepid : '' |
181 | }, '800px', true) | 181 | }, '800px', true) |
... | @@ -283,10 +283,11 @@ export default { | ... | @@ -283,10 +283,11 @@ export default { |
283 | * @author: renchao | 283 | * @author: renchao |
284 | */ | 284 | */ |
285 | sendToNext (obj) { | 285 | sendToNext (obj) { |
286 | this.$popupDialog("转出", "djbworkflow/components/zc", { | 286 | this.$popupDialog("转出", "workflow/top/transfer/index", { |
287 | obj: obj, | 287 | obj: obj, |
288 | bsmSlsq: this.bsmSlsq, | 288 | bsmSlsq: this.bsmSlsq, |
289 | tabList: this.tabList | 289 | tabList: this.tabList, |
290 | tshowidea: this.showidea | ||
290 | }, '800px', true) | 291 | }, '800px', true) |
291 | }, | 292 | }, |
292 | /** | 293 | /** |
... | @@ -295,10 +296,11 @@ export default { | ... | @@ -295,10 +296,11 @@ export default { |
295 | * @author: renchao | 296 | * @author: renchao |
296 | */ | 297 | */ |
297 | sendToEnd (obj) { | 298 | sendToEnd (obj) { |
298 | this.$popupDialog("转出", "djbworkflow/components/zc", { | 299 | this.$popupDialog("转出", "workflow/top/transfer/index", { |
299 | obj: "", | 300 | obj: "", |
300 | bsmSlsq: this.bsmSlsq, | 301 | bsmSlsq: this.bsmSlsq, |
301 | tabList: this.tabList | 302 | tabList: this.tabList, |
303 | showidea: this.showidea | ||
302 | }, '800px', true) | 304 | }, '800px', true) |
303 | }, | 305 | }, |
304 | /** | 306 | /** | ... | ... |
1 | <!-- | 1 | <!-- |
2 | * @Description: | 2 | * @Description: |
3 | * @Autor: renchao | 3 | * @Autor: renchao |
4 | * @LastEditTime: 2024-01-19 16:43:43 | 4 | * @LastEditTime: 2024-01-19 16:48:37 |
5 | --> | 5 | --> |
6 | <template> | 6 | <template> |
7 | <div class="from-clues"> | 7 | <div class="from-clues"> |
8 | <!-- 表单部分 --> | ||
9 | <div class="from-clues-header"> | 8 | <div class="from-clues-header"> |
10 | <el-form ref="queryForm" label-width="180px" v-if="this.formData.obj"> | 9 | <el-form ref="queryForm" label-width="180px" v-if="this.formData.obj"> |
11 | <el-form-item label="下一环节名称:"> | 10 | <el-form-item label="下一环节名称:"> |
... | @@ -20,20 +19,19 @@ | ... | @@ -20,20 +19,19 @@ |
20 | 此环节为流程最后环节,转出后流程将结束 | 19 | 此环节为流程最后环节,转出后流程将结束 |
21 | </el-form-item> | 20 | </el-form-item> |
22 | </el-form> | 21 | </el-form> |
23 | <div class="invalid-reson">审批意见:</div> | 22 | <div v-if="this.formData.showidea"> |
24 | <el-input | 23 | <div class="invalid-reson">审批意见:</div> |
25 | class="opinion" | 24 | <el-input |
26 | v-model="shyj" | 25 | class="opinion" |
27 | placeholder="请输入审批意见" | 26 | v-model="shyj" |
28 | type="textarea" | 27 | placeholder="请输入审批意见" |
29 | :rows="4"></el-input> | 28 | type="textarea" |
30 | <!-- <el-button | 29 | :rows="4"></el-input> |
31 | class="opinion_btn" | 30 | </div> |
32 | @click="commonOpinion" | 31 | <div style="text-align:center"> |
33 | >常用意见</el-button | 32 | <el-button @click="cancelBack">取消转出</el-button> |
34 | > --> | 33 | <el-button type="primary" @click="submitForm">确定转出</el-button> |
35 | <el-button style="float: right" @click="cancelBack">取消转出</el-button> | 34 | </div> |
36 | <el-button type="primary" @click="submitForm" :loading="loading" style="float: right">确定转出</el-button> | ||
37 | </div> | 35 | </div> |
38 | </div> | 36 | </div> |
39 | </template> | 37 | </template> |
... | @@ -41,69 +39,49 @@ | ... | @@ -41,69 +39,49 @@ |
41 | <script> | 39 | <script> |
42 | import { completeTask, getNextLinkInfo } from "@/api/workFlow.js"; | 40 | import { completeTask, getNextLinkInfo } from "@/api/workFlow.js"; |
43 | import { popupCacel } from "@/utils/popup.js"; | 41 | import { popupCacel } from "@/utils/popup.js"; |
44 | import { mapGetters } from 'vuex' | 42 | import { mapGetters } from "vuex"; |
45 | export default { | 43 | export default { |
46 | components: {}, | ||
47 | |||
48 | props: { | 44 | props: { |
49 | formData: { | 45 | formData: { |
50 | type: Object, | 46 | type: Object, |
51 | default: {}, | 47 | default: {}, |
52 | }, | 48 | }, |
53 | }, | 49 | }, |
54 | computed: { | 50 | |
55 | ...mapGetters(['yjsqOptions']) | ||
56 | }, | ||
57 | data () { | 51 | data () { |
58 | return { | 52 | return { |
59 | loading: false, | ||
60 | queryForm: {}, | 53 | queryForm: {}, |
61 | shyj: "", | 54 | shyj: "", |
62 | }; | 55 | }; |
63 | }, | 56 | }, |
64 | |||
65 | watch: { | ||
66 | // yjsqOptions: { | ||
67 | // handler (val) { | ||
68 | // if(val){ | ||
69 | // this.shyj = val | ||
70 | // } | ||
71 | |||
72 | // }, | ||
73 | // }, | ||
74 | }, | ||
75 | mounted () { | ||
76 | // this.queryForm= this.queryForm.obj | ||
77 | }, | ||
78 | methods: { | 57 | methods: { |
79 | /** | 58 | /** |
80 | * @description: submitForm | 59 | * @description: submitForm |
81 | * @author: renchao | 60 | * @author: renchao |
82 | */ | 61 | */ |
83 | commonOpinion () { | 62 | commonOpinion () { |
84 | this.$popupDialog( | 63 | this.$popup('常用意见', "workflow/components/dialog/commonOpinion", { |
85 | "常用意见", | 64 | title: "常用意见", |
86 | "workflow/components/dialog/commonOpinion", | 65 | width: '75%', // 初始化75% 不需要改的话 可以直接不要 |
87 | {}, | 66 | formData: {}, // 父组件传给子组件的参数 |
88 | "70%", | 67 | cancel: function () { }, //取消事件的回调 没有按钮可以不需要 |
89 | true | 68 | confirm: function () { } //确认事件的回调 没有按钮可以不需要 |
90 | ); | 69 | }) |
91 | }, | 70 | }, |
92 | submitForm () { | 71 | submitForm () { |
93 | this.loading = true | 72 | let that = this |
94 | this.queryForm = { | 73 | this.queryForm = { |
95 | bsmSlsq: this.formData.bsmSlsq, | 74 | bsmSlsq: this.formData.bsmSlsq, |
96 | shyj: this.shyj, | 75 | shyj: this.shyj, |
97 | stepform: JSON.stringify(this.formData.tabList), | 76 | stepform: JSON.stringify(this.formData.tabList), |
98 | }; | 77 | }; |
99 | completeTask(this.queryForm).then((res) => { | 78 | completeTask(this.queryForm).then((res) => { |
100 | this.loading = false | ||
101 | if (res.code === 200) { | 79 | if (res.code === 200) { |
102 | this.$message.success("转件成功"); | ||
103 | popupCacel(); | 80 | popupCacel(); |
81 | that.$message.success("转件成功"); | ||
104 | setTimeout(() => { | 82 | setTimeout(() => { |
105 | window.close(); | 83 | window.close(); |
106 | this.$emit("input", false); | 84 | that.$emit("input", false); |
107 | if (window.opener && window.opener.getBpageList) { | 85 | if (window.opener && window.opener.getBpageList) { |
108 | window.opener.getBpageList(); | 86 | window.opener.getBpageList(); |
109 | } else { | 87 | } else { |
... | @@ -113,11 +91,11 @@ | ... | @@ -113,11 +91,11 @@ |
113 | } else { | 91 | } else { |
114 | this.$message.error(res.message); | 92 | this.$message.error(res.message); |
115 | } | 93 | } |
116 | }).catch(() => { | 94 | }).catch((error) => { |
117 | this.loading = false | 95 | // 可以添加适当的错误处理 |
118 | }) | 96 | this.$message.error("提交任务失败"); |
97 | }); | ||
119 | }, | 98 | }, |
120 | |||
121 | /** | 99 | /** |
122 | * @description: closeDialog | 100 | * @description: closeDialog |
123 | * @author: renchao | 101 | * @author: renchao | ... | ... |
-
Please register or sign in to post a comment