创建单项订单时增加会员支付判断
This commit is contained in:
parent
2067fd6782
commit
ba91b357fb
@ -73,6 +73,7 @@ func (r *OrderSingleService) AddOrderSingle(tx *gorm.DB, UserId, QuestionId int6
|
||||
var payStatus int // 支付状态(1:未支付 2:已支付 3:支付中 4:支付失败 5:支付超时 6:支付关闭 7:已撤销 8:转入退款)
|
||||
var payTime *model.LocalTime // 支付时间
|
||||
var escrowTradeNo string // 第三方支付流水号
|
||||
var validDate *model.LocalTime // 算一算有效期
|
||||
|
||||
// 获取问题最终价格
|
||||
amountTotal, err = questionService.GetUserBuyPrice(UserId, QuestionId)
|
||||
@ -111,6 +112,18 @@ func (r *OrderSingleService) AddOrderSingle(tx *gorm.DB, UserId, QuestionId int6
|
||||
payTime = &now // 支付时间
|
||||
|
||||
escrowTradeNo = "GD" + global.Snowflake.Generate().String() // 第三方支付流水号
|
||||
|
||||
// 处理单项有效时间
|
||||
systemSingleDao := dao.SystemSingleDao{}
|
||||
|
||||
maps := make(map[string]interface{})
|
||||
systemSingle, err := systemSingleDao.GetSystemSingle(maps)
|
||||
if err != nil {
|
||||
return nil, errors.New("订单创建失败")
|
||||
}
|
||||
|
||||
singleValidDate := model.LocalTime(time.Now().Add(time.Duration(systemSingle.ValidDays) * 24 * time.Hour))
|
||||
validDate = &singleValidDate
|
||||
} else {
|
||||
if orderPrice == nil {
|
||||
return nil, errors.New("价格异常")
|
||||
@ -149,6 +162,7 @@ func (r *OrderSingleService) AddOrderSingle(tx *gorm.DB, UserId, QuestionId int6
|
||||
CancelTime: nil,
|
||||
CancelRemarks: "",
|
||||
OrderRemarks: "",
|
||||
ValidDate: validDate,
|
||||
}
|
||||
|
||||
orderSingleDao := dao.OrderSingleDao{}
|
||||
@ -214,6 +228,23 @@ func (r *OrderSingleService) AddOrderSingle(tx *gorm.DB, UserId, QuestionId int6
|
||||
}
|
||||
}
|
||||
|
||||
// 会员支付
|
||||
if payChannel == 3 {
|
||||
// 增加单项支付次数
|
||||
questionService := QuestionService{}
|
||||
res, err := questionService.AddQuestionPayCount(tx, orderSingle.QuestionId)
|
||||
if err != nil || res == false {
|
||||
return nil, errors.New("内部错误")
|
||||
}
|
||||
|
||||
// 增加用户单项支付次数
|
||||
userService := UserService{}
|
||||
res, err = userService.AddUserSingleSubmitCount(tx, orderSingle.UserId)
|
||||
if err != nil || res == false {
|
||||
return nil, errors.New("内部错误")
|
||||
}
|
||||
}
|
||||
|
||||
return orderSingle, nil
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user