token
This commit is contained in:
@@ -787,7 +787,7 @@ func GetSelfInfo(ctx *jxcontext.Context) (getSelfInfoResult *GetSelfInfoResult,
|
|||||||
tokenInfo, err := auth2.GetTokenInfo(ctx.GetToken())
|
tokenInfo, err := auth2.GetTokenInfo(ctx.GetToken())
|
||||||
if err == nil {
|
if err == nil {
|
||||||
if user, err2 := dao.GetUserByID(dao.GetDB(), "user_id", tokenInfo.GetID()); err2 == nil {
|
if user, err2 := dao.GetUserByID(dao.GetDB(), "user_id", tokenInfo.GetID()); err2 == nil {
|
||||||
if userMembers, err3 := dao.GetUserMember(dao.GetDB(), user.UserID, "", 0); err3 == nil {
|
if userMembers, err3 := dao.GetUserMember(dao.GetDB(), user.UserID, "", 0, model.YES); err3 == nil {
|
||||||
getSelfInfoResult = &GetSelfInfoResult{
|
getSelfInfoResult = &GetSelfInfoResult{
|
||||||
User: user,
|
User: user,
|
||||||
UserMembers: userMembers,
|
UserMembers: userMembers,
|
||||||
@@ -1140,3 +1140,7 @@ func CleanUserOrderSMSMark(ctx *jxcontext.Context) (err error) {
|
|||||||
}
|
}
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func RefreshUserMemberStatus(ctx *jxcontext.Context) (err error) {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|||||||
@@ -267,6 +267,8 @@ func Init() {
|
|||||||
ScheduleTimerFunc("ChangeJxPriceByDiscountAct", func() {
|
ScheduleTimerFunc("ChangeJxPriceByDiscountAct", func() {
|
||||||
act.ChangeJxPriceByDiscountAct(jxcontext.AdminCtx)
|
act.ChangeJxPriceByDiscountAct(jxcontext.AdminCtx)
|
||||||
}, discountActJxList)
|
}, discountActJxList)
|
||||||
|
ScheduleTimerFunc("RefreshUserMemberStatus", func() {
|
||||||
|
}, updateActStatusTimeList)
|
||||||
}
|
}
|
||||||
ScheduleTimerFunc("AutoSaleStoreSku", func() {
|
ScheduleTimerFunc("AutoSaleStoreSku", func() {
|
||||||
cms.AutoSaleStoreSku(jxcontext.AdminCtx, nil, false)
|
cms.AutoSaleStoreSku(jxcontext.AdminCtx, nil, false)
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ import (
|
|||||||
"errors"
|
"errors"
|
||||||
"net/http"
|
"net/http"
|
||||||
|
|
||||||
|
"git.rosy.net.cn/baseapi/utils"
|
||||||
"git.rosy.net.cn/jx-callback/business/auth2"
|
"git.rosy.net.cn/jx-callback/business/auth2"
|
||||||
"git.rosy.net.cn/jx-callback/business/model"
|
"git.rosy.net.cn/jx-callback/business/model"
|
||||||
"git.rosy.net.cn/jx-callback/business/model/dao"
|
"git.rosy.net.cn/jx-callback/business/model/dao"
|
||||||
@@ -56,7 +57,7 @@ func New(notUsed interface{}, token string, w http.ResponseWriter, r *http.Reque
|
|||||||
authInfo, err2 := auth2.GetTokenInfo(token)
|
authInfo, err2 := auth2.GetTokenInfo(token)
|
||||||
if err = err2; err == nil {
|
if err = err2; err == nil {
|
||||||
ctx.userInfo = authInfo
|
ctx.userInfo = authInfo
|
||||||
// globals.SugarLogger.Debugf("jxcontext New, V2 authInfo:%s", utils.Format4Output(authInfo, true))
|
globals.SugarLogger.Debugf("jxcontext New, V2 authInfo:%s", utils.Format4Output(authInfo, true))
|
||||||
if authInfo.TokenType != auth2.TokenTypeNormal {
|
if authInfo.TokenType != auth2.TokenTypeNormal {
|
||||||
err = errors.New("需要正式TOKEN")
|
err = errors.New("需要正式TOKEN")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -259,7 +259,7 @@ func GetUserOrderSMS(db *DaoDB, mobile, name string) (userOrderSms *model.UserOr
|
|||||||
return userOrderSms, err
|
return userOrderSms, err
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetUserMember(db *DaoDB, userID, vendorOrderID string, memberType int) (userMembers []*model.UserMember, err error) {
|
func GetUserMember(db *DaoDB, userID, vendorOrderID string, memberType, isPay int) (userMembers []*model.UserMember, err error) {
|
||||||
sql := `
|
sql := `
|
||||||
SELECT *
|
SELECT *
|
||||||
FROM user_member
|
FROM user_member
|
||||||
@@ -278,5 +278,9 @@ func GetUserMember(db *DaoDB, userID, vendorOrderID string, memberType int) (use
|
|||||||
sql += " AND member_type = ?"
|
sql += " AND member_type = ?"
|
||||||
sqlParams = append(sqlParams, memberType)
|
sqlParams = append(sqlParams, memberType)
|
||||||
}
|
}
|
||||||
|
if isPay != 0 {
|
||||||
|
sql += " AND is_pay = ?"
|
||||||
|
sqlParams = append(sqlParams, isPay)
|
||||||
|
}
|
||||||
return userMembers, err
|
return userMembers, err
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -362,6 +362,10 @@ func Pay4User(ctx *jxcontext.Context, thingID, payType int, vendorPayType string
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
discountCard := findDiscountCard(dicountCards, thingID)
|
discountCard := findDiscountCard(dicountCards, thingID)
|
||||||
|
flag, userMemberOrigin, err := checkMember(db, ctx.GetUserID(), discountCard)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
vendorOrderID = utils.Int64ToStr(GenOrderNo(ctx))
|
vendorOrderID = utils.Int64ToStr(GenOrderNo(ctx))
|
||||||
order = &model.GoodsOrder{
|
order = &model.GoodsOrder{
|
||||||
VendorOrderID: vendorOrderID,
|
VendorOrderID: vendorOrderID,
|
||||||
@@ -381,7 +385,12 @@ func Pay4User(ctx *jxcontext.Context, thingID, payType int, vendorPayType string
|
|||||||
IsPay: model.NO,
|
IsPay: model.NO,
|
||||||
}
|
}
|
||||||
dao.WrapAddIDCULDEntity(userMember, ctx.GetUserName())
|
dao.WrapAddIDCULDEntity(userMember, ctx.GetUserName())
|
||||||
dao.CreateEntity(db, userMember)
|
if flag == 0 {
|
||||||
|
dao.CreateEntity(db, userMember)
|
||||||
|
} else if flag == 1 {
|
||||||
|
userMemberOrigin.EndAt = userMemberOrigin.EndAt.AddDate(0, 1, 0)
|
||||||
|
dao.UpdateEntity(db, userMemberOrigin, "EndAt")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
err = fmt.Errorf("支付方式:%d当前不支持", payType)
|
err = fmt.Errorf("支付方式:%d当前不支持", payType)
|
||||||
@@ -389,6 +398,25 @@ func Pay4User(ctx *jxcontext.Context, thingID, payType int, vendorPayType string
|
|||||||
return orderPay, err
|
return orderPay, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//flag
|
||||||
|
//0 正常购买
|
||||||
|
//1 续费
|
||||||
|
//-1 不能购买
|
||||||
|
func checkMember(db *dao.DaoDB, userID string, discountCard *model.DiscountCard) (flag int, userMember *model.UserMember, err error) {
|
||||||
|
userMembers, err := dao.GetUserMember(db, userID, "", model.MemberTypeDiscountCard, model.YES)
|
||||||
|
if len(userMembers) > 0 {
|
||||||
|
userMember = userMembers[0]
|
||||||
|
if userMember.ID < discountCard.ID {
|
||||||
|
return 0, userMember, err
|
||||||
|
} else if userMember.ID == discountCard.ID {
|
||||||
|
return 1, userMember, err
|
||||||
|
} else {
|
||||||
|
return -1, userMember, fmt.Errorf("已购买更高档次的会员,无法继续购买!")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return 0, userMember, err
|
||||||
|
}
|
||||||
|
|
||||||
func time2ShortTimeStr(t time.Time) string {
|
func time2ShortTimeStr(t time.Time) string {
|
||||||
return t.Format("15:04")
|
return t.Format("15:04")
|
||||||
}
|
}
|
||||||
@@ -497,7 +525,7 @@ func OnPayFinished(orderPay *model.OrderPay) (err error) {
|
|||||||
} else {
|
} else {
|
||||||
switch orderPay.PayType {
|
switch orderPay.PayType {
|
||||||
case model.PayTypeTL_DiscountCard:
|
case model.PayTypeTL_DiscountCard:
|
||||||
userMembers, _ := dao.GetUserMember(dao.GetDB(), "", orderPay.VendorOrderID, model.MemberTypeDiscountCard)
|
userMembers, _ := dao.GetUserMember(dao.GetDB(), "", orderPay.VendorOrderID, model.MemberTypeDiscountCard, model.NO)
|
||||||
if len(userMembers) > 0 {
|
if len(userMembers) > 0 {
|
||||||
userMembers[0].IsPay = model.YES
|
userMembers[0].IsPay = model.YES
|
||||||
dao.UpdateEntity(dao.GetDB(), userMembers[0], "IsPay")
|
dao.UpdateEntity(dao.GetDB(), userMembers[0], "IsPay")
|
||||||
@@ -930,7 +958,7 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64
|
|||||||
} else {
|
} else {
|
||||||
tuserID = userID
|
tuserID = userID
|
||||||
}
|
}
|
||||||
userMembers, _ := dao.GetUserMember(db, tuserID, "", model.MemberTypeDiscountCard)
|
userMembers, _ := dao.GetUserMember(db, tuserID, "", model.MemberTypeDiscountCard, model.YES)
|
||||||
if len(userMembers) > 0 {
|
if len(userMembers) > 0 {
|
||||||
if configList, err := dao.QueryConfigs(db, "会员折扣卡", model.ConfigTypeDiscountCard, ""); err == nil {
|
if configList, err := dao.QueryConfigs(db, "会员折扣卡", model.ConfigTypeDiscountCard, ""); err == nil {
|
||||||
jxutils.Strings2Objs(configList[0].Value, &dicountCards)
|
jxutils.Strings2Objs(configList[0].Value, &dicountCards)
|
||||||
@@ -941,7 +969,6 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64
|
|||||||
outJxOrder.ActualPayPrice = outJxOrder.OrderPrice + outJxOrder.FreightPrice
|
outJxOrder.ActualPayPrice = outJxOrder.OrderPrice + outJxOrder.FreightPrice
|
||||||
} else if jxOrder.OrderType == model.OrderTypeDefendPrice {
|
} else if jxOrder.OrderType == model.OrderTypeDefendPrice {
|
||||||
outJxOrder.Skus[0].DefendPrice = jxOrder.Skus[0].DefendPrice
|
outJxOrder.Skus[0].DefendPrice = jxOrder.Skus[0].DefendPrice
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
outJxOrder.TotalPrice = outJxOrder.OrderPrice + outJxOrder.FreightPrice
|
outJxOrder.TotalPrice = outJxOrder.OrderPrice + outJxOrder.FreightPrice
|
||||||
outJxOrder.ActualPayPrice = outJxOrder.TotalPrice
|
outJxOrder.ActualPayPrice = outJxOrder.TotalPrice
|
||||||
|
|||||||
Reference in New Issue
Block a user