import apiClient from './index'; import type { Grid } from './types'; /** * DTO for updating a grid's core properties. * This should align with GridUpdateRequest in the backend. */ export interface GridUpdateRequest { isObstacle?: boolean; description?: string; } /** * 更新网格信息 * @param gridId - 要更新的网格ID * @param data - 包含更新数据的对象 * @returns 更新后的网格对象 */ export const updateGrid = (gridId: number, data: GridUpdateRequest): Promise => { return apiClient.patch(`/grids/${gridId}`, data); }; /** * 通过坐标将网格员分配到网格 * @param gridX - 网格X坐标 * @param gridY - 网格Y坐标 * @param userId - 要分配的用户ID * @returns 成功则返回void */ export const assignWorkerByCoordinates = (gridX: number, gridY: number, userId: number): Promise => { return apiClient.post(`/grids/coordinates/${gridX}/${gridY}/assign`, { userId }); }; /** * 通过坐标从网格中移除网格员 * @param gridX - 网格X坐标 * @param gridY - 网格Y坐标 * @returns 成功则返回void */ export const unassignWorkerByCoordinates = (gridX: number, gridY: number): Promise => { return apiClient.post(`/grids/coordinates/${gridX}/${gridY}/unassign`); };