UNPKG

@choerodon/master

Version:
240 lines (214 loc) 10.4 kB
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } 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(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } import React, { useEffect, useMemo, useState } from 'react'; import { AnimationLoading, useLoading } from '@choerodon/components'; import { uniqueId } from 'lodash'; import { uiAxiosInstance } from "../../components/axios"; import AppState from "../../containers/stores/c7n/AppState"; export var UI_CONFIGURE = "".concat(process.env.UI_CONFIGURE); var uiConfigure = UI_CONFIGURE || {}; function TableSpin(props) { var className = props.className; var _useLoading = useLoading(), registerChildren = _useLoading.registerChildren, isHasProvider = _useLoading.isHasProvider, cancelRegisterChildren = _useLoading.cancelRegisterChildren, change = _useLoading.change; var loadId = useMemo(function () { return uniqueId('table-spin'); }, []); var _useState = useState(false), _useState2 = _slicedToArray(_useState, 2), loading = _useState2[0], setLoading = _useState2[1]; useEffect(function () { // 注册后并更改loading状态, 卸载的时候更改loading状态并卸载 registerChildren({ loadId: loadId, changeLoading: setLoading }); change(loadId, true); return function () { change(loadId, false); setTimeout(function () { return cancelRegisterChildren(loadId); }, 200); }; }, [cancelRegisterChildren, change, loadId, registerChildren]); // 无统一Loading管理 则使用table表格内部loading状态判断 return /*#__PURE__*/React.createElement(AnimationLoading, { className: className, display: loading, style: { display: !isHasProvider || loading ? 'inline-block' : 'none' } }); } var UI_CONFIG = _objectSpread(_objectSpread({}, uiConfigure), {}, { pagination: { showSizeChangerLabel: false, showTotal: function showTotal(total, range) { return /*#__PURE__*/React.createElement("span", { className: "word" }, "\u663E\u793A".concat(range[0], "-").concat(range[1], " \u5171 ").concat(total, "\u6761")); }, showPager: true, showQuickJumper: true }, modalMaskClosable: 'dblclick', axios: uiAxiosInstance, dataKey: 'list', labelLayout: 'float', queryBar: 'bar', tableBorder: false, showLengthInfo: false, lookupAxiosMethod: 'get', lookupUrl: function lookupUrl(code) { return "/hpfm/v1/lovs/value?lovCode=".concat(code); }, tableHighLightRow: false, tableColumnResizable: false, tableRowHeight: 50, modalOkFirst: false, modalKeyboard: false, modalSectionBorder: false, drawerOkFirst: false, buttonFuncType: 'raised', tableVirtualCell: false, lovQueryUrl: function lovQueryUrl(code) { return "/iam/choerodon/v1/lov/code?code=".concat(code); }, generatePageQuery: function generatePageQuery(_ref) { var page = _ref.page, pageSize = _ref.pageSize, sortName = _ref.sortName, sortOrder = _ref.sortOrder, sort = _ref.sort; return { page: page, size: pageSize, sort: sortName && (sortOrder ? "".concat(sortName, ",").concat(sortOrder) : sortName) }; }, tableSpinProps: { indicator: /*#__PURE__*/React.createElement(TableSpin, null) }, lovDefineAxiosConfig: function lovDefineAxiosConfig(code) { return { url: "/iam/choerodon/v1/lov/code?code=".concat(code), method: 'GET', transformResponse: [function (data) { var originData = {}; try { originData = JSON.parse(data); } catch (e) { return data; } var _originData = originData, _originData$valueFiel = _originData.valueField, valueField = _originData$valueFiel === void 0 ? 'value' : _originData$valueFiel, _originData$textField = _originData.textField, textField = _originData$textField === void 0 ? 'name' : _originData$textField, _originData$pageSize = _originData.pageSize, pageSize = _originData$pageSize === void 0 ? 5 : _originData$pageSize, _originData$queryFiel = _originData.queryFields, queryFields = _originData$queryFiel === void 0 ? [] : _originData$queryFiel, _originData$gridField = _originData.gridFields, gridFields = _originData$gridField === void 0 ? [] : _originData$gridField, description = _originData.description; var _originData2 = originData, title = _originData2.title; if (originData.failed) { title = "\u503C\u96C6\u89C6\u56FE\u672A\u5B9A\u4E49: \"".concat(code, "\", \u8BF7\u7EF4\u62A4\u503C\u96C6\u89C6\u56FE!"); } else if (!originData.code) { title = "lov ".concat(code, " loading..."); } var lovItems = []; var tableWidth = 0; queryFields.forEach(function (queryItem) { var lovItem = { display: queryItem.queryFieldLabel, conditionField: 'Y', conditionFieldType: null, conditionFieldName: queryItem.queryFieldName, conditionFieldSelectUrl: null, conditionFieldSelectVf: null, conditionFieldSelectTf: null, conditionFieldSelectCode: null, conditionFieldLovCode: null, conditionFieldSequence: 1, conditionFieldRequired: queryItem.queryFieldRequiredFlag, gridField: 'N', gridFieldName: queryItem.queryFieldName, gridFieldWidth: queryItem.queryFieldWidth, gridFieldAlign: 'left', gridFieldSequence: queryItem.queryFieldOrder }; lovItems.push(lovItem); }); gridFields.forEach(function (tableItem) { var lovItem = { gridFieldName: tableItem.gridFieldName, gridFieldWidth: tableItem.gridFieldWidth, gridFieldAlign: tableItem.gridFieldAlign, conditionField: 'N', gridField: 'Y', display: tableItem.gridFieldLabel, conditionFieldType: null, conditionFieldName: null, conditionFieldSelectUrl: null, conditionFieldSelectVf: null, conditionFieldSelectTf: null, conditionFieldSelectCode: null, conditionFieldSequence: 1, gridFieldSequence: tableItem.gridFieldOrder }; lovItems.push(lovItem); tableWidth += tableItem.gridFieldWidth; }); var convertedData = { originData: originData, title: title || code, width: tableWidth ? tableWidth + 120 : 520, customUrl: null, lovPageSize: pageSize, lovItems: lovItems, treeFlag: originData.treeFlag ? 'Y' : 'N', parentIdField: originData.parentField, idField: originData.idField, textField: textField, valueField: valueField, placeholder: description || title || code, editableFlag: originData.editFlag ? 'Y' : 'N', queryColumns: queryFields && queryFields.length ? 1 : 0 }; return convertedData; }] }; }, lovQueryAxiosConfig: function lovQueryAxiosConfig(code) { var lovConfig = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; var _ref2 = lovConfig.originData || {}, url = _ref2.url; var realUrl = url; if (url) { // realUrl = `${API_HOST}${url}?lovCode=${code}`; var organizationRe = /\{organization_id\}|\{project_id\}/g; if (organizationRe.test(url)) { var tId = AppState.currentOrginazationOrProjectId || ''; realUrl = url.replace(organizationRe, tId); } } return { url: realUrl, method: 'GET' }; } }); export { UI_CONFIG };