member
This commit is contained in:
@@ -6,6 +6,8 @@ import (
|
|||||||
"sync"
|
"sync"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
|
"git.rosy.net.cn/jx-callback/business/jxstore/financial"
|
||||||
|
|
||||||
"git.rosy.net.cn/baseapi"
|
"git.rosy.net.cn/baseapi"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxutils/excel"
|
"git.rosy.net.cn/jx-callback/business/jxutils/excel"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxutils/tasksch"
|
"git.rosy.net.cn/jx-callback/business/jxutils/tasksch"
|
||||||
@@ -587,47 +589,70 @@ func RefreshUserMemberStatus(ctx *jxcontext.Context) (err error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func InvestMember(ctx *jxcontext.Context, memberID int) (err error) {
|
func InvestMember(ctx *jxcontext.Context, memberID int) (err error) {
|
||||||
// var (
|
var (
|
||||||
// db = dao.GetDB()
|
db = dao.GetDB()
|
||||||
// memberCards []*model.MemberCard
|
memberCards []*model.MemberCard
|
||||||
// memberCard *model.MemberCard
|
memberCard *model.MemberCard
|
||||||
// )
|
)
|
||||||
// userMembers, err := dao.GetUserMember(db, ctx.GetUserID(), model.MemberTypeNormal)
|
userMembers, err := dao.GetUserMember(db, ctx.GetUserID(), model.MemberTypeNormal)
|
||||||
// configList, err := dao.QueryConfigs(db, model.ConfigTypeName[model.ConfigTypeMemberCard], model.ConfigTypeMemberCard, "")
|
configList, err := dao.QueryConfigs(db, model.ConfigTypeName[model.ConfigTypeMemberCard], model.ConfigTypeMemberCard, "")
|
||||||
// if len(configList) <= 0 {
|
userBill, err := dao.GetUserBill(db, ctx.GetUserID(), "")
|
||||||
// return fmt.Errorf("未找到会员卡配置!")
|
if len(configList) <= 0 {
|
||||||
// }
|
return fmt.Errorf("未找到会员卡配置!")
|
||||||
// config := configList[0]
|
}
|
||||||
// err = jxutils.Strings2Objs(config.Value, &memberCards)
|
config := configList[0]
|
||||||
// if err != nil {
|
err = jxutils.Strings2Objs(config.Value, &memberCards)
|
||||||
// return err
|
if err != nil {
|
||||||
// }
|
return err
|
||||||
// for _, v := range memberCards {
|
}
|
||||||
// if v.ID == memberID {
|
for _, v := range memberCards {
|
||||||
// memberCard = v
|
if v.ID == memberID {
|
||||||
// }
|
memberCard = v
|
||||||
// }
|
}
|
||||||
// dao.Begin(db)
|
}
|
||||||
// defer func() {
|
dao.Begin(db)
|
||||||
// if r := recover(); r != nil {
|
defer func() {
|
||||||
// dao.Rollback(db)
|
if r := recover(); r != nil {
|
||||||
// panic(r)
|
dao.Rollback(db)
|
||||||
// }
|
panic(r)
|
||||||
// }()
|
}
|
||||||
// //证明已经开了会员了,相当于续费
|
}()
|
||||||
// if len(userMembers) > 0 {
|
//证明已经开了会员了,相当于续费
|
||||||
// userMember := userMembers[0]
|
if len(userMembers) > 0 {
|
||||||
// if memberID == model.MemberCardTypeMonth {
|
userMember := userMembers[0]
|
||||||
// userMember.EndAt = userMember.EndAt.AddDate(0, 1, 0)
|
if memberID == model.MemberCardTypeMonth {
|
||||||
// } else {
|
userMember.EndAt = userMember.EndAt.AddDate(0, 1, 0)
|
||||||
// userMember.EndAt = userMember.EndAt.AddDate(1, 0, 0)
|
} else {
|
||||||
// }
|
userMember.EndAt = userMember.EndAt.AddDate(1, 0, 0)
|
||||||
// } else {
|
}
|
||||||
// userMember2 := &model.UserMember{}
|
if _, err = dao.UpdateEntity(db, userMember, "EndAt"); err != nil {
|
||||||
// dao.WrapAddIDCULDEntity(userMember2, ctx.GetUserName())
|
dao.Rollback(db)
|
||||||
// }
|
}
|
||||||
// //账户余额支出
|
} else {
|
||||||
// //支出明细、
|
userMember2 := &model.UserMember{
|
||||||
// dao.Commit(db)
|
UserID: ctx.GetUserID(),
|
||||||
|
MemberType: model.MemberTypeNormal,
|
||||||
|
MemberTypeID: memberID,
|
||||||
|
}
|
||||||
|
if memberID == model.MemberCardTypeMonth {
|
||||||
|
userMember2.EndAt = time.Now().AddDate(0, 1, 0)
|
||||||
|
} else {
|
||||||
|
userMember2.EndAt = time.Now().AddDate(1, 0, 0)
|
||||||
|
}
|
||||||
|
dao.WrapAddIDCULDEntity(userMember2, ctx.GetUserName())
|
||||||
|
if err = dao.CreateEntity(db, userMember2); err != nil {
|
||||||
|
dao.Rollback(db)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//支出明细
|
||||||
|
if err = financial.AddBillExpend(db, userBill.BillID, model.BillTypeMember, memberCard.Price); err != nil {
|
||||||
|
dao.Rollback(db)
|
||||||
|
}
|
||||||
|
//账户余额支出
|
||||||
|
userBill.AccountBalance -= memberCard.Price
|
||||||
|
if _, err = dao.UpdateEntity(db, userBill, "AccountBalance"); err != nil {
|
||||||
|
dao.Rollback(db)
|
||||||
|
}
|
||||||
|
dao.Commit(db)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -214,7 +214,6 @@ type UserMember struct {
|
|||||||
func (v *UserMember) TableIndex() [][]string {
|
func (v *UserMember) TableIndex() [][]string {
|
||||||
return [][]string{
|
return [][]string{
|
||||||
[]string{"UserID"},
|
[]string{"UserID"},
|
||||||
[]string{"OrderID"},
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user