/* * Author: 黎永顺 * name: 统计维度管理列表 * Description: * Date: 2023/4/11 */ import React, { Component } from "react"; import { WeaLocaleProvider, WeaTable } from "ecCom"; import { message, Modal } from "antd"; import { dimensionDelete, dimensionList } from "../../../apis/statistics"; import "../index.less"; const { getLabel } = WeaLocaleProvider; class DimensionTable extends Component { constructor(props) { super(props); this.state = { loading: false, dataSource: [], pageInfo: { current: 1, pageSize: 10, total: 0 } }; } componentDidMount() { this.dimensionList(); } dimensionList = (extra = {}) => { const { pageInfo } = this.state; this.setState({ loading: true }); dimensionList({ ...pageInfo, ...extra }).then(({ status, data }) => { this.setState({ loading: false }); if (status) { const { pageNum: current, pageSize, total, list: dataSource } = data; this.setState({ dataSource, pageInfo: { ...pageInfo, current, pageSize, total } }); } }).catch(() => this.setState({ loading: false })); }; dimensionDelete = (payload) => { Modal.confirm({ title: getLabel(131329, "信息确认"), content: getLabel(388758, "确认要删除吗?"), onOk: () => { dimensionDelete(payload).then(({ status, errormsg }) => { if (status) { message.success(getLabel(502230, "删除成功")); this.dimensionList(); } else { message.error(errormsg || getLabel(20462, "删除失败")); } }); } }); }; render() { const { dataSource, loading, pageInfo } = this.state; const { onEdit } = this.props; const pagination = { ...pageInfo, showTotal: total => `${getLabel(18609, "共")} ${total} ${getLabel(18256, "条")}`, showQuickJumper: true, showSizeChanger: true, pageSizeOptions: ["10", "20", "50", "100"], onShowSizeChange: (current, pageSize) => { this.setState({ pageInfo: { ...pageInfo, current, pageSize } }, () => this.dimensionList()); }, onChange: current => { this.setState({ pageInfo: { ...pageInfo, current } }, () => this.dimensionList()); } }; const columns = [ { dataIndex: "dimName", title: getLabel(506800, "统计维度") }, { dataIndex: "remark", title: getLabel(433, "描述") }, { dataIndex: "dimType", title: getLabel(389137, "维度类型") }, { dataIndex: "operate", title: getLabel(30585, "操作"), render: (_, record) => { return ( { record.canEdit && onEdit(record.id)}>{getLabel(501169, "编辑")} } { record.canDelete && this.dimensionDelete([record.id])}>{getLabel(535052, "删除")} } ); } } ]; return ( ); } } export default DimensionTable;