import type { PageParam, PageResult } from '@vben/request';

import { requestClient } from '#/api/request';

export namespace MesQcApproverConfigApi {
  /** MES 质检审核人配置 */
  export interface ApproverConfig {
    id?: number; // 编号
    qcType?: number; // 质检类型：1种子质检
    approveNode?: number; // 审核节点：1加工部审批 3公司质检审批
    userId?: number; // 审核人用户 ID
    userNickname?: string; // 审核人昵称（关联查询）
    status?: number; // 状态：0启用 1停用
    remark?: string; // 备注
    createTime?: Date; // 创建时间
  }
}

/** 查询质检审核人配置分页 */
export function getApproverConfigPage(params: PageParam) {
  return requestClient.get<PageResult<MesQcApproverConfigApi.ApproverConfig>>(
    '/mes/qc/approver-config/page',
    { params },
  );
}

/** 查询质检审核人配置详情 */
export function getApproverConfig(id: number) {
  return requestClient.get<MesQcApproverConfigApi.ApproverConfig>(
    `/mes/qc/approver-config/get?id=${id}`,
  );
}

/** 新增质检审核人配置 */
export function createApproverConfig(
  data: MesQcApproverConfigApi.ApproverConfig,
) {
  return requestClient.post('/mes/qc/approver-config/create', data);
}

/** 修改质检审核人配置 */
export function updateApproverConfig(
  data: MesQcApproverConfigApi.ApproverConfig,
) {
  return requestClient.put('/mes/qc/approver-config/update', data);
}

/** 删除质检审核人配置 */
export function deleteApproverConfig(id: number) {
  return requestClient.delete(
    `/mes/qc/approver-config/delete?id=${id}`,
  );
}
