Fix Bug unable to redeem points : Add migration to PointHistory
This commit is contained in:
commit
99e7b2b565
2 changed files with 6 additions and 0 deletions
|
@ -7,6 +7,7 @@ import (
|
||||||
cModel "donetick.com/core/internal/circle/model"
|
cModel "donetick.com/core/internal/circle/model"
|
||||||
pModel "donetick.com/core/internal/points"
|
pModel "donetick.com/core/internal/points"
|
||||||
uModel "donetick.com/core/internal/user/model"
|
uModel "donetick.com/core/internal/user/model"
|
||||||
|
"donetick.com/core/logging"
|
||||||
"gorm.io/gorm"
|
"gorm.io/gorm"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -142,7 +143,9 @@ func (r *CircleRepository) AssignDefaultCircle(c context.Context, userID int) er
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r *CircleRepository) RedeemPoints(c context.Context, circleID int, userID int, points int, createdBy int) error {
|
func (r *CircleRepository) RedeemPoints(c context.Context, circleID int, userID int, points int, createdBy int) error {
|
||||||
|
logger := logging.FromContext(c)
|
||||||
err := r.db.Transaction(func(tx *gorm.DB) error {
|
err := r.db.Transaction(func(tx *gorm.DB) error {
|
||||||
|
|
||||||
if err := tx.Model(&cModel.UserCircle{}).Where("user_id = ? AND circle_id = ?", userID, circleID).Update("points_redeemed", gorm.Expr("points_redeemed + ?", points)).Error; err != nil {
|
if err := tx.Model(&cModel.UserCircle{}).Where("user_id = ? AND circle_id = ?", userID, circleID).Update("points_redeemed", gorm.Expr("points_redeemed + ?", points)).Error; err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
@ -159,6 +162,7 @@ func (r *CircleRepository) RedeemPoints(c context.Context, circleID int, userID
|
||||||
return nil
|
return nil
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
logger.Error("Error redeeming points", err)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
|
|
|
@ -9,6 +9,7 @@ import (
|
||||||
chModel "donetick.com/core/internal/chore/model"
|
chModel "donetick.com/core/internal/chore/model"
|
||||||
cModel "donetick.com/core/internal/circle/model"
|
cModel "donetick.com/core/internal/circle/model"
|
||||||
nModel "donetick.com/core/internal/notifier/model"
|
nModel "donetick.com/core/internal/notifier/model"
|
||||||
|
pModel "donetick.com/core/internal/points"
|
||||||
tModel "donetick.com/core/internal/thing/model"
|
tModel "donetick.com/core/internal/thing/model"
|
||||||
uModel "donetick.com/core/internal/user/model" // Pure go SQLite driver, checkout https://github.com/glebarez/sqlite for details
|
uModel "donetick.com/core/internal/user/model" // Pure go SQLite driver, checkout https://github.com/glebarez/sqlite for details
|
||||||
migrations "donetick.com/core/migrations"
|
migrations "donetick.com/core/migrations"
|
||||||
|
@ -35,6 +36,7 @@ func Migration(db *gorm.DB) error {
|
||||||
chModel.Label{},
|
chModel.Label{},
|
||||||
chModel.ChoreLabels{},
|
chModel.ChoreLabels{},
|
||||||
migrations.Migration{},
|
migrations.Migration{},
|
||||||
|
pModel.PointsHistory{},
|
||||||
); err != nil {
|
); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue