emp.js 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. /*
  2. * @Author: code4eat awesomedema@gmail.com
  3. * @Date: 2025-04-15 15:07:50
  4. * @LastEditors: code4eat awesomedema@gmail.com
  5. * @LastEditTime: 2025-04-15 15:48:45
  6. * @FilePath: /pfmBackMana/mock/emp.js
  7. * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
  8. */
  9. // mock/employees.js
  10. // 模拟的所有人员数据
  11. const allEmployees = [
  12. { id: 32, code: '0000032', name: '张晓艺' },
  13. { id: 33, code: '0000033', name: '王芬芬' },
  14. { id: 34, code: '0000034', name: '杨梦怡' },
  15. { id: 35, code: '0000035', name: '刘欣蓉' },
  16. { id: 36, code: '0000036', name: '张东霞' },
  17. { id: 37, code: '0000037', name: '李天薇' },
  18. { id: 38, code: '0000038', name: '王盼盼' },
  19. { id: 39, code: '0000039', name: '王明明' },
  20. { id: 40, code: '0000040', name: '柳飘飘' },
  21. { id: 41, code: '0000041', name: '李俊' },
  22. // 可根据需要增加更多数据用于分页
  23. ];
  24. export default {
  25. // 定义 GET 请求,路径为 /api/employees
  26. 'GET /api/manager/Employee/getEmpList': (req, res) => {
  27. const { page = 1, pageSize = 10, keywords = '' } = req.query;
  28. const pageNumber = parseInt(page, 10);
  29. const pageSizeNumber = parseInt(pageSize, 10);
  30. // 根据关键词过滤人员数据
  31. const filteredEmployees = allEmployees.filter((emp) => {
  32. return (
  33. emp.name.indexOf(keywords) !== -1 || emp.code.indexOf(keywords) !== -1
  34. );
  35. });
  36. const totalCount = filteredEmployees.length;
  37. const totalPage = Math.ceil(totalCount / pageSizeNumber);
  38. const startIndex = (pageNumber - 1) * pageSizeNumber;
  39. const list = filteredEmployees.slice(
  40. startIndex,
  41. startIndex + pageSizeNumber,
  42. );
  43. // 返回接口数据结构与前端预期一致
  44. res.json({
  45. status: 200,
  46. msg: 'success',
  47. data: {
  48. totalCount,
  49. pageSize: pageSizeNumber,
  50. totalPage,
  51. currPage: pageNumber,
  52. list,
  53. },
  54. });
  55. },
  56. };