doway-coms 2.5.1 → 2.5.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/.browserslistrc +2 -2
  2. package/README.md +28 -28
  3. package/package.json +54 -54
  4. package/packages/AuditsList/index.js +7 -7
  5. package/packages/AuditsList/src/index.vue +266 -266
  6. package/packages/BaseButton/index.js +7 -7
  7. package/packages/BaseButton/src/index.vue +241 -241
  8. package/packages/BaseCheckbox/index.js +7 -7
  9. package/packages/BaseCheckbox/src/index.vue +134 -134
  10. package/packages/BaseDate/index.js +7 -7
  11. package/packages/BaseDate/src/index.vue +197 -197
  12. package/packages/BaseDateWeek/index.js +7 -7
  13. package/packages/BaseDateWeek/src/index.vue +163 -163
  14. package/packages/BaseDatetime/index.js +7 -7
  15. package/packages/BaseDatetime/src/index.vue +196 -196
  16. package/packages/BaseFileGroup/index.js +7 -7
  17. package/packages/BaseFileGroup/src/index.vue +724 -775
  18. package/packages/BaseForm/index.js +7 -7
  19. package/packages/BaseForm/src/index.vue +752 -730
  20. package/packages/BaseGantt/index.js +9 -9
  21. package/packages/BaseGantt/src/index.vue +617 -617
  22. package/packages/BaseGrid/index.js +9 -9
  23. package/packages/BaseGrid/src/SeqSetting.vue +278 -278
  24. package/packages/BaseGrid/src/index.vue +3704 -3704
  25. package/packages/BaseGridAdjust/index.js +9 -9
  26. package/packages/BaseGridAdjust/src/index.vue +482 -482
  27. package/packages/BaseInput/index.js +7 -7
  28. package/packages/BaseInput/src/index.vue +164 -164
  29. package/packages/BaseIntervalInput/index.js +7 -7
  30. package/packages/BaseIntervalInput/src/index.vue +310 -310
  31. package/packages/BaseKanbanEmpty/index.js +7 -7
  32. package/packages/BaseKanbanEmpty/src/index.vue +176 -176
  33. package/packages/BaseNumberInput/index.js +7 -7
  34. package/packages/BaseNumberInput/src/index.vue +290 -290
  35. package/packages/BasePagination/index.js +7 -7
  36. package/packages/BasePagination/src/index.vue +91 -91
  37. package/packages/BasePictureCard/index.js +7 -7
  38. package/packages/BasePictureCard/src/index.vue +580 -580
  39. package/packages/BasePrintPreview/index.js +7 -7
  40. package/packages/BasePrintPreview/src/index.vue +129 -129
  41. package/packages/BasePulldown/index.js +7 -7
  42. package/packages/BasePulldown/src/index.vue +1331 -1330
  43. package/packages/BaseSearch/index.js +7 -7
  44. package/packages/BaseSearch/src/index.vue +935 -935
  45. package/packages/BaseSelect/index.js +7 -7
  46. package/packages/BaseSelect/src/index.vue +155 -155
  47. package/packages/BaseSelectMulti/index.js +7 -7
  48. package/packages/BaseSelectMulti/src/index.vue +148 -148
  49. package/packages/BaseTextArea/index.js +7 -7
  50. package/packages/BaseTextArea/src/index.vue +178 -178
  51. package/packages/BaseTime/index.js +7 -7
  52. package/packages/BaseTime/src/index.vue +166 -166
  53. package/packages/BaseTool/index.js +7 -7
  54. package/packages/BaseTool/src/index.vue +349 -349
  55. package/packages/BaseToolStatus/index.js +7 -7
  56. package/packages/BaseToolStatus/src/ApprovalPersonsGroup.vue +41 -41
  57. package/packages/BaseToolStatus/src/index.vue +439 -439
  58. package/packages/BaseTreeSelect/index.js +8 -8
  59. package/packages/BaseTreeSelect/src/index.vue +437 -437
  60. package/packages/LeaveAMessage/index.js +7 -7
  61. package/packages/LeaveAMessage/src/index.vue +601 -601
  62. package/packages/index.js +194 -194
  63. package/packages/styles/default.css +78 -78
  64. package/packages/styles/default.less +84 -84
  65. package/packages/utils/api.js +107 -107
  66. package/packages/utils/auth.js +38 -38
  67. package/packages/utils/common.js +610 -610
  68. package/packages/utils/dom.js +181 -181
  69. package/packages/utils/enum.js +86 -86
  70. package/packages/utils/filters.js +476 -476
  71. package/packages/utils/gridFormat.js +66 -66
  72. package/packages/utils/msg.js +84 -84
  73. package/packages/utils/patchFiles.js +44 -44
  74. package/packages/utils/request.js +178 -178
  75. package/packages/utils/store.js +309 -309
  76. package/vue.config.js +59 -59
  77. package/dist/css/chunk-vendors.7f83d8f9.css +0 -8
  78. package/dist/css/index.7946d50b.css +0 -1
  79. package/dist/favicon.ico +0 -0
  80. package/dist/js/chunk-vendors.28fda91d.js +0 -340
  81. package/dist/js/index.49bc6add.js +0 -2
  82. package/lib/doway-coms.common.js +0 -120397
  83. package/lib/doway-coms.css +0 -1
  84. package/lib/doway-coms.umd.js +0 -120407
  85. package/lib/doway-coms.umd.min.js +0 -328
@@ -1,730 +1,752 @@
1
- <template>
2
- <div class="d-form-items">
3
- <!-- <div @click="hiddenDetail = !hiddenDetail">展开</div> -->
4
- <div
5
- class="d-form-item"
6
- v-for="col in internalComputedHiddenCols"
7
- :key="col.field"
8
- v-show="hiddenDetail ? colIndex === 0 : true"
9
- >
10
- <!-- 文本框输入控件 -->
11
- <BaseInput
12
- v-if="
13
- col.controlType === 'text' &&
14
- (col.isButtonShow == false || col.isButtonShow == undefined)
15
- "
16
- :label="col.title"
17
- v-model="row[col.field]"
18
- :edit="col.edit"
19
- :tooltip="col.tooltip"
20
- :rules="col.rules"
21
- @change="
22
- () => {
23
- inputChange(col)
24
- }
25
- "
26
- @blur="
27
- () => {
28
- blurChange(col)
29
- }
30
- "
31
- />
32
- <!-- 按钮弹出框输入控件 -->
33
- <!-- isButtonShow字段是额外添加字段,用于控制区分输入框控件 -->
34
- <BaseButton
35
- v-if="col.isButtonShow == true"
36
- v-model="row[col.field]"
37
- :colInfo="col"
38
- :row="row"
39
- :formRow="formRow"
40
- @preSearch="preSearch"
41
- @handleOk="
42
- (value) => {
43
- buttonHandleOk(col, value)
44
- }
45
- "
46
- />
47
- <!-- 文本框输入控件 -->
48
- <BaseTextArea
49
- v-if="
50
- col.controlType === 'textarea' &&
51
- (col.isButtonShow == false || col.isButtonShow == undefined)
52
- "
53
- :label="col.title"
54
- v-model="row[col.field]"
55
- :edit="col.edit"
56
- :tooltip="col.tooltip"
57
- :rules="col.rules"
58
- @change="
59
- () => {
60
- inputChange(col)
61
- }
62
- "
63
- />
64
- <!-- 数字输入 -->
65
- <BaseNumberInput
66
- v-if="
67
- col.controlType === 'number' &&
68
- (col.isButtonShow == false || col.isButtonShow == undefined)
69
- "
70
- :label="col.title"
71
- v-model="row[col.field]"
72
- :edit="col.edit"
73
- :rules="col.rules"
74
- :min="col.min"
75
- :tooltip="col.tooltip"
76
- :warnTooltip="col.warnTooltip"
77
- :max="col.max"
78
- :precision="col.precision"
79
- :percent="col.percent"
80
- :doFormat="col.doFormat"
81
- @change="
82
- () => {
83
- numberChange(col)
84
- }
85
- "
86
- @blur="
87
- () => {
88
- blurChange(col)
89
- }
90
- "
91
- />
92
- <BaseIntervalInput
93
- v-if="
94
- col.controlType === 'interval' &&
95
- (col.isButtonShow == false || col.isButtonShow == undefined)
96
- "
97
- :label="col.title"
98
- v-model="row[col.field]"
99
- :edit="col.edit"
100
- :rules="col.rules"
101
- :tooltip="col.tooltip"
102
- :displayType="col.displayType"
103
- :valueType="col.valueType"
104
- @change="
105
- () => {
106
- numberChange(col)
107
- }
108
- "
109
- />
110
- <!-- 日期选择控件 -->
111
- <BaseDate
112
- v-if="
113
- col.controlType === 'date' &&
114
- (col.isButtonShow == false || col.isButtonShow == undefined)
115
- "
116
- :label="col.title"
117
- v-model="row[col.field]"
118
- :edit="col.edit"
119
- :tooltip="col.tooltip"
120
- :pastDate="col.pastDate"
121
- :rules="col.rules"
122
- :disabledDateValue="col.disabledDateValue"
123
- @change="
124
- () => {
125
- inputChange(col)
126
- }
127
- "
128
- />
129
- <!-- 日期时间控件 -->
130
- <BaseDatetime
131
- v-if="
132
- col.controlType === 'datetime' &&
133
- (col.isButtonShow == false || col.isButtonShow == undefined)
134
- "
135
- :label="col.title"
136
- v-model="row[col.field]"
137
- :pastDate="col.pastDate"
138
- :tooltip="col.tooltip"
139
- :edit="col.edit"
140
- :rules="col.rules"
141
- :disabledDateValue="col.disabledDateValue"
142
- @change="
143
- () => {
144
- inputChange(col)
145
- }
146
- "
147
- />
148
- <!-- 单选框 -->
149
- <BaseCheckbox
150
- v-if="
151
- col.controlType === 'checkbox' &&
152
- (col.isButtonShow == false || col.isButtonShow == undefined)
153
- "
154
- :label="col.title"
155
- v-model="row[col.field]"
156
- :edit="col.edit"
157
- :tooltip="col.tooltip"
158
- :rules="col.rules"
159
- @change="
160
- (rowInfo) => {
161
- checkboxChange(col)
162
- }
163
- "
164
- />
165
- <BaseTime
166
- v-if="
167
- col.controlType === 'time' &&
168
- (col.isButtonShow == false || col.isButtonShow == undefined)
169
- "
170
- :label="col.title"
171
- v-model="row[col.field]"
172
- :tooltip="col.tooltip"
173
- :edit="col.edit"
174
- :rules="col.rules"
175
- @change="
176
- () => {
177
- inputChange(col)
178
- }
179
- "
180
- />
181
- <BaseDateWeek
182
- v-if="
183
- col.controlType === 'dateweek' &&
184
- (col.isButtonShow == false || col.isButtonShow == undefined)
185
- "
186
- :label="col.title"
187
- v-model="row[col.field]"
188
- :edit="col.edit"
189
- :tooltip="col.tooltip"
190
- :rules="col.rules"
191
- @change="
192
- () => {
193
- inputChange(col)
194
- }
195
- "
196
- />
197
- <BaseDateMonth
198
- v-if="
199
- col.controlType === 'datemonth' &&
200
- (col.isButtonShow == false || col.isButtonShow == undefined)
201
- "
202
- :label="col.title"
203
- v-model="row[col.field]"
204
- :edit="col.edit"
205
- :tooltip="col.tooltip"
206
- :rules="col.rules"
207
- @change="
208
- () => {
209
- inputChange(col)
210
- }
211
- "
212
- />
213
- <BaseSelect
214
- v-if="
215
- col.controlType === 'select' &&
216
- (col.isButtonShow == false || col.isButtonShow == undefined)
217
- "
218
- :label="col.title"
219
- v-model="row[col.field]"
220
- :edit="col.edit"
221
- :rules="col.rules"
222
- :tooltip="col.tooltip"
223
- :dataSource="col.dataSource"
224
- @change="
225
- (rowInfo) => {
226
- selectChange(col)
227
- }
228
- "
229
- />
230
- <BaseSelectMulti
231
- v-if="
232
- col.controlType === 'dropmulti' &&
233
- (col.isButtonShow == false || col.isButtonShow == undefined)
234
- "
235
- :label="col.title"
236
- v-model="row[col.field]"
237
- :edit="col.edit"
238
- :tooltip="col.tooltip"
239
- :rules="col.rules"
240
- @change="
241
- (rowInfo) => {
242
- selectMultiChange(col)
243
- }
244
- "
245
- :dataSource="col.dataSource"
246
- />
247
- <BasePulldown
248
- v-if="
249
- col.controlType === 'pulldown' &&
250
- (col.isButtonShow == false || col.isButtonShow == undefined)
251
- "
252
- :formRow="formRow"
253
- :isOld="isOld"
254
- :edit="col.edit"
255
- :defaultExpression="col.defaultExpression"
256
- :row="row"
257
- :api="col.api"
258
- :tooltip="col.tooltip"
259
- :optBtns="col.optBtns"
260
- :popupAddName="col.popupAddName"
261
- :popupAddPath="col.popupAddPath"
262
- @pulldownBtnClick="pulldownBtnClick"
263
- :label="col.title"
264
- :rules="col.rules"
265
- :route="col.route"
266
- v-model="row[col.field]"
267
- :field="col.field"
268
- :columns="col.columns"
269
- :pageSize="col.pageSize"
270
- :immediate="col.immediate"
271
- :allowAutoClear="col.allowAutoClear"
272
- @preSearch="preSearch"
273
- @selectChanged="
274
- (rowInfo) => {
275
- pullDownChange(col, rowInfo)
276
- }
277
- "
278
- :dataSource="col.dataSource"
279
- />
280
- <BaseTreeSelect
281
- v-if="
282
- col.controlType === 'treeSelect' &&
283
- (col.isButtonShow == false || col.isButtonShow == undefined)
284
- "
285
- :formRow="formRow"
286
- :api="col.api"
287
- :tooltip="col.tooltip"
288
- :row="row"
289
- :edit="col.edit"
290
- :label="col.title"
291
- :rules="col.rules"
292
- :route="col.route"
293
- :field="col.field"
294
- :columns="col.columns"
295
- @preSearch="preSearch"
296
- :replaceFields="col.replaceFields"
297
- :treeWidth="col.treeWidth"
298
- :width="col.width"
299
- :linkedField="col.linkedField"
300
- :showSearch="col.showSearch"
301
- :allowClear="col.allowClear"
302
- :placeholder="col.placeholder"
303
- :linkedTitle="col.linkedTitle"
304
- :method="col.method"
305
- v-model="row[col.field]"
306
- @change="
307
- () => {
308
- inputChange(col)
309
- }
310
- "
311
- />
312
- </div>
313
- <div class="d-form-item-ghost"></div>
314
- <div class="d-form-item-ghost"></div>
315
- <div class="d-form-item-ghost"></div>
316
- <div class="d-form-item-ghost"></div>
317
- </div>
318
- </template>
319
-
320
- <script>
321
- import { sysFormState, sysRowState } from '../../utils/enum'
322
- import BaseInput from '../../BaseInput/index'
323
- import BaseCheckbox from '../../BaseCheckbox/index'
324
- import BaseDate from '../../BaseDate/index'
325
- import BaseDatetime from '../../BaseDatetime/index'
326
- import BaseDateWeek from '../../BaseDateWeek/index'
327
- import BaseTextArea from '../../BaseTextArea/index'
328
- import BaseButton from '../../BaseButton/index'
329
- import BaseSelect from '../../BaseSelect/index'
330
- import BaseSelectMulti from '../../BaseSelectMulti/index'
331
- import BaseTime from '../../BaseTime/index'
332
- import BasePulldown from '../../BasePulldown/index'
333
- import BaseIntervalInput from '../../BaseIntervalInput/index'
334
- import BaseNumberInput from '../../BaseNumberInput/index'
335
- import BaseTreeSelect from '../../BaseTreeSelect'
336
-
337
- import moment from 'moment'
338
- import BaseDateMonth from '../../BaseDateMonth'
339
- export default {
340
- components: {
341
- BaseInput,
342
- BaseCheckbox,
343
- BaseDate,
344
- BaseDatetime,
345
- BaseDateWeek,
346
- BaseDateMonth,
347
- BaseTextArea,
348
- BaseButton,
349
- BaseSelect,
350
- BaseSelectMulti,
351
- BaseTime,
352
- BasePulldown,
353
- BaseIntervalInput,
354
- BaseNumberInput,
355
- BaseTreeSelect,
356
- },
357
- name: 'BaseForm',
358
- props: {
359
- updateDatas: {
360
- // 更新的数据
361
- type: Object,
362
- default: function () {
363
- return {}
364
- },
365
- },
366
- showLoading: {
367
- // 是否显示加载信息
368
- type: Boolean,
369
- default: false,
370
- },
371
- isOld: {
372
- // 是否老系统
373
- type: Boolean,
374
- default: false,
375
- },
376
- valueState: {
377
- type: Object,
378
- default: function () {
379
- return {}
380
- },
381
- },
382
- formState: {
383
- type: String,
384
- default: sysFormState.view,
385
- },
386
- formRow: {
387
- // 当前页面数据集
388
- type: Object,
389
- default: () => {
390
- return {}
391
- },
392
- },
393
- row: {
394
- // 当前行,如果是表单的话当前行和当前页面数据集是一样的
395
- type: Object,
396
- default: () => {
397
- return {}
398
- },
399
- },
400
- columns: {
401
- // 表格列信息
402
- type: Array,
403
- default: function () {
404
- return []
405
- },
406
- },
407
- dataName: {
408
- type: String,
409
- default: function () {
410
- return ''
411
- },
412
- },
413
- },
414
- computed: {
415
- internalComputedHiddenCols: function () {
416
- let vm = this
417
- return this.columns.filter((item) => {
418
- // if (item.isTitle === true) {
419
- // // vm.titleCol = item
420
- // return false
421
- // }
422
- // if (item.controlType === controlType.image) {
423
- // vm.logoCol = item
424
- // return false
425
- // }
426
- return item.visible === true
427
- })
428
- },
429
- },
430
- filters: {},
431
- data() {
432
- return {
433
- hiddenDetail: false,
434
- moment,
435
- editFormName: '',
436
- internalEdit: false,
437
- internalCols: [],
438
- internalValueState: {},
439
- internalFormState: sysFormState.view,
440
- rules: {},
441
- titleCols: [],
442
- logoCol: null,
443
- isShowEditForm: false,
444
- ref: '',
445
- }
446
- },
447
- watch: {
448
- // row: {
449
- // handler: function (newVal) {
450
- // },
451
- // deep: true
452
- // },
453
- // cols: {
454
- // handler: function (newVal) {
455
- // this.internalCols = newVal
456
- // },
457
- // deep: true
458
- // },
459
- // valueState: { // 表单值状态,更新,还是插入
460
- // handler: function (newVal) {
461
- // this.internalValueState = newVal
462
- // },
463
- // deep: true
464
- // },
465
- // formState: {
466
- // handler: function (newVal) {
467
- // this.internalFormState = newVal
468
- // this.setColState()
469
- // },
470
- // deep: true
471
- // }
472
- },
473
- created() {
474
- for (let i = 0; i < this.columns.length; i++) {
475
- // if (this.columns[i].isLogo === true) {
476
- // this.logoCol = this.columns[i]
477
- // continue
478
- // }
479
- // if (this.columns[i].isTitle === true) {
480
- // this.titleCols.push(this.columns[i])
481
- // continue
482
- // }
483
- if (this.columns[i].controlType === 'popup') {
484
- let formUrl =
485
- process.env[
486
- 'VUE_APP_' +
487
- this.columns[i].linkModuleData.objectService.toUpperCase() +
488
- '_SERVICE_URL'
489
- ] +
490
- '/' +
491
- this.columns[i].linkModuleData.objectApiVersion +
492
- '/' +
493
- this.columns[i].linkModuleData.objectName +
494
- '/'
495
- this.columns[i]['api'] = this.columns[i].linkModuleData.objectApiRoute
496
- ? formUrl + this.columns[i].linkModuleData.objectApiRoute
497
- : formUrl + 'Search'
498
-
499
- this.columns[i]['columns'] = {}
500
-
501
- for (
502
- let x = 0;
503
- x < this.columns[i].linkModuleData.moduleFields.length;
504
- x++
505
- ) {
506
- let tempField = this.columns[i].linkModuleData.moduleFields[x]
507
- this.columns[i]['columns'][tempField.field] = {
508
- title: tempField.caption,
509
- width: tempField.width,
510
- visible: tempField.visible,
511
- linkField: tempField.linkValueField,
512
- filter: tempField.isFilter,
513
- }
514
- if (tempField.field === this.columns[i].linkCaptionField) {
515
- this.columns[i]['columns'][tempField.field].linkField =
516
- this.columns[i].field
517
- this.columns[i]['columns'][tempField.field].filter = true
518
- }
519
- }
520
- }
521
-
522
- // this.columns[i]['rules'] = {}
523
- // if (this.columns[i].isRequire === true) {
524
- // this.columns[i].rules['required'] = true
525
- // }
526
- // if (this.columns[i].maxLength) {
527
- // this.columns[i].rules['length'] = [0, this.columns[i].maxLength]
528
- // }
529
- }
530
- },
531
-
532
- mounted() {
533
- //let letterLength = this.$refs.content.value
534
- //letterLength = this.$refs['content'].innerText.substr(0, 6) + '...'
535
- window.addEventListener('beforeunload', (e) => this.beforeunloadHandler(e))
536
- },
537
- destroyed() {
538
- window.removeEventListener('beforeunload', (e) =>
539
- this.beforeunloadHandler(e)
540
- )
541
- },
542
- activated() {},
543
- methods: {
544
- preSearch(searchInfo, repeatRowInfo) {
545
- this.$emit('preSearch', searchInfo, repeatRowInfo)
546
- },
547
- beforeunloadHandler(e) {
548
- if (this.formState !== 'view') {
549
- e = e || window.event
550
- e.returnValue = '提示'
551
- return confirm('确认退出')
552
- } else {
553
- return
554
- }
555
- },
556
- pulldownBtnClick(btnInfo) {
557
- this.$emit('pulldownBtnClick', btnInfo)
558
- },
559
- showToolTip() {},
560
- fieldCaptionClick(col) {
561
- // 下拉框
562
- if (
563
- col.linkModuleData &&
564
- col.linkModuleData.linkModuleId &&
565
- col.linkModuleData.linkModuleOperate.indexOf(sysFormState.view) >= 0
566
- ) {
567
- // 查找模块信息
568
- let linkModule = this.$store.getters.addRouters.filter((filterItem) => {
569
- return (
570
- filterItem.meta &&
571
- filterItem.meta.moduleId === col.linkModuleData.linkModuleId
572
- )
573
- })
574
- if (linkModule.length > 0) {
575
- this.$router.pushRoute({
576
- name: linkModule[0].name,
577
- query: { id: this.row[col.field] },
578
- })
579
- }
580
- }
581
- },
582
- // selectChange(col) {
583
- // if (col.field.indexOf('.') < 0) {
584
- // this.updateDatas[col.field] = this.row[col.field]
585
- // }
586
- // if (
587
- // this.row['sysRowState'] === sysRowState.add ||
588
- // this.row['sysRowState'] === sysRowState.update
589
- // ) {
590
- // return
591
- // }
592
- // this.row['sysRowState'] = sysRowState.update
593
- // },
594
- pullDownChange(colInfo, row) {
595
- this.$emit('change', colInfo)
596
- },
597
- selectMultiChange(colInfo, row) {
598
- this.$emit('change', colInfo)
599
- },
600
- selectChange(colInfo) {
601
- this.$emit('change', colInfo)
602
- },
603
- checkboxChange(colInfo) {
604
- this.$emit('change', colInfo)
605
- },
606
- checkBoxChange(col) {
607
- if (col.field.indexOf('.') < 0) {
608
- this.updateDatas[col.field] = this.row[col.field]
609
- }
610
- this.$emit('change', col)
611
- if (
612
- this.row['sysRowState'] === sysRowState.add ||
613
- this.row['sysRowState'] === sysRowState.update
614
- ) {
615
- return
616
- }
617
- this.row['sysRowState'] = sysRowState.update
618
- },
619
- dateChange(col) {
620
- if (col.field.indexOf('.') < 0) {
621
- this.updateDatas[col.field] = this.row[col.field]
622
- }
623
- this.$emit('change', col)
624
- if (
625
- this.row['sysRowState'] === sysRowState.add ||
626
- this.row['sysRowState'] === sysRowState.update
627
- ) {
628
- return
629
- }
630
- this.row['sysRowState'] = sysRowState.update
631
- },
632
- inputChange(colInfo) {
633
- // 输入框改变
634
- this.$emit('change', colInfo)
635
- },
636
- // 按钮弹出组件返回输入的值
637
- buttonHandleOk(colInfo, value) {
638
- // 按钮弹出确定改变内容改变
639
- this.$emit('buttonHandleOk', colInfo, value)
640
- },
641
- blurChange(colInfo) {
642
- // 输入框失去焦点
643
- this.$emit('blur', colInfo)
644
- },
645
- numberChange(colInfo) {
646
- // 输入框改变
647
- this.$emit('change', colInfo)
648
- },
649
- longtimeChange(data, col) {
650
- this.row[col.field] = data
651
- this.$emit('change', col)
652
- if (
653
- this.row['sysRowState'] === sysRowState.add ||
654
- this.row['sysRowState'] === sysRowState.update
655
- ) {
656
- return
657
- }
658
- this.row['sysRowState'] = sysRowState.update
659
- },
660
- changeControlType(field, controlType) {
661
- let col = this.internalComputedHiddenCols.find(
662
- (col) => col.field === field
663
- )
664
- col.controlType = controlType
665
- },
666
- },
667
- }
668
- </script>
669
-
670
- <style lang="less" scoped>
671
- .form-head {
672
- display: flex;
673
- flex-flow: row wrap;
674
- margin-bottom: 10px;
675
- .form-title {
676
- margin-left: 10px;
677
- }
678
- }
679
- .input-span {
680
- // line-height: 33px;
681
- color: #0b0b0b;
682
- font-size: 12px;
683
- font-weight: normal;
684
- overflow: hidden;
685
- text-overflow: ellipsis;
686
- -o-text-overflow: ellipsis;
687
- display: inline-block;
688
- width: 100%;
689
- height: 32.8px;
690
- white-space: nowrap;
691
- // font-family: "Arial", "Microsoft YaHei";
692
- }
693
- .title-first-input {
694
- width: 200px;
695
- height: 25px;
696
- font-size: 15px;
697
- margin-left: 10px;
698
- font-weight: 500;
699
- }
700
- .title-second-input {
701
- width: 200px;
702
- height: 25px;
703
- font-size: 15px;
704
- margin-left: 10px;
705
- font-weight: 500;
706
- }
707
- .title-first-value {
708
- width: 200px;
709
- height: 40px;
710
- font-size: 24px;
711
- margin-left: 10px;
712
- font-weight: 700;
713
- }
714
- .title-second-value {
715
- width: 200px;
716
- height: 26px;
717
- font-size: 18px;
718
- margin-left: 10px;
719
- font-weight: 600;
720
- }
721
- .option:hover {
722
- background-color: #219bff;
723
- }
724
- .form {
725
- margin-left: 30px;
726
- }
727
- </style>
728
- <style lang="less">
729
- @import '../../styles/default.less';
730
- </style>
1
+ <template>
2
+ <div class="d-form-items">
3
+ <!-- <div @click="hiddenDetail = !hiddenDetail">展开</div> -->
4
+ <div
5
+ class="d-form-item"
6
+ v-for="col in internalComputedHiddenCols"
7
+ :key="col.field"
8
+ v-show="hiddenDetail ? colIndex === 0 : true"
9
+ >
10
+ <!-- 文本框输入控件 -->
11
+ <BaseInput
12
+ v-if="
13
+ col.controlType === 'text' &&
14
+ (col.isButtonShow == false || col.isButtonShow == undefined)
15
+ "
16
+ :label="col.title"
17
+ v-model="row[col.field]"
18
+ :edit="col.edit"
19
+ :tooltip="col.tooltip"
20
+ :rules="col.rules"
21
+ @change="
22
+ () => {
23
+ inputChange(col)
24
+ }
25
+ "
26
+ @blur="
27
+ () => {
28
+ blurChange(col)
29
+ }
30
+ "
31
+ />
32
+ <!-- 按钮弹出框输入控件 -->
33
+ <!-- isButtonShow字段是额外添加字段,用于控制区分输入框控件 -->
34
+ <BaseButton
35
+ v-if="col.isButtonShow == true"
36
+ v-model="row[col.field]"
37
+ :colInfo="col"
38
+ :row="row"
39
+ :formRow="formRow"
40
+ @preSearch="preSearch"
41
+ @handleOk="
42
+ (value) => {
43
+ buttonHandleOk(col, value)
44
+ }
45
+ "
46
+ />
47
+ <!-- 文本框输入控件 -->
48
+ <BaseTextArea
49
+ v-if="
50
+ col.controlType === 'textarea' &&
51
+ (col.isButtonShow == false || col.isButtonShow == undefined)
52
+ "
53
+ :label="col.title"
54
+ v-model="row[col.field]"
55
+ :edit="col.edit"
56
+ :tooltip="col.tooltip"
57
+ :rules="col.rules"
58
+ @change="
59
+ () => {
60
+ inputChange(col)
61
+ }
62
+ "
63
+ />
64
+ <!-- 数字输入 -->
65
+ <BaseNumberInput
66
+ v-if="
67
+ col.controlType === 'number' &&
68
+ (col.isButtonShow == false || col.isButtonShow == undefined)
69
+ "
70
+ :label="col.title"
71
+ v-model="row[col.field]"
72
+ :edit="col.edit"
73
+ :rules="col.rules"
74
+ :min="col.min"
75
+ :tooltip="col.tooltip"
76
+ :warnTooltip="col.warnTooltip"
77
+ :max="col.max"
78
+ :precision="col.precision"
79
+ :percent="col.percent"
80
+ :doFormat="col.doFormat"
81
+ @change="
82
+ () => {
83
+ numberChange(col)
84
+ }
85
+ "
86
+ @blur="
87
+ () => {
88
+ blurChange(col)
89
+ }
90
+ "
91
+ />
92
+ <BaseIntervalInput
93
+ v-if="
94
+ col.controlType === 'interval' &&
95
+ (col.isButtonShow == false || col.isButtonShow == undefined)
96
+ "
97
+ :label="col.title"
98
+ v-model="row[col.field]"
99
+ :edit="col.edit"
100
+ :rules="col.rules"
101
+ :tooltip="col.tooltip"
102
+ :displayType="col.displayType"
103
+ :valueType="col.valueType"
104
+ @change="
105
+ () => {
106
+ numberChange(col)
107
+ }
108
+ "
109
+ />
110
+ <!-- 日期选择控件 -->
111
+ <BaseDate
112
+ v-if="
113
+ col.controlType === 'date' &&
114
+ (col.isButtonShow == false || col.isButtonShow == undefined)
115
+ "
116
+ :label="col.title"
117
+ v-model="row[col.field]"
118
+ :edit="col.edit"
119
+ :tooltip="col.tooltip"
120
+ :pastDate="col.pastDate"
121
+ :rules="col.rules"
122
+ :disabledDateValue="col.disabledDateValue"
123
+ @change="
124
+ () => {
125
+ inputChange(col)
126
+ }
127
+ "
128
+ />
129
+ <!-- 日期时间控件 -->
130
+ <BaseDatetime
131
+ v-if="
132
+ col.controlType === 'datetime' &&
133
+ (col.isButtonShow == false || col.isButtonShow == undefined)
134
+ "
135
+ :label="col.title"
136
+ v-model="row[col.field]"
137
+ :pastDate="col.pastDate"
138
+ :tooltip="col.tooltip"
139
+ :edit="col.edit"
140
+ :rules="col.rules"
141
+ :disabledDateValue="col.disabledDateValue"
142
+ @change="
143
+ () => {
144
+ inputChange(col)
145
+ }
146
+ "
147
+ />
148
+ <!-- 单选框 -->
149
+ <BaseCheckbox
150
+ v-if="
151
+ col.controlType === 'checkbox' &&
152
+ (col.isButtonShow == false || col.isButtonShow == undefined)
153
+ "
154
+ :label="col.title"
155
+ v-model="row[col.field]"
156
+ :edit="col.edit"
157
+ :tooltip="col.tooltip"
158
+ :rules="col.rules"
159
+ @change="
160
+ (rowInfo) => {
161
+ checkboxChange(col)
162
+ }
163
+ "
164
+ />
165
+ <BaseTime
166
+ v-if="
167
+ col.controlType === 'time' &&
168
+ (col.isButtonShow == false || col.isButtonShow == undefined)
169
+ "
170
+ :label="col.title"
171
+ v-model="row[col.field]"
172
+ :tooltip="col.tooltip"
173
+ :edit="col.edit"
174
+ :rules="col.rules"
175
+ @change="
176
+ () => {
177
+ inputChange(col)
178
+ }
179
+ "
180
+ />
181
+ <BaseDateWeek
182
+ v-if="
183
+ col.controlType === 'dateweek' &&
184
+ (col.isButtonShow == false || col.isButtonShow == undefined)
185
+ "
186
+ :label="col.title"
187
+ v-model="row[col.field]"
188
+ :edit="col.edit"
189
+ :tooltip="col.tooltip"
190
+ :rules="col.rules"
191
+ @change="
192
+ () => {
193
+ inputChange(col)
194
+ }
195
+ "
196
+ />
197
+ <BaseDateMonth
198
+ v-if="
199
+ col.controlType === 'datemonth' &&
200
+ (col.isButtonShow == false || col.isButtonShow == undefined)
201
+ "
202
+ :label="col.title"
203
+ v-model="row[col.field]"
204
+ :edit="col.edit"
205
+ :tooltip="col.tooltip"
206
+ :rules="col.rules"
207
+ @change="
208
+ () => {
209
+ inputChange(col)
210
+ }
211
+ "
212
+ />
213
+ <BaseSelect
214
+ v-if="
215
+ col.controlType === 'select' &&
216
+ (col.isButtonShow == false || col.isButtonShow == undefined)
217
+ "
218
+ :label="col.title"
219
+ v-model="row[col.field]"
220
+ :edit="col.edit"
221
+ :rules="col.rules"
222
+ :tooltip="col.tooltip"
223
+ :dataSource="col.dataSource"
224
+ @change="
225
+ (rowInfo) => {
226
+ selectChange(col)
227
+ }
228
+ "
229
+ />
230
+ <BaseSelectMulti
231
+ v-if="
232
+ col.controlType === 'dropmulti' &&
233
+ (col.isButtonShow == false || col.isButtonShow == undefined)
234
+ "
235
+ :label="col.title"
236
+ v-model="row[col.field]"
237
+ :edit="col.edit"
238
+ :tooltip="col.tooltip"
239
+ :rules="col.rules"
240
+ @change="
241
+ (rowInfo) => {
242
+ selectMultiChange(col)
243
+ }
244
+ "
245
+ :dataSource="col.dataSource"
246
+ />
247
+ <BasePulldown
248
+ v-if="
249
+ col.controlType === 'pulldown' &&
250
+ (col.isButtonShow == false || col.isButtonShow == undefined)
251
+ "
252
+ :formRow="formRow"
253
+ :isOld="isOld"
254
+ :edit="col.edit"
255
+ :defaultExpression="col.defaultExpression"
256
+ :row="row"
257
+ :api="col.api"
258
+ :tooltip="col.tooltip"
259
+ :optBtns="col.optBtns"
260
+ :popupAddName="col.popupAddName"
261
+ :popupAddPath="col.popupAddPath"
262
+ @pulldownBtnClick="pulldownBtnClick"
263
+ :label="col.title"
264
+ :rules="col.rules"
265
+ :route="col.route"
266
+ v-model="row[col.field]"
267
+ :field="col.field"
268
+ :columns="col.columns"
269
+ :pageSize="col.pageSize"
270
+ :immediate="col.immediate"
271
+ :allowAutoClear="col.allowAutoClear"
272
+ @preSearch="preSearch"
273
+ @selectChanged="
274
+ (rowInfo) => {
275
+ pullDownChange(col, rowInfo)
276
+ }
277
+ "
278
+ @confirmMultiSelect="
279
+ (pulldownView, selectRows) =>
280
+ pulldownMultiSelect(col, pulldownView, selectRows)
281
+ "
282
+ :dataSource="col.dataSource"
283
+ :isMultiSelect="col.isMultiSelect"
284
+ />
285
+ <BaseTreeSelect
286
+ v-if="
287
+ col.controlType === 'treeSelect' &&
288
+ (col.isButtonShow == false || col.isButtonShow == undefined)
289
+ "
290
+ :formRow="formRow"
291
+ :api="col.api"
292
+ :tooltip="col.tooltip"
293
+ :row="row"
294
+ :edit="col.edit"
295
+ :label="col.title"
296
+ :rules="col.rules"
297
+ :route="col.route"
298
+ :field="col.field"
299
+ :columns="col.columns"
300
+ @preSearch="preSearch"
301
+ :replaceFields="col.replaceFields"
302
+ :treeWidth="col.treeWidth"
303
+ :width="col.width"
304
+ :linkedField="col.linkedField"
305
+ :showSearch="col.showSearch"
306
+ :allowClear="col.allowClear"
307
+ :placeholder="col.placeholder"
308
+ :linkedTitle="col.linkedTitle"
309
+ :method="col.method"
310
+ v-model="row[col.field]"
311
+ @change="
312
+ () => {
313
+ inputChange(col)
314
+ }
315
+ "
316
+ />
317
+ </div>
318
+ <div class="d-form-item-ghost"></div>
319
+ <div class="d-form-item-ghost"></div>
320
+ <div class="d-form-item-ghost"></div>
321
+ <div class="d-form-item-ghost"></div>
322
+ </div>
323
+ </template>
324
+
325
+ <script>
326
+ import { sysFormState, sysRowState } from '../../utils/enum'
327
+ import BaseInput from '../../BaseInput/index'
328
+ import BaseCheckbox from '../../BaseCheckbox/index'
329
+ import BaseDate from '../../BaseDate/index'
330
+ import BaseDatetime from '../../BaseDatetime/index'
331
+ import BaseDateWeek from '../../BaseDateWeek/index'
332
+ import BaseTextArea from '../../BaseTextArea/index'
333
+ import BaseButton from '../../BaseButton/index'
334
+ import BaseSelect from '../../BaseSelect/index'
335
+ import BaseSelectMulti from '../../BaseSelectMulti/index'
336
+ import BaseTime from '../../BaseTime/index'
337
+ import BasePulldown from '../../BasePulldown/index'
338
+ import BaseIntervalInput from '../../BaseIntervalInput/index'
339
+ import BaseNumberInput from '../../BaseNumberInput/index'
340
+ import BaseTreeSelect from '../../BaseTreeSelect'
341
+
342
+ import moment from 'moment'
343
+ import BaseDateMonth from '../../BaseDateMonth'
344
+ export default {
345
+ components: {
346
+ BaseInput,
347
+ BaseCheckbox,
348
+ BaseDate,
349
+ BaseDatetime,
350
+ BaseDateWeek,
351
+ BaseDateMonth,
352
+ BaseTextArea,
353
+ BaseButton,
354
+ BaseSelect,
355
+ BaseSelectMulti,
356
+ BaseTime,
357
+ BasePulldown,
358
+ BaseIntervalInput,
359
+ BaseNumberInput,
360
+ BaseTreeSelect,
361
+ },
362
+ name: 'BaseForm',
363
+ props: {
364
+ updateDatas: {
365
+ // 更新的数据
366
+ type: Object,
367
+ default: function () {
368
+ return {}
369
+ },
370
+ },
371
+ showLoading: {
372
+ // 是否显示加载信息
373
+ type: Boolean,
374
+ default: false,
375
+ },
376
+ isOld: {
377
+ // 是否老系统
378
+ type: Boolean,
379
+ default: false,
380
+ },
381
+ valueState: {
382
+ type: Object,
383
+ default: function () {
384
+ return {}
385
+ },
386
+ },
387
+ formState: {
388
+ type: String,
389
+ default: sysFormState.view,
390
+ },
391
+ formRow: {
392
+ // 当前页面数据集
393
+ type: Object,
394
+ default: () => {
395
+ return {}
396
+ },
397
+ },
398
+ row: {
399
+ // 当前行,如果是表单的话当前行和当前页面数据集是一样的
400
+ type: Object,
401
+ default: () => {
402
+ return {}
403
+ },
404
+ },
405
+ columns: {
406
+ // 表格列信息
407
+ type: Array,
408
+ default: function () {
409
+ return []
410
+ },
411
+ },
412
+ dataName: {
413
+ type: String,
414
+ default: function () {
415
+ return ''
416
+ },
417
+ },
418
+ },
419
+ computed: {
420
+ internalComputedHiddenCols: function () {
421
+ let vm = this
422
+ return this.columns.filter((item) => {
423
+ // if (item.isTitle === true) {
424
+ // // vm.titleCol = item
425
+ // return false
426
+ // }
427
+ // if (item.controlType === controlType.image) {
428
+ // vm.logoCol = item
429
+ // return false
430
+ // }
431
+ return item.visible === true
432
+ })
433
+ },
434
+ },
435
+ filters: {},
436
+ data() {
437
+ return {
438
+ hiddenDetail: false,
439
+ moment,
440
+ editFormName: '',
441
+ internalEdit: false,
442
+ internalCols: [],
443
+ internalValueState: {},
444
+ internalFormState: sysFormState.view,
445
+ rules: {},
446
+ titleCols: [],
447
+ logoCol: null,
448
+ isShowEditForm: false,
449
+ ref: '',
450
+ }
451
+ },
452
+ watch: {
453
+ // row: {
454
+ // handler: function (newVal) {
455
+ // },
456
+ // deep: true
457
+ // },
458
+ // cols: {
459
+ // handler: function (newVal) {
460
+ // this.internalCols = newVal
461
+ // },
462
+ // deep: true
463
+ // },
464
+ // valueState: { // 表单值状态,更新,还是插入
465
+ // handler: function (newVal) {
466
+ // this.internalValueState = newVal
467
+ // },
468
+ // deep: true
469
+ // },
470
+ // formState: {
471
+ // handler: function (newVal) {
472
+ // this.internalFormState = newVal
473
+ // this.setColState()
474
+ // },
475
+ // deep: true
476
+ // }
477
+ },
478
+ created() {
479
+ for (let i = 0; i < this.columns.length; i++) {
480
+ // if (this.columns[i].isLogo === true) {
481
+ // this.logoCol = this.columns[i]
482
+ // continue
483
+ // }
484
+ // if (this.columns[i].isTitle === true) {
485
+ // this.titleCols.push(this.columns[i])
486
+ // continue
487
+ // }
488
+ if (this.columns[i].controlType === 'popup') {
489
+ let formUrl =
490
+ process.env[
491
+ 'VUE_APP_' +
492
+ this.columns[i].linkModuleData.objectService.toUpperCase() +
493
+ '_SERVICE_URL'
494
+ ] +
495
+ '/' +
496
+ this.columns[i].linkModuleData.objectApiVersion +
497
+ '/' +
498
+ this.columns[i].linkModuleData.objectName +
499
+ '/'
500
+ this.columns[i]['api'] = this.columns[i].linkModuleData.objectApiRoute
501
+ ? formUrl + this.columns[i].linkModuleData.objectApiRoute
502
+ : formUrl + 'Search'
503
+
504
+ this.columns[i]['columns'] = {}
505
+
506
+ for (
507
+ let x = 0;
508
+ x < this.columns[i].linkModuleData.moduleFields.length;
509
+ x++
510
+ ) {
511
+ let tempField = this.columns[i].linkModuleData.moduleFields[x]
512
+ this.columns[i]['columns'][tempField.field] = {
513
+ title: tempField.caption,
514
+ width: tempField.width,
515
+ visible: tempField.visible,
516
+ linkField: tempField.linkValueField,
517
+ filter: tempField.isFilter,
518
+ }
519
+ if (tempField.field === this.columns[i].linkCaptionField) {
520
+ this.columns[i]['columns'][tempField.field].linkField =
521
+ this.columns[i].field
522
+ this.columns[i]['columns'][tempField.field].filter = true
523
+ }
524
+ }
525
+ }
526
+
527
+ // this.columns[i]['rules'] = {}
528
+ // if (this.columns[i].isRequire === true) {
529
+ // this.columns[i].rules['required'] = true
530
+ // }
531
+ // if (this.columns[i].maxLength) {
532
+ // this.columns[i].rules['length'] = [0, this.columns[i].maxLength]
533
+ // }
534
+ }
535
+ },
536
+
537
+ mounted() {
538
+ //let letterLength = this.$refs.content.value
539
+ //letterLength = this.$refs['content'].innerText.substr(0, 6) + '...'
540
+ window.addEventListener('beforeunload', (e) => this.beforeunloadHandler(e))
541
+ },
542
+ destroyed() {
543
+ window.removeEventListener('beforeunload', (e) =>
544
+ this.beforeunloadHandler(e)
545
+ )
546
+ },
547
+ activated() {},
548
+ methods: {
549
+ preSearch(searchInfo, repeatRowInfo) {
550
+ this.$emit('preSearch', searchInfo, repeatRowInfo)
551
+ },
552
+ beforeunloadHandler(e) {
553
+ if (this.formState !== 'view') {
554
+ e = e || window.event
555
+ e.returnValue = '提示'
556
+ return confirm('确认退出')
557
+ } else {
558
+ return
559
+ }
560
+ },
561
+ pulldownBtnClick(btnInfo) {
562
+ this.$emit('pulldownBtnClick', btnInfo)
563
+ },
564
+ showToolTip() {},
565
+ fieldCaptionClick(col) {
566
+ // 下拉框
567
+ if (
568
+ col.linkModuleData &&
569
+ col.linkModuleData.linkModuleId &&
570
+ col.linkModuleData.linkModuleOperate.indexOf(sysFormState.view) >= 0
571
+ ) {
572
+ // 查找模块信息
573
+ let linkModule = this.$store.getters.addRouters.filter((filterItem) => {
574
+ return (
575
+ filterItem.meta &&
576
+ filterItem.meta.moduleId === col.linkModuleData.linkModuleId
577
+ )
578
+ })
579
+ if (linkModule.length > 0) {
580
+ this.$router.pushRoute({
581
+ name: linkModule[0].name,
582
+ query: { id: this.row[col.field] },
583
+ })
584
+ }
585
+ }
586
+ },
587
+ // selectChange(col) {
588
+ // if (col.field.indexOf('.') < 0) {
589
+ // this.updateDatas[col.field] = this.row[col.field]
590
+ // }
591
+ // if (
592
+ // this.row['sysRowState'] === sysRowState.add ||
593
+ // this.row['sysRowState'] === sysRowState.update
594
+ // ) {
595
+ // return
596
+ // }
597
+ // this.row['sysRowState'] = sysRowState.update
598
+ // },
599
+ pullDownChange(colInfo, row) {
600
+ this.$emit('change', colInfo)
601
+ },
602
+ selectMultiChange(colInfo, row) {
603
+ this.$emit('change', colInfo)
604
+ },
605
+ selectChange(colInfo) {
606
+ this.$emit('change', colInfo)
607
+ },
608
+ checkboxChange(colInfo) {
609
+ this.$emit('change', colInfo)
610
+ },
611
+ checkBoxChange(col) {
612
+ if (col.field.indexOf('.') < 0) {
613
+ this.updateDatas[col.field] = this.row[col.field]
614
+ }
615
+ this.$emit('change', col)
616
+ if (
617
+ this.row['sysRowState'] === sysRowState.add ||
618
+ this.row['sysRowState'] === sysRowState.update
619
+ ) {
620
+ return
621
+ }
622
+ this.row['sysRowState'] = sysRowState.update
623
+ },
624
+ dateChange(col) {
625
+ if (col.field.indexOf('.') < 0) {
626
+ this.updateDatas[col.field] = this.row[col.field]
627
+ }
628
+ this.$emit('change', col)
629
+ if (
630
+ this.row['sysRowState'] === sysRowState.add ||
631
+ this.row['sysRowState'] === sysRowState.update
632
+ ) {
633
+ return
634
+ }
635
+ this.row['sysRowState'] = sysRowState.update
636
+ },
637
+ inputChange(colInfo) {
638
+ // 输入框改变
639
+ this.$emit('change', colInfo)
640
+ },
641
+ // 按钮弹出组件返回输入的值
642
+ buttonHandleOk(colInfo, value) {
643
+ // 按钮弹出确定改变内容改变
644
+ this.$emit('buttonHandleOk', colInfo, value)
645
+ },
646
+ blurChange(colInfo) {
647
+ // 输入框失去焦点
648
+ this.$emit('blur', colInfo)
649
+ },
650
+ numberChange(colInfo) {
651
+ // 输入框改变
652
+ this.$emit('change', colInfo)
653
+ },
654
+ longtimeChange(data, col) {
655
+ this.row[col.field] = data
656
+ this.$emit('change', col)
657
+ if (
658
+ this.row['sysRowState'] === sysRowState.add ||
659
+ this.row['sysRowState'] === sysRowState.update
660
+ ) {
661
+ return
662
+ }
663
+ this.row['sysRowState'] = sysRowState.update
664
+ },
665
+ changeControlType(field, controlType) {
666
+ let col = this.internalComputedHiddenCols.find(
667
+ (col) => col.field === field
668
+ )
669
+ col.controlType = controlType
670
+ },
671
+ pulldownMultiSelect(col,pulldownView,selectRows){
672
+ //第一行选中
673
+ // pulldownView.setLinkValue(selectRows[0], this.row)
674
+
675
+ // this.cellValueChange(scope)
676
+ // let vm = this
677
+ // for (let i = 1; i < selectRows.length; i++) {
678
+ // let tempSelectRow = selectRows[i]
679
+ // this.$emit('defaultRow', (newRow) => {
680
+ // pulldownView.setLinkValue(tempSelectRow, newRow)
681
+ // vm.insertAt(newRow, -1, false, (insertRow) => {
682
+ // vm.cellValueChange({ row: insertRow, column: scope.column })
683
+ // })
684
+ // })
685
+ // }
686
+ this.$emit('selectRows', selectRows)
687
+ }
688
+ },
689
+ }
690
+ </script>
691
+
692
+ <style lang="less" scoped>
693
+ .form-head {
694
+ display: flex;
695
+ flex-flow: row wrap;
696
+ margin-bottom: 10px;
697
+ .form-title {
698
+ margin-left: 10px;
699
+ }
700
+ }
701
+ .input-span {
702
+ // line-height: 33px;
703
+ color: #0b0b0b;
704
+ font-size: 12px;
705
+ font-weight: normal;
706
+ overflow: hidden;
707
+ text-overflow: ellipsis;
708
+ -o-text-overflow: ellipsis;
709
+ display: inline-block;
710
+ width: 100%;
711
+ height: 32.8px;
712
+ white-space: nowrap;
713
+ // font-family: "Arial", "Microsoft YaHei";
714
+ }
715
+ .title-first-input {
716
+ width: 200px;
717
+ height: 25px;
718
+ font-size: 15px;
719
+ margin-left: 10px;
720
+ font-weight: 500;
721
+ }
722
+ .title-second-input {
723
+ width: 200px;
724
+ height: 25px;
725
+ font-size: 15px;
726
+ margin-left: 10px;
727
+ font-weight: 500;
728
+ }
729
+ .title-first-value {
730
+ width: 200px;
731
+ height: 40px;
732
+ font-size: 24px;
733
+ margin-left: 10px;
734
+ font-weight: 700;
735
+ }
736
+ .title-second-value {
737
+ width: 200px;
738
+ height: 26px;
739
+ font-size: 18px;
740
+ margin-left: 10px;
741
+ font-weight: 600;
742
+ }
743
+ .option:hover {
744
+ background-color: #219bff;
745
+ }
746
+ .form {
747
+ margin-left: 30px;
748
+ }
749
+ </style>
750
+ <style lang="less">
751
+ @import '../../styles/default.less';
752
+ </style>