Procházet zdrojové kódy

feat(api): align schedule/vehicle/team APIs with backend

xuyunhui před 1 týdnem
rodič
revize
47747c16dd
3 změnil soubory, kde provedl 39 přidání a 4 odebrání
  1. 18 2
      src/api/schedule.ts
  2. 14 0
      src/api/team.ts
  3. 7 2
      src/api/vehicle.ts

+ 18 - 2
src/api/schedule.ts

@@ -1,15 +1,31 @@
 import { get, post, put, del } from './request'
 
+export interface DispatchSchedule {
+  scheduleId?: number
+  teamId?: number
+  teamName?: string
+  workDate?: string
+  shiftType?: 'month_plan' | 'emergency' | string
+  vehicleIds?: string
+  staffIds?: string
+  status?: string
+  remark?: string
+}
+
 export function getScheduleList(year?: number, month?: number) {
   return get('/schedule/list', { year, month })
 }
 
+export function getSchedulesByDate(workDate: string) {
+  return get<DispatchSchedule[]>(`/schedule/date/${workDate}`)
+}
+
 export function getScheduleDetail(scheduleId: number) {
   return get(`/schedule/${scheduleId}`)
 }
 
-export function createSchedule(data: { taskId: number; staffId: number; scheduleDate: string; remark?: string }) {
-  return post('/schedule', data)
+export function createSchedule(data: DispatchSchedule) {
+  return post<number>('/schedule', data)
 }
 
 export function updateSchedule(scheduleId: number, data: Partial<{ status: string; remark: string }>) {

+ 14 - 0
src/api/team.ts

@@ -0,0 +1,14 @@
+import { get } from './request'
+
+export interface SimpleOption {
+  value: number
+  label: string
+}
+
+export function getTeamSimpleList() {
+  return get<SimpleOption[]>('/team/simple-list')
+}
+
+export function getTeamMembers(teamId: number) {
+  return get<Array<{ staffId: number; name: string }>>(`/team/${teamId}/members`)
+}

+ 7 - 2
src/api/vehicle.ts

@@ -1,11 +1,16 @@
 import { get, post, put, del } from './request'
 
+export interface SimpleOption {
+  value: number
+  label: string
+}
+
 export function getVehicleList(pageNum = 1, pageSize = 10) {
   return get('/vehicle/list', { pageNum, pageSize })
 }
 
-export function getAvailableVehicles() {
-  return get('/vehicle/available')
+export function getVehicleSimpleList() {
+  return get<SimpleOption[]>('/vehicle/simple-list')
 }
 
 export function getVehicleDetail(vehicleId: number) {