From c88d0c6b7e56deba98fdd51b86c7b2a1bd65fa25 Mon Sep 17 00:00:00 2001 From: Shinner Date: Tue, 23 May 2023 18:05:36 +0800 Subject: [PATCH] 二级表头 --- src/pages/order3/SaleTask/components/EntryTaskPreview.tsx | 188 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------------------------------------ src/pages/order3/SaleTask/subpages/TaskEdit/components/AdviserTask.tsx | 11 +++++------ 2 files changed, 109 insertions(+), 90 deletions(-) diff --git a/src/pages/order3/SaleTask/components/EntryTaskPreview.tsx b/src/pages/order3/SaleTask/components/EntryTaskPreview.tsx index 56a64cd..6541c8f 100644 --- a/src/pages/order3/SaleTask/components/EntryTaskPreview.tsx +++ b/src/pages/order3/SaleTask/components/EntryTaskPreview.tsx @@ -5,8 +5,8 @@ import * as API from "../api"; import { OrderTaskApprovalType } from "../entity"; import useInitial from "@/hooks/useInitail"; import ModifiedTableCell from "./ModifiedTableCell"; +import { ColumnsType } from "antd/es/table"; -const { Column } = Table; const RadioButton = Radio.Button; const RadioGroup = Radio.Group; @@ -67,6 +67,102 @@ const EntryTaskPreview = ({ showSeriesModal(record, type); }; + const columns: ColumnsType = [ + { + title: type === OrderTaskApprovalType.门店维度 ? "门店" : "姓名", + width: type === OrderTaskApprovalType.门店维度 ? 150 : 100, + dataIndex: "dataName", + filterSearch: true, + onFilter: ( + value: string | number | boolean, + record: API.TaskListItem + ) => { + return record.dataName.startsWith(value.toString()); + }, + }, + { + title: "零售任务(台)", + children: [ + { + title: "合计", + dataIndex: "taskCount", + key: "taskCount", + render: (text: string, record: API.TaskListItem) => { + return ModifiedTableCell(record, "taskCount"); + }, + }, + { + title: "新能源车", + dataIndex: "newEnergyTaskCount", + key: "newEnergyTaskCount", + render: (text: string, record: API.TaskListItem) => { + return ModifiedTableCell(record, "newEnergyTaskCount"); + }, + }, + { + title: "传统燃油车", + dataIndex: "fuelVehicleTaskCount", + key: "fuelVehicleTaskCount", + render: (text: string, record: API.TaskListItem) => { + return ModifiedTableCell(record, "fuelVehicleTaskCount"); + }, + }, + ], + }, + { + title: "单车毛利任务(元)", + dataIndex: "vehicleGrossProfitTask", + render: (text: string, record: API.TaskListItem) => { + return ModifiedTableCell(record, "vehicleGrossProfitTask"); + }, + }, + { + title: "线索到店成交(台)", + width: 100, + dataIndex: "clueDealTaskCount", + render: (text: string, record: API.TaskListItem) => { + return ModifiedTableCell(record, "clueDealTaskCount"); + }, + }, + { + title: "首客试驾成交(台)", + width: 100, + dataIndex: "testDriveTaskCount", + render: (text: string, record: API.TaskListItem) => { + return ModifiedTableCell(record, "testDriveTaskCount"); + }, + }, + { + title: "攻坚车任务(台)", + width: 100, + dataIndex: "tackCarTaskCount", + render: (text: string, record: API.TaskListItem) => { + return ModifiedTableCell(record, "tackCarTaskCount"); + }, + }, + { + title: "车系任务(台)", + width: 100, + dataIndex: "seriesTaskCount", + render: (text: string, record: API.TaskListItem) => { + if (record.dataId === -999) return text; + return handlePreviewSeriesTask(record)}>{text}; + }, + }, + ]; + + const extraColumns: ColumnsType = [ + { + title: "销顾任务", + render: (text: string, record: API.TaskListItem) => { + if (record.dataId === -999) { + return "-"; + } + return handlePreviewAdviserTask(record)}>查看; + }, + }, + ]; + return ( - { - return record.dataName.startsWith(value.toString()); - }} - /> - { - return ModifiedTableCell(record, "taskCount"); - }} - /> - { - return ModifiedTableCell(record, "newEnergyTaskCount"); - }} - /> - { - return ModifiedTableCell(record, "fuelVehicleTaskCount"); - }} - /> - { - return ModifiedTableCell(record, "vehicleGrossProfitTask"); - }} - /> - { - return ModifiedTableCell(record, "clueDealTaskCount"); - }} - /> - { - return ModifiedTableCell(record, "testDriveTaskCount"); - }} - /> - { - return ModifiedTableCell(record, "tackCarTaskCount"); - }} - /> - { - if (record.dataId === -999) return text; - return ( - handlePreviewSeriesTask(record)}>{text} - ); - }} - /> - {type === OrderTaskApprovalType.门店维度 && ( - { - if (record.dataId === -999) return "-"; - return ( - handlePreviewAdviserTask(record)}>查看 - ); - }} - /> - )} -
+ />
); }; diff --git a/src/pages/order3/SaleTask/subpages/TaskEdit/components/AdviserTask.tsx b/src/pages/order3/SaleTask/subpages/TaskEdit/components/AdviserTask.tsx index 6e9afc7..b901440 100644 --- a/src/pages/order3/SaleTask/subpages/TaskEdit/components/AdviserTask.tsx +++ b/src/pages/order3/SaleTask/subpages/TaskEdit/components/AdviserTask.tsx @@ -121,30 +121,28 @@ export default function AdviserTask({ form }: AdviserTaskProps) { title: "线索到店成交(台)", width: 100, dataIndex: "clueDealTaskCount", - key: "clueDealTaskCount", }, { title: "首客试驾成交(台)", width: 100, dataIndex: "testDriveTaskCount", - key: "testDriveTaskCount", }, { title: "攻坚车任务(台)", width: 100, dataIndex: "tackCarTaskCount", - key: "tackCarTaskCount", }, { title: "车系任务(台)", width: 100, dataIndex: "seriesTaskCount", - key: "seriesTaskCount", }, + ]; + + const extraColumns: ColumnsType = [ { title: "操作", render: (text: string, record: API.StaffTaskItem) => { - if (isReadOnly) return "-"; return ( { @@ -174,7 +172,8 @@ export default function AdviserTask({ form }: AdviserTaskProps) { />