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.
 
 

63 lines
1.7 KiB

  1. import React from "react";
  2. import EditStaff, { comboItem } from "./EditStaff";
  3. import EditStaffLoading from "./EditStaffLoading";
  4. import { StaffResult, fetchIndivStaff, fetchStaff, fetchTeamLeads, preloadStaff } from "@/app/api/staff";
  5. import { useSearchParams } from "next/navigation";
  6. import { fetchTeamCombo } from "@/app/api/team/actions";
  7. import { fetchDepartmentCombo } from "@/app/api/departments/actions";
  8. import { fetchPositionCombo } from "@/app/api/positions/actions";
  9. import { fetchGradeCombo } from "@/app/api/grades/actions";
  10. import { fetchSkillCombo } from "@/app/api/skill/actions";
  11. import { fetchSalaryCombo } from "@/app/api/salarys/actions";
  12. import { fetchCompanyCombo } from "@/app/api/companys/actions";
  13. interface SubComponents {
  14. Loading: typeof EditStaffLoading;
  15. }
  16. interface Props {
  17. id: number
  18. }
  19. const EditStaffWrapper: React.FC<Props> & SubComponents = async ({
  20. id
  21. }) => {
  22. preloadStaff()
  23. const [
  24. Staff,
  25. CompanyCombo,
  26. TeamCombo,
  27. DepartmentCombo,
  28. PositionCombo,
  29. GradeCombo,
  30. SkillCombo,
  31. SalaryCombo,
  32. ] = await Promise.all([
  33. fetchIndivStaff(id),
  34. fetchCompanyCombo(),
  35. fetchTeamCombo(),
  36. fetchDepartmentCombo(),
  37. fetchPositionCombo(),
  38. fetchGradeCombo(),
  39. fetchSkillCombo(),
  40. fetchSalaryCombo(),
  41. ]);
  42. const combos: comboItem = {
  43. company: CompanyCombo.records,
  44. team: TeamCombo.records,
  45. department: DepartmentCombo.records,
  46. position: PositionCombo.records,
  47. grade: GradeCombo.records,
  48. skill: SkillCombo.records,
  49. salary: SalaryCombo.records,
  50. }
  51. console.log(Staff.data)
  52. return <EditStaff Staff={Staff.data} combos={combos}/>;
  53. };
  54. EditStaffWrapper.Loading = EditStaffLoading;
  55. export default EditStaffWrapper;