gaoluyang
4 小时以前 cb9cd49627b65a4c0e137e08063271a8cefe1826
src/api/mes/pro/task/index.ts
@@ -54,6 +54,26 @@
    statuses?: number[];
    status?: number;
  }
  /** 待报工台账任务(pending-feedback-page 响应) */
  export interface PendingFeedbackTask extends Task {
    pendingQuantity?: number; // 待报工数量(= 排产 - 已生产)
    inTransitQuantity?: number; // 在途报工数量(草稿/审批中/待检验合计)
    reportableQuantity?: number; // 可报工数量(= 排产 - 已生产 - 在途)
    feedbackRate?: number; // 报工完成率(%)
  }
  /** 待报工台账分页查询参数 */
  export interface PendingFeedbackPageParams extends PageParam {
    processId?: number;
    routeId?: number;
    workOrderId?: number;
    workstationId?: number;
    code?: string;
    name?: string;
    checkFlag?: boolean;
    createTime?: string[];
  }
}
/** 查询生产任务分页 */
@@ -93,3 +113,55 @@
export function getGanttTaskList(params: any) {
  return requestClient.get<any[]>('/mes/pro/task/gantt-list', { params });
}
/** 一键排产预览请求 */
export interface AutoGenerateReq {
  workOrderId: number;
  routeId?: number;
  autoAssignWorkstation?: boolean;
  autoCalculateTime?: boolean;
}
/** 一键排产预览响应 */
export interface AutoGeneratePreview {
  workOrderId?: number;
  routeId?: number;
  routeName?: string;
  taskList?: TaskPreview[];
}
export interface TaskPreview {
  processId?: number;
  processName?: string;
  sort?: number;
  suggestWorkstationId?: number;
  suggestWorkstationName?: string;
  quantity?: number;
  keyFlag?: boolean;
}
/** 一键排产预览 */
export function previewAutoGenerate(data: AutoGenerateReq) {
  return requestClient.post<AutoGeneratePreview>(
    '/mes/pro/task/auto-generate/preview',
    data,
  );
}
/** 一键排产执行 */
export function autoGenerateTasks(data: AutoGenerateReq) {
  return requestClient.post<{ taskIds: number[] }>(
    '/mes/pro/task/auto-generate',
    data,
  );
}
/** 查询待报工台账(分页) */
export function getPendingFeedbackPage(
  params: MesProTaskApi.PendingFeedbackPageParams,
) {
  return requestClient.get<PageResult<MesProTaskApi.PendingFeedbackTask>>(
    '/mes/pro/task/pending-feedback-page',
    { params },
  );
}