package dep import ( "kpt-pasture/config" "kpt-pasture/model" "kpt-pasture/module/consumer" "kpt-pasture/service/asynqsvc" "go.uber.org/dig" ) func DIAsynqWorkOrder() (out *asynqsvc.Server) { container := DI() if err := container.Provide(AsynqWorkOrder); err != nil { panic(err) } if err := container.Invoke(func(c *asynqsvc.Server) { out = c }); err != nil { panic(err) } return } // AsynqWorkOrder 相关消费 func AsynqWorkOrder(dep AsyncDependency) *asynqsvc.Server { srv := asynqsvc.NewServer(config.Options()) srv.Mux.HandleFunc(model.TaskWorkOrder, dep.WorkOrder.DayWorkOrder) // 工单 return srv } // AsyncDependency is the dependency for worker and kafka type AsyncDependency struct { dig.In WorkOrder consumer.BizExec // BizExec 工单 }