import { axiosInstance } from './client';
import type {
OptimizationMove,
OptimizationMoveCreate,
OptimizationMoveUpdate,
} from '../types';
const baseUrl = '/api/company';
export async function getOptimizationMoves(
companyId: string,
params?: { status?: string }
): Promise<OptimizationMove[]> {
const response = await axiosInstance.get(`${baseUrl}/${companyId}/optimization-moves`, { params });
return response.data.optimization_moves;
}
export async function createOptimizationMove(
companyId: string,
data: OptimizationMoveCreate
): Promise<OptimizationMove> {
const response = await axiosInstance.post(`${baseUrl}/${companyId}/optimization-moves`, data);
return response.data.optimization_move;
}
export async function updateOptimizationMove(
companyId: string,
moveId: string,
data: OptimizationMoveUpdate
): Promise<OptimizationMove> {
const response = await axiosInstance.put(`${baseUrl}/${companyId}/optimization-moves/${moveId}`, data);
return response.data.optimization_move;
}
export async function deleteOptimizationMove(
companyId: string,
moveId: string
): Promise<{ success: boolean }> {
const response = await axiosInstance.delete(`${baseUrl}/${companyId}/optimization-moves/${moveId}`);
return response.data;
}
export async function acceptOptimizationMove(
companyId: string,
moveId: string
): Promise<{ id: string; status: string }> {
const response = await axiosInstance.patch(`${baseUrl}/${companyId}/optimization-moves/${moveId}/accept`);
return response.data.optimization_move;
}
export async function rejectOptimizationMove(
companyId: string,
moveId: string
): Promise<{ id: string; status: string }> {
const response = await axiosInstance.patch(`${baseUrl}/${companyId}/optimization-moves/${moveId}/reject`);
return response.data.optimization_move;
}