Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
 
 

164 Zeilen
3.6 KiB

  1. import { WildCard } from "@/app/utils/commonUtil";
  2. import { records } from "../staff/actions";
  3. export interface FinancialStatusReportFilter {
  4. project: string[];
  5. }
  6. // - Project P&L Report
  7. export interface ProjectPandLReportFilter {
  8. project: AutocompleteOptions[];
  9. startMonth: string;
  10. startMonthTo: string;
  11. }
  12. export interface ProjectPandLReportRequest {
  13. projectId: number;
  14. startMonth: string;
  15. endMonth: string;
  16. }
  17. // - Project Cash Flow Report
  18. interface AutocompleteOptions {
  19. value: number | string;
  20. label: string;
  21. group?: string;
  22. }
  23. export interface ProjectCashFlowReportFilter {
  24. project: AutocompleteOptions[];
  25. dateType: string[];
  26. }
  27. export interface ProjectCashFlowReportRequest {
  28. projectId: number;
  29. dateType: string;
  30. }
  31. // - Project Potential Delay Report
  32. export interface ProjectPotentialDelayReportFilter {
  33. team: string[];
  34. client: AutocompleteOptions[];
  35. daysUntilCurrentStageEnd: number;
  36. resourceUtilizationPercentage: number;
  37. }
  38. export interface ProjectPotentialDelayReportRequest {
  39. teamId: number | "All";
  40. clientId: number | "All";
  41. daysUntilCurrentStageEnd: number;
  42. resourceUtilizationPercentage: number;
  43. type: string;
  44. }
  45. // - Monthly Work Hours Report
  46. export interface MonthlyWorkHoursReportFilter {
  47. staff: string[];
  48. date: string;
  49. }
  50. export interface MonthlyWorkHoursReportRequest {
  51. id: number;
  52. yearMonth: string;
  53. holidays: String[];
  54. }
  55. // - Project Resource Overconsumption Report
  56. export interface ProjectResourceOverconsumptionReportFilter {
  57. team: string[];
  58. customer: string[];
  59. status: string[];
  60. lowerLimit: number;
  61. }
  62. export interface ProjectResourceOverconsumptionReportRequest extends WildCard {
  63. teamId?: number
  64. custId?: number
  65. subsidiaryId?: number
  66. status: "All" | "Within Budget" | "Potential Overconsumption" | "Overconsumption"
  67. lowerLimit: number
  68. }
  69. export interface LateStartReportFilter {
  70. remainedDays: number;
  71. overdueDays: number;
  72. team: string[];
  73. }
  74. export interface LateStartReportRequest {
  75. teamId: number;
  76. clientId: number;
  77. remainedDate: string;
  78. remainedDateTo: string;
  79. type: string;
  80. }
  81. export interface ProjectCompletionReportFilter {
  82. startDate: String;
  83. startDateTo: String;
  84. outstanding: String;
  85. }
  86. export interface ProjectCompletionReportRequest {
  87. startDate: String;
  88. endDate: String;
  89. outstanding: Boolean;
  90. teamId?: number
  91. }
  92. export interface CostAndExpenseReportFilter {
  93. team: string[];
  94. customer: string[];
  95. budgetPercentage: number;
  96. }
  97. export interface CostAndExpenseReportRequest {
  98. teamId: number | null;
  99. clientId: number | null;
  100. budgetPercentage: number | null;
  101. type: string;
  102. }
  103. // - Cross Team Charge Report
  104. export interface CrossTeamChargeReportFilter {
  105. month: string;
  106. team: string[];
  107. }
  108. export interface CrossTeamChargeReportRequest {
  109. month: string;
  110. teamId: number | "All";
  111. }
  112. export interface ProjectManhourSummaryReportFilter {
  113. teamId: number;
  114. startDate: string;
  115. endDate: string;
  116. }
  117. export interface ProjectManhourSummaryReportRequest {
  118. teamId: number;
  119. startDate: string;
  120. endDate: string;
  121. }
  122. export interface ProjectMonthlyReportRequest {
  123. projectId: number;
  124. yearMonth: string;
  125. holidays: String[];
  126. }
  127. export interface ProjectMonthlyReportFilter {
  128. projects: string[];
  129. date: string;
  130. }
  131. export interface LastModifiedReportFilter {
  132. date: string;
  133. dayRange: number;
  134. }
  135. export interface LastModifiedReportRequest {
  136. dateString: string;
  137. dayRange: number;
  138. }
  139. export interface ExportCurrentStaffInfoRequest {
  140. staffIds: number[];
  141. }