package controller import ( "context" commonHttp "slogan-agent/common" "slogan-agent/styleagent/model/dto" "slogan-agent/styleagent/service" "github.com/gogf/gf/v2/frame/g" ) // member 为 /member/* 簇共享控制器类型(struct 名 kebab-case 决定路由前缀, // 多表拆分文件但保持同一类型,避免路径漂移) type member struct{} var Member = new(member) // PlanList 会员套餐列表 func (c *member) PlanList(ctx context.Context, req *dto.MemberPlanListReq) (res *dto.MemberPlanListRes, err error) { list, err := service.MemberPlanService.PlanList(ctx) if err != nil { return nil, err } return &dto.MemberPlanListRes{List: list}, nil } // Status 我的会员状态 func (c *member) Status(ctx context.Context, req *dto.MemberStatusReq) (res *dto.MemberStatusRes, err error) { st, err := service.MemberPlanService.Status(ctx, commonHttp.GetUserId(g.RequestFromCtx(ctx))) if err != nil { return nil, err } return &dto.MemberStatusRes{ IsVip: st.IsVip, ExpireAt: st.ExpireAt, PlanName: st.PlanName, Benefits: st.Benefits, }, nil }