@fecp/designer 5.5.120 → 5.5.121
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/es/designer/package.json.mjs +1 -1
- package/es/designer/src/packages/dataSource/index.vue.mjs +3 -3
- package/es/designer/src/packages/dialog/index.vue2.mjs +15 -15
- package/es/designer/src/packages/dialog/useDialogDialog.mjs +1 -1
- package/es/designer/src/packages/dialogGlobal/index.vue2.mjs +15 -16
- package/es/designer/src/packages/dialogGlobal/useDialogGlobalDialog.mjs +1 -1
- package/es/designer/src/packages/event/pageEvent.vue.mjs +1 -1
- package/es/designer/src/packages/form/index.vue.mjs +2 -2
- package/es/designer/src/packages/form/property/widgets.vue.mjs +2 -2
- package/es/designer.css +505 -415
- package/es/packages/mobile/index.mjs +2 -0
- package/es/packages/mobile/src/api/index.mjs +1 -1
- package/es/packages/mobile/src/assets/images/baseRate.png.mjs +1 -1
- package/es/packages/mobile/src/assets/images/home-bg.png.mjs +1 -1
- package/es/packages/mobile/src/assets/images/rentCalc.png.mjs +1 -1
- package/es/packages/mobile/src/assets/images/user.png.mjs +4 -0
- package/es/packages/mobile/src/components/all.mjs +2 -0
- package/es/packages/mobile/src/components/base/card/Card.vue.mjs +2 -2
- package/es/packages/mobile/src/components/custom/appDetail/AppDetail.vue.mjs +62 -44
- package/es/packages/mobile/src/components/custom/appTimeLine/AppTimeLine.vue.mjs +2 -2
- package/es/packages/mobile/src/components/custom/approvalBar/ApprovalBar.vue.mjs +128 -67
- package/es/packages/mobile/src/components/custom/approvalList/ApprovalList.vue.mjs +5 -5
- package/es/packages/mobile/src/components/custom/customCode/CustomCode.vue.mjs +60 -0
- package/es/packages/mobile/src/components/custom/customCode/index.mjs +10 -0
- package/es/packages/mobile/src/components/custom/document/Document.vue.mjs +2 -2
- package/es/packages/mobile/src/components/custom/userSelect/UserSelect.vue.mjs +2 -2
- package/es/packages/mobile/src/components/dataDisplay/cardList/CardList.vue.mjs +187 -7
- package/es/packages/mobile/src/components/dataDisplay/dataStat/DataStat.vue.mjs +2 -2
- package/es/packages/mobile/src/components/dataDisplay/mine/Mine.vue.mjs +33 -9
- package/es/packages/mobile/src/components/dataDisplay/rentCalcResult/RentCalcResult.vue.mjs +39 -79
- package/es/packages/mobile/src/components/feedback/quickFilter/QuickFilter.vue.mjs +10 -2
- package/es/packages/mobile/src/components/form/field/Field.vue.mjs +167 -32
- package/es/packages/mobile/src/components/form/fieldArea/FieldArea.vue.mjs +3 -2
- package/es/packages/mobile/src/components/form/fieldCalendarPicker/FieldCalendarPicker.vue.mjs +13 -15
- package/es/packages/mobile/src/components/form/fieldCascaderPicker/fieldCascaderPicker.vue.mjs +10 -10
- package/es/packages/mobile/src/components/form/fieldCheckbox/FieldCheckbox.vue.mjs +7 -23
- package/es/packages/mobile/src/components/form/fieldDatePicker/FieldDatePicker.vue.mjs +14 -26
- package/es/packages/mobile/src/components/form/fieldDateTimePicker/FieldDateTimePicker.vue.mjs +14 -15
- package/es/packages/mobile/src/components/form/fieldIndustry/FieldIndustry.vue.mjs +6 -19
- package/es/packages/mobile/src/components/form/fieldPicker/FieldPicker.vue.mjs +9 -25
- package/es/packages/mobile/src/components/form/fieldRadio/FieldRadio.vue.mjs +8 -24
- package/es/packages/mobile/src/components/form/search/Search.vue.mjs +15 -6
- package/es/packages/mobile/src/components/form/uploader/Uploader.vue.mjs +2 -2
- package/es/packages/mobile/src/components/navigation/tabbar/Tabbar.vue.mjs +9 -5
- package/es/packages/mobile/src/components/navigation/tabs/Tabs.vue.mjs +58 -25
- package/es/packages/mobile/src/index.vue.mjs +21 -4
- package/es/packages/mobile/src/page.vue.mjs +342 -138
- package/es/packages/mobile/src/utils/common.mjs +21 -0
- package/es/packages/mobile/src/utils/datasource.mjs +3 -3
- package/es/packages/mobile/src/utils/eventFlow/actionHandlers.mjs +35 -22
- package/es/packages/mobile/src/utils/formatterUtil.mjs +4 -24
- package/es/packages/mobile/src/utils/formulajs/calculate.mjs +11 -5
- package/es/packages/mobile/src/utils/optionUtil.mjs +3 -28
- package/es/packages/mobile/src/utils/pageHistory.mjs +16 -0
- package/es/packages/mobile/src/utils/validation.mjs +129 -0
- package/es/packages/vue/src/components/forms/number/Number.vue.mjs +3 -2
- package/es/packages/vue/src/components/table/TableColumn.vue.mjs +12 -8
- package/lib/designer/package.json.js +1 -1
- package/lib/designer/src/packages/dataSource/index.vue.js +3 -3
- package/lib/designer/src/packages/dialog/index.vue2.js +15 -15
- package/lib/designer/src/packages/dialog/useDialogDialog.js +1 -1
- package/lib/designer/src/packages/dialogGlobal/index.vue2.js +15 -16
- package/lib/designer/src/packages/dialogGlobal/useDialogGlobalDialog.js +1 -1
- package/lib/designer/src/packages/event/pageEvent.vue.js +1 -1
- package/lib/designer/src/packages/form/index.vue.js +2 -2
- package/lib/designer/src/packages/form/property/widgets.vue.js +2 -2
- package/lib/designer.css +505 -415
- package/lib/packages/mobile/index.js +4 -2
- package/lib/packages/mobile/src/api/index.js +1 -1
- package/lib/packages/mobile/src/assets/images/baseRate.png.js +1 -1
- package/lib/packages/mobile/src/assets/images/home-bg.png.js +1 -1
- package/lib/packages/mobile/src/assets/images/rentCalc.png.js +1 -1
- package/lib/packages/mobile/src/assets/images/user.png.js +4 -0
- package/lib/packages/mobile/src/components/all.js +2 -0
- package/lib/packages/mobile/src/components/base/card/Card.vue.js +2 -2
- package/lib/packages/mobile/src/components/custom/appDetail/AppDetail.vue.js +61 -43
- package/lib/packages/mobile/src/components/custom/appTimeLine/AppTimeLine.vue.js +2 -2
- package/lib/packages/mobile/src/components/custom/approvalBar/ApprovalBar.vue.js +131 -70
- package/lib/packages/mobile/src/components/custom/approvalList/ApprovalList.vue.js +5 -5
- package/lib/packages/mobile/src/components/custom/customCode/CustomCode.vue.js +60 -0
- package/lib/packages/mobile/src/components/custom/customCode/index.js +10 -0
- package/lib/packages/mobile/src/components/custom/document/Document.vue.js +2 -2
- package/lib/packages/mobile/src/components/custom/userSelect/UserSelect.vue.js +2 -2
- package/lib/packages/mobile/src/components/dataDisplay/cardList/CardList.vue.js +187 -7
- package/lib/packages/mobile/src/components/dataDisplay/dataStat/DataStat.vue.js +2 -2
- package/lib/packages/mobile/src/components/dataDisplay/mine/Mine.vue.js +38 -14
- package/lib/packages/mobile/src/components/dataDisplay/rentCalcResult/RentCalcResult.vue.js +39 -79
- package/lib/packages/mobile/src/components/feedback/quickFilter/QuickFilter.vue.js +10 -2
- package/lib/packages/mobile/src/components/form/field/Field.vue.js +165 -30
- package/lib/packages/mobile/src/components/form/fieldArea/FieldArea.vue.js +3 -2
- package/lib/packages/mobile/src/components/form/fieldCalendarPicker/FieldCalendarPicker.vue.js +13 -15
- package/lib/packages/mobile/src/components/form/fieldCascaderPicker/fieldCascaderPicker.vue.js +9 -9
- package/lib/packages/mobile/src/components/form/fieldCheckbox/FieldCheckbox.vue.js +6 -22
- package/lib/packages/mobile/src/components/form/fieldDatePicker/FieldDatePicker.vue.js +13 -25
- package/lib/packages/mobile/src/components/form/fieldDateTimePicker/FieldDateTimePicker.vue.js +13 -14
- package/lib/packages/mobile/src/components/form/fieldIndustry/FieldIndustry.vue.js +6 -19
- package/lib/packages/mobile/src/components/form/fieldPicker/FieldPicker.vue.js +8 -24
- package/lib/packages/mobile/src/components/form/fieldRadio/FieldRadio.vue.js +7 -23
- package/lib/packages/mobile/src/components/form/search/Search.vue.js +15 -6
- package/lib/packages/mobile/src/components/form/uploader/Uploader.vue.js +2 -2
- package/lib/packages/mobile/src/components/navigation/tabbar/Tabbar.vue.js +9 -5
- package/lib/packages/mobile/src/components/navigation/tabs/Tabs.vue.js +61 -28
- package/lib/packages/mobile/src/index.vue.js +20 -3
- package/lib/packages/mobile/src/page.vue.js +341 -137
- package/lib/packages/mobile/src/utils/common.js +21 -0
- package/lib/packages/mobile/src/utils/datasource.js +3 -3
- package/lib/packages/mobile/src/utils/eventFlow/actionHandlers.js +35 -22
- package/lib/packages/mobile/src/utils/formatterUtil.js +3 -23
- package/lib/packages/mobile/src/utils/formulajs/calculate.js +11 -5
- package/lib/packages/mobile/src/utils/optionUtil.js +2 -27
- package/lib/packages/mobile/src/utils/pageHistory.js +16 -0
- package/lib/packages/mobile/src/utils/validation.js +129 -0
- package/lib/packages/vue/src/components/forms/number/Number.vue.js +3 -2
- package/lib/packages/vue/src/components/table/TableColumn.vue.js +12 -8
- package/package.json +1 -1
|
@@ -15,8 +15,7 @@ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toString
|
|
|
15
15
|
;/* empty css */
|
|
16
16
|
const Vue = require("vue");
|
|
17
17
|
const index = require("../field/index.js");
|
|
18
|
-
|
|
19
|
-
const common = require("../../../utils/common.js");
|
|
18
|
+
require("../../../utils/optionUtil.js");
|
|
20
19
|
const index$2 = require("../../../../../../node_modules/vant/es/picker/index.js");
|
|
21
20
|
const index$1 = require("../../../../../../node_modules/vant/es/popup/index.js");
|
|
22
21
|
const index$3 = require("../../../../../../node_modules/vant/es/icon/index.js");
|
|
@@ -68,34 +67,19 @@ const _sfc_main = {
|
|
|
68
67
|
emits: ["update:modelValue"],
|
|
69
68
|
setup(__props, { emit: __emit }) {
|
|
70
69
|
const currentInstance = Vue.getCurrentInstance();
|
|
71
|
-
|
|
70
|
+
currentInstance.proxy;
|
|
72
71
|
const props = __props;
|
|
73
72
|
Vue.useAttrs();
|
|
74
|
-
const finalOptions = Vue.
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
optionUtil.getOptions({
|
|
79
|
-
ctx,
|
|
80
|
-
dataSources: props.dataSources,
|
|
81
|
-
formData: props.formData,
|
|
82
|
-
fields: props.fields,
|
|
83
|
-
...props.optionConfig
|
|
84
|
-
}).then((data) => {
|
|
85
|
-
finalOptions.value = data;
|
|
86
|
-
});
|
|
87
|
-
},
|
|
88
|
-
{
|
|
89
|
-
deep: true,
|
|
90
|
-
immediate: true
|
|
91
|
-
}
|
|
92
|
-
);
|
|
73
|
+
const finalOptions = Vue.computed(() => {
|
|
74
|
+
if (!props.optionConfig) return [];
|
|
75
|
+
return props.optionConfig.options || [];
|
|
76
|
+
});
|
|
93
77
|
const showPicker = Vue.ref(false);
|
|
94
78
|
const emit = __emit;
|
|
95
79
|
const pickerValue = Vue.computed({
|
|
96
80
|
get: () => {
|
|
97
81
|
const value = props.modelValue;
|
|
98
|
-
return value.split(",");
|
|
82
|
+
return (value == null ? void 0 : value.split(",")) || [];
|
|
99
83
|
},
|
|
100
84
|
set: (val) => {
|
|
101
85
|
emit("update:modelValue", val.join(","));
|
|
@@ -105,7 +89,7 @@ const _sfc_main = {
|
|
|
105
89
|
const selectedOption = finalOptions.value.find(
|
|
106
90
|
(option) => option.value == pickerValue.value.join(",")
|
|
107
91
|
);
|
|
108
|
-
return selectedOption ? selectedOption.label : "";
|
|
92
|
+
return selectedOption ? selectedOption.label : pickerValue.value.join(",");
|
|
109
93
|
});
|
|
110
94
|
const onConfirm = ({ selectedValues, selectedOptions }) => {
|
|
111
95
|
pickerValue.value = selectedValues;
|
|
@@ -2,9 +2,8 @@
|
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
3
|
const Vue = require("vue");
|
|
4
4
|
const index = require("../field/index.js");
|
|
5
|
-
|
|
5
|
+
require("../../../utils/optionUtil.js");
|
|
6
6
|
const index$1 = require("../radioGroup/index.js");
|
|
7
|
-
const common = require("../../../utils/common.js");
|
|
8
7
|
const _hoisted_1 = { key: 1 };
|
|
9
8
|
const _sfc_main = {
|
|
10
9
|
__name: "FieldRadio",
|
|
@@ -38,28 +37,13 @@ const _sfc_main = {
|
|
|
38
37
|
emits: ["update:modelValue"],
|
|
39
38
|
setup(__props, { emit: __emit }) {
|
|
40
39
|
const currentInstance = Vue.getCurrentInstance();
|
|
41
|
-
|
|
40
|
+
currentInstance.proxy;
|
|
42
41
|
const props = __props;
|
|
43
42
|
Vue.useAttrs();
|
|
44
|
-
const finalOptions = Vue.
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
optionUtil.getOptions({
|
|
49
|
-
ctx,
|
|
50
|
-
dataSources: props.dataSources,
|
|
51
|
-
formData: props.formData,
|
|
52
|
-
fields: props.fields,
|
|
53
|
-
...props.optionConfig
|
|
54
|
-
}).then((data) => {
|
|
55
|
-
finalOptions.value = data;
|
|
56
|
-
});
|
|
57
|
-
},
|
|
58
|
-
{
|
|
59
|
-
deep: true,
|
|
60
|
-
immediate: true
|
|
61
|
-
}
|
|
62
|
-
);
|
|
43
|
+
const finalOptions = Vue.computed(() => {
|
|
44
|
+
if (!props.optionConfig) return [];
|
|
45
|
+
return props.optionConfig.options || [];
|
|
46
|
+
});
|
|
63
47
|
const emit = __emit;
|
|
64
48
|
const compValue = Vue.computed({
|
|
65
49
|
get: () => {
|
|
@@ -73,7 +57,7 @@ const _sfc_main = {
|
|
|
73
57
|
const selectedOption = finalOptions.value.find(
|
|
74
58
|
(option) => option.value === compValue.value
|
|
75
59
|
);
|
|
76
|
-
return selectedOption ? selectedOption.label :
|
|
60
|
+
return selectedOption ? selectedOption.label : compValue.value;
|
|
77
61
|
});
|
|
78
62
|
return (_ctx, _cache) => {
|
|
79
63
|
return Vue.openBlock(), Vue.createBlock(Vue.unref(index.MobileField), Vue.mergeProps(_ctx.$attrs, {
|
|
@@ -39,12 +39,19 @@ const _sfc_main = {
|
|
|
39
39
|
const searchData = Vue.ref("");
|
|
40
40
|
function onClickFilter() {
|
|
41
41
|
}
|
|
42
|
+
const filters = Vue.ref({});
|
|
42
43
|
function onSearch() {
|
|
43
|
-
|
|
44
|
+
filters.value.dynamicFilter = searchData.value;
|
|
45
|
+
emit("filterChange", filters.value);
|
|
44
46
|
}
|
|
45
47
|
function onQuickFilterChange(result) {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
+
filters.value = {
|
|
49
|
+
dynamicFilter: searchData.value
|
|
50
|
+
};
|
|
51
|
+
result.forEach((item) => {
|
|
52
|
+
filters.value[item.fieldName] = item.values.join("|");
|
|
53
|
+
});
|
|
54
|
+
emit("filterChange", filters.value);
|
|
48
55
|
}
|
|
49
56
|
const filterData = Vue.ref([]);
|
|
50
57
|
const fieldDataSources = /* @__PURE__ */ new Set();
|
|
@@ -69,7 +76,8 @@ const _sfc_main = {
|
|
|
69
76
|
const dsManager = datasource.createDataSource({
|
|
70
77
|
http: ctx.$http,
|
|
71
78
|
dataSources: props.dataSources,
|
|
72
|
-
currentDataSourceId: dataSourceId
|
|
79
|
+
currentDataSourceId: dataSourceId,
|
|
80
|
+
loading: false
|
|
73
81
|
});
|
|
74
82
|
const data = await dsManager.fetch();
|
|
75
83
|
let options = [];
|
|
@@ -87,11 +95,12 @@ const _sfc_main = {
|
|
|
87
95
|
if (dictionaryKeys.size > 0) {
|
|
88
96
|
try {
|
|
89
97
|
const keyName = Array.from(dictionaryKeys).join(",");
|
|
90
|
-
const response = await ctx.$http.
|
|
98
|
+
const response = await ctx.$http.postFormMobile(
|
|
91
99
|
"/base-server/parm/sysParmDic/getDicListByKey",
|
|
92
100
|
{
|
|
93
101
|
keyName
|
|
94
|
-
}
|
|
102
|
+
},
|
|
103
|
+
false
|
|
95
104
|
);
|
|
96
105
|
const dictionaryData = response;
|
|
97
106
|
if (typeof dictionaryData === "object") {
|
|
@@ -77,7 +77,7 @@ const _sfc_main = {
|
|
|
77
77
|
const emit = __emit;
|
|
78
78
|
const fileList = Vue.computed({
|
|
79
79
|
get: () => {
|
|
80
|
-
return props.modelValue;
|
|
80
|
+
return props.modelValue || [];
|
|
81
81
|
},
|
|
82
82
|
set: (val) => {
|
|
83
83
|
emit("update:modelValue", val);
|
|
@@ -221,5 +221,5 @@ const _sfc_main = {
|
|
|
221
221
|
};
|
|
222
222
|
}
|
|
223
223
|
};
|
|
224
|
-
const _Uploader = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-
|
|
224
|
+
const _Uploader = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-c9dede2d"]]);
|
|
225
225
|
exports.default = _Uploader;
|
|
@@ -54,7 +54,7 @@ const _sfc_main = {
|
|
|
54
54
|
});
|
|
55
55
|
});
|
|
56
56
|
function getFlowCutNum() {
|
|
57
|
-
ctx.$http.
|
|
57
|
+
ctx.$http.postMobile("/base-server/flow/workbench/getTaskCutByUser", null, false).then((data) => {
|
|
58
58
|
flowMsgNum.value = data;
|
|
59
59
|
});
|
|
60
60
|
}
|
|
@@ -63,9 +63,13 @@ const _sfc_main = {
|
|
|
63
63
|
getFlowCutNum();
|
|
64
64
|
});
|
|
65
65
|
function getMessageCutNum() {
|
|
66
|
-
ctx.$http.
|
|
67
|
-
|
|
68
|
-
|
|
66
|
+
ctx.$http.postFormMobile(
|
|
67
|
+
"/base-server/msgMessages/initMsgUnReadNum",
|
|
68
|
+
{
|
|
69
|
+
opNo: store.getters.user.opNo
|
|
70
|
+
},
|
|
71
|
+
false
|
|
72
|
+
).then((data) => {
|
|
69
73
|
msgNum.value = data;
|
|
70
74
|
});
|
|
71
75
|
}
|
|
@@ -112,5 +116,5 @@ const _sfc_main = {
|
|
|
112
116
|
};
|
|
113
117
|
}
|
|
114
118
|
};
|
|
115
|
-
const _Tabbar = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-
|
|
119
|
+
const _Tabbar = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-5e9f5a59"]]);
|
|
116
120
|
exports.default = _Tabbar;
|
|
@@ -7,20 +7,16 @@ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toString
|
|
|
7
7
|
;/* empty css */
|
|
8
8
|
;/* empty css */
|
|
9
9
|
;/* empty css */
|
|
10
|
-
;/* empty css */
|
|
11
|
-
;/* empty css */
|
|
12
|
-
;/* empty css */
|
|
13
|
-
;/* empty css */
|
|
14
10
|
const Vue = require("vue");
|
|
15
11
|
const common = require("../../../utils/common.js");
|
|
16
12
|
const page = require("../../../page.vue.js");
|
|
17
13
|
const index$1 = require("../../custom/appTimeLine/index.js");
|
|
18
14
|
const index = require("../../custom/document/index.js");
|
|
15
|
+
const parseFilterConfig = require("../../../utils/parseFilterConfig.js");
|
|
19
16
|
;/* empty css */
|
|
20
17
|
const _pluginVue_exportHelper = require("../../../../../../_virtual/_plugin-vue_export-helper.js");
|
|
21
|
-
const index$2 = require("../../../../../../node_modules/vant/es/
|
|
22
|
-
const index$3 = require("../../../../../../node_modules/vant/es/
|
|
23
|
-
const index$4 = require("../../../../../../node_modules/vant/es/tab/index.js");
|
|
18
|
+
const index$2 = require("../../../../../../node_modules/vant/es/tabs/index.js");
|
|
19
|
+
const index$3 = require("../../../../../../node_modules/vant/es/tab/index.js");
|
|
24
20
|
const _hoisted_1 = { class: "fec-tab-content" };
|
|
25
21
|
const _sfc_main = {
|
|
26
22
|
__name: "Tabs",
|
|
@@ -70,6 +66,22 @@ const _sfc_main = {
|
|
|
70
66
|
busPkField: {
|
|
71
67
|
type: String,
|
|
72
68
|
default: ""
|
|
69
|
+
},
|
|
70
|
+
formData: {
|
|
71
|
+
type: Object,
|
|
72
|
+
default: {}
|
|
73
|
+
},
|
|
74
|
+
fields: {
|
|
75
|
+
type: Array,
|
|
76
|
+
default: []
|
|
77
|
+
},
|
|
78
|
+
isDev: {
|
|
79
|
+
type: Boolean,
|
|
80
|
+
default: false
|
|
81
|
+
},
|
|
82
|
+
dynamicInputFilter: {
|
|
83
|
+
type: Array,
|
|
84
|
+
default: []
|
|
73
85
|
}
|
|
74
86
|
},
|
|
75
87
|
emits: ["update:modelValue"],
|
|
@@ -79,11 +91,27 @@ const _sfc_main = {
|
|
|
79
91
|
const pageList = Vue.inject("pageList");
|
|
80
92
|
const activeName = Vue.ref(((_a = props.options[0]) == null ? void 0 : _a.id) || "");
|
|
81
93
|
const tabsOptions = Vue.computed(() => {
|
|
82
|
-
const tabs = [...props.options || []]
|
|
94
|
+
const tabs = [...props.options || []].filter((item) => {
|
|
95
|
+
if (!item.showCondition || props.isDev) return true;
|
|
96
|
+
return parseFilterConfig.checkFilterMatch(item.showCondition, props.formData, props.fields);
|
|
97
|
+
});
|
|
98
|
+
tabs.forEach((tab) => {
|
|
99
|
+
const params = {};
|
|
100
|
+
const fieldMapping = tab.fieldMapping;
|
|
101
|
+
if (fieldMapping && Array.isArray(fieldMapping)) {
|
|
102
|
+
fieldMapping.forEach((item) => {
|
|
103
|
+
const field = props.fields.find((field2) => field2.id == item.field);
|
|
104
|
+
if (field) {
|
|
105
|
+
params[item.value] = props.formData[field.fieldName];
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
tab.params = { ...props.formData, ...params };
|
|
110
|
+
});
|
|
83
111
|
if (props.document) {
|
|
84
112
|
tabs.push({ id: "tab_doc_info", title: "要件信息", component: index.MobileDocument });
|
|
85
113
|
}
|
|
86
|
-
if (props.approvalHistory) {
|
|
114
|
+
if (props.approvalHistory && props.formData.approveSts != "00") {
|
|
87
115
|
tabs.push({
|
|
88
116
|
id: "tab_timeline_info",
|
|
89
117
|
title: "审批历史",
|
|
@@ -95,10 +123,10 @@ const _sfc_main = {
|
|
|
95
123
|
const componentParams = Vue.computed(() => {
|
|
96
124
|
let traceNo = props.params.traceNo;
|
|
97
125
|
if (props.busPkField) {
|
|
98
|
-
traceNo = props.
|
|
126
|
+
traceNo = props.formData[props.busPkField];
|
|
99
127
|
}
|
|
100
128
|
return {
|
|
101
|
-
...props.
|
|
129
|
+
...props.formData,
|
|
102
130
|
traceNo
|
|
103
131
|
};
|
|
104
132
|
});
|
|
@@ -124,32 +152,34 @@ const _sfc_main = {
|
|
|
124
152
|
const getPage = (pageId) => {
|
|
125
153
|
return pageCache.value[pageId] || null;
|
|
126
154
|
};
|
|
155
|
+
const setPageRef = (id, el) => {
|
|
156
|
+
};
|
|
127
157
|
const searchData = Vue.ref("");
|
|
128
|
-
function
|
|
129
|
-
|
|
158
|
+
function onFilterChange(filter) {
|
|
159
|
+
const dynamicFilterFieldName = props.dynamicInputFilter.map((item) => item.fieldName).join(",");
|
|
160
|
+
searchData.value = {
|
|
161
|
+
filters: JSON.stringify({ ...filter, dynamicFilterFieldName })
|
|
162
|
+
};
|
|
130
163
|
}
|
|
131
164
|
return (_ctx, _cache) => {
|
|
132
|
-
const
|
|
133
|
-
const _component_van_tab = index$
|
|
134
|
-
const _component_van_tabs = index$
|
|
165
|
+
const _component_fec_mobile_search = Vue.resolveComponent("fec-mobile-search");
|
|
166
|
+
const _component_van_tab = index$3.Tab;
|
|
167
|
+
const _component_van_tabs = index$2.Tabs;
|
|
135
168
|
return Vue.openBlock(), Vue.createElementBlock("div", {
|
|
136
169
|
class: Vue.normalizeClass(["fec-tabs-container", { isAutoHeight: props.autoHeight }]),
|
|
137
170
|
style: Vue.normalizeStyle("height:" + Vue.unref(compHeight))
|
|
138
171
|
}, [
|
|
139
|
-
__props.enableFilter ? (Vue.openBlock(), Vue.createBlock(
|
|
172
|
+
__props.enableFilter ? (Vue.openBlock(), Vue.createBlock(_component_fec_mobile_search, {
|
|
140
173
|
key: 0,
|
|
141
|
-
modelValue: Vue.unref(searchData),
|
|
142
|
-
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => Vue.isRef(searchData) ? searchData.value = $event : null),
|
|
143
|
-
shape: "round",
|
|
144
174
|
placeholder: __props.filterPlaceholder,
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
}, null, 8, ["modelValue", "placeholder"])) : Vue.createCommentVNode("", true),
|
|
175
|
+
onFilterChange
|
|
176
|
+
}, null, 8, ["placeholder"])) : Vue.createCommentVNode("", true),
|
|
148
177
|
Vue.createVNode(_component_van_tabs, {
|
|
149
178
|
class: "fec-tabs",
|
|
150
179
|
active: Vue.unref(activeName),
|
|
151
|
-
"onUpdate:active": _cache[
|
|
152
|
-
swipeable: Vue.unref(tabSwipeable)
|
|
180
|
+
"onUpdate:active": _cache[0] || (_cache[0] = ($event) => Vue.isRef(activeName) ? activeName.value = $event : null),
|
|
181
|
+
swipeable: Vue.unref(tabSwipeable),
|
|
182
|
+
"swipe-threshold": 4
|
|
153
183
|
}, {
|
|
154
184
|
default: Vue.withCtx(() => [
|
|
155
185
|
(Vue.openBlock(true), Vue.createElementBlock(Vue.Fragment, null, Vue.renderList(Vue.unref(tabsOptions), (item) => {
|
|
@@ -162,9 +192,12 @@ const _sfc_main = {
|
|
|
162
192
|
Vue.createElementVNode("div", _hoisted_1, [
|
|
163
193
|
item.pageId && getPage(item.pageId) ? (Vue.openBlock(), Vue.createBlock(page.default, {
|
|
164
194
|
key: 0,
|
|
195
|
+
ref_for: true,
|
|
196
|
+
ref: (el) => setPageRef(item.id),
|
|
165
197
|
parentPage: getPage(item.pageId),
|
|
166
|
-
params:
|
|
167
|
-
|
|
198
|
+
params: item.params,
|
|
199
|
+
initSearchData: Vue.unref(searchData)
|
|
200
|
+
}, null, 8, ["parentPage", "params", "initSearchData"])) : item.component ? (Vue.openBlock(), Vue.createBlock(Vue.resolveDynamicComponent(item.component), Vue.mergeProps({
|
|
168
201
|
key: 1,
|
|
169
202
|
ref_for: true
|
|
170
203
|
}, Vue.unref(componentParams)), null, 16)) : Vue.createCommentVNode("", true)
|
|
@@ -180,5 +213,5 @@ const _sfc_main = {
|
|
|
180
213
|
};
|
|
181
214
|
}
|
|
182
215
|
};
|
|
183
|
-
const _Tabs = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-
|
|
216
|
+
const _Tabs = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-217113cd"]]);
|
|
184
217
|
exports.default = _Tabs;
|
|
@@ -33,6 +33,10 @@ const _sfc_main = {
|
|
|
33
33
|
pageKey: {
|
|
34
34
|
type: String,
|
|
35
35
|
default: ""
|
|
36
|
+
},
|
|
37
|
+
queryParams: {
|
|
38
|
+
type: Object,
|
|
39
|
+
default: {}
|
|
36
40
|
}
|
|
37
41
|
},
|
|
38
42
|
setup(__props) {
|
|
@@ -56,7 +60,7 @@ const _sfc_main = {
|
|
|
56
60
|
pageHistory.pageHistory.clear();
|
|
57
61
|
let homePage;
|
|
58
62
|
if (props.pageKey) {
|
|
59
|
-
homePage = pageList.value
|
|
63
|
+
homePage = common.findPageByKey(pageList.value, props.pageKey);
|
|
60
64
|
if (!homePage) {
|
|
61
65
|
noTargetPage.value = true;
|
|
62
66
|
}
|
|
@@ -114,7 +118,7 @@ const _sfc_main = {
|
|
|
114
118
|
routePage.value = null;
|
|
115
119
|
}
|
|
116
120
|
}
|
|
117
|
-
const pageParams = Vue.ref(
|
|
121
|
+
const pageParams = Vue.ref(props.queryParams);
|
|
118
122
|
eventBus.default.on("loadPage", ({ pageId, params }) => {
|
|
119
123
|
loadPage(pageId);
|
|
120
124
|
pageParams.value = params;
|
|
@@ -128,6 +132,19 @@ const _sfc_main = {
|
|
|
128
132
|
});
|
|
129
133
|
Vue.provide("pageList", pageList);
|
|
130
134
|
Vue.onMounted(() => {
|
|
135
|
+
const search = new URLSearchParams(location.search);
|
|
136
|
+
if (search.get("safeTop") || search.get("safeBottom")) {
|
|
137
|
+
const top = search.get("safeTop") || 0;
|
|
138
|
+
const bottom = search.get("safeBottom") || 0;
|
|
139
|
+
document.documentElement.style.setProperty(
|
|
140
|
+
"--safe-area-inset-top",
|
|
141
|
+
`${top}px`
|
|
142
|
+
);
|
|
143
|
+
document.documentElement.style.setProperty(
|
|
144
|
+
"--safe-area-inset-bottom",
|
|
145
|
+
`${bottom}px`
|
|
146
|
+
);
|
|
147
|
+
}
|
|
131
148
|
loadConfig();
|
|
132
149
|
});
|
|
133
150
|
return (_ctx, _cache) => {
|
|
@@ -156,5 +173,5 @@ const _sfc_main = {
|
|
|
156
173
|
};
|
|
157
174
|
}
|
|
158
175
|
};
|
|
159
|
-
const MobileApp = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-
|
|
176
|
+
const MobileApp = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-b26c4347"]]);
|
|
160
177
|
exports.default = MobileApp;
|