2025-11-19 23:23:48 +08:00
|
|
|
package recipe
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"context"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
// Service 定义了配方与原料领域的核心业务服务接口
|
2025-11-22 21:29:23 +08:00
|
|
|
// 该接口聚合了所有子领域的服务接口
|
2025-11-19 23:23:48 +08:00
|
|
|
type Service interface {
|
2025-11-22 21:29:23 +08:00
|
|
|
NutrientService
|
|
|
|
|
RawMaterialService
|
|
|
|
|
PigBreedService
|
|
|
|
|
PigAgeStageService
|
|
|
|
|
PigTypeService
|
|
|
|
|
RecipeCoreService
|
2025-11-19 23:23:48 +08:00
|
|
|
}
|
|
|
|
|
|
2025-11-22 21:29:23 +08:00
|
|
|
// recipeServiceImpl 是 Service 的实现,通过组合各个子服务来实现
|
2025-11-19 23:23:48 +08:00
|
|
|
type recipeServiceImpl struct {
|
2025-11-22 21:29:23 +08:00
|
|
|
ctx context.Context
|
|
|
|
|
NutrientService
|
|
|
|
|
RawMaterialService
|
|
|
|
|
PigBreedService
|
|
|
|
|
PigAgeStageService
|
|
|
|
|
PigTypeService
|
|
|
|
|
RecipeCoreService
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// NewRecipeService 创建一个新的 Service 实例
|
|
|
|
|
func NewRecipeService(
|
|
|
|
|
ctx context.Context,
|
|
|
|
|
nutrientService NutrientService,
|
|
|
|
|
rawMaterialService RawMaterialService,
|
|
|
|
|
pigBreedService PigBreedService,
|
|
|
|
|
pigAgeStageService PigAgeStageService,
|
|
|
|
|
pigTypeService PigTypeService,
|
|
|
|
|
recipeCoreService RecipeCoreService,
|
|
|
|
|
) Service {
|
2025-11-19 23:23:48 +08:00
|
|
|
return &recipeServiceImpl{
|
2025-11-22 21:29:23 +08:00
|
|
|
ctx: ctx,
|
|
|
|
|
NutrientService: nutrientService,
|
|
|
|
|
RawMaterialService: rawMaterialService,
|
|
|
|
|
PigBreedService: pigBreedService,
|
|
|
|
|
PigAgeStageService: pigAgeStageService,
|
|
|
|
|
PigTypeService: pigTypeService,
|
|
|
|
|
RecipeCoreService: recipeCoreService,
|
2025-11-20 13:43:09 +08:00
|
|
|
}
|
2025-11-22 17:55:52 +08:00
|
|
|
}
|