代码合并
Showing
1 changed file
with
412 additions
and
362 deletions
1 | <template> | 1 | <template> |
2 | <div class="lpbContent-wrap" ref="lpbContentWrap"> | 2 | <div class="lpbContent-wrap" ref="lpbContentWrap"> |
3 | <div class="lpbContent" ref="lpbContent" :style="{ 'height': 'calc(100% - '+ lpbContentHeight +'px)'}"> | 3 | <div |
4 | class="lpbContent" | ||
5 | ref="lpbContent" | ||
6 | :style="{ height: 'calc(100% - ' + lpbContentHeight + 'px)' }" | ||
7 | > | ||
4 | <!-- 纵向倒序排列 逻辑幢位于独立幢单元和独立层户的上方 --> | 8 | <!-- 纵向倒序排列 逻辑幢位于独立幢单元和独立层户的上方 --> |
5 | <div class="ch-zdy-wrap"> | 9 | <div class="ch-zdy-wrap"> |
6 | <!-- 幢单元 --> | 10 | <!-- 幢单元 --> |
7 | <zdy-cpn v-if="lpbData.zdys.length" :zdys="lpbData.zdys" :onlyShow="onlyShow" /> | 11 | <zdy-cpn |
12 | v-if="lpbData.zdys.length" | ||
13 | :zdys="lpbData.zdys" | ||
14 | :onlyShow="onlyShow" | ||
15 | /> | ||
8 | <!-- 独立层户 --> | 16 | <!-- 独立层户 --> |
9 | <ch-cpn v-if="lpbData.cs.length" :ch="lpbData.cs" :onlyShow="onlyShow" /> | 17 | <ch-cpn |
18 | v-if="lpbData.cs.length" | ||
19 | :ch="lpbData.cs" | ||
20 | :onlyShow="onlyShow" | ||
21 | /> | ||
10 | </div> | 22 | </div> |
11 | <!-- 逻辑幢 --> | 23 | <!-- 逻辑幢 --> |
12 | <ljzs-cpn v-if="lpbData.ljzs.length" :ljzs="lpbData.ljzs" :onlyShow="onlyShow" /> | 24 | <ljzs-cpn |
25 | v-if="lpbData.ljzs.length" | ||
26 | :ljzs="lpbData.ljzs" | ||
27 | :onlyShow="onlyShow" | ||
28 | /> | ||
13 | </div> | 29 | </div> |
14 | <!-- 自然幢名称 --> | 30 | <!-- 自然幢名称 --> |
15 | <p class="lpb-xmmc" v-if="onlyShow" style="border-bottom: 1px solid #e6e6e6">{{ lpbData.xmmc }}</p> | 31 | <p |
16 | <p class="lpb-xmmc" v-else :style="{ 'border-bottom':'1px solid #e6e6e6'}"> | 32 | class="lpb-xmmc" |
33 | v-if="onlyShow" | ||
34 | style="border-bottom: 1px solid #e6e6e6" | ||
35 | > | ||
36 | {{ lpbData.xmmc }} | ||
37 | </p> | ||
38 | <p | ||
39 | class="lpb-xmmc" | ||
40 | v-else | ||
41 | :style="{ 'border-bottom': '1px solid #e6e6e6' }" | ||
42 | > | ||
17 | <el-checkbox @change="zdySelectAll($event)">{{ | 43 | <el-checkbox @change="zdySelectAll($event)">{{ |
18 | lpbData.xmmc | 44 | lpbData.xmmc |
19 | }}</el-checkbox> | 45 | }}</el-checkbox> |
20 | </p> | 46 | </p> |
21 | <el-button type="primary" class="save-btn" v-if="!onlyShow && showSave" @click="saveLpb">选择确认</el-button> | 47 | <el-button |
22 | <el-button type="primary" class="save-btn" v-if="!onlyShow && !showSave" @click="submitForm" :loading="loading">发起申请</el-button> | 48 | type="primary" |
49 | class="save-btn" | ||
50 | v-if="!onlyShow && showSave" | ||
51 | @click="saveLpb" | ||
52 | >选择确认</el-button | ||
53 | > | ||
54 | <el-button | ||
55 | type="primary" | ||
56 | class="save-btn" | ||
57 | v-if="!onlyShow && !showSave" | ||
58 | @click="submitForm" | ||
59 | :loading="loading" | ||
60 | >发起申请</el-button | ||
61 | > | ||
23 | <!-- 右键菜单 --> | 62 | <!-- 右键菜单 --> |
24 | <ul | 63 | <ul |
25 | v-show="lpbChVisible" | 64 | v-show="lpbChVisible" |
26 | :style="{ left: lpbChLeft + 'px', top: lpbChTop + 'px' }" | 65 | :style="{ left: lpbChLeft + 'px', top: lpbChTop + 'px' }" |
27 | class="contextmenu"> | 66 | class="contextmenu" |
67 | > | ||
28 | <li @click="menuClick">菜单一</li> | 68 | <li @click="menuClick">菜单一</li> |
29 | <li @click="menuClick">菜单二</li> | 69 | <li @click="menuClick">菜单二</li> |
30 | </ul> | 70 | </ul> |
31 | </div> | 71 | </div> |
32 | </template> | 72 | </template> |
33 | <script> | 73 | <script> |
34 | import { getLpb } from "@/api/lpcx.js"; | 74 | import { getLpb } from "@/api/lpcx.js"; |
35 | import chCpn from "./ch.vue"; | 75 | import chCpn from "./ch.vue"; |
36 | import zdyCpn from "./zdys.vue"; | 76 | import zdyCpn from "./zdys.vue"; |
37 | import ljzsCpn from "./ljzs.vue"; | 77 | import ljzsCpn from "./ljzs.vue"; |
38 | import { startBusinessFlow, choiceBdcdy, againAddSldy } from "@/api/workFlow.js"; | 78 | import { |
39 | import jump from "../../ywbl/ywsq/components/mixin/jump"; | 79 | startBusinessFlow, |
40 | import store from '@/store/index.js' | 80 | choiceBdcdy, |
41 | import { ywPopupCacel } from "@/utils/popup.js"; | 81 | againAddSldy, |
42 | export default { | 82 | } from "@/api/workFlow.js"; |
43 | mixins: [jump], | 83 | import jump from "../../ywbl/ywsq/components/mixin/jump"; |
44 | provide () { | 84 | import store from "@/store/index.js"; |
45 | return { | 85 | import { ywPopupCacel } from "@/utils/popup.js"; |
46 | openMenu: this.openMenu, | 86 | export default { |
47 | selectAll: this.selectAllObj, | 87 | mixins: [jump], |
48 | changeChoosedObj: this.changeChoosedObj, | 88 | provide() { |
49 | clearChangeChoosedObj: this.clearChangeChoosedObj, | 89 | return { |
50 | getBsmList: this.getBsmList | 90 | openMenu: this.openMenu, |
51 | }; | 91 | selectAll: this.selectAllObj, |
92 | changeChoosedObj: this.changeChoosedObj, | ||
93 | clearChangeChoosedObj: this.clearChangeChoosedObj, | ||
94 | getBsmList: this.getBsmList, | ||
95 | }; | ||
96 | }, | ||
97 | name: "", | ||
98 | components: { chCpn, zdyCpn, ljzsCpn }, | ||
99 | props: { | ||
100 | zrzbsm: { | ||
101 | type: String, | ||
102 | default: "", | ||
52 | }, | 103 | }, |
53 | name: "", | 104 | lpbParent: { |
54 | components: { chCpn, zdyCpn, ljzsCpn }, | 105 | type: String, |
55 | props: { | 106 | default: "isLpb", |
56 | zrzbsm: { | 107 | }, |
57 | type: String, | 108 | isHb: { |
58 | default: "", | 109 | type: Boolean, |
59 | }, | 110 | default: true, |
60 | lpbParent: { | 111 | }, |
61 | type: String, | 112 | onlyShow: { |
62 | default: "isLpb", | 113 | type: Boolean, |
63 | }, | 114 | default: true, |
64 | isHb: { | 115 | }, |
65 | type: Boolean, | 116 | showSave: { |
66 | default: true, | 117 | type: Boolean, |
67 | }, | 118 | default: false, |
68 | onlyShow: { | 119 | }, |
69 | type: Boolean, | 120 | scyclx: { |
70 | default: true, | 121 | type: Number, |
71 | }, | 122 | default: 0, |
72 | showSave: { | 123 | }, |
73 | type: Boolean, | 124 | sqywInfo: { |
74 | default: false, | 125 | type: Object, |
75 | }, | 126 | default: () => {}, |
76 | scyclx: { | 127 | }, |
77 | type: Number, | 128 | }, |
78 | default: 0, | 129 | data() { |
79 | }, | 130 | return { |
80 | sqywInfo: { | 131 | lpbData: { |
81 | type: Object, | 132 | ljzs: [], |
82 | default: () => { } | 133 | cs: [], |
83 | }, | 134 | zdys: [], |
84 | name: "", | ||
85 | components: { chCpn, zdyCpn, ljzsCpn }, | ||
86 | props: { | ||
87 | zrzbsm: { | ||
88 | type: String, | ||
89 | default: "", | ||
90 | }, | ||
91 | lpbParent: { | ||
92 | type: String, | ||
93 | default: "isLpb", | ||
94 | }, | ||
95 | isHb: { | ||
96 | type: Boolean, | ||
97 | default: true, | ||
98 | }, | ||
99 | onlyShow: { | ||
100 | type: Boolean, | ||
101 | default: true, | ||
102 | }, | ||
103 | showSave: { | ||
104 | type: Boolean, | ||
105 | default: false, | ||
106 | }, | ||
107 | scyclx: { | ||
108 | type: Number, | ||
109 | default: 0, | ||
110 | }, | ||
111 | sqywInfo: { | ||
112 | type: Object, | ||
113 | default: () => { } | ||
114 | }, | ||
115 | isJump: { type: Boolean, default: false }, | ||
116 | }, | 135 | }, |
117 | data () { | 136 | //户全选标识 由于依赖注入的绑定并不是可响应的,所以传入可监听的对象以获取其属性的响应 |
118 | return { | 137 | selectAllObj: { |
119 | lpbData: { | 138 | selectAll: false, |
120 | ljzs: [], | ||
121 | cs: [], | ||
122 | zdys: [], | ||
123 | }, | ||
124 | //户全选标识 由于依赖注入的绑定并不是可响应的,所以传入可监听的对象以获取其属性的响应 | ||
125 | selectAllObj: { | ||
126 | selectAll: false, | ||
127 | }, | ||
128 | //层户右键菜单显隐 | ||
129 | lpbChVisible: false, | ||
130 | //右键菜单定位位置 | ||
131 | lpbChLeft: 100, | ||
132 | lpbChTop: 100, | ||
133 | // 改变户选中状态 | ||
134 | changeChoosedObj: { | ||
135 | bsms: [], | ||
136 | color: '' | ||
137 | }, | ||
138 | // 选中户bsm合集 | ||
139 | bsmList: [], | ||
140 | loading: false, | ||
141 | }; | ||
142 | }, | 139 | }, |
143 | mounted () { | 140 | //层户右键菜单显隐 |
144 | this.scyclx ? this.getLpb(this.zrzbsm, this.scyclx) : this.getLpb(this.zrzbsm); | 141 | lpbChVisible: false, |
145 | window.lpbContent = this; | 142 | //右键菜单定位位置 |
143 | lpbChLeft: 100, | ||
144 | lpbChTop: 100, | ||
145 | // 改变户选中状态 | ||
146 | changeChoosedObj: { | ||
147 | bsms: [], | ||
148 | color: "", | ||
146 | }, | 149 | }, |
147 | /** | 150 | // 选中户bsm合集 |
148 | * @description: 保存当前楼盘表 | 151 | bsmList: [], |
149 | * @author: renchao | 152 | loading: false, |
150 | */ | 153 | }; |
151 | saveLpb () { | 154 | }, |
152 | if (this.bsmList.length == 0) { | 155 | mounted() { |
153 | this.$message.error("请至少选择一条数据"); | 156 | this.scyclx |
154 | return; | 157 | ? this.getLpb(this.zrzbsm, this.scyclx) |
155 | } | 158 | : this.getLpb(this.zrzbsm); |
156 | this.loading = true; | 159 | window.lpbContent = this; |
157 | againAddSldy({ | 160 | }, |
158 | bsmSqyw: this.sqywInfo.bsmSqyw, | 161 | methods: { |
159 | bsmSlsq: this.sqywInfo.bsmSlsq, | 162 | /** |
160 | bdcdysz: this.bsmList, | 163 | * @description: 获取当前楼盘表选中户信息 |
161 | sjlx: "houses" | 164 | * @param {Array} bsmList |
162 | }).then((res) => { | 165 | * @author: renchao |
163 | this.loading = false | 166 | */ |
167 | getBsmList(bsmList, compFlag) { | ||
168 | // 根据本次传入的组件标识删除之前对应组件标识存入hbsmList的数据 | ||
169 | this.bsmList = this.bsmList.filter((i) => i.flag != compFlag); | ||
170 | // 合并本次数据 | ||
171 | this.bsmList = this.bsmList.concat([ | ||
172 | ...new Map(bsmList.map((item) => [item.bdcdyh, item])).values(), | ||
173 | ]); | ||
174 | // }) | ||
175 | }, | ||
176 | /** | ||
177 | * @description: 保存当前楼盘表 | ||
178 | * @author: renchao | ||
179 | */ | ||
180 | saveLpb() { | ||
181 | if (this.bsmList.length == 0) { | ||
182 | this.$message.error("请至少选择一条数据"); | ||
183 | return; | ||
184 | } | ||
185 | this.loading = true; | ||
186 | store.dispatch("user/reMenuRefresh", false); | ||
187 | againAddSldy({ | ||
188 | bsmSqyw: this.sqywInfo.bsmSqyw, | ||
189 | bsmSlsq: this.sqywInfo.bsmSlsq, | ||
190 | bdcdysz: this.bsmList, | ||
191 | sjlx: "houses", | ||
192 | }) | ||
193 | .then((res) => { | ||
194 | this.loading = false; | ||
164 | if (res.code == 200) { | 195 | if (res.code == 200) { |
165 | this.$message({ | 196 | this.$message({ |
166 | showClose: true, | 197 | showClose: true, |
167 | message: '添加成功', | 198 | message: "添加成功", |
168 | type: 'success' | 199 | type: "success", |
169 | }) | 200 | }); |
170 | if (!this.isJump) { | 201 | if (!this.isJump) { |
171 | this.jump(res.result, this.sqywInfo.djywbm) | 202 | this.jump(res.result, this.sqywInfo.djywbm); |
172 | } else { | ||
173 | store.dispatch('user/refreshPage', true); | ||
174 | } | 203 | } |
204 | store.dispatch("user/refreshPage", true); | ||
175 | //this.close(); | 205 | //this.close(); |
176 | this.$popupCacel(); | 206 | this.$popupCacel(); |
177 | } else { | 207 | } else { |
178 | if (res.result && res.result.length > 0) { | 208 | if (res.result && res.result.length > 0) { |
179 | this.$popup("申请错误明细", "components/ywdialog", { width: '36%', formData: { result: res.result } }) | 209 | this.$popup("申请错误明细", "components/ywdialog", { |
210 | width: "36%", | ||
211 | formData: { result: res.result }, | ||
212 | }); | ||
180 | } else { | 213 | } else { |
181 | if (res.result && res.result.length > 0) { | 214 | if (res.result && res.result.length > 0) { |
182 | this.$popup("申请错误明细", "components/ywdialog", { width: '36%', formData: { result: res.result } }) | 215 | this.$popup("申请错误明细", "components/ywdialog", { |
216 | width: "36%", | ||
217 | formData: { result: res.result }, | ||
218 | }); | ||
183 | } else { | 219 | } else { |
184 | this.$popup("申请错误明细", "components/ywdialog", { width: '36%', formData: { message: res.message } }) | 220 | this.$popup("申请错误明细", "components/ywdialog", { |
221 | width: "36%", | ||
222 | formData: { message: res.message }, | ||
223 | }); | ||
185 | } | 224 | } |
186 | } | 225 | } |
187 | } | 226 | } |
188 | }).catch(() => { | ||
189 | this.loading = false | ||
190 | }) | 227 | }) |
191 | // todo 调用保存接口 传入参数待定 | 228 | .catch(() => { |
192 | //console.log(this.bsmList,'this.bsmList'); | 229 | this.loading = false; |
193 | // 保存成功后关闭弹框 | 230 | }); |
194 | //this.$popupCacel() | 231 | // todo 调用保存接口 传入参数待定 |
195 | }, | 232 | //console.log(this.bsmList,'this.bsmList'); |
196 | // 改变户选中状态 | 233 | // 保存成功后关闭弹框 |
197 | /** | 234 | //this.$popupCacel() |
198 | * @description: 改变户选中状态 | 235 | }, |
199 | * @param {*} bsms | 236 | // 改变户选中状态 |
200 | * @param {*} color | 237 | /** |
201 | * @author: renchao | 238 | * @description: 改变户选中状态 |
202 | */ | 239 | * @param {*} bsms |
203 | changeChoosed (bsms, color) { | 240 | * @param {*} color |
204 | this.changeChoosedObj.bsms = bsms; | 241 | * @author: renchao |
205 | this.changeChoosedObj.color = color; | 242 | */ |
206 | }, | 243 | changeChoosed(bsms, color) { |
207 | /** | 244 | this.changeChoosedObj.bsms = bsms; |
208 | * @description: clearChangeChoosedObj | 245 | this.changeChoosedObj.color = color; |
209 | * @author: renchao | 246 | }, |
210 | */ | 247 | /** |
211 | clearChangeChoosedObj () { | 248 | * @description: clearChangeChoosedObj |
212 | this.changeChoosedObj.bsms = []; | 249 | * @author: renchao |
213 | }, | 250 | */ |
214 | //全选户 | 251 | clearChangeChoosedObj() { |
215 | /** | 252 | this.changeChoosedObj.bsms = []; |
216 | * @description: 全选户 | 253 | }, |
217 | * @param {*} val | 254 | //全选户 |
218 | * @author: renchao | 255 | /** |
219 | */ | 256 | * @description: 全选户 |
220 | zdySelectAll (val) { | 257 | * @param {*} val |
221 | this.selectAllObj.selectAll = val; | 258 | * @author: renchao |
222 | }, | 259 | */ |
223 | //获取楼盘表数据 | 260 | zdySelectAll(val) { |
224 | /** | 261 | this.selectAllObj.selectAll = val; |
225 | * @description: 获取楼盘表数据 | 262 | }, |
226 | * @param {*} zrzbsm | 263 | //获取楼盘表数据 |
227 | * @param {*} scyclx | 264 | /** |
228 | * @param {*} actual | 265 | * @description: 获取楼盘表数据 |
229 | * @author: renchao | 266 | * @param {*} zrzbsm |
230 | */ | 267 | * @param {*} scyclx |
231 | getLpb (zrzbsm, scyclx, actual) { | 268 | * @param {*} actual |
232 | if (!zrzbsm) { | 269 | * @author: renchao |
233 | this.$message({ | 270 | */ |
234 | message: "暂无楼盘表", | 271 | getLpb(zrzbsm, scyclx, actual) { |
235 | type: "warning", | 272 | if (!zrzbsm) { |
236 | }); | 273 | this.$message({ |
237 | } else { | 274 | message: "暂无楼盘表", |
238 | getLpb(zrzbsm, scyclx).then((res) => { | 275 | type: "warning", |
239 | if (res.code == 200) { | 276 | }); |
240 | if (scyclx) { | 277 | } else { |
241 | if (res.result.syclx == "1") { | 278 | getLpb(zrzbsm, scyclx).then((res) => { |
242 | res.result.lpb.ljzs = res.result.lpb.ljzs.sort(this.compare("place")); | 279 | if (res.code == 200) { |
243 | this.lpbData = res.result.lpb == null ? this.lpbData : res.result.lpb; | 280 | if (scyclx) { |
244 | } | 281 | if (res.result.syclx == "1") { |
245 | } else { | 282 | res.result.lpb.ljzs = res.result.lpb.ljzs.sort( |
246 | this.$message({ | 283 | this.compare("place") |
247 | message: res.message, | 284 | ); |
248 | type: "warning", | 285 | this.lpbData = |
249 | }); | 286 | res.result.lpb == null ? this.lpbData : res.result.lpb; |
250 | } | 287 | } |
251 | } else { | 288 | } else { |
252 | this.$message({ | 289 | this.$message({ |
... | @@ -254,188 +291,201 @@ | ... | @@ -254,188 +291,201 @@ |
254 | type: "warning", | 291 | type: "warning", |
255 | }); | 292 | }); |
256 | } | 293 | } |
257 | }); | 294 | } else { |
258 | } | 295 | this.$message({ |
259 | 296 | message: res.message, | |
260 | }, | 297 | type: "warning", |
261 | //户右键点击事件 | 298 | }); |
262 | /** | 299 | } |
263 | * @description: 户右键点击事件 | 300 | }); |
264 | * @param {*} e | 301 | } |
265 | * @param {*} item | 302 | }, |
266 | * @param {*} type | 303 | //户右键点击事件 |
267 | * @author: renchao | 304 | /** |
268 | */ | 305 | * @description: 户右键点击事件 |
269 | openMenu (e, item, type) { | 306 | * @param {*} e |
270 | this.lpbChLeft = e.pageX - 96; | 307 | * @param {*} item |
271 | this.lpbChTop = e.pageY - 23; | 308 | * @param {*} type |
272 | // this.lpbChVisible = true; | 309 | * @author: renchao |
273 | }, | 310 | */ |
274 | //关闭户右键菜单 | 311 | openMenu(e, item, type) { |
275 | /** | 312 | this.lpbChLeft = e.pageX - 96; |
276 | * @description: 关闭户右键菜单 | 313 | this.lpbChTop = e.pageY - 23; |
277 | * @author: renchao | 314 | // this.lpbChVisible = true; |
278 | */ | 315 | }, |
279 | closeMenu () { | 316 | //关闭户右键菜单 |
280 | this.lpbChVisible = false; | 317 | /** |
281 | }, | 318 | * @description: 关闭户右键菜单 |
282 | //右键菜单点击 | 319 | * @author: renchao |
283 | /** | 320 | */ |
284 | * @description: 右键菜单点击 | 321 | closeMenu() { |
285 | * @author: renchao | 322 | this.lpbChVisible = false; |
286 | */ | 323 | }, |
287 | menuClick () { | 324 | //右键菜单点击 |
288 | this.closeMenu(); | 325 | /** |
289 | }, | 326 | * @description: 右键菜单点击 |
290 | /** | 327 | * @author: renchao |
291 | * @description: compare | 328 | */ |
292 | * @param {*} property | 329 | menuClick() { |
293 | * @author: renchao | 330 | this.closeMenu(); |
294 | */ | 331 | }, |
295 | compare (property) { | 332 | /** |
296 | return function (a, b) { | 333 | * @description: compare |
297 | var value1 = a[property]; | 334 | * @param {*} property |
298 | var value2 = b[property]; | 335 | * @author: renchao |
299 | return value1 - value2; | 336 | */ |
300 | }; | 337 | compare(property) { |
301 | }, | 338 | return function (a, b) { |
302 | /** | 339 | var value1 = a[property]; |
303 | * @description: submitForm | 340 | var value2 = b[property]; |
304 | * @author: renchao | 341 | return value1 - value2; |
305 | */ | 342 | }; |
306 | submitForm () { | 343 | }, |
307 | if (this.bsmList.length == 0) { | 344 | /** |
308 | this.$message.error("请至少选择一条数据"); | 345 | * @description: submitForm |
309 | return; | 346 | * @author: renchao |
310 | } | 347 | */ |
311 | this.loading = true; | 348 | submitForm() { |
312 | startBusinessFlow({ | 349 | if (this.bsmList.length == 0) { |
313 | bsmSqyw: this.sqywInfo.bsmSqyw, | 350 | this.$message.error("请至少选择一条数据"); |
314 | bdcdysz: this.bsmList, | 351 | return; |
315 | }).then((res) => { | 352 | } |
316 | this.loading = false | 353 | this.loading = true; |
354 | startBusinessFlow({ | ||
355 | bsmSqyw: this.sqywInfo.bsmSqyw, | ||
356 | bdcdysz: this.bsmList, | ||
357 | }) | ||
358 | .then((res) => { | ||
359 | this.loading = false; | ||
317 | if (res.code == 200) { | 360 | if (res.code == 200) { |
318 | this.$message({ | 361 | this.$message({ |
319 | showClose: true, | 362 | showClose: true, |
320 | message: '发起申请成功', | 363 | message: "发起申请成功", |
321 | type: 'success' | 364 | type: "success", |
322 | }) | 365 | }); |
323 | if (!this.isJump) { | 366 | if (!this.isJump) { |
324 | this.jump(res.result, this.sqywInfo.djywbm) | 367 | this.jump(res.result, this.sqywInfo.djywbm); |
325 | } else { | 368 | } else { |
326 | store.dispatch('user/refreshPage', true); | 369 | store.dispatch("user/refreshPage", true); |
327 | } | 370 | } |
328 | this.close() | 371 | this.close(); |
329 | } else { | 372 | } else { |
330 | if (res.result && res.result.length > 0) { | 373 | if (res.result && res.result.length > 0) { |
331 | this.$popup("申请错误明细", "components/ywdialog", { width: '36%', formData: { result: res.result } }) | 374 | this.$popup("申请错误明细", "components/ywdialog", { |
375 | width: "36%", | ||
376 | formData: { result: res.result }, | ||
377 | }); | ||
332 | } else { | 378 | } else { |
333 | this.$popup("申请错误明细", "components/ywdialog", { width: '36%', formData: { message: res.message } }) | 379 | this.$popup("申请错误明细", "components/ywdialog", { |
380 | width: "36%", | ||
381 | formData: { message: res.message }, | ||
382 | }); | ||
334 | } | 383 | } |
335 | } | 384 | } |
336 | }).catch(() => { | ||
337 | this.loading = false | ||
338 | }) | 385 | }) |
339 | }, | 386 | .catch(() => { |
340 | /** | 387 | this.loading = false; |
341 | * @description: close | 388 | }); |
342 | * @param {*} val | ||
343 | * @author: renchao | ||
344 | */ | ||
345 | close () { | ||
346 | ywPopupCacel() | ||
347 | }, | ||
348 | }, | 389 | }, |
349 | computed: { | 390 | /** |
350 | lpbContentHeight () { | 391 | * @description: close |
351 | return this.onlyShow ? 32 : 76 | 392 | * @param {*} val |
352 | // return 76 | 393 | * @author: renchao |
353 | } | 394 | */ |
395 | close() { | ||
396 | ywPopupCacel(); | ||
354 | }, | 397 | }, |
355 | watch: { | 398 | }, |
356 | //户右键菜单显示时,监听到鼠标点击时关闭户右键菜单 | 399 | computed: { |
357 | lpbChVisible (value) { | 400 | lpbContentHeight() { |
358 | if (value) { | 401 | return this.onlyShow ? 32 : 76; |
359 | document.body.addEventListener("click", this.closeMenu); | 402 | // return 76 |
360 | } else { | 403 | }, |
361 | document.body.removeEventListener("click", this.closeMenu); | 404 | }, |
362 | } | 405 | watch: { |
406 | //户右键菜单显示时,监听到鼠标点击时关闭户右键菜单 | ||
407 | lpbChVisible(value) { | ||
408 | if (value) { | ||
409 | document.body.addEventListener("click", this.closeMenu); | ||
410 | } else { | ||
411 | document.body.removeEventListener("click", this.closeMenu); | ||
363 | } | 412 | } |
364 | }, | 413 | }, |
365 | }; | 414 | }, |
415 | }; | ||
366 | </script> | 416 | </script> |
367 | <style scoped lang="scss"> | 417 | <style scoped lang="scss"> |
368 | .lpbContent-wrap { | 418 | .lpbContent-wrap { |
419 | width: 100%; | ||
420 | height: 100%; | ||
421 | overflow: hidden; | ||
422 | .lpbContent { | ||
369 | width: 100%; | 423 | width: 100%; |
370 | height: 100%; | 424 | position: relative; |
371 | overflow: hidden; | 425 | overflow: scroll; |
372 | .lpbContent { | 426 | -webkit-user-select: none; |
373 | width: 100%; | 427 | -moz-user-select: none; |
374 | position: relative; | 428 | -ms-user-select: none; |
375 | overflow: scroll; | 429 | user-select: none; |
376 | -webkit-user-select: none; | 430 | display: flex; |
377 | -moz-user-select: none; | 431 | flex-direction: column-reverse; |
378 | -ms-user-select: none; | 432 | box-sizing: border-box; |
379 | user-select: none; | 433 | padding-top: 20px; |
434 | .ch-zdy-wrap { | ||
380 | display: flex; | 435 | display: flex; |
381 | flex-direction: column-reverse; | 436 | flex-direction: row; |
382 | box-sizing: border-box; | ||
383 | padding-top: 20px; | ||
384 | .ch-zdy-wrap { | ||
385 | display: flex; | ||
386 | flex-direction: row; | ||
387 | } | ||
388 | } | 437 | } |
389 | .lpb-xmmc { | 438 | } |
390 | border: 0; | 439 | .lpb-xmmc { |
391 | border-top: 1px solid #e6e6e6; | 440 | border: 0; |
392 | } | 441 | border-top: 1px solid #e6e6e6; |
393 | .save-btn { | 442 | } |
394 | display: block; | 443 | .save-btn { |
395 | margin: 5px auto; | 444 | display: block; |
396 | } | 445 | margin: 5px auto; |
397 | // 自定义右键菜单样式 | 446 | } |
398 | .contextmenu { | 447 | // 自定义右键菜单样式 |
448 | .contextmenu { | ||
449 | margin: 0; | ||
450 | background: #fff; | ||
451 | width: 92px; | ||
452 | z-index: 3000; | ||
453 | position: fixed; | ||
454 | list-style-type: none; | ||
455 | padding: 5px 0; | ||
456 | border-radius: 4px; | ||
457 | font-size: 12px; | ||
458 | font-weight: 400; | ||
459 | color: #333; | ||
460 | box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, 0.3); | ||
461 | li { | ||
399 | margin: 0; | 462 | margin: 0; |
400 | background: #fff; | 463 | padding: 7px 16px; |
401 | width: 92px; | 464 | cursor: pointer; |
402 | z-index: 3000; | 465 | position: relative; |
403 | position: fixed; | 466 | .childUl { |
404 | list-style-type: none; | 467 | display: none; |
405 | padding: 5px 0; | 468 | position: absolute; |
406 | border-radius: 4px; | 469 | left: 92px !important; |
407 | font-size: 12px; | 470 | top: 0 !important; |
408 | font-weight: 400; | 471 | li { |
409 | color: #333; | 472 | width: 76px; |
410 | box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, 0.3); | ||
411 | li { | ||
412 | margin: 0; | ||
413 | padding: 7px 16px; | ||
414 | cursor: pointer; | ||
415 | position: relative; | ||
416 | .childUl { | ||
417 | display: none; | ||
418 | position: absolute; | ||
419 | left: 92px !important; | ||
420 | top: 0 !important; | ||
421 | li { | ||
422 | width: 76px; | ||
423 | } | ||
424 | } | ||
425 | } | ||
426 | li:hover { | ||
427 | background: #eee; | ||
428 | > .childUl { | ||
429 | display: block; | ||
430 | } | 473 | } |
431 | } | 474 | } |
432 | .noEdit { | 475 | } |
433 | color: #e6e6e6; | 476 | li:hover { |
434 | cursor: not-allowed; | 477 | background: #eee; |
435 | } | 478 | > .childUl { |
436 | .noEdit:hover { | 479 | display: block; |
437 | background: #ffffff; | ||
438 | } | 480 | } |
439 | } | 481 | } |
482 | .noEdit { | ||
483 | color: #e6e6e6; | ||
484 | cursor: not-allowed; | ||
485 | } | ||
486 | .noEdit:hover { | ||
487 | background: #ffffff; | ||
488 | } | ||
440 | } | 489 | } |
490 | } | ||
441 | </style> | 491 | </style> | ... | ... |
-
Please register or sign in to post a comment