Files
ycc-proxy-server/app/main/api/internal/logic/agent/checkorderagentlogic.go
2026-01-13 18:30:10 +08:00

47 lines
1.1 KiB
Go

package agent
import (
"context"
"ycc-server/app/main/api/internal/logic/query"
"ycc-server/app/main/api/internal/svc"
"ycc-server/app/main/api/internal/types"
"github.com/pkg/errors"
"ycc-server/common/ctxdata"
"ycc-server/common/xerr"
"github.com/zeromicro/go-zero/core/logx"
)
type CheckOrderAgentLogic struct {
logx.Logger
ctx context.Context
svcCtx *svc.ServiceContext
}
func NewCheckOrderAgentLogic(ctx context.Context, svcCtx *svc.ServiceContext) *CheckOrderAgentLogic {
return &CheckOrderAgentLogic{
Logger: logx.WithContext(ctx),
ctx: ctx,
svcCtx: svcCtx,
}
}
func (l *CheckOrderAgentLogic) CheckOrderAgent(req *types.CheckOrderAgentReq) (resp *types.CheckOrderAgentResp, err error) {
// 获取当前用户ID
userId, err := ctxdata.GetUidFromCtx(l.ctx)
if err != nil {
return nil, errors.Wrapf(xerr.NewErrCode(xerr.SERVER_COMMON_ERROR), "获取用户ID失败: %v", err)
}
// 检查订单是否属于当前代理推广
isAgent, err := query.IsOrderAgent(l.ctx, l.svcCtx, userId, req.OrderId)
if err != nil {
return nil, err
}
return &types.CheckOrderAgentResp{
IsAgentOrder: isAgent,
}, nil
}