cloud-web-corejs 1.0.93 → 1.0.95
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.
- package/package.json +39 -30
- package/src/components/wf/content.vue +2 -0
- package/src/components/wf/setCandidateDialog.vue +1 -0
- package/src/components/wf/wf.js +3 -1
- package/src/components/xform/form-designer/designer.js +1 -1
- package/src/components/xform/form-designer/form-widget/container-widget/data-table-mixin.js +2 -1
- package/src/components/xform/form-designer/form-widget/dialog/searchFormDialog.vue +3 -0
- package/src/components/xform/form-designer/form-widget/field-widget/checkbox-widget.vue +1 -1
- package/src/components/xform/form-designer/form-widget/field-widget/dropdown-item-widget.vue +77 -0
- package/src/components/xform/form-designer/form-widget/field-widget/dropdown-menu-widget.vue +106 -0
- package/src/components/xform/form-designer/form-widget/field-widget/fieldMixin.js +7 -2
- package/src/components/xform/form-designer/form-widget/field-widget/mixins/vabsearch-mixin.js +176 -0
- package/src/components/xform/form-designer/form-widget/field-widget/multiSearch-widget.vue +53 -0
- package/src/components/xform/form-designer/form-widget/field-widget/number-widget.vue +1 -1
- package/src/components/xform/form-designer/form-widget/field-widget/project-tag-widget.vue +5 -2
- package/src/components/xform/form-designer/form-widget/field-widget/radio-widget.vue +1 -1
- package/src/components/xform/form-designer/form-widget/field-widget/search_button-widget.vue +1 -1
- package/src/components/xform/form-designer/form-widget/field-widget/select-widget.vue +2 -1
- package/src/components/xform/form-designer/form-widget/field-widget/singerSearch-widget.vue +53 -0
- package/src/components/xform/form-designer/form-widget/field-widget/status-widget.vue +3 -2
- package/src/components/xform/form-designer/form-widget/field-widget/vabSearch-widget.vue +2 -170
- package/src/components/xform/form-designer/indexMixin.js +1 -1
- package/src/components/xform/form-designer/setting-panel/form-setting.vue +263 -38
- package/src/components/xform/form-designer/setting-panel/index.vue +4 -0
- package/src/components/xform/form-designer/setting-panel/indexMixin.js +1 -1
- package/src/components/xform/form-designer/setting-panel/option-items-setting.vue +8 -3
- package/src/components/xform/form-designer/setting-panel/property-editor/a-link-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/columnRenderDialog.vue +3 -2
- package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/data-table-editor.vue +0 -8
- package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/table-column-dialog.vue +111 -12
- package/src/components/xform/form-designer/setting-panel/property-editor/container-list-h5/list-h5-editor.vue +0 -8
- package/src/components/xform/form-designer/setting-panel/property-editor/field-button/search-dialog-event-editor.vue +26 -8
- package/src/components/xform/form-designer/setting-panel/property-editor/field-dropdown-menu/dropdown-item-editor.vue +21 -0
- package/src/components/xform/form-designer/setting-panel/property-editor/field-dropdown-menu/dropdown-menu-editor.vue +59 -0
- package/src/components/xform/form-designer/setting-panel/property-editor/field-import-button/import-button-editor.vue +7 -2
- package/src/components/xform/form-designer/setting-panel/property-editor/field-import-button/import2-button-editor.vue +8 -2
- package/src/components/xform/form-designer/setting-panel/property-editor/field-status/field-status-editor.vue +47 -28
- package/src/components/xform/form-designer/setting-panel/property-editor/field-vabSearch/vabSearchName-editor.vue +13 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/formula-editor.vue +722 -467
- package/src/components/xform/form-designer/setting-panel/property-editor/formulaEnabled-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/multiple-editor.vue +19 -14
- package/src/components/xform/form-designer/setting-panel/property-editor/project-tag-editor.vue +159 -18
- package/src/components/xform/form-designer/setting-panel/property-editor/textFlag-editor.vue +51 -2
- package/src/components/xform/form-designer/setting-panel/property-editor/wfFlag-editor.vue +2 -30
- package/src/components/xform/form-designer/setting-panel/property-editor/widgetShowRuleFlag-editor.vue +220 -0
- package/src/components/xform/form-designer/setting-panel/propertyRegister.js +5 -0
- package/src/components/xform/form-designer/toolbar-panel/index.vue +8 -4
- package/src/components/xform/form-designer/widget-panel/index.vue +21 -1
- package/src/components/xform/form-designer/widget-panel/indexMixin.js +3 -2
- package/src/components/xform/form-designer/widget-panel/widgetsConfig.js +489 -132
- package/src/components/xform/form-render/container-item/data-table-item.vue +7 -4
- package/src/components/xform/form-render/container-item/data-table-mixin.js +4 -1
- package/src/components/xform/form-render/container-item/data-table-mixin2.js +2169 -0
- package/src/components/xform/form-render/container-item/list-h5-item.vue +1 -9
- package/src/components/xform/form-render/container-item/list-h5-item2.vue +1 -8
- package/src/components/xform/form-render/indexMixin.js +7 -3
- package/src/components/xform/lang/zh-CN.js +13 -3
- package/src/components/xform/mixins/defaultHandle.js +1 -1
- package/src/components/xform/mixins/scriptHttp.js +1 -1
- package/src/components/xform/utils/format.js +21 -30
- package/src/components/xform/utils/formula-util.js +669 -0
- package/src/components/xform/utils/util.js +1 -1
- package/src/mixins/selectDialog/index.js +1 -1
- package/src/store/modules/permission.js +1 -1
- package/src/store/modules/settings.js +1 -1
@@ -8,9 +8,14 @@
|
|
8
8
|
</el-radio-group>
|
9
9
|
</el-form-item>
|
10
10
|
|
11
|
-
|
12
|
-
<el-
|
13
|
-
|
11
|
+
<el-form-item label="默认值">
|
12
|
+
<el-input v-model="optionModel.defaultValue" size="mini" style="width: 100px" v-if="!optionModel.optionItemValueType"></el-input>
|
13
|
+
<base-input-number v-model="optionModel.defaultValue" size="mini" style="width: 100px" v-if="optionModel.optionItemValueType==1" />
|
14
|
+
<el-select v-model="optionModel.defaultValue" style="width: 100px" v-if="optionModel.optionItemValueType===2" clearable @clear="optionModel.defaultValue=null">
|
15
|
+
<el-option :value="true" label="true"></el-option>
|
16
|
+
<el-option :value="false" label="false"></el-option>
|
17
|
+
</el-select>
|
18
|
+
</el-form-item>
|
14
19
|
<el-radio-group
|
15
20
|
v-if="selectedWidget.type === 'radio' || (selectedWidget.type === 'select' && !selectedWidget.options.multiple)"
|
16
21
|
v-model="optionModel.defaultValue"
|
@@ -3,7 +3,7 @@
|
|
3
3
|
<el-form-item :label="i18nt('显示下划线')">
|
4
4
|
<el-switch v-model="optionModel.underline"></el-switch>
|
5
5
|
</el-form-item>
|
6
|
-
<el-form-item :label="i18nt('表单值显示')">
|
6
|
+
<el-form-item :label="i18nt('表单值显示')" v-if="selectedWidget.type!=='a-link2'">
|
7
7
|
<el-switch v-model="optionModel.isFormLabel"></el-switch>
|
8
8
|
</el-form-item>
|
9
9
|
<el-form-item :label="i18nt('颜色')">
|
@@ -6,7 +6,7 @@
|
|
6
6
|
<el-tabs v-model="formDesTabs" type="card" class="tab-boxOnly" :stretch="true">
|
7
7
|
<el-tab-pane :label="$t1('设计器')" name="first">
|
8
8
|
<designer ref="designer" :formTemplate="formTemplate" @customConfirm="customConfirm" :columnFlag="true"
|
9
|
-
:widgetList="widgetList"></designer>
|
9
|
+
:widgetList="widgetList" :sourceData="sourceData"></designer>
|
10
10
|
</el-tab-pane>
|
11
11
|
</el-tabs>
|
12
12
|
<el-button class="isFullIcon" v-if="!isFullscreen" @click="handleFullscreen">
|
@@ -27,7 +27,8 @@
|
|
27
27
|
import PopupManager from 'element-ui/src/utils/popup/popup-manager.js'
|
28
28
|
export default {
|
29
29
|
props: {
|
30
|
-
column: Object
|
30
|
+
column: Object,
|
31
|
+
sourceData:Object
|
31
32
|
},
|
32
33
|
components: {
|
33
34
|
designer: () => import("@base/views/user/form/vform/designer.vue"),
|
@@ -879,14 +879,6 @@ export default {
|
|
879
879
|
let columnEditFields = null;
|
880
880
|
|
881
881
|
let type = this.columnFormatMap[row.formatS];
|
882
|
-
/*if (type == 'date') {
|
883
|
-
columnEditFields = ['type', 'format', 'valueFormat']
|
884
|
-
} else if (type == 'select') {
|
885
|
-
|
886
|
-
}
|
887
|
-
if (type == 'vabsearch') {
|
888
|
-
columnEditFields = ['vabSearchField', 'formCode', 'formVersion', 'required', 'showFormField', 'onSearchConfirm', 'onSearchClear']
|
889
|
-
}*/
|
890
882
|
|
891
883
|
if (type) {
|
892
884
|
columnSelectedWidget = this.$baseLodash.cloneDeep(this.designer.getFieldWidgetByType(type));
|
@@ -341,7 +341,7 @@
|
|
341
341
|
</template>
|
342
342
|
</el-table-column>
|
343
343
|
</el-table>
|
344
|
-
<columnRenderDialog :column="currentTableColumn" v-if="showColumnRenderDialog"
|
344
|
+
<columnRenderDialog :column="currentTableColumn" :sourceData="sourceData" v-if="showColumnRenderDialog"
|
345
345
|
:visiable.sync="showColumnRenderDialog"
|
346
346
|
@confirm="confirmWidgetRenderDialog"></columnRenderDialog>
|
347
347
|
</div>
|
@@ -499,8 +499,29 @@
|
|
499
499
|
<script>
|
500
500
|
import i18n from "../../../../../../components/xform/utils/i18n";
|
501
501
|
import Sortable from "sortablejs";
|
502
|
-
import {generateId} from "../../../../../../components/xform/utils/util";
|
502
|
+
import {generateId, loopHandleWidget,deepClone} from "../../../../../../components/xform/utils/util";
|
503
503
|
import columnRenderDialog from "./columnRenderDialog.vue"
|
504
|
+
import {businessFields} from "@base/components/xform/form-designer/widget-panel/widgetsConfig";
|
505
|
+
|
506
|
+
let businessOptions = [
|
507
|
+
{
|
508
|
+
value: "_createBy",
|
509
|
+
label: "创建人",
|
510
|
+
},
|
511
|
+
{
|
512
|
+
value: "_modifyBy",
|
513
|
+
label: "更新人",
|
514
|
+
},
|
515
|
+
{
|
516
|
+
value: "create_date",
|
517
|
+
label: "创建时间",
|
518
|
+
},
|
519
|
+
{
|
520
|
+
value: "modify_date",
|
521
|
+
label: "更新时间",
|
522
|
+
},
|
523
|
+
];
|
524
|
+
let userFields = ["_createBy", "_modifyBy", "create_date", "modify_date"]
|
504
525
|
|
505
526
|
export default {
|
506
527
|
mixins: [i18n],
|
@@ -512,6 +533,7 @@ export default {
|
|
512
533
|
components: {columnRenderDialog},
|
513
534
|
inject: ["openWidgetPropertyDialog"],
|
514
535
|
data() {
|
536
|
+
|
515
537
|
return {
|
516
538
|
pictLoading: true,
|
517
539
|
tableColumnConfigTitle: null,
|
@@ -534,6 +556,8 @@ export default {
|
|
534
556
|
label: "right",
|
535
557
|
},
|
536
558
|
],
|
559
|
+
businessOptions,
|
560
|
+
userFields,
|
537
561
|
op: [
|
538
562
|
{
|
539
563
|
label: "edit Format",
|
@@ -633,6 +657,11 @@ export default {
|
|
633
657
|
},
|
634
658
|
],
|
635
659
|
},
|
660
|
+
|
661
|
+
{
|
662
|
+
label: "业务模块",
|
663
|
+
options: businessOptions
|
664
|
+
},
|
636
665
|
{
|
637
666
|
label: "Date Format",
|
638
667
|
options: [
|
@@ -721,6 +750,7 @@ export default {
|
|
721
750
|
showRenderDialogFlag: !1,
|
722
751
|
renderJson: "",
|
723
752
|
currentTableColumn: null,
|
753
|
+
sourceData: null,
|
724
754
|
|
725
755
|
hideAfter: 1500,
|
726
756
|
openDelay: 500,
|
@@ -821,8 +851,14 @@ export default {
|
|
821
851
|
this.optionModel.tableColumns = this.tableData;
|
822
852
|
this.closeHandle();
|
823
853
|
},
|
824
|
-
openWidgetRenderDialog(row) {
|
854
|
+
openWidgetRenderDialog(row, sourceData) {
|
825
855
|
this.currentTableColumn = row;
|
856
|
+
this.sourceData = sourceData;
|
857
|
+
|
858
|
+
// this.widgetList =
|
859
|
+
|
860
|
+
// this.designer.widgetList
|
861
|
+
|
826
862
|
this.showColumnRenderDialog = true
|
827
863
|
},
|
828
864
|
confirmWidgetRenderDialog(widgetList) {
|
@@ -1128,8 +1164,10 @@ export default {
|
|
1128
1164
|
let {columnSelectedWidget, columnEditFields} = columnWidgetConfig;
|
1129
1165
|
if (columnSelectedWidget) {
|
1130
1166
|
row.columnOption = columnSelectedWidget.options;
|
1167
|
+
row.widget = columnSelectedWidget;
|
1131
1168
|
} else {
|
1132
1169
|
row.columnOption = {};
|
1170
|
+
row.widget = null;
|
1133
1171
|
}
|
1134
1172
|
|
1135
1173
|
if (row.formatS == "editTreeButtonGroup") {
|
@@ -1151,6 +1189,15 @@ export default {
|
|
1151
1189
|
if (!row.width || row.width == 47) row.width = 150;
|
1152
1190
|
if (!row.prop) row.prop = tmpId;
|
1153
1191
|
if (!row.label) row.label = tmpId;
|
1192
|
+
|
1193
|
+
if (this.userFields.includes(row.formatS)) {
|
1194
|
+
let item = this.businessOptions.find(item => item.value == row.formatS);
|
1195
|
+
if (item) {
|
1196
|
+
row.prop = item.value;
|
1197
|
+
row.label = item.label;
|
1198
|
+
}
|
1199
|
+
}
|
1200
|
+
|
1154
1201
|
row.sortable = true;
|
1155
1202
|
|
1156
1203
|
if (row.formatS == "editAttachment") {
|
@@ -1167,14 +1214,6 @@ export default {
|
|
1167
1214
|
let columnEditFields = null;
|
1168
1215
|
|
1169
1216
|
let type = this.columnFormatMap[formatS];
|
1170
|
-
/*if (type == 'date') {
|
1171
|
-
columnEditFields = ['type', 'format', 'valueFormat']
|
1172
|
-
} else if (type == 'select') {
|
1173
|
-
|
1174
|
-
}
|
1175
|
-
if (type == 'vabsearch') {
|
1176
|
-
columnEditFields = ['vabSearchField', 'formCode', 'formVersion', 'required', 'showFormField', 'onSearchConfirm', 'onSearchClear']
|
1177
|
-
}*/
|
1178
1217
|
|
1179
1218
|
if (type) {
|
1180
1219
|
// columnSelectedWidget = this.$baseLodash.cloneDeep(this.designer.getFieldWidgetByType(type));
|
@@ -1185,6 +1224,12 @@ export default {
|
|
1185
1224
|
let idVal = row.prop ? row.prop : (type + tmpId);*/
|
1186
1225
|
/*columnSelectedWidget.id = idVal;*/
|
1187
1226
|
// columnSelectedWidget.options.name = idVal;
|
1227
|
+
/*if (isEdit) {
|
1228
|
+
columnSelectedWidget.id = "edit_" + row.columnId;
|
1229
|
+
} else {
|
1230
|
+
columnSelectedWidget.id = row.columnId;
|
1231
|
+
}*/
|
1232
|
+
// columnSelectedWidget.id = row.columnId;
|
1188
1233
|
let columnOption;
|
1189
1234
|
if (!isEdit) {
|
1190
1235
|
columnOption = row.columnOption;
|
@@ -1271,9 +1316,57 @@ export default {
|
|
1271
1316
|
}
|
1272
1317
|
return {columnSelectedWidget, columnEditFields};
|
1273
1318
|
},
|
1319
|
+
findColumnByColumnId(columnList, columnId) {
|
1320
|
+
let result = null
|
1321
|
+
if (columnList) {
|
1322
|
+
let column = columnList.find(item => item.columnId == columnId);
|
1323
|
+
if (!column) {
|
1324
|
+
|
1325
|
+
}
|
1326
|
+
for (let column of columnList) {
|
1327
|
+
if (column.columnId == columnId) {
|
1328
|
+
result = column;
|
1329
|
+
break
|
1330
|
+
} else if (column.children && column.children.length) {
|
1331
|
+
let subColumn = this.findColumnByColumnId(column.children, children)
|
1332
|
+
if (subColumn) {
|
1333
|
+
result = subColumn;
|
1334
|
+
break
|
1335
|
+
}
|
1336
|
+
}
|
1337
|
+
|
1338
|
+
}
|
1339
|
+
}
|
1340
|
+
return result;
|
1341
|
+
},
|
1274
1342
|
openFormatConfigDialog(row, index) {
|
1275
1343
|
if (row.formatS == 'widgetRender') {
|
1276
|
-
this.
|
1344
|
+
let formWidgetList = deepClone(this.designer.widgetList);
|
1345
|
+
let tableData = deepClone(this.tableData);
|
1346
|
+
let columnId = row.columnId;
|
1347
|
+
|
1348
|
+
let dataTableName = this.optionModel.name;
|
1349
|
+
|
1350
|
+
|
1351
|
+
let targetColumn = null;
|
1352
|
+
loopHandleWidget(formWidgetList, (item) => {
|
1353
|
+
if (item.options.name == dataTableName) {
|
1354
|
+
item.options.tableColumns = tableData;
|
1355
|
+
targetColumn = this.findColumnByColumnId(item.options.tableColumns, columnId)
|
1356
|
+
}
|
1357
|
+
});
|
1358
|
+
let getWidgetList = (subWidgetList = []) =>{
|
1359
|
+
targetColumn.widgetList = this.$baseLodash.cloneDeep(subWidgetList);
|
1360
|
+
return formWidgetList;
|
1361
|
+
}
|
1362
|
+
let sourceData = {
|
1363
|
+
formWidgetList,
|
1364
|
+
dataTableName,
|
1365
|
+
columnId,
|
1366
|
+
getWidgetList
|
1367
|
+
}
|
1368
|
+
|
1369
|
+
this.openWidgetRenderDialog(row, sourceData);
|
1277
1370
|
return
|
1278
1371
|
}
|
1279
1372
|
|
@@ -1294,9 +1387,11 @@ export default {
|
|
1294
1387
|
row.columnOption = columnOption;
|
1295
1388
|
this.operateIndex = index;
|
1296
1389
|
|
1390
|
+
let tableColumns = this.tableData;
|
1297
1391
|
this.openWidgetPropertyDialog({
|
1298
1392
|
row: row,
|
1299
1393
|
columnSelectedWidget: selectedWidget,
|
1394
|
+
tableColumns,
|
1300
1395
|
index: index,
|
1301
1396
|
columnEditFields: columnEditFields,
|
1302
1397
|
callback: (columnOption) => {
|
@@ -1311,6 +1406,7 @@ export default {
|
|
1311
1406
|
confirmFormatConfigDialog(columnOption, row) {
|
1312
1407
|
// let row = this.tableData[this.operateIndex];
|
1313
1408
|
row.columnOption = columnOption;
|
1409
|
+
row.widget.options = columnOption;
|
1314
1410
|
let isButtontCell = this.getIsButtontCell(row.formatS);
|
1315
1411
|
if (!isButtontCell) {
|
1316
1412
|
row.prop = this.getFieldKeyNameByOptions(columnOption);
|
@@ -1335,8 +1431,10 @@ export default {
|
|
1335
1431
|
row.editColumnOption = columnOption;
|
1336
1432
|
this.operateIndex = index;
|
1337
1433
|
|
1434
|
+
let tableColumns = this.tableData;
|
1338
1435
|
this.openWidgetPropertyDialog({
|
1339
1436
|
row: row,
|
1437
|
+
tableColumns,
|
1340
1438
|
columnSelectedWidget: selectedWidget,
|
1341
1439
|
index: index,
|
1342
1440
|
columnEditFields: columnEditFields,
|
@@ -1348,6 +1446,7 @@ export default {
|
|
1348
1446
|
confirmEditFormatConfigDialog(columnOption, row) {
|
1349
1447
|
// let row = this.tableData[this.operateIndex];
|
1350
1448
|
row.editColumnOption = columnOption;
|
1449
|
+
row.editWidget.options = columnOption;
|
1351
1450
|
/*row.prop = columnOption.name;
|
1352
1451
|
row.label = columnOption.label;
|
1353
1452
|
row.required = columnOption.required;*/
|
@@ -694,14 +694,6 @@ export default {
|
|
694
694
|
let columnEditFields = null;
|
695
695
|
|
696
696
|
let type = this.columnFormatMap[row.formatS];
|
697
|
-
/*if (type == 'date') {
|
698
|
-
columnEditFields = ['type', 'format', 'valueFormat']
|
699
|
-
} else if (type == 'select') {
|
700
|
-
|
701
|
-
}
|
702
|
-
if (type == 'vabsearch') {
|
703
|
-
columnEditFields = ['vabSearchField', 'formCode', 'formVersion', 'required', 'showFormField', 'onSearchConfirm', 'onSearchClear']
|
704
|
-
}*/
|
705
697
|
|
706
698
|
if (type) {
|
707
699
|
columnSelectedWidget = this.$baseLodash.cloneDeep(this.designer.getFieldWidgetByType(type));
|
@@ -4,12 +4,21 @@
|
|
4
4
|
<el-divider class="custom-divider">选择弹框配置</el-divider>
|
5
5
|
</el-form-item>
|
6
6
|
<el-form-item label="是否多选">
|
7
|
-
<el-switch v-model="eventConfig.multipleChoices"
|
7
|
+
<el-switch v-model="eventConfig.multipleChoices"
|
8
|
+
v-if="selectedWidget.type !== 'singerSearch' && selectedWidget.type !== 'multiSearch'"></el-switch>
|
9
|
+
<span v-else>{{eventConfig.multipleChoices?'是':'否'}}</span>
|
8
10
|
</el-form-item>
|
9
11
|
<el-form-item label="弹框表单编码">
|
10
12
|
<el-input type="text" v-model="eventConfig.formCode"></el-input>
|
11
13
|
</el-form-item>
|
12
|
-
<
|
14
|
+
<el-form-item label="弹框参数">
|
15
|
+
<a href="javascript:void(0);" class="a-link link-oneLind"
|
16
|
+
@click="editEventHandler('confirmCallback', ['dataId', 'formCode','rows'], option2)">
|
17
|
+
<span>{{ eventConfig.dialogQueryParam }}</span>
|
18
|
+
<i class="el-icon-edit"></i>
|
19
|
+
</a>
|
20
|
+
</el-form-item>
|
21
|
+
<template v-if="hasConfig('vabsearchFlag')">
|
13
22
|
<el-form-item label="关联来源字段">
|
14
23
|
<el-input type="text" v-model="eventConfig.valueSourceField"></el-input>
|
15
24
|
</el-form-item>
|
@@ -21,7 +30,7 @@
|
|
21
30
|
<!-- <el-form-item label="多选">
|
22
31
|
<el-switch v-model="optionModel.multiple"></el-switch>
|
23
32
|
</el-form-item>-->
|
24
|
-
<template v-if="
|
33
|
+
<template v-if="!hasConfig('vabsearchFlag')">
|
25
34
|
<el-form-item label="关联表格">
|
26
35
|
<el-switch v-model="eventConfig.tableEnabled"></el-switch>
|
27
36
|
</el-form-item>
|
@@ -135,10 +144,10 @@
|
|
135
144
|
import i18n from "../../../../../../components/xform/utils/i18n"
|
136
145
|
import eventMixin
|
137
146
|
from "../../../../../../components/xform/form-designer/setting-panel/property-editor/event-handler/eventMixin"
|
138
|
-
|
147
|
+
import propertyMixin from "../../../../../../components/xform/form-designer/setting-panel/property-editor/propertyMixin"
|
139
148
|
|
140
149
|
export default {
|
141
|
-
mixins: [i18n, eventMixin],
|
150
|
+
mixins: [i18n, eventMixin, propertyMixin],
|
142
151
|
props: {
|
143
152
|
designer: Object,
|
144
153
|
selectedWidget: Object,
|
@@ -149,14 +158,23 @@ export default {
|
|
149
158
|
return {
|
150
159
|
showDialog: false,
|
151
160
|
tableData: [],
|
152
|
-
option1:{
|
153
|
-
customCode:()=>{
|
161
|
+
option1: {
|
162
|
+
customCode: () => {
|
154
163
|
return this.eventConfig.confirmCallback;
|
155
164
|
},
|
156
|
-
callback:(code)=>{
|
165
|
+
callback: (code) => {
|
157
166
|
this.eventConfig.confirmCallback = code;
|
158
167
|
this.$forceUpdate()
|
159
168
|
}
|
169
|
+
},
|
170
|
+
option2: {
|
171
|
+
customCode: () => {
|
172
|
+
return this.eventConfig.dialogQueryParam;
|
173
|
+
},
|
174
|
+
callback: (code) => {
|
175
|
+
this.eventConfig.dialogQueryParam = code;
|
176
|
+
this.$forceUpdate()
|
177
|
+
}
|
160
178
|
}
|
161
179
|
}
|
162
180
|
},
|
@@ -0,0 +1,21 @@
|
|
1
|
+
<template>
|
2
|
+
<div>
|
3
|
+
|
4
|
+
</div>
|
5
|
+
</template>
|
6
|
+
<script>
|
7
|
+
import i18n from "@base/components/xform/utils/i18n";
|
8
|
+
|
9
|
+
export default {
|
10
|
+
name: "dropdown-menu-editor",
|
11
|
+
mixins: [i18n],
|
12
|
+
props: {
|
13
|
+
designer: Object,
|
14
|
+
selectedWidget: Object,
|
15
|
+
optionModel: Object,
|
16
|
+
},
|
17
|
+
}
|
18
|
+
</script>
|
19
|
+
<style scoped>
|
20
|
+
|
21
|
+
</style>
|
@@ -0,0 +1,59 @@
|
|
1
|
+
<template>
|
2
|
+
<div>
|
3
|
+
<el-form-item :label="i18nt('designer.setting.tabPaneSetting')"></el-form-item>
|
4
|
+
<el-form-item label-width="0" class="panes-setting">
|
5
|
+
<draggable tag="ul" :list="selectedWidget.widgetList"
|
6
|
+
v-bind="{group:'panesGroup', ghostClass: 'ghost', handle: '.drag-option'}" class="draggable-box">
|
7
|
+
<li v-for="(tpItem, tpIdx) in selectedWidget.widgetList" :key="tpIdx" class="col-item">
|
8
|
+
<el-input type="text" v-model="tpItem.options.label" style="width:calc(100% - 65px) !important;"></el-input>
|
9
|
+
<i class="el-icon-s-operation drag-option"></i>
|
10
|
+
<el-button circle plain size="mini" type="danger" @click="deleteTabPane(selectedWidget, tpIdx)"
|
11
|
+
icon="el-icon-minus" class="col-delete-button"></el-button>
|
12
|
+
</li>
|
13
|
+
<div>
|
14
|
+
<el-button type="text" @click="addTabPane(selectedWidget)" icon="el-icon-circle-plus-outline" class="add-option">{{i18nt('designer.setting.addTabPane')}}</el-button>
|
15
|
+
</div>
|
16
|
+
</draggable>
|
17
|
+
</el-form-item>
|
18
|
+
</div>
|
19
|
+
</template>
|
20
|
+
<script>
|
21
|
+
import i18n from "@base/components/xform/utils/i18n";
|
22
|
+
import Draggable from 'vuedraggable'
|
23
|
+
import {deepClone} from "../../../../../../components/xform/utils/util";
|
24
|
+
|
25
|
+
export default {
|
26
|
+
name: "dropdown-menu-editor",
|
27
|
+
components: {Draggable},
|
28
|
+
mixins: [i18n],
|
29
|
+
props: {
|
30
|
+
designer: Object,
|
31
|
+
selectedWidget: Object,
|
32
|
+
optionModel: Object,
|
33
|
+
},
|
34
|
+
methods: {
|
35
|
+
onTabPaneActiveChange(evt, tpItem) {
|
36
|
+
//TODO: !!!
|
37
|
+
},
|
38
|
+
|
39
|
+
addTabPane(curTabs) {
|
40
|
+
this.designer.addDropdownItem(curTabs)
|
41
|
+
this.designer.emitHistoryChange()
|
42
|
+
},
|
43
|
+
|
44
|
+
deleteTabPane(curTabs, tpIdx) {
|
45
|
+
if (curTabs.widgetList.length === 1) {
|
46
|
+
this.$message.info(this.i18nt('designer.hint.lastPaneCannotBeDeleted'))
|
47
|
+
return
|
48
|
+
}
|
49
|
+
|
50
|
+
this.designer.deleteDropdownItem(curTabs, tpIdx)
|
51
|
+
this.designer.emitHistoryChange()
|
52
|
+
},
|
53
|
+
|
54
|
+
}
|
55
|
+
}
|
56
|
+
</script>
|
57
|
+
<style scoped>
|
58
|
+
|
59
|
+
</style>
|
@@ -9,16 +9,20 @@
|
|
9
9
|
<el-form-item label="文件大小限制(M)">
|
10
10
|
<base-input-number v-model="optionModel.importFileLimitSize" :max="200"></base-input-number>
|
11
11
|
</el-form-item>
|
12
|
-
<el-form-item label="
|
12
|
+
<el-form-item label="导入模板文件编码">
|
13
13
|
<el-input
|
14
14
|
class="search-input"
|
15
15
|
max="200"
|
16
|
-
|
16
|
+
:value="optionModel.importAttachCode"
|
17
17
|
clearable
|
18
|
+
@clear="optionModel.importAttachCode=null;optionModel.importAttachName=null;"
|
18
19
|
>
|
19
20
|
<i slot="suffix" class="el-input__icon el-icon-search" @click="showBdAttachSettingDialog = true"></i>
|
20
21
|
</el-input>
|
21
22
|
</el-form-item>
|
23
|
+
<el-form-item label="导入模板文件名称">
|
24
|
+
<span>{{optionModel.importAttachName}}</span>
|
25
|
+
</el-form-item>
|
22
26
|
<el-form-item label="关联表格唯一名称">
|
23
27
|
<el-input v-model="optionModel.tableRef"></el-input>
|
24
28
|
</el-form-item>
|
@@ -77,6 +81,7 @@ export default {
|
|
77
81
|
confirmBdAttachSettingDialog(rows) {
|
78
82
|
if (rows.length) {
|
79
83
|
let row = rows[0];
|
84
|
+
this.optionModel.importAttachName = row.name;
|
80
85
|
this.optionModel.importAttachCode = row.code;
|
81
86
|
}
|
82
87
|
}
|
@@ -6,16 +6,21 @@
|
|
6
6
|
<el-form-item label="文件大小限制(M)">
|
7
7
|
<base-input-number v-model="optionModel.importFileLimitSize" :max="200"></base-input-number>
|
8
8
|
</el-form-item>
|
9
|
-
<el-form-item label="
|
9
|
+
<el-form-item label="导入模板文件编码">
|
10
10
|
<el-input
|
11
11
|
class="search-input"
|
12
12
|
max="200"
|
13
|
-
|
13
|
+
:value="optionModel.importAttachCode"
|
14
14
|
clearable
|
15
|
+
@clear="optionModel.importAttachCode=null;optionModel.importAttachName=null;"
|
15
16
|
>
|
16
17
|
<i slot="suffix" class="el-input__icon el-icon-search" @click="showBdAttachSettingDialog = true"></i>
|
17
18
|
</el-input>
|
18
19
|
</el-form-item>
|
20
|
+
<el-form-item label="导入模板文件名称">
|
21
|
+
<span>{{ optionModel.importAttachName }}</span>
|
22
|
+
</el-form-item>
|
23
|
+
|
19
24
|
<el-form-item label="关联表格唯一名称">
|
20
25
|
<el-input v-model="optionModel.tableRef"></el-input>
|
21
26
|
</el-form-item>
|
@@ -70,6 +75,7 @@ export default {
|
|
70
75
|
confirmBdAttachSettingDialog(rows) {
|
71
76
|
if (rows.length) {
|
72
77
|
let row = rows[0];
|
78
|
+
this.optionModel.importAttachName = row.name;
|
73
79
|
this.optionModel.importAttachCode = row.code;
|
74
80
|
}
|
75
81
|
}
|