129 lines
3.6 KiB
JavaScript
129 lines
3.6 KiB
JavaScript
import Mock from 'mockjs'
|
|
|
|
// 模拟经销商数据
|
|
const dealershipData = Mock.mock({
|
|
'list|20': [{
|
|
'id|+1': 1,
|
|
'dealershipName|1': ['销售演示-上汽', '售后演示', 'DCC演示', '销售演示-奔驰', '销售演示-比亚迪', '销售演示-宝马', '销售演示-奥迪', '销售演示-丰田', '销售演示-本田', '销售演示-日产'],
|
|
'dealershipCode': function() {
|
|
const codes = ['XS001', 'SH001', 'DCC001', 'BC001', 'BYD001', 'BMW001', 'AUDI001', 'TOYOTA001', 'HONDA001', 'NISSAN001']
|
|
return codes[this.id - 1] || 'DS' + Mock.Random.string('number', 3)
|
|
},
|
|
'remainingHours|1': [-36.31, -55.44, -4.58, 9809.16, 9959.56, 5000, -100, 2000, -50, 8000],
|
|
'salesCount|5-20': 1,
|
|
'avgRecordings|1-10': 1,
|
|
'avgRecordingDuration|10-80.2-2': 1,
|
|
'region|1': ['', '华东', '华南', '华北', '华中', '西南', '西北', '东北'],
|
|
'groupName|1': ['', '默认', '销售组', '售后组', 'DCC组'],
|
|
'language|1': ['普通话', '上海话', '粤语', '英语'],
|
|
'dealershipType|1': ['售前', '售后', '销售'],
|
|
'status|1': [true, false]
|
|
}]
|
|
})
|
|
|
|
// 模拟经销商列表查询
|
|
Mock.mock(/\/dealership\/list/, 'get', (options) => {
|
|
const params = new URLSearchParams(options.url.split('?')[1])
|
|
const current = parseInt(params.get('current')) || 1
|
|
const size = parseInt(params.get('size')) || 20
|
|
const dealershipName = params.get('dealershipName')
|
|
const dealershipCode = params.get('dealershipCode')
|
|
const region = params.get('region')
|
|
const status = params.get('status')
|
|
|
|
let filteredData = dealershipData.list
|
|
|
|
// 根据条件过滤
|
|
if (dealershipName) {
|
|
filteredData = filteredData.filter(item => item.dealershipName.includes(dealershipName))
|
|
}
|
|
|
|
if (dealershipCode) {
|
|
filteredData = filteredData.filter(item => item.dealershipCode.includes(dealershipCode))
|
|
}
|
|
|
|
if (region) {
|
|
filteredData = filteredData.filter(item => item.region === region)
|
|
}
|
|
|
|
if (status !== null && status !== undefined && status !== '') {
|
|
filteredData = filteredData.filter(item => item.status === (status === 'true'))
|
|
}
|
|
|
|
const start = (current - 1) * size
|
|
const end = start + size
|
|
const pageData = filteredData.slice(start, end)
|
|
|
|
return {
|
|
success: true,
|
|
message: '查询成功',
|
|
total: filteredData.length,
|
|
current: current,
|
|
pages: Math.ceil(filteredData.length / size),
|
|
data: pageData,
|
|
size: size
|
|
}
|
|
})
|
|
|
|
// 模拟添加经销商
|
|
Mock.mock('/dealership/add', 'post', () => {
|
|
return {
|
|
success: true,
|
|
message: '经销商添加成功'
|
|
}
|
|
})
|
|
|
|
// 模拟更新经销商
|
|
Mock.mock('/dealership/update', 'put', () => {
|
|
return {
|
|
success: true,
|
|
message: '经销商信息更新成功'
|
|
}
|
|
})
|
|
|
|
// 模拟删除经销商
|
|
Mock.mock(/\/dealership\/delete\/\d+/, 'delete', () => {
|
|
return {
|
|
success: true,
|
|
message: '经销商删除成功'
|
|
}
|
|
})
|
|
|
|
// 模拟根据ID查询经销商
|
|
Mock.mock(/\/dealership\/get\/\d+/, 'get', () => {
|
|
return {
|
|
success: true,
|
|
message: '查询成功',
|
|
data: dealershipData.list[0]
|
|
}
|
|
})
|
|
|
|
// 模拟根据经销商代码查询
|
|
Mock.mock(/\/dealership\/getByCode/, 'get', () => {
|
|
return {
|
|
success: true,
|
|
message: '查询成功',
|
|
data: dealershipData.list.slice(0, 3),
|
|
count: 3
|
|
}
|
|
})
|
|
|
|
// 模拟批量删除经销商
|
|
Mock.mock('/dealership/batchDelete', 'delete', () => {
|
|
return {
|
|
success: true,
|
|
message: '批量删除成功,共删除 3 条记录'
|
|
}
|
|
})
|
|
|
|
// 模拟获取经销商统计信息
|
|
Mock.mock('/dealership/statistics', 'get', () => {
|
|
return {
|
|
success: true,
|
|
message: '统计信息获取成功',
|
|
data: {
|
|
totalDealerships: 20
|
|
}
|
|
}
|
|
})
|