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
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 {}
|