UNPKG

ze-react-component-library

Version:
69 lines (64 loc) 2.53 kB
import "antd/es/button/style"; import _Button from "antd/es/button"; import "antd/es/typography/style"; import _Typography from "antd/es/typography"; import React from "react"; import { getIDProperty } from "zeroetp-api-sdk"; import ZECard from "."; import stringify from "fast-json-stable-stringify"; var MultiEntitySelector = function MultiEntitySelector(_a) { var logicform = _a.logicform, errorLogicform = _a.errorLogicform, onSelectEntity = _a.onSelectEntity; return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(_Typography, null, /*#__PURE__*/React.createElement(_Typography.Title, { level: 5 }, "\u627E\u5230\u591A\u4E2A\u540C\u540D\u5B9E\u4F53\uFF0C\u8BF7\u9009\u62E9\u4E00\u4E2A")), /*#__PURE__*/React.createElement(ZECard, { logicform: { query: errorLogicform.logicform.query || {}, schema: errorLogicform.schema._id }, showMainContentOnly: true, tableProps: { additionalColumns: [{ title: "操作", width: 100, fixed: "right", render: function render(_text, record) { return /*#__PURE__*/React.createElement(_Button, { type: "primary", onClick: function onClick() { // 找到对应的logicform,改掉 var fixedLF = JSON.parse(JSON.stringify(logicform)); var traverseQuery = function traverseQuery(LF) { if (LF.query) { Object.entries(LF.query).forEach(function (_a) { var k = _a[0], v = _a[1]; if (v.schema) { if (v.entity_id && stringify({ query: v.query, schema: v.schema }) === stringify({ query: errorLogicform.logicform.query, schema: errorLogicform.schema._id })) { var idProp = getIDProperty(errorLogicform.schema); LF.query[k].query[idProp.name] = record._id; delete LF.query[k].entity_id; } else { traverseQuery(v); } } }); } }; traverseQuery(fixedLF); onSelectEntity(fixedLF); } }, "\u9009\u62E9\u8FD9\u4E2A"); } }] } })); }; export default MultiEntitySelector;