package advice import ( "ai_scheduler/internal/biz" "ai_scheduler/internal/config" errorcode "ai_scheduler/internal/data/error" "ai_scheduler/internal/entitys" "ai_scheduler/internal/pkg" "github.com/gofiber/fiber/v2" ) // AdvicerService 数据处理 type AdvicerService struct { adviceBiz *biz.AdviceAdvicerBiz cfg *config.Config } // NewDataService func NewAdvicerService( adviceBiz *biz.AdviceAdvicerBiz, cfg *config.Config, ) *AdvicerService { return &AdvicerService{ adviceBiz: adviceBiz, cfg: cfg, } } func (d *AdvicerService) AdvicerUpdate(c *fiber.Ctx) error { req := &entitys.AdvicerInitReq{} if err := c.BodyParser(req); err != nil { return err } id, err := d.adviceBiz.Update(c.UserContext(), req) return pkg.HandleResponse(c, int(id), err) } func (d *AdvicerService) AdvicerList(c *fiber.Ctx) error { req := &entitys.AdvicerListReq{} if err := c.BodyParser(req); err != nil { return err } list, err := d.adviceBiz.List(c.UserContext(), req) return pkg.HandleResponse(c, list, err) } // AdvicerInfo 获取单个销售详情 func (d *AdvicerService) AdvicerInfo(c *fiber.Ctx) error { req := &entitys.AdvicerInfoReq{} if err := c.BodyParser(req); err != nil { return err } if req.AdvicerID == 0 { return errorcode.ParamErr("销售ID不能为空") } info, err := d.adviceBiz.Info(c.UserContext(), req) return pkg.HandleResponse(c, info, err) } // AdvicerWxDeviceIdUpdate 更新销售的微信设备 ID func (d *AdvicerService) AdvicerWxDeviceIdUpdate(c *fiber.Ctx) error { req := &entitys.AdvicerWxDeviceIdUpdateReq{} if err := c.BodyParser(req); err != nil { return err } if req.AdvicerId == 0 { return errorcode.ParamErr("销售ID不能为空") } err := d.adviceBiz.UpdateWxDeviceId(c.UserContext(), req.AdvicerId, req.WxDeviceId) return pkg.HandleResponse(c, nil, err) } // AdvicerWxIdUpdate 更新销售的登录微信 wxid func (d *AdvicerService) AdvicerWxIdUpdate(c *fiber.Ctx) error { req := &entitys.AdvicerWxIdUpdateReq{} if err := c.BodyParser(req); err != nil { return err } if req.AdvicerId == 0 { return errorcode.ParamErr("销售ID不能为空") } err := d.adviceBiz.UpdateWxId(c.UserContext(), req.AdvicerId, req.WxId) return pkg.HandleResponse(c, nil, err) } // HostingUpdate 更新销售的托管配置 func (d *AdvicerService) HostingUpdate(c *fiber.Ctx) error { req := &entitys.AdvicerHostingUpdateReq{} if err := c.BodyParser(req); err != nil { return err } if req.AdvicerId == 0 { return errorcode.ParamErr("销售ID不能为空") } err := d.adviceBiz.HostingUpdate(c.UserContext(), req) return pkg.HandleResponse(c, nil, err) } func (d *AdvicerService) AdvicerVersionAdd(c *fiber.Ctx) error { req := &entitys.AdvicerVersionAddReq{} if err := c.BodyParser(req); err != nil { return err } id, err := d.adviceBiz.VersionAdd(c.UserContext(), req) return pkg.HandleResponse(c, id, err) } func (d *AdvicerService) AdvicerVersionUpdate(c *fiber.Ctx) error { req := &entitys.AdvicerVersionUpdateReq{} if err := c.BodyParser(req); err != nil { return err } return d.adviceBiz.VersionUpdate(c.UserContext(), req) } func (d *AdvicerService) AdvicerVersionList(c *fiber.Ctx) error { req := &entitys.AdvicerVersionListReq{} if err := c.BodyParser(req); err != nil { return err } list, err := d.adviceBiz.VersionList(c.UserContext(), req) return pkg.HandleResponse(c, list, err) } func (d *AdvicerService) AdvicerVersionDel(c *fiber.Ctx) error { req := &entitys.AdvicerVersionDelReq{} if err := c.BodyParser(req); err != nil { return err } return d.adviceBiz.VersionDel(c.UserContext(), req) } // VersionStyleGenerate AI 生成销售风格维度 func (d *AdvicerService) VersionStyleGenerate(c *fiber.Ctx) error { req := &entitys.AdvicerVersionStyleGenerateReq{} if err := c.BodyParser(req); err != nil { return err } if req.AdvicerId == 0 { return errorcode.ParamErr("advicerId is empty") } data, err := d.adviceBiz.VersionStyleGenerate(c.UserContext(), req) return pkg.HandleResponse(c, data, err) }