@dazhicheng/ui 1.6.46 → 1.6.48
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/dist/components/tt-custom-export-modal/index.d.ts +8 -0
- package/dist/components/tt-custom-export-modal/index.js +21 -0
- package/dist/components/tt-custom-export-modal/src/TtCustomExportModal.vue.d.ts +37 -0
- package/dist/components/tt-custom-export-modal/src/TtCustomExportModal.vue.js +322 -0
- package/dist/components/tt-custom-export-modal/src/TtCustomExportModal.vue2.js +4 -0
- package/dist/components/tt-custom-export-modal/src/api.d.ts +57 -0
- package/dist/components/tt-custom-export-modal/src/api.js +44 -0
- package/dist/components/tt-custom-export-modal/src/assets/search.svg.js +8 -0
- package/dist/components/tt-custom-export-modal/src/assets/star.svg.js +7 -0
- package/dist/components/tt-custom-export-modal/src/assets/trash.svg.js +11 -0
- package/dist/components/tt-custom-export-modal/src/components/FieldGridSection.vue.d.ts +275 -0
- package/dist/components/tt-custom-export-modal/src/components/FieldGridSection.vue.js +7 -0
- package/dist/components/tt-custom-export-modal/src/components/FieldGridSection.vue2.js +321 -0
- package/dist/components/tt-custom-export-modal/src/components/FieldToolbarSection.vue.d.ts +28 -0
- package/dist/components/tt-custom-export-modal/src/components/FieldToolbarSection.vue.js +65 -0
- package/dist/components/tt-custom-export-modal/src/components/FieldToolbarSection.vue2.js +4 -0
- package/dist/components/tt-custom-export-modal/src/components/TemplateManagerSection.vue.d.ts +31 -0
- package/dist/components/tt-custom-export-modal/src/components/TemplateManagerSection.vue.js +152 -0
- package/dist/components/tt-custom-export-modal/src/components/TemplateManagerSection.vue2.js +4 -0
- package/dist/components/tt-custom-export-modal/src/types/index.d.ts +74 -0
- package/dist/components/tt-custom-export-modal/src/types/report.d.ts +129 -0
- package/dist/components/tt-panel-select/src/index.vue.d.ts +2 -0
- package/dist/components/tt-panel-select/src/index.vue.js +53 -49
- package/dist/components/tt-table/index.js +5 -4
- package/dist/components/tt-table/src/TableForm.vue.d.ts +143 -0
- package/dist/components/tt-table/src/TableForm.vue.js +223 -198
- package/dist/components/tt-table/src/components/TableToolbarTools.vue.d.ts +11 -0
- package/dist/components/tt-table/src/components/TableToolbarTools.vue.js +33 -25
- package/dist/components/tt-table/src/hooks/useTableForm.js +13 -12
- package/dist/components/tt-table/src/props.d.ts +5 -0
- package/dist/components/tt-table/src/props.js +4 -0
- package/dist/components/tt-table/src/toolProps.d.ts +5 -0
- package/dist/components/tt-table/src/toolProps.js +5 -0
- package/dist/components/tt-table/src/types/table.d.ts +2 -0
- package/dist/components/tt-table/src/types/tableForm.d.ts +6 -0
- package/dist/components/tt-table/src/types/tableTools.d.ts +2 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +102 -99
- package/dist/packages/utils/src/calc.js +26 -8
- package/dist/style.css +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { defineComponent as p, mergeModels as m, useModel as k, createElementBlock as y, openBlock as u, createElementVNode as f, createVNode as i, createBlock as g, createCommentVNode as v, unref as l, withCtx as o, createTextVNode as r, toDisplayString as x } from "vue";
|
|
2
|
+
import { TtButton as d } from "../../../tt-button/index.js";
|
|
3
|
+
import C from "../assets/search.svg.js";
|
|
4
|
+
import { ElInput as B } from "element-plus";
|
|
5
|
+
const S = { class: "flex items-center gap-2.5" }, V = { class: "relative flex-1" }, w = ["innerHTML"], N = /* @__PURE__ */ p({
|
|
6
|
+
name: "FieldToolbarSection",
|
|
7
|
+
__name: "FieldToolbarSection",
|
|
8
|
+
props: /* @__PURE__ */ m({
|
|
9
|
+
isAllSelected: { type: Boolean, default: !1 },
|
|
10
|
+
hasListColumns: { type: Boolean, default: !1 }
|
|
11
|
+
}, {
|
|
12
|
+
keyword: { default: "" },
|
|
13
|
+
keywordModifiers: {}
|
|
14
|
+
}),
|
|
15
|
+
emits: /* @__PURE__ */ m(["toggleSelectAll", "selectByListColumns", "clearAll"], ["update:keyword"]),
|
|
16
|
+
setup(n, { emit: c }) {
|
|
17
|
+
const s = c, a = k(n, "keyword");
|
|
18
|
+
return (A, e) => (u(), y("div", S, [
|
|
19
|
+
f("div", V, [
|
|
20
|
+
i(l(B), {
|
|
21
|
+
modelValue: a.value,
|
|
22
|
+
"onUpdate:modelValue": e[0] || (e[0] = (t) => a.value = t),
|
|
23
|
+
placeholder: "搜索字段名称或编码...",
|
|
24
|
+
clearable: ""
|
|
25
|
+
}, {
|
|
26
|
+
prefix: o(() => [
|
|
27
|
+
f("span", {
|
|
28
|
+
class: "inline-flex items-center justify-center align-middle text-(--el-text-color-secondary) [&_svg]:block [&_svg]:size-3.5",
|
|
29
|
+
innerHTML: l(C)
|
|
30
|
+
}, null, 8, w)
|
|
31
|
+
]),
|
|
32
|
+
_: 1
|
|
33
|
+
}, 8, ["modelValue"])
|
|
34
|
+
]),
|
|
35
|
+
i(l(d), {
|
|
36
|
+
onClick: e[1] || (e[1] = (t) => s("toggleSelectAll"))
|
|
37
|
+
}, {
|
|
38
|
+
default: o(() => [
|
|
39
|
+
r(x(n.isAllSelected ? "取消本页全选" : "本页全选"), 1)
|
|
40
|
+
]),
|
|
41
|
+
_: 1
|
|
42
|
+
}),
|
|
43
|
+
n.hasListColumns ? (u(), g(l(d), {
|
|
44
|
+
key: 0,
|
|
45
|
+
onClick: e[2] || (e[2] = (t) => s("selectByListColumns"))
|
|
46
|
+
}, {
|
|
47
|
+
default: o(() => [...e[4] || (e[4] = [
|
|
48
|
+
r("按列表字段勾选", -1)
|
|
49
|
+
])]),
|
|
50
|
+
_: 1
|
|
51
|
+
})) : v("", !0),
|
|
52
|
+
i(l(d), {
|
|
53
|
+
onClick: e[3] || (e[3] = (t) => s("clearAll"))
|
|
54
|
+
}, {
|
|
55
|
+
default: o(() => [...e[5] || (e[5] = [
|
|
56
|
+
r("清空", -1)
|
|
57
|
+
])]),
|
|
58
|
+
_: 1
|
|
59
|
+
})
|
|
60
|
+
]));
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
export {
|
|
64
|
+
N as default
|
|
65
|
+
};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { ReportAPI } from '../types';
|
|
2
|
+
/**
|
|
3
|
+
* 模板管理的展示输入;本组件不请求接口,模板数据与保存状态由父组件提供。
|
|
4
|
+
*/
|
|
5
|
+
type __VLS_Props = {
|
|
6
|
+
/** 后端或 mock 返回的模板,用于下拉选项和当前模板查找。 */
|
|
7
|
+
templateList: ReportAPI.ExportTemplateCO[];
|
|
8
|
+
/** 父组件执行保存请求期间为 true,只控制保存按钮加载状态。 */
|
|
9
|
+
isSaving?: boolean;
|
|
10
|
+
};
|
|
11
|
+
type __VLS_PublicProps = {
|
|
12
|
+
"selectedTemplateId"?: number | undefined;
|
|
13
|
+
} & __VLS_Props;
|
|
14
|
+
declare const _default: import('vue').DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
15
|
+
"update:selectedTemplateId": (value: number | undefined) => any;
|
|
16
|
+
} & {
|
|
17
|
+
delete: (templateId: number, templateName: string) => any;
|
|
18
|
+
selectTemplate: (templateId: number | undefined) => any;
|
|
19
|
+
setDefault: (templateId: number) => any;
|
|
20
|
+
save: (name: string) => any;
|
|
21
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
22
|
+
onDelete?: ((templateId: number, templateName: string) => any) | undefined;
|
|
23
|
+
onSelectTemplate?: ((templateId: number | undefined) => any) | undefined;
|
|
24
|
+
onSetDefault?: ((templateId: number) => any) | undefined;
|
|
25
|
+
onSave?: ((name: string) => any) | undefined;
|
|
26
|
+
"onUpdate:selectedTemplateId"?: ((value: number | undefined) => any) | undefined;
|
|
27
|
+
}>, {
|
|
28
|
+
templateList: ReportAPI.ExportTemplateCO[];
|
|
29
|
+
isSaving: boolean;
|
|
30
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
31
|
+
export default _default;
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { defineComponent as B, mergeModels as k, useModel as D, ref as E, computed as N, watch as I, createElementBlock as c, openBlock as r, createElementVNode as a, createVNode as u, createCommentVNode as f, createBlock as v, unref as s, withCtx as i, Fragment as h, renderList as z, toDisplayString as g, createTextVNode as x } from "vue";
|
|
2
|
+
import { TtButton as T } from "../../../tt-button/index.js";
|
|
3
|
+
import { ElSelect as H, ElOption as j, ElTag as S, ElInput as U } from "element-plus";
|
|
4
|
+
import F from "../assets/star.svg.js";
|
|
5
|
+
import O from "../assets/trash.svg.js";
|
|
6
|
+
const q = { class: "space-y-2.5 rounded-md border border-(--el-border-color-lighter) bg-(--el-fill-color-light)/40 p-3.5" }, A = { class: "flex flex-wrap items-center gap-2.5" }, G = { class: "flex h-full items-center justify-between text-xs" }, J = ["innerHTML"], K = ["innerHTML"], P = {
|
|
7
|
+
key: 0,
|
|
8
|
+
class: "text-xs text-(--el-text-color-secondary)"
|
|
9
|
+
}, Q = { class: "flex flex-wrap items-center gap-2.5" }, $ = /* @__PURE__ */ B({
|
|
10
|
+
name: "TemplateManagerSection",
|
|
11
|
+
__name: "TemplateManagerSection",
|
|
12
|
+
props: /* @__PURE__ */ k({
|
|
13
|
+
templateList: { default: () => [] },
|
|
14
|
+
isSaving: { type: Boolean, default: !1 }
|
|
15
|
+
}, {
|
|
16
|
+
selectedTemplateId: {},
|
|
17
|
+
selectedTemplateIdModifiers: {}
|
|
18
|
+
}),
|
|
19
|
+
emits: /* @__PURE__ */ k(["selectTemplate", "setDefault", "delete", "save"], ["update:selectedTemplateId"]),
|
|
20
|
+
setup(m, { emit: V }) {
|
|
21
|
+
const C = m, p = V, l = D(m, "selectedTemplateId"), d = E(""), o = N(() => {
|
|
22
|
+
if (l.value)
|
|
23
|
+
return C.templateList.find((t) => t.id === l.value);
|
|
24
|
+
}), y = N(() => {
|
|
25
|
+
var t;
|
|
26
|
+
return !!((t = o.value) != null && t.defaultTemplate);
|
|
27
|
+
}), M = (t) => {
|
|
28
|
+
p("selectTemplate", t);
|
|
29
|
+
}, w = () => {
|
|
30
|
+
l.value && p("setDefault", l.value);
|
|
31
|
+
}, L = () => {
|
|
32
|
+
!l.value || !o.value || p("delete", l.value, o.value.templateName || "未命名模板");
|
|
33
|
+
}, _ = () => {
|
|
34
|
+
const t = d.value.trim();
|
|
35
|
+
t && p("save", t);
|
|
36
|
+
};
|
|
37
|
+
return I(
|
|
38
|
+
o,
|
|
39
|
+
(t) => {
|
|
40
|
+
d.value = t != null && t.templateName ? t.templateName : "";
|
|
41
|
+
},
|
|
42
|
+
{ immediate: !0 }
|
|
43
|
+
), (t, e) => {
|
|
44
|
+
var b;
|
|
45
|
+
return r(), c("div", q, [
|
|
46
|
+
a("div", A, [
|
|
47
|
+
e[6] || (e[6] = a("span", { class: "shrink-0 text-sm font-medium text-(--el-text-color-regular)" }, "导出模板", -1)),
|
|
48
|
+
u(s(H), {
|
|
49
|
+
modelValue: l.value,
|
|
50
|
+
"onUpdate:modelValue": e[0] || (e[0] = (n) => l.value = n),
|
|
51
|
+
placeholder: "请选择导出模板",
|
|
52
|
+
clearable: "",
|
|
53
|
+
style: { width: "240px" },
|
|
54
|
+
onChange: M
|
|
55
|
+
}, {
|
|
56
|
+
default: i(() => [
|
|
57
|
+
(r(!0), c(h, null, z(m.templateList, (n) => (r(), v(s(j), {
|
|
58
|
+
key: n.id,
|
|
59
|
+
label: n.templateName,
|
|
60
|
+
value: n.id ?? 0
|
|
61
|
+
}, {
|
|
62
|
+
default: i(() => [
|
|
63
|
+
a("div", G, [
|
|
64
|
+
a("span", null, g(n.templateName), 1),
|
|
65
|
+
n.defaultTemplate ? (r(), v(s(S), {
|
|
66
|
+
key: 0,
|
|
67
|
+
type: "success",
|
|
68
|
+
size: "small",
|
|
69
|
+
effect: "plain",
|
|
70
|
+
class: "ml-2"
|
|
71
|
+
}, {
|
|
72
|
+
default: i(() => [...e[2] || (e[2] = [
|
|
73
|
+
x("默认", -1)
|
|
74
|
+
])]),
|
|
75
|
+
_: 1
|
|
76
|
+
})) : f("", !0)
|
|
77
|
+
])
|
|
78
|
+
]),
|
|
79
|
+
_: 2
|
|
80
|
+
}, 1032, ["label", "value"]))), 128))
|
|
81
|
+
]),
|
|
82
|
+
_: 1
|
|
83
|
+
}, 8, ["modelValue"]),
|
|
84
|
+
u(s(T), {
|
|
85
|
+
disabled: !l.value || y.value,
|
|
86
|
+
onClick: w
|
|
87
|
+
}, {
|
|
88
|
+
default: i(() => [
|
|
89
|
+
a("span", {
|
|
90
|
+
class: "mr-1 inline-flex items-center justify-center align-middle [&_svg]:block [&_svg]:size-3.5",
|
|
91
|
+
innerHTML: s(F)
|
|
92
|
+
}, null, 8, J),
|
|
93
|
+
e[3] || (e[3] = a("span", null, "设为默认", -1))
|
|
94
|
+
]),
|
|
95
|
+
_: 1
|
|
96
|
+
}, 8, ["disabled"]),
|
|
97
|
+
u(s(T), {
|
|
98
|
+
type: "danger",
|
|
99
|
+
plain: "",
|
|
100
|
+
disabled: !l.value,
|
|
101
|
+
onClick: L
|
|
102
|
+
}, {
|
|
103
|
+
default: i(() => [
|
|
104
|
+
a("span", {
|
|
105
|
+
class: "mr-1 inline-flex items-center justify-center align-middle [&_svg]:block [&_svg]:size-3.5",
|
|
106
|
+
innerHTML: s(O)
|
|
107
|
+
}, null, 8, K),
|
|
108
|
+
e[4] || (e[4] = a("span", null, "删除", -1))
|
|
109
|
+
]),
|
|
110
|
+
_: 1
|
|
111
|
+
}, 8, ["disabled"]),
|
|
112
|
+
o.value ? (r(), c("span", P, " 当前:" + g(o.value.templateName) + "(" + g(((b = o.value.fields) == null ? void 0 : b.length) ?? 0) + " 字段) ", 1)) : f("", !0),
|
|
113
|
+
y.value ? (r(), v(s(S), {
|
|
114
|
+
key: 1,
|
|
115
|
+
type: "success",
|
|
116
|
+
size: "small",
|
|
117
|
+
effect: "plain"
|
|
118
|
+
}, {
|
|
119
|
+
default: i(() => [...e[5] || (e[5] = [
|
|
120
|
+
x("默认字段", -1)
|
|
121
|
+
])]),
|
|
122
|
+
_: 1
|
|
123
|
+
})) : f("", !0)
|
|
124
|
+
]),
|
|
125
|
+
a("div", Q, [
|
|
126
|
+
u(s(U), {
|
|
127
|
+
modelValue: d.value,
|
|
128
|
+
"onUpdate:modelValue": e[1] || (e[1] = (n) => d.value = n),
|
|
129
|
+
placeholder: "输入模板名称,保存当前勾选字段",
|
|
130
|
+
clearable: "",
|
|
131
|
+
style: { width: "280px" }
|
|
132
|
+
}, null, 8, ["modelValue"]),
|
|
133
|
+
u(s(T), {
|
|
134
|
+
type: "primary",
|
|
135
|
+
loading: m.isSaving,
|
|
136
|
+
disabled: !d.value.trim(),
|
|
137
|
+
onClick: _
|
|
138
|
+
}, {
|
|
139
|
+
default: i(() => [...e[7] || (e[7] = [
|
|
140
|
+
x(" 保存为模板 ", -1)
|
|
141
|
+
])]),
|
|
142
|
+
_: 1
|
|
143
|
+
}, 8, ["loading", "disabled"]),
|
|
144
|
+
e[8] || (e[8] = a("span", { class: "text-xs text-(--el-text-color-secondary)" }, "同名模板将被覆盖", -1))
|
|
145
|
+
])
|
|
146
|
+
]);
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
});
|
|
150
|
+
export {
|
|
151
|
+
$ as default
|
|
152
|
+
};
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { ReportAPI } from './report';
|
|
2
|
+
import { MaybeRefOrGetter } from 'vue';
|
|
3
|
+
import { VxeTableDefines } from 'vxe-table';
|
|
4
|
+
/**
|
|
5
|
+
* 组件对外约定;业务实体直接引用迁移的 OpenAPI 类型,本文件只声明组件配置和回调参数。
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* 提交给业务页面的导出参数;组件只收集字段与顺序,业务页面负责调用导出接口。
|
|
9
|
+
*/
|
|
10
|
+
export interface ExportConfirmPayload {
|
|
11
|
+
/** 业务编码 */
|
|
12
|
+
businessCode: string;
|
|
13
|
+
/** 已勾选的字段对象列表(按右侧列表的导出顺序排列) */
|
|
14
|
+
selectedFields: ReportAPI.ExportFieldCO[];
|
|
15
|
+
/** 与右侧列表同序的字段编码,供业务接口指定需要导出的列。 */
|
|
16
|
+
selectedFieldCodes: string[];
|
|
17
|
+
/** 按右侧顺序生成的表头名称;无名称时沿用原逻辑取字段编码。 */
|
|
18
|
+
selectedFieldNames: string[];
|
|
19
|
+
/** 当前关联的模板名称;用户手动调整字段后,实际导出内容以 selectedFields 为准。 */
|
|
20
|
+
templateName?: string;
|
|
21
|
+
/** 当前使用的模板ID(若有) */
|
|
22
|
+
templateId?: number;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* open 的单次配置;下次打开会重新替换,不永久修改 Props。
|
|
26
|
+
*/
|
|
27
|
+
export interface TtCustomExportModalOpenOptions {
|
|
28
|
+
/** 业务标题后缀 */
|
|
29
|
+
title?: string;
|
|
30
|
+
/** 业务编码 */
|
|
31
|
+
businessCode?: string;
|
|
32
|
+
/** 当前表格列来源,与 Props 一致;本次打开优先使用。 */
|
|
33
|
+
listColumns?: TtCustomExportModalProps["listColumns"];
|
|
34
|
+
/** 可导出字段列表 */
|
|
35
|
+
availableFields?: ReportAPI.ExportFieldCO[];
|
|
36
|
+
/** 非空数组最后应用,覆盖默认模板并使用此数组顺序;缺少的必选字段补在末尾。空数组不覆盖。 */
|
|
37
|
+
defaultSelectedCodes?: string[];
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* 导出弹窗 Props 属性定义
|
|
41
|
+
*/
|
|
42
|
+
export interface TtCustomExportModalProps {
|
|
43
|
+
/** 弹窗标题后缀或业务名称,如“商务销量统计表” */
|
|
44
|
+
title?: string;
|
|
45
|
+
/** 业务编码,用于拉取后台模板与字段,如“BUSINESS_SALES_REPORT” */
|
|
46
|
+
businessCode?: string;
|
|
47
|
+
/** 非空时直接使用,跳过字段请求;空数组仍走 fetchFieldsApi 或内置接口。 */
|
|
48
|
+
availableFields?: ReportAPI.ExportFieldCO[];
|
|
49
|
+
/** 字段编码或表格列对象,支持 ref/computed 或直接返回 getTableColumns() 结果的函数。 */
|
|
50
|
+
listColumns?: MaybeRefOrGetter<string[] | VxeTableDefines.ColumnOptions[] | undefined>;
|
|
51
|
+
/** 可覆盖内置字段查询;应直接返回已解包的字段数组,不返回 AxiosResponse。 */
|
|
52
|
+
fetchFieldsApi?: (params?: {
|
|
53
|
+
businessCode?: string;
|
|
54
|
+
}) => Promise<ReportAPI.ExportFieldCO[] | unknown>;
|
|
55
|
+
/** 可覆盖内置模板查询;应直接返回已解包的模板数组,字段 sortNo 用于恢复顺序。 */
|
|
56
|
+
fetchTemplatesApi?: (params?: {
|
|
57
|
+
businessCode?: string;
|
|
58
|
+
}) => Promise<ReportAPI.ExportTemplateCO[] | unknown>;
|
|
59
|
+
/** 接收按右侧顺序生成的 fields,sortNo 从 1 开始;Promise 完成后组件刷新模板。 */
|
|
60
|
+
saveTemplateApi?: (data: ReportAPI.ExportTemplateSaveCmd & {
|
|
61
|
+
businessCode: string;
|
|
62
|
+
}) => Promise<unknown>;
|
|
63
|
+
/** 自定义删除模板接口函数 */
|
|
64
|
+
deleteTemplateApi?: (params: {
|
|
65
|
+
businessCode: string;
|
|
66
|
+
templateId: number;
|
|
67
|
+
}) => Promise<unknown>;
|
|
68
|
+
/** 自定义设置默认模板接口函数 */
|
|
69
|
+
setDefaultTemplateApi?: (params: {
|
|
70
|
+
businessCode: string;
|
|
71
|
+
templateId: number;
|
|
72
|
+
}) => Promise<unknown>;
|
|
73
|
+
}
|
|
74
|
+
export type { ReportAPI } from './report';
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
/** 导出模板类型,与 report-web 最新 OpenAPI 生成定义保持一致。 */
|
|
2
|
+
export declare namespace ReportAPI {
|
|
3
|
+
type ExportFieldCO = {
|
|
4
|
+
/** 字段ID */
|
|
5
|
+
id?: number;
|
|
6
|
+
/** 字段编码 */
|
|
7
|
+
fieldCode?: string;
|
|
8
|
+
/** 字段名称/Excel表头 */
|
|
9
|
+
fieldName?: string;
|
|
10
|
+
/** 数据源属性路径 */
|
|
11
|
+
sourceField?: string;
|
|
12
|
+
/** 数据类型 */
|
|
13
|
+
dataType?: string;
|
|
14
|
+
/** 格式化规则 */
|
|
15
|
+
formatPattern?: string;
|
|
16
|
+
/** 默认排序 */
|
|
17
|
+
sortNo?: number;
|
|
18
|
+
/** 是否默认选中 */
|
|
19
|
+
defaultSelected?: boolean;
|
|
20
|
+
/** 是否必选 */
|
|
21
|
+
requiredSelected?: boolean;
|
|
22
|
+
};
|
|
23
|
+
type ExportTemplateCO = {
|
|
24
|
+
/** 模板ID */
|
|
25
|
+
id?: number;
|
|
26
|
+
/** 业务编码 */
|
|
27
|
+
businessCode?: string;
|
|
28
|
+
/** 业务名称 */
|
|
29
|
+
businessName?: string;
|
|
30
|
+
/** 模板名称 */
|
|
31
|
+
templateName?: string;
|
|
32
|
+
/** 模板所属用户ID */
|
|
33
|
+
ownerUid?: number;
|
|
34
|
+
/** 已选字段数 */
|
|
35
|
+
selectedFieldCount?: number;
|
|
36
|
+
/** 是否默认模板 */
|
|
37
|
+
defaultTemplate?: boolean;
|
|
38
|
+
/** 创建时间 */
|
|
39
|
+
createTime?: string;
|
|
40
|
+
/** 更新时间 */
|
|
41
|
+
updateTime?: string;
|
|
42
|
+
/** 模板字段明细 */
|
|
43
|
+
fields?: ExportTemplateFieldCO[];
|
|
44
|
+
};
|
|
45
|
+
type ExportTemplateFieldCO = {
|
|
46
|
+
/** 业务字段ID */
|
|
47
|
+
fieldId?: number;
|
|
48
|
+
/** 字段编码 */
|
|
49
|
+
fieldCode?: string;
|
|
50
|
+
/** 字段名称 */
|
|
51
|
+
fieldName?: string;
|
|
52
|
+
/** 自定义表头 */
|
|
53
|
+
customColumnName?: string;
|
|
54
|
+
/** 模板字段顺序 */
|
|
55
|
+
sortNo?: number;
|
|
56
|
+
/** 列宽 */
|
|
57
|
+
columnWidth?: number;
|
|
58
|
+
/** 格式化规则 */
|
|
59
|
+
formatPattern?: string;
|
|
60
|
+
/** 数据源属性路径 */
|
|
61
|
+
sourceField?: string;
|
|
62
|
+
/** 数据类型 */
|
|
63
|
+
dataType?: string;
|
|
64
|
+
};
|
|
65
|
+
type ExportTemplateSaveCmd = {
|
|
66
|
+
/** 业务编码 */
|
|
67
|
+
businessCode?: string;
|
|
68
|
+
/** 模板名称 */
|
|
69
|
+
templateName?: string;
|
|
70
|
+
/** 模板备注 */
|
|
71
|
+
remark?: string;
|
|
72
|
+
/** 模板字段 */
|
|
73
|
+
fields?: FieldItem[];
|
|
74
|
+
};
|
|
75
|
+
type FieldItem = {
|
|
76
|
+
/** 业务字段ID */
|
|
77
|
+
fieldId?: number;
|
|
78
|
+
/** 排序号 */
|
|
79
|
+
sortNo?: number;
|
|
80
|
+
/** 自定义表头 */
|
|
81
|
+
customColumnName?: string;
|
|
82
|
+
/** 列宽 */
|
|
83
|
+
columnWidth?: number;
|
|
84
|
+
/** 格式化规则 */
|
|
85
|
+
formatPattern?: string;
|
|
86
|
+
};
|
|
87
|
+
type fieldsTemplatesExportApiParams = {
|
|
88
|
+
businessCode: string;
|
|
89
|
+
keyword?: string;
|
|
90
|
+
};
|
|
91
|
+
type templatesExportApiParams = {
|
|
92
|
+
businessCode: string;
|
|
93
|
+
};
|
|
94
|
+
type defaultTemplatesExportApiParams = {
|
|
95
|
+
businessCode: string;
|
|
96
|
+
templateId: number;
|
|
97
|
+
};
|
|
98
|
+
type ResponseResultExportTemplateCO = {
|
|
99
|
+
code?: number;
|
|
100
|
+
msg?: string;
|
|
101
|
+
data?: ExportTemplateCO;
|
|
102
|
+
};
|
|
103
|
+
type ResponseResultListExportTemplateCO = {
|
|
104
|
+
code?: number;
|
|
105
|
+
msg?: string;
|
|
106
|
+
data?: ExportTemplateCO[];
|
|
107
|
+
};
|
|
108
|
+
type ResponseResultListExportFieldCO = {
|
|
109
|
+
code?: number;
|
|
110
|
+
msg?: string;
|
|
111
|
+
data?: ExportFieldCO[];
|
|
112
|
+
};
|
|
113
|
+
type ResponseResultVoid = {
|
|
114
|
+
code?: number;
|
|
115
|
+
msg?: string;
|
|
116
|
+
data?: any;
|
|
117
|
+
};
|
|
118
|
+
type deleteTemplatesExportApiParams = {
|
|
119
|
+
businessCode: string;
|
|
120
|
+
templateId: number;
|
|
121
|
+
};
|
|
122
|
+
type detailTemplatesExportApiParams = {
|
|
123
|
+
businessCode: string;
|
|
124
|
+
templateId: number;
|
|
125
|
+
};
|
|
126
|
+
type defaultTemplateTemplatesExportApiParams = {
|
|
127
|
+
businessCode: string;
|
|
128
|
+
};
|
|
129
|
+
}
|
|
@@ -14,10 +14,12 @@ declare const _default: import('vue').DefineComponent<__VLS_PublicProps, {
|
|
|
14
14
|
getValue: () => PanelSelectModelValue;
|
|
15
15
|
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
16
16
|
change: (val: unknown, options: PanelSelectOption[], currentOption: PanelSelectOption | PanelSelectOption[] | undefined) => any;
|
|
17
|
+
focus: (ev: FocusEvent) => any;
|
|
17
18
|
"update:modelValue": (value: PanelSelectModelValue) => any;
|
|
18
19
|
"visible-change": (val: boolean) => any;
|
|
19
20
|
}, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
20
21
|
onChange?: ((val: unknown, options: PanelSelectOption[], currentOption: PanelSelectOption | PanelSelectOption[] | undefined) => any) | undefined;
|
|
22
|
+
onFocus?: ((ev: FocusEvent) => any) | undefined;
|
|
21
23
|
"onUpdate:modelValue"?: ((value: PanelSelectModelValue) => any) | undefined;
|
|
22
24
|
"onVisible-change"?: ((val: boolean) => any) | undefined;
|
|
23
25
|
}>, {
|