98e4a74d by xiaomiao

页面整体刷新的问题处理

1 parent 846036a5
1 <template> 1 <template>
2 <div class="from-clues"> 2 <div class="from-clues">
3 <div class="invalid-title"> 3 <div class="invalid-title">
4 <i class="el-icon-question invalid-icon"></i> 4 <i class="el-icon-question invalid-icon"></i>
5 <div class="invalid-body">您是否确定终止该业务办理?</div> 5 <div class="invalid-body">您是否确定终止该业务办理?</div>
6 </div> 6 </div>
7 <div class="invalid-reson">终止原因:</div> 7 <div class="invalid-reson">终止原因:</div>
8 <el-input v-model="stopMessage" placeholder="请输入终止原因" type="textarea" :rows="4"></el-input> 8 <el-input
9 <el-button style="float:right">取消</el-button> 9 v-model="stopMessage"
10 <el-button type="primary" @click="onSubmit" style="float:right">退件</el-button> 10 placeholder="请输入终止原因"
11 type="textarea"
12 :rows="4"
13 ></el-input>
14 <el-button style="float: right">取消</el-button>
15 <el-button type="primary" @click="onSubmit" style="float: right"
16 >退件</el-button
17 >
11 </div> 18 </div>
12 </template> 19 </template>
13 20
14 <script> 21 <script>
15 import { stopTask } from "@/api/fqsq.js" 22 import { stopTask } from "@/api/fqsq.js";
16 export default { 23 export default {
17 props: { 24 props: {
18 formData: { 25 formData: {
19 type: Object, 26 type: Object,
20 default: {} 27 default: {},
21 } 28 },
22 }, 29 },
23 data () { 30 data() {
24 return { 31 return {
25 stopMessage: '' 32 stopMessage: "",
26 } 33 };
27 }, 34 },
28 methods: { 35 methods: {
29 onSubmit () { 36 onSubmit() {
30 stopTask({ 37 stopTask({
31 bsmSlsq: this.formData.bsmSlsq, 38 bsmSlsq: this.formData.bsmSlsq,
32 bestepid: this.formData.bestepid, 39 bestepid: this.formData.bestepid,
33 stopMessage: this.stopMessage 40 stopMessage: this.stopMessage,
34 }).then(res => { 41 }).then((res) => {
35 this.$message.success('终止成功') 42 this.$message.success("终止成功");
36 setTimeout(() => { 43 setTimeout(() => {
37 window.opener.location.reload(); //刷新父窗口 44 // window.opener.location.reload(); //刷新父窗口
38 window.close(); 45 if (window.opener && window.opener.getBpageList) {
39 this.$emit('input', false) 46 window.opener.getBpageList();
40 }, 1000); 47 } else {
41 }) 48 window.opener.frames[0].getBpageList();
49 }
50 window.close();
51 this.$emit("input", false);
52 }, 1000);
53 });
42 }, 54 },
43 } 55 },
44 } 56 };
45 </script> 57 </script>
46 <style scoped lang="scss"> 58 <style scoped lang="scss">
47 @import "~@/styles/mixin.scss"; 59 @import "~@/styles/mixin.scss";
48 .invalid-title { 60 .invalid-title {
49 display: flex; 61 display: flex;
50 align-content: center; 62 align-content: center;
51 63
52 .invalid-icon { 64 .invalid-icon {
53 color: rgb(254, 148, 0); 65 color: rgb(254, 148, 0);
54 font-size: 34px; 66 font-size: 34px;
55 margin-right: 10px; 67 margin-right: 10px;
56 } 68 }
57 69
58 .invalid-body { 70 .invalid-body {
59 line-height: 40px; 71 line-height: 40px;
60 margin-bottom: 10px; 72 margin-bottom: 10px;
61 } 73 }
62 } 74 }
63 75
64 .invalid-reson { 76 .invalid-reson {
65 margin-bottom: 10px; 77 margin-bottom: 10px;
66 } 78 }
67 79
68 .dialog-footer { 80 .dialog-footer {
69 margin-top: 10px; 81 margin-top: 10px;
70 display: flex; 82 display: flex;
71 justify-content: flex-end; 83 justify-content: flex-end;
72 } 84 }
73
74 </style> 85 </style>
......
...@@ -4,22 +4,40 @@ ...@@ -4,22 +4,40 @@
4 <div class="from-clues-header"> 4 <div class="from-clues-header">
5 <div class="title">请选择要退回到的环节:</div> 5 <div class="title">请选择要退回到的环节:</div>
6 <el-form ref="queryForm" label-width="90px"> 6 <el-form ref="queryForm" label-width="90px">
7 <ul style="margin-bottom:15px"> 7 <ul style="margin-bottom: 15px">
8 <li v-for="(item,index) in dataList" class="listDetail" :key="index" @click="changeSelectItem(item)"> 8 <li
9 v-for="(item, index) in dataList"
10 class="listDetail"
11 :key="index"
12 @click="changeSelectItem(item)"
13 >
9 <p class="icon"> 14 <p class="icon">
10 <el-radio v-model="selectActivity" :label="item.activityId" @change="changeSelectItem(item)"></el-radio> 15 <el-radio
16 v-model="selectActivity"
17 :label="item.activityId"
18 @change="changeSelectItem(item)"
19 ></el-radio>
20 </p>
21 <p>{{ item.activityName }}</p>
22 <p v-for="(child, childIndex) in item.userInfos" :key="childIndex">
23 {{ child.name }}
11 </p> 24 </p>
12 <p>{{item.activityName}}</p>
13 <p v-for="(child,childIndex) in item.userInfos" :key="childIndex">{{child.name}}</p>
14 </li> 25 </li>
15 </ul> 26 </ul>
16 <div class="title">退回意见:</div> 27 <div class="title">退回意见:</div>
17 <el-form-item> 28 <el-form-item>
18 <el-input class="textArea" type="textarea" v-model="outstepopinion" placeholder="请输入退回意见"></el-input> 29 <el-input
30 class="textArea"
31 type="textarea"
32 v-model="outstepopinion"
33 placeholder="请输入退回意见"
34 ></el-input>
19 </el-form-item> 35 </el-form-item>
20 <el-form-item> 36 <el-form-item>
21 <!-- <el-button style="float:right">取消</el-button> --> 37 <!-- <el-button style="float:right">取消</el-button> -->
22 <el-button type="primary" @click="onSubmit" style="float:right">退回</el-button> 38 <el-button type="primary" @click="onSubmit" style="float: right"
39 >退回</el-button
40 >
23 </el-form-item> 41 </el-form-item>
24 </el-form> 42 </el-form>
25 </div> 43 </div>
...@@ -27,58 +45,63 @@ ...@@ -27,58 +45,63 @@
27 </template> 45 </template>
28 46
29 <script> 47 <script>
30 import { getTaskBackNode, sendBackTask } from "@/api/fqsq.js" 48 import { getTaskBackNode, sendBackTask } from "@/api/fqsq.js";
31 export default { 49 export default {
32 props: { 50 props: {
33 formData: { 51 formData: {
34 type: Object, 52 type: Object,
35 default: {} 53 default: {},
36 } 54 },
37 }, 55 },
38 data () { 56 data() {
39 return { 57 return {
40 selectActivity: '', 58 selectActivity: "",
41 dataList: [], 59 dataList: [],
42 outstepopinion: '', 60 outstepopinion: "",
43 selectItem: {} 61 selectItem: {},
44 } 62 };
45 }, 63 },
46 created () { 64 created() {
47 this.getBackNode(); 65 this.getBackNode();
48 }, 66 },
49 methods: { 67 methods: {
50 onSubmit () { 68 onSubmit() {
51 this.selectItem.outstepopinion = this.outstepopinion; 69 this.selectItem.outstepopinion = this.outstepopinion;
52 sendBackTask({ 70 sendBackTask({
53 bsmSlsq: this.formData.bsmSlsq, 71 bsmSlsq: this.formData.bsmSlsq,
54 backNodeList: [this.selectItem] 72 backNodeList: [this.selectItem],
55 }).then(res => { 73 }).then((res) => {
56 this.$message.success('退回成功') 74 this.$message.success("退回成功");
57 setTimeout(() => { 75 setTimeout(() => {
58 window.opener.location.reload(); //刷新父窗口 76 // window.opener.location.reload(); //刷新父窗口
59 window.close(); 77 if (window.opener && window.opener.getBpageList) {
60 this.$emit('input', false) 78 window.opener.getBpageList();
61 }, 1000); 79 } else {
62 }) 80 window.opener.frames[0].getBpageList();
81 }
82 window.close();
83 this.$emit("input", false);
84 }, 1000);
85 });
63 }, 86 },
64 changeSelectItem(item){ 87 changeSelectItem(item) {
65 this.selectItem = item 88 this.selectItem = item;
66 this.selectActivity = item.activityId 89 this.selectActivity = item.activityId;
67 }, 90 },
68 //获取可回退环节信息 91 //获取可回退环节信息
69 getBackNode () { 92 getBackNode() {
70 getTaskBackNode(this.formData).then(res => { 93 getTaskBackNode(this.formData).then((res) => {
71 if (res.code == 200) { 94 if (res.code == 200) {
72 this.dataList = res.result 95 this.dataList = res.result;
73 if(res.result){ 96 if (res.result) {
74 this.selectActivity = res.result[0].activityId 97 this.selectActivity = res.result[0].activityId;
75 this.selectItem = res.result[0] 98 this.selectItem = res.result[0];
76 } 99 }
77 } 100 }
78 }) 101 });
79 }, 102 },
80 } 103 },
81 } 104 };
82 </script> 105 </script>
83 <style scoped lang="scss"> 106 <style scoped lang="scss">
84 @import "~@/styles/mixin.scss"; 107 @import "~@/styles/mixin.scss";
...@@ -104,7 +127,7 @@ export default { ...@@ -104,7 +127,7 @@ export default {
104 } 127 }
105 } 128 }
106 129
107 .title{ 130 .title {
108 margin-bottom: 10px; 131 margin-bottom: 10px;
109 } 132 }
110 133
...@@ -113,7 +136,7 @@ export default { ...@@ -113,7 +136,7 @@ export default {
113 min-height: 90px !important; 136 min-height: 90px !important;
114 } 137 }
115 } 138 }
116 /deep/.el-radio .el-radio__label { 139 /deep/.el-radio .el-radio__label {
117 display: none; 140 display: none;
118 } 141 }
119 </style> 142 </style>
......
...@@ -12,7 +12,7 @@ import { ...@@ -12,7 +12,7 @@ import {
12 getNextLinkInfo, 12 getNextLinkInfo,
13 } from "@/api/fqsq.js"; 13 } from "@/api/fqsq.js";
14 export default { 14 export default {
15 data () { 15 data() {
16 return { 16 return {
17 //是否开启材料分屏 17 //是否开启材料分屏
18 splitScreen: false, 18 splitScreen: false,
...@@ -28,13 +28,13 @@ export default { ...@@ -28,13 +28,13 @@ export default {
28 batchButtonName: '', 28 batchButtonName: '',
29 } 29 }
30 }, 30 },
31 mounted () { 31 mounted() {
32 this.flowInitParam(); 32 this.flowInitParam();
33 this.loadBdcdylist(); 33 this.loadBdcdylist();
34 }, 34 },
35 methods: { 35 methods: {
36 //读取申请单元信息 36 //读取申请单元信息
37 loadBdcdylist () { 37 loadBdcdylist() {
38 var formdata = new FormData(); 38 var formdata = new FormData();
39 formdata.append("bsmSlsq", this.bsmSlsq); 39 formdata.append("bsmSlsq", this.bsmSlsq);
40 formdata.append("bestepid", this.bestepid); 40 formdata.append("bestepid", this.bestepid);
...@@ -56,7 +56,7 @@ export default { ...@@ -56,7 +56,7 @@ export default {
56 }); 56 });
57 }, 57 },
58 //批量按钮判断 58 //批量按钮判断
59 judgeBatchShow () { 59 judgeBatchShow() {
60 this.showBatch = false; 60 this.showBatch = false;
61 if (this.unitData.length > 1) { 61 if (this.unitData.length > 1) {
62 let qllx = this.$route.query.sqywbm.substring(0, 3); 62 let qllx = this.$route.query.sqywbm.substring(0, 3);
...@@ -75,7 +75,7 @@ export default { ...@@ -75,7 +75,7 @@ export default {
75 } 75 }
76 }, 76 },
77 //加载流程初始参数 77 //加载流程初始参数
78 flowInitParam () { 78 flowInitParam() {
79 var formdata = new FormData(); 79 var formdata = new FormData();
80 formdata.append("bsmSlsq", this.bsmSlsq); 80 formdata.append("bsmSlsq", this.bsmSlsq);
81 formdata.append("bestepid", this.bestepid); 81 formdata.append("bestepid", this.bestepid);
...@@ -87,7 +87,7 @@ export default { ...@@ -87,7 +87,7 @@ export default {
87 }); 87 });
88 }, 88 },
89 //流程环节操作按钮 89 //流程环节操作按钮
90 operation (item) { 90 operation(item) {
91 //按钮 B0:选择不动产单元 B1:流程图 B2:材料分屏 B3:材料导入 B4:登记簿 B5:证书预览 B6:打印申请书 B7:证书领取 B8:楼盘表 B9:登簿 91 //按钮 B0:选择不动产单元 B1:流程图 B2:材料分屏 B3:材料导入 B4:登记簿 B5:证书预览 B6:打印申请书 B7:证书领取 B8:楼盘表 B9:登簿
92 //操作按钮 登簿:record 转件:transfer 退回:back 退出:signout 92 //操作按钮 登簿:record 转件:transfer 退回:back 退出:signout
93 let that = this; 93 let that = this;
...@@ -227,7 +227,7 @@ export default { ...@@ -227,7 +227,7 @@ export default {
227 } 227 }
228 }, 228 },
229 //发送下一个环节 229 //发送下一个环节
230 sendToNext (obj) { 230 sendToNext(obj) {
231 const h = this.$createElement; 231 const h = this.$createElement;
232 this.$msgbox({ 232 this.$msgbox({
233 title: "您确定转出吗?1", 233 title: "您确定转出吗?1",
...@@ -251,7 +251,12 @@ export default { ...@@ -251,7 +251,12 @@ export default {
251 if (res.code === 200) { 251 if (res.code === 200) {
252 instance.confirmButtonLoading = false; 252 instance.confirmButtonLoading = false;
253 this.$message.success("转件成功"); 253 this.$message.success("转件成功");
254 window.opener.location.reload(); //刷新父窗口 254 // window.opener.location.reload(); //刷新父窗口
255 if (window.opener && window.opener.getBpageList) {
256 window.opener.getBpageList();
257 } else {
258 window.opener.frames[0].getBpageList();
259 }
255 window.close(); 260 window.close();
256 this.$emit("input", false); 261 this.$emit("input", false);
257 } else { 262 } else {
...@@ -271,7 +276,7 @@ export default { ...@@ -271,7 +276,7 @@ export default {
271 }); 276 });
272 }); 277 });
273 }, 278 },
274 sendToEnd () { 279 sendToEnd() {
275 let that = this 280 let that = this
276 const h = this.$createElement; 281 const h = this.$createElement;
277 this.$msgbox({ 282 this.$msgbox({
...@@ -291,7 +296,12 @@ export default { ...@@ -291,7 +296,12 @@ export default {
291 instance.confirmButtonLoading = false; 296 instance.confirmButtonLoading = false;
292 that.$message.success("转件成功"); 297 that.$message.success("转件成功");
293 localStorage.setItem('transfer', true) 298 localStorage.setItem('transfer', true)
294 window.opener.location.reload(); //刷新父窗口 299 // window.opener.location.reload(); //刷新父窗口
300 if (window.opener && window.opener.getBpageList) {
301 window.opener.getBpageList();
302 } else {
303 window.opener.frames[0].getBpageList();
304 }
295 window.close(); 305 window.close();
296 that.$emit("input", false); 306 that.$emit("input", false);
297 } else { 307 } else {
...@@ -312,7 +322,7 @@ export default { ...@@ -312,7 +322,7 @@ export default {
312 }) 322 })
313 }, 323 },
314 //批量操作 324 //批量操作
315 handleBatchDel () { 325 handleBatchDel() {
316 let that = this; 326 let that = this;
317 this.$popup("批量删除", "workflow/components/batchDel", { 327 this.$popup("批量删除", "workflow/components/batchDel", {
318 width: "50%", 328 width: "50%",
...@@ -327,7 +337,7 @@ export default { ...@@ -327,7 +337,7 @@ export default {
327 } 337 }
328 }) 338 })
329 }, 339 },
330 handleChange (file) { 340 handleChange(file) {
331 var formdata = new FormData(); 341 var formdata = new FormData();
332 formdata.append("file", file.raw); 342 formdata.append("file", file.raw);
333 formdata.append("bsmSldy", this.currentSelectProps.bsmSldy); 343 formdata.append("bsmSldy", this.currentSelectProps.bsmSldy);
...@@ -341,7 +351,7 @@ export default { ...@@ -341,7 +351,7 @@ export default {
341 }) 351 })
342 }, 352 },
343 // 上传 353 // 上传
344 beforeUpload (file) { 354 beforeUpload(file) {
345 return true; 355 return true;
346 }, 356 },
347 } 357 }
......
...@@ -4,14 +4,22 @@ ...@@ -4,14 +4,22 @@
4 <div class="topButton"> 4 <div class="topButton">
5 <!-- 左侧业务功能按钮 --> 5 <!-- 左侧业务功能按钮 -->
6 <ul> 6 <ul>
7 <li @click="operation(item)" v-for="(item, index) in leftButtonList" :key="index"> 7 <li
8 @click="operation(item)"
9 v-for="(item, index) in leftButtonList"
10 :key="index"
11 >
8 <svg-icon class="icon" :icon-class="item.icon" /> 12 <svg-icon class="icon" :icon-class="item.icon" />
9 <span class="iconName">{{ item.name }}</span> 13 <span class="iconName">{{ item.name }}</span>
10 </li> 14 </li>
11 </ul> 15 </ul>
12 <!-- 右侧流程按钮 --> 16 <!-- 右侧流程按钮 -->
13 <ul> 17 <ul>
14 <li @click="operation(item)" v-for="(item, index) in rightButtonList" :key="index"> 18 <li
19 @click="operation(item)"
20 v-for="(item, index) in rightButtonList"
21 :key="index"
22 >
15 <svg-icon class="icon" :icon-class="item.icon" /> 23 <svg-icon class="icon" :icon-class="item.icon" />
16 <span class="iconName">{{ item.name }}</span> 24 <span class="iconName">{{ item.name }}</span>
17 </li> 25 </li>
...@@ -22,7 +30,12 @@ ...@@ -22,7 +30,12 @@
22 <div class="containerFrame"> 30 <div class="containerFrame">
23 <!-- 左侧菜单栏 --> 31 <!-- 左侧菜单栏 -->
24 <div class="leftmenu" :class="{ 'animation-map-drawer': isShowdrawer }"> 32 <div class="leftmenu" :class="{ 'animation-map-drawer': isShowdrawer }">
25 <el-menu :default-active="activeIndex" @select="batchUnitClick" class="title-batch" v-if="showBatch"> 33 <el-menu
34 :default-active="activeIndex"
35 @select="batchUnitClick"
36 class="title-batch"
37 v-if="showBatch"
38 >
26 <el-menu-item index="-1" key="-1" class="menus"> 39 <el-menu-item index="-1" key="-1" class="menus">
27 <div>{{ batchButtonName }}</div> 40 <div>{{ batchButtonName }}</div>
28 </el-menu-item> 41 </el-menu-item>
...@@ -30,28 +43,50 @@ ...@@ -30,28 +43,50 @@
30 <div v-if="this.isShowdrawer"> 43 <div v-if="this.isShowdrawer">
31 <div class="title"> 44 <div class="title">
32 申请单元列表({{ unitData.length }}) 45 申请单元列表({{ unitData.length }})
33 <el-button type="text" class="batchDel" @click="handleBatchDel" v-if="unitData.length > 1">批量删除</el-button> 46 <el-button
47 type="text"
48 class="batchDel"
49 @click="handleBatchDel"
50 v-if="unitData.length > 1"
51 >批量删除</el-button
52 >
34 </div> 53 </div>
35 <el-menu :default-active="activeIndex" @select="unitClick"> 54 <el-menu :default-active="activeIndex" @select="unitClick">
36 <el-menu-item v-for="(item, index) in unitData" :index="index.toString()" :key="index"> 55 <el-menu-item
56 v-for="(item, index) in unitData"
57 :index="index.toString()"
58 :key="index"
59 >
37 <div> 60 <div>
38 <p>{{ item.bdcdyh }}</p> 61 <p>{{ item.bdcdyh }}</p>
39 <p class="title-detail">{{ item.zl }}</p> 62 <p class="title-detail">{{ item.zl }}</p>
40 </div> 63 </div>
41 <i class="el-icon-delete" v-if="unitData.length > 1" @click.stop="handleDel(item)"></i> 64 <i
65 class="el-icon-delete"
66 v-if="unitData.length > 1"
67 @click.stop="handleDel(item)"
68 ></i>
42 </el-menu-item> 69 </el-menu-item>
43 </el-menu> 70 </el-menu>
44 </div> 71 </div>
45 <div class="map-drawer-click map-drawer" v-if="!isShowdrawer" @click=" 72 <div
46 () => { 73 class="map-drawer-click map-drawer"
47 this.isShowdrawer = !this.isShowdrawer; 74 v-if="!isShowdrawer"
48 } 75 @click="
49 "></div> 76 () => {
50 <div class="map-drawer-expand map-drawer" v-else @click=" 77 this.isShowdrawer = !this.isShowdrawer;
51 () => { 78 }
52 this.isShowdrawer = !this.isShowdrawer; 79 "
53 } 80 ></div>
54 "></div> 81 <div
82 class="map-drawer-expand map-drawer"
83 v-else
84 @click="
85 () => {
86 this.isShowdrawer = !this.isShowdrawer;
87 }
88 "
89 ></div>
55 </div> 90 </div>
56 <div class="leftCon"> 91 <div class="leftCon">
57 <!-- 分屏左侧预览 --> 92 <!-- 分屏左侧预览 -->
...@@ -61,45 +96,78 @@ ...@@ -61,45 +96,78 @@
61 <!-- 表单内容区域 --> 96 <!-- 表单内容区域 -->
62 <div class="rightContainer"> 97 <div class="rightContainer">
63 <el-tabs v-model="tabName" :before-leave="beforeLeave"> 98 <el-tabs v-model="tabName" :before-leave="beforeLeave">
64 <el-tab-pane :label="item.name" :name="item.value" v-for="item in tabList" :key="item.value"> 99 <el-tab-pane
100 :label="item.name"
101 :name="item.value"
102 v-for="item in tabList"
103 :key="item.value"
104 >
65 </el-tab-pane> 105 </el-tab-pane>
66 </el-tabs> 106 </el-tabs>
67 <component :key="fresh" :is="componentTag" v-bind="currentSelectProps" /> 107 <component
108 :key="fresh"
109 :is="componentTag"
110 v-bind="currentSelectProps"
111 />
68 </div> 112 </div>
69 </div> 113 </div>
70 </div> 114 </div>
71 <!-- 打印模板需要此模块 --> 115 <!-- 打印模板需要此模块 -->
72 <object id="LODOP_OB" classid="clsid:2105C259-1E0C-4534-8141-A753534CB4CA" v-show="false"> 116 <object
73 <embed id="LODOP_EM" type="application/x-print-lodop" width=820 height=450 pluginspage="install_lodop32.exe" /> 117 id="LODOP_OB"
118 classid="clsid:2105C259-1E0C-4534-8141-A753534CB4CA"
119 v-show="false"
120 >
121 <embed
122 id="LODOP_EM"
123 type="application/x-print-lodop"
124 width="820"
125 height="450"
126 pluginspage="install_lodop32.exe"
127 />
74 </object> 128 </object>
75 <el-upload class="fileUpdate" action="" :show-file-list="false" multiple :auto-upload="false" 129 <el-upload
76 :on-change="handleChange" :before-upload="beforeUpload"> 130 class="fileUpdate"
77 <el-button id="cldr" icon="el-icon-upload" type="primary" v-show="false">上传</el-button> 131 action=""
132 :show-file-list="false"
133 multiple
134 :auto-upload="false"
135 :on-change="handleChange"
136 :before-upload="beforeUpload"
137 >
138 <el-button id="cldr" icon="el-icon-upload" type="primary" v-show="false"
139 >上传</el-button
140 >
78 </el-upload> 141 </el-upload>
79 <selectBdc v-model="isDialog" :djywbm="$route.query.sqywbm" :isJump="true" @updateDialog="updateDialog" /> 142 <selectBdc
143 v-model="isDialog"
144 :djywbm="$route.query.sqywbm"
145 :isJump="true"
146 @updateDialog="updateDialog"
147 />
80 </div> 148 </div>
81 </template> 149 </template>
82 <style scoped lang='scss'> 150 <style scoped lang="scss">
83 @import "~@/styles/mixin.scss"; 151 @import "~@/styles/mixin.scss";
84 @import "./workFrame.scss"; 152 @import "./workFrame.scss";
85 </style> 153 </style>
86 <script> 154 <script>
87 import WorkFlow from "./mixin/index" 155 import WorkFlow from "./mixin/index";
88 import publicFlow from "./mixin/public.js" 156 import publicFlow from "./mixin/public.js";
89 import { getStepFormInfo } from "@/api/fqsq.js"; 157 import { getStepFormInfo } from "@/api/fqsq.js";
90 import { getForm } from './flowform' 158 import { getForm } from "./flowform";
91 import NoticeBar from '@/components/NoticeBar/index' 159 import NoticeBar from "@/components/NoticeBar/index";
92 import { deleteFlow, unClaimTask } from "@/api/ywbl.js"; 160 import { deleteFlow, unClaimTask } from "@/api/ywbl.js";
93 import ProcessViewer from './components/processViewer.vue' 161 import ProcessViewer from "./components/processViewer.vue";
94 import selectBdc from "@/views/ywbl/ywsq/selectBdc.vue"; 162 import selectBdc from "@/views/ywbl/ywsq/selectBdc.vue";
95 export default { 163 export default {
96 components: { 164 components: {
97 selectBdc, 165 selectBdc,
98 NoticeBar, 166 NoticeBar,
99 ProcessViewer 167 ProcessViewer,
100 }, 168 },
101 mixins: [WorkFlow, publicFlow], 169 mixins: [WorkFlow, publicFlow],
102 data () { 170 data() {
103 return { 171 return {
104 isDialog: false, 172 isDialog: false,
105 // 折叠 173 // 折叠
...@@ -131,42 +199,45 @@ export default { ...@@ -131,42 +199,45 @@ export default {
131 //批量操作 199 //批量操作
132 showBatch: false, 200 showBatch: false,
133 //批量操作按钮名称 201 //批量操作按钮名称
134 batchButtonName: '', 202 batchButtonName: "",
135 } 203 };
136 }, 204 },
137 mounted () { 205 mounted() {
138 //添加页面监听事件 206 //添加页面监听事件
139 window.addEventListener('beforeunload', e => this.beforeunloadHandler(e)) 207 window.addEventListener("beforeunload", (e) => this.beforeunloadHandler(e));
140 window.addEventListener('unload', e => this.unloadHandler(e)) 208 window.addEventListener("unload", (e) => this.unloadHandler(e));
141 }, 209 },
142 destroyed () { 210
143 window.removeEventListener('beforeunload', e => this.beforeunloadHandler(e)) 211 destroyed() {
144 window.removeEventListener('unload', e => this.unloadHandler(e)) 212 window.removeEventListener("beforeunload", (e) =>
213 this.beforeunloadHandler(e)
214 );
215 window.removeEventListener("unload", (e) => this.unloadHandler(e));
145 }, 216 },
146 methods: { 217 methods: {
147 beforeunloadHandler () { 218 beforeunloadHandler() {
148 this._beforeUnload_time = new Date().getTime() 219 this._beforeUnload_time = new Date().getTime();
149 }, 220 },
150 unloadHandler (e) { 221 unloadHandler(e) {
151 this._gap_time = new Date().getTime() - this._beforeUnload_time 222 this._gap_time = new Date().getTime() - this._beforeUnload_time;
152 //判断是窗口关闭还是刷新 223 //判断是窗口关闭还是刷新
153 if (this._gap_time <= 10) { 224 if (this._gap_time <= 10) {
154 //取消认领 225 //取消认领
155 unClaimTask(this.bsmSlsq, this.bestepid) 226 unClaimTask(this.bsmSlsq, this.bestepid);
156 } 227 }
157 }, 228 },
158 changeLoadIndex () { 229 changeLoadIndex() {
159 this.loadIndex++ 230 this.loadIndex++;
160 }, 231 },
161 closeDialog () { 232 closeDialog() {
162 this.myValue = false 233 this.myValue = false;
163 }, 234 },
164 // 更新列表 235 // 更新列表
165 updateDialog () { 236 updateDialog() {
166 this.loadBdcdylist(); 237 this.loadBdcdylist();
167 }, 238 },
168 // 删除左侧列表 239 // 删除左侧列表
169 handleDel (item) { 240 handleDel(item) {
170 this.$confirm("确定要删除吗, 是否继续?", "提示", { 241 this.$confirm("确定要删除吗, 是否继续?", "提示", {
171 confirmButtonText: "确定", 242 confirmButtonText: "确定",
172 cancelButtonText: "取消", 243 cancelButtonText: "取消",
...@@ -193,7 +264,7 @@ export default { ...@@ -193,7 +264,7 @@ export default {
193 }); 264 });
194 }, 265 },
195 //申请单元点击事件 266 //申请单元点击事件
196 stepForm (index) { 267 stepForm(index) {
197 getStepFormInfo(this.currentSelectProps).then((res) => { 268 getStepFormInfo(this.currentSelectProps).then((res) => {
198 if (res.code === 200) { 269 if (res.code === 200) {
199 this.fresh++; 270 this.fresh++;
...@@ -201,9 +272,9 @@ export default { ...@@ -201,9 +272,9 @@ export default {
201 this.tabList = res.result; 272 this.tabList = res.result;
202 //默认加载第一个表单信息 273 //默认加载第一个表单信息
203 this.tabName = res.result[0].value; 274 this.tabName = res.result[0].value;
204 //批量操作无分屏按钮 275 //批量操作无分屏按钮
205 if (index != null) { 276 if (index != null) {
206 //处理分屏材料信息 277 //处理分屏材料信息
207 let that = this; 278 let that = this;
208 this.tabList.forEach(function (item, index) { 279 this.tabList.forEach(function (item, index) {
209 if (item.value == "clxx") { 280 if (item.value == "clxx") {
...@@ -211,24 +282,24 @@ export default { ...@@ -211,24 +282,24 @@ export default {
211 that.clxxForm = getForm(item.value, that.$route.query.sqywbm); 282 that.clxxForm = getForm(item.value, that.$route.query.sqywbm);
212 that.clxxTab = item; 283 that.clxxTab = item;
213 } 284 }
214 }) 285 });
215 } 286 }
216 } 287 }
217 }) 288 });
218 }, 289 },
219 //申请单元点击事件 290 //申请单元点击事件
220 unitClick (index) { 291 unitClick(index) {
221 this.currentSelectProps = this.unitData[index]; 292 this.currentSelectProps = this.unitData[index];
222 this.currentSelectProps.batchOperation = false; 293 this.currentSelectProps.batchOperation = false;
223 this.activeIndex = index.toString(); 294 this.activeIndex = index.toString();
224 this.stepForm(index); 295 this.stepForm(index);
225 }, 296 },
226 //批量按钮点击事件 297 //批量按钮点击事件
227 batchUnitClick () { 298 batchUnitClick() {
228 this.currentSelectProps.batchOperation = true; 299 this.currentSelectProps.batchOperation = true;
229 this.activeIndex = "-1"; 300 this.activeIndex = "-1";
230 this.stepForm(); 301 this.stepForm();
231 } 302 },
232 } 303 },
233 } 304 };
234 </script> 305 </script>
......
...@@ -4,14 +4,22 @@ ...@@ -4,14 +4,22 @@
4 <div class="topButton"> 4 <div class="topButton">
5 <!-- 左侧业务功能按钮 --> 5 <!-- 左侧业务功能按钮 -->
6 <ul> 6 <ul>
7 <li @click="operation(item)" v-for="(item, index) in leftButtonList" :key="index"> 7 <li
8 @click="operation(item)"
9 v-for="(item, index) in leftButtonList"
10 :key="index"
11 >
8 <svg-icon :icon-class="item.icon" /> 12 <svg-icon :icon-class="item.icon" />
9 <span class="iconName">{{ item.name }}</span> 13 <span class="iconName">{{ item.name }}</span>
10 </li> 14 </li>
11 </ul> 15 </ul>
12 <!-- 右侧流程按钮 --> 16 <!-- 右侧流程按钮 -->
13 <ul> 17 <ul>
14 <li @click="operation(item)" v-for="(item, index) in rightButtonList" :key="index"> 18 <li
19 @click="operation(item)"
20 v-for="(item, index) in rightButtonList"
21 :key="index"
22 >
15 <svg-icon class="icon" :icon-class="item.icon" /> 23 <svg-icon class="icon" :icon-class="item.icon" />
16 <span class="iconName">{{ item.name }}</span> 24 <span class="iconName">{{ item.name }}</span>
17 </li> 25 </li>
...@@ -25,7 +33,11 @@ ...@@ -25,7 +33,11 @@
25 <div v-if="this.isShowdrawer"> 33 <div v-if="this.isShowdrawer">
26 <div class="title">申请单元列表({{ unitData.length }})</div> 34 <div class="title">申请单元列表({{ unitData.length }})</div>
27 <el-menu :default-active="activeIndex" @select="unitClick"> 35 <el-menu :default-active="activeIndex" @select="unitClick">
28 <el-menu-item v-for="(item, index) in unitData" :index="index.toString()" :key="index"> 36 <el-menu-item
37 v-for="(item, index) in unitData"
38 :index="index.toString()"
39 :key="index"
40 >
29 <div> 41 <div>
30 <p>{{ item.bdcdyh }}</p> 42 <p>{{ item.bdcdyh }}</p>
31 <p class="title-detail">{{ item.zl }}</p> 43 <p class="title-detail">{{ item.zl }}</p>
...@@ -33,16 +45,24 @@ ...@@ -33,16 +45,24 @@
33 </el-menu-item> 45 </el-menu-item>
34 </el-menu> 46 </el-menu>
35 </div> 47 </div>
36 <div class="map-drawer-click map-drawer" v-if="!isShowdrawer" @click=" 48 <div
37 () => { 49 class="map-drawer-click map-drawer"
38 this.isShowdrawer = !this.isShowdrawer; 50 v-if="!isShowdrawer"
39 } 51 @click="
40 "></div> 52 () => {
41 <div class="map-drawer-expand map-drawer" v-else @click=" 53 this.isShowdrawer = !this.isShowdrawer;
42 () => { 54 }
43 this.isShowdrawer = !this.isShowdrawer; 55 "
44 } 56 ></div>
45 "></div> 57 <div
58 class="map-drawer-expand map-drawer"
59 v-else
60 @click="
61 () => {
62 this.isShowdrawer = !this.isShowdrawer;
63 }
64 "
65 ></div>
46 </div> 66 </div>
47 <div class="leftCon"> 67 <div class="leftCon">
48 <!-- 分屏左侧预览 --> 68 <!-- 分屏左侧预览 -->
...@@ -52,42 +72,47 @@ ...@@ -52,42 +72,47 @@
52 <!-- 表单内容区域 --> 72 <!-- 表单内容区域 -->
53 <div class="rightContainer"> 73 <div class="rightContainer">
54 <el-tabs v-model="tabName" :before-leave="beforeLeave"> 74 <el-tabs v-model="tabName" :before-leave="beforeLeave">
55 <el-tab-pane :label="item.name" :name="item.value" v-for="(item, index) in tabList" :key="index"> 75 <el-tab-pane
76 :label="item.name"
77 :name="item.value"
78 v-for="(item, index) in tabList"
79 :key="index"
80 >
56 </el-tab-pane> 81 </el-tab-pane>
57 </el-tabs> 82 </el-tabs>
58 <component :key="fresh" :is="componentTag" v-bind="currentSelectProps" /> 83 <component
84 :key="fresh"
85 :is="componentTag"
86 v-bind="currentSelectProps"
87 />
59 </div> 88 </div>
60 </div> 89 </div>
61 </div> 90 </div>
62 </div> 91 </div>
63 </template> 92 </template>
64 <style scoped lang='scss'> 93 <style scoped lang="scss">
65 @import "~@/styles/mixin.scss"; 94 @import "~@/styles/mixin.scss";
66 @import "./workFrame.scss"; 95 @import "./workFrame.scss";
67 </style> 96 </style>
68 <script> 97 <script>
69 import { 98 import { leftMenu, stepExpandInfo, getStepFormInfo } from "@/api/fqsq.js";
70 leftMenu, 99 import publicFlow from "./mixin/public.js";
71 stepExpandInfo,
72 getStepFormInfo
73 } from "@/api/fqsq.js"
74 import publicFlow from "./mixin/public.js"
75 import { popupDialog } from "@/utils/popup.js"; 100 import { popupDialog } from "@/utils/popup.js";
76 import NoticeBar from '@/components/NoticeBar/index' 101 import NoticeBar from "@/components/NoticeBar/index";
77 import { getWorkFlowImage } from "@/api/workflow/jsydsyqFlow.js" 102 import { getWorkFlowImage } from "@/api/workflow/jsydsyqFlow.js";
78 export default { 103 export default {
79 mixins: [publicFlow], 104 mixins: [publicFlow],
80 components: { 105 components: {
81 NoticeBar 106 NoticeBar,
82 }, 107 },
83 data () { 108 data() {
84 return { 109 return {
85 // 流程图 110 // 流程图
86 imgSrc: '', 111 imgSrc: "",
87 // 折叠 112 // 折叠
88 isShowdrawer: true, 113 isShowdrawer: true,
89 // 默认选中 114 // 默认选中
90 activeIndex: '0', 115 activeIndex: "0",
91 //受理申请标识码 116 //受理申请标识码
92 bsmSlsq: this.$route.query.bsmSlsq, 117 bsmSlsq: this.$route.query.bsmSlsq,
93 //当前流程所在环节 118 //当前流程所在环节
...@@ -116,15 +141,16 @@ export default { ...@@ -116,15 +141,16 @@ export default {
116 clxxIndex: "", 141 clxxIndex: "",
117 //材料信息选项卡对象 142 //材料信息选项卡对象
118 clxxTab: {}, 143 clxxTab: {},
119 } 144 };
120 }, 145 },
121 mounted () { 146 mounted() {
122 this.loadBdcdylist(); 147 this.loadBdcdylist();
123 this.flowInitParam(); 148 this.flowInitParam();
124 }, 149 },
150
125 methods: { 151 methods: {
126 //加载流程初始参数 152 //加载流程初始参数
127 flowInitParam () { 153 flowInitParam() {
128 var formdata = new FormData(); 154 var formdata = new FormData();
129 formdata.append("bsmSlsq", this.bsmSlsq); 155 formdata.append("bsmSlsq", this.bsmSlsq);
130 formdata.append("bestepid", this.bestepid); 156 formdata.append("bestepid", this.bestepid);
...@@ -134,34 +160,36 @@ export default { ...@@ -134,34 +160,36 @@ export default {
134 this.leftButtonList = res.result.button; 160 this.leftButtonList = res.result.button;
135 this.rightButtonList = res.result.operation; 161 this.rightButtonList = res.result.operation;
136 } 162 }
137 }) 163 });
138 }, 164 },
139 //流程环节操作按钮 165 //流程环节操作按钮
140 operation (item) { 166 operation(item) {
141 //按钮 B1:流程图 B2:材料分屏 B3:材料导入 B4:登记簿 B5:证书预览 B6:打印申请书 167 //按钮 B1:流程图 B2:材料分屏 B3:材料导入 B4:登记簿 B5:证书预览 B6:打印申请书
142 //操作按钮 登簿:record 转件:transfer 退回:back 退出:signout 168 //操作按钮 登簿:record 转件:transfer 退回:back 退出:signout
143 switch (item.value) { 169 switch (item.value) {
144 case "B1": 170 case "B1":
145 getWorkFlowImage(this.bsmSlsq, this.$route.query.bestepid).then(res => { 171 getWorkFlowImage(this.bsmSlsq, this.$route.query.bestepid).then(
146 let { result } = res 172 (res) => {
147 popupDialog("流程图", "workflow/components/processViewer", { 173 let { result } = res;
148 xml: result.xml, 174 popupDialog("流程图", "workflow/components/processViewer", {
149 finishedInfo: { 175 xml: result.xml,
150 finishedTaskSet: result.finishedTaskSet, 176 finishedInfo: {
151 unfinishedTaskSet: result.unfinishedTaskSet, 177 finishedTaskSet: result.finishedTaskSet,
152 rejectedTaskSet: result.rejectedTaskSet, 178 unfinishedTaskSet: result.unfinishedTaskSet,
153 finishedSequenceFlowSet: result.finishedSequenceFlowSet 179 rejectedTaskSet: result.rejectedTaskSet,
154 }, 180 finishedSequenceFlowSet: result.finishedSequenceFlowSet,
155 allCommentList: result.historyTaskList 181 },
156 }) 182 allCommentList: result.historyTaskList,
157 }) 183 });
184 }
185 );
158 break; 186 break;
159 case "B5": 187 case "B5":
160 this.zsylFlag = true; 188 this.zsylFlag = true;
161 break; 189 break;
162 case "B2": //材料分屏按钮 190 case "B2": //材料分屏按钮
163 this.splitScreen = this.splitScreen ? false : true; 191 this.splitScreen = this.splitScreen ? false : true;
164 this.$store.dispatch('app/settScreen', this.splitScreen) 192 this.$store.dispatch("app/settScreen", this.splitScreen);
165 if (this.splitScreen) { 193 if (this.splitScreen) {
166 //如果当前选项卡为材料信息内容,递减到上一个选项卡内容 194 //如果当前选项卡为材料信息内容,递减到上一个选项卡内容
167 if (this.tabName == this.clxxTab.value) { 195 if (this.tabName == this.clxxTab.value) {
...@@ -179,7 +207,7 @@ export default { ...@@ -179,7 +207,7 @@ export default {
179 } 207 }
180 }, 208 },
181 //读取申请单元信息 209 //读取申请单元信息
182 loadBdcdylist () { 210 loadBdcdylist() {
183 var formdata = new FormData(); 211 var formdata = new FormData();
184 formdata.append("bsmSlsq", this.bsmSlsq); 212 formdata.append("bsmSlsq", this.bsmSlsq);
185 formdata.append("bestepid", this.bestepid); 213 formdata.append("bestepid", this.bestepid);
...@@ -189,12 +217,12 @@ export default { ...@@ -189,12 +217,12 @@ export default {
189 this.currentSelectProps = res.result[0]; 217 this.currentSelectProps = res.result[0];
190 this.unitClick(0); 218 this.unitClick(0);
191 } 219 }
192 }) 220 });
193 }, 221 },
194 //申请单元点击事件 222 //申请单元点击事件
195 unitClick (index) { 223 unitClick(index) {
196 this.currentSelectProps = this.unitData[index]; 224 this.currentSelectProps = this.unitData[index];
197 this.currentSelectProps.type = 'ONLY_READ'; 225 this.currentSelectProps.type = "ONLY_READ";
198 getStepFormInfo(this.currentSelectProps).then((res) => { 226 getStepFormInfo(this.currentSelectProps).then((res) => {
199 if (res.code === 200) { 227 if (res.code === 200) {
200 this.fresh++; 228 this.fresh++;
...@@ -203,8 +231,8 @@ export default { ...@@ -203,8 +231,8 @@ export default {
203 //默认加载第一个表单信息 231 //默认加载第一个表单信息
204 this.tabName = res.result[0].value; 232 this.tabName = res.result[0].value;
205 } 233 }
206 })
207 }
208 }
209 }
210 </script>
...\ No newline at end of file ...\ No newline at end of file
234 });
235 },
236 },
237 };
238 </script>
......