package apirequestservicelogic import ( "context" "tianyuan-api/apps/user/internal/model" "tianyuan-api/apps/user/internal/svc" "tianyuan-api/apps/user/user" "tianyuan-api/pkg/sqlutil" "time" "github.com/zeromicro/go-zero/core/logx" ) type AddApiRequestLogic struct { ctx context.Context svcCtx *svc.ServiceContext logx.Logger } func NewAddApiRequestLogic(ctx context.Context, svcCtx *svc.ServiceContext) *AddApiRequestLogic { return &AddApiRequestLogic{ ctx: ctx, svcCtx: svcCtx, Logger: logx.WithContext(ctx), } } // 添加API请求记录 func (l *AddApiRequestLogic) AddApiRequest(in *user.AddApiRequestRequest) (*user.AddApiRequestResponse, error) { chargesValue := int64(0) if in.Charges { chargesValue = 1 } parsedTime, err := time.Parse(time.RFC3339Nano, in.Timestamp) if err != nil { // 错误处理,比如日志输出或返回错误 parsedTime = time.Now() } _, err = l.svcCtx.ApiRequestsModel.Insert(l.ctx, &model.ApiRequests{ TransactionId: in.TransactionId, UserId: in.UserId, ProductCode: in.ProductCode, Status: in.Status, Charges: chargesValue, Remark: sqlutil.StringToNullString(in.Remark), Timestamp: parsedTime, }) if err != nil { return nil, err } return &user.AddApiRequestResponse{}, nil }