import api from './index' import type { BorrowRecord, PaginatedResponse, ApiResponse, EquipmentStatus, StorageLocation } from '@/types' export interface ScanBorrowResult { id: number equipment_code: string equipment_name: string borrow_time: string status: string remaining_quantity?: number equipment_status?: EquipmentStatus storage_location_id?: number | null storageLocation?: StorageLocation | null } // 借用设备 export const borrowEquipment = async (data: { equipment_id?: number equipment_code?: string person_id: number expected_return_time?: string notes?: string is_long_term?: boolean }) => { const response = await api.post>('/borrow', data) return response.data } // 扫码出库 export const scanBorrow = async (data: { equipment_code: string person_id: number expected_return_time?: string notes?: string is_long_term?: boolean }) => { const response = await api.post>('/borrow/scan', data) return response.data } // 批量扫码出库 export const scanBorrowBatch = async (data: { equipment_codes: string[] person_id: number expected_return_time?: string notes?: string is_long_term?: boolean }) => { const response = await api.post }>>('/borrow/scan-batch', data) return response.data } // 归还设备 export const returnEquipment = async (data: { equipment_id: number equipment_code: string return_condition?: string notes?: string }) => { const response = await api.post>('/return', data) return response.data } // 扫码入库 export const scanReturn = async (data: { equipment_code: string return_condition?: string notes?: string person_id?: number borrow_record_id?: number }) => { const response = await api.post< ApiResponse<{ id: number equipment_code: string equipment_name: string return_time: string status: string person_id?: number }> >('/return/scan', data) return response.data } // 批量扫码入库 export const scanReturnBatch = async (data: { equipment_codes: string[] return_condition?: string notes?: string }) => { const response = await api.post }>>('/return/scan-batch', data) return response.data } // 根据设备编码查询借用记录 export const getBorrowRecordByCode = async (equipmentCode: string) => { const response = await api.get>(`/borrow/scan/${equipmentCode}`) return response.data } // 获取借用记录列表 export const getBorrowRecordList = async (params: { page?: number pageSize?: number status?: string person_name?: string person_id?: number }) => { const response = await api.get>>('/borrow/records', { params }) return response.data }