import { MyButtons, MyColumns, MyImportModal, MyPageContainer, MyProTableProps, usePageTabs, } from '@/common'; import { Apis } from '@/gen/Apis'; import { ProTable } from '@ant-design/pro-components'; import { useNavigate } from '@umijs/max'; import { Space } from 'antd'; import { HouseMetersMeterTypeEnum, HouseMetersUsageTypeEnum, } from '@/gen/Enums'; import CompanyCreate from './modals/MeterCreate'; import MeterHasHouse from './modals/MeterHasHouse'; import MeterHasOne from './modals/MeterHasOne'; import CompanyUpdate from './modals/MeterUpdate'; export default function Index({ title = '仪表管理' }) { const navigate = useNavigate(); // 注册当前页面为标签页 usePageTabs({ tabKey: 'house_meters', tabLabel: title, }); return ( MyProTableProps.request(params, sort, Apis.Meter.HouseMeters.List) } toolBarRender={(action) => [ , , ]} columns={[ MyColumns.ID(), MyColumns.EnumTag({ title: '类型', dataIndex: 'meter_type', valueEnum: HouseMetersMeterTypeEnum, search: false, }), MyColumns.EnumTag({ title: '使用类型', dataIndex: 'usage_type', valueEnum: HouseMetersUsageTypeEnum, search: false, }), { title: '仪表名称', dataIndex: 'name', }, { title: '收费标准', dataIndex: ['charge_standard', 'name'], search: false, }, { title: '初始抄表读数', dataIndex: 'initial_value', search: false, }, { title: '最新抄表读数', dataIndex: 'latest_value', search: false, }, { title: '初始抄表时间', dataIndex: 'initial_time', search: false, }, { title: '最新抄表时间', dataIndex: 'latest_time', search: false, }, { title: '备注', dataIndex: 'remark', search: false, }, MyColumns.SoftDelete({ onRestore: Apis.Meter.HouseMeters.Restore, onSoftDelete: Apis.Meter.HouseMeters.SoftDelete, search: false, }), MyColumns.CreatedAt(), MyColumns.Option({ render: (_, item: any, index, action) => ( { navigate(`/meter/readings/show/${item.id}`); }} /> {item.meter_type === HouseMetersMeterTypeEnum.HouseMeter.value && ( )} {item.meter_type === HouseMetersMeterTypeEnum.CommonMeter.value && ( )} Apis.Meter.HouseMeters.Delete({ id: item.id }).then(() => action?.reload(), ) } /> ), }), ]} /> ); }