@luck-design-biz/luckda 1.0.2-20 → 1.0.2-20temp
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/components/Builder/index.js +24 -17
- package/es/components/LdAutoForm/index.js +14 -5
- package/es/components/LdGrid/index.js +13 -4
- package/es/components/LdGridForm/index.js +12 -4
- package/es/helper/form.js +7 -1
- package/es/helper/ldBuilder.js +4 -1
- package/es/services.js +24 -7
- package/es/utils/form.js +36 -3
- package/es/utils/grid.js +2 -1
- package/lib/components/Builder/index.js +23 -16
- package/lib/components/LdAutoForm/index.js +13 -4
- package/lib/components/LdGrid/index.js +13 -4
- package/lib/components/LdGridForm/index.js +11 -3
- package/lib/helper/form.js +7 -1
- package/lib/helper/ldBuilder.js +4 -1
- package/lib/services.js +25 -7
- package/lib/utils/form.js +37 -3
- package/lib/utils/grid.js +2 -1
- package/package.json +1 -1
|
@@ -9,7 +9,7 @@ import { formatMessage } from '@luck-design-biz/base/utils';
|
|
|
9
9
|
import { META_TAG_NAME, LC_RUNTIME_KEY } from "../../lowcode/constants";
|
|
10
10
|
import { setMetaAttrs } from "../../lowcode/engine/tools/helper";
|
|
11
11
|
import LdPop from "../LdPop";
|
|
12
|
-
import { readModlue, noAuthTransformCode } from "../../services";
|
|
12
|
+
import { readModlue, noAuthTransformCode, readUI } from "../../services";
|
|
13
13
|
import { doAction as doActionUtils } from "../../helper/action";
|
|
14
14
|
export var LuckDaContext = /*#__PURE__*/createContext();
|
|
15
15
|
export var useLDCtx = function useLDCtx(pageProxy) {
|
|
@@ -44,21 +44,28 @@ var builder = function builder(WrappedComponent, moduleCode) {
|
|
|
44
44
|
var _useRequest = useRequest(readModlue, {
|
|
45
45
|
defaultParams: [{
|
|
46
46
|
moduleCode: moduleCode
|
|
47
|
-
}]
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
isTree: data.isTree || [],
|
|
56
|
-
resources: data.resources || []
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
}
|
|
47
|
+
}]
|
|
48
|
+
}),
|
|
49
|
+
loading = _useRequest.loading,
|
|
50
|
+
moduleResult = _useRequest.data;
|
|
51
|
+
var _useRequest2 = useRequest(readUI, {
|
|
52
|
+
defaultParams: [{
|
|
53
|
+
moduleCode: moduleCode
|
|
54
|
+
}]
|
|
60
55
|
}),
|
|
61
|
-
|
|
56
|
+
loading1 = _useRequest2.loading,
|
|
57
|
+
uiResult = _useRequest2.data;
|
|
58
|
+
useEffect(function () {
|
|
59
|
+
if (!loading && !loading1 && (moduleResult === null || moduleResult === void 0 ? void 0 : moduleResult.code) === 1 && (uiResult === null || uiResult === void 0 ? void 0 : uiResult.code) === 1) {
|
|
60
|
+
setModuleData({
|
|
61
|
+
actions: moduleResult.data.actions || {},
|
|
62
|
+
dataSets: moduleResult.data.dataSets || {},
|
|
63
|
+
isTree: moduleResult.data.isTree || [],
|
|
64
|
+
resources: moduleResult.data.resources || [],
|
|
65
|
+
moduleUiList: uiResult.data.moduleUiList || {}
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
}, [loading, loading1, moduleResult, uiResult]);
|
|
62
69
|
var openPop = useMemoizedFn(function (ldId, params) {
|
|
63
70
|
setPops(function (prev) {
|
|
64
71
|
return _objectSpread(_objectSpread({}, prev), {}, _defineProperty({}, ldId, _objectSpread(_objectSpread({}, prev[ldId]), params)));
|
|
@@ -108,8 +115,8 @@ var builder = function builder(WrappedComponent, moduleCode) {
|
|
|
108
115
|
var _props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
109
116
|
fieldProps.current = _objectSpread(_objectSpread({}, fieldProps.current), _props);
|
|
110
117
|
};
|
|
111
|
-
if (loading) return null;
|
|
112
|
-
if (!moduleData) return formatMessage({
|
|
118
|
+
if (loading || loading1) return null;
|
|
119
|
+
if (!moduleData) if (!moduleData) return formatMessage({
|
|
113
120
|
id: 'luckda.module.loadFailed',
|
|
114
121
|
label: '模块信息加载失败'
|
|
115
122
|
});
|
|
@@ -2,13 +2,13 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
2
2
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
3
3
|
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
4
4
|
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
5
|
-
var _excluded = ["columns", "resources", "actions", "doAction", "ldId", "dataSetKey", "filedsRewrite", "mainFormLdId", "mainDataSetKey", "onValueChange", "onQuery", "onAdd", "onUpdate", "moduleCode", "defaultDataSourceFormat", "ticketData", "relationKey", "fields", "setVerifyRules", "pageProxy"];
|
|
5
|
+
var _excluded = ["columns", "resources", "actions", "doAction", "uiSettings", "ldId", "dataSetKey", "filedsRewrite", "mainFormLdId", "mainDataSetKey", "onValueChange", "onQuery", "onAdd", "onUpdate", "moduleCode", "defaultDataSourceFormat", "ticketData", "relationKey", "fields", "setVerifyRules", "pageProxy"];
|
|
6
6
|
import React, { createRef } from 'react';
|
|
7
7
|
import { reduce, keyBy, isEmpty, pick, union, omit, forEach, debounce, isNil } from 'lodash';
|
|
8
8
|
import { BasicDivider } from 'luck-design';
|
|
9
9
|
import { AutoForm } from '@luck-design-biz/base/FormList';
|
|
10
10
|
import ldBuilder from "../../helper/ldBuilder";
|
|
11
|
-
import { getFormItem, formItemDataFormat, dataFormat, behaviorCall } from "../../utils";
|
|
11
|
+
import { getFormItem, formItemDataFormat, dataFormat, behaviorCall, mergeAndSort } from "../../utils";
|
|
12
12
|
import { useLDCtx } from "../Builder";
|
|
13
13
|
var didMount = false;
|
|
14
14
|
var debounceFunc = debounce(function (fields, changedValues, allValues, props) {
|
|
@@ -31,6 +31,8 @@ var buildLdAutoForm = function buildLdAutoForm(_ref) {
|
|
|
31
31
|
actions = _ref$actions === void 0 ? {} : _ref$actions,
|
|
32
32
|
_ref$doAction = _ref.doAction,
|
|
33
33
|
doAction = _ref$doAction === void 0 ? function () {} : _ref$doAction,
|
|
34
|
+
_ref$uiSettings = _ref.uiSettings,
|
|
35
|
+
uiSettings = _ref$uiSettings === void 0 ? {} : _ref$uiSettings,
|
|
34
36
|
ldId = _ref.ldId,
|
|
35
37
|
dataSetKey = _ref.dataSetKey,
|
|
36
38
|
_ref$filedsRewrite = _ref.filedsRewrite,
|
|
@@ -63,9 +65,11 @@ var buildLdAutoForm = function buildLdAutoForm(_ref) {
|
|
|
63
65
|
setFieldProps = _ref2.setFieldProps;
|
|
64
66
|
var defaultValues = /*#__PURE__*/createRef({});
|
|
65
67
|
var isMain = ldId === mainFormLdId;
|
|
68
|
+
var formPreset = uiSettings && uiSettings.form && uiSettings.form[0] && uiSettings.form[0].preset ? JSON.parse(uiSettings.form[0].preset) : {};
|
|
66
69
|
var basicItems = function () {
|
|
67
70
|
var fieldsObj = keyBy(fields, 'field');
|
|
68
|
-
var
|
|
71
|
+
var mergedArray = mergeAndSort(columns, formPreset.formFieldPreset || [], 'field');
|
|
72
|
+
var columnsObj = keyBy(mergedArray, 'field');
|
|
69
73
|
var keys = isEmpty(fields) ? Object.keys(columnsObj) : union(Object.keys(fieldsObj), Object.keys(columnsObj));
|
|
70
74
|
var _defaultValues = {};
|
|
71
75
|
var _nodes = reduce(keys, function (result, key) {
|
|
@@ -86,6 +90,10 @@ var buildLdAutoForm = function buildLdAutoForm(_ref) {
|
|
|
86
90
|
setVerifyRules: setVerifyRules,
|
|
87
91
|
fieldName: (setting === null || setting === void 0 ? void 0 : setting.fieldAliasName) || col.fieldName
|
|
88
92
|
}, pick(setting, defaultSet));
|
|
93
|
+
// 该字段配置的表单显示信息
|
|
94
|
+
var colUiData = formPreset.formFieldPreset ? formPreset.formFieldPreset.find(function (c) {
|
|
95
|
+
return c.field === col.field;
|
|
96
|
+
}) : {};
|
|
89
97
|
result.push(getFormItem(newCol, _objectSpread(_objectSpread({
|
|
90
98
|
formId: ldId,
|
|
91
99
|
moduleCode: moduleCode
|
|
@@ -94,7 +102,7 @@ var buildLdAutoForm = function buildLdAutoForm(_ref) {
|
|
|
94
102
|
return onValueChange(_defineProperty({}, ldId, _defineProperty({}, col.aliaName, value)));
|
|
95
103
|
},
|
|
96
104
|
setting: omit(setting, [].concat(defaultSet, ['uid', 'field']))
|
|
97
|
-
})));
|
|
105
|
+
}), colUiData));
|
|
98
106
|
}
|
|
99
107
|
return result;
|
|
100
108
|
}, []);
|
|
@@ -111,7 +119,8 @@ var buildLdAutoForm = function buildLdAutoForm(_ref) {
|
|
|
111
119
|
isMain: isMain,
|
|
112
120
|
defaultDataSource: _objectSpread(_objectSpread({}, formItemDataFormat(columns.map(function (c) {
|
|
113
121
|
return _objectSpread(_objectSpread({}, c), keyBy(fields, 'field')[c.field]);
|
|
114
|
-
}), defaultValues.current)), defaultDataSourceFormat(defaultValues.current))
|
|
122
|
+
}), defaultValues.current)), defaultDataSourceFormat(defaultValues.current)),
|
|
123
|
+
col: formPreset.formCol
|
|
115
124
|
};
|
|
116
125
|
var onOperate = function onOperate() {
|
|
117
126
|
var _onOperate = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
@@ -2,7 +2,7 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
2
2
|
import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
|
|
3
3
|
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
4
4
|
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
5
|
-
var _excluded = ["columns", "resources", "actions", "doAction", "afterInit", "namespace", "wrapperRef", "list", "detail", "params", "filters", "_loading", "loading", "unclosableSet", "onQuery", "doQuery", "pagination", "pageno", "pagesize", "totalCount", "columnsRewrite", "columnsReset", "batchOperations", "formatDataSource", "resultSet", "actionsColumn", "readFilter", "isFlow", "isTreeGrid", "writable"],
|
|
5
|
+
var _excluded = ["columns", "resources", "actions", "doAction", "afterInit", "uiSettings", "namespace", "wrapperRef", "list", "detail", "params", "filters", "_loading", "loading", "unclosableSet", "onQuery", "doQuery", "pagination", "pageno", "pagesize", "totalCount", "columnsRewrite", "columnsReset", "batchOperations", "formatDataSource", "resultSet", "actionsColumn", "readFilter", "isFlow", "isTreeGrid", "writable"],
|
|
6
6
|
_excluded2 = ["ldId", "moduleCode", "suppressInit", "overModel", "afterQuery", "isTreeGrid"];
|
|
7
7
|
import React, { forwardRef, useImperativeHandle, useRef, useEffect } from 'react';
|
|
8
8
|
import { getDvaApp } from 'umi';
|
|
@@ -20,6 +20,8 @@ var LdGrid = function LdGrid(_ref) {
|
|
|
20
20
|
actions = _ref.actions,
|
|
21
21
|
doAction = _ref.doAction,
|
|
22
22
|
afterInit = _ref.afterInit,
|
|
23
|
+
_ref$uiSettings = _ref.uiSettings,
|
|
24
|
+
uiSettings = _ref$uiSettings === void 0 ? {} : _ref$uiSettings,
|
|
23
25
|
namespace = _ref.namespace,
|
|
24
26
|
wrapperRef = _ref.wrapperRef,
|
|
25
27
|
list = _ref.list,
|
|
@@ -94,6 +96,7 @@ var LdGrid = function LdGrid(_ref) {
|
|
|
94
96
|
});
|
|
95
97
|
});
|
|
96
98
|
}, [batchOperations]);
|
|
99
|
+
var gridPresetData = uiSettings && uiSettings.grid && uiSettings.grid[0] && uiSettings.grid[0].preset ? JSON.parse(uiSettings.grid[0].preset) : {};
|
|
97
100
|
|
|
98
101
|
/**
|
|
99
102
|
* 优先级
|
|
@@ -110,7 +113,8 @@ var LdGrid = function LdGrid(_ref) {
|
|
|
110
113
|
var _columnsRewrite = isFunction(columnsRewrite) ? columnsRewrite(columns) : columnsRewrite;
|
|
111
114
|
var defaultColumns = keyBy(columns, 'aliaName');
|
|
112
115
|
var customColumns = keyBy(_columnsRewrite, 'field');
|
|
113
|
-
var
|
|
116
|
+
var presetColumns = keyBy(gridPresetData.gridPreset, 'field'); // ui配置的已排序的列
|
|
117
|
+
var mergeFields = union(keys(presetColumns), keys(defaultColumns), keys(customColumns)); // 以UI配置的列排序
|
|
114
118
|
return transform(mergeFields, function (result, field) {
|
|
115
119
|
var _customColumns$field;
|
|
116
120
|
if ((_customColumns$field = customColumns[field]) !== null && _customColumns$field !== void 0 && _customColumns$field.hide) {
|
|
@@ -118,9 +122,14 @@ var LdGrid = function LdGrid(_ref) {
|
|
|
118
122
|
} else if (!defaultColumns[field]) {
|
|
119
123
|
// 数据集中不存在的字段以自定义的形式展示
|
|
120
124
|
result.push(customColumns[field]);
|
|
121
|
-
} else if (defaultColumns[field].isShowInGrid)
|
|
125
|
+
} else if (defaultColumns[field].isShowInGrid) {
|
|
126
|
+
// 该字段配置的表单显示信息
|
|
127
|
+
var columnUiData = gridPresetData.gridPreset ? gridPresetData.gridPreset.find(function (c) {
|
|
128
|
+
return c.field === field;
|
|
129
|
+
}) : {};
|
|
122
130
|
// 数据集中存在的字段和自定义结合展示
|
|
123
|
-
result.push(getGridColumn(defaultColumns[field], customColumns[field] || {}, isTreeGrid, writable));
|
|
131
|
+
result.push(getGridColumn(defaultColumns[field], customColumns[field] || {}, isTreeGrid, writable, columnUiData));
|
|
132
|
+
}
|
|
124
133
|
}, []);
|
|
125
134
|
}, [columns, columnsRewrite, columnsReset]);
|
|
126
135
|
var _actionsColumn = useCreation(function () {
|
|
@@ -2,13 +2,13 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
2
2
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
3
3
|
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
4
4
|
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
5
|
-
var _excluded = ["columns", "resources", "actions", "doAction", "ldId", "dataSetKey", "columnsRewrite", "columnsReset", "onQuery", "onAdd", "onUpdate", "onDelete", "mainFormLdId", "mainDataSetKey", "onValueChange", "type", "afterOperate", "moduleCode", "defaultDataSourceFormat", "ticketData", "className", "formRef", "formMode", "fields", "setVerifyRules", "pageProxy"];
|
|
5
|
+
var _excluded = ["columns", "resources", "actions", "doAction", "uiSettings", "ldId", "dataSetKey", "columnsRewrite", "columnsReset", "onQuery", "onAdd", "onUpdate", "onDelete", "mainFormLdId", "mainDataSetKey", "onValueChange", "type", "afterOperate", "moduleCode", "defaultDataSourceFormat", "ticketData", "className", "formRef", "formMode", "fields", "setVerifyRules", "pageProxy"];
|
|
6
6
|
import React, { createRef } from 'react';
|
|
7
7
|
import { reduce, keyBy, isEmpty, pick, omit } from 'lodash';
|
|
8
8
|
import classNames from 'classnames';
|
|
9
9
|
import ldBuilder from "../../helper/ldBuilder";
|
|
10
10
|
import { GridForm } from '@luck-design-biz/base/FormList';
|
|
11
|
-
import { getFormColumn, formItemDataFormat, dataFormat, behaviorCall } from "../../utils";
|
|
11
|
+
import { getFormColumn, formItemDataFormat, dataFormat, behaviorCall, mergeAndSort } from "../../utils";
|
|
12
12
|
import { defaultComName } from "../../helper/form";
|
|
13
13
|
import { useLDCtx } from "../Builder";
|
|
14
14
|
import styles from "./index.less";
|
|
@@ -21,6 +21,8 @@ var buildLdGridForm = function buildLdGridForm(_ref) {
|
|
|
21
21
|
actions = _ref$actions === void 0 ? {} : _ref$actions,
|
|
22
22
|
_ref$doAction = _ref.doAction,
|
|
23
23
|
doAction = _ref$doAction === void 0 ? function () {} : _ref$doAction,
|
|
24
|
+
_ref$uiSettings = _ref.uiSettings,
|
|
25
|
+
uiSettings = _ref$uiSettings === void 0 ? {} : _ref$uiSettings,
|
|
24
26
|
ldId = _ref.ldId,
|
|
25
27
|
dataSetKey = _ref.dataSetKey,
|
|
26
28
|
_ref$columnsRewrite = _ref.columnsRewrite,
|
|
@@ -65,9 +67,11 @@ var buildLdGridForm = function buildLdGridForm(_ref) {
|
|
|
65
67
|
});
|
|
66
68
|
return col;
|
|
67
69
|
});
|
|
70
|
+
var gridPresetData = uiSettings && uiSettings.grid && uiSettings.grid[0] && uiSettings.grid[0].preset ? JSON.parse(uiSettings.grid[0].preset) : {};
|
|
68
71
|
var _columns = function () {
|
|
72
|
+
var mergedArray = mergeAndSort(gridColumns, gridPresetData.gridPreset || [], 'field');
|
|
69
73
|
var fieldsObj = keyBy(fields, 'field');
|
|
70
|
-
var columnsObj = keyBy(
|
|
74
|
+
var columnsObj = keyBy(mergedArray, 'field');
|
|
71
75
|
var keys = isEmpty(fields) ? Object.keys(columnsObj) : Object.keys(fieldsObj);
|
|
72
76
|
var _defaultValues = {};
|
|
73
77
|
var _nodes = reduce(keys, function (result, key) {
|
|
@@ -105,6 +109,10 @@ var buildLdGridForm = function buildLdGridForm(_ref) {
|
|
|
105
109
|
fieldName: (setting === null || setting === void 0 ? void 0 : setting.fieldAliasName) || col.fieldName
|
|
106
110
|
});
|
|
107
111
|
var defaultSet = ['width', 'align', 'headerAlign', 'pinned', 'tip', 'formMode'];
|
|
112
|
+
// 该字段配置的表单显示信息
|
|
113
|
+
var columnUiData = gridPresetData.gridPreset ? gridPresetData.gridPreset.find(function (c) {
|
|
114
|
+
return c.field === col.field;
|
|
115
|
+
}) : {};
|
|
108
116
|
result.push(getFormColumn(type, newCol, _objectSpread(_objectSpread(_objectSpread({}, pick(setting, defaultSet)), customColumn), {}, {
|
|
109
117
|
formItemRewrite: _objectSpread(_objectSpread({}, (_customColumn = customColumn) === null || _customColumn === void 0 ? void 0 : _customColumn.formItemRewrite), {}, {
|
|
110
118
|
moduleCode: moduleCode,
|
|
@@ -113,7 +121,7 @@ var buildLdGridForm = function buildLdGridForm(_ref) {
|
|
|
113
121
|
render: setting === null || setting === void 0 ? void 0 : setting.render,
|
|
114
122
|
setting: omit(setting, [].concat(defaultSet, ['uid', 'field', 'render']))
|
|
115
123
|
})
|
|
116
|
-
})));
|
|
124
|
+
}), columnUiData));
|
|
117
125
|
return result;
|
|
118
126
|
}, []);
|
|
119
127
|
defaultValues.current = _defaultValues;
|
package/es/helper/form.js
CHANGED
|
@@ -69,9 +69,15 @@ export function translator() {
|
|
|
69
69
|
label: allConfig.fieldName,
|
|
70
70
|
config: {
|
|
71
71
|
required: !!allConfig.isNotNull,
|
|
72
|
-
disabled: !!allConfig.isReadOnly
|
|
72
|
+
disabled: !!allConfig.isReadOnly,
|
|
73
|
+
placeholder: allConfig.placeholder,
|
|
74
|
+
rows: allConfig.rows
|
|
73
75
|
},
|
|
74
76
|
layout: 'block',
|
|
77
|
+
align: allConfig.align,
|
|
78
|
+
headerAlign: allConfig.headerAlign,
|
|
79
|
+
width: allConfig.width,
|
|
80
|
+
tip: allConfig.tip,
|
|
75
81
|
col: allConfig.col || 1,
|
|
76
82
|
row: allConfig.row || 1
|
|
77
83
|
};
|
package/es/helper/ldBuilder.js
CHANGED
|
@@ -20,6 +20,8 @@ var builder = function builder(wrapped) {
|
|
|
20
20
|
actions = _ref.actions,
|
|
21
21
|
_ref$dataSets = _ref.dataSets,
|
|
22
22
|
dataSets = _ref$dataSets === void 0 ? [] : _ref$dataSets,
|
|
23
|
+
_ref$moduleUiList = _ref.moduleUiList,
|
|
24
|
+
moduleUiList = _ref$moduleUiList === void 0 ? {} : _ref$moduleUiList,
|
|
23
25
|
_ref$isTree = _ref.isTree,
|
|
24
26
|
isTree = _ref$isTree === void 0 ? [] : _ref$isTree,
|
|
25
27
|
doAction = _ref.doAction,
|
|
@@ -60,7 +62,8 @@ var builder = function builder(wrapped) {
|
|
|
60
62
|
resources: resources,
|
|
61
63
|
actions: actions,
|
|
62
64
|
doAction: doAction,
|
|
63
|
-
moduleCode: moduleCode
|
|
65
|
+
moduleCode: moduleCode,
|
|
66
|
+
uiSettings: moduleUiList[dataSetKey] // form和grid的页面配置信息
|
|
64
67
|
});
|
|
65
68
|
return wrapped(wrappedProps);
|
|
66
69
|
};
|
package/es/services.js
CHANGED
|
@@ -21,22 +21,39 @@ function _readModlue() {
|
|
|
21
21
|
}));
|
|
22
22
|
return _readModlue.apply(this, arguments);
|
|
23
23
|
}
|
|
24
|
-
export function
|
|
25
|
-
return
|
|
24
|
+
export function readUI(_x2) {
|
|
25
|
+
return _readUI.apply(this, arguments);
|
|
26
26
|
}
|
|
27
|
-
function
|
|
28
|
-
|
|
27
|
+
function _readUI() {
|
|
28
|
+
_readUI = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(get) {
|
|
29
29
|
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
|
30
30
|
while (1) switch (_context2.prev = _context2.next) {
|
|
31
31
|
case 0:
|
|
32
|
-
return _context2.abrupt("return", request("".concat(api.
|
|
33
|
-
params: params
|
|
34
|
-
}));
|
|
32
|
+
return _context2.abrupt("return", request("".concat(api.LUCKDA_HOST, "/ui/builder/noAuthFetchModuleDataSetUI?").concat(stringify(get))));
|
|
35
33
|
case 1:
|
|
36
34
|
case "end":
|
|
37
35
|
return _context2.stop();
|
|
38
36
|
}
|
|
39
37
|
}, _callee2);
|
|
40
38
|
}));
|
|
39
|
+
return _readUI.apply(this, arguments);
|
|
40
|
+
}
|
|
41
|
+
export function noAuthTransformCode(_x3) {
|
|
42
|
+
return _noAuthTransformCode.apply(this, arguments);
|
|
43
|
+
}
|
|
44
|
+
function _noAuthTransformCode() {
|
|
45
|
+
_noAuthTransformCode = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(params) {
|
|
46
|
+
return _regeneratorRuntime().wrap(function _callee3$(_context3) {
|
|
47
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
48
|
+
case 0:
|
|
49
|
+
return _context3.abrupt("return", request("".concat(api.BASE_HOST, "/page/option/noAuthTransformCode"), {
|
|
50
|
+
params: params
|
|
51
|
+
}));
|
|
52
|
+
case 1:
|
|
53
|
+
case "end":
|
|
54
|
+
return _context3.stop();
|
|
55
|
+
}
|
|
56
|
+
}, _callee3);
|
|
57
|
+
}));
|
|
41
58
|
return _noAuthTransformCode.apply(this, arguments);
|
|
42
59
|
}
|
package/es/utils/form.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
|
|
1
2
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
2
3
|
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
3
4
|
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
@@ -22,6 +23,7 @@ import * as formItemUtils from "../helper/FromItems";
|
|
|
22
23
|
* 根据动态表单配置项生成formItem
|
|
23
24
|
* @param {动态表单配置项} props
|
|
24
25
|
* @param {自定义动态表单配置项} customProps
|
|
26
|
+
* @param {formUi配置项} formUiPreset
|
|
25
27
|
* @returns <BasicForm name='' ... />
|
|
26
28
|
*/
|
|
27
29
|
export function getFormItem() {
|
|
@@ -30,10 +32,11 @@ export function getFormItem() {
|
|
|
30
32
|
property = _ref.property,
|
|
31
33
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
32
34
|
var customProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
35
|
+
var formUiPreset = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
33
36
|
if (!property) return /*#__PURE__*/React.createElement(React.Fragment, null);
|
|
34
37
|
if (property === 'sint' || property === 'number' || property === 'long') props.opt_decimal = 0;
|
|
35
38
|
var comType = comName || defaultComName[property];
|
|
36
|
-
var _translator = translator(props),
|
|
39
|
+
var _translator = translator(_objectSpread(_objectSpread({}, props), formUiPreset)),
|
|
37
40
|
name = _translator.name,
|
|
38
41
|
translateProps = _objectWithoutProperties(_translator, _excluded2);
|
|
39
42
|
var _merge = merge(
|
|
@@ -202,8 +205,12 @@ export var dataFormat = function dataFormat() {
|
|
|
202
205
|
/**
|
|
203
206
|
*
|
|
204
207
|
* @param formType
|
|
208
|
+
* @param comName
|
|
209
|
+
* @param property
|
|
205
210
|
* @param props
|
|
211
|
+
* @param formItemRewrite
|
|
206
212
|
* @param customProps
|
|
213
|
+
* @param gridUiPreset
|
|
207
214
|
* @returns {*&{field: *, editable: (false|{required: *}), renderBasicFormItem: ((function(): (*))|*), title, render: *}}
|
|
208
215
|
*/
|
|
209
216
|
export var getFormColumn = function getFormColumn() {
|
|
@@ -216,9 +223,10 @@ export var getFormColumn = function getFormColumn() {
|
|
|
216
223
|
var _ref5 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},
|
|
217
224
|
formItemRewrite = _ref5.formItemRewrite,
|
|
218
225
|
customProps = _objectWithoutProperties(_ref5, _excluded7);
|
|
226
|
+
var gridUiPreset = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
|
|
219
227
|
var formItemType = comName || defaultComName[property];
|
|
220
228
|
if (formItemType === 'radio') formItemType = 'select';
|
|
221
|
-
var _translator2 = translator(props),
|
|
229
|
+
var _translator2 = translator(_objectSpread(_objectSpread({}, props), gridUiPreset)),
|
|
222
230
|
name = _translator2.name,
|
|
223
231
|
translateProps = _objectWithoutProperties(_translator2, _excluded8);
|
|
224
232
|
var _merge2 = merge(
|
|
@@ -229,7 +237,7 @@ export var getFormColumn = function getFormColumn() {
|
|
|
229
237
|
_props = _objectWithoutProperties(_merge2, _excluded9);
|
|
230
238
|
var columnRender = getColumnRender(name, formItemType, _props);
|
|
231
239
|
if (formType !== 'writer') _props.name = name;
|
|
232
|
-
return _objectSpread(_objectSpread({
|
|
240
|
+
return _objectSpread(_objectSpread(_objectSpread({}, _props), {}, {
|
|
233
241
|
title: translateProps.label,
|
|
234
242
|
editable: formType === 'writer' && {
|
|
235
243
|
required: _props.required || ((_props$config = _props.config) === null || _props$config === void 0 ? void 0 : _props$config.required)
|
|
@@ -259,4 +267,29 @@ export var getFormColumn = function getFormColumn() {
|
|
|
259
267
|
field: name,
|
|
260
268
|
exportField: getExportField(name, formItemType, _props)
|
|
261
269
|
});
|
|
270
|
+
};
|
|
271
|
+
|
|
272
|
+
/**
|
|
273
|
+
* 合并两个数组,并且数据顺序以arr2为准
|
|
274
|
+
* @param arr1
|
|
275
|
+
* @param arr2
|
|
276
|
+
* @param rowKey
|
|
277
|
+
*/
|
|
278
|
+
export var mergeAndSort = function mergeAndSort(arr1, arr2, rowKey) {
|
|
279
|
+
// 将a2转换为一个Map,便于快速查找
|
|
280
|
+
var a2Map = new Map(arr2.map(function (item) {
|
|
281
|
+
return [item[rowKey], item];
|
|
282
|
+
}));
|
|
283
|
+
// 创建一个新的数组,按a2的顺序填充元素,同时包含a1中不在a2中的元素
|
|
284
|
+
var mergedArray = arr2.map(function (item) {
|
|
285
|
+
var a1Item = arr1.find(function (a1) {
|
|
286
|
+
return a1[rowKey] === item[rowKey];
|
|
287
|
+
});
|
|
288
|
+
return a1Item ? _objectSpread(_objectSpread({}, item), a1Item) : item;
|
|
289
|
+
});
|
|
290
|
+
// 将a1中未出现在a2中的元素追加到合并后的数组末尾
|
|
291
|
+
mergedArray.push.apply(mergedArray, _toConsumableArray(arr1.filter(function (a1Item) {
|
|
292
|
+
return !a2Map.has(a1Item[rowKey]);
|
|
293
|
+
})));
|
|
294
|
+
return mergedArray;
|
|
262
295
|
};
|
package/es/utils/grid.js
CHANGED
|
@@ -122,12 +122,13 @@ export var getGridColumn = function getGridColumn() {
|
|
|
122
122
|
var customProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
123
123
|
var isTreeGrid = arguments.length > 2 ? arguments[2] : undefined;
|
|
124
124
|
var writable = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
|
125
|
+
var gridUiPreset = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {};
|
|
125
126
|
var comType = comName || defaultComName[property];
|
|
126
127
|
var _props$isVirtual = props.isVirtual,
|
|
127
128
|
isVirtual = _props$isVirtual === void 0 ? false : _props$isVirtual,
|
|
128
129
|
_props$extra = props.extra,
|
|
129
130
|
extra = _props$extra === void 0 ? '{}' : _props$extra;
|
|
130
|
-
var _translator = translator(props),
|
|
131
|
+
var _translator = translator(_objectSpread(_objectSpread({}, props), gridUiPreset)),
|
|
131
132
|
name = _translator.name,
|
|
132
133
|
translateProps = _objectWithoutProperties(_translator, _excluded2);
|
|
133
134
|
var _merge = merge(translateProps, formatCustomProps(comType, customProps)),
|
|
@@ -52,21 +52,28 @@ var builder = function builder(WrappedComponent, moduleCode) {
|
|
|
52
52
|
var _useRequest = (0, _ahooks.useRequest)(_services.readModlue, {
|
|
53
53
|
defaultParams: [{
|
|
54
54
|
moduleCode: moduleCode
|
|
55
|
-
}]
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
isTree: data.isTree || [],
|
|
64
|
-
resources: data.resources || []
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
|
-
}
|
|
55
|
+
}]
|
|
56
|
+
}),
|
|
57
|
+
loading = _useRequest.loading,
|
|
58
|
+
moduleResult = _useRequest.data;
|
|
59
|
+
var _useRequest2 = (0, _ahooks.useRequest)(_services.readUI, {
|
|
60
|
+
defaultParams: [{
|
|
61
|
+
moduleCode: moduleCode
|
|
62
|
+
}]
|
|
68
63
|
}),
|
|
69
|
-
|
|
64
|
+
loading1 = _useRequest2.loading,
|
|
65
|
+
uiResult = _useRequest2.data;
|
|
66
|
+
(0, _react.useEffect)(function () {
|
|
67
|
+
if (!loading && !loading1 && (moduleResult === null || moduleResult === void 0 ? void 0 : moduleResult.code) === 1 && (uiResult === null || uiResult === void 0 ? void 0 : uiResult.code) === 1) {
|
|
68
|
+
setModuleData({
|
|
69
|
+
actions: moduleResult.data.actions || {},
|
|
70
|
+
dataSets: moduleResult.data.dataSets || {},
|
|
71
|
+
isTree: moduleResult.data.isTree || [],
|
|
72
|
+
resources: moduleResult.data.resources || [],
|
|
73
|
+
moduleUiList: uiResult.data.moduleUiList || {}
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
}, [loading, loading1, moduleResult, uiResult]);
|
|
70
77
|
var openPop = (0, _ahooks.useMemoizedFn)(function (ldId, params) {
|
|
71
78
|
setPops(function (prev) {
|
|
72
79
|
return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, prev), {}, (0, _defineProperty2.default)({}, ldId, (0, _objectSpread4.default)((0, _objectSpread4.default)({}, prev[ldId]), params)));
|
|
@@ -116,8 +123,8 @@ var builder = function builder(WrappedComponent, moduleCode) {
|
|
|
116
123
|
var _props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
117
124
|
fieldProps.current = (0, _objectSpread4.default)((0, _objectSpread4.default)({}, fieldProps.current), _props);
|
|
118
125
|
};
|
|
119
|
-
if (loading) return null;
|
|
120
|
-
if (!moduleData) return (0, _utils.formatMessage)({
|
|
126
|
+
if (loading || loading1) return null;
|
|
127
|
+
if (!moduleData) if (!moduleData) return (0, _utils.formatMessage)({
|
|
121
128
|
id: 'luckda.module.loadFailed',
|
|
122
129
|
label: '模块信息加载失败'
|
|
123
130
|
});
|
|
@@ -17,7 +17,7 @@ var _FormList = require("@luck-design-biz/base/FormList");
|
|
|
17
17
|
var _ldBuilder = _interopRequireDefault(require("../../helper/ldBuilder"));
|
|
18
18
|
var _utils = require("../../utils");
|
|
19
19
|
var _Builder = require("../Builder");
|
|
20
|
-
var _excluded = ["columns", "resources", "actions", "doAction", "ldId", "dataSetKey", "filedsRewrite", "mainFormLdId", "mainDataSetKey", "onValueChange", "onQuery", "onAdd", "onUpdate", "moduleCode", "defaultDataSourceFormat", "ticketData", "relationKey", "fields", "setVerifyRules", "pageProxy"];
|
|
20
|
+
var _excluded = ["columns", "resources", "actions", "doAction", "uiSettings", "ldId", "dataSetKey", "filedsRewrite", "mainFormLdId", "mainDataSetKey", "onValueChange", "onQuery", "onAdd", "onUpdate", "moduleCode", "defaultDataSourceFormat", "ticketData", "relationKey", "fields", "setVerifyRules", "pageProxy"];
|
|
21
21
|
var didMount = false;
|
|
22
22
|
var debounceFunc = (0, _lodash.debounce)(function (fields, changedValues, allValues, props) {
|
|
23
23
|
(0, _lodash.forEach)(changedValues, function (val, key) {
|
|
@@ -39,6 +39,8 @@ var buildLdAutoForm = function buildLdAutoForm(_ref) {
|
|
|
39
39
|
actions = _ref$actions === void 0 ? {} : _ref$actions,
|
|
40
40
|
_ref$doAction = _ref.doAction,
|
|
41
41
|
doAction = _ref$doAction === void 0 ? function () {} : _ref$doAction,
|
|
42
|
+
_ref$uiSettings = _ref.uiSettings,
|
|
43
|
+
uiSettings = _ref$uiSettings === void 0 ? {} : _ref$uiSettings,
|
|
42
44
|
ldId = _ref.ldId,
|
|
43
45
|
dataSetKey = _ref.dataSetKey,
|
|
44
46
|
_ref$filedsRewrite = _ref.filedsRewrite,
|
|
@@ -71,9 +73,11 @@ var buildLdAutoForm = function buildLdAutoForm(_ref) {
|
|
|
71
73
|
setFieldProps = _ref2.setFieldProps;
|
|
72
74
|
var defaultValues = /*#__PURE__*/(0, _react.createRef)({});
|
|
73
75
|
var isMain = ldId === mainFormLdId;
|
|
76
|
+
var formPreset = uiSettings && uiSettings.form && uiSettings.form[0] && uiSettings.form[0].preset ? JSON.parse(uiSettings.form[0].preset) : {};
|
|
74
77
|
var basicItems = function () {
|
|
75
78
|
var fieldsObj = (0, _lodash.keyBy)(fields, 'field');
|
|
76
|
-
var
|
|
79
|
+
var mergedArray = (0, _utils.mergeAndSort)(columns, formPreset.formFieldPreset || [], 'field');
|
|
80
|
+
var columnsObj = (0, _lodash.keyBy)(mergedArray, 'field');
|
|
77
81
|
var keys = (0, _lodash.isEmpty)(fields) ? Object.keys(columnsObj) : (0, _lodash.union)(Object.keys(fieldsObj), Object.keys(columnsObj));
|
|
78
82
|
var _defaultValues = {};
|
|
79
83
|
var _nodes = (0, _lodash.reduce)(keys, function (result, key) {
|
|
@@ -94,6 +98,10 @@ var buildLdAutoForm = function buildLdAutoForm(_ref) {
|
|
|
94
98
|
setVerifyRules: setVerifyRules,
|
|
95
99
|
fieldName: (setting === null || setting === void 0 ? void 0 : setting.fieldAliasName) || col.fieldName
|
|
96
100
|
}, (0, _lodash.pick)(setting, defaultSet));
|
|
101
|
+
// 该字段配置的表单显示信息
|
|
102
|
+
var colUiData = formPreset.formFieldPreset ? formPreset.formFieldPreset.find(function (c) {
|
|
103
|
+
return c.field === col.field;
|
|
104
|
+
}) : {};
|
|
97
105
|
result.push((0, _utils.getFormItem)(newCol, (0, _objectSpread3.default)((0, _objectSpread3.default)({
|
|
98
106
|
formId: ldId,
|
|
99
107
|
moduleCode: moduleCode
|
|
@@ -102,7 +110,7 @@ var buildLdAutoForm = function buildLdAutoForm(_ref) {
|
|
|
102
110
|
return onValueChange((0, _defineProperty2.default)({}, ldId, (0, _defineProperty2.default)({}, col.aliaName, value)));
|
|
103
111
|
},
|
|
104
112
|
setting: (0, _lodash.omit)(setting, [].concat(defaultSet, ['uid', 'field']))
|
|
105
|
-
})));
|
|
113
|
+
}), colUiData));
|
|
106
114
|
}
|
|
107
115
|
return result;
|
|
108
116
|
}, []);
|
|
@@ -119,7 +127,8 @@ var buildLdAutoForm = function buildLdAutoForm(_ref) {
|
|
|
119
127
|
isMain: isMain,
|
|
120
128
|
defaultDataSource: (0, _objectSpread3.default)((0, _objectSpread3.default)({}, (0, _utils.formItemDataFormat)(columns.map(function (c) {
|
|
121
129
|
return (0, _objectSpread3.default)((0, _objectSpread3.default)({}, c), (0, _lodash.keyBy)(fields, 'field')[c.field]);
|
|
122
|
-
}), defaultValues.current)), defaultDataSourceFormat(defaultValues.current))
|
|
130
|
+
}), defaultValues.current)), defaultDataSourceFormat(defaultValues.current)),
|
|
131
|
+
col: formPreset.formCol
|
|
123
132
|
};
|
|
124
133
|
var onOperate = function onOperate() {
|
|
125
134
|
var _onOperate = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
@@ -20,7 +20,7 @@ var _List = require("@luck-design-biz/base/List");
|
|
|
20
20
|
var _ldBuilder = _interopRequireDefault(require("../../helper/ldBuilder"));
|
|
21
21
|
var _utils = require("../../utils");
|
|
22
22
|
var _model = _interopRequireDefault(require("./model"));
|
|
23
|
-
var _excluded = ["columns", "resources", "actions", "doAction", "afterInit", "namespace", "wrapperRef", "list", "detail", "params", "filters", "_loading", "loading", "unclosableSet", "onQuery", "doQuery", "pagination", "pageno", "pagesize", "totalCount", "columnsRewrite", "columnsReset", "batchOperations", "formatDataSource", "resultSet", "actionsColumn", "readFilter", "isFlow", "isTreeGrid", "writable"],
|
|
23
|
+
var _excluded = ["columns", "resources", "actions", "doAction", "afterInit", "uiSettings", "namespace", "wrapperRef", "list", "detail", "params", "filters", "_loading", "loading", "unclosableSet", "onQuery", "doQuery", "pagination", "pageno", "pagesize", "totalCount", "columnsRewrite", "columnsReset", "batchOperations", "formatDataSource", "resultSet", "actionsColumn", "readFilter", "isFlow", "isTreeGrid", "writable"],
|
|
24
24
|
_excluded2 = ["ldId", "moduleCode", "suppressInit", "overModel", "afterQuery", "isTreeGrid"];
|
|
25
25
|
var LdGrid = function LdGrid(_ref) {
|
|
26
26
|
var columns = _ref.columns,
|
|
@@ -28,6 +28,8 @@ var LdGrid = function LdGrid(_ref) {
|
|
|
28
28
|
actions = _ref.actions,
|
|
29
29
|
doAction = _ref.doAction,
|
|
30
30
|
afterInit = _ref.afterInit,
|
|
31
|
+
_ref$uiSettings = _ref.uiSettings,
|
|
32
|
+
uiSettings = _ref$uiSettings === void 0 ? {} : _ref$uiSettings,
|
|
31
33
|
namespace = _ref.namespace,
|
|
32
34
|
wrapperRef = _ref.wrapperRef,
|
|
33
35
|
list = _ref.list,
|
|
@@ -102,6 +104,7 @@ var LdGrid = function LdGrid(_ref) {
|
|
|
102
104
|
});
|
|
103
105
|
});
|
|
104
106
|
}, [batchOperations]);
|
|
107
|
+
var gridPresetData = uiSettings && uiSettings.grid && uiSettings.grid[0] && uiSettings.grid[0].preset ? JSON.parse(uiSettings.grid[0].preset) : {};
|
|
105
108
|
|
|
106
109
|
/**
|
|
107
110
|
* 优先级
|
|
@@ -118,7 +121,8 @@ var LdGrid = function LdGrid(_ref) {
|
|
|
118
121
|
var _columnsRewrite = (0, _lodash.isFunction)(columnsRewrite) ? columnsRewrite(columns) : columnsRewrite;
|
|
119
122
|
var defaultColumns = (0, _lodash.keyBy)(columns, 'aliaName');
|
|
120
123
|
var customColumns = (0, _lodash.keyBy)(_columnsRewrite, 'field');
|
|
121
|
-
var
|
|
124
|
+
var presetColumns = (0, _lodash.keyBy)(gridPresetData.gridPreset, 'field'); // ui配置的已排序的列
|
|
125
|
+
var mergeFields = (0, _lodash.union)((0, _lodash.keys)(presetColumns), (0, _lodash.keys)(defaultColumns), (0, _lodash.keys)(customColumns)); // 以UI配置的列排序
|
|
122
126
|
return (0, _lodash.transform)(mergeFields, function (result, field) {
|
|
123
127
|
var _customColumns$field;
|
|
124
128
|
if ((_customColumns$field = customColumns[field]) !== null && _customColumns$field !== void 0 && _customColumns$field.hide) {
|
|
@@ -126,9 +130,14 @@ var LdGrid = function LdGrid(_ref) {
|
|
|
126
130
|
} else if (!defaultColumns[field]) {
|
|
127
131
|
// 数据集中不存在的字段以自定义的形式展示
|
|
128
132
|
result.push(customColumns[field]);
|
|
129
|
-
} else if (defaultColumns[field].isShowInGrid)
|
|
133
|
+
} else if (defaultColumns[field].isShowInGrid) {
|
|
134
|
+
// 该字段配置的表单显示信息
|
|
135
|
+
var columnUiData = gridPresetData.gridPreset ? gridPresetData.gridPreset.find(function (c) {
|
|
136
|
+
return c.field === field;
|
|
137
|
+
}) : {};
|
|
130
138
|
// 数据集中存在的字段和自定义结合展示
|
|
131
|
-
result.push((0, _utils.getGridColumn)(defaultColumns[field], customColumns[field] || {}, isTreeGrid, writable));
|
|
139
|
+
result.push((0, _utils.getGridColumn)(defaultColumns[field], customColumns[field] || {}, isTreeGrid, writable, columnUiData));
|
|
140
|
+
}
|
|
132
141
|
}, []);
|
|
133
142
|
}, [columns, columnsRewrite, columnsReset]);
|
|
134
143
|
var _actionsColumn = (0, _ahooks.useCreation)(function () {
|
|
@@ -19,7 +19,7 @@ var _utils = require("../../utils");
|
|
|
19
19
|
var _form = require("../../helper/form");
|
|
20
20
|
var _Builder = require("../Builder");
|
|
21
21
|
var _index = _interopRequireDefault(require("./index.less"));
|
|
22
|
-
var _excluded = ["columns", "resources", "actions", "doAction", "ldId", "dataSetKey", "columnsRewrite", "columnsReset", "onQuery", "onAdd", "onUpdate", "onDelete", "mainFormLdId", "mainDataSetKey", "onValueChange", "type", "afterOperate", "moduleCode", "defaultDataSourceFormat", "ticketData", "className", "formRef", "formMode", "fields", "setVerifyRules", "pageProxy"];
|
|
22
|
+
var _excluded = ["columns", "resources", "actions", "doAction", "uiSettings", "ldId", "dataSetKey", "columnsRewrite", "columnsReset", "onQuery", "onAdd", "onUpdate", "onDelete", "mainFormLdId", "mainDataSetKey", "onValueChange", "type", "afterOperate", "moduleCode", "defaultDataSourceFormat", "ticketData", "className", "formRef", "formMode", "fields", "setVerifyRules", "pageProxy"];
|
|
23
23
|
var buildLdGridForm = function buildLdGridForm(_ref) {
|
|
24
24
|
var _ref$columns = _ref.columns,
|
|
25
25
|
columns = _ref$columns === void 0 ? [] : _ref$columns,
|
|
@@ -29,6 +29,8 @@ var buildLdGridForm = function buildLdGridForm(_ref) {
|
|
|
29
29
|
actions = _ref$actions === void 0 ? {} : _ref$actions,
|
|
30
30
|
_ref$doAction = _ref.doAction,
|
|
31
31
|
doAction = _ref$doAction === void 0 ? function () {} : _ref$doAction,
|
|
32
|
+
_ref$uiSettings = _ref.uiSettings,
|
|
33
|
+
uiSettings = _ref$uiSettings === void 0 ? {} : _ref$uiSettings,
|
|
32
34
|
ldId = _ref.ldId,
|
|
33
35
|
dataSetKey = _ref.dataSetKey,
|
|
34
36
|
_ref$columnsRewrite = _ref.columnsRewrite,
|
|
@@ -73,9 +75,11 @@ var buildLdGridForm = function buildLdGridForm(_ref) {
|
|
|
73
75
|
});
|
|
74
76
|
return col;
|
|
75
77
|
});
|
|
78
|
+
var gridPresetData = uiSettings && uiSettings.grid && uiSettings.grid[0] && uiSettings.grid[0].preset ? JSON.parse(uiSettings.grid[0].preset) : {};
|
|
76
79
|
var _columns = function () {
|
|
80
|
+
var mergedArray = (0, _utils.mergeAndSort)(gridColumns, gridPresetData.gridPreset || [], 'field');
|
|
77
81
|
var fieldsObj = (0, _lodash.keyBy)(fields, 'field');
|
|
78
|
-
var columnsObj = (0, _lodash.keyBy)(
|
|
82
|
+
var columnsObj = (0, _lodash.keyBy)(mergedArray, 'field');
|
|
79
83
|
var keys = (0, _lodash.isEmpty)(fields) ? Object.keys(columnsObj) : Object.keys(fieldsObj);
|
|
80
84
|
var _defaultValues = {};
|
|
81
85
|
var _nodes = (0, _lodash.reduce)(keys, function (result, key) {
|
|
@@ -113,6 +117,10 @@ var buildLdGridForm = function buildLdGridForm(_ref) {
|
|
|
113
117
|
fieldName: (setting === null || setting === void 0 ? void 0 : setting.fieldAliasName) || col.fieldName
|
|
114
118
|
});
|
|
115
119
|
var defaultSet = ['width', 'align', 'headerAlign', 'pinned', 'tip', 'formMode'];
|
|
120
|
+
// 该字段配置的表单显示信息
|
|
121
|
+
var columnUiData = gridPresetData.gridPreset ? gridPresetData.gridPreset.find(function (c) {
|
|
122
|
+
return c.field === col.field;
|
|
123
|
+
}) : {};
|
|
116
124
|
result.push((0, _utils.getFormColumn)(type, newCol, (0, _objectSpread4.default)((0, _objectSpread4.default)((0, _objectSpread4.default)({}, (0, _lodash.pick)(setting, defaultSet)), customColumn), {}, {
|
|
117
125
|
formItemRewrite: (0, _objectSpread4.default)((0, _objectSpread4.default)({}, (_customColumn = customColumn) === null || _customColumn === void 0 ? void 0 : _customColumn.formItemRewrite), {}, {
|
|
118
126
|
moduleCode: moduleCode,
|
|
@@ -121,7 +129,7 @@ var buildLdGridForm = function buildLdGridForm(_ref) {
|
|
|
121
129
|
render: setting === null || setting === void 0 ? void 0 : setting.render,
|
|
122
130
|
setting: (0, _lodash.omit)(setting, [].concat(defaultSet, ['uid', 'field', 'render']))
|
|
123
131
|
})
|
|
124
|
-
})));
|
|
132
|
+
}), columnUiData));
|
|
125
133
|
return result;
|
|
126
134
|
}, []);
|
|
127
135
|
defaultValues.current = _defaultValues;
|
package/lib/helper/form.js
CHANGED
|
@@ -77,9 +77,15 @@ function translator() {
|
|
|
77
77
|
label: allConfig.fieldName,
|
|
78
78
|
config: {
|
|
79
79
|
required: !!allConfig.isNotNull,
|
|
80
|
-
disabled: !!allConfig.isReadOnly
|
|
80
|
+
disabled: !!allConfig.isReadOnly,
|
|
81
|
+
placeholder: allConfig.placeholder,
|
|
82
|
+
rows: allConfig.rows
|
|
81
83
|
},
|
|
82
84
|
layout: 'block',
|
|
85
|
+
align: allConfig.align,
|
|
86
|
+
headerAlign: allConfig.headerAlign,
|
|
87
|
+
width: allConfig.width,
|
|
88
|
+
tip: allConfig.tip,
|
|
83
89
|
col: allConfig.col || 1,
|
|
84
90
|
row: allConfig.row || 1
|
|
85
91
|
};
|
package/lib/helper/ldBuilder.js
CHANGED
|
@@ -27,6 +27,8 @@ var builder = function builder(wrapped) {
|
|
|
27
27
|
actions = _ref.actions,
|
|
28
28
|
_ref$dataSets = _ref.dataSets,
|
|
29
29
|
dataSets = _ref$dataSets === void 0 ? [] : _ref$dataSets,
|
|
30
|
+
_ref$moduleUiList = _ref.moduleUiList,
|
|
31
|
+
moduleUiList = _ref$moduleUiList === void 0 ? {} : _ref$moduleUiList,
|
|
30
32
|
_ref$isTree = _ref.isTree,
|
|
31
33
|
isTree = _ref$isTree === void 0 ? [] : _ref$isTree,
|
|
32
34
|
doAction = _ref.doAction,
|
|
@@ -67,7 +69,8 @@ var builder = function builder(wrapped) {
|
|
|
67
69
|
resources: resources,
|
|
68
70
|
actions: actions,
|
|
69
71
|
doAction: doAction,
|
|
70
|
-
moduleCode: moduleCode
|
|
72
|
+
moduleCode: moduleCode,
|
|
73
|
+
uiSettings: moduleUiList[dataSetKey] // form和grid的页面配置信息
|
|
71
74
|
});
|
|
72
75
|
return wrapped(wrappedProps);
|
|
73
76
|
};
|
package/lib/services.js
CHANGED
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.noAuthTransformCode = noAuthTransformCode;
|
|
8
8
|
exports.readModlue = readModlue;
|
|
9
|
+
exports.readUI = readUI;
|
|
9
10
|
var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
|
|
10
11
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
11
12
|
var _utils = require("@luck-design-biz/base/utils");
|
|
@@ -29,22 +30,39 @@ function _readModlue() {
|
|
|
29
30
|
}));
|
|
30
31
|
return _readModlue.apply(this, arguments);
|
|
31
32
|
}
|
|
32
|
-
function
|
|
33
|
-
return
|
|
33
|
+
function readUI(_x2) {
|
|
34
|
+
return _readUI.apply(this, arguments);
|
|
34
35
|
}
|
|
35
|
-
function
|
|
36
|
-
|
|
36
|
+
function _readUI() {
|
|
37
|
+
_readUI = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee2(get) {
|
|
37
38
|
return (0, _regeneratorRuntime2.default)().wrap(function _callee2$(_context2) {
|
|
38
39
|
while (1) switch (_context2.prev = _context2.next) {
|
|
39
40
|
case 0:
|
|
40
|
-
return _context2.abrupt("return", (0, _utils.request)("".concat(_ApiConfig.default.
|
|
41
|
-
params: params
|
|
42
|
-
}));
|
|
41
|
+
return _context2.abrupt("return", (0, _utils.request)("".concat(_ApiConfig.default.LUCKDA_HOST, "/ui/builder/noAuthFetchModuleDataSetUI?").concat(stringify(get))));
|
|
43
42
|
case 1:
|
|
44
43
|
case "end":
|
|
45
44
|
return _context2.stop();
|
|
46
45
|
}
|
|
47
46
|
}, _callee2);
|
|
48
47
|
}));
|
|
48
|
+
return _readUI.apply(this, arguments);
|
|
49
|
+
}
|
|
50
|
+
function noAuthTransformCode(_x3) {
|
|
51
|
+
return _noAuthTransformCode.apply(this, arguments);
|
|
52
|
+
}
|
|
53
|
+
function _noAuthTransformCode() {
|
|
54
|
+
_noAuthTransformCode = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee3(params) {
|
|
55
|
+
return (0, _regeneratorRuntime2.default)().wrap(function _callee3$(_context3) {
|
|
56
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
57
|
+
case 0:
|
|
58
|
+
return _context3.abrupt("return", (0, _utils.request)("".concat(_ApiConfig.default.BASE_HOST, "/page/option/noAuthTransformCode"), {
|
|
59
|
+
params: params
|
|
60
|
+
}));
|
|
61
|
+
case 1:
|
|
62
|
+
case "end":
|
|
63
|
+
return _context3.stop();
|
|
64
|
+
}
|
|
65
|
+
}, _callee3);
|
|
66
|
+
}));
|
|
49
67
|
return _noAuthTransformCode.apply(this, arguments);
|
|
50
68
|
}
|
package/lib/utils/form.js
CHANGED
|
@@ -7,6 +7,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.getFormColumn = exports.formItemDataFormat = exports.dataFormat = void 0;
|
|
9
9
|
exports.getFormItem = getFormItem;
|
|
10
|
+
exports.mergeAndSort = void 0;
|
|
11
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
10
12
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
13
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
12
14
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
@@ -30,6 +32,7 @@ var _excluded = ["comName", "property"],
|
|
|
30
32
|
* 根据动态表单配置项生成formItem
|
|
31
33
|
* @param {动态表单配置项} props
|
|
32
34
|
* @param {自定义动态表单配置项} customProps
|
|
35
|
+
* @param {formUi配置项} formUiPreset
|
|
33
36
|
* @returns <BasicForm name='' ... />
|
|
34
37
|
*/
|
|
35
38
|
function getFormItem() {
|
|
@@ -38,10 +41,11 @@ function getFormItem() {
|
|
|
38
41
|
property = _ref.property,
|
|
39
42
|
props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
40
43
|
var customProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
44
|
+
var formUiPreset = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
41
45
|
if (!property) return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
|
|
42
46
|
if (property === 'sint' || property === 'number' || property === 'long') props.opt_decimal = 0;
|
|
43
47
|
var comType = comName || _form.defaultComName[property];
|
|
44
|
-
var _translator = (0, _form.translator)(props),
|
|
48
|
+
var _translator = (0, _form.translator)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, props), formUiPreset)),
|
|
45
49
|
name = _translator.name,
|
|
46
50
|
translateProps = (0, _objectWithoutProperties2.default)(_translator, _excluded2);
|
|
47
51
|
var _merge = (0, _lodash.merge)(
|
|
@@ -210,8 +214,12 @@ var dataFormat = exports.dataFormat = function dataFormat() {
|
|
|
210
214
|
/**
|
|
211
215
|
*
|
|
212
216
|
* @param formType
|
|
217
|
+
* @param comName
|
|
218
|
+
* @param property
|
|
213
219
|
* @param props
|
|
220
|
+
* @param formItemRewrite
|
|
214
221
|
* @param customProps
|
|
222
|
+
* @param gridUiPreset
|
|
215
223
|
* @returns {*&{field: *, editable: (false|{required: *}), renderBasicFormItem: ((function(): (*))|*), title, render: *}}
|
|
216
224
|
*/
|
|
217
225
|
var getFormColumn = exports.getFormColumn = function getFormColumn() {
|
|
@@ -224,9 +232,10 @@ var getFormColumn = exports.getFormColumn = function getFormColumn() {
|
|
|
224
232
|
var _ref5 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},
|
|
225
233
|
formItemRewrite = _ref5.formItemRewrite,
|
|
226
234
|
customProps = (0, _objectWithoutProperties2.default)(_ref5, _excluded7);
|
|
235
|
+
var gridUiPreset = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
|
|
227
236
|
var formItemType = comName || _form.defaultComName[property];
|
|
228
237
|
if (formItemType === 'radio') formItemType = 'select';
|
|
229
|
-
var _translator2 = (0, _form.translator)(props),
|
|
238
|
+
var _translator2 = (0, _form.translator)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, props), gridUiPreset)),
|
|
230
239
|
name = _translator2.name,
|
|
231
240
|
translateProps = (0, _objectWithoutProperties2.default)(_translator2, _excluded8);
|
|
232
241
|
var _merge2 = (0, _lodash.merge)(
|
|
@@ -237,7 +246,7 @@ var getFormColumn = exports.getFormColumn = function getFormColumn() {
|
|
|
237
246
|
_props = (0, _objectWithoutProperties2.default)(_merge2, _excluded9);
|
|
238
247
|
var columnRender = (0, _grid.getColumnRender)(name, formItemType, _props);
|
|
239
248
|
if (formType !== 'writer') _props.name = name;
|
|
240
|
-
return (0, _objectSpread2.default)((0, _objectSpread2.default)({
|
|
249
|
+
return (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, _props), {}, {
|
|
241
250
|
title: translateProps.label,
|
|
242
251
|
editable: formType === 'writer' && {
|
|
243
252
|
required: _props.required || ((_props$config = _props.config) === null || _props$config === void 0 ? void 0 : _props$config.required)
|
|
@@ -267,4 +276,29 @@ var getFormColumn = exports.getFormColumn = function getFormColumn() {
|
|
|
267
276
|
field: name,
|
|
268
277
|
exportField: (0, _grid.getExportField)(name, formItemType, _props)
|
|
269
278
|
});
|
|
279
|
+
};
|
|
280
|
+
|
|
281
|
+
/**
|
|
282
|
+
* 合并两个数组,并且数据顺序以arr2为准
|
|
283
|
+
* @param arr1
|
|
284
|
+
* @param arr2
|
|
285
|
+
* @param rowKey
|
|
286
|
+
*/
|
|
287
|
+
var mergeAndSort = exports.mergeAndSort = function mergeAndSort(arr1, arr2, rowKey) {
|
|
288
|
+
// 将a2转换为一个Map,便于快速查找
|
|
289
|
+
var a2Map = new Map(arr2.map(function (item) {
|
|
290
|
+
return [item[rowKey], item];
|
|
291
|
+
}));
|
|
292
|
+
// 创建一个新的数组,按a2的顺序填充元素,同时包含a1中不在a2中的元素
|
|
293
|
+
var mergedArray = arr2.map(function (item) {
|
|
294
|
+
var a1Item = arr1.find(function (a1) {
|
|
295
|
+
return a1[rowKey] === item[rowKey];
|
|
296
|
+
});
|
|
297
|
+
return a1Item ? (0, _objectSpread2.default)((0, _objectSpread2.default)({}, item), a1Item) : item;
|
|
298
|
+
});
|
|
299
|
+
// 将a1中未出现在a2中的元素追加到合并后的数组末尾
|
|
300
|
+
mergedArray.push.apply(mergedArray, (0, _toConsumableArray2.default)(arr1.filter(function (a1Item) {
|
|
301
|
+
return !a2Map.has(a1Item[rowKey]);
|
|
302
|
+
})));
|
|
303
|
+
return mergedArray;
|
|
270
304
|
};
|
package/lib/utils/grid.js
CHANGED
|
@@ -130,12 +130,13 @@ var getGridColumn = exports.getGridColumn = function getGridColumn() {
|
|
|
130
130
|
var customProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
131
131
|
var isTreeGrid = arguments.length > 2 ? arguments[2] : undefined;
|
|
132
132
|
var writable = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
|
133
|
+
var gridUiPreset = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {};
|
|
133
134
|
var comType = comName || _form.defaultComName[property];
|
|
134
135
|
var _props$isVirtual = props.isVirtual,
|
|
135
136
|
isVirtual = _props$isVirtual === void 0 ? false : _props$isVirtual,
|
|
136
137
|
_props$extra = props.extra,
|
|
137
138
|
extra = _props$extra === void 0 ? '{}' : _props$extra;
|
|
138
|
-
var _translator = (0, _form.translator)(props),
|
|
139
|
+
var _translator = (0, _form.translator)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, props), gridUiPreset)),
|
|
139
140
|
name = _translator.name,
|
|
140
141
|
translateProps = (0, _objectWithoutProperties2.default)(_translator, _excluded2);
|
|
141
142
|
var _merge = (0, _lodash.merge)(translateProps, (0, _form.formatCustomProps)(comType, customProps)),
|
package/package.json
CHANGED