@vipl520/dk-ui 1.0.38 → 1.0.39
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/index.js +41 -6
- package/dist/index.min.js +9 -9
- package/dist/index.min.js.map +1 -1
- package/dist/index.min.mjs +8 -8
- package/dist/index.min.mjs.map +1 -1
- package/dist/index.mjs +41 -6
- package/dist/web-types.json +1 -1
- package/es/table/index.d.ts +15 -0
- package/es/table/src/components/ComSearch.vue2.mjs +0 -2
- package/es/table/src/components/ComSearch.vue2.mjs.map +1 -1
- package/es/table/src/props.d.ts +4 -0
- package/es/table/src/props.mjs +6 -0
- package/es/table/src/props.mjs.map +1 -1
- package/es/table/src/table.vue.d.ts +9 -0
- package/es/table/src/table.vue2.mjs +4 -1
- package/es/table/src/table.vue2.mjs.map +1 -1
- package/es/table/utils/dkTable.mjs +17 -1
- package/es/table/utils/dkTable.mjs.map +1 -1
- package/es/table/utils/dkTableApi.d.ts +6 -0
- package/es/table/utils/dkTableApi.mjs +14 -2
- package/es/table/utils/dkTableApi.mjs.map +1 -1
- package/lib/table/index.d.ts +15 -0
- package/lib/table/src/components/ComSearch.vue2.js +0 -2
- package/lib/table/src/components/ComSearch.vue2.js.map +1 -1
- package/lib/table/src/props.d.ts +4 -0
- package/lib/table/src/props.js +6 -0
- package/lib/table/src/props.js.map +1 -1
- package/lib/table/src/table.vue.d.ts +9 -0
- package/lib/table/src/table.vue2.js +4 -1
- package/lib/table/src/table.vue2.js.map +1 -1
- package/lib/table/utils/dkTable.js +17 -1
- package/lib/table/utils/dkTable.js.map +1 -1
- package/lib/table/utils/dkTableApi.d.ts +6 -0
- package/lib/table/utils/dkTableApi.js +14 -2
- package/lib/table/utils/dkTableApi.js.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
@@ -25038,6 +25038,12 @@ const tableProps = {
|
|
25038
25038
|
return ["refresh", "add", "export_csv", "edit", "delete", "comSearch", "quickSearch", "columnDisplay", "recycle"];
|
25039
25039
|
},
|
25040
25040
|
type: Array
|
25041
|
+
},
|
25042
|
+
hideButtons: {
|
25043
|
+
default: () => {
|
25044
|
+
return [];
|
25045
|
+
},
|
25046
|
+
type: Array
|
25041
25047
|
}
|
25042
25048
|
};
|
25043
25049
|
|
@@ -28064,6 +28070,8 @@ Sortable.mount(Remove, Revert);
|
|
28064
28070
|
class dkTableApi {
|
28065
28071
|
controllerUrl;
|
28066
28072
|
actionUrl;
|
28073
|
+
requestConfig = {};
|
28074
|
+
// 新增:用于存储配置的request参数
|
28067
28075
|
constructor(controllerUrl) {
|
28068
28076
|
if (!controllerUrl.endsWith("/")) {
|
28069
28077
|
controllerUrl += "/";
|
@@ -28089,6 +28097,13 @@ class dkTableApi {
|
|
28089
28097
|
// 回收站还原
|
28090
28098
|
]);
|
28091
28099
|
}
|
28100
|
+
/**
|
28101
|
+
* 配置request参数
|
28102
|
+
* @param config 包含HTTP方法、请求头等额外参数的对象
|
28103
|
+
*/
|
28104
|
+
configureRequest(config) {
|
28105
|
+
this.requestConfig = { ...config };
|
28106
|
+
}
|
28092
28107
|
/**
|
28093
28108
|
* 获取表格配置
|
28094
28109
|
*/
|
@@ -28096,7 +28111,9 @@ class dkTableApi {
|
|
28096
28111
|
return request(
|
28097
28112
|
{
|
28098
28113
|
url: this.actionUrl.get("table"),
|
28099
|
-
method: "post"
|
28114
|
+
method: "post",
|
28115
|
+
...this.requestConfig
|
28116
|
+
// 将requestConfig的内容展开到request的参数中
|
28100
28117
|
},
|
28101
28118
|
{
|
28102
28119
|
code_error_show: true
|
@@ -28141,7 +28158,8 @@ class dkTableApi {
|
|
28141
28158
|
{
|
28142
28159
|
url: this.actionUrl.get("index"),
|
28143
28160
|
method: "get",
|
28144
|
-
params: filter
|
28161
|
+
params: filter,
|
28162
|
+
...this.requestConfig
|
28145
28163
|
},
|
28146
28164
|
{
|
28147
28165
|
code_error_show: true
|
@@ -28374,6 +28392,8 @@ class dkTable {
|
|
28374
28392
|
return true;
|
28375
28393
|
}
|
28376
28394
|
getIndex = () => {
|
28395
|
+
if (!this.runBefore("api", { name: "getIndex" }))
|
28396
|
+
return;
|
28377
28397
|
if (!this.runBefore("getIndex"))
|
28378
28398
|
return;
|
28379
28399
|
this.table.loading = true;
|
@@ -28387,6 +28407,8 @@ class dkTable {
|
|
28387
28407
|
});
|
28388
28408
|
};
|
28389
28409
|
getTable = (cache = false) => {
|
28410
|
+
if (!this.runBefore("api", { name: "getTable" }))
|
28411
|
+
return;
|
28390
28412
|
if (!this.runBefore("getTable"))
|
28391
28413
|
return;
|
28392
28414
|
this.table.columnLoading = true;
|
@@ -28416,6 +28438,8 @@ class dkTable {
|
|
28416
28438
|
* 显示回收站
|
28417
28439
|
*/
|
28418
28440
|
async showRecycle() {
|
28441
|
+
if (!this.runBefore("api", { name: "getRecycleTable" }))
|
28442
|
+
return;
|
28419
28443
|
if (!this.runBefore("getRecycleTable"))
|
28420
28444
|
return;
|
28421
28445
|
this.recycleTable.showDialogLoading = true;
|
@@ -28430,6 +28454,8 @@ class dkTable {
|
|
28430
28454
|
* 获取回收站列表
|
28431
28455
|
*/
|
28432
28456
|
getRecycleIndex = () => {
|
28457
|
+
if (!this.runBefore("api", { name: "getRecycleIndex" }))
|
28458
|
+
return;
|
28433
28459
|
if (!this.runBefore("getRecycleIndex"))
|
28434
28460
|
return;
|
28435
28461
|
this.recycleTable.loading = true;
|
@@ -28445,7 +28471,9 @@ class dkTable {
|
|
28445
28471
|
* @param cache
|
28446
28472
|
*/
|
28447
28473
|
getRecycleTable = (cache = false) => {
|
28448
|
-
if (!this.runBefore("
|
28474
|
+
if (!this.runBefore("api", { name: "getRecycleTable" }))
|
28475
|
+
return;
|
28476
|
+
if (!this.runBefore("getRecycleTable"))
|
28449
28477
|
return;
|
28450
28478
|
this.recycleTable.columnLoading = true;
|
28451
28479
|
if (cache) {
|
@@ -28554,6 +28582,8 @@ class dkTable {
|
|
28554
28582
|
if (!data.row || !data.field.prop)
|
28555
28583
|
return;
|
28556
28584
|
if (Object.keys(data.row).length === 0) ;
|
28585
|
+
if (!this.runBefore("api", { name: "fieldChange" }))
|
28586
|
+
return;
|
28557
28587
|
data.row.loading = true;
|
28558
28588
|
this.api.postData("edit", {
|
28559
28589
|
[this.table.pk]: data.row[this.table.pk],
|
@@ -28590,6 +28620,8 @@ class dkTable {
|
|
28590
28620
|
};
|
28591
28621
|
// 删除
|
28592
28622
|
postDel = (ids) => {
|
28623
|
+
if (!this.runBefore("api", { name: "postDel" }))
|
28624
|
+
return;
|
28593
28625
|
if (!this.runBefore("postDel", { ids }))
|
28594
28626
|
return;
|
28595
28627
|
this.api.del(ids).then((res) => {
|
@@ -28662,6 +28694,8 @@ class dkTable {
|
|
28662
28694
|
} else {
|
28663
28695
|
this.form.edit_id = 0;
|
28664
28696
|
}
|
28697
|
+
if (!this.runBefore("api", { name: "toggleForm" }))
|
28698
|
+
return;
|
28665
28699
|
this.api.form(this.form.edit_id).then((res) => {
|
28666
28700
|
this.form.ref.setFormData(res.data);
|
28667
28701
|
this.form.ref.show();
|
@@ -29813,7 +29847,6 @@ var _sfc_main$f = /* @__PURE__ */ defineComponent({
|
|
29813
29847
|
} else if (fieldDataTemp.render == "time" && (fieldDataTemp.operator == "RANGE" || fieldDataTemp.operator == "NOT RANGE")) {
|
29814
29848
|
if (DkTable.comSearch.form[key] && DkTable.comSearch.form[key].length >= 2) {
|
29815
29849
|
val = DkTable.comSearch.form[key][0] + "," + DkTable.comSearch.form[key][1];
|
29816
|
-
console.log("val", val, DkTable.comSearch.form[key]);
|
29817
29850
|
}
|
29818
29851
|
} else if (fieldDataTemp.operator == "RANGE" || fieldDataTemp.operator == "NOT RANGE") {
|
29819
29852
|
if (!DkTable.comSearch.form[key + "-start"] && !DkTable.comSearch.form[key + "-end"]) {
|
@@ -29832,7 +29865,6 @@ var _sfc_main$f = /* @__PURE__ */ defineComponent({
|
|
29832
29865
|
});
|
29833
29866
|
}
|
29834
29867
|
}
|
29835
|
-
console.log("comSearchData", comSearchData);
|
29836
29868
|
DkTable.onTableAction("com-search", comSearchData);
|
29837
29869
|
};
|
29838
29870
|
const onResetForm = () => {
|
@@ -31438,6 +31470,9 @@ var _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
31438
31470
|
DkTable.table.ref = TableRef.value;
|
31439
31471
|
DkTable.form.ref = FormRef.value;
|
31440
31472
|
});
|
31473
|
+
const effectiveButtons = computed(() => {
|
31474
|
+
return [...new Set(props.buttons.filter((button) => !props.hideButtons.includes(button)))];
|
31475
|
+
});
|
31441
31476
|
const onTableSizeChange = (val) => {
|
31442
31477
|
DkTable.onTableAction("page-size-change", { size: val });
|
31443
31478
|
};
|
@@ -31543,7 +31578,7 @@ var _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
31543
31578
|
createCommentVNode("\u9876\u90E8\u83DC\u5355"),
|
31544
31579
|
createVNode(DkTableHeader, {
|
31545
31580
|
size: "default",
|
31546
|
-
buttons:
|
31581
|
+
buttons: effectiveButtons.value
|
31547
31582
|
}, createSlots({
|
31548
31583
|
_: 2
|
31549
31584
|
/* DYNAMIC */
|
package/dist/web-types.json
CHANGED
package/es/table/index.d.ts
CHANGED
@@ -8,6 +8,7 @@ export declare const Table: import("@vipl520/utils").WithInstall<{
|
|
8
8
|
tableBefore?: Record<string, any> | undefined;
|
9
9
|
tableAfter?: Record<string, any> | undefined;
|
10
10
|
buttons?: unknown[] | undefined;
|
11
|
+
hideButtons?: unknown[] | undefined;
|
11
12
|
style?: unknown;
|
12
13
|
key?: string | number | symbol | undefined;
|
13
14
|
ref?: import("vue").VNodeRef | undefined;
|
@@ -87,6 +88,10 @@ export declare const Table: import("@vipl520/utils").WithInstall<{
|
|
87
88
|
default: () => string[];
|
88
89
|
type: ArrayConstructor;
|
89
90
|
};
|
91
|
+
hideButtons: {
|
92
|
+
default: () => never[];
|
93
|
+
type: ArrayConstructor;
|
94
|
+
};
|
90
95
|
}>>, {
|
91
96
|
DkTable: import("./utils/dkTable").default;
|
92
97
|
TableRef: import("vue").Ref<any>;
|
@@ -97,6 +102,7 @@ export declare const Table: import("@vipl520/utils").WithInstall<{
|
|
97
102
|
tableBefore: Record<string, any>;
|
98
103
|
tableAfter: Record<string, any>;
|
99
104
|
buttons: unknown[];
|
105
|
+
hideButtons: unknown[];
|
100
106
|
}, {}, string, {}> & {
|
101
107
|
beforeCreate?: ((() => void) | (() => void)[]) | undefined;
|
102
108
|
created?: ((() => void) | (() => void)[]) | undefined;
|
@@ -138,6 +144,10 @@ export declare const Table: import("@vipl520/utils").WithInstall<{
|
|
138
144
|
default: () => string[];
|
139
145
|
type: ArrayConstructor;
|
140
146
|
};
|
147
|
+
hideButtons: {
|
148
|
+
default: () => never[];
|
149
|
+
type: ArrayConstructor;
|
150
|
+
};
|
141
151
|
}>> & import("vue").ShallowUnwrapRef<{
|
142
152
|
DkTable: import("./utils/dkTable").default;
|
143
153
|
TableRef: import("vue").Ref<any>;
|
@@ -167,6 +177,10 @@ export declare const Table: import("@vipl520/utils").WithInstall<{
|
|
167
177
|
default: () => string[];
|
168
178
|
type: ArrayConstructor;
|
169
179
|
};
|
180
|
+
hideButtons: {
|
181
|
+
default: () => never[];
|
182
|
+
type: ArrayConstructor;
|
183
|
+
};
|
170
184
|
}>>, {
|
171
185
|
DkTable: import("./utils/dkTable").default;
|
172
186
|
TableRef: import("vue").Ref<any>;
|
@@ -177,6 +191,7 @@ export declare const Table: import("@vipl520/utils").WithInstall<{
|
|
177
191
|
tableBefore: Record<string, any>;
|
178
192
|
tableAfter: Record<string, any>;
|
179
193
|
buttons: unknown[];
|
194
|
+
hideButtons: unknown[];
|
180
195
|
}, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
|
181
196
|
$slots: Partial<Record<NonNullable<string | number>, (_: {}) => any>> & Partial<Record<string, (_: any) => any>> & {
|
182
197
|
columnPrepend?(_: {}): any;
|
@@ -91,7 +91,6 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
91
91
|
} else if (fieldDataTemp.render == "time" && (fieldDataTemp.operator == "RANGE" || fieldDataTemp.operator == "NOT RANGE")) {
|
92
92
|
if (DkTable.comSearch.form[key] && DkTable.comSearch.form[key].length >= 2) {
|
93
93
|
val = DkTable.comSearch.form[key][0] + "," + DkTable.comSearch.form[key][1];
|
94
|
-
console.log("val", val, DkTable.comSearch.form[key]);
|
95
94
|
}
|
96
95
|
} else if (fieldDataTemp.operator == "RANGE" || fieldDataTemp.operator == "NOT RANGE") {
|
97
96
|
if (!DkTable.comSearch.form[key + "-start"] && !DkTable.comSearch.form[key + "-end"]) {
|
@@ -110,7 +109,6 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
110
109
|
});
|
111
110
|
}
|
112
111
|
}
|
113
|
-
console.log("comSearchData", comSearchData);
|
114
112
|
DkTable.onTableAction("com-search", comSearchData);
|
115
113
|
};
|
116
114
|
const onResetForm = () => {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ComSearch.vue2.mjs","sources":["../../../../src/table/src/components/ComSearch.vue"],"sourcesContent":["<template>\n <div ref=\"el\" class=\"table-com-search\">\n <el-form label-position=\"top\" :model=\"DkTable.comSearch.form\" @submit.prevent=\"\" @keyup.enter=\"onComSearch\">\n <el-row>\n <template v-for=\"(item, idx) in DkTable.table.column\" :key=\"idx\">\n <template v-if=\"item.operator !== false\">\n <!-- 自定义渲染 component、slot -->\n <el-col\n v-if=\"item.comSearchRender == 'customRender' || item.comSearchRender == 'slot'\"\n :span=\"spans.common\"\n >\n <!-- 外部可以使用 :deep() 选择器修改css样式 -->\n <div class=\"com-search-col\">\n <div v-if=\"item.comSearchShowLabel !== false\" class=\"com-search-col-label\">\n {{ item.label }}\n </div>\n <div class=\"com-search-col-input\">\n <!-- 自定义组件/函数渲染 -->\n <component\n :is=\"item.comSearchComponent\"\n v-if=\"item.comSearchRender == 'customRender'\"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n v-bind=\"item.comSearchProps\"\n :placeholder=\"item.operatorPlaceholder\"\n ></component>\n\n <!-- 自定义渲染-slot -->\n <slot v-else-if=\"item.comSearchRender == 'slot'\" :name=\"item.comSearchSlotName\"></slot>\n </div>\n </div>\n </el-col>\n\n <!-- 时间范围 -->\n <el-col\n v-else-if=\"item.render == 'datetime' && (item.operator == 'RANGE' || item.operator == 'NOT RANGE')\"\n :span=\"spans.datetime\"\n >\n <div class=\"com-search-col\">\n <div v-if=\"item.comSearchShowLabel !== false\" class=\"com-search-col-label\">\n {{ item.label }}\n </div>\n <div class=\"com-search-col-input-range\">\n <el-date-picker\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n class=\"datetime-picker\"\n :default-value=\"\n DkTable.comSearch.form[item.prop! + '-default']\n ? DkTable.comSearch.form[item.prop! + '-default']\n : [new Date(), new Date()]\n \"\n :type=\"item.comSearchRender == 'date' ? 'daterange' : 'datetimerange'\"\n range-separator=\"到\"\n start-placeholder=\"开始日期\"\n end-placeholder=\"结束日期\"\n :value-format=\"item.comSearchRender == 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DD HH:mm:ss'\"\n :teleported=\"false\"\n />\n </div>\n </div>\n </el-col>\n <!--时间范围-->\n <el-col\n v-else-if=\"item.render == 'time' && (item.operator == 'RANGE' || item.operator == 'NOT RANGE')\"\n :span=\"spans.datetime\"\n >\n <div class=\"com-search-col\">\n <div v-if=\"item.comSearchShowLabel !== false\" class=\"com-search-col-label\">\n {{ item.label }}\n </div>\n <div class=\"com-search-col-input-range\">\n <el-time-picker\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n is-range\n range-separator=\"到\"\n format=\"HH:mm:ss\"\n value-format=\"HH:mm:ss\"\n start-placeholder=\"开始时间\"\n end-placeholder=\"结束时间\"\n ></el-time-picker>\n </div>\n </div>\n </el-col>\n <el-col v-else :span=\"spans.common\">\n <div class=\"com-search-col\">\n <div v-if=\"item.comSearchShowLabel !== false\" class=\"com-search-col-label\">\n {{ item.label }}\n </div>\n <!-- 数字范围 -->\n <div v-if=\"item.operator == 'RANGE' || item.operator == 'NOT RANGE'\" class=\"com-search-col-input-range\">\n <el-input\n v-model=\"DkTable.comSearch.form[item.prop! + '-start']\"\n :placeholder=\"item.operatorPlaceholder\"\n type=\"string\"\n :clearable=\"true\"\n ></el-input>\n <div class=\"range-separator\">到</div>\n <el-input\n v-model=\"DkTable.comSearch.form[item.prop! + '-end']\"\n :placeholder=\"item.operatorPlaceholder\"\n type=\"string\"\n :clearable=\"true\"\n ></el-input>\n </div>\n <!-- 是否 [NOT] NULL -->\n <div v-else-if=\"item.operator == 'NULL' || item.operator == 'NOT NULL'\" class=\"com-search-col-input\">\n <el-checkbox\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n :label=\"item.operator\"\n size=\"large\"\n ></el-checkbox>\n </div>\n <div v-else-if=\"item.operator\" class=\"com-search-col-input\">\n <!-- 时间筛选 -->\n <el-date-picker\n v-if=\"item.render == 'datetime' || item.comSearchRender == 'date'\"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n class=\"datetime-picker\"\n :type=\"item.comSearchRender == 'date' ? 'date' : 'datetime'\"\n :value-format=\"item.comSearchRender == 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DD HH:mm:ss'\"\n :placeholder=\"item.operatorPlaceholder\"\n :default-value=\"\n DkTable.comSearch.form[item.prop! + '-default']\n ? DkTable.comSearch.form[item.prop! + '-default']\n : new Date()\n \"\n :teleported=\"false\"\n />\n <!-- 年筛选 -->\n <el-date-picker\n v-if=\"item.render == 'year'\"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n class=\"datetime-picker\"\n type=\"year\"\n value-format=\"YYYY\"\n style=\"width: 100%\"\n :placeholder=\"item.operatorPlaceholder\"\n />\n <!-- tag、tags、select -->\n <el-select\n v-else-if=\"\n (item.render == 'tag' || item.render == 'tags' || item.comSearchRender == 'select') &&\n item.replaceValue\n \"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n :placeholder=\"item.operatorPlaceholder\"\n :clearable=\"true\"\n >\n <el-option\n v-for=\"(opt, okey) in item.replaceValue\"\n :key=\"item.prop! + okey\"\n :label=\"opt\"\n :value=\"okey\"\n />\n </el-select>\n\n <!-- 远程 select -->\n <dk-select\n v-else-if=\"item.comSearchRender == 'remoteSelect'\"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n filterable\n :placeholder=\"item.operatorPlaceholder\"\n :remote-url=\"item.remoteUrl\"\n ></dk-select>\n\n <!-- 开关 -->\n <el-select\n v-else-if=\"item.render == 'switch'\"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n :placeholder=\"item.operatorPlaceholder\"\n :clearable=\"true\"\n >\n <template v-if=\"!isEmpty(item.replaceValue)\">\n <el-option\n v-for=\"(opt, okey) in item.replaceValue\"\n :key=\"item.prop! + okey\"\n :label=\"opt\"\n :value=\"okey\"\n />\n </template>\n <template v-else>\n <el-option label=\"开\" value=\"1\" />\n <el-option label=\"关\" value=\"0\" />\n </template>\n </el-select>\n\n <!-- 字符串 -->\n <el-input\n v-else\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n :placeholder=\"item.operatorPlaceholder\"\n type=\"string\"\n :clearable=\"true\"\n ></el-input>\n </div>\n </div>\n </el-col>\n </template>\n </template>\n <el-col :xs=\"24\" :sm=\"6\">\n <div class=\"com-search-col pl-20\">\n <el-button v-blur type=\"primary\" @click=\"onComSearch\"> 搜索</el-button>\n <el-button @click=\"onResetForm()\">重置</el-button>\n </div>\n </el-col>\n </el-row>\n </el-form>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { inject, ref, computed } from 'vue'\nimport { isEmpty } from 'lodash-es'\nimport { useElementSize } from '@vueuse/core'\nimport DkTableClass from '../../utils/dkTable'\n\nconst DkTable = inject('DkTable') as DkTableClass\nconst el: any = ref(null)\nconst { width } = useElementSize(el) // 当前组件宽度\nconst spans = computed(() => {\n if (width.value < 768) {\n return {\n common: 24,\n datetime: 24,\n }\n }\n if (width.value < 900) {\n return {\n common: 12,\n datetime: 24,\n }\n }\n if (width.value < 1200) {\n return {\n common: 8,\n datetime: 16,\n }\n }\n return {\n common: 6,\n datetime: 12,\n }\n})\nconst onComSearch = () => {\n const comSearchData: comSearchData[] = []\n for (const key in DkTable.comSearch.form) {\n if (!DkTable.comSearch.fieldData.has(key)) {\n continue\n }\n let val = ''\n const fieldDataTemp = DkTable.comSearch.fieldData.get(key)\n if (\n fieldDataTemp.render == 'datetime' &&\n (fieldDataTemp.operator == 'RANGE' || fieldDataTemp.operator == 'NOT RANGE')\n ) {\n // 时间范围组件返回的是时间数组\n if (DkTable.comSearch.form[key] && DkTable.comSearch.form[key].length >= 2) {\n // 数组转字符串,以实现通过url参数传递预设搜索值\n if (fieldDataTemp.comSearchRender == 'date') {\n val = DkTable.comSearch.form[key][0] + ' 00:00:00' + ',' + DkTable.comSearch.form[key][1] + ' 23:59:59'\n } else {\n val = DkTable.comSearch.form[key][0] + ',' + DkTable.comSearch.form[key][1]\n }\n }\n } else if (\n fieldDataTemp.render == 'time' &&\n (fieldDataTemp.operator == 'RANGE' || fieldDataTemp.operator == 'NOT RANGE')\n ) {\n // 时间范围组件返回的是时间数组\n if (DkTable.comSearch.form[key] && DkTable.comSearch.form[key].length >= 2) {\n // 数组转字符串,以实现通过url参数传递预设搜索值\n // if (fieldDataTemp.comSearchRender == 'date') {\n // val = DkTable.comSearch.form[key][0] + ' 00:00:00' + ',' + DkTable.comSearch.form[key][1] + ' 23:59:59'\n // } else {\n val = DkTable.comSearch.form[key][0] + ',' + DkTable.comSearch.form[key][1]\n console.log('val', val, DkTable.comSearch.form[key])\n // }\n }\n } else if (fieldDataTemp.operator == 'RANGE' || fieldDataTemp.operator == 'NOT RANGE') {\n // 普通的范围筛选,DkTable在初始化时已准备好start和end字段\n if (!DkTable.comSearch.form[key + '-start'] && !DkTable.comSearch.form[key + '-end']) {\n continue\n }\n val = DkTable.comSearch.form[key + '-start'] + ',' + DkTable.comSearch.form[key + '-end']\n } else if (DkTable.comSearch.form[key]) {\n val = DkTable.comSearch.form[key]\n }\n\n if (val) {\n comSearchData.push({\n field: key,\n val,\n operator: fieldDataTemp.operator,\n render: fieldDataTemp.render,\n })\n }\n }\n\n console.log('comSearchData', comSearchData)\n DkTable.onTableAction('com-search', comSearchData)\n}\n\nconst onResetForm = () => {\n // 封装好的onResetForm在此处不能使用\n for (const key in DkTable.comSearch.form) {\n DkTable.comSearch.form[key] = ''\n }\n onComSearch()\n}\n</script>\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"ComSearch.vue2.mjs","sources":["../../../../src/table/src/components/ComSearch.vue"],"sourcesContent":["<template>\n <div ref=\"el\" class=\"table-com-search\">\n <el-form label-position=\"top\" :model=\"DkTable.comSearch.form\" @submit.prevent=\"\" @keyup.enter=\"onComSearch\">\n <el-row>\n <template v-for=\"(item, idx) in DkTable.table.column\" :key=\"idx\">\n <template v-if=\"item.operator !== false\">\n <!-- 自定义渲染 component、slot -->\n <el-col\n v-if=\"item.comSearchRender == 'customRender' || item.comSearchRender == 'slot'\"\n :span=\"spans.common\"\n >\n <!-- 外部可以使用 :deep() 选择器修改css样式 -->\n <div class=\"com-search-col\">\n <div v-if=\"item.comSearchShowLabel !== false\" class=\"com-search-col-label\">\n {{ item.label }}\n </div>\n <div class=\"com-search-col-input\">\n <!-- 自定义组件/函数渲染 -->\n <component\n :is=\"item.comSearchComponent\"\n v-if=\"item.comSearchRender == 'customRender'\"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n v-bind=\"item.comSearchProps\"\n :placeholder=\"item.operatorPlaceholder\"\n ></component>\n\n <!-- 自定义渲染-slot -->\n <slot v-else-if=\"item.comSearchRender == 'slot'\" :name=\"item.comSearchSlotName\"></slot>\n </div>\n </div>\n </el-col>\n\n <!-- 时间范围 -->\n <el-col\n v-else-if=\"item.render == 'datetime' && (item.operator == 'RANGE' || item.operator == 'NOT RANGE')\"\n :span=\"spans.datetime\"\n >\n <div class=\"com-search-col\">\n <div v-if=\"item.comSearchShowLabel !== false\" class=\"com-search-col-label\">\n {{ item.label }}\n </div>\n <div class=\"com-search-col-input-range\">\n <el-date-picker\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n class=\"datetime-picker\"\n :default-value=\"\n DkTable.comSearch.form[item.prop! + '-default']\n ? DkTable.comSearch.form[item.prop! + '-default']\n : [new Date(), new Date()]\n \"\n :type=\"item.comSearchRender == 'date' ? 'daterange' : 'datetimerange'\"\n range-separator=\"到\"\n start-placeholder=\"开始日期\"\n end-placeholder=\"结束日期\"\n :value-format=\"item.comSearchRender == 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DD HH:mm:ss'\"\n :teleported=\"false\"\n />\n </div>\n </div>\n </el-col>\n <!--时间范围-->\n <el-col\n v-else-if=\"item.render == 'time' && (item.operator == 'RANGE' || item.operator == 'NOT RANGE')\"\n :span=\"spans.datetime\"\n >\n <div class=\"com-search-col\">\n <div v-if=\"item.comSearchShowLabel !== false\" class=\"com-search-col-label\">\n {{ item.label }}\n </div>\n <div class=\"com-search-col-input-range\">\n <el-time-picker\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n is-range\n range-separator=\"到\"\n format=\"HH:mm:ss\"\n value-format=\"HH:mm:ss\"\n start-placeholder=\"开始时间\"\n end-placeholder=\"结束时间\"\n ></el-time-picker>\n </div>\n </div>\n </el-col>\n <el-col v-else :span=\"spans.common\">\n <div class=\"com-search-col\">\n <div v-if=\"item.comSearchShowLabel !== false\" class=\"com-search-col-label\">\n {{ item.label }}\n </div>\n <!-- 数字范围 -->\n <div v-if=\"item.operator == 'RANGE' || item.operator == 'NOT RANGE'\" class=\"com-search-col-input-range\">\n <el-input\n v-model=\"DkTable.comSearch.form[item.prop! + '-start']\"\n :placeholder=\"item.operatorPlaceholder\"\n type=\"string\"\n :clearable=\"true\"\n ></el-input>\n <div class=\"range-separator\">到</div>\n <el-input\n v-model=\"DkTable.comSearch.form[item.prop! + '-end']\"\n :placeholder=\"item.operatorPlaceholder\"\n type=\"string\"\n :clearable=\"true\"\n ></el-input>\n </div>\n <!-- 是否 [NOT] NULL -->\n <div v-else-if=\"item.operator == 'NULL' || item.operator == 'NOT NULL'\" class=\"com-search-col-input\">\n <el-checkbox\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n :label=\"item.operator\"\n size=\"large\"\n ></el-checkbox>\n </div>\n <div v-else-if=\"item.operator\" class=\"com-search-col-input\">\n <!-- 时间筛选 -->\n <el-date-picker\n v-if=\"item.render == 'datetime' || item.comSearchRender == 'date'\"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n class=\"datetime-picker\"\n :type=\"item.comSearchRender == 'date' ? 'date' : 'datetime'\"\n :value-format=\"item.comSearchRender == 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DD HH:mm:ss'\"\n :placeholder=\"item.operatorPlaceholder\"\n :default-value=\"\n DkTable.comSearch.form[item.prop! + '-default']\n ? DkTable.comSearch.form[item.prop! + '-default']\n : new Date()\n \"\n :teleported=\"false\"\n />\n <!-- 年筛选 -->\n <el-date-picker\n v-if=\"item.render == 'year'\"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n class=\"datetime-picker\"\n type=\"year\"\n value-format=\"YYYY\"\n style=\"width: 100%\"\n :placeholder=\"item.operatorPlaceholder\"\n />\n <!-- tag、tags、select -->\n <el-select\n v-else-if=\"\n (item.render == 'tag' || item.render == 'tags' || item.comSearchRender == 'select') &&\n item.replaceValue\n \"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n :placeholder=\"item.operatorPlaceholder\"\n :clearable=\"true\"\n >\n <el-option\n v-for=\"(opt, okey) in item.replaceValue\"\n :key=\"item.prop! + okey\"\n :label=\"opt\"\n :value=\"okey\"\n />\n </el-select>\n\n <!-- 远程 select -->\n <dk-select\n v-else-if=\"item.comSearchRender == 'remoteSelect'\"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n filterable\n :placeholder=\"item.operatorPlaceholder\"\n :remote-url=\"item.remoteUrl\"\n ></dk-select>\n\n <!-- 开关 -->\n <el-select\n v-else-if=\"item.render == 'switch'\"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n :placeholder=\"item.operatorPlaceholder\"\n :clearable=\"true\"\n >\n <template v-if=\"!isEmpty(item.replaceValue)\">\n <el-option\n v-for=\"(opt, okey) in item.replaceValue\"\n :key=\"item.prop! + okey\"\n :label=\"opt\"\n :value=\"okey\"\n />\n </template>\n <template v-else>\n <el-option label=\"开\" value=\"1\" />\n <el-option label=\"关\" value=\"0\" />\n </template>\n </el-select>\n\n <!-- 字符串 -->\n <el-input\n v-else\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n :placeholder=\"item.operatorPlaceholder\"\n type=\"string\"\n :clearable=\"true\"\n ></el-input>\n </div>\n </div>\n </el-col>\n </template>\n </template>\n <el-col :xs=\"24\" :sm=\"6\">\n <div class=\"com-search-col pl-20\">\n <el-button v-blur type=\"primary\" @click=\"onComSearch\"> 搜索</el-button>\n <el-button @click=\"onResetForm()\">重置</el-button>\n </div>\n </el-col>\n </el-row>\n </el-form>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { inject, ref, computed } from 'vue'\nimport { isEmpty } from 'lodash-es'\nimport { useElementSize } from '@vueuse/core'\nimport DkTableClass from '../../utils/dkTable'\n\nconst DkTable = inject('DkTable') as DkTableClass\nconst el: any = ref(null)\nconst { width } = useElementSize(el) // 当前组件宽度\nconst spans = computed(() => {\n if (width.value < 768) {\n return {\n common: 24,\n datetime: 24,\n }\n }\n if (width.value < 900) {\n return {\n common: 12,\n datetime: 24,\n }\n }\n if (width.value < 1200) {\n return {\n common: 8,\n datetime: 16,\n }\n }\n return {\n common: 6,\n datetime: 12,\n }\n})\nconst onComSearch = () => {\n const comSearchData: comSearchData[] = []\n for (const key in DkTable.comSearch.form) {\n if (!DkTable.comSearch.fieldData.has(key)) {\n continue\n }\n let val = ''\n const fieldDataTemp = DkTable.comSearch.fieldData.get(key)\n if (\n fieldDataTemp.render == 'datetime' &&\n (fieldDataTemp.operator == 'RANGE' || fieldDataTemp.operator == 'NOT RANGE')\n ) {\n // 时间范围组件返回的是时间数组\n if (DkTable.comSearch.form[key] && DkTable.comSearch.form[key].length >= 2) {\n // 数组转字符串,以实现通过url参数传递预设搜索值\n if (fieldDataTemp.comSearchRender == 'date') {\n val = DkTable.comSearch.form[key][0] + ' 00:00:00' + ',' + DkTable.comSearch.form[key][1] + ' 23:59:59'\n } else {\n val = DkTable.comSearch.form[key][0] + ',' + DkTable.comSearch.form[key][1]\n }\n }\n } else if (\n fieldDataTemp.render == 'time' &&\n (fieldDataTemp.operator == 'RANGE' || fieldDataTemp.operator == 'NOT RANGE')\n ) {\n // 时间范围组件返回的是时间数组\n if (DkTable.comSearch.form[key] && DkTable.comSearch.form[key].length >= 2) {\n // 数组转字符串,以实现通过url参数传递预设搜索值\n // if (fieldDataTemp.comSearchRender == 'date') {\n // val = DkTable.comSearch.form[key][0] + ' 00:00:00' + ',' + DkTable.comSearch.form[key][1] + ' 23:59:59'\n // } else {\n val = DkTable.comSearch.form[key][0] + ',' + DkTable.comSearch.form[key][1]\n // console.log('val', val, DkTable.comSearch.form[key])\n // }\n }\n } else if (fieldDataTemp.operator == 'RANGE' || fieldDataTemp.operator == 'NOT RANGE') {\n // 普通的范围筛选,DkTable在初始化时已准备好start和end字段\n if (!DkTable.comSearch.form[key + '-start'] && !DkTable.comSearch.form[key + '-end']) {\n continue\n }\n val = DkTable.comSearch.form[key + '-start'] + ',' + DkTable.comSearch.form[key + '-end']\n } else if (DkTable.comSearch.form[key]) {\n val = DkTable.comSearch.form[key]\n }\n\n if (val) {\n comSearchData.push({\n field: key,\n val,\n operator: fieldDataTemp.operator,\n render: fieldDataTemp.render,\n })\n }\n }\n\n // console.log('comSearchData', comSearchData)\n DkTable.onTableAction('com-search', comSearchData)\n}\n\nconst onResetForm = () => {\n // 封装好的onResetForm在此处不能使用\n for (const key in DkTable.comSearch.form) {\n DkTable.comSearch.form[key] = ''\n }\n onComSearch()\n}\n</script>\n"],"names":[],"mappings":"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"}
|
package/es/table/src/props.d.ts
CHANGED
package/es/table/src/props.mjs
CHANGED
@@ -24,6 +24,12 @@ const tableProps = {
|
|
24
24
|
return ["refresh", "add", "export_csv", "edit", "delete", "comSearch", "quickSearch", "columnDisplay", "recycle"];
|
25
25
|
},
|
26
26
|
type: Array
|
27
|
+
},
|
28
|
+
hideButtons: {
|
29
|
+
default: () => {
|
30
|
+
return [];
|
31
|
+
},
|
32
|
+
type: Array
|
27
33
|
}
|
28
34
|
};
|
29
35
|
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"props.mjs","sources":["../../../src/table/src/props.ts"],"sourcesContent":["import type { ExtractPropTypes } from 'vue'\n// import ElTableNext from 'el-table-next'\n\nexport const tableProps = {\n tableApi: {\n default: '',\n type: String,\n },\n cacheTable: {\n default: true,\n type: Boolean,\n },\n tableBefore: {\n default: () => {\n return {}\n },\n type: Object,\n },\n tableAfter: {\n default: () => {\n return {}\n },\n type: Object,\n },\n buttons: {\n default: () => {\n return ['refresh', 'add', 'export_csv', 'edit', 'delete', 'comSearch', 'quickSearch', 'columnDisplay', 'recycle']\n },\n type: Array,\n },\n}\n\nexport type TableProps = ExtractPropTypes<typeof tableProps>\n"],"names":[],"mappings":"AAGO,MAAM,UAAa,GAAA;AAAA,EACxB,QAAU,EAAA;AAAA,IACR,OAAS,EAAA,EAAA;AAAA,IACT,IAAM,EAAA,MAAA;AAAA,GACR;AAAA,EACA,UAAY,EAAA;AAAA,IACV,OAAS,EAAA,IAAA;AAAA,IACT,IAAM,EAAA,OAAA;AAAA,GACR;AAAA,EACA,WAAa,EAAA;AAAA,IACX,SAAS,MAAM;AACb,MAAA,OAAO,EAAC,CAAA;AAAA,KACV;AAAA,IACA,IAAM,EAAA,MAAA;AAAA,GACR;AAAA,EACA,UAAY,EAAA;AAAA,IACV,SAAS,MAAM;AACb,MAAA,OAAO,EAAC,CAAA;AAAA,KACV;AAAA,IACA,IAAM,EAAA,MAAA;AAAA,GACR;AAAA,EACA,OAAS,EAAA;AAAA,IACP,SAAS,MAAM;AACb,MAAO,OAAA,CAAC,WAAW,KAAO,EAAA,YAAA,EAAc,QAAQ,QAAU,EAAA,WAAA,EAAa,aAAe,EAAA,eAAA,EAAiB,SAAS,CAAA,CAAA;AAAA,KAClH;AAAA,IACA,IAAM,EAAA,KAAA;AAAA,GACR;AACF;;;;"}
|
1
|
+
{"version":3,"file":"props.mjs","sources":["../../../src/table/src/props.ts"],"sourcesContent":["import type { ExtractPropTypes } from 'vue'\n// import ElTableNext from 'el-table-next'\n\nexport const tableProps = {\n tableApi: {\n default: '',\n type: String,\n },\n cacheTable: {\n default: true,\n type: Boolean,\n },\n tableBefore: {\n default: () => {\n return {}\n },\n type: Object,\n },\n tableAfter: {\n default: () => {\n return {}\n },\n type: Object,\n },\n buttons: {\n default: () => {\n return ['refresh', 'add', 'export_csv', 'edit', 'delete', 'comSearch', 'quickSearch', 'columnDisplay', 'recycle']\n },\n type: Array,\n },\n hideButtons: {\n default: () => {\n return []\n },\n type: Array,\n },\n}\n\nexport type TableProps = ExtractPropTypes<typeof tableProps>\n"],"names":[],"mappings":"AAGO,MAAM,UAAa,GAAA;AAAA,EACxB,QAAU,EAAA;AAAA,IACR,OAAS,EAAA,EAAA;AAAA,IACT,IAAM,EAAA,MAAA;AAAA,GACR;AAAA,EACA,UAAY,EAAA;AAAA,IACV,OAAS,EAAA,IAAA;AAAA,IACT,IAAM,EAAA,OAAA;AAAA,GACR;AAAA,EACA,WAAa,EAAA;AAAA,IACX,SAAS,MAAM;AACb,MAAA,OAAO,EAAC,CAAA;AAAA,KACV;AAAA,IACA,IAAM,EAAA,MAAA;AAAA,GACR;AAAA,EACA,UAAY,EAAA;AAAA,IACV,SAAS,MAAM;AACb,MAAA,OAAO,EAAC,CAAA;AAAA,KACV;AAAA,IACA,IAAM,EAAA,MAAA;AAAA,GACR;AAAA,EACA,OAAS,EAAA;AAAA,IACP,SAAS,MAAM;AACb,MAAO,OAAA,CAAC,WAAW,KAAO,EAAA,YAAA,EAAc,QAAQ,QAAU,EAAA,WAAA,EAAa,aAAe,EAAA,eAAA,EAAiB,SAAS,CAAA,CAAA;AAAA,KAClH;AAAA,IACA,IAAM,EAAA,KAAA;AAAA,GACR;AAAA,EACA,WAAa,EAAA;AAAA,IACX,SAAS,MAAM;AACb,MAAA,OAAO,EAAC,CAAA;AAAA,KACV;AAAA,IACA,IAAM,EAAA,KAAA;AAAA,GACR;AACF;;;;"}
|
@@ -20,6 +20,10 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
20
20
|
default: () => string[];
|
21
21
|
type: ArrayConstructor;
|
22
22
|
};
|
23
|
+
hideButtons: {
|
24
|
+
default: () => never[];
|
25
|
+
type: ArrayConstructor;
|
26
|
+
};
|
23
27
|
}, {
|
24
28
|
DkTable: DkTableClass;
|
25
29
|
TableRef: import("vue").Ref<any>;
|
@@ -45,12 +49,17 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
45
49
|
default: () => string[];
|
46
50
|
type: ArrayConstructor;
|
47
51
|
};
|
52
|
+
hideButtons: {
|
53
|
+
default: () => never[];
|
54
|
+
type: ArrayConstructor;
|
55
|
+
};
|
48
56
|
}>>, {
|
49
57
|
tableApi: string;
|
50
58
|
cacheTable: boolean;
|
51
59
|
tableBefore: Record<string, any>;
|
52
60
|
tableAfter: Record<string, any>;
|
53
61
|
buttons: unknown[];
|
62
|
+
hideButtons: unknown[];
|
54
63
|
}, {}>, Partial<Record<NonNullable<string | number>, (_: {}) => any>> & Partial<Record<string, (_: any) => any>> & {
|
55
64
|
columnPrepend?(_: {}): any;
|
56
65
|
columnAppend?(_: {}): any;
|
@@ -31,6 +31,9 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
31
31
|
DkTable.table.ref = TableRef.value;
|
32
32
|
DkTable.form.ref = FormRef.value;
|
33
33
|
});
|
34
|
+
const effectiveButtons = computed(() => {
|
35
|
+
return [...new Set(props.buttons.filter((button) => !props.hideButtons.includes(button)))];
|
36
|
+
});
|
34
37
|
const onTableSizeChange = (val) => {
|
35
38
|
DkTable.onTableAction("page-size-change", { size: val });
|
36
39
|
};
|
@@ -147,7 +150,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
147
150
|
createCommentVNode("\u9876\u90E8\u83DC\u5355"),
|
148
151
|
createVNode(DkTableHeader, {
|
149
152
|
size: "default",
|
150
|
-
buttons:
|
153
|
+
buttons: effectiveButtons.value
|
151
154
|
}, createSlots({
|
152
155
|
_: 2
|
153
156
|
/* DYNAMIC */
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"table.vue2.mjs","sources":["../../../src/table/src/table.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkTable',\n});\n</script>\n<template>\n <div class=\"dk-table\">\n <!--顶部菜单-->\n <DkTableHeader size=\"default\" :buttons=\"buttons\">\n <template v-for=\"(slot, idx) in $slots\" :key=\"idx\" #[idx]>\n <slot :name=\"idx\"></slot>\n </template>\n </DkTableHeader>\n <!--表格-->\n <el-table\n ref=\"TableRef\"\n v-loading=\"DkTable.table.loading\"\n class=\"dk-data-table w100\"\n header-cell-class-name=\"table-header-cell\"\n :default-expand-all=\"DkTable.table.expandAll\"\n :data=\"DkTable.table.data\"\n :row-key=\"DkTable.table.pk\"\n stripe\n v-bind=\"$attrs\"\n @select-all=\"onSelectAll\"\n @select=\"onSelect\"\n @selection-change=\"onSelectionChange\"\n @sort-change=\"onSortChange\"\n @cell-dblclick=\"ondblclick\"\n >\n <slot name=\"columnPrepend\"></slot>\n <template v-for=\"(item, key) in DkTable.table.column\">\n <template v-if=\"item.show !== false\">\n <!-- 渲染为 slot -->\n <el-table-column v-if=\"item.slotName\" :key=\"key\" v-bind=\"{ ...item }\">\n <template #default=\"scope\">\n <slot :name=\"item.slotName\" v-bind=\"scope\">\n <dk-field-render\n :key=\"\n key +\n '-' +\n scope.$index +\n '-' +\n item.render +\n '-' +\n (item.prop ? '-' + item.prop + '-' + scope.row[item.prop] : '')\n \"\n :field=\"item\"\n :row=\"scope.row\"\n :column=\"scope.column\"\n :index=\"scope.$index\"\n />\n </slot>\n </template>\n </el-table-column>\n <el-table-column v-else :key=\"key + 'default'\" v-bind=\"{ ...item }\"></el-table-column>\n </template>\n </template>\n <slot name=\"columnAppend\"></slot>\n </el-table>\n\n <div class=\"table-pagination\">\n <el-pagination\n :current-page=\"DkTable.table.filter!.page\"\n :page-size=\"DkTable.table.filter!.limit\"\n :page-sizes=\"pageSizes\"\n background\n :layout=\"'sizes,total, ->, prev, pager, next, jumper'\"\n :total=\"DkTable.table.total\"\n @size-change=\"onTableSizeChange\"\n @current-change=\"onTableCurrentChange\"\n ></el-pagination>\n </div>\n </div>\n <dk-form ref=\"FormRef\" :is-dialog=\"true\" @submit=\"DkTable.onSubmit\">\n <template #buttons>\n <el-button type=\"primary\" :loading=\"DkTable.form.ref.buttonLoading\" @click=\"DkTable.form.ref.checkForm\">\n {{ DkTable.form.operateIds!.length > 0 ? '保存并编辑下一项' : '提交' }}\n </el-button>\n </template>\n </dk-form>\n <RecycleDialog></RecycleDialog>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref, onMounted, nextTick, provide, computed } from 'vue'\nimport { tableProps } from './props'\nimport DkTableClass from '../utils/dkTable'\nimport DkTableHeader from './components/header.vue'\nimport DkFieldRender from './components/FieldRender.vue'\nimport RecycleDialog from './components/RecycleDialog.vue'\n\n\n\nconst props = defineProps(tableProps)\nconst FormRef = ref()\n// 表格的Ref\nconst TableRef = ref()\n// 表格的对象\nconst DkTable = new DkTableClass(props.tableApi, props.tableBefore, props.tableAfter)\n\nprovide('DkTable', DkTable)\n// 获取表格信息\nonMounted(() => {\n DkTable.getTable(props.cacheTable)?.then(() => {\n DkTable.getIndex()?.then(() => {\n nextTick(() => {\n DkTable.dragSort()\n })\n })\n DkTable.initComSearch()\n })\n DkTable.table.ref = TableRef.value\n DkTable.form.ref = FormRef.value\n})\n\nconst onTableSizeChange = (val: number) => {\n DkTable.onTableAction('page-size-change', { size: val })\n}\n\nconst onTableCurrentChange = (val: number) => {\n DkTable.onTableAction('current-page-change', { page: val })\n}\n\n// 双击\nconst ondblclick = (row: any) => {\n DkTable.toggleForm('Edit', [row[DkTable.table.pk!]])\n}\n\nconst onSortChange = ({ order, prop }: { order: string; prop: string }) => {\n DkTable.onTableAction('sort-change', {\n prop,\n order: order ? (order == 'ascending' ? 'asc' : 'desc') : '',\n })\n}\n\nconst pageSizes = computed(() => {\n const defaultSizes = [10, 20, 50, 100]\n if (DkTable.table.filter!.limit) {\n if (!defaultSizes.includes(DkTable.table.filter!.limit)) {\n defaultSizes.push(DkTable.table.filter!.limit)\n }\n }\n return defaultSizes\n})\n\n/*\n * 手动选择时,同时选择子级\n */\nconst onSelect = (selection: TableRow[], row: TableRow) => {\n if (\n selection.some((item: TableRow) => {\n return row[DkTable.table.pk!] === item[DkTable.table.pk!]\n })\n ) {\n if (row.children) {\n selectChildren(row.children, true)\n }\n } else {\n if (row.children) {\n selectChildren(row.children, false)\n }\n }\n}\n\n/**\n /*\n * 全选和取消全选\n * 实现子级同时选择和取消选中\n */\nconst onSelectAll = (selection: TableRow[]) => {\n if (isSelectAll(selection.map((row: TableRow) => row[DkTable.table.pk!].toString()))) {\n // eslint-disable-next-line array-callback-return\n selection.map((row: TableRow) => {\n if (row.children) {\n selectChildren(row.children, true)\n }\n })\n } else {\n TableRef.value?.clearSelection()\n }\n}\n\n/*\n * 是否是全选操作\n * 只检查第一个元素是否被选择\n * 全选时:selectIds为所有元素的id\n * 取消全选时:selectIds为所有子元素的id\n */\nconst isSelectAll = (selectIds: string[]) => {\n const data = DkTable.table.data as TableRow[]\n // eslint-disable-next-line no-unreachable-loop\n for (const key in data) {\n return selectIds.includes(data[key][DkTable.table.pk!].toString())\n }\n return false\n}\n\n/*\n * 选择子项-递归\n */\nconst selectChildren = (children: TableRow[], type: boolean) => {\n // eslint-disable-next-line array-callback-return\n children.map((j: TableRow) => {\n toggleSelection(j, type)\n if (j.children) {\n selectChildren(j.children, type)\n }\n })\n}\n\n/*\n * 执行选择操作\n */\nconst toggleSelection = (row: TableRow, type: boolean) => {\n if (row) {\n nextTick(() => {\n TableRef.value?.toggleRowSelection(row, type)\n })\n }\n}\n\n/*\n * 记录选择的项\n */\nconst onSelectionChange = (selection: TableRow[]) => {\n DkTable.onTableAction('selection-change', selection)\n}\n\n/*\n * 设置折叠所有-递归\n */\nconst setUnFoldAll = (children: TableRow[], unfold: boolean) => {\n for (const key in children) {\n TableRef.value?.toggleRowExpansion(children[key], unfold)\n if (children[key].children) {\n setUnFoldAll(children[key].children!, unfold)\n }\n }\n}\n\n/*\n * 折叠所有\n */\nconst unFoldAll = (unfold: boolean) => {\n setUnFoldAll(DkTable.table.data!, unfold)\n}\n\nconst slotNames = computed(() => {\n const column = DkTable.table.column\n const slotNames = []\n for (let i = 0; i < column.length; i++) {\n if (column[i].slotName) {\n slotNames.push(column[i].slotName)\n }\n }\n return slotNames\n})\n\nonMounted(() => {\n // injectTablePrimaryMethods()\n})\n\ndefineExpose({\n DkTable,\n TableRef,\n FormRef,\n})\n</script>\n<style lang=\"scss\"></style>\n"],"names":["__MACROS_defineComponent","DkTableClass","slotNames"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"table.vue2.mjs","sources":["../../../src/table/src/table.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkTable',\n});\n</script>\n<template>\n <div class=\"dk-table\">\n <!--顶部菜单-->\n <DkTableHeader size=\"default\" :buttons=\"effectiveButtons\">\n <template v-for=\"(slot, idx) in $slots\" :key=\"idx\" #[idx]>\n <slot :name=\"idx\"></slot>\n </template>\n </DkTableHeader>\n <!--表格-->\n <el-table\n ref=\"TableRef\"\n v-loading=\"DkTable.table.loading\"\n class=\"dk-data-table w100\"\n header-cell-class-name=\"table-header-cell\"\n :default-expand-all=\"DkTable.table.expandAll\"\n :data=\"DkTable.table.data\"\n :row-key=\"DkTable.table.pk\"\n stripe\n v-bind=\"$attrs\"\n @select-all=\"onSelectAll\"\n @select=\"onSelect\"\n @selection-change=\"onSelectionChange\"\n @sort-change=\"onSortChange\"\n @cell-dblclick=\"ondblclick\"\n >\n <slot name=\"columnPrepend\"></slot>\n <template v-for=\"(item, key) in DkTable.table.column\">\n <template v-if=\"item.show !== false\">\n <!-- 渲染为 slot -->\n <el-table-column v-if=\"item.slotName\" :key=\"key\" v-bind=\"{ ...item }\">\n <template #default=\"scope\">\n <slot :name=\"item.slotName\" v-bind=\"scope\">\n <dk-field-render\n :key=\"\n key +\n '-' +\n scope.$index +\n '-' +\n item.render +\n '-' +\n (item.prop ? '-' + item.prop + '-' + scope.row[item.prop] : '')\n \"\n :field=\"item\"\n :row=\"scope.row\"\n :column=\"scope.column\"\n :index=\"scope.$index\"\n />\n </slot>\n </template>\n </el-table-column>\n <el-table-column v-else :key=\"key + 'default'\" v-bind=\"{ ...item }\"></el-table-column>\n </template>\n </template>\n <slot name=\"columnAppend\"></slot>\n </el-table>\n\n <div class=\"table-pagination\">\n <el-pagination\n :current-page=\"DkTable.table.filter!.page\"\n :page-size=\"DkTable.table.filter!.limit\"\n :page-sizes=\"pageSizes\"\n background\n :layout=\"'sizes,total, ->, prev, pager, next, jumper'\"\n :total=\"DkTable.table.total\"\n @size-change=\"onTableSizeChange\"\n @current-change=\"onTableCurrentChange\"\n ></el-pagination>\n </div>\n </div>\n <dk-form ref=\"FormRef\" :is-dialog=\"true\" @submit=\"DkTable.onSubmit\">\n <template #buttons>\n <el-button type=\"primary\" :loading=\"DkTable.form.ref.buttonLoading\" @click=\"DkTable.form.ref.checkForm\">\n {{ DkTable.form.operateIds!.length > 0 ? '保存并编辑下一项' : '提交' }}\n </el-button>\n </template>\n </dk-form>\n <RecycleDialog></RecycleDialog>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref, onMounted, nextTick, provide, computed } from 'vue'\nimport { tableProps } from './props'\nimport DkTableClass from '../utils/dkTable'\nimport DkTableHeader from './components/header.vue'\nimport DkFieldRender from './components/FieldRender.vue'\nimport RecycleDialog from './components/RecycleDialog.vue'\n\n\n\nconst props = defineProps(tableProps)\nconst FormRef = ref()\n// 表格的Ref\nconst TableRef = ref()\n// 表格的对象\nconst DkTable = new DkTableClass(props.tableApi, props.tableBefore, props.tableAfter)\n\nprovide('DkTable', DkTable)\n// 获取表格信息\nonMounted(() => {\n DkTable.getTable(props.cacheTable)?.then(() => {\n DkTable.getIndex()?.then(() => {\n nextTick(() => {\n DkTable.dragSort()\n })\n })\n DkTable.initComSearch()\n })\n DkTable.table.ref = TableRef.value\n DkTable.form.ref = FormRef.value\n})\n\nconst effectiveButtons = computed(() => {\n return [...new Set(props.buttons.filter((button) => !props.hideButtons.includes(button)))]\n})\n\nconst onTableSizeChange = (val: number) => {\n DkTable.onTableAction('page-size-change', { size: val })\n}\n\nconst onTableCurrentChange = (val: number) => {\n DkTable.onTableAction('current-page-change', { page: val })\n}\n\n// 双击\nconst ondblclick = (row: any) => {\n DkTable.toggleForm('Edit', [row[DkTable.table.pk!]])\n}\n\nconst onSortChange = ({ order, prop }: { order: string; prop: string }) => {\n DkTable.onTableAction('sort-change', {\n prop,\n order: order ? (order == 'ascending' ? 'asc' : 'desc') : '',\n })\n}\n\nconst pageSizes = computed(() => {\n const defaultSizes = [10, 20, 50, 100]\n if (DkTable.table.filter!.limit) {\n if (!defaultSizes.includes(DkTable.table.filter!.limit)) {\n defaultSizes.push(DkTable.table.filter!.limit)\n }\n }\n return defaultSizes\n})\n\n/*\n * 手动选择时,同时选择子级\n */\nconst onSelect = (selection: TableRow[], row: TableRow) => {\n if (\n selection.some((item: TableRow) => {\n return row[DkTable.table.pk!] === item[DkTable.table.pk!]\n })\n ) {\n if (row.children) {\n selectChildren(row.children, true)\n }\n } else {\n if (row.children) {\n selectChildren(row.children, false)\n }\n }\n}\n\n/**\n /*\n * 全选和取消全选\n * 实现子级同时选择和取消选中\n */\nconst onSelectAll = (selection: TableRow[]) => {\n if (isSelectAll(selection.map((row: TableRow) => row[DkTable.table.pk!].toString()))) {\n // eslint-disable-next-line array-callback-return\n selection.map((row: TableRow) => {\n if (row.children) {\n selectChildren(row.children, true)\n }\n })\n } else {\n TableRef.value?.clearSelection()\n }\n}\n\n/*\n * 是否是全选操作\n * 只检查第一个元素是否被选择\n * 全选时:selectIds为所有元素的id\n * 取消全选时:selectIds为所有子元素的id\n */\nconst isSelectAll = (selectIds: string[]) => {\n const data = DkTable.table.data as TableRow[]\n // eslint-disable-next-line no-unreachable-loop\n for (const key in data) {\n return selectIds.includes(data[key][DkTable.table.pk!].toString())\n }\n return false\n}\n\n/*\n * 选择子项-递归\n */\nconst selectChildren = (children: TableRow[], type: boolean) => {\n // eslint-disable-next-line array-callback-return\n children.map((j: TableRow) => {\n toggleSelection(j, type)\n if (j.children) {\n selectChildren(j.children, type)\n }\n })\n}\n\n/*\n * 执行选择操作\n */\nconst toggleSelection = (row: TableRow, type: boolean) => {\n if (row) {\n nextTick(() => {\n TableRef.value?.toggleRowSelection(row, type)\n })\n }\n}\n\n/*\n * 记录选择的项\n */\nconst onSelectionChange = (selection: TableRow[]) => {\n DkTable.onTableAction('selection-change', selection)\n}\n\n/*\n * 设置折叠所有-递归\n */\nconst setUnFoldAll = (children: TableRow[], unfold: boolean) => {\n for (const key in children) {\n TableRef.value?.toggleRowExpansion(children[key], unfold)\n if (children[key].children) {\n setUnFoldAll(children[key].children!, unfold)\n }\n }\n}\n\n/*\n * 折叠所有\n */\nconst unFoldAll = (unfold: boolean) => {\n setUnFoldAll(DkTable.table.data!, unfold)\n}\n\nconst slotNames = computed(() => {\n const column = DkTable.table.column\n const slotNames = []\n for (let i = 0; i < column.length; i++) {\n if (column[i].slotName) {\n slotNames.push(column[i].slotName)\n }\n }\n return slotNames\n})\n\nonMounted(() => {\n // injectTablePrimaryMethods()\n})\n\ndefineExpose({\n DkTable,\n TableRef,\n FormRef,\n})\n</script>\n<style lang=\"scss\"></style>\n"],"names":["__MACROS_defineComponent","DkTableClass","slotNames"],"mappings":";;;;;;;;;AAEA,MAA6B,cAAAA,eAAyB,CAAA;AAAA,EACpD,IAAM,EAAA,SAAA;AACR,CAAC,CAAA,CAAA;;;;;;AA4FD,IAAA,MAAM,UAAU,GAAI,EAAA,CAAA;AAEpB,IAAA,MAAM,WAAW,GAAI,EAAA,CAAA;AAErB,IAAM,MAAA,OAAA,GAAU,IAAIC,OAAa,CAAA,KAAA,CAAM,UAAU,KAAM,CAAA,WAAA,EAAa,MAAM,UAAU,CAAA,CAAA;AAEpF,IAAA,OAAA,CAAQ,WAAW,OAAO,CAAA,CAAA;AAE1B,IAAA,SAAA,CAAU,MAAM;AACd,MAAA,OAAA,CAAQ,QAAS,CAAA,KAAA,CAAM,UAAU,CAAA,EAAG,KAAK,MAAM;AAC7C,QAAQ,OAAA,CAAA,QAAA,EAAY,EAAA,IAAA,CAAK,MAAM;AAC7B,UAAA,QAAA,CAAS,MAAM;AACb,YAAA,OAAA,CAAQ,QAAS,EAAA,CAAA;AAAA,WAClB,CAAA,CAAA;AAAA,SACF,CAAA,CAAA;AACD,QAAA,OAAA,CAAQ,aAAc,EAAA,CAAA;AAAA,OACvB,CAAA,CAAA;AACD,MAAQ,OAAA,CAAA,KAAA,CAAM,MAAM,QAAS,CAAA,KAAA,CAAA;AAC7B,MAAQ,OAAA,CAAA,IAAA,CAAK,MAAM,OAAQ,CAAA,KAAA,CAAA;AAAA,KAC5B,CAAA,CAAA;AAED,IAAM,MAAA,gBAAA,GAAmB,SAAS,MAAM;AACtC,MAAA,OAAO,CAAC,GAAG,IAAI,GAAI,CAAA,KAAA,CAAM,QAAQ,MAAO,CAAA,CAAC,MAAW,KAAA,CAAC,MAAM,WAAY,CAAA,QAAA,CAAS,MAAM,CAAC,CAAC,CAAC,CAAA,CAAA;AAAA,KAC1F,CAAA,CAAA;AAED,IAAM,MAAA,iBAAA,GAAoB,CAAC,GAAgB,KAAA;AACzC,MAAA,OAAA,CAAQ,aAAc,CAAA,kBAAA,EAAoB,EAAE,IAAA,EAAM,KAAK,CAAA,CAAA;AAAA,KACzD,CAAA;AAEA,IAAM,MAAA,oBAAA,GAAuB,CAAC,GAAgB,KAAA;AAC5C,MAAA,OAAA,CAAQ,aAAc,CAAA,qBAAA,EAAuB,EAAE,IAAA,EAAM,KAAK,CAAA,CAAA;AAAA,KAC5D,CAAA;AAGA,IAAM,MAAA,UAAA,GAAa,CAAC,GAAa,KAAA;AAC/B,MAAQ,OAAA,CAAA,UAAA,CAAW,QAAQ,CAAC,GAAA,CAAI,QAAQ,KAAM,CAAA,EAAG,CAAC,CAAC,CAAA,CAAA;AAAA,KACrD,CAAA;AAEA,IAAA,MAAM,YAAe,GAAA,CAAC,EAAE,KAAA,EAAO,MAA4C,KAAA;AACzE,MAAA,OAAA,CAAQ,cAAc,aAAe,EAAA;AAAA,QACnC,IAAA;AAAA,QACA,KAAO,EAAA,KAAA,GAAS,KAAS,IAAA,WAAA,GAAc,QAAQ,MAAU,GAAA,EAAA;AAAA,OAC1D,CAAA,CAAA;AAAA,KACH,CAAA;AAEA,IAAM,MAAA,SAAA,GAAY,SAAS,MAAM;AAC/B,MAAA,MAAM,YAAe,GAAA,CAAC,EAAI,EAAA,EAAA,EAAI,IAAI,GAAG,CAAA,CAAA;AACrC,MAAI,IAAA,OAAA,CAAQ,KAAM,CAAA,MAAA,CAAQ,KAAO,EAAA;AAC/B,QAAA,IAAI,CAAC,YAAa,CAAA,QAAA,CAAS,QAAQ,KAAM,CAAA,MAAA,CAAQ,KAAK,CAAG,EAAA;AACvD,UAAA,YAAA,CAAa,IAAK,CAAA,OAAA,CAAQ,KAAM,CAAA,MAAA,CAAQ,KAAK,CAAA,CAAA;AAAA,SAC/C;AAAA,OACF;AACA,MAAO,OAAA,YAAA,CAAA;AAAA,KACR,CAAA,CAAA;AAKD,IAAM,MAAA,QAAA,GAAW,CAAC,SAAA,EAAuB,GAAkB,KAAA;AACzD,MACE,IAAA,SAAA,CAAU,IAAK,CAAA,CAAC,IAAmB,KAAA;AACjC,QAAO,OAAA,GAAA,CAAI,QAAQ,KAAM,CAAA,EAAG,MAAM,IAAK,CAAA,OAAA,CAAQ,MAAM,EAAG,CAAA,CAAA;AAAA,OACzD,CACD,EAAA;AACA,QAAA,IAAI,IAAI,QAAU,EAAA;AAChB,UAAe,cAAA,CAAA,GAAA,CAAI,UAAU,IAAI,CAAA,CAAA;AAAA,SACnC;AAAA,OACK,MAAA;AACL,QAAA,IAAI,IAAI,QAAU,EAAA;AAChB,UAAe,cAAA,CAAA,GAAA,CAAI,UAAU,KAAK,CAAA,CAAA;AAAA,SACpC;AAAA,OACF;AAAA,KACF,CAAA;AAOA,IAAM,MAAA,WAAA,GAAc,CAAC,SAA0B,KAAA;AAC7C,MAAA,IAAI,WAAY,CAAA,SAAA,CAAU,GAAI,CAAA,CAAC,GAAkB,KAAA,GAAA,CAAI,OAAQ,CAAA,KAAA,CAAM,EAAG,CAAA,CAAE,QAAS,EAAC,CAAC,CAAG,EAAA;AAEpF,QAAU,SAAA,CAAA,GAAA,CAAI,CAAC,GAAkB,KAAA;AAC/B,UAAA,IAAI,IAAI,QAAU,EAAA;AAChB,YAAe,cAAA,CAAA,GAAA,CAAI,UAAU,IAAI,CAAA,CAAA;AAAA,WACnC;AAAA,SACD,CAAA,CAAA;AAAA,OACI,MAAA;AACL,QAAA,QAAA,CAAS,OAAO,cAAe,EAAA,CAAA;AAAA,OACjC;AAAA,KACF,CAAA;AAQA,IAAM,MAAA,WAAA,GAAc,CAAC,SAAwB,KAAA;AAC3C,MAAM,MAAA,IAAA,GAAO,QAAQ,KAAM,CAAA,IAAA,CAAA;AAE3B,MAAA,KAAA,MAAW,OAAO,IAAM,EAAA;AACtB,QAAO,OAAA,SAAA,CAAU,QAAS,CAAA,IAAA,CAAK,GAAG,CAAA,CAAE,QAAQ,KAAM,CAAA,EAAG,CAAE,CAAA,QAAA,EAAU,CAAA,CAAA;AAAA,OACnE;AACA,MAAO,OAAA,KAAA,CAAA;AAAA,KACT,CAAA;AAKA,IAAM,MAAA,cAAA,GAAiB,CAAC,QAAA,EAAsB,IAAkB,KAAA;AAE9D,MAAS,QAAA,CAAA,GAAA,CAAI,CAAC,CAAgB,KAAA;AAC5B,QAAA,eAAA,CAAgB,GAAG,IAAI,CAAA,CAAA;AACvB,QAAA,IAAI,EAAE,QAAU,EAAA;AACd,UAAe,cAAA,CAAA,CAAA,CAAE,UAAU,IAAI,CAAA,CAAA;AAAA,SACjC;AAAA,OACD,CAAA,CAAA;AAAA,KACH,CAAA;AAKA,IAAM,MAAA,eAAA,GAAkB,CAAC,GAAA,EAAe,IAAkB,KAAA;AACxD,MAAA,IAAI,GAAK,EAAA;AACP,QAAA,QAAA,CAAS,MAAM;AACb,UAAS,QAAA,CAAA,KAAA,EAAO,kBAAmB,CAAA,GAAA,EAAK,IAAI,CAAA,CAAA;AAAA,SAC7C,CAAA,CAAA;AAAA,OACH;AAAA,KACF,CAAA;AAKA,IAAM,MAAA,iBAAA,GAAoB,CAAC,SAA0B,KAAA;AACnD,MAAQ,OAAA,CAAA,aAAA,CAAc,oBAAoB,SAAS,CAAA,CAAA;AAAA,KACrD,CAAA;AAKA,IAAM,MAAA,YAAA,GAAe,CAAC,QAAA,EAAsB,MAAoB,KAAA;AAC9D,MAAA,KAAA,MAAW,OAAO,QAAU,EAAA;AAC1B,QAAA,QAAA,CAAS,KAAO,EAAA,kBAAA,CAAmB,QAAS,CAAA,GAAG,GAAG,MAAM,CAAA,CAAA;AACxD,QAAI,IAAA,QAAA,CAAS,GAAG,CAAA,CAAE,QAAU,EAAA;AAC1B,UAAA,YAAA,CAAa,QAAS,CAAA,GAAG,CAAE,CAAA,QAAA,EAAW,MAAM,CAAA,CAAA;AAAA,SAC9C;AAAA,OACF;AAAA,KACF,CAAA;AAKA,IAAM,MAAA,SAAA,GAAY,CAAC,MAAoB,KAAA;AACrC,MAAa,YAAA,CAAA,OAAA,CAAQ,KAAM,CAAA,IAAA,EAAO,MAAM,CAAA,CAAA;AAAA,KAC1C,CAAA;AAEA,IAAM,MAAA,SAAA,GAAY,SAAS,MAAM;AAC/B,MAAM,MAAA,MAAA,GAAS,QAAQ,KAAM,CAAA,MAAA,CAAA;AAC7B,MAAA,MAAMC,aAAY,EAAC,CAAA;AACnB,MAAA,KAAA,IAAS,CAAI,GAAA,CAAA,EAAG,CAAI,GAAA,MAAA,CAAO,QAAQ,CAAK,EAAA,EAAA;AACtC,QAAI,IAAA,MAAA,CAAO,CAAC,CAAA,CAAE,QAAU,EAAA;AACtB,UAAAA,UAAU,CAAA,IAAA,CAAK,MAAO,CAAA,CAAC,EAAE,QAAQ,CAAA,CAAA;AAAA,SACnC;AAAA,OACF;AACA,MAAOA,OAAAA,UAAAA,CAAAA;AAAA,KACR,CAAA,CAAA;AAED,IAAA,SAAA,CAAU,MAAM;AAAA,KAEf,CAAA,CAAA;AAED,IAAa,QAAA,CAAA;AAAA,MACX,OAAA;AAAA,MACA,QAAA;AAAA,MACA,OAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
@@ -101,6 +101,8 @@ class dkTable {
|
|
101
101
|
return true;
|
102
102
|
}
|
103
103
|
getIndex = () => {
|
104
|
+
if (!this.runBefore("api", { name: "getIndex" }))
|
105
|
+
return;
|
104
106
|
if (!this.runBefore("getIndex"))
|
105
107
|
return;
|
106
108
|
this.table.loading = true;
|
@@ -114,6 +116,8 @@ class dkTable {
|
|
114
116
|
});
|
115
117
|
};
|
116
118
|
getTable = (cache = false) => {
|
119
|
+
if (!this.runBefore("api", { name: "getTable" }))
|
120
|
+
return;
|
117
121
|
if (!this.runBefore("getTable"))
|
118
122
|
return;
|
119
123
|
this.table.columnLoading = true;
|
@@ -143,6 +147,8 @@ class dkTable {
|
|
143
147
|
* 显示回收站
|
144
148
|
*/
|
145
149
|
async showRecycle() {
|
150
|
+
if (!this.runBefore("api", { name: "getRecycleTable" }))
|
151
|
+
return;
|
146
152
|
if (!this.runBefore("getRecycleTable"))
|
147
153
|
return;
|
148
154
|
this.recycleTable.showDialogLoading = true;
|
@@ -157,6 +163,8 @@ class dkTable {
|
|
157
163
|
* 获取回收站列表
|
158
164
|
*/
|
159
165
|
getRecycleIndex = () => {
|
166
|
+
if (!this.runBefore("api", { name: "getRecycleIndex" }))
|
167
|
+
return;
|
160
168
|
if (!this.runBefore("getRecycleIndex"))
|
161
169
|
return;
|
162
170
|
this.recycleTable.loading = true;
|
@@ -172,7 +180,9 @@ class dkTable {
|
|
172
180
|
* @param cache
|
173
181
|
*/
|
174
182
|
getRecycleTable = (cache = false) => {
|
175
|
-
if (!this.runBefore("
|
183
|
+
if (!this.runBefore("api", { name: "getRecycleTable" }))
|
184
|
+
return;
|
185
|
+
if (!this.runBefore("getRecycleTable"))
|
176
186
|
return;
|
177
187
|
this.recycleTable.columnLoading = true;
|
178
188
|
if (cache) {
|
@@ -282,6 +292,8 @@ class dkTable {
|
|
282
292
|
return;
|
283
293
|
if (Object.keys(data.row).length === 0) {
|
284
294
|
}
|
295
|
+
if (!this.runBefore("api", { name: "fieldChange" }))
|
296
|
+
return;
|
285
297
|
data.row.loading = true;
|
286
298
|
this.api.postData("edit", {
|
287
299
|
[this.table.pk]: data.row[this.table.pk],
|
@@ -318,6 +330,8 @@ class dkTable {
|
|
318
330
|
};
|
319
331
|
// 删除
|
320
332
|
postDel = (ids) => {
|
333
|
+
if (!this.runBefore("api", { name: "postDel" }))
|
334
|
+
return;
|
321
335
|
if (!this.runBefore("postDel", { ids }))
|
322
336
|
return;
|
323
337
|
this.api.del(ids).then((res) => {
|
@@ -390,6 +404,8 @@ class dkTable {
|
|
390
404
|
} else {
|
391
405
|
this.form.edit_id = 0;
|
392
406
|
}
|
407
|
+
if (!this.runBefore("api", { name: "toggleForm" }))
|
408
|
+
return;
|
393
409
|
this.api.form(this.form.edit_id).then((res) => {
|
394
410
|
this.form.ref.setFormData(res.data);
|
395
411
|
this.form.ref.show();
|