Files
34047007@qq.com b95053c52c init: 初始化 dpb 桃育种系统代码库
前后端 + 后端 FastAPI 全量源码、部署脚本与文档。
2026-08-06 00:17:49 +08:00

133 lines
2.9 KiB
Plaintext

import { request } from "@utils";
const API_PATH = "/bre/germplasm";
const GermplasmAPI = {
getGermplasmList(query: GermplasmPageQuery) {
return request<ApiResponse<PageResult<GermplasmTable>>>({
url: `${API_PATH}/list`,
method: "get",
params: query,
});
},
getGermplasmDetail(query: number) {
return request<ApiResponse<GermplasmTable>>({
url: `${API_PATH}/detail/${query}`,
method: "get",
});
},
createGermplasm(body: GermplasmForm) {
return request<ApiResponse>({
url: `${API_PATH}/create`,
method: "post",
data: body,
});
},
updateGermplasm(id: number, body: GermplasmForm) {
return request<ApiResponse>({
url: `${API_PATH}/update/${id}`,
method: "put",
data: body,
});
},
deleteGermplasm(body: number[]) {
return request<ApiResponse>({
url: `${API_PATH}/delete`,
method: "delete",
data: body,
});
},
exportGermplasm(body: GermplasmPageQuery) {
return request<Blob>({
url: `${API_PATH}/export`,
method: "post",
data: body,
responseType: "blob",
});
},
downloadTemplateGermplasm() {
return request<Blob>({
url: `${API_PATH}/download/template`,
method: "post",
responseType: "blob",
});
},
importGermplasm(body: FormData) {
return request<ApiResponse>({
url: `${API_PATH}/import`,
method: "post",
data: body,
headers: {
"Content-Type": "multipart/form-data",
},
});
},
getGermplasmOptions() {
return request<ApiResponse<GermplasmOption[]>>({
url: `${API_PATH}/options`,
method: "get",
});
},
};
export default GermplasmAPI;
export interface GermplasmPageQuery extends PageQuery, UserByQueryParams {
cultivar_name?: string;
origin?: string;
variety_type?: string;
firmness?: string;
maturity_period?: string;
can_be_female?: boolean;
can_be_male?: boolean;
}
export interface GermplasmTable extends BaseType {
cultivar_name?: string;
variety_type?: string;
origin?: string;
preservation_site?: string;
avg_fruit_weight?: number;
ssc?: number;
firmness?: string;
maturity_period?: string;
flowering_period?: string;
chilling_requirement?: number;
disease_resistance?: string;
can_be_female?: boolean;
can_be_male?: boolean;
pedigree_note?: string;
photo_path?: string;
}
export interface GermplasmForm extends BaseFormType {
cultivar_name?: string;
variety_type?: string;
origin?: string;
preservation_site?: string;
avg_fruit_weight?: number;
ssc?: number;
firmness?: string;
maturity_period?: string;
flowering_period?: string;
chilling_requirement?: number;
disease_resistance?: string;
can_be_female?: boolean;
can_be_male?: boolean;
pedigree_note?: string;
photo_path?: string;
}
export interface GermplasmOption {
value: number;
label: string;
}