fix:更新装修验收指派 #24

Merged
zsq merged 1 commits from develop into main 2026-05-07 14:51:07 +08:00
2 changed files with 131 additions and 122 deletions

View File

@ -1,4 +1,4 @@
import { MyColumns, MyProTableProps } from '@/common'; import { MyColumns, MyPageContainer, MyProTableProps } from '@/common';
import { Selects } from '@/components/Select'; import { Selects } from '@/components/Select';
import { Apis } from '@/gen/Apis'; import { Apis } from '@/gen/Apis';
import { import {
@ -18,129 +18,140 @@ export const RenovationWorkOrdersStatusEnum = {
Closed: { text: '已关闭', color: '#6C757D', value: 'Closed' }, Closed: { text: '已关闭', color: '#6C757D', value: 'Closed' },
}; };
export default function Index({ title = '装修巡检' }) { export default function Index({ title = '装修验收' }) {
return ( return (
<ProTable<Record<any, any>> <MyPageContainer
{...MyProTableProps.props} title={title}
headerTitle={title} enableTabs={true}
request={async (params, sort) => { tabKey="renovation_inspection_list"
return MyProTableProps.request( tabLabel={title}
>
<ProTable<Record<any, any>>
{...MyProTableProps.props}
headerTitle={title}
request={async (params, sort) => {
return MyProTableProps.request(
{
...params,
type: [
HouseWorkOrdersTypeEnum.RenovationInspection.value,
HouseWorkOrdersTypeEnum.RenovationAcceptance.value,
],
},
sort,
Apis.WorkOrder.HouseWorkOrders.List,
);
}}
// toolBarRender={(action) => [toolBarRender(action)]}
columns={[
MyColumns.ID({ search: false }),
Selects?.AssetProjects({
title: '选择项目',
key: 'asset_projects_id',
hidden: true,
}),
MyColumns.EnumTag({
title: '处理状态',
dataIndex: 'status',
valueEnum: RenovationWorkOrdersStatusEnum,
}),
{ {
...params, title: '项目名称',
type: [ dataIndex: 'project_name',
HouseWorkOrdersTypeEnum.RenovationInspection.value, hidden: true,
HouseWorkOrdersTypeEnum.RenovationAcceptance.value,
],
}, },
sort, MyColumns.EnumTag({
Apis.WorkOrder.HouseWorkOrders.List, title: '分配状态',
); dataIndex: 'assign_status',
}} valueEnum: HouseWorkOrdersAssignStatusEnum,
// toolBarRender={(action) => [toolBarRender(action)]} }),
columns={[ MyColumns.EnumTag({
MyColumns.ID({ search: false }), title: '工单类型',
Selects?.AssetProjects({ dataIndex: 'type',
title: '选择项目', valueEnum: HouseWorkOrdersTypeEnum,
key: 'asset_projects_id', search: false,
hidden: true, }),
}), // MyColumns.EnumTag({
MyColumns.EnumTag({ // title: '报修位置',
title: '处理状态', // dataIndex: 'location',
dataIndex: 'status', // valueEnum: HouseWorkOrdersLocationEnum,
valueEnum: RenovationWorkOrdersStatusEnum, // search: false,
}), // }),
{ {
title: '项目名称', title: '位置信息',
dataIndex: 'project_name', dataIndex: ['asset_house', 'full_name'],
hidden: true, render: (_, record) => {
}, return (
MyColumns.EnumTag({ <Space>
title: '分配状态', {record?.asset_house?.full_name
dataIndex: 'assign_status', ? record?.asset_house?.full_name
valueEnum: HouseWorkOrdersAssignStatusEnum, : record?.asset_project?.name}
}), </Space>
MyColumns.EnumTag({ );
title: '工单类型', },
dataIndex: 'type', search: {
valueEnum: HouseWorkOrdersTypeEnum, transform: (value) => {
search: false, return { house_name: value };
}), },
// MyColumns.EnumTag({
// title: '报修位置',
// dataIndex: 'location',
// valueEnum: HouseWorkOrdersLocationEnum,
// search: false,
// }),
{
title: '位置信息',
dataIndex: ['asset_house', 'full_name'],
render: (_, record) => {
return (
<Space>
{record?.asset_house?.full_name
? record?.asset_house?.full_name
: record?.asset_project?.name}
</Space>
);
},
search: {
transform: (value) => {
return { house_name: value };
}, },
}, },
}, // {
// { // title: '工单描述',
// title: '工单描述', // dataIndex: 'content',
// dataIndex: 'content', // search: false,
// search: false, // width: 200, // 关键:固定列宽(若父容器过窄,可设 minWidth: 200 优先保证列宽)
// width: 200, // 关键:固定列宽(若父容器过窄,可设 minWidth: 200 优先保证列宽) // render: (text) => (
// render: (text) => ( // <div
// <div // style={{
// style={{ // width: '100%', // 继承列宽
// width: '100%', // 继承列宽 // // height: '60px', // 设置固定高度约显示3行文本
// // height: '60px', // 设置固定高度约显示3行文本 // overflow: 'hidden', // 超出隐藏
// overflow: 'hidden', // 超出隐藏 // textOverflow: 'ellipsis', // 省略号
// textOverflow: 'ellipsis', // 省略号 // display: '-webkit-box',
// display: '-webkit-box', // WebkitBoxOrient: 'vertical',
// WebkitBoxOrient: 'vertical', // WebkitLineClamp: 3, // 显示3行
// WebkitLineClamp: 3, // 显示3行 // }}
// }} // >
// > // {text}
// {text} // </div>
// </div> // ),
// ), // },
// }, MyColumns.EnumTag({
MyColumns.EnumTag({ title: '优先级',
title: '优先级', dataIndex: 'level',
dataIndex: 'level', valueEnum: HouseWorkOrdersLevelEnum,
valueEnum: HouseWorkOrdersLevelEnum, search: false,
search: false, }),
}),
{ {
title: '处理人', title: '处理人',
dataIndex: ['assign_employee', 'name'], dataIndex: ['assign_employee', 'name'],
search: false, search: false,
render: (_, record) => { render: (_, record) => {
return `${record?.assign_employee?.name || ''}-${ return `${record?.assign_employee?.name || ''}-${
record?.assign_employee?.phone || '' record?.assign_employee?.phone || ''
}`; }`;
},
}, },
}, MyColumns.CreatedAt(),
MyColumns.CreatedAt(), MyColumns.Option({
MyColumns.Option({ render: (_, item: any, index, action) => (
render: (_, item: any, index, action) => ( <Space key={index}>
<Space key={index}> <WorkOrderShow
<WorkOrderShow item={item} title="详情" reload={action?.reload} /> item={item}
<RenovationAssign title="详情"
item={item} reload={action?.reload}
reload={action?.reload} />
title="指派" <RenovationAssign
/> item={item}
</Space> reload={action?.reload}
), title="指派"
}), />
]} </Space>
/> ),
}),
]}
/>
</MyPageContainer>
); );
} }

View File

@ -28,10 +28,8 @@ export default function WorkOrderAssign(
<MyButtons.Default <MyButtons.Default
title={props.title || '指派'} title={props.title || '指派'}
disabled={ disabled={
!( props?.item.assign_status !== 'Unassigned' &&
props?.item.assign_status === 'Unassigned' && props?.item.type === 'RenovationAcceptance'
props?.item.type === 'RenovationAcceptance'
)
} }
type="primary" type="primary"
/> />