383a07c7 by renchao@pashanhoo.com

style:申请查询

1 parent 904af2b4
1 <!-- 1 <!--
2 * @Description: workFrame左侧菜单列表-普通 2 * @Description: workFrame左侧菜单列表-普通
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-05-25 10:42:50 4 * @LastEditTime: 2023-07-17 16:16:13
5 --> 5 -->
6 <template> 6 <template>
7 <div class="leftmenu" :class="{ 'animation-map-drawer': isShowdrawer }"> 7 <div class="leftmenu" :class="{ 'animation-map-drawer': isShowdrawer }">
8 <div v-if="this.isShowdrawer"> 8 <div v-if="this.isShowdrawer">
9 <el-menu 9 <el-menu
10 @select="djbClick" 10 @select="djbClick"
11 class="title-batch" 11 class="title-batch">
12 >
13 <el-menu-item index="-1" key="-1" class="menus"> 12 <el-menu-item index="-1" key="-1" class="menus">
14 <div>登记簿</div> 13 <div>登记簿</div>
15 </el-menu-item> 14 </el-menu-item>
...@@ -17,8 +16,7 @@ ...@@ -17,8 +16,7 @@
17 <div class="blxx"> 16 <div class="blxx">
18 <el-menu 17 <el-menu
19 @select="blxxClick" 18 @select="blxxClick"
20 class="title-batch" 19 class="title-batch">
21 >
22 <el-menu-item index="-1" key="-1" class="menus"> 20 <el-menu-item index="-1" key="-1" class="menus">
23 <div>补录信息</div> 21 <div>补录信息</div>
24 </el-menu-item> 22 </el-menu-item>
...@@ -27,11 +25,10 @@ ...@@ -27,11 +25,10 @@
27 <el-menu-item 25 <el-menu-item
28 v-for="(item, index) in supplementarylist" 26 v-for="(item, index) in supplementarylist"
29 :index="index.toString()" 27 :index="index.toString()"
30 :key="index" 28 :key="index">
31 >
32 <div> 29 <div>
33 <p v-if="item.operate=='D'">{{ item.qllxmc }} <span class="tpcolor">(删除)</span></p> 30 <p v-if="item.operate=='D'">{{ item.qllxmc }} <span class="tpcolor">(删除)</span></p>
34 <p v-else >{{ item.qllxmc }} <span class="tpcolor">({{ item.operate=="U"?"编辑":"新增" }})</span></p> 31 <p v-else>{{ item.qllxmc }} <span class="tpcolor">({{ item.operate=="U"?"编辑":"新增" }})</span></p>
35 </div> 32 </div>
36 <i class="el-icon-delete" @click.stop="handleDel(item)" v-if="delel"></i> 33 <i class="el-icon-delete" @click.stop="handleDel(item)" v-if="delel"></i>
37 </el-menu-item> 34 </el-menu-item>
...@@ -45,8 +42,7 @@ ...@@ -45,8 +42,7 @@
45 () => { 42 () => {
46 this.isShowdrawer = !this.isShowdrawer; 43 this.isShowdrawer = !this.isShowdrawer;
47 } 44 }
48 " 45 "></div>
49 ></div>
50 <div 46 <div
51 class="map-drawer-expand map-drawer" 47 class="map-drawer-expand map-drawer"
52 v-else 48 v-else
...@@ -54,246 +50,240 @@ ...@@ -54,246 +50,240 @@
54 () => { 50 () => {
55 this.isShowdrawer = !this.isShowdrawer; 51 this.isShowdrawer = !this.isShowdrawer;
56 } 52 }
57 " 53 "></div>
58 ></div>
59 </div> 54 </div>
60 </template> 55 </template>
61 <script> 56 <script>
62 import { mapGetters } from "vuex"; 57 import { mapGetters } from "vuex";
63 import { leftMenu, deleteSlbdcdy } from "@/api/workFlow.js"; 58 import { leftMenu, deleteSlbdcdy } from "@/api/workFlow.js";
64 import { deleteRepairRecord } from"@/api/djbRepair.js"; 59 import { deleteRepairRecord } from "@/api/djbRepair.js";
65 import { leftMenubl } from"@/api/djbRepair.js"; 60 import { leftMenubl } from "@/api/djbRepair.js";
66 import { getBdcqljqtsx } from "@/api/djbDetail.js"; 61 import { getBdcqljqtsx } from "@/api/djbDetail.js";
67 import { loadTreeData, getNode } from "./djbFrameData.js"; 62 import { loadTreeData, getNode } from "./djbFrameData.js";
68 export default { 63 export default {
69 data() { 64 data () {
70 return { 65 return {
71 supplementarylist: [], 66 supplementarylist: [],
72 //受理申请标识码 67 //受理申请标识码
73 bsmSlsq: this.$route.query.bsmSlsq, 68 bsmSlsq: this.$route.query.bsmSlsq,
74 //当前流程所在环节 69 //当前流程所在环节
75 bestepid: this.$route.query.bestepid, 70 bestepid: this.$route.query.bestepid,
76 //受理申请标识码 71 //受理申请标识码
77 bdcdyid: this.$route.query.bdcdyid, 72 bdcdyid: this.$route.query.bdcdyid,
78 //当前流程所在环节 73 //当前流程所在环节
79 bdcdyh: this.$route.query.bdcdyh, 74 bdcdyh: this.$route.query.bdcdyh,
80 qllx: this.$route.query.qllx, 75 qllx: this.$route.query.qllx,
81 // 默认选中 76 // 默认选中
82 activeIndex: "0", 77 activeIndex: "0",
83 // 折叠 78 // 折叠
84 isShowdrawer: true, 79 isShowdrawer: true,
85 delel: true, 80 delel: true,
86 //批量操作按钮名称 81 //批量操作按钮名称
87 batchButtonName: "", 82 batchButtonName: "",
88 //左侧菜单数据集合 83 //左侧菜单数据集合
89 unitData: [], 84 unitData: [],
90 // 设置表单传递数据 85 // 设置表单传递数据
91 currentSelectProps: {}, 86 currentSelectProps: {},
92 //左侧树形结构数据 87 //左侧树形结构数据
93 treedata: [], 88 treedata: [],
94 defaultNode: "", 89 defaultNode: "",
95 defaultProps: { 90 defaultProps: {
96 value: "id", 91 value: "id",
97 children: "children", 92 children: "children",
98 label: "label", 93 label: "label",
99 }, 94 },
100 showTab: "bdcqldjml", // 选中状态,根据表格中权利类型判断 95 showTab: "bdcqldjml", // 选中状态,根据表格中权利类型判断
101 }; 96 };
102 },
103 mounted() {
104 this.delel=this.$parent.isEdit
105 this.loadBdcdylist();
106 // this.getleftMenubl();
107
108
109 },
110 computed: {
111 // ...mapGetters(["isRefresh"]),
112 },
113 watch: {
114 // isRefresh: {
115 // handler(newVal, oldVal) {
116 // if (newVal) this.loadBdcdylist();
117 // },
118 // immediate: true,
119 // },
120 },
121 methods: {
122 //读取申请单元信息
123 loadBdcdylist() {
124 var formdata = new FormData();
125 if(this.bsmSlsq){
126 formdata.append("bsmSlsq", this.bsmSlsq);
127 formdata.append("bestepid", this.bestepid);
128 leftMenu(formdata).then((res) => {
129 if (res.code === 200 && res.result) {
130 this.currentSelectProps = res.result[0];
131 this.$emit("getCurrentSelectProps", this.currentSelectProps);
132 }
133 });
134 }
135
136
137 },
138 // 获取右侧菜单
139 getleftMenubl(row) {
140
141 leftMenubl(this.bsmSlsq).then((res) => {
142 this.supplementarylist = res.result;
143 if(row==1){
144 this.delel=false
145 }
146 if(row&&row!=1){
147 this.supplementarylist.forEach((item,index) => {
148 if(item.bsmRepair==row.bsmRepair){
149 this.activeIndex=index.toString()
150 // 补录成功后定位到该条记录
151 this.unitClick(index)
152 }
153 })
154 }
155 if(this.supplementarylist.length){
156 this.unitClick(0)
157 }else{
158 this.$emit("getCurrentSelectProps", this.currentSelectProps);
159 }
160 });
161 }, 97 },
162 handleNodeClick(data, node, elem) { 98 mounted () {
163 this.$parent.loadComponent(this.currentSelectProps, data); 99 this.delel = this.$parent.isEdit
164 this.$parent.tabset(); 100 this.loadBdcdylist();
165 }, 101 },
166 //申请单元点击事件 102 computed: {
167 unitClick(index) { 103 // ...mapGetters(["isRefresh"]),
168 this.currentSelectProps = this.supplementarylist[index];
169 this.$emit("getCurrentSelectProps", this.currentSelectProps);
170 }, 104 },
171 //登记簿点击事件 105 watch: {
172 djbClick() { 106 // isRefresh: {
173 this.loadBdcdylist(); 107 // handler(newVal, oldVal) {
108 // if (newVal) this.loadBdcdylist();
109 // },
110 // immediate: true,
111 // },
174 }, 112 },
175 // 删除补录记录 113 methods: {
176 handleDel(row) { 114 //读取申请单元信息
177 this.$confirm("此操作将永久删除该条补录记录, 是否继续?", "提示", { 115 loadBdcdylist () {
178 confirmButtonText: "确定", 116 var formdata = new FormData();
179 cancelButtonText: "取消", 117 if (this.bsmSlsq) {
180 type: "warning", 118 formdata.append("bsmSlsq", this.bsmSlsq);
181 }) 119 formdata.append("bestepid", this.bestepid);
182 .then(() => { 120 leftMenu(formdata).then((res) => {
183 deleteRepairRecord(row.bsmRepair).then((res) => { 121 if (res.code === 200 && res.result) {
184 this.$message({ 122 this.currentSelectProps = res.result[0];
185 type: "success", 123 this.$emit("getCurrentSelectProps", this.currentSelectProps);
186 message: "删除成功!", 124 }
187 }); 125 });
188 this.$nextTick(() => { 126 }
189 this.getleftMenubl(); 127
190 this.blxxClick() 128
191 if(!this.supplementarylist.length){ 129 },
192 getdjblist() 130 // 获取右侧菜单
131 getleftMenubl (row) {
132
133 leftMenubl(this.bsmSlsq).then((res) => {
134 this.supplementarylist = res.result;
135 if (row == 1) {
136 this.delel = false
137 }
138 if (row && row != 1) {
139 this.supplementarylist.forEach((item, index) => {
140 if (item.bsmRepair == row.bsmRepair) {
141 this.activeIndex = index.toString()
142 // 补录成功后定位到该条记录
143 this.unitClick(index)
193 } 144 }
145 })
146 }
147 if (this.supplementarylist.length) {
148 this.unitClick(0)
149 } else {
150 this.$emit("getCurrentSelectProps", this.currentSelectProps);
151 }
152 });
153 },
154 handleNodeClick (data, node, elem) {
155 this.$parent.loadComponent(this.currentSelectProps, data);
156 this.$parent.tabset();
157 },
158 //申请单元点击事件
159 unitClick (index) {
160 this.currentSelectProps = this.supplementarylist[index];
161 this.$emit("getCurrentSelectProps", this.currentSelectProps);
162 },
163 //登记簿点击事件
164 djbClick () {
165 this.loadBdcdylist();
166 },
167 // 删除补录记录
168 handleDel (row) {
169 this.$confirm("此操作将永久删除该条补录记录, 是否继续?", "提示", {
170 confirmButtonText: "确定",
171 cancelButtonText: "取消",
172 type: "warning",
173 })
174 .then(() => {
175 deleteRepairRecord(row.bsmRepair).then((res) => {
176 this.$message({
177 type: "success",
178 message: "删除成功!",
179 });
180 this.$nextTick(() => {
181 this.getleftMenubl();
182 this.blxxClick()
183 if (!this.supplementarylist.length) {
184 getdjblist()
185 }
194 186
187 });
188 });
189 })
190 .catch(() => {
191 this.$message({
192 type: "info",
193 message: "已取消删除",
195 }); 194 });
196 }); 195 });
197 }) 196 },
198 .catch(() => { 197 //补录信息点击事件默认展示第一条补录记录
199 this.$message({ 198 blxxClick () {
200 type: "info", 199 if (this.supplementarylist.length) {
201 message: "已取消删除", 200 this.unitClick(0);
202 }); 201 }
203 });
204 },
205 //补录信息点击事件默认展示第一条补录记录
206 blxxClick() {
207 if(this.supplementarylist.length){
208 this.unitClick(0);
209 }
210 202
203 },
211 }, 204 },
212 }, 205 };
213 };
214 </script> 206 </script>
215 <style scoped lang="scss"> 207 <style scoped lang="scss">
216 @import "~@/styles/mixin.scss"; 208 @import "~@/styles/mixin.scss";
217 @import "../../workFrame.scss"; 209 @import "../../workFrame.scss";
218 .leftmenu ul { 210 .leftmenu ul {
219 height: calc(100vh - 120px); 211 height: calc(100vh - 120px);
220 }
221 /deep/.rollTable {
222 height: calc(100vh - 240px) !important;
223 }
224
225 .content {
226 width: 100%;
227 height: 100%;
228 display: flex;
229
230 .left {
231 width: 256px;
232 height: 704px;
233 background-color: #f5f5f5;
234 color: #333;
235 border: 1px solid rgb(228, 228, 228);
236 } 212 }
237 213 /deep/.rollTable {
238 .right { 214 height: calc(100vh - 240px) !important;
239 width: calc(100% - 256px);
240 height: 704px;
241 // overflow-y: scroll;
242 overflow: auto;
243 background-color: #f5f5f5;
244 border: 1px solid rgb(228, 228, 228);
245 } 215 }
246 }
247 216
248 /deep/ .expanded.el-tree-node__expand-icon, 217 .content {
249 /deep/ .el-tree-node__expand-icon { 218 width: 100%;
250 visibility: hidden; 219 height: 100%;
251 } 220 display: flex;
252 221
253 /deep/ .el-tree-node__content { 222 .left {
254 border: 1px solid rgb(228, 228, 228); 223 width: 256px;
255 height: 45px; 224 height: 704px;
256 } 225 background-color: #f5f5f5;
226 color: #333;
227 border: 1px solid rgb(228, 228, 228);
228 }
257 229
258 /deep/ .el-tree-node:focus > .el-tree-node__content { 230 .right {
259 background-color: #f5f5f5; 231 width: calc(100% - 256px);
260 color: #0079fe; 232 height: 704px;
261 border-right: 4px solid #0079fe; 233 // overflow-y: scroll;
262 } 234 overflow: auto;
235 background-color: #f5f5f5;
236 border: 1px solid rgb(228, 228, 228);
237 }
238 }
263 239
264 /deep/.el-tree-node { 240 /deep/ .expanded.el-tree-node__expand-icon,
265 white-space: pre-wrap; 241 /deep/ .el-tree-node__expand-icon {
266 } 242 visibility: hidden;
243 }
267 244
268 /deep/ .is-current > .el-tree-node__content { 245 /deep/ .el-tree-node__content {
269 background-color: #f5f5f5; 246 border: 1px solid rgb(228, 228, 228);
270 color: #0079fe; 247 height: 45px;
271 border-right: 4px solid #0079fe;
272 }
273 .menus {
274 background-color: #e7f4fe;
275 div{
276 font-size: 16px;
277 font-weight: 600;
278 } 248 }
279 249
280 } 250 /deep/ .el-tree-node:focus > .el-tree-node__content {
281 .blxx { 251 background-color: #f5f5f5;
282 .el-menu-item{ 252 color: #0079fe;
283 display: flex; 253 border-right: 4px solid #0079fe;
284 justify-content: space-between;
285 } 254 }
286 border: #b0d9f8 solid 1px; 255
287 .tpcolor{ 256 /deep/.el-tree-node {
288 color: red; 257 white-space: pre-wrap;
289 line-height: 22px;
290 } 258 }
291 .el-icon-delete{
292 margin-right: 3px;
293 // background-color: saddlebrown;
294 height: 27px;
295 float: left;
296 259
260 /deep/ .is-current > .el-tree-node__content {
261 background-color: #f5f5f5;
262 color: #0079fe;
263 border-right: 4px solid #0079fe;
264 }
265 .menus {
266 background-color: #e7f4fe;
267 div {
268 font-size: 16px;
269 font-weight: 600;
270 }
271 }
272 .blxx {
273 .el-menu-item {
274 display: flex;
275 justify-content: space-between;
276 }
277 border: #b0d9f8 solid 1px;
278 .tpcolor {
279 color: red;
280 line-height: 22px;
281 }
282 .el-icon-delete {
283 margin-right: 3px;
284 // background-color: saddlebrown;
285 height: 27px;
286 float: left;
287 }
297 } 288 }
298 }
299 </style> 289 </style>
......
1 /* 1 /*
2 * @Description:workFramezu.vue组件的方法 头部按钮弹框方法 2 * @Description:workFramezu.vue组件的方法 头部按钮弹框方法
3 * @Autor: miaofang 3 * @Autor: miaofang
4 * @LastEditTime: 2023-07-17 14:20:28 4 * @LastEditTime: 2023-07-17 16:14:23
5 */ 5 */
6 import { getPrintTemplateByCode } from "@/api/print"; 6 import { getPrintTemplateByCode } from "@/api/print";
7 import { getQllxByBdcdyid } from "@/api/djbDetail.js"; 7 import { getQllxByBdcdyid } from "@/api/djbDetail.js";
...@@ -18,7 +18,6 @@ import { ...@@ -18,7 +18,6 @@ import {
18 unClaimTask 18 unClaimTask
19 } from "@/api/workFlow.js"; 19 } from "@/api/workFlow.js";
20 import { mapGetters } from 'vuex' 20 import { mapGetters } from 'vuex'
21 import { log } from "bpmn-js-token-simulation";
22 export default { 21 export default {
23 data () { 22 data () {
24 return { 23 return {
......
...@@ -12,8 +12,7 @@ ...@@ -12,8 +12,7 @@
12 <li 12 <li
13 @click="operation(item)" 13 @click="operation(item)"
14 v-for="(item, index) in leftButtonList" 14 v-for="(item, index) in leftButtonList"
15 :key="index" 15 :key="index">
16 >
17 <svg-icon class="icon" :icon-class="item.icon" /> 16 <svg-icon class="icon" :icon-class="item.icon" />
18 <span class="iconName">{{ item.name }}</span> 17 <span class="iconName">{{ item.name }}</span>
19 </li> 18 </li>
...@@ -22,8 +21,7 @@ ...@@ -22,8 +21,7 @@
22 <li 21 <li
23 @click="operation(item)" 22 @click="operation(item)"
24 v-for="(item, index) in rightButtonList" 23 v-for="(item, index) in rightButtonList"
25 :key="index" 24 :key="index">
26 >
27 <svg-icon class="icon" :icon-class="item.icon" /> 25 <svg-icon class="icon" :icon-class="item.icon" />
28 <span class="iconName">{{ item.name }}</span> 26 <span class="iconName">{{ item.name }}</span>
29 </li> 27 </li>
...@@ -50,15 +48,13 @@ ...@@ -50,15 +48,13 @@
50 :label="item.name" 48 :label="item.name"
51 :name="item.value" 49 :name="item.value"
52 v-for="item in tabList" 50 v-for="item in tabList"
53 :key="item.value" 51 :key="item.value">
54 >
55 </el-tab-pane> 52 </el-tab-pane>
56 </el-tabs> 53 </el-tabs>
57 <component 54 <component
58 :key="fresh" 55 :key="fresh"
59 :is="componentTag" 56 :is="componentTag"
60 v-bind="currentSelectProps" 57 v-bind="currentSelectProps" />
61 />
62 </div> 58 </div>
63 </div> 59 </div>
64 </div> 60 </div>
...@@ -67,184 +63,185 @@ ...@@ -67,184 +63,185 @@
67 </div> 63 </div>
68 </template> 64 </template>
69 <style scoped lang="scss"> 65 <style scoped lang="scss">
70 @import "~@/styles/mixin.scss"; 66 @import "~@/styles/mixin.scss";
71 @import "./workFrame.scss"; 67 @import "./workFrame.scss";
72 </style> 68 </style>
73 <script> 69 <script>
74 import WorkFlow from "./mixin/index"; 70 import WorkFlow from "./mixin/index";
75 import { getForm } from "./flowform"; 71 import { getForm } from "./flowform";
76 import { getBlYbxStepFormInfo } from "@/api/workFlow.js"; 72 import { getBlYbxStepFormInfo } from "@/api/workFlow.js";
77 import NoticeBar from "@/components/NoticeBar/index"; 73 import NoticeBar from "@/components/NoticeBar/index";
78 import ProcessViewer from "./components/processViewer.vue"; 74 import ProcessViewer from "./components/processViewer.vue";
79 // 引入左侧菜单 75 // 引入左侧菜单
80 import { leftMenubl } from "@/api/djbRepair.js"; 76 import { leftMenubl } from "@/api/djbRepair.js";
81 import ordinaryMenu from "./components/leftmenu/ordinaryMenu.vue"; 77 import ordinaryMenu from "./components/leftmenu/ordinaryMenu.vue";
82 import qllxDailog from "./djbBook/components/qllxDailog"; 78 import qllxDailog from "./djbBook/components/qllxDailog";
83 import selectBdc from "@/views/ywbl/ywsq/selectBdc.vue"; 79 import selectBdc from "@/views/ywbl/ywsq/selectBdc.vue";
84 import { loadTreeData, getNode } from "./components/leftmenu/djbFrameData.js"; 80 import { loadTreeData, getNode } from "./components/leftmenu/djbFrameData.js";
85 // 登记簿数据信息 81 // 登记簿数据信息
86 import { addRepairRecord } from "@/api/djbRepair.js"; 82 import { addRepairRecord } from "@/api/djbRepair.js";
87 83
88 import { getBdcqljqtsx } from "@/api/djbDetail.js"; 84 import { getBdcqljqtsx } from "@/api/djbDetail.js";
89 export default { 85 export default {
90 components: { 86 components: {
91 selectBdc, 87 selectBdc,
92 NoticeBar, 88 NoticeBar,
93 ProcessViewer, 89 ProcessViewer,
94 ordinaryMenu, 90 ordinaryMenu,
95 qllxDailog, 91 qllxDailog,
96 },
97 mixins: [WorkFlow],
98 data() {
99 return {
100 bsmSlsq: this.$route.query.bsmSlsq,
101 bestepid: this.$route.query.bestepid,
102 //设置那个表单选中
103 tabName: "",
104 // 弹框显示
105 dialogVisible: true,
106 isEdit:false,
107 //表单集合
108 tabList: [],
109 type: "READ_ONLY",
110 //选择加载哪一个组件
111 componentTag: "",
112 //设置表单传递数据
113 currentSelectProps: {},
114 // 首次拿到的业务信息
115 oneSelectProps: {},
116 //材料信息选择卡索引
117 oneget: true,
118 //页面监听时间
119 _beforeUnload_time: "",
120 treedata: {},
121 bsmRepair:"",
122 tabdata: [],
123 defaultNode: {},
124 ableOperation:false
125 };
126 },
127 mounted() {
128 // this.getleftMenubl()
129 },
130
131 methods: {
132 stepForm(qllx) {
133 this.oneSelectProps.qllx = qllx;
134 if (this.$refs.Menu.supplementarylist.length) {
135 this.oneSelectProps.type = this.type
136 getBlYbxStepFormInfo(this.oneSelectProps).then((res) => {
137 this.$nextTick(function () {
138 this.tabList = res.result;
139 this.tabName = this.tabList[0].value;
140 console.log("是否只读",this.tabList[0].ableOperation);
141 this.ableOperation=this.tabList[0].ableOperation
142 this.getFromRouter(this.tabName);
143 });
144 });
145 }
146 }, 92 },
147 // 获取右侧选项卡 93 mixins: [WorkFlow],
148 getCurrentSelectProps(val) { 94 data () {
149 this.bsmRepair= val.bsmRepair 95 return {
150 if (val.bdcdyid) { 96 bsmSlsq: this.$route.query.bsmSlsq,
151 this.oneSelectProps = val; 97 bestepid: this.$route.query.bestepid,
152 } 98 bsmBusiness: this.$route.query.bsmBusiness,
153 this.currentSelectProps = val; 99 //设置那个表单选中
154 if (this.currentSelectProps.bsmRepair) { 100 tabName: "",
155 this.stepForm(this.currentSelectProps.qllx); 101 // 弹框显示
156 } else if (!this.oneget) { 102 dialogVisible: true,
157 this.getdjblist(); 103 isEdit: false,
158 } 104 //表单集合
159 if (this.oneget) { 105 tabList: [],
160 this.oneget = false; 106 type: "READ_ONLY",
161 this.stepForm(this.currentSelectProps.qllx); 107 //选择加载哪一个组件
162 } 108 componentTag: "",
109 //设置表单传递数据
110 currentSelectProps: {},
111 // 首次拿到的业务信息
112 oneSelectProps: {},
113 //材料信息选择卡索引
114 oneget: true,
115 //页面监听时间
116 _beforeUnload_time: "",
117 treedata: {},
118 bsmRepair: "",
119 tabdata: [],
120 defaultNode: {},
121 ableOperation: false
122 };
123 },
124 mounted () {
125 // this.getleftMenubl()
163 }, 126 },
164 // 获取渲染登记簿列表 127
165 getdjblist() { 128 methods: {
166 getBdcqljqtsx({ 129 stepForm (qllx) {
167 bdcdyid: this.currentSelectProps.bdcdyid, 130 this.oneSelectProps.qllx = qllx;
168 bdcdyh: this.currentSelectProps.bdcdyh, 131 if (this.$refs.Menu.supplementarylist.length) {
169 }).then((res) => { 132 this.oneSelectProps.type = this.type
170 if (res.code === 200) { 133 getBlYbxStepFormInfo(this.oneSelectProps).then((res) => {
171 this.treedata = loadTreeData(res.result, this.bdcdyh); 134 this.$nextTick(function () {
172 this.$nextTick(function () { 135 this.tabList = res.result;
173 this.defaultNode = getNode(this.currentSelectProps.qllx, { 136 this.tabName = this.tabList[0].value;
174 linShi: 0, 137 console.log("是否只读", this.tabList[0].ableOperation);
175 xianShi: 0, 138 this.ableOperation = this.tabList[0].ableOperation
176 liShi: 0, 139 this.getFromRouter(this.tabName);
177 }); 140 });
178 this.tabName = this.defaultNode.id; //data[0].id为默认选中的节点
179 }); 141 });
180 let settree = JSON.parse(JSON.stringify(this.treedata));
181 this.tabdata = [
182 ...settree,
183 ...settree[1].children[0].children[0].children,
184 ];
185 this.tabdata.forEach((item, index, arr) => {
186 arr[index].name = item.label;
187 arr[index].value = item.id;
188 });
189 this.tabList = this.tabdata;
190 } 142 }
191 }); 143 },
192 }, 144 // 获取右侧选项卡
193 //右侧表单选项卡事件 145 getCurrentSelectProps (val) {
194 beforeLeave(activeName) { 146 this.bsmRepair = val.bsmRepair
195 if (activeName && activeName != 0) this.getFromRouter(activeName); 147 if (val.bdcdyid) {
196 }, 148 this.oneSelectProps = val;
197 //切换选项卡内容组件 149 }
198 getFromRouter(tabname) { 150 this.currentSelectProps = val;
199 this.componentTag = getForm(tabname); 151 if (this.currentSelectProps.bsmRepair) {
200 }, 152 this.stepForm(this.currentSelectProps.qllx);
201 closefp() { 153 } else if (!this.oneget) {
202 this.splitScreen = this.splitScreen ? false : true; 154 this.getdjblist();
203 this.$store.dispatch("app/set1tScreen", this.splitScreen); 155 }
204 this.getFromRouter(this.tabList[0].value); 156 if (this.oneget) {
205 this.clxxForm = getForm(this.tabList[1].value); 157 this.oneget = false;
206 }, 158 this.stepForm(this.currentSelectProps.qllx);
207 // 增加补录记录
208 addRepairRecord(row, del) {
209 let from = {
210 bsmQlxx: "",
211 bsmSlsq: this.bsmSlsq,
212 bsmSldy: this.currentSelectProps.bsmSldy,
213 operate: "C",
214 qllx: "",
215 };
216 if (row) {
217 from.bsmQlxx = row.bsmQlxx;
218 if (del) {
219 from.operate = del;
220 } else {
221 from.operate = row.bsmQlxx ? "U" : "C";
222 } 159 }
223 from.qllx = row.qllx; 160 },
224 } 161 // 获取渲染登记簿列表
225 addRepairRecord(from) 162 getdjblist () {
226 .then((res) => { 163 getBdcqljqtsx({
227 if (res.code == "200") { 164 bdcdyid: this.currentSelectProps.bdcdyid,
228 this.$refs.qllxlist.dialogVisible = false; 165 bdcdyh: this.currentSelectProps.bdcdyh,
229 this.$nextTick(() => { 166 }).then((res) => {
230 this.$refs.Menu.getleftMenubl(res.result); 167 if (res.code === 200) {
231 this.$message({ 168 this.treedata = loadTreeData(res.result, this.bdcdyh);
232 type: "success", 169 this.$nextTick(function () {
233 message: "补录成功!", 170 this.defaultNode = getNode(this.currentSelectProps.qllx, {
171 linShi: 0,
172 xianShi: 0,
173 liShi: 0,
234 }); 174 });
175 this.tabName = this.defaultNode.id; //data[0].id为默认选中的节点
235 }); 176 });
236 } else { 177 let settree = JSON.parse(JSON.stringify(this.treedata));
237 this.$alert(res.message, "提示", { 178 this.tabdata = [
238 confirmButtonText: "确定", 179 ...settree,
239 type: "warning", 180 ...settree[1].children[0].children[0].children,
181 ];
182 this.tabdata.forEach((item, index, arr) => {
183 arr[index].name = item.label;
184 arr[index].value = item.id;
240 }); 185 });
186 this.tabList = this.tabdata;
241 } 187 }
242 })
243 .catch((res) => {
244 console.log("错", res);
245 }); 188 });
189 },
190 //右侧表单选项卡事件
191 beforeLeave (activeName) {
192 if (activeName && activeName != 0) this.getFromRouter(activeName);
193 },
194 //切换选项卡内容组件
195 getFromRouter (tabname) {
196 this.componentTag = getForm(tabname);
197 },
198 closefp () {
199 this.splitScreen = this.splitScreen ? false : true;
200 this.$store.dispatch("app/set1tScreen", this.splitScreen);
201 this.getFromRouter(this.tabList[0].value);
202 this.clxxForm = getForm(this.tabList[1].value);
203 },
204 // 增加补录记录
205 addRepairRecord (row, del) {
206 let from = {
207 bsmQlxx: "",
208 bsmSlsq: this.bsmSlsq,
209 bsmSldy: this.currentSelectProps.bsmSldy,
210 operate: "C",
211 qllx: "",
212 };
213 if (row) {
214 from.bsmQlxx = row.bsmQlxx;
215 if (del) {
216 from.operate = del;
217 } else {
218 from.operate = row.bsmQlxx ? "U" : "C";
219 }
220 from.qllx = row.qllx;
221 }
222 addRepairRecord(from)
223 .then((res) => {
224 if (res.code == "200") {
225 this.$refs.qllxlist.dialogVisible = false;
226 this.$nextTick(() => {
227 this.$refs.Menu.getleftMenubl(res.result);
228 this.$message({
229 type: "success",
230 message: "补录成功!",
231 });
232 });
233 } else {
234 this.$alert(res.message, "提示", {
235 confirmButtonText: "确定",
236 type: "warning",
237 });
238 }
239 })
240 .catch((res) => {
241 console.log("错", res);
242 });
243 },
246 }, 244 },
247 }, 245 };
248 };
249 </script> 246 </script>
250 <style scoped lang="scss"></style> 247 <style scoped lang="scss"></style>
......
1 <!-- 1 <!--
2 * @Description: workFrame左侧菜单列表-普通 2 * @Description: workFrame左侧菜单列表-普通
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-05-25 10:42:50 4 * @LastEditTime: 2023-07-17 16:20:37
5 --> 5 -->
6 <template> 6 <template>
7 <div class="leftmenu" :class="{ 'animation-map-drawer': isShowdrawer }"> 7 <div class="leftmenu" :class="{ 'animation-map-drawer': isShowdrawer }">
...@@ -39,157 +39,160 @@ ...@@ -39,157 +39,160 @@
39 </div> 39 </div>
40 </template> 40 </template>
41 <script> 41 <script>
42 import { mapGetters } from 'vuex' 42 import { mapGetters } from 'vuex'
43 import { leftMenu, deleteSlbdcdy } from "@/api/workFlow.js" 43 import { leftMenu, deleteSlbdcdy } from "@/api/workFlow.js"
44 export default { 44 export default {
45 data () { 45 data () {
46 return { 46 return {
47 //受理申请标识码 47 //受理申请标识码
48 bsmSlsq: this.$route.query.bsmSlsq, 48 bsmSlsq: this.$route.query.bsmSlsq,
49 //当前流程所在环节 49 //当前流程所在环节
50 bestepid: this.$route.query.bestepid, 50 bestepid: this.$route.query.bestepid,
51 // 默认选中 51 // 默认选中
52 activeIndex: '0', 52 activeIndex: '0',
53 // 折叠 53 // 折叠
54 isShowdrawer: true, 54 isShowdrawer: true,
55 // 批量操作 55 // 批量操作
56 showBatch: false, 56 showBatch: false,
57 //批量操作按钮名称 57 //批量操作按钮名称
58 batchButtonName: '', 58 batchButtonName: '',
59 //左侧菜单数据集合 59 //左侧菜单数据集合
60 unitData: [], 60 unitData: [],
61 // 设置表单传递数据 61 // 设置表单传递数据
62 currentSelectProps: {} 62 currentSelectProps: {}
63 } 63 }
64 },
65 mounted () {
66 this.loadBdcdylist();
67 },
68 computed: {
69 ...mapGetters(['isRefresh'])
70 },
71 watch: {
72 isRefresh: {
73 handler (newVal, oldVal) {
74 if (newVal) this.loadBdcdylist()
75 },
76 immediate: true
77 }
78 },
79 methods: {
80 //读取申请单元信息
81 loadBdcdylist () {
82 var formdata = new FormData();
83 formdata.append("bsmSlsq", this.bsmSlsq);
84 formdata.append("bestepid", this.bestepid);
85 leftMenu(formdata).then((res) => {
86 if (res.code === 200 && res.result) {
87 this.unitData = res.result;
88 this.currentSelectProps = res.result[0];
89 this.$emit('getCurrentSelectProps', this.currentSelectProps);
90 this.judgeBatchShow();
91 if (this.showBatch) {
92 //满足批量查封/批量抵押按钮出现 即先展示批量表单
93 this.batchUnitClick();
94 } else {
95 //默认选择单元列表第一个
96 this.unitClick(0);
97 }
98 }
99 })
100 }, 64 },
101 //批量按钮判断 65 mounted () {
102 judgeBatchShow () { 66 this.loadBdcdylist();
103 this.showBatch = false; 67 },
104 if (this.unitData.length > 1) { 68 computed: {
105 let qllx = this.$route.query?.sqywbm?.substring(0, 3); 69 ...mapGetters(['isRefresh'])
106 switch (qllx) { 70 },
107 case 'A04': 71 watch: {
108 this.showBatch = true; 72 isRefresh: {
109 this.batchButtonName = '房屋批量操作'; 73 handler (newVal, oldVal) {
110 break; 74 if (newVal) this.loadBdcdylist()
111 case 'B39': 75 },
112 this.showBatch = true; 76 immediate: true
113 this.batchButtonName = '查封批量操作';
114 break;
115 case 'A37':
116 this.showBatch = true;
117 this.batchButtonName = '抵押批量操作';
118 break;
119 case 'B37':
120 this.showBatch = true;
121 this.batchButtonName = '在建工程抵押批量操作';
122 break;
123 }
124 } 77 }
125 }, 78 },
126 /** 79 methods: {
127 * @description: 删除左侧列表 80 //读取申请单元信息
128 * @param {*} item 81 loadBdcdylist () {
129 * @author: renchao 82 var formdata = new FormData();
130 */ 83 formdata.append("bsmSlsq", this.bsmSlsq);
131 handleDel (item) { 84 formdata.append("bestepid", this.bestepid);
132 this.$confirm("确定要删除吗, 是否继续?", "提示", { 85 if (this.$route.query.bsmBusiness) {
133 confirmButtonText: "确定", 86 formdata.append("bsmBusiness", this.$route.query.bsmBusiness);
134 cancelButtonText: "取消", 87 }
135 type: "warning", 88 leftMenu(formdata).then((res) => {
136 }) 89 if (res.code === 200 && res.result) {
137 .then(() => { 90 this.unitData = res.result;
138 var formdata = new FormData(); 91 this.currentSelectProps = res.result[0];
139 formdata.append("bsmSldyList", item.bsmSldy.split(",")); 92 this.$emit('getCurrentSelectProps', this.currentSelectProps);
140 // formdata.append("bsmSlsq", this.bsmSlsq); 93 this.judgeBatchShow();
141 deleteSlbdcdy(formdata).then((res) => { 94 if (this.showBatch) {
142 if (res.code == 200) { 95 //满足批量查封/批量抵押按钮出现 即先展示批量表单
143 this.$message.success("删除成功"); 96 this.batchUnitClick();
144 /**
145 * @description: 更新列表
146 * @author: miaofang
147 */
148 this.loadBdcdylist()
149 // this.$parent.updateDialog();
150 } else { 97 } else {
151 this.$message.error(res.message); 98 //默认选择单元列表第一个
99 this.unitClick(0);
152 } 100 }
153 }); 101 }
154 }) 102 })
155 .catch(() => { 103 },
156 this.$message({ 104 //批量按钮判断
157 type: "info", 105 judgeBatchShow () {
158 message: "已取消删除", 106 this.showBatch = false;
107 if (this.unitData.length > 1) {
108 let qllx = this.$route.query?.sqywbm?.substring(0, 3);
109 switch (qllx) {
110 case 'A04':
111 this.showBatch = true;
112 this.batchButtonName = '房屋批量操作';
113 break;
114 case 'B39':
115 this.showBatch = true;
116 this.batchButtonName = '查封批量操作';
117 break;
118 case 'A37':
119 this.showBatch = true;
120 this.batchButtonName = '抵押批量操作';
121 break;
122 case 'B37':
123 this.showBatch = true;
124 this.batchButtonName = '在建工程抵押批量操作';
125 break;
126 }
127 }
128 },
129 /**
130 * @description: 删除左侧列表
131 * @param {*} item
132 * @author: renchao
133 */
134 handleDel (item) {
135 this.$confirm("确定要删除吗, 是否继续?", "提示", {
136 confirmButtonText: "确定",
137 cancelButtonText: "取消",
138 type: "warning",
139 })
140 .then(() => {
141 var formdata = new FormData();
142 formdata.append("bsmSldyList", item.bsmSldy.split(","));
143 // formdata.append("bsmSlsq", this.bsmSlsq);
144 deleteSlbdcdy(formdata).then((res) => {
145 if (res.code == 200) {
146 this.$message.success("删除成功");
147 /**
148 * @description: 更新列表
149 * @author: miaofang
150 */
151 this.loadBdcdylist()
152 // this.$parent.updateDialog();
153 } else {
154 this.$message.error(res.message);
155 }
156 });
157 })
158 .catch(() => {
159 this.$message({
160 type: "info",
161 message: "已取消删除",
162 });
159 }); 163 });
160 }); 164 },
161 }, 165 //批量按钮点击事件
162 //批量按钮点击事件 166 batchUnitClick () {
163 batchUnitClick () { 167 this.currentSelectProps.batchOperation = true;
164 this.currentSelectProps.batchOperation = true; 168 this.activeIndex = "-1";
165 this.activeIndex = "-1"; 169 this.$parent.stepForm();
166 this.$parent.stepForm();
167 170
168 }, 171 },
169 //批量操作 172 //批量操作
170 handleBatchDel () { 173 handleBatchDel () {
171 this.$popupDialog("批量删除", "workflow/components/batchDel", { 174 this.$popupDialog("批量删除", "workflow/components/batchDel", {
172 bsmSlsq: this.bsmSlsq, 175 bsmSlsq: this.bsmSlsq,
173 dataList: this.unitData, 176 dataList: this.unitData,
174 }, '50%', true) 177 }, '50%', true)
175 }, 178 },
176 //申请单元点击事件 179 //申请单元点击事件
177 unitClick (index) { 180 unitClick (index) {
178 this.currentSelectProps = this.unitData[index]; 181 this.currentSelectProps = this.unitData[index];
179 this.currentSelectProps.batchOperation = false; 182 this.currentSelectProps.batchOperation = false;
180 this.activeIndex = index.toString(); 183 this.activeIndex = index.toString();
181 //选中表单传递数据 184 //选中表单传递数据
182 this.$emit('getCurrentSelectProps', this.currentSelectProps); 185 this.$emit('getCurrentSelectProps', this.currentSelectProps);
183 this.$parent.stepForm(index); 186 this.$parent.stepForm(index);
184 this.$store.dispatch('user/refreshPage', false); 187 this.$store.dispatch('user/refreshPage', false);
188 }
185 } 189 }
186 } 190 }
187 }
188 </script> 191 </script>
189 <style scoped lang='scss'> 192 <style scoped lang='scss'>
190 @import "~@/styles/mixin.scss"; 193 @import "~@/styles/mixin.scss";
191 @import "../../workFrame.scss"; 194 @import "../../workFrame.scss";
192 .leftmenu ul { 195 .leftmenu ul {
193 height: calc(100vh - 120px); 196 height: calc(100vh - 120px);
194 } 197 }
195 </style> 198 </style>
......
1 <!-- 1 <!--
2 * @Description: workFrame左侧菜单列表-分割 2 * @Description: workFrame左侧菜单列表-分割
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-05-25 10:18:02 4 * @LastEditTime: 2023-07-17 16:21:24
5 --> 5 -->
6 <template> 6 <template>
7 <div class="leftmenu" :class="{ 'animation-map-drawer': isShowdrawer }"> 7 <div class="leftmenu" :class="{ 'animation-map-drawer': isShowdrawer }">
...@@ -99,6 +99,9 @@ ...@@ -99,6 +99,9 @@
99 var formdata = new FormData(); 99 var formdata = new FormData();
100 formdata.append("bsmSlsq", this.bsmSlsq); 100 formdata.append("bsmSlsq", this.bsmSlsq);
101 formdata.append("bestepid", this.bestepid); 101 formdata.append("bestepid", this.bestepid);
102 if (this.$route.query.bsmBusiness) {
103 formdata.append("bsmBusiness", this.$route.query.bsmBusiness);
104 }
102 leftMenu(formdata).then((res) => { 105 leftMenu(formdata).then((res) => {
103 if (res.code === 200 && res.result) { 106 if (res.code === 200 && res.result) {
104 this.aroundUnitData = res.result.filter(item => item.bglx == '1') 107 this.aroundUnitData = res.result.filter(item => item.bglx == '1')
......