import { requestClient } from '#/api/request';
|
|
export interface SeedQualityPageParams {
|
pageNo?: number;
|
pageSize?: number;
|
code?: string;
|
batchCode?: string;
|
result?: number;
|
workflowStatus?: number;
|
}
|
|
export interface SeedQualityRecord {
|
id: number;
|
code: string;
|
batchCode?: string;
|
result: number;
|
workflowStatus: number;
|
retestResult?: number;
|
reason?: string;
|
inspectorId?: number;
|
inspectedAt?: string;
|
createTime?: string;
|
}
|
export interface SeedQualityIndicator {
|
indicatorCode: string;
|
value: number;
|
minValue: number;
|
maxValue: number;
|
}
|
export function getSeedQualityIndicators(id: number) {
|
return requestClient.get<SeedQualityIndicator[]>('/mes/qc/seed-quality/indicators', { params: { id } });
|
}
|
export interface SeedQualityAction {
|
id: number;
|
action: string;
|
result?: number;
|
opinion?: string;
|
indicatorsJson?: string;
|
operatorId?: number;
|
createTime?: string;
|
}
|
export function getSeedQualityActions(id: number) {
|
return requestClient.get<SeedQualityAction[]>('/mes/qc/seed-quality/actions', { params: { id } });
|
}
|
export function retestSeedQuality(id: number, data: Omit<MesQcSeedQualityApi.SubmitParams, 'qualifiedWarehouseId'>) {
|
return requestClient.post('/mes/qc/seed-quality/retest', data, { params: { id } });
|
}
|
export function approveSeedQuality(stage: 'process' | 'company', data: { id: number; approved: boolean; opinion: string }) {
|
return requestClient.post(`/mes/qc/seed-quality/${stage}-approve`, data);
|
}
|
export function approveSeedQualityBatch(stage: 'process' | 'company', data: { ids: number[]; approved: boolean; opinion: string }) {
|
return requestClient.post(`/mes/qc/seed-quality/${stage}-approve-batch`, data);
|
}
|
|
export namespace MesQcSeedQualityApi {
|
export interface Indicator {
|
code: string;
|
value: number;
|
minValue: number;
|
maxValue: number;
|
}
|
|
export interface SubmitParams {
|
code: string;
|
batchCode?: string;
|
indicators: Indicator[];
|
reason?: string;
|
qualifiedWarehouseId: number; // 目标合格库(质检合格后入该仓库,仓库类型为合格库20)
|
}
|
}
|
|
export function getSeedQualityPage(params: SeedQualityPageParams) {
|
return requestClient.get<{ list: SeedQualityRecord[]; total: number }>('/mes/qc/seed-quality/page', { params });
|
}
|
|
export function submitSeedQuality(data: MesQcSeedQualityApi.SubmitParams) {
|
return requestClient.post<number>('/mes/qc/seed-quality/submit', data);
|
}
|
|
export interface SeedQualityScan {
|
code: string; businessCode?: string; batchCode?: string;
|
inbound: boolean; canceled: boolean; qualityId?: number; result?: number;
|
scanType?: 'BAG' | 'PALLET' | 'BATCH'; totalCount?: number;
|
pendingBagIds?: number[]; completedBagIds?: number[];
|
}
|
export function resolveSeedQuality(code: string, scanType: 'BAG' | 'PALLET' | 'BATCH' = 'BAG') {
|
return requestClient.get<SeedQualityScan>('/mes/qc/seed-quality/resolve', { params: { code, scanType } });
|
}
|
export function submitSeedQualityGroup(data: MesQcSeedQualityApi.SubmitParams & { scanType: 'BAG' | 'PALLET' | 'BATCH'; bagIds: number[] }) {
|
return requestClient.post<{ processedCount: number }>('/mes/qc/seed-quality/submit-group', data);
|
}
|