UNPKG

@wufengteam/wform

Version:

@wufengteam/wform

331 lines (330 loc) 13.4 kB
"use strict"; function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _react = _interopRequireWildcard(require("react")); var _antd = require("antd"); var _core = require("@wufengteam/core"); var _constants = require("./constants"); var _depart = _interopRequireDefault(require("./img/depart.png")); var _utils = require("../utils"); var _ZeroCodeOrgTree = _interopRequireDefault(require("./ZeroCodeOrgTree")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); } function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; } function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); } function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; } function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } } function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } // @ts-ignore // @ts-ignore var AddMemberModal = function AddMemberModal(props) { var _a, _b; var visible = props.visible, onCancel = props.onCancel, _onOk = props.onOk, _props$defaultValue = props.defaultValue, defaultValue = _props$defaultValue === void 0 ? [] : _props$defaultValue, _props$selectType = props.selectType, selectType = _props$selectType === void 0 ? 'single' : _props$selectType, _props$$$componentIte = props.$$componentItem, $$componentItem = _props$$$componentIte === void 0 ? {} : _props$$$componentIte; var renderType = $$componentItem.renderType; var _ref = ((_a = props === null || props === void 0 ? void 0 : props.getEngineApis) === null || _a === void 0 ? void 0 : _a.call(props)) || {}, _ref$customEngineApi = _ref.customEngineApi, customEngineApi = _ref$customEngineApi === void 0 ? {} : _ref$customEngineApi; var _useState = (0, _react.useState)([]), _useState2 = _slicedToArray(_useState, 2), departTreeData = _useState2[0], setDepartTreeData = _useState2[1]; var _useState3 = (0, _react.useState)(defaultValue), _useState4 = _slicedToArray(_useState3, 2), sDepartList = _useState4[0], setSDepartList = _useState4[1]; // 选中的部门信息 var _useState5 = (0, _react.useState)(''), _useState6 = _slicedToArray(_useState5, 2), searchValue = _useState6[0], setSearchValue = _useState6[1]; /** * 设置默认值 */ var setDefaultValue = function setDefaultValue() { if (defaultValue && defaultValue.length) { setSDepartList(defaultValue); } else { setSDepartList([]); } }; (0, _react.useEffect)(function () { setDefaultValue(); }, [JSON.stringify(defaultValue)]); (0, _react.useEffect)(function () { if (visible) { setDefaultValue(); } }, [JSON.stringify(visible)]); /** * 删除对应的部门信息 * @param orgId */ var deleteDepartInfo = function deleteDepartInfo(orgId) { var otherDepartInfo = sDepartList.filter(function (item) { return item.orgId !== orgId; }); setSDepartList(otherDepartInfo); }; var formateTreeData = function formateTreeData() { var srcData = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; if (!Array.isArray(srcData)) return []; var treeData = (srcData || []).map(function (item) { var orgId = item.orgId, orgName = item.orgName, _item$children = item.children, children = _item$children === void 0 ? [] : _item$children; var obj = item; if (children === null || children === void 0 ? void 0 : children.length) { obj.children = formateTreeData(children); } var params = Object.assign(Object.assign({}, item), { key: orgId, title: orgName, isLeaf: false }); return params; }); return treeData; }; /** * 条件查询获取部门数据 */ var getOrgByOrgName = function getOrgByOrgName(param) { var _a; if (renderType === 'editor') { _core.wufengController.getAction('getOrgByOrgName', param).then(function (res) { var treeData = formateTreeData(res); setDepartTreeData(treeData); }); } else { (_a = customEngineApi === null || customEngineApi === void 0 ? void 0 : customEngineApi.getOrgByOrgName) === null || _a === void 0 ? void 0 : _a.call(customEngineApi, param).then(function (res) { var treeData = formateTreeData(res); setDepartTreeData(treeData); }); } }; /** * 获取部门数据 */ var getOrgInfoByAsync = function getOrgInfoByAsync(orgId) { var _a; var params = { orgId: orgId }; if (renderType === 'editor') { _core.wufengController.getAction('getOrgInfoByAsync', params).then(function (res) { var data = formateTreeData(res); setDepartTreeData(data); }); } else { (_a = customEngineApi === null || customEngineApi === void 0 ? void 0 : customEngineApi.getOrgInfoByAsync) === null || _a === void 0 ? void 0 : _a.call(customEngineApi, params).then(function (res) { var data = formateTreeData(res); setDepartTreeData(data); }); } }; var updateTreeData = function updateTreeData(list, key, children) { return list.map(function (node) { if ("".concat(node.key) === "".concat(key)) { return Object.assign(Object.assign({}, node), { children: children }); } if (node.children) { return Object.assign(Object.assign({}, node), { children: updateTreeData(node.children, key, children) }); } return node; }); }; var loadOrgData = function loadOrgData(_ref2) { var key = _ref2.key, children = _ref2.children; return new Promise(function (resolve) { var _a; if (children) { resolve(); return; } var params = { orgId: key }; if (renderType === 'editor') { _core.wufengController.getAction('getOrgInfoByAsync', params).then(function (res) { var data = formateTreeData(res); setDepartTreeData(function (origin) { return updateTreeData(origin, key, data); }); setTimeout(function () { resolve(); }, 500); }); } else { (_a = customEngineApi === null || customEngineApi === void 0 ? void 0 : customEngineApi.getOrgInfoByAsync) === null || _a === void 0 ? void 0 : _a.call(customEngineApi, params).then(function (res) { var data = formateTreeData(res); setDepartTreeData(function (origin) { return updateTreeData(origin, key, data); }); setTimeout(function () { resolve(); }, 500); }); } }); }; var orgSearch = function orgSearch(orgName) { if (orgName) { // 条件查询则是返回部门列表 getOrgByOrgName({ orgName: orgName }); } else { // 异步查询数据 getOrgInfoByAsync('0'); } }; (0, _react.useEffect)(function () { if (visible && !departTreeData.length) { getOrgInfoByAsync('0'); } }, [visible]); return /*#__PURE__*/_react.default.createElement(_antd.Modal, { title: "\u6DFB\u52A0\u90E8\u95E8", width: 729, bodyStyle: { padding: '0', height: '510px' }, visible: visible, onCancel: onCancel, maskClosable: false, okText: "\u786E\u5B9A", cancelText: "\u53D6\u6D88", onOk: function onOk() { if (_onOk) { var departs = []; sDepartList.forEach(function (item) { var key = item.key, title = item.title, areaId = item.areaId, leader = item.leader, leaderStaffName = item.leaderStaffName, leaderStaffUserId = item.leaderStaffUserId, level1 = item.level1, orgCode = item.orgCode, orgId = item.orgId, orgName = item.orgName, orgType = item.orgType, parentOrgId = item.parentOrgId, spId = item.spId, staffId = item.staffId, staffOrgId = item.staffOrgId, state = item.state, isSonOrg = item.isSonOrg; departs.push({ key: key, title: title, areaId: areaId, leader: leader, leaderStaffName: leaderStaffName, leaderStaffUserId: leaderStaffUserId, orgCode: orgCode, level1: level1, orgId: orgId, orgName: orgName, orgType: orgType, parentOrgId: parentOrgId, spId: spId, staffId: staffId, staffOrgId: staffOrgId, state: state, isSonOrg: isSonOrg }); }); _onOk(departs); } } }, /*#__PURE__*/_react.default.createElement(_antd.Row, { style: { height: '320px' } }, /*#__PURE__*/_react.default.createElement(_antd.Col, { span: 24, className: "".concat(_utils.prefix, "-memberTabPane"), style: { padding: '12px' } }, /*#__PURE__*/_react.default.createElement(_ZeroCodeOrgTree.default, { key: searchValue, hasTabs: false, initValues: sDepartList, onCheck: function onCheck(values) { if (selectType === 'single') { // 单选 if (Array.isArray(values) && values.length) { var len = values.length; setSDepartList([values[len - 1]]); } } else { // 多选 setSDepartList(values); } }, height: 310, treeData: departTreeData, onSearch: function onSearch(values) { setSearchValue(searchValue); orgSearch(values); }, loadData: loadOrgData }))), /*#__PURE__*/_react.default.createElement("div", { className: "".concat(_utils.prefix, "-footContent"), style: { marginTop: '40px' } }, /*#__PURE__*/_react.default.createElement("div", { className: "".concat(_utils.prefix, "-clearText") }, /*#__PURE__*/_react.default.createElement("a", { onClick: function onClick() { setSDepartList([]); } }, "\u6E05\u7A7A")), /*#__PURE__*/_react.default.createElement(_antd.Space, { size: 4, wrap: true, style: { width: '100%', height: '70px', overflowY: 'auto' } }, (_b = sDepartList === null || sDepartList === void 0 ? void 0 : sDepartList.map) === null || _b === void 0 ? void 0 : _b.call(sDepartList, function (dItem) { var orgId = dItem.orgId, orgName = dItem.orgName, isSonOrg = dItem.isSonOrg; return /*#__PURE__*/_react.default.createElement(_antd.Tag, { key: orgId, icon: /*#__PURE__*/_react.default.createElement("img", { src: _depart.default, alt: "", style: _constants.TAG_ICON_STYLE }), closable: true, style: _constants.TAG_STYLE, onClose: function onClose() { deleteDepartInfo(orgId); } }, "".concat(isSonOrg) === '1' ? "".concat(orgName, "(\u542B\u5B50\u90E8\u95E8)") : orgName); })))); }; var _default = exports.default = AddMemberModal;