123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- /**
- * @param {any} prop - description
- * @param {string} key - description
- * @param {string} value - description
- */
- export const initParams = (prop, key = "key", value = "value") => {
- // get params
- const object1 = Object.fromEntries(
- prop.map(({ item, attr }) => [item[key], attr[value]])
- );
- // get mapping params
- const object2 = {};
- prop
- .filter((item) => item.attr.dataMapping)
- .map(({ attr: { dataMapping } }) => {
- for (let key in dataMapping) {
- object2[key] = null;
- }
- });
- return { ...object1, ...object2 };
- };
- /**
- * @param {any} prop - description
- */
- export const initRules = (prop) => {
- const rules = {};
- prop
- .filter(({ item }) => item.required)
- .forEach(({ item, attr }) => {
- const message = `${item.title}不能为空`;
- rules[item.key] = attr.rules ?
- [
- { required: true, message: message, trigger: "change" },
- ...attr.rules
- ]
- : [{ required: true, message: message, trigger: "change" },];
- });
- return rules;
- };
- /**
- * @param {any} prop - description
- */
- export const initDicts = (prop) => {
- return Array.from(
- new Set(
- prop
- .filter((item) => item.attr.dictName)
- .map((item) => item.attr.dictName)
- )
- );
- };
- export const initPage = () => {
- return { pageNum: 1, pageSize: 50, total: 0 };
- };
|