Files
zhyc-sheep-ui/src/api/mating_plan/generate.js
2026-03-03 10:22:07 +08:00

163 lines
3.8 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import request from '@/utils/request'
// 查询配种计划生成列表
export function listBreedPlanGenerate(query) {
return request({
url: '/mating_plan/generate/list',
method: 'get',
params: query
})
}
// 查询配种计划生成详细
export function getBreedPlanGenerate(id) {
return request({
url: '/mating_plan/generate/' + id,
method: 'get'
})
}
// 筛选符合条件的母羊
export function selectEligibleEwe(params) {
return request({
url: '/mating_plan/generate/selectEwe',
method: 'get',
params
})
}
// 筛选符合条件的公羊
export function selectEligibleRam(params) {
return request({
url: '/mating_plan/generate/selectRam',
method: 'get',
params
})
}
/**
* 导出已选母羊/公羊配对表按轮询自动配对用户可在Excel中调整后再导入
* @param {Object} data - { eweIds: [], ramIds: [] }
*/
export function exportSelectedPairs(data) {
return request({
url: '/mating_plan/generate/exportPairs',
method: 'post',
data,
responseType: 'blob'
})
}
/**
* 解析上传的配对Excel返回预览数据不生成计划
* 使用 FormData 上传文件
* @param {FormData} formData - 包含 file 字段的表单数据
*/
export function parsePairsFromExcel(formData) {
return request({
url: '/mating_plan/generate/parsePairs',
method: 'post',
data: formData,
headers: { 'Content-Type': 'multipart/form-data' }
})
}
/**
* 根据导入的配对数据生成配种计划
* @param {Object} data - { planType: 1, pairs: [{eweEarNo, ramEarNo, eweId, ramId}] }
*/
export function generateBreedPlanFromPairs(data) {
return request({
url: '/mating_plan/generate/generateFromPairs',
method: 'post',
data
})
}
// 自动生成配种计划(按比例分配,原有逻辑)
export function autoGenerateBreedPlan(data) {
return request({
url: '/mating_plan/generate/auto',
method: 'post',
data: data
})
}
// 新增配种计划生成
export function addBreedPlanGenerate(data) {
return request({
url: '/mating_plan/generate',
method: 'post',
data: data
})
}
// 修改配种计划生成
export function updateBreedPlanGenerate(data) {
return request({
url: '/mating_plan/generate',
method: 'put',
data: data
})
}
// 获取审批配种计划详情
export function getApproveBreedPlan(id) {
return request({
url: '/mating_plan/generate/approve/' + id,
method: 'get'
})
}
// 确认审批配种计划
export function confirmApproveBreedPlan(data) {
return request({
url: '/mating_plan/generate/approve/confirm',
method: 'put',
data: data
})
}
// 查看配种计划详情
export function viewBreedPlan(id) {
return request({
url: '/mating_plan/generate/view/' + id,
method: 'get'
})
}
// 导出配种计划详情已审批计划的详细Excel
export function exportBreedPlanDetails(id) {
return request({
url: '/mating_plan/generate/export/' + id,
method: 'post',
responseType: 'blob'
})
}
// 删除配种计划生成
export function delBreedPlanGenerate(id) {
return request({
url: '/mating_plan/generate/' + id,
method: 'delete'
})
}
// 模糊查询母羊耳号列表
export function searchEarNumbers(query) {
return request({
url: '/mating_plan/generate/search_ear_numbers',
method: 'get',
params: { query }
})
}
// 下载配对模板(空白模板,只有表头)
export function downloadPairTemplate() {
return request({
url: '/mating_plan/generate/exportPairs',
method: 'post',
data: { eweIds: [], ramIds: [] },
responseType: 'blob'
})
}