add
This commit is contained in:
@@ -167,33 +167,23 @@ func SettleUnionOrders(ctx *jxcontext.Context, vendorIDs []int) (err error) {
|
||||
return err
|
||||
}
|
||||
|
||||
func WXInvestMember(ctx *jxcontext.Context, memberID int, userID string, isFree bool) (errCode string, err error) {
|
||||
func WXInvestMember(ctx *jxcontext.Context, memberID int, userID string) (errCode string, err error) {
|
||||
var db = dao.GetDB()
|
||||
//获取用户 当前会员信息
|
||||
userMembers, err := dao.GetUserMember(db, userID, model.MemberTypeNormal)
|
||||
if err != nil {
|
||||
return "获取用户会员信息失败", err
|
||||
}
|
||||
//获取用户微信下单信息
|
||||
//userBill, err := dao.GetUserBill(db, userID, "")
|
||||
//txDB, _ := dao.Begin(db)
|
||||
//defer func() {
|
||||
// if r := recover(); r != nil {
|
||||
// dao.Rollback(db, txDB)
|
||||
// panic(r)
|
||||
// }
|
||||
//}()
|
||||
//当前状态是否是会员 续费/开通
|
||||
if len(userMembers) > 0 {
|
||||
userMember := userMembers[0]
|
||||
if memberID == 2 {
|
||||
if memberID == model.OrderTypeMember {
|
||||
userMember.EndAt = userMember.EndAt.AddDate(0, 1, 0)
|
||||
} else {
|
||||
userMember.EndAt = userMember.EndAt.AddDate(1, 0, 0)
|
||||
}
|
||||
if _, err = dao.UpdateEntity(db, userMember, "EndAt"); err != nil {
|
||||
//dao.Rollback(db, txDB)
|
||||
return
|
||||
return "更新会员到期时间失败", err
|
||||
}
|
||||
} else {
|
||||
userMember2 := &model.UserMember{
|
||||
@@ -201,17 +191,15 @@ func WXInvestMember(ctx *jxcontext.Context, memberID int, userID string, isFree
|
||||
MemberType: model.MemberTypeNormal,
|
||||
MemberTypeID: memberID,
|
||||
}
|
||||
if memberID == 2 {
|
||||
if memberID == model.OrderTypeMember {
|
||||
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, txDB)
|
||||
// return
|
||||
//}
|
||||
dao.WrapAddIDCULDEntity(userMember2, ctx.GetUserName())
|
||||
if err = dao.CreateEntity(db, userMember2); err != nil {
|
||||
return "开通会员失败", err
|
||||
}
|
||||
}
|
||||
//dao.Commit(db, txDB)
|
||||
return errCode, err
|
||||
}
|
||||
|
||||
@@ -263,7 +263,6 @@ func onTLpayFinished(call *tonglianpayapi.CallBackResult) (err error) {
|
||||
if call.TrxStatus == tonglianpayapi.TrxStatusSuccess {
|
||||
order.Status = model.OrderStatusFinished
|
||||
payStatus = model.OrderStatusSuccessPay
|
||||
|
||||
} else {
|
||||
order.Status = model.OrderStatusCanceled
|
||||
payStatus = model.OrderStatusFailPay
|
||||
@@ -274,9 +273,7 @@ func onTLpayFinished(call *tonglianpayapi.CallBackResult) (err error) {
|
||||
return err
|
||||
}
|
||||
return err
|
||||
}
|
||||
//发快递
|
||||
if order.OrderType == 3 {
|
||||
} else if order.OrderType == 3 {
|
||||
txdb, _ := dao.Begin(db)
|
||||
defer func() {
|
||||
if r := recover(); r != nil {
|
||||
@@ -308,7 +305,6 @@ func onTLpayFinished(call *tonglianpayapi.CallBackResult) (err error) {
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
||||
} else {
|
||||
globals.SugarLogger.Debugf("onTLpayFinished msg:%s, err:%v", utils.Format4Output(call, true), err)
|
||||
}
|
||||
|
||||
@@ -105,30 +105,18 @@ func OnCashFinished(order *model.Order) (err error) {
|
||||
//微信支付充值会员
|
||||
func OnWXPayFinished(order *model.Order) (err error) {
|
||||
var (
|
||||
//db = dao.GetDB()
|
||||
ctx *jxcontext.Context
|
||||
)
|
||||
globals.SugarLogger.Debugf("OnWXPayFinished begin modify account order: %v", utils.Format4Output(order, false))
|
||||
//txDB, _ := dao.Begin(db)
|
||||
//defer func() {
|
||||
// if r := recover(); r != nil {
|
||||
// dao.Rollback(db, txDB)
|
||||
// panic(r)
|
||||
// }
|
||||
//}()
|
||||
//获取用户会员信息
|
||||
//userMember, err := dao.GetUserMember(db, order.UserID, model.UserStatusNormal)
|
||||
//根据订单类型来操作账户
|
||||
if order.Type == 1 {
|
||||
if _, err = WXInvestMember(ctx, order.OrderType, order.UserID, true); err != nil {
|
||||
//dao.Rollback(db, txDB)
|
||||
if order.Type == model.OrderTypePay {
|
||||
if _, err = WXInvestMember(ctx, order.OrderType, order.UserID); err != nil {
|
||||
return err
|
||||
}
|
||||
} else {
|
||||
globals.SugarLogger.Debugf("OnWXPayFinished 暂不支持此订单类型 order: %v", utils.Format4Output(order, false))
|
||||
return fmt.Errorf("暂不支持此订单类型!")
|
||||
}
|
||||
//dao.Commit(db, txDB)
|
||||
globals.SugarLogger.Debugf("OnWXPayFinished end modify account ...")
|
||||
return err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user