修复bug

This commit is contained in:
2025-10-31 18:14:12 +08:00
parent 0c88c76417
commit 193d77b5b7
7 changed files with 792 additions and 792 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -20,13 +20,13 @@ type PaginationDTO struct {
// ListSensorDataRequest 定义了获取传感器数据列表的请求参数 // ListSensorDataRequest 定义了获取传感器数据列表的请求参数
type ListSensorDataRequest struct { type ListSensorDataRequest struct {
Page int `query:"page"` Page int `json:"page" query:"page"`
PageSize int `query:"page_size"` PageSize int `json:"page_size" query:"page_size"`
DeviceID *uint `query:"device_id"` DeviceID *uint `json:"device_id" query:"device_id"`
SensorType *string `query:"sensor_type"` SensorType *string `json:"sensor_type" query:"sensor_type"`
StartTime *time.Time `query:"start_time"` StartTime *time.Time `json:"start_time" query:"start_time"`
EndTime *time.Time `query:"end_time"` EndTime *time.Time `json:"end_time" query:"end_time"`
OrderBy string `query:"order_by"` OrderBy string `json:"order_by" query:"order_by"`
} }
// SensorDataDTO 是用于API响应的传感器数据结构 // SensorDataDTO 是用于API响应的传感器数据结构
@@ -48,13 +48,13 @@ type ListSensorDataResponse struct {
// ListDeviceCommandLogRequest 定义了获取设备命令日志列表的请求参数 // ListDeviceCommandLogRequest 定义了获取设备命令日志列表的请求参数
type ListDeviceCommandLogRequest struct { type ListDeviceCommandLogRequest struct {
Page int `query:"page"` Page int `json:"page" query:"page"`
PageSize int `query:"page_size"` PageSize int `json:"page_size" query:"page_size"`
DeviceID *uint `query:"device_id"` DeviceID *uint `json:"device_id" query:"device_id"`
ReceivedSuccess *bool `query:"received_success"` ReceivedSuccess *bool `json:"received_success" query:"received_success"`
StartTime *time.Time `query:"start_time"` StartTime *time.Time `json:"start_time" query:"start_time"`
EndTime *time.Time `query:"end_time"` EndTime *time.Time `json:"end_time" query:"end_time"`
OrderBy string `query:"order_by"` OrderBy string `json:"order_by" query:"order_by"`
} }
// DeviceCommandLogDTO 是用于API响应的设备命令日志结构 // DeviceCommandLogDTO 是用于API响应的设备命令日志结构
@@ -76,13 +76,13 @@ type ListDeviceCommandLogResponse struct {
// ListPlanExecutionLogRequest 定义了获取计划执行日志列表的请求参数 // ListPlanExecutionLogRequest 定义了获取计划执行日志列表的请求参数
type ListPlanExecutionLogRequest struct { type ListPlanExecutionLogRequest struct {
Page int `query:"page"` Page int `json:"page" query:"page"`
PageSize int `query:"page_size"` PageSize int `json:"page_size" query:"page_size"`
PlanID *uint `query:"plan_id"` PlanID *uint `json:"plan_id" query:"plan_id"`
Status *string `query:"status"` Status *string `json:"status" query:"status"`
StartTime *time.Time `query:"start_time"` StartTime *time.Time `json:"start_time" query:"start_time"`
EndTime *time.Time `query:"end_time"` EndTime *time.Time `json:"end_time" query:"end_time"`
OrderBy string `query:"order_by"` OrderBy string `json:"order_by" query:"order_by"`
} }
// PlanExecutionLogDTO 是用于API响应的计划执行日志结构 // PlanExecutionLogDTO 是用于API响应的计划执行日志结构
@@ -108,14 +108,14 @@ type ListPlanExecutionLogResponse struct {
// ListTaskExecutionLogRequest 定义了获取任务执行日志列表的请求参数 // ListTaskExecutionLogRequest 定义了获取任务执行日志列表的请求参数
type ListTaskExecutionLogRequest struct { type ListTaskExecutionLogRequest struct {
Page int `query:"page"` Page int `json:"page" query:"page"`
PageSize int `query:"page_size"` PageSize int `json:"page_size" query:"page_size"`
PlanExecutionLogID *uint `query:"plan_execution_log_id"` PlanExecutionLogID *uint `json:"plan_execution_log_id" query:"plan_execution_log_id"`
TaskID *int `query:"task_id"` TaskID *int `json:"task_id" query:"task_id"`
Status *string `query:"status"` Status *string `json:"status" query:"status"`
StartTime *time.Time `query:"start_time"` StartTime *time.Time `json:"start_time" query:"start_time"`
EndTime *time.Time `query:"end_time"` EndTime *time.Time `json:"end_time" query:"end_time"`
OrderBy string `query:"order_by"` OrderBy string `json:"order_by" query:"order_by"`
} }
// TaskDTO 是用于API响应的简化版任务结构 // TaskDTO 是用于API响应的简化版任务结构
@@ -149,13 +149,13 @@ type ListTaskExecutionLogResponse struct {
// ListPendingCollectionRequest 定义了获取待采集请求列表的请求参数 // ListPendingCollectionRequest 定义了获取待采集请求列表的请求参数
type ListPendingCollectionRequest struct { type ListPendingCollectionRequest struct {
Page int `query:"page"` Page int `json:"page" query:"page"`
PageSize int `query:"page_size"` PageSize int `json:"page_size" query:"page_size"`
DeviceID *uint `query:"device_id"` DeviceID *uint `json:"device_id" query:"device_id"`
Status *string `query:"status"` Status *string `json:"status" query:"status"`
StartTime *time.Time `query:"start_time"` StartTime *time.Time `json:"start_time" query:"start_time"`
EndTime *time.Time `query:"end_time"` EndTime *time.Time `json:"end_time" query:"end_time"`
OrderBy string `query:"order_by"` OrderBy string `json:"order_by" query:"order_by"`
} }
// PendingCollectionDTO 是用于API响应的待采集请求结构 // PendingCollectionDTO 是用于API响应的待采集请求结构
@@ -178,15 +178,15 @@ type ListPendingCollectionResponse struct {
// ListUserActionLogRequest 定义了获取用户操作日志列表的请求参数 // ListUserActionLogRequest 定义了获取用户操作日志列表的请求参数
type ListUserActionLogRequest struct { type ListUserActionLogRequest struct {
Page int `query:"page"` Page int `json:"page" query:"page"`
PageSize int `query:"page_size"` PageSize int `json:"page_size" query:"page_size"`
UserID *uint `query:"user_id"` UserID *uint `json:"user_id" query:"user_id"`
Username *string `query:"username"` Username *string `json:"username" query:"username"`
ActionType *string `query:"action_type"` ActionType *string `json:"action_type" query:"action_type"`
Status *string `query:"status"` Status *string `json:"status" query:"status"`
StartTime *time.Time `query:"start_time"` StartTime *time.Time `json:"start_time" query:"start_time"`
EndTime *time.Time `query:"end_time"` EndTime *time.Time `json:"end_time" query:"end_time"`
OrderBy string `query:"order_by"` OrderBy string `json:"order_by" query:"order_by"`
} }
// UserActionLogDTO 是用于API响应的用户操作日志结构 // UserActionLogDTO 是用于API响应的用户操作日志结构
@@ -215,13 +215,13 @@ type ListUserActionLogResponse struct {
// ListRawMaterialPurchaseRequest 定义了获取原料采购列表的请求参数 // ListRawMaterialPurchaseRequest 定义了获取原料采购列表的请求参数
type ListRawMaterialPurchaseRequest struct { type ListRawMaterialPurchaseRequest struct {
Page int `query:"page"` Page int `json:"page" query:"page"`
PageSize int `query:"page_size"` PageSize int `json:"page_size" query:"page_size"`
RawMaterialID *uint `query:"raw_material_id"` RawMaterialID *uint `json:"raw_material_id" query:"raw_material_id"`
Supplier *string `query:"supplier"` Supplier *string `json:"supplier" query:"supplier"`
StartTime *time.Time `query:"start_time"` StartTime *time.Time `json:"start_time" query:"start_time"`
EndTime *time.Time `query:"end_time"` EndTime *time.Time `json:"end_time" query:"end_time"`
OrderBy string `query:"order_by"` OrderBy string `json:"order_by" query:"order_by"`
} }
// RawMaterialDTO 是用于API响应的简化版原料结构 // RawMaterialDTO 是用于API响应的简化版原料结构
@@ -253,14 +253,14 @@ type ListRawMaterialPurchaseResponse struct {
// ListRawMaterialStockLogRequest 定义了获取原料库存日志列表的请求参数 // ListRawMaterialStockLogRequest 定义了获取原料库存日志列表的请求参数
type ListRawMaterialStockLogRequest struct { type ListRawMaterialStockLogRequest struct {
Page int `query:"page"` Page int `json:"page" query:"page"`
PageSize int `query:"page_size"` PageSize int `json:"page_size" query:"page_size"`
RawMaterialID *uint `query:"raw_material_id"` RawMaterialID *uint `json:"raw_material_id" query:"raw_material_id"`
SourceType *string `query:"source_type"` SourceType *string `json:"source_type" query:"source_type"`
SourceID *uint `query:"source_id"` SourceID *uint `json:"source_id" query:"source_id"`
StartTime *time.Time `query:"start_time"` StartTime *time.Time `json:"start_time" query:"start_time"`
EndTime *time.Time `query:"end_time"` EndTime *time.Time `json:"end_time" query:"end_time"`
OrderBy string `query:"order_by"` OrderBy string `json:"order_by" query:"order_by"`
} }
// RawMaterialStockLogDTO 是用于API响应的原料库存日志结构 // RawMaterialStockLogDTO 是用于API响应的原料库存日志结构
@@ -284,14 +284,14 @@ type ListRawMaterialStockLogResponse struct {
// ListFeedUsageRecordRequest 定义了获取饲料使用记录列表的请求参数 // ListFeedUsageRecordRequest 定义了获取饲料使用记录列表的请求参数
type ListFeedUsageRecordRequest struct { type ListFeedUsageRecordRequest struct {
Page int `query:"page"` Page int `json:"page" query:"page"`
PageSize int `query:"page_size"` PageSize int `json:"page_size" query:"page_size"`
PenID *uint `query:"pen_id"` PenID *uint `json:"pen_id" query:"pen_id"`
FeedFormulaID *uint `query:"feed_formula_id"` FeedFormulaID *uint `json:"feed_formula_id" query:"feed_formula_id"`
OperatorID *uint `query:"operator_id"` OperatorID *uint `json:"operator_id" query:"operator_id"`
StartTime *time.Time `query:"start_time"` StartTime *time.Time `json:"start_time" query:"start_time"`
EndTime *time.Time `query:"end_time"` EndTime *time.Time `json:"end_time" query:"end_time"`
OrderBy string `query:"order_by"` OrderBy string `json:"order_by" query:"order_by"`
} }
// PenDTO 是用于API响应的简化版猪栏结构 // PenDTO 是用于API响应的简化版猪栏结构
@@ -329,15 +329,15 @@ type ListFeedUsageRecordResponse struct {
// ListMedicationLogRequest 定义了获取用药记录列表的请求参数 // ListMedicationLogRequest 定义了获取用药记录列表的请求参数
type ListMedicationLogRequest struct { type ListMedicationLogRequest struct {
Page int `query:"page"` Page int `json:"page" query:"page"`
PageSize int `query:"page_size"` PageSize int `json:"page_size" query:"page_size"`
PigBatchID *uint `query:"pig_batch_id"` PigBatchID *uint `json:"pig_batch_id" query:"pig_batch_id"`
MedicationID *uint `query:"medication_id"` MedicationID *uint `json:"medication_id" query:"medication_id"`
Reason *string `query:"reason"` Reason *string `json:"reason" query:"reason"`
OperatorID *uint `query:"operator_id"` OperatorID *uint `json:"operator_id" query:"operator_id"`
StartTime *time.Time `query:"start_time"` StartTime *time.Time `json:"start_time" query:"start_time"`
EndTime *time.Time `query:"end_time"` EndTime *time.Time `json:"end_time" query:"end_time"`
OrderBy string `query:"order_by"` OrderBy string `json:"order_by" query:"order_by"`
} }
// MedicationDTO 是用于API响应的简化版药品结构 // MedicationDTO 是用于API响应的简化版药品结构
@@ -370,14 +370,14 @@ type ListMedicationLogResponse struct {
// ListPigBatchLogRequest 定义了获取猪批次日志列表的请求参数 // ListPigBatchLogRequest 定义了获取猪批次日志列表的请求参数
type ListPigBatchLogRequest struct { type ListPigBatchLogRequest struct {
Page int `query:"page"` Page int `json:"page" query:"page"`
PageSize int `query:"page_size"` PageSize int `json:"page_size" query:"page_size"`
PigBatchID *uint `query:"pig_batch_id"` PigBatchID *uint `json:"pig_batch_id" query:"pig_batch_id"`
ChangeType *string `query:"change_type"` ChangeType *string `json:"change_type" query:"change_type"`
OperatorID *uint `query:"operator_id"` OperatorID *uint `json:"operator_id" query:"operator_id"`
StartTime *time.Time `query:"start_time"` StartTime *time.Time `json:"start_time" query:"start_time"`
EndTime *time.Time `query:"end_time"` EndTime *time.Time `json:"end_time" query:"end_time"`
OrderBy string `query:"order_by"` OrderBy string `json:"order_by" query:"order_by"`
} }
// PigBatchLogDTO 是用于API响应的猪批次日志结构 // PigBatchLogDTO 是用于API响应的猪批次日志结构
@@ -405,12 +405,12 @@ type ListPigBatchLogResponse struct {
// ListWeighingBatchRequest 定义了获取批次称重记录列表的请求参数 // ListWeighingBatchRequest 定义了获取批次称重记录列表的请求参数
type ListWeighingBatchRequest struct { type ListWeighingBatchRequest struct {
Page int `query:"page"` Page int `json:"page" query:"page"`
PageSize int `query:"page_size"` PageSize int `json:"page_size" query:"page_size"`
PigBatchID *uint `query:"pig_batch_id"` PigBatchID *uint `json:"pig_batch_id" query:"pig_batch_id"`
StartTime *time.Time `query:"start_time"` StartTime *time.Time `json:"start_time" query:"start_time"`
EndTime *time.Time `query:"end_time"` EndTime *time.Time `json:"end_time" query:"end_time"`
OrderBy string `query:"order_by"` OrderBy string `json:"order_by" query:"order_by"`
} }
// WeighingBatchDTO 是用于API响应的批次称重记录结构 // WeighingBatchDTO 是用于API响应的批次称重记录结构
@@ -433,14 +433,14 @@ type ListWeighingBatchResponse struct {
// ListWeighingRecordRequest 定义了获取单次称重记录列表的请求参数 // ListWeighingRecordRequest 定义了获取单次称重记录列表的请求参数
type ListWeighingRecordRequest struct { type ListWeighingRecordRequest struct {
Page int `query:"page"` Page int `json:"page" query:"page"`
PageSize int `query:"page_size"` PageSize int `json:"page_size" query:"page_size"`
WeighingBatchID *uint `query:"weighing_batch_id"` WeighingBatchID *uint `json:"weighing_batch_id" query:"weighing_batch_id"`
PenID *uint `query:"pen_id"` PenID *uint `json:"pen_id" query:"pen_id"`
OperatorID *uint `query:"operator_id"` OperatorID *uint `json:"operator_id" query:"operator_id"`
StartTime *time.Time `query:"start_time"` StartTime *time.Time `json:"start_time" query:"start_time"`
EndTime *time.Time `query:"end_time"` EndTime *time.Time `json:"end_time" query:"end_time"`
OrderBy string `query:"order_by"` OrderBy string `json:"order_by" query:"order_by"`
} }
// WeighingRecordDTO 是用于API响应的单次称重记录结构 // WeighingRecordDTO 是用于API响应的单次称重记录结构
@@ -466,16 +466,16 @@ type ListWeighingRecordResponse struct {
// ListPigTransferLogRequest 定义了获取猪只迁移日志列表的请求参数 // ListPigTransferLogRequest 定义了获取猪只迁移日志列表的请求参数
type ListPigTransferLogRequest struct { type ListPigTransferLogRequest struct {
Page int `query:"page"` Page int `json:"page" query:"page"`
PageSize int `query:"page_size"` PageSize int `json:"page_size" query:"page_size"`
PigBatchID *uint `query:"pig_batch_id"` PigBatchID *uint `json:"pig_batch_id" query:"pig_batch_id"`
PenID *uint `query:"pen_id"` PenID *uint `json:"pen_id" query:"pen_id"`
TransferType *string `query:"transfer_type"` TransferType *string `json:"transfer_type" query:"transfer_type"`
OperatorID *uint `query:"operator_id"` OperatorID *uint `json:"operator_id" query:"operator_id"`
CorrelationID *string `query:"correlation_id"` CorrelationID *string `json:"correlation_id" query:"correlation_id"`
StartTime *time.Time `query:"start_time"` StartTime *time.Time `json:"start_time" query:"start_time"`
EndTime *time.Time `query:"end_time"` EndTime *time.Time `json:"end_time" query:"end_time"`
OrderBy string `query:"order_by"` OrderBy string `json:"order_by" query:"order_by"`
} }
// PigTransferLogDTO 是用于API响应的猪只迁移日志结构 // PigTransferLogDTO 是用于API响应的猪只迁移日志结构
@@ -503,16 +503,16 @@ type ListPigTransferLogResponse struct {
// ListPigSickLogRequest 定义了获取病猪日志列表的请求参数 // ListPigSickLogRequest 定义了获取病猪日志列表的请求参数
type ListPigSickLogRequest struct { type ListPigSickLogRequest struct {
Page int `query:"page"` Page int `json:"page" query:"page"`
PageSize int `query:"page_size"` PageSize int `json:"page_size" query:"page_size"`
PigBatchID *uint `query:"pig_batch_id"` PigBatchID *uint `json:"pig_batch_id" query:"pig_batch_id"`
PenID *uint `query:"pen_id"` PenID *uint `json:"pen_id" query:"pen_id"`
Reason *string `query:"reason"` Reason *string `json:"reason" query:"reason"`
TreatmentLocation *string `query:"treatment_location"` TreatmentLocation *string `json:"treatment_location" query:"treatment_location"`
OperatorID *uint `query:"operator_id"` OperatorID *uint `json:"operator_id" query:"operator_id"`
StartTime *time.Time `query:"start_time"` StartTime *time.Time `json:"start_time" query:"start_time"`
EndTime *time.Time `query:"end_time"` EndTime *time.Time `json:"end_time" query:"end_time"`
OrderBy string `query:"order_by"` OrderBy string `json:"order_by" query:"order_by"`
} }
// PigSickLogDTO 是用于API响应的病猪日志结构 // PigSickLogDTO 是用于API响应的病猪日志结构
@@ -542,14 +542,14 @@ type ListPigSickLogResponse struct {
// ListPigPurchaseRequest 定义了获取猪只采购记录列表的请求参数 // ListPigPurchaseRequest 定义了获取猪只采购记录列表的请求参数
type ListPigPurchaseRequest struct { type ListPigPurchaseRequest struct {
Page int `query:"page"` Page int `json:"page" query:"page"`
PageSize int `query:"page_size"` PageSize int `json:"page_size" query:"page_size"`
PigBatchID *uint `query:"pig_batch_id"` PigBatchID *uint `json:"pig_batch_id" query:"pig_batch_id"`
Supplier *string `query:"supplier"` Supplier *string `json:"supplier" query:"supplier"`
OperatorID *uint `query:"operator_id"` OperatorID *uint `json:"operator_id" query:"operator_id"`
StartTime *time.Time `query:"start_time"` StartTime *time.Time `json:"start_time" query:"start_time"`
EndTime *time.Time `query:"end_time"` EndTime *time.Time `json:"end_time" query:"end_time"`
OrderBy string `query:"order_by"` OrderBy string `json:"order_by" query:"order_by"`
} }
// PigPurchaseDTO 是用于API响应的猪只采购记录结构 // PigPurchaseDTO 是用于API响应的猪只采购记录结构
@@ -577,14 +577,14 @@ type ListPigPurchaseResponse struct {
// ListPigSaleRequest 定义了获取猪只销售记录列表的请求参数 // ListPigSaleRequest 定义了获取猪只销售记录列表的请求参数
type ListPigSaleRequest struct { type ListPigSaleRequest struct {
Page int `query:"page"` Page int `json:"page" query:"page"`
PageSize int `query:"page_size"` PageSize int `json:"page_size" query:"page_size"`
PigBatchID *uint `query:"pig_batch_id"` PigBatchID *uint `json:"pig_batch_id" query:"pig_batch_id"`
Buyer *string `query:"buyer"` Buyer *string `json:"buyer" query:"buyer"`
OperatorID *uint `query:"operator_id"` OperatorID *uint `json:"operator_id" query:"operator_id"`
StartTime *time.Time `query:"start_time"` StartTime *time.Time `json:"start_time" query:"start_time"`
EndTime *time.Time `query:"end_time"` EndTime *time.Time `json:"end_time" query:"end_time"`
OrderBy string `query:"order_by"` OrderBy string `json:"order_by" query:"order_by"`
} }
// PigSaleDTO 是用于API响应的猪只销售记录结构 // PigSaleDTO 是用于API响应的猪只销售记录结构

View File

@@ -16,15 +16,15 @@ type SendTestNotificationRequest struct {
// ListNotificationRequest 定义了获取通知列表的请求参数 // ListNotificationRequest 定义了获取通知列表的请求参数
type ListNotificationRequest struct { type ListNotificationRequest struct {
Page int `query:"page"` Page int `json:"page" query:"page"`
PageSize int `query:"pageSize"` PageSize int `json:"page_size" query:"page_size"`
UserID *uint `query:"user_id"` UserID *uint `json:"user_id" query:"user_id"`
NotifierType *notify.NotifierType `query:"notifier_type"` NotifierType *notify.NotifierType `json:"notifier_type" query:"notifier_type"`
Status *models.NotificationStatus `query:"status"` Status *models.NotificationStatus `json:"status" query:"status"`
Level *zapcore.Level `query:"level"` Level *zapcore.Level `json:"level" query:"level"`
StartTime *time.Time `query:"start_time"` StartTime *time.Time `json:"start_time" query:"start_time"`
EndTime *time.Time `query:"end_time"` EndTime *time.Time `json:"end_time" query:"end_time"`
OrderBy string `query:"order_by"` OrderBy string `json:"order_by" query:"order_by"`
} }
// NotificationDTO 是用于API响应的通知结构 // NotificationDTO 是用于API响应的通知结构

View File

@@ -32,131 +32,131 @@ type PigBatchQueryDTO struct {
// PigBatchResponseDTO 定义了猪批次信息的响应结构 // PigBatchResponseDTO 定义了猪批次信息的响应结构
type PigBatchResponseDTO struct { type PigBatchResponseDTO struct {
ID uint `json:"id"` // 批次ID ID uint `json:"id"` // 批次ID
BatchNumber string `json:"batch_number"` // 批次编号 BatchNumber string `json:"batch_number"` // 批次编号
OriginType models.PigBatchOriginType `json:"origin_type"` // 批次来源 OriginType models.PigBatchOriginType `json:"origin_type"` // 批次来源
StartDate time.Time `json:"start_date"` // 批次开始日期 StartDate time.Time `json:"start_date"` // 批次开始日期
EndDate time.Time `json:"end_date"` // 批次结束日期 EndDate time.Time `json:"end_date"` // 批次结束日期
InitialCount int `json:"initial_count"` // 初始数量 InitialCount int `json:"initial_count"` // 初始数量
Status models.PigBatchStatus `json:"status"` // 批次状态 Status models.PigBatchStatus `json:"status"` // 批次状态
IsActive bool `json:"is_active"` // 是否活跃 IsActive bool `json:"is_active"` // 是否活跃
CurrentTotalQuantity int `json:"currentTotalQuantity"` // 当前总数 CurrentTotalQuantity int `json:"current_total_quantity"` // 当前总数
CurrentTotalPigsInPens int `json:"currentTotalPigsInPens"` // 当前存栏总数 CurrentTotalPigsInPens int `json:"current_total_pigs_in_pens"` // 当前存栏总数
CreateTime time.Time `json:"create_time"` // 创建时间 CreateTime time.Time `json:"create_time"` // 创建时间
UpdateTime time.Time `json:"update_time"` // 更新时间 UpdateTime time.Time `json:"update_time"` // 更新时间
} }
// AssignEmptyPensToBatchRequest 用于为猪批次分配空栏的请求体 // AssignEmptyPensToBatchRequest 用于为猪批次分配空栏的请求体
type AssignEmptyPensToBatchRequest struct { type AssignEmptyPensToBatchRequest struct {
PenIDs []uint `json:"penIDs" validate:"required,min=1,dive" example:"1,2,3"` // 待分配的猪栏ID列表 PenIDs []uint `json:"pen_ids" validate:"required,min=1,dive" example:"1,2,3"` // 待分配的猪栏ID列表
} }
// ReclassifyPenToNewBatchRequest 用于将猪栏划拨到新批次的请求体 // ReclassifyPenToNewBatchRequest 用于将猪栏划拨到新批次的请求体
type ReclassifyPenToNewBatchRequest struct { type ReclassifyPenToNewBatchRequest struct {
ToBatchID uint `json:"toBatchID" validate:"required"` // 目标猪批次ID ToBatchID uint `json:"to_batch_id" validate:"required"` // 目标猪批次ID
PenID uint `json:"penID" validate:"required"` // 待划拨的猪栏ID PenID uint `json:"pen_id" validate:"required"` // 待划拨的猪栏ID
Remarks string `json:"remarks"` // 备注 Remarks string `json:"remarks"` // 备注
} }
// RemoveEmptyPenFromBatchRequest 用于从猪批次移除空栏的请求体 // RemoveEmptyPenFromBatchRequest 用于从猪批次移除空栏的请求体
type RemoveEmptyPenFromBatchRequest struct { type RemoveEmptyPenFromBatchRequest struct {
PenID uint `json:"penID" validate:"required"` // 待移除的猪栏ID PenID uint `json:"pen_id" validate:"required"` // 待移除的猪栏ID
} }
// MovePigsIntoPenRequest 用于将猪只从“虚拟库存”移入指定猪栏的请求体 // MovePigsIntoPenRequest 用于将猪只从“虚拟库存”移入指定猪栏的请求体
type MovePigsIntoPenRequest struct { type MovePigsIntoPenRequest struct {
ToPenID uint `json:"toPenID" validate:"required"` // 目标猪栏ID ToPenID uint `json:"to_pen_id" validate:"required"` // 目标猪栏ID
Quantity int `json:"quantity" validate:"required,min=1"` // 移入猪只数量 Quantity int `json:"quantity" validate:"required,min=1"` // 移入猪只数量
Remarks string `json:"remarks"` // 备注 Remarks string `json:"remarks"` // 备注
} }
// SellPigsRequest 用于处理卖猪的请求体 // SellPigsRequest 用于处理卖猪的请求体
type SellPigsRequest struct { type SellPigsRequest struct {
PenID uint `json:"penID" validate:"required"` // 猪栏ID PenID uint `json:"pen_id" validate:"required"` // 猪栏ID
Quantity int `json:"quantity" validate:"required,min=1"` // 卖出猪只数量 Quantity int `json:"quantity" validate:"required,min=1"` // 卖出猪只数量
UnitPrice float64 `json:"unitPrice" validate:"required,min=0"` // 单价 UnitPrice float64 `json:"unit_price" validate:"required,min=0"` // 单价
TotalPrice float64 `json:"totalPrice" validate:"required,min=0"` // 总价 TotalPrice float64 `json:"total_price" validate:"required,min=0"` // 总价
TraderName string `json:"traderName" validate:"required"` // 交易方名称 TraderName string `json:"trader_name" validate:"required"` // 交易方名称
TradeDate time.Time `json:"tradeDate" validate:"required"` // 交易日期 TradeDate time.Time `json:"trade_date" validate:"required"` // 交易日期
Remarks string `json:"remarks"` // 备注 Remarks string `json:"remarks"` // 备注
} }
// BuyPigsRequest 用于处理买猪的请求体 // BuyPigsRequest 用于处理买猪的请求体
type BuyPigsRequest struct { type BuyPigsRequest struct {
PenID uint `json:"penID" validate:"required"` // 猪栏ID PenID uint `json:"pen_id" validate:"required"` // 猪栏ID
Quantity int `json:"quantity" validate:"required,min=1"` // 买入猪只数量 Quantity int `json:"quantity" validate:"required,min=1"` // 买入猪只数量
UnitPrice float64 `json:"unitPrice" validate:"required,min=0"` // 单价 UnitPrice float64 `json:"unit_price" validate:"required,min=0"` // 单价
TotalPrice float64 `json:"totalPrice" validate:"required,min=0"` // 总价 TotalPrice float64 `json:"total_price" validate:"required,min=0"` // 总价
TraderName string `json:"traderName" validate:"required"` // 交易方名称 TraderName string `json:"trader_name" validate:"required"` // 交易方名称
TradeDate time.Time `json:"tradeDate" validate:"required"` // 交易日期 TradeDate time.Time `json:"trade_date" validate:"required"` // 交易日期
Remarks string `json:"remarks"` // 备注 Remarks string `json:"remarks"` // 备注
} }
// TransferPigsAcrossBatchesRequest 用于跨猪群调栏的请求体 // TransferPigsAcrossBatchesRequest 用于跨猪群调栏的请求体
type TransferPigsAcrossBatchesRequest struct { type TransferPigsAcrossBatchesRequest struct {
DestBatchID uint `json:"destBatchID" validate:"required"` // 目标猪批次ID DestBatchID uint `json:"dest_batch_id" validate:"required"` // 目标猪批次ID
FromPenID uint `json:"fromPenID" validate:"required"` // 源猪栏ID FromPenID uint `json:"from_pen_id" validate:"required"` // 源猪栏ID
ToPenID uint `json:"toPenID" validate:"required"` // 目标猪栏ID ToPenID uint `json:"to_pen_id" validate:"required"` // 目标猪栏ID
Quantity uint `json:"quantity" validate:"required,min=1"` // 调栏猪只数量 Quantity uint `json:"quantity" validate:"required,min=1"` // 调栏猪只数量
Remarks string `json:"remarks"` // 备注 Remarks string `json:"remarks"` // 备注
} }
// TransferPigsWithinBatchRequest 用于群内调栏的请求体 // TransferPigsWithinBatchRequest 用于群内调栏的请求体
type TransferPigsWithinBatchRequest struct { type TransferPigsWithinBatchRequest struct {
FromPenID uint `json:"fromPenID" validate:"required"` // 源猪栏ID FromPenID uint `json:"from_pen_id" validate:"required"` // 源猪栏ID
ToPenID uint `json:"toPenID" validate:"required"` // 目标猪栏ID ToPenID uint `json:"to_pen_id" validate:"required"` // 目标猪栏ID
Quantity uint `json:"quantity" validate:"required,min=1"` // 调栏猪只数量 Quantity uint `json:"quantity" validate:"required,min=1"` // 调栏猪只数量
Remarks string `json:"remarks"` // 备注 Remarks string `json:"remarks"` // 备注
} }
// RecordSickPigsRequest 用于记录新增病猪事件的请求体 // RecordSickPigsRequest 用于记录新增病猪事件的请求体
type RecordSickPigsRequest struct { type RecordSickPigsRequest struct {
PenID uint `json:"penID" validate:"required"` // 猪栏ID PenID uint `json:"pen_id" validate:"required"` // 猪栏ID
Quantity int `json:"quantity" validate:"required,min=1"` // 病猪数量 Quantity int `json:"quantity" validate:"required,min=1"` // 病猪数量
TreatmentLocation models.PigBatchSickPigTreatmentLocation `json:"treatmentLocation" validate:"required"` // 治疗地点 TreatmentLocation models.PigBatchSickPigTreatmentLocation `json:"treatment_location" validate:"required"` // 治疗地点
HappenedAt time.Time `json:"happenedAt" validate:"required"` // 发生时间 HappenedAt time.Time `json:"happened_at" validate:"required"` // 发生时间
Remarks string `json:"remarks"` // 备注 Remarks string `json:"remarks"` // 备注
} }
// RecordSickPigRecoveryRequest 用于记录病猪康复事件的请求体 // RecordSickPigRecoveryRequest 用于记录病猪康复事件的请求体
type RecordSickPigRecoveryRequest struct { type RecordSickPigRecoveryRequest struct {
PenID uint `json:"penID" validate:"required"` // 猪栏ID PenID uint `json:"pen_id" validate:"required"` // 猪栏ID
Quantity int `json:"quantity" validate:"required,min=1"` // 康复猪数量 Quantity int `json:"quantity" validate:"required,min=1"` // 康复猪数量
TreatmentLocation models.PigBatchSickPigTreatmentLocation `json:"treatmentLocation" validate:"required"` // 治疗地点 TreatmentLocation models.PigBatchSickPigTreatmentLocation `json:"treatment_location" validate:"required"` // 治疗地点
HappenedAt time.Time `json:"happenedAt" validate:"required"` // 发生时间 HappenedAt time.Time `json:"happened_at" validate:"required"` // 发生时间
Remarks string `json:"remarks"` // 备注 Remarks string `json:"remarks"` // 备注
} }
// RecordSickPigDeathRequest 用于记录病猪死亡事件的请求体 // RecordSickPigDeathRequest 用于记录病猪死亡事件的请求体
type RecordSickPigDeathRequest struct { type RecordSickPigDeathRequest struct {
PenID uint `json:"penID" validate:"required"` // 猪栏ID PenID uint `json:"pen_id" validate:"required"` // 猪栏ID
Quantity int `json:"quantity" validate:"required,min=1"` // 死亡猪数量 Quantity int `json:"quantity" validate:"required,min=1"` // 死亡猪数量
TreatmentLocation models.PigBatchSickPigTreatmentLocation `json:"treatmentLocation" validate:"required"` // 治疗地点 TreatmentLocation models.PigBatchSickPigTreatmentLocation `json:"treatment_location" validate:"required"` // 治疗地点
HappenedAt time.Time `json:"happenedAt" validate:"required"` // 发生时间 HappenedAt time.Time `json:"happened_at" validate:"required"` // 发生时间
Remarks string `json:"remarks"` // 备注 Remarks string `json:"remarks"` // 备注
} }
// RecordSickPigCullRequest 用于记录病猪淘汰事件的请求体 // RecordSickPigCullRequest 用于记录病猪淘汰事件的请求体
type RecordSickPigCullRequest struct { type RecordSickPigCullRequest struct {
PenID uint `json:"penID" validate:"required"` // 猪栏ID PenID uint `json:"pen_id" validate:"required"` // 猪栏ID
Quantity int `json:"quantity" validate:"required,min=1"` // 淘汰猪数量 Quantity int `json:"quantity" validate:"required,min=1"` // 淘汰猪数量
TreatmentLocation models.PigBatchSickPigTreatmentLocation `json:"treatmentLocation" validate:"required"` // 治疗地点 TreatmentLocation models.PigBatchSickPigTreatmentLocation `json:"treatment_location" validate:"required"` // 治疗地点
HappenedAt time.Time `json:"happenedAt" validate:"required"` // 发生时间 HappenedAt time.Time `json:"happened_at" validate:"required"` // 发生时间
Remarks string `json:"remarks"` // 备注 Remarks string `json:"remarks"` // 备注
} }
// RecordDeathRequest 用于记录正常猪只死亡事件的请求体 // RecordDeathRequest 用于记录正常猪只死亡事件的请求体
type RecordDeathRequest struct { type RecordDeathRequest struct {
PenID uint `json:"penID" validate:"required"` // 猪栏ID PenID uint `json:"pen_id" validate:"required"` // 猪栏ID
Quantity int `json:"quantity" validate:"required,min=1"` // 死亡猪数量 Quantity int `json:"quantity" validate:"required,min=1"` // 死亡猪数量
HappenedAt time.Time `json:"happenedAt" validate:"required"` // 发生时间 HappenedAt time.Time `json:"happened_at" validate:"required"` // 发生时间
Remarks string `json:"remarks"` // 备注 Remarks string `json:"remarks"` // 备注
} }
// RecordCullRequest 用于记录正常猪只淘汰事件的请求体 // RecordCullRequest 用于记录正常猪只淘汰事件的请求体
type RecordCullRequest struct { type RecordCullRequest struct {
PenID uint `json:"penID" validate:"required"` // 猪栏ID PenID uint `json:"pen_id" validate:"required"` // 猪栏ID
Quantity int `json:"quantity" validate:"required,min=1"` // 淘汰猪数量 Quantity int `json:"quantity" validate:"required,min=1"` // 淘汰猪数量
HappenedAt time.Time `json:"happenedAt" validate:"required"` // 发生时间 HappenedAt time.Time `json:"happened_at" validate:"required"` // 发生时间
Remarks string `json:"remarks"` // 备注 Remarks string `json:"remarks"` // 备注
} }

View File

@@ -7,9 +7,9 @@ import (
// ListPlansQuery 定义了获取计划列表时的查询参数 // ListPlansQuery 定义了获取计划列表时的查询参数
type ListPlansQuery struct { type ListPlansQuery struct {
PlanType repository.PlanTypeFilter `query:"planType"` // 计划类型 PlanType repository.PlanTypeFilter `json:"plan_type" query:"planType"` // 计划类型
Page int `query:"page"` // 页码 Page int `json:"page" query:"page"` // 页码
PageSize int `query:"pageSize"` // 每页大小 PageSize int `json:"page_size" query:"page_size"` // 每页大小
} }
// CreatePlanRequest 定义创建计划请求的结构体 // CreatePlanRequest 定义创建计划请求的结构体