智慧教务系统
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

167 lines
3.7 KiB

import Mock from 'mockjs'
// 工资条列表Mock
Mock.mock(/\/adminapi\/salary\/payroll\/list/, 'get', {
code: 1,
msg: '操作成功',
data: {
'list|10': [{
'id|+1': 1,
'staff_id|1-100': 1,
'staff_name': '@cname',
'campus_name|1': ['海淀校区', '朝阳校区', '丰台校区'],
'salary_month': '2025-01',
'base_salary|3000-8000.2': 5000,
'full_attendance_days|20-24': 22,
'attendance|15-22.1': 20,
'work_salary|2000-7000.2': 4545.45,
'mgr_performance|0-1000.2': 500,
'performance_bonus|0-2000.2': 1000,
'other_subsidies|0-500.2': 200,
'deductions|0-200.2': 0,
'gross_salary|4000-10000.2': 6245.45,
'social_security|500-1200.2': 800,
'individual_income_tax|0-500.2': 125,
'net_salary|3000-9000.2': 5320.45,
'status|0-2': 1,
'created_at': '@datetime'
}],
total: 156,
page: 1,
limit: 10
}
})
// 工资条详情Mock
Mock.mock(/\/adminapi\/salary\/payroll\/info/, 'get', {
code: 1,
msg: '操作成功',
data: {
id: '@id',
staff_id: '@integer(1, 100)',
staff_name: '@cname',
campus_name: '海淀校区',
salary_month: '2025-01',
base_salary: 6000.00,
full_attendance_days: 22,
attendance: 20.5,
work_salary: 5590.91,
mgr_performance: 800.00,
performance_bonus: 1200.00,
other_subsidies: 300.00,
deductions: 100.00,
gross_salary: 7790.91,
social_security: 960.00,
individual_income_tax: 285.00,
net_salary: 6545.91,
status: 1,
remarks: '本月表现优秀,给予额外奖励',
created_at: '@datetime',
updated_at: '@datetime'
}
})
// 创建工资条Mock
Mock.mock(/\/adminapi\/salary\/payroll\/add/, 'post', {
code: 1,
msg: '添加成功',
data: {
id: '@id'
}
})
// 更新工资条Mock
Mock.mock(/\/adminapi\/salary\/payroll\/edit/, 'post', {
code: 1,
msg: '更新成功',
data: null
})
// 删除工资条Mock
Mock.mock(/\/adminapi\/salary\/payroll\/delete/, 'post', {
code: 1,
msg: '删除成功',
data: null
})
// 导入工资条Mock
Mock.mock(/\/adminapi\/salary\/payroll\/import/, 'post', {
code: 1,
msg: '导入成功',
data: {
success_count: 25,
error_count: 2,
error_list: [
{ row: 3, error: '员工不存在' },
{ row: 8, error: '校区信息错误' }
]
}
})
// 导出工资条Mock
Mock.mock(/\/adminapi\/salary\/payroll\/export/, 'get', {
code: 1,
msg: '导出成功',
data: 'blob_data_here'
})
// 统计摘要Mock
Mock.mock(/\/adminapi\/salary\/statistics\/summary/, 'get', {
code: 1,
msg: '操作成功',
data: {
total_staff: 65,
total_amount: 445480.70,
average_salary: 6853.55,
cost_rate: 78.5
}
})
// 趋势数据Mock
Mock.mock(/\/adminapi\/salary\/statistics\/trend/, 'get', {
code: 1,
msg: '操作成功',
data: {
'months|12': [{
'month': '@date("yyyy-MM")',
'total_amount|30000-50000.2': 40000,
'average_salary|6000-8000.2': 7000,
'staff_count|50-80': 65
}]
}
})
// 员工列表Mock
Mock.mock(/\/adminapi\/personnel\/list/, 'get', {
code: 1,
msg: '操作成功',
data: {
'list|50': [{
'id|+1': 1,
'name': '@cname',
'campus_id|1-3': 1,
'campus_name|1': ['海淀校区', '朝阳校区', '丰台校区'],
'department': '@ctitle(2, 4)',
'position': '@ctitle(3, 6)',
'status|0-1': 1
}]
}
})
// 校区列表Mock
Mock.mock(/\/adminapi\/campus\/list/, 'get', {
code: 1,
msg: '操作成功',
data: {
'list|5': [{
'id|+1': 1,
'name|1': ['海淀校区', '朝阳校区', '丰台校区', '昌平校区', '大兴校区'],
'address': '@county(true)',
'manager': '@cname',
'phone': /^1[3-9]\d{9}$/,
'status|0-1': 1
}]
}
})
export default {}