UNPKG

maycur-business

Version:

maycur business react components of web

84 lines (68 loc) 2.33 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _slimLodash = _interopRequireDefault(require("../utils/slimLodash")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } /* * @Description: file content * @Author: RongWei * @Date: 2019-08-20 15:17:46 * @LastEditors: RongWei * @LastEditTime: 2019-09-18 19:50:11 */ /** * 用于生成数据互联的规则 */ /* 数据互联字段映射 */ function genAssociatedFormula(field, formFields) { var result = []; if (field && field.property && !field.property.isMulti) { _slimLodash["default"].forEach(field.associationDataRelations, function (item) { var targetField = _slimLodash["default"].find(formFields, function (o) { return o.identifier === item.identifier; }); var formula = ''; if (targetField && targetField.type === 'DateTimeInput' && targetField.property.selectionModule === 'SINGLE') { formula = "mkDate(".concat(item.businessCode, ")"); } else { formula = item.businessCode; } result.push({ targetField: item.identifier, referField: field.identifier, formula: formula, setFunctionList: { mkDate: function mkDate(value) { // 数据互联无默认值时,value值不合法,需要转换判断一下 return value && !Number.isNaN(new Date(value).valueOf()) ? { currentTime: value } : { currentTime: undefined }; } }, privateParser: true, canSetUndefined: true, updatePool: function updatePool(fieldValue) { // fieldValue值为undefined时,无法覆盖联动的值。 var value = fieldValue && fieldValue.value && fieldValue.value[0]; if (value) { return value; } value = {}; if (fieldValue && fieldValue.definedList) { _slimLodash["default"].forEach(fieldValue.definedList, function (item) { value[item.businessCode] = null; }); } return value || null; } }); }); } return result; } var _default = genAssociatedFormula; exports["default"] = _default;