111
Showing
1 changed file
with
270 additions
and
63 deletions
... | @@ -14,46 +14,33 @@ | ... | @@ -14,46 +14,33 @@ |
14 | {{ item.nodename }} | 14 | {{ item.nodename }} |
15 | </li> | 15 | </li> |
16 | </ul> | 16 | </ul> |
17 | <el-collapse v-model="activeName" accordion> | ||
18 | <el-collapse-item title="业务详情" name="1"> | ||
19 | <el-form | 17 | <el-form |
20 | :model="form" | 18 | :model="form" |
21 | v-show="n == 0" | 19 | v-show="n == 0" |
22 | :rules="rules" | ||
23 | label-width="135px" | 20 | label-width="135px" |
24 | ref="ruleForm" | 21 | ref="ruleForm" |
25 | > | 22 | > |
26 | <el-row> | 23 | <el-row> |
27 | <el-col :span="8"> | 24 | <el-col :span="8"> |
28 | <el-form-item label="权利类型编码"> | ||
29 | <el-input v-model="form.ywDetail.qllxbm" disabled></el-input> | ||
30 | </el-form-item> | ||
31 | </el-col> | ||
32 | <!-- <el-col :span="8"> | ||
33 | <el-form-item label="权利类型名称"> | ||
34 | <el-input v-model="form.ywDetail.qllxmc" disabled></el-input> | ||
35 | </el-form-item> | ||
36 | </el-col> | ||
37 | <el-col :span="8"> | ||
38 | <el-form-item label="申请分类"> | 25 | <el-form-item label="申请分类"> |
39 | <el-select v-model="form.ywDetail.sqfl" disabled placeholder="请选择" class="width100"> | 26 | <el-select v-model="form.ywDetail.sqfl" disabled placeholder="请选择" class="width100"> |
40 | <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"> | 27 | <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"> |
41 | </el-option> | 28 | </el-option> |
42 | </el-select> | 29 | </el-select> |
43 | </el-form-item> | 30 | </el-form-item> |
44 | </el-col> --> | 31 | </el-col> |
45 | </el-row> | ||
46 | <!-- <el-row> | ||
47 | <el-col :span="8"> | 32 | <el-col :span="8"> |
48 | <el-form-item label="登记类型编码"> | 33 | <el-form-item label="登记业务编码"> |
49 | <el-input v-model="form.ywDetail.djlxbm" disabled></el-input> | 34 | <el-input v-model="form.ywDetail.djywbm" disabled></el-input> |
50 | </el-form-item> | 35 | </el-form-item> |
51 | </el-col> | 36 | </el-col> |
52 | <el-col :span="8"> | 37 | <el-col :span="8"> |
53 | <el-form-item label="登记类型名称"> | 38 | <el-form-item label="登记业务名称"> |
54 | <el-input v-model="form.ywDetail.djlxmc" disabled></el-input> | 39 | <el-input v-model="form.ywDetail.djywmc" disabled></el-input> |
55 | </el-form-item> | 40 | </el-form-item> |
56 | </el-col> | 41 | </el-col> |
42 | </el-row> | ||
43 | <el-row> | ||
57 | <el-col :span="8"> | 44 | <el-col :span="8"> |
58 | <el-form-item label="发起业务单元类型"> | 45 | <el-form-item label="发起业务单元类型"> |
59 | <el-select v-model="form.ywDetail.fqywdylx" disabled placeholder="请选择" class="width100"> | 46 | <el-select v-model="form.ywDetail.fqywdylx" disabled placeholder="请选择" class="width100"> |
... | @@ -62,20 +49,6 @@ | ... | @@ -62,20 +49,6 @@ |
62 | </el-select> | 49 | </el-select> |
63 | </el-form-item> | 50 | </el-form-item> |
64 | </el-col> | 51 | </el-col> |
65 | </el-row> | ||
66 | <el-row> | ||
67 | <el-col :span="8"> | ||
68 | <el-form-item label="登记业务编码"> | ||
69 | <el-input v-model="form.ywDetail.djywbm" disabled></el-input> | ||
70 | </el-form-item> | ||
71 | </el-col> | ||
72 | <el-col :span="16"> | ||
73 | <el-form-item label="登记业务名称"> | ||
74 | <el-input v-model="form.ywDetail.djywmc" disabled></el-input> | ||
75 | </el-form-item> | ||
76 | </el-col> | ||
77 | </el-row> | ||
78 | <el-row> | ||
79 | <el-col :span="8"> | 52 | <el-col :span="8"> |
80 | <el-form-item label="是否启用" prop="enabled"> | 53 | <el-form-item label="是否启用" prop="enabled"> |
81 | <el-radio-group v-model="form.ywDetail.enabled"> | 54 | <el-radio-group v-model="form.ywDetail.enabled"> |
... | @@ -84,14 +57,23 @@ | ... | @@ -84,14 +57,23 @@ |
84 | </el-radio-group> | 57 | </el-radio-group> |
85 | </el-form-item> | 58 | </el-form-item> |
86 | </el-col> | 59 | </el-col> |
87 | <el-col :span="16"> | 60 | <el-col :span="8"> |
88 | <el-form-item label="业务流程ID" prop="flowid"> | 61 | <el-form-item label="业务流程ID" prop="flowid"> |
89 | <el-input v-model="form.ywDetail.flowid"></el-input> | 62 | <el-input v-model="form.ywDetail.flowid"></el-input> |
90 | </el-form-item> | 63 | </el-form-item> |
91 | </el-col> | 64 | </el-col> |
92 | </el-row> | 65 | </el-row> |
66 | |||
93 | <el-row> | 67 | <el-row> |
94 | <el-col :span="8"> | 68 | <el-col :span="8"> |
69 | <el-form-item label="登记原因设置" prop="sfqydjyymb"> | ||
70 | <el-radio-group v-model="form.ywDetail.sfqydjyymb"> | ||
71 | <el-radio label="1">启用</el-radio> | ||
72 | <el-radio label="0">禁用</el-radio> | ||
73 | </el-radio-group> | ||
74 | </el-form-item> | ||
75 | </el-col> | ||
76 | <el-col :span="8"> | ||
95 | <el-form-item label="登记情形及材料"> | 77 | <el-form-item label="登记情形及材料"> |
96 | <el-input v-model="form.ywDetail.djqxcl" placeholder="仅支持execl文件导入"></el-input> | 78 | <el-input v-model="form.ywDetail.djqxcl" placeholder="仅支持execl文件导入"></el-input> |
97 | </el-form-item> | 79 | </el-form-item> |
... | @@ -104,47 +86,52 @@ | ... | @@ -104,47 +86,52 @@ |
104 | </el-col> | 86 | </el-col> |
105 | </el-row> | 87 | </el-row> |
106 | <el-row> | 88 | <el-row> |
107 | <el-col :span="8"> | ||
108 | <el-form-item label="登记原因设置" prop="sfqydjyymb"> | ||
109 | <el-radio-group v-model="form.ywDetail.sfqydjyymb"> | ||
110 | <el-radio label="1">启用</el-radio> | ||
111 | <el-radio label="0">禁用</el-radio> | ||
112 | </el-radio-group> | ||
113 | </el-form-item> | ||
114 | </el-col> | ||
115 | </el-row> | ||
116 | <el-row> | ||
117 | <el-col :span="24"> | 89 | <el-col :span="24"> |
118 | <el-form-item label="登记原因模板" prop="djyy"> | 90 | <el-form-item label="登记原因模板" prop="djyy"> |
119 | <el-input type="textarea" :rows="4" placeholder="请输入内容" v-model="form.ywDetail.djyy"> | 91 | <el-input type="textarea" :rows="4" placeholder="请输入内容" v-model="form.ywDetail.djyy"> |
120 | </el-input> | 92 | </el-input> |
121 | </el-form-item> | 93 | </el-form-item> |
122 | </el-col> | 94 | </el-col> |
123 | </el-row> --> | 95 | </el-row> |
124 | </el-form> | 96 | </el-form> |
97 | <el-collapse accordion> | ||
98 | <el-collapse-item title="登记情形设置" name="1"> | ||
99 | <lb-table :column="djqxCol" border :pagination="false" heightNumSetting :data="form.djqx"> | ||
100 | </lb-table> | ||
125 | </el-collapse-item> | 101 | </el-collapse-item> |
126 | <el-collapse-item title="登记情形设置" name="2"> | 102 | <el-collapse-item title="材料信息设置" name="2"> |
127 | <div> | 103 | <lb-table :column="clxxCol" border heightNumSetting :pagination="false" :data="form.clxx"> |
128 | 控制反馈:通过界面样式和交互动效让用户可以清晰的感知自己的操作; | 104 | </lb-table> |
129 | </div> | ||
130 | <div>页面反馈:操作后,通过页面元素的变化清晰地展现当前状态。</div> | ||
131 | </el-collapse-item> | 105 | </el-collapse-item> |
132 | <el-collapse-item title="材料信息设置" name="3"> | 106 | <el-collapse-item title="刷选条件设置" name="3"> |
133 | <div>简化流程:设计简洁直观的操作流程;</div> | 107 | <div v-if="form.ywDetail.sfsxql != '0'"> |
108 | <div class="dyztsd-title"> | ||
109 | <b>请勾选需要查询的权利信息</b> | ||
134 | <div> | 110 | <div> |
135 | 清晰明确:语言表达清晰且表意明确,让用户快速理解进而作出决策; | 111 | <el-button type="text" @click="handleSelectall">选择全部 </el-button> |
112 | <el-button type="text" @click="handleInvert">清除全部</el-button> | ||
136 | </div> | 113 | </div> |
137 | <div> | ||
138 | 帮助用户识别:界面简单直白,让用户快速识别而非回忆,减少用户记忆负担。 | ||
139 | </div> | 114 | </div> |
140 | </el-collapse-item> | 115 | <el-divider></el-divider> |
141 | <el-collapse-item title="刷选条件设置" name="4"> | 116 | <ul class="qlxx-list"> |
142 | <div> | 117 | <li v-for="(item, index) in form.sxql" :key="index"> |
143 | 用户决策:根据场景可给予用户操作建议或安全提示,但不能代替用户进行决策; | 118 | <el-checkbox v-model="item.checked">{{ item.sxzdmc }}</el-checkbox> |
119 | </li> | ||
120 | </ul> | ||
144 | </div> | 121 | </div> |
145 | <div> | 122 | <b>限制办理状态</b> |
146 | 结果可控:用户可以自由的进行操作,包括撤销、回退和终止当前操作等。 | 123 | <ul class="screen-list"> |
124 | <li v-for="(item, index) in form.sxzt" :key="index"> | ||
125 | <div class="screen-list-left"> | ||
126 | <el-switch v-model="item.checked" @change="handleSelect(item)"> | ||
127 | </el-switch> | ||
128 | {{ item.sxzdmc }} | ||
147 | </div> | 129 | </div> |
130 | <el-radio-group v-model="item.selected" :disabled="!item.checked"> | ||
131 | <el-radio :label="obj.sxzdz" v-for="(obj, index) in item.children" :key="index">{{ obj.sxzdmc }}</el-radio> | ||
132 | </el-radio-group> | ||
133 | </li> | ||
134 | </ul> | ||
148 | </el-collapse-item> | 135 | </el-collapse-item> |
149 | </el-collapse> | 136 | </el-collapse> |
150 | <div slot="footer" class="dialog-footer"> | 137 | <div slot="footer" class="dialog-footer"> |
... | @@ -154,6 +141,8 @@ | ... | @@ -154,6 +141,8 @@ |
154 | </el-dialog> | 141 | </el-dialog> |
155 | </template> | 142 | </template> |
156 | <script> | 143 | <script> |
144 | import { mapGetters } from 'vuex'; | ||
145 | import { upward, down } from '@/utils/operation' | ||
157 | import { getDjlxInfo, getSqdjywDetail } from "@/api/system.js"; | 146 | import { getDjlxInfo, getSqdjywDetail } from "@/api/system.js"; |
158 | export default { | 147 | export default { |
159 | //父组件 传 过来的 值 | 148 | //父组件 传 过来的 值 |
... | @@ -171,7 +160,7 @@ export default { | ... | @@ -171,7 +160,7 @@ export default { |
171 | immediate: true, | 160 | immediate: true, |
172 | }, | 161 | }, |
173 | }, | 162 | }, |
174 | components: {}, | 163 | components: { }, |
175 | name: "componentDialog", | 164 | name: "componentDialog", |
176 | data() { | 165 | data() { |
177 | return { | 166 | return { |
... | @@ -181,12 +170,224 @@ export default { | ... | @@ -181,12 +170,224 @@ export default { |
181 | title: "", | 170 | title: "", |
182 | activeName: "1", | 171 | activeName: "1", |
183 | form: {}, | 172 | form: {}, |
173 | djqxCol: [ | ||
174 | { | ||
175 | width: '60', | ||
176 | renderHeader: (h, scope) => { | ||
177 | return <i class="el-icon-plus pointer" onClick={() => { this.handleAdd() }} style="color:#409EFF"></i> | ||
178 | }, | ||
179 | render: (h, scope) => { | ||
180 | return ( | ||
181 | <i class="el-icon-minus pointer" onClick={() => { this.handleMinus(scope.$index, scope.row) }}></i> | ||
182 | ) | ||
183 | } | ||
184 | }, | ||
185 | { | ||
186 | width: '60', | ||
187 | label: '序号', | ||
188 | type: 'index' | ||
189 | }, | ||
190 | { | ||
191 | prop: 'nodecode', | ||
192 | width: '105', | ||
193 | label: '登记情形编码', | ||
194 | render: (h, scope) => { | ||
195 | return ( | ||
196 | <div> | ||
197 | <el-input placeholder="登记情形编码" class={{ repeat: scope.row.repeat }} disabled={scope.row.sftsdjqx == '1'} | ||
198 | value={scope.row[scope.column.property]} | ||
199 | onInput={(val) => { scope.row[scope.column.property] = val }} onBlur={() => { this.nodecodeBlur(scope.$index, scope.row) }} maxlength="8"> | ||
200 | </el-input> | ||
201 | </div> | ||
202 | ) | ||
203 | } | ||
204 | }, | ||
205 | { | ||
206 | prop: 'nodename', | ||
207 | label: '登记情形名称', | ||
208 | render: (h, scope) => { | ||
209 | return ( | ||
210 | <div> | ||
211 | <el-input placeholder="登记情形名称" disabled={scope.row.sftsdjqx == '1'} | ||
212 | value={scope.row[scope.column.property]} | ||
213 | onInput={(val) => { scope.row[scope.column.property] = val }}></el-input> | ||
214 | </div> | ||
215 | ) | ||
216 | } | ||
217 | }, | ||
218 | { | ||
219 | label: '是否启用登记情形', | ||
220 | width: '140', | ||
221 | render: (h, scope) => { | ||
222 | return ( | ||
223 | <el-radio-group v-model={scope.row.enabled} disabled={scope.row.sftsdjqx == '1'} onChange={(val) => { scope.row[scope.column.property] = val }}> | ||
224 | <el-radio label={'1'}>启用</el-radio> | ||
225 | <el-radio label={'0'}>禁用</el-radio> | ||
226 | </el-radio-group> | ||
227 | ) | ||
228 | } | ||
229 | }, | ||
230 | { | ||
231 | prop: 'djyy', | ||
232 | label: '登记原因模板', | ||
233 | render: (h, scope) => { | ||
234 | return ( | ||
235 | <div> | ||
236 | <el-input placeholder="登记原因模板" disabled={scope.row.sftsdjqx == '1'} value={scope.row[scope.column.property]} | ||
237 | onInput={(val) => { scope.row[scope.column.property] = val }}></el-input> | ||
238 | </div> | ||
239 | |||
240 | ) | ||
241 | } | ||
242 | }, | ||
243 | { | ||
244 | label: '是否启用模板', | ||
245 | width: '140', | ||
246 | render: (h, scope) => { | ||
247 | return ( | ||
248 | <el-radio-group v-model={scope.row.sfqydjyymb} disabled={scope.row.sftsdjqx == '1'} onChange={(val) => { scope.row[scope.column.property] = val }}> | ||
249 | <el-radio label={'1'}>启用</el-radio> | ||
250 | <el-radio label={'0'}>禁用</el-radio> | ||
251 | </el-radio-group> | ||
252 | ) | ||
253 | } | ||
254 | }, | ||
255 | { | ||
256 | label: '移动', | ||
257 | width: '100', | ||
258 | render: (h, scope) => { | ||
259 | return ( | ||
260 | <div> | ||
261 | <el-button type='text' disabled={scope.$index == 0} onClick={() => { this.moveUpward(scope.$index, scope.row) }}>上移</el-button> | ||
262 | <el-button type='text' disabled={(scope.$index + 1) == this.form.djqx.length} onClick={() => { this.moveDown(scope.$index, scope.row) }}>下移</el-button > | ||
263 | </div> | ||
264 | ) | ||
265 | } | ||
266 | } | ||
267 | ], | ||
268 | clxxCol: [ | ||
269 | { | ||
270 | width: '60', | ||
271 | renderHeader: (h, scope) => { | ||
272 | return <i class="el-icon-plus pointer" onClick={() => { this.handleAdd() }} style="color:#409EFF"></i> | ||
273 | }, | ||
274 | render: (h, scope) => { | ||
275 | return ( | ||
276 | <i class="el-icon-minus pointer" onClick={() => { this.handleMinus(scope.$index, scope.row) }}></i> | ||
277 | ) | ||
278 | } | ||
279 | }, | ||
280 | { | ||
281 | width: '60', | ||
282 | label: '序号', | ||
283 | type: 'index' | ||
284 | }, | ||
285 | { | ||
286 | label: '是否必填', | ||
287 | width: '100', | ||
288 | render: (h, scope) => { | ||
289 | return ( | ||
290 | <el-radio-group v-model={scope.row.isrequired} onChange={(val) => { scope.row[scope.column.property] = val }}> | ||
291 | <el-radio label={'1'}>是</el-radio> | ||
292 | <el-radio label={'0'}>否</el-radio> | ||
293 | </el-radio-group> | ||
294 | ) | ||
295 | } | ||
296 | }, | ||
297 | { | ||
298 | prop: 'clbm', | ||
299 | label: '材料编码', | ||
300 | width: '100', | ||
301 | render: (h, scope) => { | ||
302 | return ( | ||
303 | <el-input placeholder="材料编码" value={scope.row[scope.column.property]} | ||
304 | onInput={(val) => { scope.row[scope.column.property] = val }} maxlength="8"></el-input> | ||
305 | ) | ||
306 | } | ||
307 | }, | ||
308 | { | ||
309 | prop: 'clmc', | ||
310 | label: '材料名称', | ||
311 | render: (h, scope) => { | ||
312 | return ( | ||
313 | <el-input placeholder="材料名称" value={scope.row[scope.column.property]} | ||
314 | onInput={(val) => { scope.row[scope.column.property] = val }}></el-input> | ||
315 | ) | ||
316 | } | ||
317 | }, | ||
318 | { | ||
319 | prop: 'cllx', | ||
320 | label: '材料类型', | ||
321 | width: '115', | ||
322 | render: (h, scope) => { | ||
323 | return ( | ||
324 | <el-select value={scope.row[scope.column.property]} | ||
325 | onChange={(val) => { scope.row[scope.column.property] = val }} clearable> | ||
326 | { | ||
327 | this.dictData['A40'].map(option => { | ||
328 | return ( | ||
329 | <el-option label={option.dname} value={option.dcode}></el-option> | ||
330 | ) | ||
331 | }) | ||
332 | } | ||
333 | </el-select> | ||
334 | ) | ||
335 | } | ||
336 | }, | ||
337 | { | ||
338 | label: '是否公共材料', | ||
339 | width: '100', | ||
340 | render: (h, scope) => { | ||
341 | return ( | ||
342 | <el-radio-group v-model={scope.row.sfggcl} onChange={(val) => { scope.row[scope.column.property] = val; this.handleSelectGgcl(scope.row) }}> | ||
343 | <el-radio label={'1'}>是</el-radio> | ||
344 | <el-radio label={'0'}>否</el-radio> | ||
345 | </el-radio-group> | ||
346 | ) | ||
347 | } | ||
348 | }, | ||
349 | { | ||
350 | prop: 'djqxbm', | ||
351 | label: '登记情形', | ||
352 | width: '180', | ||
353 | render: (h, scope) => { | ||
354 | return ( | ||
355 | <el-select disabled={scope.row.sfggcl == '1'} value={scope.row[scope.column.property]} | ||
356 | onChange={(val) => { scope.row[scope.column.property] = val }} clearable> | ||
357 | { | ||
358 | this.form.djqx.map(option => { | ||
359 | return ( | ||
360 | <el-option label={option.nodename} value={option.nodecode}></el-option> | ||
361 | ) | ||
362 | }) | ||
363 | } | ||
364 | </el-select> | ||
365 | ) | ||
366 | } | ||
367 | }, | ||
368 | { | ||
369 | label: '移动', | ||
370 | width: '90', | ||
371 | render: (h, scope) => { | ||
372 | return ( | ||
373 | <div> | ||
374 | <el-button type='text' disabled={scope.$index == 0} onClick={() => { this.moveUpward(scope.$index, scope.row) }}>上移</el-button> | ||
375 | <el-button type='text' disabled={(scope.$index + 1) == this.form.clxx.length} onClick={() => { this.moveDown(scope.$index, scope.row) }}>下移</el-button > | ||
376 | </div> | ||
377 | ) | ||
378 | } | ||
379 | } | ||
380 | ], | ||
184 | }; | 381 | }; |
185 | }, | 382 | }, |
383 | computed: { | ||
384 | ...mapGetters(['dictData']) | ||
385 | }, | ||
186 | mounted() {}, | 386 | mounted() {}, |
187 | methods: { | 387 | methods: { |
188 | //页面初始化 | 388 | //页面初始化 |
189 | init() { | 389 | init() { |
390 | this.tn = 0; | ||
190 | getDjlxInfo(this.sqqlRule.bsmSqyw).then((res) => { | 391 | getDjlxInfo(this.sqqlRule.bsmSqyw).then((res) => { |
191 | let { result } = res; | 392 | let { result } = res; |
192 | this.djlxList = result ? result : []; | 393 | this.djlxList = result ? result : []; |
... | @@ -218,6 +419,12 @@ export default { | ... | @@ -218,6 +419,12 @@ export default { |
218 | </script> | 419 | </script> |
219 | <style lang='scss' scoped> | 420 | <style lang='scss' scoped> |
220 | @import "~@/styles/mixin.scss"; | 421 | @import "~@/styles/mixin.scss"; |
422 | /deep/ .el-dialog { | ||
423 | margin: auto !important; | ||
424 | height: 90%; | ||
425 | width: 80%; | ||
426 | overflow: auto; | ||
427 | } | ||
221 | .form { | 428 | .form { |
222 | background: #eee; | 429 | background: #eee; |
223 | padding: 0 10px; | 430 | padding: 0 10px; | ... | ... |
-
Please register or sign in to post a comment