|
|
@@ -57,123 +57,305 @@ const {
|
|
|
fetchTableData,
|
|
|
} = useBsTable({
|
|
|
tableOptions: {
|
|
|
- url: '/supports/customer/queryPage',
|
|
|
+ // url: '/supports/customer/queryPage',
|
|
|
gridOptions: {
|
|
|
height: 600,
|
|
|
loading: false,
|
|
|
data: [],
|
|
|
columns: [
|
|
|
- // {
|
|
|
- // type: 'seq',
|
|
|
- // width: 80,
|
|
|
- // },
|
|
|
-
|
|
|
{
|
|
|
- field: 'customerName',
|
|
|
+ type: 'seq',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ field: 'projectName',
|
|
|
title: '项目名称',
|
|
|
width: 200,
|
|
|
},
|
|
|
{
|
|
|
- field: 'customerId',
|
|
|
+ field: 'projectCode',
|
|
|
title: '项目ID',
|
|
|
width: 100,
|
|
|
},
|
|
|
{
|
|
|
- field: '',
|
|
|
+ field: 'projectStatus',
|
|
|
title: '项目状态',
|
|
|
width: 100,
|
|
|
},
|
|
|
{
|
|
|
- field: '',
|
|
|
+ field: 'totalContractAmount',
|
|
|
title: '合同总金额(元)',
|
|
|
width: 150,
|
|
|
},
|
|
|
{
|
|
|
- field: '',
|
|
|
+ field: 'paidAmount',
|
|
|
title: '已回款总金额(元)',
|
|
|
width: 150,
|
|
|
},
|
|
|
{
|
|
|
- field: '',
|
|
|
+ field: 'paidPercentage',
|
|
|
title: '已回款比例(%)',
|
|
|
width: 150,
|
|
|
},
|
|
|
{
|
|
|
- field: '',
|
|
|
+ field: 'unpaidAmount',
|
|
|
title: '未回款总金额(元)',
|
|
|
width: 150,
|
|
|
},
|
|
|
{
|
|
|
- field: '',
|
|
|
+ field: 'invoicedAmount',
|
|
|
title: '已开票总金额(元)',
|
|
|
width: 150,
|
|
|
},
|
|
|
{
|
|
|
- field: '',
|
|
|
+ field: 'uninvoicedAmount',
|
|
|
title: '未开票总金额(元)',
|
|
|
width: 150,
|
|
|
},
|
|
|
{
|
|
|
- field: '',
|
|
|
+ field: 'penaltyAmount',
|
|
|
title: '罚款总金额(元)',
|
|
|
width: 150,
|
|
|
},
|
|
|
{
|
|
|
- field: '',
|
|
|
+ field: 'visualProgress',
|
|
|
title: '形象进度(%)',
|
|
|
width: 150,
|
|
|
},
|
|
|
{
|
|
|
- field: '',
|
|
|
+ field: 'contractProgress',
|
|
|
title: '合同进度(%)',
|
|
|
width: 150,
|
|
|
},
|
|
|
{
|
|
|
- field: '',
|
|
|
+ field: 'outputValueProgress',
|
|
|
title: '产值进度(%)',
|
|
|
width: 150,
|
|
|
},
|
|
|
{
|
|
|
- field: 'id',
|
|
|
+ field: 'projectCategory',
|
|
|
title: '项目类型',
|
|
|
width: 150,
|
|
|
},
|
|
|
{
|
|
|
- field: '',
|
|
|
+ field: 'projectSource',
|
|
|
title: '项目来源',
|
|
|
width: 150,
|
|
|
},
|
|
|
{
|
|
|
- field: 'customerType',
|
|
|
+ field: 'serviceProvider',
|
|
|
title: '参与服务商',
|
|
|
width: 150,
|
|
|
- cellRender: {
|
|
|
- name: 'CellDict',
|
|
|
- },
|
|
|
+ slots: {
|
|
|
+ default({ row, column }) {
|
|
|
+ return <span>{row?.serviceProvider?.name}</span>;
|
|
|
+ },
|
|
|
+ },
|
|
|
},
|
|
|
{
|
|
|
- field: 'customerSource',
|
|
|
+ field: 'providerContact',
|
|
|
title: '参与服务商电话',
|
|
|
width: 150,
|
|
|
- cellRender: {
|
|
|
- name: 'CellDict',
|
|
|
- },
|
|
|
+ slots: {
|
|
|
+ default({ row, column }) {
|
|
|
+ return <span>{row?.providerContact?.name}</span>;
|
|
|
+ },
|
|
|
+ },
|
|
|
},
|
|
|
{
|
|
|
- field: 'belongRegion',
|
|
|
+ field: 'salesOwner',
|
|
|
title: '归属营销人员',
|
|
|
width: 150,
|
|
|
},
|
|
|
{
|
|
|
- field: 'customerGrade',
|
|
|
+ field: 'salesDepartment',
|
|
|
title: '归属营销部门',
|
|
|
width: 150,
|
|
|
- cellRender: {
|
|
|
- name: 'CellDict',
|
|
|
- },
|
|
|
+ slots: {
|
|
|
+ default({ row, column }) {
|
|
|
+ return <span>{row?.salesDepartment?.name}</span>;
|
|
|
+ },
|
|
|
+ },
|
|
|
},
|
|
|
],
|
|
|
},
|
|
|
+ data:[
|
|
|
+ {
|
|
|
+ id: 'PERF20230001',
|
|
|
+ projectName: '智慧城市数据中心项目',
|
|
|
+ projectCode: 'DC-2023-001',
|
|
|
+ projectStatus: '交付中',
|
|
|
+ totalContractAmount: 28500000,
|
|
|
+ paidAmount: 8550000,
|
|
|
+ paidPercentage: 30,
|
|
|
+ unpaidAmount: 19950000,
|
|
|
+ invoicedAmount: 11400000,
|
|
|
+ uninvoicedAmount: 17100000,
|
|
|
+ penaltyAmount: 150000,
|
|
|
+ visualProgress: 45,
|
|
|
+ contractProgress: 50,
|
|
|
+ outputValueProgress: 40,
|
|
|
+ projectCategory: '新基建',
|
|
|
+ projectSource: '政府招标',
|
|
|
+ serviceProvider: { code: 'SP001', name: 'XX建设集团' },
|
|
|
+ providerContact: { code: 'PC001', name: '13800138001' },
|
|
|
+ salesOwner: '张经理',
|
|
|
+ salesDepartment: { code: 'SD001', name: '华北营销部' }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id: 'PERF20230002',
|
|
|
+ projectName: '新能源充电桩工程',
|
|
|
+ projectCode: 'EV-2023-002',
|
|
|
+ projectStatus: '质保中',
|
|
|
+ totalContractAmount: 15200000,
|
|
|
+ paidAmount: 10640000,
|
|
|
+ paidPercentage: 70,
|
|
|
+ unpaidAmount: 4560000,
|
|
|
+ invoicedAmount: 12160000,
|
|
|
+ uninvoicedAmount: 3040000,
|
|
|
+ penaltyAmount: 0,
|
|
|
+ visualProgress: 100,
|
|
|
+ contractProgress: 100,
|
|
|
+ outputValueProgress: 100,
|
|
|
+ projectCategory: '新能源',
|
|
|
+ projectSource: '企业合作',
|
|
|
+ serviceProvider: { code: 'SP002', name: 'XX电力工程' },
|
|
|
+ providerContact: { code: 'PC002', name: '13800138002' },
|
|
|
+ salesOwner: '李主管',
|
|
|
+ salesDepartment: { code: 'SD002', name: '华东营销部' }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id: 'PERF20230003',
|
|
|
+ projectName: '医疗云平台升级',
|
|
|
+ projectCode: 'MED-2023-003',
|
|
|
+ projectStatus: '交付中',
|
|
|
+ totalContractAmount: 9800000,
|
|
|
+ paidAmount: 3920000,
|
|
|
+ paidPercentage: 40,
|
|
|
+ unpaidAmount: 5880000,
|
|
|
+ invoicedAmount: 4900000,
|
|
|
+ uninvoicedAmount: 4900000,
|
|
|
+ penaltyAmount: 50000,
|
|
|
+ visualProgress: 65,
|
|
|
+ contractProgress: 60,
|
|
|
+ outputValueProgress: 55,
|
|
|
+ projectCategory: '医疗信息化',
|
|
|
+ projectSource: '医疗机构',
|
|
|
+ serviceProvider: { code: 'SP003', name: 'XX科技公司' },
|
|
|
+ providerContact: { code: 'PC003', name: '13800138003' },
|
|
|
+ salesOwner: '王总监',
|
|
|
+ salesDepartment: { code: 'SD003', name: '华南营销部' }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id: 'PERF20230004',
|
|
|
+ projectName: '高校智慧校园建设',
|
|
|
+ projectCode: 'EDU-2023-004',
|
|
|
+ projectStatus: '已关闭',
|
|
|
+ totalContractAmount: 12500000,
|
|
|
+ paidAmount: 12500000,
|
|
|
+ paidPercentage: 100,
|
|
|
+ unpaidAmount: 0,
|
|
|
+ invoicedAmount: 12500000,
|
|
|
+ uninvoicedAmount: 0,
|
|
|
+ penaltyAmount: 0,
|
|
|
+ visualProgress: 100,
|
|
|
+ contractProgress: 100,
|
|
|
+ outputValueProgress: 100,
|
|
|
+ projectCategory: '教育信息化',
|
|
|
+ projectSource: '公开招标',
|
|
|
+ serviceProvider: { code: 'SP004', name: 'XX教育科技' },
|
|
|
+ providerContact: { code: 'PC004', name: '13800138004' },
|
|
|
+ salesOwner: '赵经理',
|
|
|
+ salesDepartment: { code: 'SD004', name: '华中营销部' }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id: 'PERF20230005',
|
|
|
+ projectName: '工业4.0智能工厂',
|
|
|
+ projectCode: 'IND-2023-005',
|
|
|
+ projectStatus: '交付中',
|
|
|
+ totalContractAmount: 45000000,
|
|
|
+ paidAmount: 22500000,
|
|
|
+ paidPercentage: 50,
|
|
|
+ unpaidAmount: 22500000,
|
|
|
+ invoicedAmount: 27000000,
|
|
|
+ uninvoicedAmount: 18000000,
|
|
|
+ penaltyAmount: 200000,
|
|
|
+ visualProgress: 75,
|
|
|
+ contractProgress: 80,
|
|
|
+ outputValueProgress: 70,
|
|
|
+ projectCategory: '工业自动化',
|
|
|
+ projectSource: '战略客户',
|
|
|
+ serviceProvider: { code: 'SP005', name: 'XX智能制造' },
|
|
|
+ providerContact: { code: 'PC005', name: '13800138005' },
|
|
|
+ salesOwner: '陈主管',
|
|
|
+ salesDepartment: { code: 'SD005', name: '西南营销部' }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id: 'PERF20230006',
|
|
|
+ projectName: '跨境电商物流中心',
|
|
|
+ projectCode: 'LOG-2023-006',
|
|
|
+ projectStatus: '交付中',
|
|
|
+ totalContractAmount: 18600000,
|
|
|
+ paidAmount: 13020000,
|
|
|
+ paidPercentage: 70,
|
|
|
+ unpaidAmount: 5580000,
|
|
|
+ invoicedAmount: 14880000,
|
|
|
+ uninvoicedAmount: 3720000,
|
|
|
+ penaltyAmount: 100000,
|
|
|
+ visualProgress: 85,
|
|
|
+ contractProgress: 90,
|
|
|
+ outputValueProgress: 80,
|
|
|
+ projectCategory: '物流自动化',
|
|
|
+ projectSource: '电商平台',
|
|
|
+ serviceProvider: { code: 'SP006', name: 'XX物流科技' },
|
|
|
+ providerContact: { code: 'PC006', name: '13800138006' },
|
|
|
+ salesOwner: '马总监',
|
|
|
+ salesDepartment: { code: 'SD006', name: '浙江分公司' }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id: 'PERF20230007',
|
|
|
+ projectName: '5G基站配套工程',
|
|
|
+ projectCode: 'TEL-2023-007',
|
|
|
+ projectStatus: '质保中',
|
|
|
+ totalContractAmount: 8500000,
|
|
|
+ paidAmount: 8500000,
|
|
|
+ paidPercentage: 100,
|
|
|
+ unpaidAmount: 0,
|
|
|
+ invoicedAmount: 8500000,
|
|
|
+ uninvoicedAmount: 0,
|
|
|
+ penaltyAmount: 0,
|
|
|
+ visualProgress: 100,
|
|
|
+ contractProgress: 100,
|
|
|
+ outputValueProgress: 100,
|
|
|
+ projectCategory: '通信基建',
|
|
|
+ projectSource: '框架协议',
|
|
|
+ serviceProvider: { code: 'SP007', name: 'XX通信工程' },
|
|
|
+ providerContact: { code: 'PC007', name: '13800138007' },
|
|
|
+ salesOwner: '徐经理',
|
|
|
+ salesDepartment: { code: 'SD007', name: '江苏办事处' }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id: 'PERF20230008',
|
|
|
+ projectName: '金融数据中心',
|
|
|
+ projectCode: 'FIN-2023-008',
|
|
|
+ projectStatus: '已关闭',
|
|
|
+ totalContractAmount: 32000000,
|
|
|
+ paidAmount: 32000000,
|
|
|
+ paidPercentage: 100,
|
|
|
+ unpaidAmount: 0,
|
|
|
+ invoicedAmount: 32000000,
|
|
|
+ uninvoicedAmount: 0,
|
|
|
+ penaltyAmount: 0,
|
|
|
+ visualProgress: 100,
|
|
|
+ contractProgress: 100,
|
|
|
+ outputValueProgress: 100,
|
|
|
+ projectCategory: '金融科技',
|
|
|
+ projectSource: '定向邀标',
|
|
|
+ serviceProvider: { code: 'SP008', name: 'XX金融科技' },
|
|
|
+ providerContact: { code: 'PC008', name: '13800138008' },
|
|
|
+ salesOwner: '刘经理',
|
|
|
+ salesDepartment: { code: 'SD008', name: '深圳办事处' }
|
|
|
+ }
|
|
|
+ ],
|
|
|
searchConfig: {
|
|
|
enabled: true,
|
|
|
fieldSpan: 4,
|
|
|
@@ -208,9 +390,9 @@ const updateTabsCount = (counts) => {
|
|
|
};
|
|
|
|
|
|
const updateHeaderInfo = async () => {
|
|
|
- const headerInfo = await fetchTotalHeader();
|
|
|
- const { customerQuantity, customerAuditQuantity, customerInvalidQuantity, customerValidQuantity } = headerInfo.data;
|
|
|
- updateTabsCount([customerQuantity, customerAuditQuantity, customerInvalidQuantity, customerValidQuantity]);
|
|
|
+ // const headerInfo = await fetchTotalHeader();
|
|
|
+ // const { customerQuantity, customerAuditQuantity, customerInvalidQuantity, customerValidQuantity } = headerInfo.data;
|
|
|
+ // updateTabsCount([customerQuantity, customerAuditQuantity, customerInvalidQuantity, customerValidQuantity]);
|
|
|
};
|
|
|
|
|
|
watch(activeKey, () => {
|