@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,442 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
3
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
4
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
5
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
+ var __spreadValues = (a, b) => {
7
+ for (var prop in b || (b = {}))
8
+ if (__hasOwnProp.call(b, prop))
9
+ __defNormalProp(a, prop, b[prop]);
10
+ if (__getOwnPropSymbols)
11
+ for (var prop of __getOwnPropSymbols(b)) {
12
+ if (__propIsEnum.call(b, prop))
13
+ __defNormalProp(a, prop, b[prop]);
14
+ }
15
+ return a;
16
+ };
17
+ var __async = (__this, __arguments, generator) => {
18
+ return new Promise((resolve, reject) => {
19
+ var fulfilled = (value) => {
20
+ try {
21
+ step(generator.next(value));
22
+ } catch (e) {
23
+ reject(e);
24
+ }
25
+ };
26
+ var rejected = (value) => {
27
+ try {
28
+ step(generator.throw(value));
29
+ } catch (e) {
30
+ reject(e);
31
+ }
32
+ };
33
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
34
+ step((generator = generator.apply(__this, __arguments)).next());
35
+ });
36
+ };
37
+ import { BasicForm, useForm } from "/@/components/Form/index";
38
+ import { ref, reactive, watch, toRaw, resolveComponent, openBlock, createElementBlock, createVNode, withCtx, createElementVNode, createTextVNode, toDisplayString, createCommentVNode, pushScopeId, popScopeId } from "vue";
39
+ import { defHttp } from "/@/utils/http/axios";
40
+ import { useMessage } from "/@/hooks/web/useMessage";
41
+ import { b as FORM_VIEW_TO_QUERY_VIEW, F as FormSchemaFactory } from "./FormSchemaFactory.js";
42
+ import { g as getRefPromise, b as loadOneFieldDefVal, L as LINK_DOWN, h as handleLinkDown, c as getFieldIndex } from "./useAutoForm.js";
43
+ import { _ as _export_sfc } from "./index.js";
44
+ import "/@/components/Form/src/jeecg/components/JUpload";
45
+ import "/@/views/system/user/user.api";
46
+ import "/@/store/modules/user";
47
+ import "/@/utils";
48
+ import "/@/utils/desform/customExpression";
49
+ import "/@/components/Form/src/componentMap";
50
+ import "./OnlineSelectCascade.js";
51
+ import "/@/components/jeecg/OnLine/JPopupOnlReport.vue";
52
+ import "vue-router";
53
+ var OnlineQueryForm_vue_vue_type_style_index_0_scoped_true_lang = "";
54
+ const _sfc_main = {
55
+ name: "OnlineQueryForm",
56
+ components: {
57
+ BasicForm
58
+ },
59
+ props: {
60
+ id: {
61
+ type: String,
62
+ default: ""
63
+ }
64
+ },
65
+ emits: ["search", "loaded"],
66
+ setup(props, { emit }) {
67
+ const { createMessage: $message } = useMessage();
68
+ const LOAD_URL = "/online/cgform/api/getQueryInfoVue3/";
69
+ const onlineQueryFormRef = ref(null);
70
+ const formSchemas = ref([]);
71
+ const baseColProps = ref({ sm: 24, md: 8 });
72
+ const toggleButtonShow = ref(false);
73
+ const toggleSearchStatus = ref(false);
74
+ const queryParams = ref({});
75
+ const hideList = ref([]);
76
+ const defaultValues = reactive({
77
+ config: {},
78
+ cache: {},
79
+ param: {},
80
+ status: false
81
+ });
82
+ watch(() => defaultValues.status, (val) => __async(this, null, function* () {
83
+ console.log("-------------defaultValues\u53D1\u751F\u6539\u53D8,\u9700\u8981\u91CD\u7F6E\u8868\u5355---------------");
84
+ const { config, cache, param } = toRaw(defaultValues);
85
+ let rawValues = Object.assign({}, config, cache, param);
86
+ yield customSetFieldsValue(rawValues);
87
+ }), { immediate: true, deep: true });
88
+ function initDefaultValues(cache, param) {
89
+ return __async(this, null, function* () {
90
+ defaultValues.cache = __spreadValues({}, cache);
91
+ defaultValues.param = __spreadValues({}, param);
92
+ defaultValues.status = !defaultValues.status;
93
+ });
94
+ }
95
+ watch(() => props.id, (val) => {
96
+ if (val) {
97
+ resetForm();
98
+ } else {
99
+ formSchemas.value = [];
100
+ }
101
+ }, { immediate: true });
102
+ function initSchemas(formProperties) {
103
+ return __async(this, null, function* () {
104
+ let arr = [];
105
+ let configValue = {};
106
+ let keys = Object.keys(formProperties);
107
+ for (let key of keys) {
108
+ const item = formProperties[key];
109
+ let view = item.view;
110
+ if (FORM_VIEW_TO_QUERY_VIEW[view]) {
111
+ item.view = FORM_VIEW_TO_QUERY_VIEW[view];
112
+ }
113
+ yield loadOneFieldDefVal(key, item, configValue);
114
+ if (item.mode == "group" && (view == "date" || view == "datetime" || view == "number")) {
115
+ let temp = FormSchemaFactory.createSlotFormSchema(key, item);
116
+ arr.push(temp);
117
+ } else {
118
+ if (item.view === LINK_DOWN) {
119
+ let array = handleLinkDown(item, key);
120
+ for (let linkDownItem of array) {
121
+ let temp = FormSchemaFactory.createFormSchema(linkDownItem.key, linkDownItem);
122
+ let tempIndex = getFieldIndex(arr, linkDownItem.key);
123
+ if (tempIndex == -1) {
124
+ arr.push(temp);
125
+ } else {
126
+ arr[tempIndex] = temp;
127
+ }
128
+ }
129
+ } else {
130
+ let tempIndex = getFieldIndex(arr, key);
131
+ if (tempIndex == -1) {
132
+ let temp = FormSchemaFactory.createFormSchema(key, item);
133
+ arr.push(temp);
134
+ }
135
+ }
136
+ }
137
+ }
138
+ arr.sort(function(a, b) {
139
+ return a.order - b.order;
140
+ });
141
+ let schemaArray = [];
142
+ if (arr.length > 2) {
143
+ toggleButtonShow.value = true;
144
+ }
145
+ let hideFieldName = [];
146
+ for (let i = 0; i < arr.length; i++) {
147
+ let item = arr[i];
148
+ item.setFormRef(onlineQueryFormRef);
149
+ item.noChange();
150
+ item.asSearchForm();
151
+ if (i > 1) {
152
+ hideFieldName.push(item.field);
153
+ item.isHidden();
154
+ }
155
+ schemaArray.push(item.getFormItemSchema());
156
+ }
157
+ hideList.value = hideFieldName;
158
+ formSchemas.value = schemaArray;
159
+ defaultValues.config = __spreadValues({}, configValue);
160
+ defaultValues.status = !defaultValues.status;
161
+ });
162
+ }
163
+ function resetForm() {
164
+ return __async(this, null, function* () {
165
+ let json = yield loadQueryInfo();
166
+ let allFields = getAllFields(json);
167
+ emit("loaded", json);
168
+ let { formProperties, hasField } = getQueryFormProperties(allFields, json);
169
+ if (hasField == false) {
170
+ formSchemas.value = [];
171
+ return;
172
+ }
173
+ yield initSchemas(formProperties);
174
+ });
175
+ }
176
+ function customSetFieldsValue(rawValues) {
177
+ return __async(this, null, function* () {
178
+ yield getRefPromise(onlineQueryFormRef);
179
+ console.log("rawValues", rawValues);
180
+ yield setFieldsValue(rawValues);
181
+ if (Object.keys(rawValues).length > 0) {
182
+ doSearch();
183
+ }
184
+ });
185
+ }
186
+ function getQueryFormProperties(allFields, json) {
187
+ const { searchFieldList, joinQuery, table } = json;
188
+ let hasField = false;
189
+ let formProperties = {};
190
+ if (allFields) {
191
+ Object.keys(allFields).map((field) => {
192
+ if (searchFieldList.indexOf(field) >= 0) {
193
+ if (joinQuery == true) {
194
+ if (field.indexOf("@") < 0) {
195
+ formProperties[table + "@" + field] = allFields[field];
196
+ hasField = true;
197
+ } else {
198
+ formProperties[field] = allFields[field];
199
+ hasField = true;
200
+ }
201
+ } else {
202
+ if (field.indexOf("@") < 0) {
203
+ formProperties[field] = allFields[field];
204
+ hasField = true;
205
+ }
206
+ }
207
+ }
208
+ });
209
+ }
210
+ return {
211
+ formProperties,
212
+ hasField
213
+ };
214
+ }
215
+ function getAllFields(json) {
216
+ const { properties, searchFieldList, joinQuery, table } = json;
217
+ let allFields = {};
218
+ let order = 1;
219
+ Object.keys(properties).map((field) => {
220
+ let item = properties[field];
221
+ if (item.view == "table") {
222
+ let subProps = item["properties"];
223
+ let subTableOrder = order * 100;
224
+ Object.keys(subProps).map((subField) => {
225
+ let subItem = subProps[subField];
226
+ subItem["order"] = subTableOrder + Number(subItem["order"]);
227
+ let subFieldKey = field + "@" + subField;
228
+ allFields[subFieldKey] = subItem;
229
+ });
230
+ order++;
231
+ } else {
232
+ item["order"] = Number(item["order"]);
233
+ allFields[field] = item;
234
+ }
235
+ });
236
+ return allFields;
237
+ }
238
+ function loadQueryInfo() {
239
+ let url = `${LOAD_URL}${props.id}`;
240
+ return new Promise((resolve) => {
241
+ defHttp.get({ url }, { isTransformResponse: false }).then((res) => {
242
+ if (res.success) {
243
+ resolve(res.result);
244
+ } else {
245
+ resolve(false);
246
+ $message.warning(res.message);
247
+ }
248
+ }).catch(() => {
249
+ $message.warning("\u83B7\u53D6\u67E5\u8BE2\u6761\u4EF6\u5931\u8D25!");
250
+ resolve(false);
251
+ });
252
+ });
253
+ }
254
+ const [registerForm, { resetFields, setFieldsValue, updateSchema, getFieldsValue }] = useForm({
255
+ schemas: formSchemas,
256
+ showActionButtonGroup: false,
257
+ baseColProps,
258
+ autoSubmitOnEnter: true,
259
+ submitFunc() {
260
+ doSearch();
261
+ }
262
+ });
263
+ function doSearch() {
264
+ let formValues = getFieldsValue();
265
+ let data = Object.assign({}, toRaw(defaultValues.param), changeDataIfArray2String(formValues));
266
+ emit("search", data, true);
267
+ }
268
+ function resetSearch() {
269
+ return __async(this, null, function* () {
270
+ yield resetFields();
271
+ const { config, param } = toRaw(defaultValues);
272
+ let rawValues = Object.assign({}, config, param);
273
+ if (Object.keys(rawValues).length > 0) {
274
+ yield setFieldsValue(rawValues);
275
+ }
276
+ emit("search", rawValues, false);
277
+ });
278
+ }
279
+ function changeDataIfArray2String(data) {
280
+ Object.keys(data).map((k) => {
281
+ if (data[k]) {
282
+ if (data[k] instanceof Array) {
283
+ data[k] = data[k].join(",");
284
+ }
285
+ }
286
+ });
287
+ return data;
288
+ }
289
+ watch(() => toggleSearchStatus.value, (status) => {
290
+ let names = hideList.value;
291
+ if (names && names.length > 0) {
292
+ let arr = [];
293
+ for (let name of names) {
294
+ arr.push({
295
+ field: name,
296
+ show: status
297
+ });
298
+ }
299
+ updateSchema(arr);
300
+ }
301
+ }, { immediate: false });
302
+ return {
303
+ onlineQueryFormRef,
304
+ registerForm,
305
+ initDefaultValues,
306
+ toggleButtonShow,
307
+ toggleSearchStatus,
308
+ doSearch,
309
+ resetSearch,
310
+ queryParams,
311
+ formSchemas
312
+ };
313
+ }
314
+ };
315
+ const _withScopeId = (n) => (pushScopeId("data-v-94518ffc"), n = n(), popScopeId(), n);
316
+ const _hoisted_1 = {
317
+ key: 0,
318
+ class: "jeecg-basic-table-form-container p-0"
319
+ };
320
+ const _hoisted_2 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ createElementVNode("span", { class: "group-query-string" }, "~", -1));
321
+ const _hoisted_3 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ createElementVNode("span", { class: "group-query-string" }, "~", -1));
322
+ const _hoisted_4 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ createElementVNode("span", { class: "group-query-string" }, "~", -1));
323
+ const _hoisted_5 = {
324
+ style: { "float": "left", "overflow": "hidden", "margin-left": "10px" },
325
+ class: "table-page-search-submitButtons"
326
+ };
327
+ const _hoisted_6 = /* @__PURE__ */ createTextVNode("\u67E5\u8BE2");
328
+ const _hoisted_7 = /* @__PURE__ */ createTextVNode("\u91CD\u7F6E");
329
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
330
+ const _component_a_date_picker = resolveComponent("a-date-picker");
331
+ const _component_a_input_number = resolveComponent("a-input-number");
332
+ const _component_a_button = resolveComponent("a-button");
333
+ const _component_a_icon = resolveComponent("a-icon");
334
+ const _component_a_col = resolveComponent("a-col");
335
+ const _component_BasicForm = resolveComponent("BasicForm");
336
+ return $setup.formSchemas && $setup.formSchemas.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_1, [
337
+ createVNode(_component_BasicForm, {
338
+ ref: "onlineQueryFormRef",
339
+ onRegister: $setup.registerForm
340
+ }, {
341
+ groupDate: withCtx(({ model, field }) => [
342
+ createVNode(_component_a_date_picker, {
343
+ showTime: false,
344
+ valueFormat: "YYYY-MM-DD",
345
+ placeholder: "\u5F00\u59CB\u65E5\u671F",
346
+ value: model[field + "_begin"],
347
+ "onUpdate:value": ($event) => model[field + "_begin"] = $event,
348
+ style: { "width": "calc(50% - 15px)" }
349
+ }, null, 8, ["value", "onUpdate:value"]),
350
+ _hoisted_2,
351
+ createVNode(_component_a_date_picker, {
352
+ showTime: false,
353
+ valueFormat: "YYYY-MM-DD",
354
+ placeholder: "\u7ED3\u675F\u65E5\u671F",
355
+ value: model[field + "_end"],
356
+ "onUpdate:value": ($event) => model[field + "_end"] = $event,
357
+ style: { "width": "calc(50% - 15px)" }
358
+ }, null, 8, ["value", "onUpdate:value"])
359
+ ]),
360
+ groupDatetime: withCtx(({ model, field }) => [
361
+ createVNode(_component_a_date_picker, {
362
+ showTime: true,
363
+ valueFormat: "YYYY-MM-DD HH:mm:ss",
364
+ placeholder: "\u5F00\u59CB\u65F6\u95F4",
365
+ value: model[field + "_begin"],
366
+ "onUpdate:value": ($event) => model[field + "_begin"] = $event,
367
+ style: { "width": "calc(50% - 15px)" }
368
+ }, null, 8, ["value", "onUpdate:value"]),
369
+ _hoisted_3,
370
+ createVNode(_component_a_date_picker, {
371
+ showTime: true,
372
+ valueFormat: "YYYY-MM-DD HH:mm:ss",
373
+ placeholder: "\u7ED3\u675F\u65F6\u95F4",
374
+ value: model[field + "_end"],
375
+ "onUpdate:value": ($event) => model[field + "_end"] = $event,
376
+ style: { "width": "calc(50% - 15px)" }
377
+ }, null, 8, ["value", "onUpdate:value"])
378
+ ]),
379
+ groupNumber: withCtx(({ model, field }) => [
380
+ createVNode(_component_a_input_number, {
381
+ placeholder: "\u5F00\u59CB\u503C",
382
+ value: model[field + "_begin"],
383
+ "onUpdate:value": ($event) => model[field + "_begin"] = $event,
384
+ style: { "width": "calc(50% - 15px)" }
385
+ }, null, 8, ["value", "onUpdate:value"]),
386
+ _hoisted_4,
387
+ createVNode(_component_a_input_number, {
388
+ placeholder: "\u7ED3\u675F\u503C",
389
+ value: model[field + "_end"],
390
+ "onUpdate:value": ($event) => model[field + "_end"] = $event,
391
+ style: { "width": "calc(50% - 15px)" }
392
+ }, null, 8, ["value", "onUpdate:value"])
393
+ ]),
394
+ formFooter: withCtx(() => [
395
+ createVNode(_component_a_col, {
396
+ md: 6,
397
+ sm: 8
398
+ }, {
399
+ default: withCtx(() => [
400
+ createElementVNode("span", _hoisted_5, [
401
+ createVNode(_component_a_button, {
402
+ preIcon: "ant-design:search",
403
+ type: "primary",
404
+ onClick: $setup.doSearch
405
+ }, {
406
+ default: withCtx(() => [
407
+ _hoisted_6
408
+ ]),
409
+ _: 1
410
+ }, 8, ["onClick"]),
411
+ createVNode(_component_a_button, {
412
+ preIcon: "ant-design:reload",
413
+ type: "primary",
414
+ onClick: $setup.resetSearch,
415
+ style: { "margin-left": "8px" }
416
+ }, {
417
+ default: withCtx(() => [
418
+ _hoisted_7
419
+ ]),
420
+ _: 1
421
+ }, 8, ["onClick"]),
422
+ $setup.toggleButtonShow ? (openBlock(), createElementBlock("a", {
423
+ key: 0,
424
+ onClick: _cache[0] || (_cache[0] = ($event) => $setup.toggleSearchStatus = !$setup.toggleSearchStatus),
425
+ style: { "margin-left": "8px" }
426
+ }, [
427
+ createTextVNode(toDisplayString($setup.toggleSearchStatus ? "\u6536\u8D77" : "\u5C55\u5F00") + " ", 1),
428
+ createVNode(_component_a_icon, {
429
+ type: $setup.toggleSearchStatus ? "up" : "down"
430
+ }, null, 8, ["type"])
431
+ ])) : createCommentVNode("", true)
432
+ ])
433
+ ]),
434
+ _: 1
435
+ })
436
+ ]),
437
+ _: 1
438
+ }, 8, ["onRegister"])
439
+ ])) : createCommentVNode("", true);
440
+ }
441
+ var OnlineQueryForm = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-94518ffc"]]);
442
+ export { OnlineQueryForm as default };