package routers

import (
	"tmr-watch/http/handle/group"

	"github.com/gin-gonic/gin"
)

func GroupAPI(opts ...func(engine *gin.Engine)) func(s *gin.Engine) {
	return func(s *gin.Engine) {
		for _, opt := range opts {
			opt(s)
		}
		apiPasture := s.Group("/pasture")
		apiPasture.POST("feed_formula/distribute", group.DistributeFeedFormula)              // 饲料配方下发
		apiPasture.POST("feed_formula/cancel/distribute", group.CancelDistributeFeedFormula) // 取消饲料配方下发
		apiPasture.POST("feed_formula/detail_list", group.FeedFormulaDetailList)             // 配方详细
		apiPasture.POST("feed_formula/edit_recode/list", group.EditRecodeFeedFormula)        // 饲料配方修改记录
		apiPasture.POST("feed_formula/is_modify", group.FeedFormulaIsModify)                 // 饲料配方是否可修改
		apiPasture.POST("feed_formula/async", group.FeedFormulaAsyncList)                    // 获取配方列表
		apiPasture.POST("feed/async", group.FeedAsyncList)                                   // 获取饲料列表
		apiPasture.POST("dashboard/accuracy_data", group.AnalysisAccuracy)                   // 准确率分析
		apiPasture.POST("dashboard/process_analysis", group.ProcessAnalysis)                 // 执行时间
		apiPasture.POST("dashboard/sprinkle_statistics", group.SprinkleStatistics)           // 撒料统计
		apiPasture.POST("forage_category/distribute", group.ForageCategoryDistribute)        // 饲料分类下发
		apiPasture.POST("forage_category/delete", group.ForageCategoryDelete)                // 饲料分类删除
		apiPasture.POST("cattle_category/distribute", group.CowCategoryDistribute)           // 畜牧分类下发
		apiPasture.POST("cattle_category/delete", group.CowCategoryDelete)                   // 畜牧分类删除
		apiPasture.POST("feed/usage", group.FeedUsage)                                       // 配方使用概况
		apiPasture.POST("feed_formula/version", group.FeedFormulaVersion)                    // 集团端配方信息更新同步
	}
}