songshankun
2023-11-02 7e7424b2662e5b27dcc1c0d37f43e909e0b15ee1
src/api/index.ts
@@ -1,5 +1,7 @@
import { request } from '@/common/utils'
import type { TasksResponse } from './task'
import type { CraftParamsResponse, TasksGroupByChannel } from './task'
import type { PLCResponse } from './plc'
import type { Devices } from './device'
export interface BaseResponse<T = any> {
  code: number
@@ -7,16 +9,99 @@
  msg: string
}
export interface TaskListParams {
  /** 1未完成2今天未完成3已完成 */
  type: 1 | 2 | 3
  /** 通道号 不传查所有通道的 */
  channel?: number
  /** 从第几个开始查,从0开始 */
  offset: number
  /** 查多少条 */
  limit: number
}
/**
 * 获取任务列表
 * @param taskMode 1: 待生产的任务 2: 看板各通道当前展示的任务
 * @param params
 */
export function getTaskList(taskMode: 1 | 2) {
  return request<BaseResponse<TasksResponse>>({
    url: '/v1/task/get',
export function getTaskList(params: TaskListParams) {
  return request<BaseResponse<TasksGroupByChannel>>({
    url: '/v1/task/list',
    method: 'get',
    params: {
      taskMode
    }
    params
  })
}
export interface ProductProgressParams {
  channel: number
  procedureId: number
}
/**
 * 获取PLC运行数据
 * @param params
 */
export function getProductProgress(params: ProductProgressParams) {
  return request<BaseResponse<PLCResponse>>({
    url: '/v1/plc/productProgress',
    method: 'post',
    data: params
  })
}
export interface CraftParamsParams {
  id: number
}
/**
 * 获取工艺参数
 * @param params
 */
export function getCraftParams(params: CraftParamsParams) {
  return request<BaseResponse<CraftParamsResponse>>({
    url: `v1/task/start/${params.id}`,
    method: 'get',
    data: params
  })
}
export interface SendProcessParamsParams {
  procedureId: number
}
/**
 * 下发工艺参数
 * @param params
 */
export function sendProcessParams(params: SendProcessParamsParams) {
  return request<BaseResponse>({
    url: `v1/task/sendProcessParams`,
    method: 'post',
    data: params
  })
}
export interface FinishTaskParams {
  id: number
}
/**
 * 结束任务
 * @param params
 */
export function finishTask(params: FinishTaskParams) {
  return request<BaseResponse>({
    url: `v1/task/finish/${params.id}`,
    method: 'put',
    data: params
  })
}
/**
 * 获取当前面板绑定的设备列表
 */
export function getDeviceList() {
  return request<BaseResponse<Devices>>({
    url: `/v1/device/list`,
    method: 'get'
  })
}