vehicle-monitor/mock/data-analyse.ts

60 lines
1.9 KiB
TypeScript
Raw Normal View History

2025-05-24 13:52:02 +08:00
import { defineFakeRoute } from 'vite-plugin-fake-server';
const randomNumber = (range: number = 100) => {
return parseInt((Math.random() * range).toFixed(0));
};
const BASE_URL = '/mock/data-analyse';
export default defineFakeRoute([
// 销售设备总量
{
url: `${BASE_URL}/device-sales-stats`,
method: 'GET',
response: () => ({
code: 200,
data: {
// 销售设备总量
totalDeviceSales: randomNumber(9999),
// 环比去年增长,如 "+15.2%"
yearlyGrowthRate: randomNumber(),
},
message: '操作成功',
}),
},
// 销售公司销售设备数量占比
{
url: `${BASE_URL}/company-sales-distribution`,
method: 'GET',
response: () => ({
code: 200,
data: [
{ name: '科技有限公司', amount: randomNumber(999999), percent: randomNumber() },
{ name: '科技有限公司', amount: randomNumber(999999), percent: randomNumber() },
{ name: '科技有限公司', amount: randomNumber(999999), percent: randomNumber() },
{ name: '科技有限公司', amount: randomNumber(999999), percent: randomNumber() },
{ name: '科技有限公司', amount: randomNumber(999999), percent: randomNumber() },
],
message: '操作成功',
}),
},
// 品牌占有率
{
url: `${BASE_URL}/brands-distribution`,
method: 'GET',
response: () => ({
code: 200,
data: [
{ value: randomNumber(), name: '品牌A' },
{ value: randomNumber(), name: '品牌B' },
{ value: randomNumber(), name: '品牌C' },
{ value: randomNumber(), name: '品牌D' },
{ value: randomNumber(), name: '品牌E' },
{ value: randomNumber(), name: '品牌F' },
{ value: randomNumber(), name: '品牌G' },
{ value: randomNumber(), name: '品牌H' },
],
message: '操作成功',
}),
},
]);