nsc-react-component 4.4.1 → 4.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/base/chart/index.d.ts +16 -0
- package/lib/base/chart/index.js +236 -6
- package/lib/base/chart/index.js.map +1 -1
- package/lib/base/chart/index.less +73 -0
- package/lib/base/menu/index.d.ts +1 -0
- package/lib/base/menu/index.js +2 -1
- package/lib/base/menu/index.js.map +1 -1
- package/lib/base/table/index.d.ts +3 -3
- package/lib/base/table/index.js +87 -79
- package/lib/base/table/index.js.map +1 -1
- package/lib/base/table/index_old.d.ts +119 -0
- package/lib/base/table/index_old.js +1058 -0
- package/lib/base/table/index_old.js.map +1 -0
- package/lib/page/BasePage/index.js +16 -9
- package/lib/page/BasePage/index.js.map +1 -1
- package/lib/page/BasePage/utils.d.ts +1 -0
- package/lib/page/BasePage/utils.js +23 -1
- package/lib/page/BasePage/utils.js.map +1 -1
- package/package.json +3 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index_old.js","names":["AppstoreOutlined","CheckOutlined","ColumnHeightOutlined","SearchOutlined","SortAscendingOutlined","SortDescendingOutlined","RedoOutlined","isEmptyObj","Store","PageStore","utils","React","DndProvider","BodyRow","DndContextType","IBodyRowProps","treeUtils","BodyRowComponent","HTML5Backend","withZhLocale","Resizable","getLess","getNode","NoData","getStorage","config","cls","styles","ResizeableTitle","props","onResize","width","restProps","_objectWithoutProperties","_excluded","createElement","height","draggableOpts","enableUserSelectHack","NSCTable","Component","constructor","_autoType","_defineProperty","createRef","onBeforeLoad","load","header","cell","index","e","_ref","size","cols","state","nextColumns","_objectSpread","setState","getColumns","ev","data","JSON","parse","_this","eventType","payload","tableSize","dragIndex","hoverIndex","drag","target","dragNode","record","targetNode","moveArray","ids","parentNode","getChildNodeIds","params","id","parentId","attribute","moveRow","store","reload","modal","type","storePrefix","autoType","content","dataSource","columns","loading","pagination","activeIndex","searchText","fieldOption","searchColor","sorts","filterParams","sortType","sorter","sortInfo","defaultSort","checkColumn","defaultCheck","selectedRowKeys","selectedRowDatas","filter","extra","_ref2","listeners","listenersProps","restStore","_excluded2","storeProps","model","component","options","callback","dataChanged","modelData","paging","getPagination","onErrorLoad","err","response","autoLoad","Object","assign","current","componentDidMount","resizeColumn","setData","window","addEventListener","listenMessage","componentWillUnmount","removeEventListener","componentDidUpdate","prevProps","preState","resetColumn","newCols","colss","map","col","temp","onHeaderCell","column","handleResize","push","clearSelectColor","getPaginationByStore","onChange","filters","autoOnChange","autoSort","autoPagination","isMultiple","Array","isArray","handlePagination","p","currentKey","pageSizeKey","pageSize","ascParams","getSortParam","onChangeFn","getStore","getModel","handleSearch","val","filterColumn","checkedValue","length","_message","warning","filterColumns","newCol","includes","dataIndex","initShow","sortState","arguments","undefined","sortSearch","orderItems","field","asc","order","forEach","v","stringify","isBeyond","event","textRange","el","textContent","targetW","getBoundingClientRect","range","document","createRange","setStart","setEnd","childNodes","rangeWidth","setSelectedRowKeys","setSelectedRowDatas","sortFields","defaultShowCols","ellipsis","render","showTitle","text","_this$state$cols","currentCol","find","c","actualWidth","colWidth","colWidthObj","small","middle","default","large","paddingWidth","style","display","ref","removeAttribute","scrollWidth","clientWidth","setAttribute","className","overflow","textOverflow","whiteSpace","indexOf","sortOrder","multiple","item","filterProps","obj","searchKey","Div","title","placeholder","concat","tableSearchRef","filterDropdown","_ref3","setSelectedKeys","selectedKeys","confirm","clearFilters","_Space","_Button","onClick","_this$tableSearchRef$","newFilterParams","key","getValue","sortParam","filterIcon","renderToolBar","colLists","toolbar","tableTool","storeRequestConfig","tools","toolsClick","onToolClick","sizeItem","sortItem","sortContent","Fragment","cursor","color","sizeContent","_Checkbox","Group","bind","label","value","disabled","fontSize","_Popover","placement","trigger","overlayStyle","minWidth","maxWidth","marginRight","onRefresh","getSelectedRowKeys","getSelectedRowDatas","resetSelectedRowKeys","rowSelectionOnSelect","selected","rowKey","newSelectedRowKeys","newSelectedRowDatas","splice","rowSelectionOnSelectAll","selectedRows","changeRows","newids","newdatas","changeIds","omit","clickChangeColor","position","showSizeChanger","showQuickJumper","showTotal","total","_ref4","from","to","onRowFn","onRow","custom","onClickFn","rowClassName","newDataSource","getSearchMenuDatas","treeDatas","expandedRowKeys","openKeys","dragable","dragableProps","components","resizeProps","toolFlag","show","showRowSelection","rowSelection","onSelect","onSelectAll","columnWidth","tableProps","configTableProps","DefaultTable","_Table","_extends","childrenColumnName","sheitem","locale","emptyText","scroll","x","_Pagination","page","action","_ref5","backend","dragUrl"],"sources":["../../../src/components/base/table/index_old.tsx"],"sourcesContent":["/*\r\n * @Descripttion:\r\n * @version:\r\n * @Author: rxzhu\r\n * @Date: 2021-03-23 08:46:20\r\n * @LastEditors: rxzhu\r\n * @LastEditTime: 2021-03-23 10:30:42\r\n */\r\nimport {\r\n AppstoreOutlined,\r\n CheckOutlined,\r\n ColumnHeightOutlined,\r\n SearchOutlined,\r\n SortAscendingOutlined,\r\n SortDescendingOutlined,\r\n RedoOutlined,\r\n} from \"@ant-design/icons\";\r\nimport { isEmptyObj } from \"@bj-nsc/functions\";\r\nimport Store, { PageStore, StoreProps } from \"@bj-nsc/msn\";\r\nimport { utils } from \"@bj-nsc/msn/lib/utils\";\r\nimport {\r\n Button,\r\n Checkbox,\r\n CheckboxOptionType,\r\n Menu,\r\n message,\r\n Pagination,\r\n Popover,\r\n Space,\r\n Table,\r\n TableProps,\r\n Tooltip,\r\n} from \"antd\";\r\nimport { ColumnType, TablePaginationConfig } from \"antd/lib/table\";\r\nimport * as React from \"react\";\r\nimport { DndProvider } from \"react-dnd\";\r\nimport BodyRow, { DndContextType, IBodyRowProps } from \"../common/BodyRow\";\r\nimport treeUtils from \"../../treeUtils\";\r\nimport \"./index.module.less\";\r\nconst { BodyRowComponent, HTML5Backend } = BodyRow;\r\nimport withZhLocale from \"../common/withZhLocale\";\r\nimport { Resizable } from \"react-resizable\";\r\nimport \"./resize.module.less\";\r\nimport { getLess, getNode, simplifyColumns } from \"../../utils\";\r\nimport NoData from \"../common/NoData\";\r\nimport { getStorage } from \"@bj-nsc/functions\";\r\nimport config from \"../../config\";\r\nimport EllipseCell from \"../common/EllipseCell\";\r\nimport cls from \"classnames\";\r\nimport isEqual from \"lodash/isEqual\";\r\nconst styles = null;\r\ninterface IDragParams {\r\n id: string | number;\r\n ids: Array<string | number>;\r\n parentId: string | number;\r\n}\r\n// interface StoreProps {}\r\n\r\nexport type StoreType = \"PageStore\" | \"TreeStore\" | \"BaseStore\";\r\n\r\ninterface NSCTablePagination extends TablePaginationConfig {\r\n totalKey?: string;\r\n pageSizeKey?: string;\r\n currentKey?: string;\r\n}\r\n\r\ninterface ToolBarProps {\r\n show: boolean;\r\n tools?: Array<string>;\r\n onToolClick?: { onRefresh?: any; onSort?: any };\r\n}\r\ninterface NSCTableProps extends TableProps<any> {\r\n store?: StoreProps;\r\n showTotal?: boolean; // 是否显示总条数信息,默认true\r\n dragable?: boolean; // 是否可拖动, 默认false\r\n filterColumn?: boolean; // 是否支持过滤显示表格列, 默认true\r\n moveRow?: (params: IDragParams) => void; // 拖拽完成后的回调\r\n dragUrl?: string; // 保存拖拽排序的接口\r\n pagination?: false | NSCTablePagination;\r\n autoPagination?: boolean; // 组件是否自动处理分页\r\n autoSort?: boolean; //组件是否自动处理排序\r\n autoOnChange?: boolean; // 组件是否自动onChange, false则不做任何处理全部交给调用方\r\n resizeColumn?: boolean;\r\n sortFields?: Array<string>; //需要排序的字段Index\r\n toolbar?: ToolBarProps | boolean;\r\n autoSize?: boolean;\r\n sortSearch?: boolean; //是否添加排序查询,默认true\r\n showRowSelection?: boolean;\r\n rowKey?: string;\r\n [propsName: string]: any;\r\n}\r\n\r\nexport type INSCTableProps = typeof NSCTable.defaultProps & NSCTableProps;\r\nexport { DndContextType, IBodyRowProps };\r\n\r\nconst ResizeableTitle = (props: any) => {\r\n const { onResize, width, ...restProps } = props;\r\n return (\r\n <Resizable\r\n width={width || 150}\r\n height={0}\r\n onResize={onResize}\r\n draggableOpts={{ enableUserSelectHack: false }}\r\n >\r\n <th {...restProps} />\r\n </Resizable>\r\n );\r\n};\r\nclass NSCTable extends React.Component<INSCTableProps, any> {\r\n static defaultProps = {\r\n dragable: false,\r\n showTotal: true,\r\n filterColumn: true,\r\n dragUrl: \"\",\r\n autoPagination: true,\r\n autoSort: true,\r\n autoOnChange: true,\r\n resizeColumn: true,\r\n toolbar: {\r\n show: false,\r\n onToolClick: {} as any,\r\n tools: [] as any,\r\n } as any,\r\n };\r\n\r\n store = {} as StoreProps;\r\n thIconRef = React.createRef<HTMLDivElement>();\r\n tableSearchRef = React.createRef<any>();\r\n\r\n listeners = {\r\n onBeforeLoad: null,\r\n load: null,\r\n };\r\n\r\n components = {\r\n header: {\r\n cell: ResizeableTitle,\r\n },\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n let modal = props.type || \"auto\";\r\n let storePrefix = getStorage(\"store-pre-key\");\r\n let autoType = getStorage(\r\n storePrefix ? storePrefix + \"tableSize\" : \"tableSize\"\r\n );\r\n autoType = autoType?.content;\r\n this.state = {\r\n dataSource: [],\r\n columns: [],\r\n loading: false,\r\n pagination: {},\r\n activeIndex: -1,\r\n //搜索文本\r\n searchText: null,\r\n fieldOption: null,\r\n searchColor: null,\r\n cols: [],\r\n sorts: [],\r\n filterParams: {},\r\n tableSize: this.props.size || autoType || \"default\",\r\n sortType: \"single\",\r\n sorter: [], //记录当前排序字段\r\n sortInfo: {},\r\n defaultSort: true,\r\n checkColumn: [],\r\n defaultCheck: true,\r\n selectedRowKeys: [],\r\n selectedRowDatas: [],\r\n filter: [],\r\n extra: {},\r\n };\r\n if (props.store instanceof Store) {\r\n this.store = props.store;\r\n } else {\r\n const { listeners: listenersProps = {}, ...restStore } =\r\n props.store || {};\r\n const storeProps = {\r\n model: \"model\",\r\n component: this,\r\n listeners: {\r\n onBeforeLoad: (store, options) => {\r\n this.setState({ loading: true });\r\n utils.callback(listenersProps.onBeforeLoad, this, [store, options]);\r\n },\r\n dataChanged: (data, modelData, store) => {\r\n let paging = !(this.props.pagination === false);\r\n if (paging && !this.props.dataSource) {\r\n this.setState({\r\n dataSource: modelData,\r\n pagination: store.getPagination(),\r\n loading: false,\r\n activeIndex: -1,\r\n });\r\n } else {\r\n this.setState({ dataSource: modelData, loading: false });\r\n }\r\n\r\n utils.callback(listenersProps.dataChanged, this, [\r\n data,\r\n modelData,\r\n store,\r\n paging,\r\n ]);\r\n },\r\n load: (data, modelData, store) => {\r\n utils.callback(listenersProps.load, this, [data, modelData, store]);\r\n },\r\n onErrorLoad: (err, response) => {\r\n this.setState({ loading: false });\r\n utils.callback(listenersProps.onErrorLoad, this, [err, response]);\r\n },\r\n },\r\n data: restStore.data\r\n ? restStore.data\r\n : props.dataSource\r\n ? props.dataSource\r\n : null,\r\n ...restStore,\r\n autoLoad: restStore.autoLoad === false ? false : true,\r\n };\r\n this.store = new PageStore(\r\n Object.assign({}, storeProps, {\r\n pagination: { current: 1, ...this.props.pagination },\r\n })\r\n );\r\n }\r\n }\r\n\r\n handleResize =\r\n (index: any) =>\r\n (e: any, { size }: any) => {\r\n const { cols } = this.state;\r\n const nextColumns = [...cols];\r\n nextColumns[index] = {\r\n ...nextColumns[index],\r\n width: size.width,\r\n };\r\n this.setState(\r\n {\r\n cols: nextColumns,\r\n },\r\n () => {\r\n // 在状态更新后重新获取列配置\r\n this.getColumns();\r\n }\r\n );\r\n };\r\n\r\n componentDidMount() {\r\n const { resizeColumn } = this.props;\r\n if (!resizeColumn) {\r\n this.setState({ columns: [...this.props.columns] });\r\n } else {\r\n this.setState({ cols: [...this.props.columns] });\r\n }\r\n const store = this.props.store;\r\n if (store && store.data) {\r\n this.store.setData(store.data);\r\n }\r\n window.addEventListener(\"message\", this.listenMessage);\r\n }\r\n componentWillUnmount() {\r\n window.removeEventListener(\"message\", this.listenMessage);\r\n }\r\n listenMessage = (ev) => {\r\n const data = typeof ev.data === \"string\" ? JSON.parse(ev.data) : ev.data;\r\n let _this = this;\r\n if (data.eventType == \"changeTableSize\") {\r\n const { payload } = data;\r\n if (\r\n payload.size == \"default\" ||\r\n payload.size == \"small\" ||\r\n payload.size == \"middle\"\r\n ) {\r\n _this.setState({ tableSize: payload.size });\r\n }\r\n }\r\n };\r\n\r\n componentDidUpdate(prevProps, preState) {\r\n const { resizeColumn } = this.props;\r\n if (!resizeColumn) {\r\n if (this.props.columns !== prevProps.columns) {\r\n this.setState({ columns: this.props.columns });\r\n }\r\n } else {\r\n if (preState.cols !== this.state.cols) {\r\n this.resetColumn();\r\n }\r\n if (this.props.columns !== prevProps.columns) {\r\n this.setState({\r\n cols: this.props.columns,\r\n columns: this.props.columns,\r\n });\r\n }\r\n if (prevProps.size !== this.props.size) {\r\n this.setState({ tableSize: this.props.size });\r\n }\r\n }\r\n }\r\n resetColumn() {\r\n const { cols } = this.state;\r\n const newCols: any = [];\r\n let colss = cols || [];\r\n colss.map((col: any, index: any) => {\r\n let temp = {\r\n ...col,\r\n onHeaderCell: (column: { width: any }) => ({\r\n width: column.width,\r\n onResize: this.handleResize(index),\r\n }),\r\n };\r\n newCols.push(temp);\r\n });\r\n this.setState({\r\n columns: newCols,\r\n });\r\n }\r\n\r\n /**\r\n * 清除选中颜色\r\n */\r\n clearSelectColor() {\r\n this.setState({ activeIndex: -1 });\r\n return this;\r\n }\r\n\r\n getPaginationByStore() {\r\n return this.store.getPagination();\r\n }\r\n\r\n onChange(pagination, filters, sorter, extra) {\r\n const {\r\n autoOnChange = true,\r\n autoSort,\r\n autoPagination,\r\n onChange,\r\n store,\r\n } = this.props;\r\n const { filterParams } = this.state;\r\n const isMultiple = Array.isArray(sorter);\r\n if (autoOnChange === false || !store) {\r\n onChange && onChange(pagination, filters, sorter, extra);\r\n return;\r\n }\r\n const handlePagination = () => {\r\n let params = {} as {\r\n size?: string;\r\n pageSize?: string;\r\n ascs?: string;\r\n descs?: string;\r\n [propName: string]: string;\r\n };\r\n const paging = this.getPaginationByStore() || {};\r\n if (!isEmptyObj(pagination)) {\r\n const p = {\r\n [paging.currentKey || \"current\"]: pagination.current,\r\n [paging.pageSizeKey || \"size\"]: pagination.pageSize,\r\n };\r\n Object.assign(params, p);\r\n }\r\n let ascParams = this.getSortParam(sorter, true);\r\n if (isMultiple) {\r\n this.setState({ sorter });\r\n } else if (!isMultiple && !isEmptyObj(sorter)) {\r\n sorter.column &&\r\n this.setState({ sorter: [sorter], defaultSort: false });\r\n } else {\r\n this.setState({ sorter: [] });\r\n }\r\n this.setState({\r\n filters,\r\n extra,\r\n });\r\n params = { ...filterParams, ...params, ...ascParams };\r\n autoSort && this.store.reload({ params });\r\n };\r\n\r\n const onChangeFn = this.props.onChange;\r\n\r\n autoPagination && handlePagination();\r\n // 用户传了onChange保留用户自主处理表格变化的权力\r\n if (onChangeFn) {\r\n utils.callback(onChangeFn, this, [pagination, filters, sorter, extra]);\r\n }\r\n }\r\n\r\n getStore() {\r\n return this.store;\r\n }\r\n\r\n /**\r\n * 获取数据模型对象\r\n */\r\n getModel() {\r\n return this.store.getModel();\r\n }\r\n\r\n /**\r\n * 菜单搜索过滤显示\r\n * @param {String} val\r\n */\r\n handleSearch(val, fieldOption, searchColor) {\r\n this.setState({\r\n searchText: val,\r\n fieldOption: fieldOption,\r\n searchColor: searchColor,\r\n });\r\n }\r\n\r\n /**\r\n * 模块列表移动排序\r\n */\r\n moveRow = (dragIndex, hoverIndex, drag, target) => {\r\n const _this = this;\r\n let dragNode = drag.record;\r\n let targetNode = target.record;\r\n dragNode.moveArray(dragNode, targetNode);\r\n let ids = dragNode.parentNode.getChildNodeIds();\r\n let params = {\r\n id: dragNode.id,\r\n parentId: dragNode.attribute.parentId,\r\n ids: ids,\r\n };\r\n\r\n if (this.props.moveRow) {\r\n this.props.moveRow(params);\r\n } else {\r\n this.store.reload();\r\n }\r\n };\r\n\r\n filterColumn(checkedValue) {\r\n if (checkedValue.length == 0) {\r\n message.warning(\"至少显示一列!\");\r\n return;\r\n }\r\n const filterColumns = this.props.columns.map((col: ColumnType<{}>) => {\r\n const newCol = { ...col } as ColumnType<{}> & { initShow: boolean };\r\n if (checkedValue.includes(col.dataIndex)) {\r\n newCol.initShow = true;\r\n } else {\r\n newCol.initShow = false;\r\n }\r\n return newCol;\r\n });\r\n const { resizeColumn } = this.props;\r\n if (!resizeColumn) {\r\n this.setState({\r\n columns: filterColumns,\r\n checkColumn: checkedValue,\r\n defaultCheck: false,\r\n });\r\n } else {\r\n this.setState({\r\n cols: filterColumns,\r\n checkColumn: checkedValue,\r\n defaultCheck: false,\r\n });\r\n }\r\n }\r\n getSortParam(sorter, sortState = false) {\r\n const isMultiple = Array.isArray(sorter);\r\n const { sortSearch = true } = this.props;\r\n if (!sortSearch) {\r\n return {};\r\n }\r\n let sortInfo = {};\r\n let orderItems = [];\r\n if (!isEmptyObj(sorter) && !isMultiple && sorter.column) {\r\n orderItems = [\r\n {\r\n column: sorter.column.field || sorter.column.dataIndex,\r\n asc: sorter.order == \"ascend\",\r\n },\r\n ];\r\n if (sorter.column) sortInfo[sorter.column.dataIndex] = sorter.order;\r\n } else if (isMultiple) {\r\n sorter.forEach((v) => {\r\n sortInfo[v.column.dataIndex] = v.order;\r\n let field = v.column.field || v.column.dataIndex;\r\n orderItems.push({\r\n column: field,\r\n asc: v.order == \"ascend\",\r\n });\r\n });\r\n }\r\n if (sortState) {\r\n this.setState({\r\n sortInfo: sortInfo,\r\n });\r\n }\r\n return { orderItems: JSON.stringify(orderItems) };\r\n }\r\n isBeyond(e) {\r\n const ev = window.event || e; // 浏览器兼容,最好写一下\r\n const textRange = (el) => {\r\n const textContent = el;\r\n const targetW = textContent.getBoundingClientRect().width;\r\n const range = document.createRange();\r\n range.setStart(textContent, 0);\r\n range.setEnd(textContent, textContent.childNodes.length);\r\n const rangeWidth = range.getBoundingClientRect().width;\r\n return rangeWidth > targetW;\r\n };\r\n return !textRange(ev.target); // target可以保证当前划过的dom节点一直保持是:el-tooltip__trigger\r\n }\r\n setSelectedRowKeys(data: Array<String | Number>) {\r\n this.setState({\r\n selectedRowKeys: data,\r\n });\r\n }\r\n setSelectedRowDatas(data: Array<Object>) {\r\n this.setState({\r\n selectedRowDatas: data,\r\n });\r\n }\r\n getColumns() {\r\n const { columns, sortType, sortInfo } = this.state;\r\n const { sortFields = [], size = \"large\" } = this.props;\r\n const defaultShowCols = columns.filter((cols) => cols.initShow !== false);\r\n const cols = defaultShowCols.map((col, index) => {\r\n // 替换 getColumns 方法中原来的 ellipsis 处理部分\r\n if (col.ellipsis && !col.render) {\r\n col.ellipsis = {\r\n showTitle: false,\r\n };\r\n col.render = (text, record, index) => {\r\n // 获取当前列的实时宽度\r\n const currentCol = this.state.cols?.find((c) => {\r\n // 处理 dataIndex 可能是字符串或数组的情况\r\n if (Array.isArray(c.dataIndex) && Array.isArray(col.dataIndex)) {\r\n return (\r\n JSON.stringify(c.dataIndex) === JSON.stringify(col.dataIndex)\r\n );\r\n }\r\n return c.dataIndex === col.dataIndex;\r\n });\r\n\r\n const actualWidth = currentCol?.width || col.width;\r\n let colWidth: any = \"100%\";\r\n\r\n if (actualWidth) {\r\n const size = this.state.tableSize || this.props.size || \"default\";\r\n const colWidthObj = {\r\n small: 16,\r\n middle: 16,\r\n default: 16,\r\n large: 32,\r\n };\r\n const paddingWidth = colWidthObj[size] || 16;\r\n\r\n if (actualWidth > paddingWidth) {\r\n colWidth = actualWidth - paddingWidth;\r\n } else {\r\n colWidth = actualWidth;\r\n }\r\n }\r\n\r\n return (\r\n <div style={{ display: \"inline-table\", width: \"100%\" }}>\r\n <div\r\n ref={(el) => {\r\n if (el) {\r\n // 清除之前的title\r\n el.removeAttribute(\"title\");\r\n\r\n // 检查文本是否溢出\r\n if (el.scrollWidth > el.clientWidth) {\r\n el.setAttribute(\"title\", text);\r\n }\r\n }\r\n }}\r\n className={getLess(styles, \"nsc-table-text\")}\r\n style={{\r\n width: colWidth,\r\n overflow: \"hidden\",\r\n textOverflow: \"ellipsis\",\r\n whiteSpace: \"nowrap\",\r\n }}\r\n >\r\n {text}\r\n </div>\r\n </div>\r\n );\r\n };\r\n }\r\n if (sortFields.indexOf(col.dataIndex) > -1) {\r\n if (sortType == \"single\") {\r\n col.sorter = true;\r\n col.sortOrder = sortInfo[col.dataIndex]\r\n ? sortInfo[col.dataIndex]\r\n : null;\r\n } else if (sortType == \"multiple\") {\r\n col.sorter = { multiple: index };\r\n col.sortOrder = sortInfo[col.dataIndex]\r\n ? sortInfo[col.dataIndex]\r\n : null;\r\n }\r\n }\r\n return col;\r\n });\r\n cols.map((item, index) => {\r\n if (!isEmptyObj(item.filterProps)) {\r\n let obj = { ...item };\r\n const { type, props, searchKey } = item.filterProps;\r\n let Div = null;\r\n let text = item.title;\r\n Div = getNode(type, {\r\n placeholder: `搜索${text}`,\r\n ...props,\r\n ref: this.tableSearchRef,\r\n });\r\n obj = {\r\n filterDropdown: ({\r\n setSelectedKeys,\r\n selectedKeys,\r\n confirm,\r\n clearFilters,\r\n }) => {\r\n return (\r\n <div className={getLess(styles, \"nsc-table-search\")}>\r\n <div className={getLess(styles, \"nsc-table-search-space\")}>\r\n {Div}\r\n </div>\r\n <Space>\r\n <Button\r\n type=\"primary\"\r\n onClick={() => {\r\n confirm();\r\n const { filterParams } = this.state;\r\n let newFilterParams = { ...filterParams };\r\n let key = item.field || item.dataIndex;\r\n newFilterParams[key] =\r\n this.tableSearchRef.current?.getValue();\r\n this.setState({\r\n filterParams: { ...newFilterParams },\r\n });\r\n const sortParam = this.getSortParam(this.state.sorter);\r\n this.store.load({\r\n params: { ...newFilterParams, ...sortParam },\r\n });\r\n }}\r\n size=\"small\"\r\n className={getLess(styles, \"nsc-table-search-button\")}\r\n >\r\n 查询\r\n </Button>\r\n </Space>\r\n </div>\r\n );\r\n },\r\n filterIcon: () => {\r\n return <SearchOutlined />;\r\n },\r\n ...obj,\r\n };\r\n cols[index] = obj;\r\n }\r\n });\r\n return cols;\r\n }\r\n renderToolBar() {\r\n let { tableSize, columns, sortType } = this.state;\r\n let { filterColumn, columns: colLists, toolbar } = this.props;\r\n const { tableTool, storeRequestConfig = {} } = config();\r\n let tools = [\"refresh\", \"size\", \"sort\", \"column\"];\r\n let toolsClick = {} as any;\r\n if (toolbar == true) {\r\n tools = [\"refresh\", \"size\", \"sort\", \"column\"];\r\n } else {\r\n tools = toolbar.tools\r\n ? toolbar.tools\r\n : tableTool.tools\r\n ? tableTool.tools\r\n : tools;\r\n toolsClick = toolbar.onToolClick ? toolbar.onToolClick : {};\r\n }\r\n const sizeItem = [\r\n { title: \"宽松\", key: \"default\" },\r\n { title: \"中等\", key: \"middle\" },\r\n { title: \"紧凑\", key: \"small\" },\r\n ];\r\n const sortItem = [\r\n { title: \"单字段排序\", key: \"single\" },\r\n { title: \"多字段排序\", key: \"multiple\" },\r\n ];\r\n const sortContent = (\r\n <>\r\n <div\r\n className={getLess(styles, \"nsc-table-cotent-title\")}\r\n style={{\r\n cursor: this.state.defaultSort ? \"not-allowed\" : \"pointer\",\r\n color: this.state.defaultSort && \"rgba(0,0,0,.45)\",\r\n }}\r\n onClick={() => {\r\n if (this.state.defaultSort) {\r\n return;\r\n }\r\n this.setState({ sorter: [], sortInfo: {}, defaultSort: true });\r\n const params = { ...this.state.filterParams };\r\n this.store.reload({ params });\r\n }}\r\n >\r\n 恢复默认排序\r\n </div>\r\n {sortItem.map((item, index) => {\r\n return (\r\n <div\r\n key={item.key}\r\n onClick={() => {\r\n this.setState({\r\n sorter: [],\r\n sortInfo: {},\r\n sortType: item.key,\r\n defaultSort: false,\r\n });\r\n const params = { ...this.state.filterParams };\r\n this.store.reload({ params });\r\n }}\r\n >\r\n {sortType == item.key ? (\r\n <a>\r\n <div className={getLess(styles, \"nsc-table-content-tiem\")}>\r\n <div style={{ width: 20 }}>\r\n {sortType == item.key && <CheckOutlined />}\r\n </div>\r\n <div> {item.title}</div>\r\n </div>\r\n </a>\r\n ) : (\r\n <div className={getLess(styles, \"nsc-table-content-tiem\")}>\r\n <div style={{ width: 20 }}></div>\r\n <div> {item.title}</div>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n })}\r\n {this.state.sorter.length > 0 && (\r\n <>\r\n <div\r\n className={getLess(styles, \"nsc-table-cotent-title\")}\r\n style={{ color: \"rgba(0,0,0,.45)\" }}\r\n >\r\n 当前排序\r\n </div>\r\n {this.state.sorter.map((item, index) => {\r\n return (\r\n <div\r\n className={getLess(styles, \"nsc-table-content-tiem\")}\r\n key={index}\r\n >\r\n <div style={{ width: 20 }}>\r\n {item.order == \"ascend\" ? (\r\n <SortAscendingOutlined />\r\n ) : (\r\n <SortDescendingOutlined />\r\n )}\r\n </div>\r\n <div> {item.column.title}</div>\r\n </div>\r\n );\r\n })}\r\n </>\r\n )}\r\n </>\r\n );\r\n const sizeContent = (\r\n <>\r\n <div className={getLess(styles, \"nsc-table-cotent-title\")}>\r\n 表格密度\r\n </div>\r\n {sizeItem.map((item, index) => {\r\n return (\r\n <div\r\n key={item.key}\r\n onClick={() => {\r\n this.setState({\r\n tableSize: item.key,\r\n });\r\n }}\r\n >\r\n {tableSize == item.key ? (\r\n <a>\r\n <div className={getLess(styles, \"nsc-table-content-tiem\")}>\r\n <div style={{ width: 20 }}>\r\n {tableSize == item.key && <CheckOutlined />}\r\n </div>\r\n <div> {item.title}</div>\r\n </div>\r\n </a>\r\n ) : (\r\n <div className={getLess(styles, \"nsc-table-content-tiem\")}>\r\n <div style={{ width: 20 }}></div>\r\n <div> {item.title}</div>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n })}\r\n </>\r\n );\r\n\r\n const defaultShowCols = columns.filter((cols) => cols.initShow !== false);\r\n\r\n const content = (\r\n <Checkbox.Group\r\n onChange={this.filterColumn.bind(this)}\r\n options={colLists.map(\r\n (col: ColumnType<{}> & { filterColumn: boolean; dataIndex: any }) => {\r\n if (!col.dataIndex) {\r\n col.dataIndex = col.title;\r\n }\r\n return {\r\n label: col.title,\r\n value: col.dataIndex,\r\n disabled: col.filterColumn === false,\r\n } as CheckboxOptionType;\r\n }\r\n )}\r\n // defaultValue={defaultShowCols.map((col) => col.dataIndex)}\r\n value={\r\n this.state.defaultCheck\r\n ? defaultShowCols.map((col) => col.dataIndex)\r\n : this.state.checkColumn\r\n }\r\n ></Checkbox.Group>\r\n );\r\n return (\r\n <div className={getLess(styles, \"nsc-table-tool-bar\")}>\r\n {tools.indexOf(\"column\") > -1 && (\r\n <div style={{ fontSize: 14 }}>\r\n <Popover\r\n title=\"选择显示的列\"\r\n content={content}\r\n placement=\"bottomRight\"\r\n trigger=\"click\"\r\n overlayStyle={{ minWidth: 410, maxWidth: 450 }}\r\n >\r\n <AppstoreOutlined\r\n className={getLess(styles, \"nsc-table-th-app-store-icon\")}\r\n />\r\n </Popover>\r\n </div>\r\n )}\r\n {tools.indexOf(\"sort\") > -1 && (\r\n <div style={{ marginRight: 8, fontSize: 14 }}>\r\n <Popover placement=\"bottom\" content={sortContent} trigger=\"click\">\r\n <SortAscendingOutlined />\r\n </Popover>\r\n </div>\r\n )}\r\n {tools.indexOf(\"size\") > -1 && (\r\n <div style={{ marginRight: 8, fontSize: 14 }}>\r\n <Popover placement=\"bottom\" content={sizeContent} trigger=\"click\">\r\n <ColumnHeightOutlined />\r\n </Popover>\r\n </div>\r\n )}\r\n {tools.indexOf(\"refresh\") > -1 && (\r\n <div\r\n style={{ marginRight: 8, fontSize: 14, cursor: \"pointer\" }}\r\n onClick={() => {\r\n const params = { ...this.state.filterParams };\r\n if (toolsClick.onRefresh) {\r\n toolsClick.onRefresh();\r\n } else {\r\n this.store.load({ params });\r\n }\r\n }}\r\n >\r\n <RedoOutlined />\r\n </div>\r\n )}\r\n </div>\r\n );\r\n }\r\n getSelectedRowKeys() {\r\n return this.state.selectedRowKeys;\r\n }\r\n getSelectedRowDatas() {\r\n return this.state.selectedRowDatas;\r\n }\r\n resetSelectedRowKeys() {\r\n this.setState({\r\n selectedRowKeys: [],\r\n selectedRowDatas: [],\r\n });\r\n }\r\n rowSelectionOnSelect(record: any, selected: any) {\r\n const { selectedRowKeys, selectedRowDatas } = this.state;\r\n let { rowKey = \"id\" } = this.props;\r\n let newSelectedRowKeys = [...selectedRowKeys];\r\n let newSelectedRowDatas = [...selectedRowDatas];\r\n if (selected) {\r\n newSelectedRowKeys = [...newSelectedRowKeys, record[rowKey]];\r\n newSelectedRowDatas = [...newSelectedRowDatas, record];\r\n } else {\r\n selectedRowKeys.map((item: any, index: any) => {\r\n if (item === record[rowKey]) {\r\n newSelectedRowKeys.splice(index, 1);\r\n }\r\n });\r\n selectedRowDatas.map((item: any, index: any) => {\r\n if (item[rowKey] === record[rowKey]) {\r\n newSelectedRowDatas.splice(index, 1);\r\n }\r\n });\r\n }\r\n this.setState({\r\n selectedRowKeys: newSelectedRowKeys,\r\n selectedRowDatas: newSelectedRowDatas,\r\n });\r\n }\r\n rowSelectionOnSelectAll(selected: any, selectedRows: any, changeRows: any) {\r\n const { selectedRowKeys, selectedRowDatas } = this.state;\r\n const { rowKey = \"id\" } = this.props;\r\n let newids: any = [];\r\n let newdatas: any = [];\r\n if (changeRows.length > 0) {\r\n let changeIds = changeRows.map((item: any) => item[rowKey]);\r\n if (selected) {\r\n newids = [...selectedRowKeys, ...changeIds];\r\n newdatas = [...selectedRowDatas, ...changeRows];\r\n } else {\r\n selectedRowKeys.map((item: any, index: any) => {\r\n if (changeIds.indexOf(item) == -1) {\r\n newids.push(item);\r\n }\r\n });\r\n selectedRowDatas.map((item: any, index: any) => {\r\n if (changeIds.indexOf(item[rowKey]) == -1) {\r\n newdatas.push(item);\r\n }\r\n });\r\n }\r\n } else {\r\n newids = [...selectedRowKeys];\r\n newdatas = [...selectedRowDatas];\r\n }\r\n this.setState({\r\n selectedRowKeys: [...newids],\r\n selectedRowDatas: [...newdatas],\r\n });\r\n }\r\n render() {\r\n let _this = this,\r\n {\r\n loading,\r\n dataSource,\r\n pagination = {},\r\n searchText,\r\n fieldOption,\r\n searchColor,\r\n tableSize,\r\n } = this.state,\r\n props = utils.omit(\r\n this.props,\r\n [\r\n \"store\",\r\n \"onChange\",\r\n \"columns\",\r\n \"resetColumn\",\r\n \"toolbar\",\r\n \"sortFields\",\r\n \"filterColumn\",\r\n \"sortSearch\",\r\n \"showRowSelection\",\r\n \"pageType\",\r\n ],\r\n {\r\n rowKey: \"id\",\r\n clickChangeColor: false,\r\n }\r\n );\r\n if (props.pagination !== false) {\r\n props.pagination = {\r\n position: [\"bottomRight\"],\r\n showSizeChanger: true,\r\n showQuickJumper: true,\r\n ...pagination,\r\n ...props.pagination,\r\n };\r\n if (props.showTotal == true) {\r\n props.pagination.showTotal = function (total, [from, to]) {\r\n // return \"显示 \" + from + \" - \" + to + \"条,共 \" + total + \" 条\";\r\n return \"共 \" + total + \" 条\";\r\n };\r\n }\r\n }\r\n props.onChange = function (pagination, filters, sorter, extra) {\r\n _this.onChange(_this.state.pagination, filters, sorter, extra);\r\n };\r\n if (props.clickChangeColor) {\r\n const onRowFn = props.onRow;\r\n props.onRow = function (record, index) {\r\n var custom = onRowFn ? onRowFn(record, index) : {};\r\n const onClickFn = custom.onClick;\r\n custom.onClick = (event) => {\r\n _this.setState({\r\n activeIndex: index, //获取点击行的索引\r\n });\r\n utils.callback(onClickFn, _this, [event]);\r\n };\r\n return custom;\r\n };\r\n props.rowClassName = function (record, index) {\r\n return index === _this.state.activeIndex\r\n ? \"nsc-table-clickRowStyle\"\r\n : \"\";\r\n };\r\n }\r\n let newDataSource = [];\r\n if (searchText) {\r\n const data = treeUtils.getSearchMenuDatas(\r\n this,\r\n searchText,\r\n fieldOption,\r\n searchColor\r\n );\r\n newDataSource = data.treeDatas;\r\n props.expandedRowKeys = data.openKeys;\r\n } else {\r\n newDataSource = dataSource;\r\n }\r\n props.store = props.store || {};\r\n props.store.autoLoad = props.store.autoLoad === false ? false : true;\r\n const { dragable } = _this.props;\r\n const dragableProps =\r\n dragable === true\r\n ? {\r\n components: BodyRowComponent,\r\n onRow: (record, index) => ({\r\n index,\r\n record,\r\n moveRow: this.moveRow,\r\n }),\r\n }\r\n : {};\r\n let { resizeColumn } = this.props;\r\n\r\n const resizeProps =\r\n resizeColumn === true ? { components: this.components } : null;\r\n const { tableTool } = config();\r\n let toolFlag = false;\r\n // console.log('tableTool',tableTool)\r\n\r\n if (tableTool.show === true) {\r\n toolFlag=true;\r\n }\r\n if (this.props.toolbar && this.props.toolbar.show === true) {\r\n toolFlag = true;\r\n }\r\n if (this.props.showRowSelection) {\r\n const { rowSelection = {} } = this.props;\r\n props = {\r\n ...props,\r\n rowSelection: {\r\n selectedRowKeys: this.state.selectedRowKeys,\r\n onSelect: this.rowSelectionOnSelect.bind(this),\r\n onSelectAll: this.rowSelectionOnSelectAll.bind(this),\r\n columnWidth: 40,\r\n ...rowSelection,\r\n },\r\n };\r\n }\r\n const { tableProps: configTableProps } = config();\r\n const DefaultTable = (\r\n <div className={getLess(styles, \"nsc-table\")}>\r\n {toolFlag && this.renderToolBar()}\r\n <Table\r\n childrenColumnName=\"childNodes\"\r\n sheitem\r\n dataSource={newDataSource}\r\n columns={this.getColumns()}\r\n loading={loading}\r\n className={cls(getLess(styles, \"nsc-table-content\"), props.className)}\r\n locale={{\r\n emptyText: (\r\n <NoData className={getLess(styles, \"nsc-table-nodata\")} />\r\n ),\r\n }}\r\n scroll={{ x: \"max-content\" }}\r\n {...configTableProps}\r\n {...resizeProps}\r\n {...props}\r\n {...dragableProps}\r\n size={tableSize}\r\n pagination={false}\r\n // style={{ height: 600 }}\r\n />\r\n {props.pagination !== false && (\r\n <div className={getLess(styles, \"nsc-table-pagination\")}>\r\n <Pagination\r\n {...props.pagination}\r\n onChange={(page, pageSize) => {\r\n const extra = this.state.extra;\r\n extra.action = \"paginate\";\r\n this.setState(({ pagination = {} }) => {\r\n return {\r\n pagination: { ...pagination, current: page, pageSize },\r\n };\r\n });\r\n this.onChange(\r\n { current: page, pageSize },\r\n this.state.filter,\r\n this.state.sorter,\r\n extra\r\n );\r\n }}\r\n />\r\n </div>\r\n )}\r\n </div>\r\n );\r\n\r\n return dragable === true ? (\r\n <DndProvider backend={HTML5Backend}>{DefaultTable}</DndProvider>\r\n ) : (\r\n DefaultTable\r\n );\r\n }\r\n}\r\n\r\nexport default withZhLocale(NSCTable);\r\n"],"mappings":"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"}
|