import type { AddInventoryRecordParams, BatchAddInventoryParams, BindEbikeParams, CompleteInspectionWorkParams, CompleteMaintainType, CurrentLocationType } from './types/operator'
import { http } from '@/http/http'

/**
 * 获取运营商列表
 */
export function getOperatorAllListAPI() {
  return http.get<any>('/staff/ebikeOperator/list')
}

/**
 * 添加库存
 */
export function addOperatorAPI(data: AddInventoryRecordParams) {
  return http.post<any>('/operations/ebikeInventory/addInventory', data)
}

/**
 * 库存总览
 */
export function getInventoryOverviewAPI() {
  return http.get<any>('/operations/ebikeInventory/list')
}

/**
 * 批量入库
 */
export function batchAddInventoryAPI(data: BatchAddInventoryParams) {
  return http.post<any>('/operations/ebikeEcuInfo/batchSave', data)
}

/**
 * 中控总览
 */
export function getEcuOverviewAPI() {
  return http.get<any>('/operations/ebikeEcuInfo/overview')
}

/**
 * 整车绑定
 */
export function bindEbikeAPI(data: BindEbikeParams) {
  return http.post<any>('/operations/ebikeBikeInfo/bind', data)
}

/**
 * 用户获取车辆详情
 */
export function getEbikeDetailAPI(bikeCode: string) {
  return http.get<any>(`/operations/ebikeBikeInfo/api/bikeInfo`, { bikeCode })
}

/**
 * 更换电池（换电工单用）
 */
export function postOperatoringChangeBatteryAPI(data: {
  bikeCode: string
  batteryCode: string
}) {
  return http.post<any>('/operations/ebikeBikeOrder/batteryChange', data)
}

/**
 *
车辆详情（工单用）
 */
export function getEbikeDetailForWorkAPI(bikeCode: string, orderType: any = '') {
  return http.get<any>(`/operations/ebikeBikeOrder/bikeInfo`, { bikeCode, orderType })
}

/**
 *
查询所有运营区域表
 */
export function getAllOperatorRegionAPI() {
  return http.get<any>(`/operations/ebikeRegion/list`)
}

/**
 *车辆列表（工单用）
 */
export function getEbikeListForWorkAPI(regionId: string) {
  return http.get<any>(`/operations/ebikeBikeOrder/bikeList`, { regionId })
}

/**
 *完成巡检工单
 */
export function completeInspectionWorkAPI(params: CompleteInspectionWorkParams) {
  return http.post<any>(`/operations/ebikeBikeOrder/doInspection`, params)
}

/**
 *获取当前定位的运营区
 */
export function getCurrentLocationRegionAPI(data: CurrentLocationType) {
  return http.post<any>(`/operations/ebikeBikeOrder/regionList`, data)
}

/**
 *完成维修工单
 */
export function completeMaintainWorkAPI(data: CompleteMaintainType) {
  return http.post<any>(`/operations/ebikeBikeOrder/doFault`, data)
}
