增加了用户支付次数,购买次数等字段维护

This commit is contained in:
2024-08-02 14:32:45 +08:00
parent 8094cd3c51
commit f3833ee5d5
6 changed files with 123 additions and 10 deletions
+12 -4
View File
@@ -372,6 +372,9 @@ func (r *OrderSingleService) GetAppPrepay(m *model.OrderSingle) (prepay *app.Pre
// CompleteUnPayOrderSingle 完成未支付单项订单-开通会员成功时使用
func (r *OrderSingleService) CompleteUnPayOrderSingle(tx *gorm.DB, userId int64) (bool, error) {
questionService := QuestionService{}
userService := UserService{}
// 获取所有未支付单项订单
orderSingleDao := dao.OrderSingleDao{}
maps := make(map[string]interface{})
@@ -399,10 +402,15 @@ func (r *OrderSingleService) CompleteUnPayOrderSingle(tx *gorm.DB, userId int64)
return false, err
}
// 增加题目支付次数
questionDao := dao.QuestionDao{}
err = questionDao.Inc(tx, single.QuestionId, "pay_count", 1)
if err != nil {
// 增加单项支付次数
res, err := questionService.AddQuestionPayCount(tx, single.QuestionId)
if err != nil || res == false {
return false, err
}
// 增加用户单项支付次数
res, err = userService.AddUserSingleSubmitCount(tx, userId)
if err != nil || res == false {
return false, err
}
}
+23
View File
@@ -2,6 +2,7 @@ package service
import (
"errors"
"gorm.io/gorm"
"hepa-calc-api/api/dao"
"hepa-calc-api/api/model"
"time"
@@ -206,3 +207,25 @@ func (r *QuestionService) HandleQuestionDiscountPrice(discountPrice *float64, di
return p
}
// AddQuestionSubmitCount 增加单项提交次数
func (r *QuestionService) AddQuestionSubmitCount(tx *gorm.DB, questionId int64) (bool, error) {
questionDao := dao.QuestionDao{}
err := questionDao.Inc(tx, questionId, "submit_count", 1)
if err != nil {
return false, err
}
return true, nil
}
// AddQuestionPayCount 增加单项支付次数
func (r *QuestionService) AddQuestionPayCount(tx *gorm.DB, userId int64) (bool, error) {
questionDao := dao.QuestionDao{}
err := questionDao.Inc(tx, userId, "pay_count", 1)
if err != nil {
return false, err
}
return true, nil
}
+33
View File
@@ -105,3 +105,36 @@ func (r *UserService) AddUserMemberValidDate(tx *gorm.DB, user *model.User, d in
return true
}
// AddUserSingleSubmitCount 增加用户单项提交次数
func (r *UserService) AddUserSingleSubmitCount(tx *gorm.DB, userId int64) (bool, error) {
userDao := dao.UserDao{}
err := userDao.Inc(tx, userId, "single_submit_count", 1)
if err != nil {
return false, err
}
return true, nil
}
// AddUserSinglePayCount 增加用户单项支付次数
func (r *UserService) AddUserSinglePayCount(tx *gorm.DB, userId int64) (bool, error) {
userDao := dao.UserDao{}
err := userDao.Inc(tx, userId, "single_pay_count", 1)
if err != nil {
return false, err
}
return true, nil
}
// AddUserMemberBuyCount 增加用户会员购买次数
func (r *UserService) AddUserMemberBuyCount(tx *gorm.DB, userId int64) (bool, error) {
userDao := dao.UserDao{}
err := userDao.Inc(tx, userId, "member_buy_count", 1)
if err != nil {
return false, err
}
return true, nil
}