@jeecg/online 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/AuthButtonConfig.js +140 -0
  2. package/AuthButtonTree.js +183 -0
  3. package/AuthDataConfig.js +243 -0
  4. package/AuthDataTree.js +160 -0
  5. package/AuthFieldConfig.js +167 -0
  6. package/AuthFieldTree.js +273 -0
  7. package/AuthManagerDrawer.js +125 -0
  8. package/AuthSetterModal.js +317 -0
  9. package/CgformCopyList.js +253 -0
  10. package/CgformModal.js +748 -0
  11. package/CgreportModal.js +673 -0
  12. package/ChartAutoRender.js +69 -0
  13. package/ChartDoubleRender.js +154 -0
  14. package/ChartSingleRender.js +132 -0
  15. package/ChartTabsRender.js +218 -0
  16. package/CheckDictTable.js +121 -0
  17. package/CodeGeneratorModal.js +293 -0
  18. package/CustomButtonList.js +413 -0
  19. package/DBAttributeTable.js +278 -0
  20. package/DbToOnlineModal.js +190 -0
  21. package/EnhanceJavaModal.js +304 -0
  22. package/EnhanceJsHistory.js +231 -0
  23. package/EnhanceJsModal.js +293 -0
  24. package/EnhanceSqlModal.js +305 -0
  25. package/ErrorTip.js +21 -0
  26. package/ExtendConfigModal.js +142 -0
  27. package/FieldTable.js +185 -0
  28. package/FileSelectModal.js +102 -0
  29. package/ForeignKeyTable.js +78 -0
  30. package/FormSchemaFactory.js +938 -0
  31. package/GraphreportAutoChart.js +352 -0
  32. package/GraphreportList.js +239 -0
  33. package/GraphreportModal.js +559 -0
  34. package/IndexTable.js +96 -0
  35. package/JOnlineSearchSelect.js +107 -0
  36. package/LICENSE +7 -0
  37. package/LeftDepart.js +96 -0
  38. package/LeftRole.js +95 -0
  39. package/LeftUser.js +114 -0
  40. package/ModalFormDemo.js +84 -0
  41. package/OnlineAutoList.js +410 -0
  42. package/OnlineAutoModal.js +265 -0
  43. package/OnlineAutoTreeList.js +513 -0
  44. package/OnlineCustomModal.js +269 -0
  45. package/OnlineForm.js +809 -0
  46. package/OnlineQueryForm.js +442 -0
  47. package/OnlineSearchFormItem.js +428 -0
  48. package/OnlineSelectCascade.js +217 -0
  49. package/OnlineSubForm.js +200 -0
  50. package/OnlineSuperQuery.js +912 -0
  51. package/OnlineSuperQueryValComponent.js +8 -0
  52. package/OnlineSuperQueryValComponent.vue_vue_type_script_lang.js +172 -0
  53. package/PageAttributeTable.js +242 -0
  54. package/ParamsTable.js +71 -0
  55. package/ProcessOnlineForm.js +183 -0
  56. package/QueryTable.js +128 -0
  57. package/README.md +23 -0
  58. package/_arrayPush.js +276 -0
  59. package/auth.api.js +43 -0
  60. package/auth.data.js +144 -0
  61. package/cgform.data.js +235 -0
  62. package/cloneDeep.js +475 -0
  63. package/enhance.api.js +120 -0
  64. package/enhance.data.js +196 -0
  65. package/graphreport.api.js +23 -0
  66. package/index.js +64 -0
  67. package/index2.js +336 -0
  68. package/index3.js +799 -0
  69. package/isArray.js +47 -0
  70. package/main.index.js +6 -0
  71. package/package.json +6 -0
  72. package/pick.js +238 -0
  73. package/style.css +1 -0
  74. package/toString.js +31 -0
  75. package/useAutoForm.js +4274 -0
  76. package/useCgformList.js +353 -0
  77. package/useChartRender.js +405 -0
  78. package/useMessageOnline.js +71 -0
  79. package/useOnlineTest.js +26866 -0
  80. package/useSchemas.js +505 -0
  81. package/useTableColumns.js +1154 -0
  82. package/useTableSync.js +105 -0
@@ -0,0 +1,352 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ var __async = (__this, __arguments, generator) => {
21
+ return new Promise((resolve, reject) => {
22
+ var fulfilled = (value) => {
23
+ try {
24
+ step(generator.next(value));
25
+ } catch (e) {
26
+ reject(e);
27
+ }
28
+ };
29
+ var rejected = (value) => {
30
+ try {
31
+ step(generator.throw(value));
32
+ } catch (e) {
33
+ reject(e);
34
+ }
35
+ };
36
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
37
+ step((generator = generator.apply(__this, __arguments)).next());
38
+ });
39
+ };
40
+ import { h, nextTick, defineComponent, provide, ref, computed, reactive, watch, resolveComponent, openBlock, createElementBlock, createVNode, withCtx, createBlock, Fragment, createCommentVNode } from "vue";
41
+ import { router } from "/@/router";
42
+ import ErrorTip from "./ErrorTip.js";
43
+ import ChartAutoRender from "./ChartAutoRender.js";
44
+ import { BasicForm, useForm } from "/@/components/Form";
45
+ import { g as getParamsInfo, a as getChartsData } from "./graphreport.api.js";
46
+ import { DatePicker, Input, InputNumber } from "ant-design-vue";
47
+ import { isArray } from "/@/utils/is";
48
+ import { formatToDate } from "/@/utils/dateUtil";
49
+ import { _ as _export_sfc } from "./index.js";
50
+ import "./ChartTabsRender.js";
51
+ import "./useChartRender.js";
52
+ import "/@/utils/propTypes";
53
+ import "/@/hooks/web/usePrintJS";
54
+ import "/@/utils/file/download";
55
+ import "/@/utils/dict/JDictSelectUtil";
56
+ import "/@/components/chart/Bar.vue";
57
+ import "/@/components/chart/Pie.vue";
58
+ import "/@/components/chart/BarMulti.vue";
59
+ import "/@/components/chart/LineMulti.vue";
60
+ import "/@/utils/http/axios";
61
+ import "/@/hooks/web/useMessage";
62
+ import "./cloneDeep.js";
63
+ import "./_arrayPush.js";
64
+ import "./isArray.js";
65
+ import "./ChartSingleRender.js";
66
+ import "./ChartDoubleRender.js";
67
+ import "/@/components/jeecg/OnLine/JPopupOnlReport.vue";
68
+ import "vue-router";
69
+ function useParseFormSchemas(chartsData, showSearchField) {
70
+ function parseFormSchemas() {
71
+ return __async(this, null, function* () {
72
+ let { head, items, dictOptions } = chartsData.value;
73
+ if (head.dataType === "sql") {
74
+ let formSchemas = [];
75
+ items.forEach((field) => {
76
+ if (field.searchFlag !== "Y")
77
+ return;
78
+ let isRange = field.searchMode === "group";
79
+ let schema = {};
80
+ let schemas = [];
81
+ if (field.dictCode && dictOptions[field.dictCode]) {
82
+ schema.component = "Select";
83
+ schema.componentProps = {
84
+ options: dictOptions[field.dictCode]
85
+ };
86
+ } else if (["Integer", "Long"].includes(field.fieldType)) {
87
+ schema.component = "InputNumber";
88
+ if (isRange) {
89
+ schema.render = getRangeRender(schemas, field, InputNumber);
90
+ }
91
+ } else if (field.fieldType === "Date") {
92
+ schema.component = "DatePicker";
93
+ schema.componentProps = {
94
+ format: "YYYY-MM-DD"
95
+ };
96
+ if (isRange) {
97
+ schema.render = getRangeRender(schemas, field, DatePicker);
98
+ }
99
+ } else {
100
+ schema.component = "Input";
101
+ if (isRange) {
102
+ schema.render = getRangeRender(schemas, field, Input);
103
+ }
104
+ }
105
+ formSchemas = formSchemas.concat(__spreadValues({
106
+ label: field.fieldTxt,
107
+ field: field.fieldName,
108
+ component: "Input",
109
+ itemProps: {
110
+ class: { "range-query": isRange }
111
+ }
112
+ }, schema)).concat(schemas);
113
+ });
114
+ showSearchField.value = formSchemas.length > 0;
115
+ yield nextTick();
116
+ return formSchemas;
117
+ } else {
118
+ showSearchField.value = false;
119
+ return null;
120
+ }
121
+ });
122
+ }
123
+ return { parseFormSchemas };
124
+ }
125
+ function getRangeRender(schemas, fieldItem, component) {
126
+ let { fieldTxt: label, fieldName: beginField } = fieldItem;
127
+ let endField = beginField + "_end";
128
+ schemas.push({ label: "", field: endField, component: "Input", show: false });
129
+ return function({ model }) {
130
+ return [
131
+ h(component, {
132
+ value: model[beginField],
133
+ "onUpdate:value": (v) => model[beginField] = v,
134
+ placeholder: "\u8BF7\u8F93\u5165\u5F00\u59CB" + label,
135
+ format: "YYYY-MM-DD"
136
+ }),
137
+ h("span", { class: "range-span" }, "~"),
138
+ h(component, {
139
+ value: model[endField],
140
+ "onUpdate:value": (v) => model[endField] = v,
141
+ placeholder: "\u8BF7\u8F93\u5165\u7ED3\u675F" + label,
142
+ format: "YYYY-MM-DD"
143
+ })
144
+ ];
145
+ };
146
+ }
147
+ var GraphreportAutoChart_vue_vue_type_style_index_0_scoped_true_lang = "";
148
+ const _sfc_main = defineComponent({
149
+ name: "GraphreportAutoChart",
150
+ components: { BasicForm, ErrorTip, ChartAutoRender },
151
+ props: {},
152
+ setup() {
153
+ provide("setErrorTip", setErrorTip);
154
+ const $route = router.currentRoute;
155
+ const loading = ref(false);
156
+ const code = computed(() => $route.value.params.code);
157
+ const errorTip = ref(null);
158
+ const errors = reactive({ resultIsEmpty: false });
159
+ const chartsData = ref();
160
+ const paramsMap = reactive({});
161
+ const selfParamsMap = reactive({});
162
+ const searchFormMap = reactive({});
163
+ const paramsRef = getPageComputed(paramsMap, "");
164
+ const selfParamsRef = getPageComputed(selfParamsMap);
165
+ const searchFormModal = getPageComputed(searchFormMap, {});
166
+ const showSearchField = ref(false);
167
+ const adaptiveColProps = { xs: 24, sm: 12, md: 12, lg: 8, xl: 8, xxl: 6 };
168
+ const [registerSearchForm, searchForm] = useForm({
169
+ schemas: [],
170
+ compact: true,
171
+ labelWidth: 120,
172
+ autoSubmitOnEnter: true,
173
+ rowProps: { gutter: 8 },
174
+ baseColProps: __spreadValues({}, adaptiveColProps),
175
+ labelCol: { xs: 24, sm: 8, md: 6, lg: 8, xl: 6, xxl: 6 },
176
+ wrapperCol: {},
177
+ showAdvancedButton: true,
178
+ autoAdvancedCol: 3,
179
+ actionColOptions: __spreadProps(__spreadValues({}, adaptiveColProps), {
180
+ style: { textAlign: "left" }
181
+ }),
182
+ resetFunc: onReset,
183
+ submitFunc: onSubmit
184
+ });
185
+ watch($route, () => {
186
+ selfParamsRef.value = null;
187
+ loadChartsData();
188
+ }, { immediate: true });
189
+ function setErrorTip(tip) {
190
+ errorTip.value = tip;
191
+ }
192
+ function loadChartsData() {
193
+ return __async(this, null, function* () {
194
+ loading.value = true;
195
+ if (!code.value) {
196
+ loading.value = false;
197
+ return false;
198
+ }
199
+ let params = { id: code.value, params: paramsRef.value };
200
+ if (selfParamsRef.value == null) {
201
+ selfParamsRef.value = {};
202
+ try {
203
+ let result = yield getParamsInfo({ headId: params.id });
204
+ if (result && result.length > 0) {
205
+ for (let i of result) {
206
+ selfParamsRef.value["self_" + i.paramName] = !$route.value.query[i.paramName] ? "" : $route.value.query[i.paramName];
207
+ }
208
+ }
209
+ } catch (e) {
210
+ return;
211
+ }
212
+ }
213
+ try {
214
+ let result = yield getChartsData(__spreadValues(__spreadValues({}, params), selfParamsRef.value));
215
+ let { head, data, items, dictOptions } = result;
216
+ if (data && data.length === 0) {
217
+ errors.resultIsEmpty = true;
218
+ } else {
219
+ errors.resultIsEmpty = false;
220
+ chartsData.value = { head, data, items, dictOptions };
221
+ parseChartsData();
222
+ }
223
+ } finally {
224
+ loading.value = false;
225
+ }
226
+ });
227
+ }
228
+ function getPageComputed(map, defVal) {
229
+ return computed({
230
+ get() {
231
+ if (map[code.value] == null) {
232
+ map[code.value] = defVal;
233
+ }
234
+ return map[code.value];
235
+ },
236
+ set: (val) => map[code.value] = val
237
+ });
238
+ }
239
+ const { parseFormSchemas } = useParseFormSchemas(chartsData, showSearchField);
240
+ function parseChartsData() {
241
+ return __async(this, null, function* () {
242
+ let schemas = yield parseFormSchemas();
243
+ if (schemas) {
244
+ searchForm.resetSchema(schemas);
245
+ }
246
+ });
247
+ }
248
+ function onReset() {
249
+ return __async(this, null, function* () {
250
+ paramsRef.value = "";
251
+ loadChartsData();
252
+ });
253
+ }
254
+ function onSubmit() {
255
+ return __async(this, null, function* () {
256
+ const data = yield searchForm.validate();
257
+ let { items } = chartsData.value;
258
+ let params = [];
259
+ for (let field of items) {
260
+ if (field.searchFlag !== "Y")
261
+ continue;
262
+ let values = null;
263
+ if (!field.searchMode)
264
+ field.searchMode = "single";
265
+ if (field.searchMode === "single") {
266
+ values = data[field.fieldName];
267
+ } else {
268
+ let _begin = data[field.fieldName];
269
+ let _end = data[`${field.fieldName}_end`];
270
+ values = [_begin, _end];
271
+ }
272
+ if (field.fieldType === "Date") {
273
+ values = formatDate(values);
274
+ }
275
+ if (values != null && (values[0] != null || values[1] != null)) {
276
+ params.push({
277
+ value: values,
278
+ fieldTxt: field.fieldTxt,
279
+ fieldName: field.fieldName,
280
+ fieldType: field.fieldType,
281
+ searchMode: field.searchMode
282
+ });
283
+ }
284
+ }
285
+ paramsRef.value = encodeURIComponent(JSON.stringify(params));
286
+ loadChartsData();
287
+ });
288
+ }
289
+ function formatDate(values) {
290
+ if (values) {
291
+ if (isArray(values)) {
292
+ if (values[0]) {
293
+ values[0] = formatToDate(values[0]);
294
+ }
295
+ if (values[1]) {
296
+ values[1] = formatToDate(values[1]);
297
+ }
298
+ } else {
299
+ return formatToDate(values);
300
+ }
301
+ }
302
+ return values;
303
+ }
304
+ return {
305
+ loading,
306
+ errors,
307
+ errorTip,
308
+ chartsData,
309
+ showSearchField,
310
+ searchFormModal,
311
+ registerSearchForm
312
+ };
313
+ }
314
+ });
315
+ const _hoisted_1 = { class: "p-2" };
316
+ const _hoisted_2 = {
317
+ key: 0,
318
+ class: "search-field"
319
+ };
320
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
321
+ const _component_ErrorTip = resolveComponent("ErrorTip");
322
+ const _component_BasicForm = resolveComponent("BasicForm");
323
+ const _component_ChartAutoRender = resolveComponent("ChartAutoRender");
324
+ const _component_a_spin = resolveComponent("a-spin");
325
+ return openBlock(), createElementBlock("div", _hoisted_1, [
326
+ createVNode(_component_a_spin, { spinning: _ctx.loading }, {
327
+ default: withCtx(() => [
328
+ _ctx.errorTip ? (openBlock(), createBlock(_component_ErrorTip, {
329
+ key: 0,
330
+ tip: _ctx.errorTip
331
+ }, null, 8, ["tip"])) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
332
+ _ctx.showSearchField ? (openBlock(), createElementBlock("div", _hoisted_2, [
333
+ createVNode(_component_BasicForm, {
334
+ onRegister: _ctx.registerSearchForm,
335
+ model: _ctx.searchFormModal
336
+ }, null, 8, ["onRegister", "model"])
337
+ ])) : createCommentVNode("", true),
338
+ _ctx.errors.resultIsEmpty ? (openBlock(), createBlock(_component_ErrorTip, {
339
+ key: 1,
340
+ tip: "\u6CA1\u6709\u67E5\u8BE2\u5230\u4EFB\u4F55\u6570\u636E"
341
+ })) : (openBlock(), createBlock(_component_ChartAutoRender, {
342
+ key: 2,
343
+ chartsData: _ctx.chartsData
344
+ }, null, 8, ["chartsData"]))
345
+ ], 64))
346
+ ]),
347
+ _: 1
348
+ }, 8, ["spinning"])
349
+ ]);
350
+ }
351
+ var GraphreportAutoChart = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-39167fbc"]]);
352
+ export { GraphreportAutoChart as default };
@@ -0,0 +1,239 @@
1
+ var __async = (__this, __arguments, generator) => {
2
+ return new Promise((resolve, reject) => {
3
+ var fulfilled = (value) => {
4
+ try {
5
+ step(generator.next(value));
6
+ } catch (e) {
7
+ reject(e);
8
+ }
9
+ };
10
+ var rejected = (value) => {
11
+ try {
12
+ step(generator.throw(value));
13
+ } catch (e) {
14
+ reject(e);
15
+ }
16
+ };
17
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
18
+ step((generator = generator.apply(__this, __arguments)).next());
19
+ });
20
+ };
21
+ import { defineComponent, resolveComponent, openBlock, createElementBlock, Fragment, createElementVNode, normalizeClass, createVNode, withCtx, createBlock, createCommentVNode, createTextVNode, ref, h } from "vue";
22
+ import { router } from "/@/router";
23
+ import { useListPage } from "/@/hooks/system/useListPage";
24
+ import { l as list, A as Api, d as doBatchDelete, q as queryParamsList } from "./graphreport.api.js";
25
+ import { BasicTable, TableAction } from "/@/components/Table";
26
+ import ExcelButton from "/@/components/jeecg/ExcelButton.vue";
27
+ import { useModal } from "/@/components/Modal";
28
+ import { useCopyModal } from "/@/hooks/web/useCopyModal";
29
+ import GraphreportModal from "./GraphreportModal.js";
30
+ import { _ as _export_sfc } from "./index.js";
31
+ import "/@/utils/http/axios";
32
+ import "/@/components/Form/index";
33
+ import "/@/hooks/web/useMessage";
34
+ import "/@/views/system/user/user.api";
35
+ import "/@/utils/common/compUtils";
36
+ import "/@/store/modules/permission";
37
+ import "./FieldTable.js";
38
+ import "/@/components/jeecg/JVxeTable/types";
39
+ import "./useMessageOnline.js";
40
+ import "ant-design-vue";
41
+ import "@ant-design/icons-vue";
42
+ import "/@/utils/is";
43
+ import "./ParamsTable.js";
44
+ import "/@/components/jeecg/OnLine/JPopupOnlReport.vue";
45
+ import "vue-router";
46
+ const _sfc_main = defineComponent({
47
+ name: "GraphreportList",
48
+ components: { ExcelButton, BasicTable, TableAction, GraphreportModal },
49
+ setup() {
50
+ const { prefixCls, doRequest, doDeleteRecord, tableContext } = useListPage({
51
+ designScope: "online-graphreport-list",
52
+ tableProps: {
53
+ api: list,
54
+ columns: [
55
+ { title: "\u56FE\u8868\u540D\u79F0", dataIndex: "name" },
56
+ { title: "\u7F16\u7801", dataIndex: "code" },
57
+ { title: "\u6570\u636E", dataIndex: "cgrSql" },
58
+ { title: "Y\u8F74\u6587\u5B57", dataIndex: "yaxisText" },
59
+ { title: "X\u8F74\u5B57\u6BB5", dataIndex: "xaxisField" }
60
+ ],
61
+ formConfig: {
62
+ labelWidth: 200,
63
+ schemas: [
64
+ { label: "\u56FE\u8868\u540D\u79F0", field: "name", component: "JInput" },
65
+ { label: "\u7F16\u7801", field: "code", component: "JInput" }
66
+ ]
67
+ }
68
+ }
69
+ });
70
+ const [registerTable, { reload }, { rowSelection, selectedRowKeys }] = tableContext;
71
+ const excelConfig = {
72
+ export: {
73
+ name: "Online\u56FE\u8868",
74
+ url: Api.exportXls
75
+ },
76
+ import: {
77
+ url: Api.importXls,
78
+ success: reload
79
+ }
80
+ };
81
+ const [registerFormModal, formModal] = useModal();
82
+ function onAdd() {
83
+ formModal.openModal(true, { isUpdate: false });
84
+ }
85
+ function onEdit(record) {
86
+ formModal.openModal(true, { isUpdate: true, record });
87
+ }
88
+ function onBatchDelete() {
89
+ return __async(this, null, function* () {
90
+ doRequest(() => doBatchDelete(selectedRowKeys.value));
91
+ });
92
+ }
93
+ function onGoToTest(record) {
94
+ router.push("/online/graphreport/chart/" + record.id);
95
+ }
96
+ const { createCopyModal } = useCopyModal();
97
+ function onShowOnlineUrl(record) {
98
+ return __async(this, null, function* () {
99
+ let baseUrl = `/online/graphreport/chart/${record.id}`;
100
+ let copyText = ref(baseUrl);
101
+ createCopyModal({
102
+ title: `\u914D\u7F6E\u5730\u5740\u3010${record.name}\u3011`,
103
+ content: () => h("div", {}, copyText.value),
104
+ copyText
105
+ });
106
+ let result = yield queryParamsList(record.id);
107
+ if (result && result.length > 0) {
108
+ let str = "?";
109
+ result.forEach((item) => {
110
+ str += item.paramName + "=${" + item.paramName + "}&";
111
+ });
112
+ str = str.substring(0, str.length - 1);
113
+ copyText.value = `${baseUrl}${str}`;
114
+ }
115
+ });
116
+ }
117
+ function getTableAction(record) {
118
+ return [
119
+ {
120
+ label: "\u7F16\u8F91",
121
+ onClick: () => onEdit(record)
122
+ }
123
+ ];
124
+ }
125
+ function getDropDownAction(record) {
126
+ return [
127
+ {
128
+ label: "\u529F\u80FD\u6D4B\u8BD5",
129
+ onClick: () => onGoToTest(record)
130
+ },
131
+ {
132
+ label: "\u914D\u7F6E\u5730\u5740",
133
+ onClick: () => onShowOnlineUrl(record)
134
+ },
135
+ {
136
+ label: "\u5220\u9664",
137
+ popConfirm: {
138
+ title: "\u786E\u5B9A\u5220\u9664\u5417\uFF1F",
139
+ placement: "left",
140
+ confirm: () => doDeleteRecord(() => doBatchDelete([record.id]))
141
+ }
142
+ }
143
+ ];
144
+ }
145
+ return {
146
+ reload,
147
+ prefixCls,
148
+ rowSelection,
149
+ selectedRowKeys,
150
+ onAdd,
151
+ getTableAction,
152
+ getDropDownAction,
153
+ onBatchDelete,
154
+ registerTable,
155
+ registerFormModal,
156
+ excelConfig
157
+ };
158
+ }
159
+ });
160
+ const _hoisted_1 = /* @__PURE__ */ createTextVNode("\u65B0\u589E");
161
+ const _hoisted_2 = /* @__PURE__ */ createElementVNode("span", null, "\u5220\u9664", -1);
162
+ const _hoisted_3 = /* @__PURE__ */ createElementVNode("span", null, "\u6279\u91CF\u64CD\u4F5C", -1);
163
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
164
+ const _component_a_button = resolveComponent("a-button");
165
+ const _component_ExcelButton = resolveComponent("ExcelButton");
166
+ const _component_a_icon = resolveComponent("a-icon");
167
+ const _component_a_menu_item = resolveComponent("a-menu-item");
168
+ const _component_a_menu = resolveComponent("a-menu");
169
+ const _component_a_dropdown = resolveComponent("a-dropdown");
170
+ const _component_TableAction = resolveComponent("TableAction");
171
+ const _component_BasicTable = resolveComponent("BasicTable");
172
+ const _component_GraphreportModal = resolveComponent("GraphreportModal");
173
+ return openBlock(), createElementBlock(Fragment, null, [
174
+ createElementVNode("div", {
175
+ class: normalizeClass(_ctx.prefixCls)
176
+ }, [
177
+ createVNode(_component_BasicTable, {
178
+ onRegister: _ctx.registerTable,
179
+ rowSelection: _ctx.rowSelection
180
+ }, {
181
+ tableTitle: withCtx(() => [
182
+ createVNode(_component_a_button, {
183
+ onClick: _ctx.onAdd,
184
+ type: "primary",
185
+ preIcon: "ant-design:plus"
186
+ }, {
187
+ default: withCtx(() => [
188
+ _hoisted_1
189
+ ]),
190
+ _: 1
191
+ }, 8, ["onClick"]),
192
+ createVNode(_component_ExcelButton, { config: _ctx.excelConfig }, null, 8, ["config"]),
193
+ _ctx.selectedRowKeys.length > 0 ? (openBlock(), createBlock(_component_a_dropdown, { key: 0 }, {
194
+ overlay: withCtx(() => [
195
+ createVNode(_component_a_menu, null, {
196
+ default: withCtx(() => [
197
+ createVNode(_component_a_menu_item, {
198
+ key: "1",
199
+ onClick: _ctx.onBatchDelete
200
+ }, {
201
+ default: withCtx(() => [
202
+ createVNode(_component_a_icon, { type: "delete" }),
203
+ _hoisted_2
204
+ ]),
205
+ _: 1
206
+ }, 8, ["onClick"])
207
+ ]),
208
+ _: 1
209
+ })
210
+ ]),
211
+ default: withCtx(() => [
212
+ createVNode(_component_a_button, null, {
213
+ default: withCtx(() => [
214
+ _hoisted_3,
215
+ createVNode(_component_a_icon, { type: "down" })
216
+ ]),
217
+ _: 1
218
+ })
219
+ ]),
220
+ _: 1
221
+ })) : createCommentVNode("", true)
222
+ ]),
223
+ action: withCtx(({ record }) => [
224
+ createVNode(_component_TableAction, {
225
+ actions: _ctx.getTableAction(record),
226
+ dropDownActions: _ctx.getDropDownAction(record)
227
+ }, null, 8, ["actions", "dropDownActions"])
228
+ ]),
229
+ _: 1
230
+ }, 8, ["onRegister", "rowSelection"])
231
+ ], 2),
232
+ createVNode(_component_GraphreportModal, {
233
+ onRegister: _ctx.registerFormModal,
234
+ onSuccess: _ctx.reload
235
+ }, null, 8, ["onRegister", "onSuccess"])
236
+ ], 64);
237
+ }
238
+ var GraphreportList = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
239
+ export { GraphreportList as default };