fix:更新BUG
All checks were successful
Build and Push Docker Image / build (push) Successful in 5m8s

This commit is contained in:
Your Name 2026-04-17 16:42:43 +08:00
parent 40dde4ab3f
commit df7f5aa548
7 changed files with 57 additions and 70 deletions

View File

@ -3939,6 +3939,12 @@ declare namespace ApiTypes {
type Closed = {
"id": number; // id
};
type SoftDelete = {
"id": number; // id
};
type Restore = {
"id": number; // id
};
type Delete = {
"id": number; // id
};

View File

@ -2201,6 +2201,12 @@ export const Apis = {
Closed(data: ApiTypes.WorkOrder.HouseWorkOrders.Closed): Promise<MyResponseType> {
return request('company/work_order/house_work_orders/closed', { data });
},
SoftDelete(data: ApiTypes.WorkOrder.HouseWorkOrders.SoftDelete): Promise<MyResponseType> {
return request('company/work_order/house_work_orders/soft_delete', { data });
},
Restore(data: ApiTypes.WorkOrder.HouseWorkOrders.Restore): Promise<MyResponseType> {
return request('company/work_order/house_work_orders/restore', { data });
},
Delete(data: ApiTypes.WorkOrder.HouseWorkOrders.Delete): Promise<MyResponseType> {
return request('company/work_order/house_work_orders/delete', { data });
},

View File

@ -127,7 +127,7 @@ export default function Index({ title = '新增班次' }) {
valueType: 'time',
fieldProps: {
style: { width: '100%' },
placeholder: '请输入班次开始时间',
placeholder: '请选择班次开始时间',
format: 'HH:mm',
},
colProps: { span: 8 },
@ -138,7 +138,7 @@ export default function Index({ title = '新增班次' }) {
valueType: 'time',
fieldProps: {
style: { width: '100%' },
placeholder: '请输入班次开始时间',
placeholder: '请选择班次结束时间',
format: 'HH:mm',
},
colProps: { span: 8 },

View File

@ -197,7 +197,7 @@ export default function Index({ title = '编辑班次' }) {
valueType: 'time',
fieldProps: {
style: { width: '100%' },
placeholder: '请输入班次开始时间',
placeholder: '请选择班次开始时间',
format: 'HH:mm',
},
colProps: { span: 8 },
@ -207,7 +207,7 @@ export default function Index({ title = '编辑班次' }) {
key: 'work_end_time',
fieldProps: {
style: { width: '100%' },
placeholder: '请输入班次开始时间',
placeholder: '请选择班次结束时间',
format: 'HH:mm',
},
valueType: 'time',

View File

@ -3,7 +3,6 @@ import {
MyColumns,
MyPageContainer,
MyProTableProps,
useCurrentPermissions,
} from '@/common';
import { Apis } from '@/gen/Apis';
import {
@ -32,47 +31,6 @@ export const ComplaintOrdersStatusEnum = {
};
export default function Index({ title = '客户投诉' }) {
const getCurrentPermissions = useCurrentPermissions();
let toolBarRender = (action: any) => {
return getCurrentPermissions({
create: <Create key="Create" reload={action?.reload} title={title} />,
});
};
let tableRender = (item: any, action: any) => {
return getCurrentPermissions({
show: <ComplaintShow item={item} title="详情" reload={action?.reload} />,
update: (
<>
{item.status === 'Pending' && (
<Update item={item} reload={action?.reload} title={title} />
)}
</>
),
assign: (
<>
{item.assign_status === 'Unassigned' && (
<Assign item={item} reload={action?.reload} title="指派" />
)}
</>
),
completed: (
<>
{item.status === 'Completed' && item.is_visited === 0 && (
<ComplaintShow item={item} title="回访" reload={action?.reload} />
)}
</>
),
delete: (
<MyButtons.Delete
onConfirm={() =>
Apis.WorkOrder.HouseWorkOrders.SoftDelete({
id: item.id,
}).then(() => action?.reload())
}
/>
),
});
};
return (
<MyPageContainer
title={title}
@ -80,9 +38,9 @@ export default function Index({ title = '客户投诉' }) {
tabKey="complaint"
tabLabel={title}
>
<ProTable
<ProTable<Record<any, any>>
{...MyProTableProps.props}
headerTitle="客户投诉"
headerTitle="工单列表"
request={async (params, sort) =>
MyProTableProps.request(
{
@ -93,7 +51,9 @@ export default function Index({ title = '客户投诉' }) {
Apis.WorkOrder.HouseWorkOrders.List,
)
}
toolBarRender={(action) => [toolBarRender(action)]}
toolBarRender={(action) => [
<Create key="Create" reload={action?.reload} title={title} />,
]}
columns={[
MyColumns.ID({ search: false }),
MyColumns.EnumTag({
@ -157,7 +117,31 @@ export default function Index({ title = '客户投诉' }) {
MyColumns.Option({
render: (_, item: any, index, action) => (
<Space key={index}>
<>{tableRender(item, action)}</>
<ComplaintShow
item={item}
title="详情"
reload={action?.reload}
/>
{item.status === 'Pending' && (
<Update item={item} reload={action?.reload} title={title} />
)}
{item.assign_status === 'Unassigned' && (
<Assign item={item} reload={action?.reload} title="指派" />
)}
{item.status === 'Completed' && item.is_visited === 0 && (
<ComplaintShow
item={item}
title="回访"
reload={action?.reload}
/>
)}
<MyButtons.Delete
onConfirm={() =>
Apis.WorkOrder.HouseWorkOrders.SoftDelete({
id: item.id,
}).then(() => action?.reload())
}
/>
</Space>
),
}),

View File

@ -20,11 +20,11 @@ export default function WorkOrderCreate(props: MyBetaModalFormProps) {
<BetaSchemaForm<ApiTypes.WorkOrder.HouseWorkOrders.Store>
{...MyModalFormProps.props}
title={`创建工单`}
wrapperCol={{ span: 19 }}
labelCol={{ span: 4 }}
wrapperCol={{ span: 20 }}
width="600px"
layout="horizontal"
labelCol={{ span: 5 }}
trigger={<MyButtons.Create title={`投诉`} />}
trigger={<MyButtons.Create title="投诉" />}
onOpenChange={(open: any) => {
if (open) {
form.resetFields(); // 清空表单数据
@ -45,23 +45,6 @@ export default function WorkOrderCreate(props: MyBetaModalFormProps) {
.catch(() => false)
}
columns={[
// MyFormItems.EnumRadio({
// key: 'type',
// title: '工单类型',
// colProps: { span: 24 },
// // valueEnum: HouseWorkOrdersTypeEnum,
// valueEnum: () => {
// let obj: any = JSON.parse(JSON.stringify(HouseWorkOrdersTypeEnum));
// delete obj.RenovationAcceptance;
// delete obj.EquipmentMaintenance;
// delete obj.RenovationInspection;
// delete obj.Emergency;
// delete obj.EmergEquipmentMaintenancency;
// delete obj.SecurityInspection;
// return obj;
// },
// required: true,
// }),
MyFormItems.EnumRadio({
key: 'complaint_type',
title: '投诉类型',

View File

@ -50,6 +50,14 @@ export default function WorkOrderCreate(props: MyBetaModalFormProps) {
valueEnum: () => {
let obj: any = JSON.parse(JSON.stringify(HouseWorkOrdersTypeEnum));
delete obj.Complaint;
delete obj.RenovationAcceptance;
delete obj.EquipmentMaintenance;
delete obj.RenovationInspection;
delete obj.Emergency;
delete obj.EmergEquipmentMaintenancency;
delete obj.SecurityInspection;
delete obj.Complaint;
delete obj.QualityCheck;
return obj;
},
required: true,