fix:
This commit is contained in:
parent
b7f3bcac3d
commit
a0a31709e5
|
@ -288,13 +288,18 @@ func PushWXPayNotice(c *gin.Context) {
|
||||||
expireTime = user.MemberExpire.AddDate(1, 0, 0)
|
expireTime = user.MemberExpire.AddDate(1, 0, 0)
|
||||||
}
|
}
|
||||||
|
|
||||||
configInfo, err := model.PayConfigInfo()
|
//configInfo, err := model.PayConfigInfo()
|
||||||
|
//if err != nil {
|
||||||
|
// logger.Error("err:", err)
|
||||||
|
// return
|
||||||
|
//}
|
||||||
|
memberConfig, err := model.GetMemberConfig(record.MemberLevel)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("err:", err)
|
logger.Error("GetMemberConfig err:", err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
err = model.UserUpdate(&model.User{Uid: uint32(record.Uid), MemberLevel: 2, MemberExpire: expireTime, Deposit: configInfo.DepositFee})
|
err = model.UserUpdate(&model.User{Uid: uint32(record.Uid), MemberLevel: record.MemberLevel, MemberExpire: expireTime, Deposit: memberConfig.MemberDeposit})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("err:", err)
|
logger.Error("err:", err)
|
||||||
}
|
}
|
||||||
|
@ -313,6 +318,7 @@ func PushWXPayNotice(c *gin.Context) {
|
||||||
MemberType: 2,
|
MemberType: 2,
|
||||||
ToUid: record.Uid,
|
ToUid: record.Uid,
|
||||||
MemberStatus: 2,
|
MemberStatus: 2,
|
||||||
|
MemberLevel: record.MemberLevel,
|
||||||
}
|
}
|
||||||
err := userInvite.Create(model.DB)
|
err := userInvite.Create(model.DB)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -321,7 +327,7 @@ func PushWXPayNotice(c *gin.Context) {
|
||||||
} else {
|
} else {
|
||||||
qs := model.NewUserInviteQuerySet(model.DB).ToUidEq(record.Uid).GetUpdater()
|
qs := model.NewUserInviteQuerySet(model.DB).ToUidEq(record.Uid).GetUpdater()
|
||||||
if user.MemberLevel != 2 {
|
if user.MemberLevel != 2 {
|
||||||
qs = qs.SetMemberOpenTime(time.Now())
|
qs = qs.SetMemberOpenTime(time.Now()).SetMemberLevel(record.MemberLevel)
|
||||||
}
|
}
|
||||||
num, err := qs.SetMemberType(2).SetMemberStatus(2).UpdateNum()
|
num, err := qs.SetMemberType(2).SetMemberStatus(2).UpdateNum()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -333,8 +339,8 @@ func PushWXPayNotice(c *gin.Context) {
|
||||||
|
|
||||||
if invite.FromUid != 0 {
|
if invite.FromUid != 0 {
|
||||||
inviteUser := model.GetUserByUid(invite.FromUid)
|
inviteUser := model.GetUserByUid(invite.FromUid)
|
||||||
if inviteUser.UserType != 2 && user.MemberLevel != 2 {
|
if inviteUser.UserType != 2 && user.MemberLevel != 2 { // 邀请 新用户推送一次
|
||||||
err := model.CodeSendToUser(invite.FromUid, model.CodeTypeMemberCard30,model.RedeemCodeActivityTypeUserInvite)
|
err := model.CodeSendToUser(invite.FromUid, model.CodeTypeMemberCard30, model.RedeemCodeActivityTypeUserInvite)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("err:", err)
|
logger.Error("err:", err)
|
||||||
}
|
}
|
||||||
|
@ -344,7 +350,7 @@ func PushWXPayNotice(c *gin.Context) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if user.MemberLevel != 2 {
|
if user.MemberLevel != 2 {
|
||||||
err = model.CodeSendToUser(user.Uid, model.CodeTypeMemberCard30,model.RedeemCodeActivityTypeStore)
|
err = model.CodeSendToUser(user.Uid, model.CodeTypeMemberCard30, model.RedeemCodeActivityTypeStore)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("err:", err)
|
logger.Error("err:", err)
|
||||||
}
|
}
|
||||||
|
|
|
@ -161,12 +161,12 @@ func OrderCreate(c *gin.Context) {
|
||||||
//}
|
//}
|
||||||
|
|
||||||
req := struct {
|
req := struct {
|
||||||
GameCardId uint64 `json:"game_card_id"`
|
GameCardList []model.CardInfo `json:"game_card_list"`
|
||||||
StoreId uint64 `json:"store_id"`
|
StoreId uint64 `json:"store_id"`
|
||||||
UserAddressId uint64 `json:"user_address_id"`
|
UserAddressId uint64 `json:"user_address_id"`
|
||||||
Price uint32 `json:"price"`
|
Price uint32 `json:"price"`
|
||||||
DeliveryType uint8 `json:"delivery_type"` // 取货方式
|
DeliveryType uint8 `json:"delivery_type"` // 取货方式
|
||||||
ExpressFee uint32 `json:"express_fee"`
|
ExpressFee uint32 `json:"express_fee"`
|
||||||
}{}
|
}{}
|
||||||
|
|
||||||
bodyString, err := ioutil.ReadAll(c.Request.Body)
|
bodyString, err := ioutil.ReadAll(c.Request.Body)
|
||||||
|
@ -222,7 +222,21 @@ func OrderCreate(c *gin.Context) {
|
||||||
RespJson(c, status.OrderUnpaidDeposit, nil)
|
RespJson(c, status.OrderUnpaidDeposit, nil)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
memberConfig, err := model.GetMemberConfig(user.MemberLevel)
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("GetMemberConfig err:", err)
|
||||||
|
RespJson(c, status.InternalServerError, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
cardCount := uint32(0)
|
||||||
|
for _, v := range req.GameCardList {
|
||||||
|
cardCount += v.Count
|
||||||
|
}
|
||||||
|
if memberConfig.MemberLever < cardCount {
|
||||||
|
logger.Error("GetMemberConfig err:", err)
|
||||||
|
RespJson(c, status.OrderMemberLevelLow, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
model.UnPayOrderSetCancel(user.Uid)
|
model.UnPayOrderSetCancel(user.Uid)
|
||||||
|
|
||||||
orderCreateLocker.Lock()
|
orderCreateLocker.Lock()
|
||||||
|
@ -240,7 +254,7 @@ func OrderCreate(c *gin.Context) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
online, err := model.IsGameCardOnline(uint32(req.GameCardId))
|
online, err := model.IsGameCardListOnline(req.GameCardList)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("err:", err)
|
logger.Error("err:", err)
|
||||||
RespJson(c, status.InternalServerError, nil)
|
RespJson(c, status.InternalServerError, nil)
|
||||||
|
@ -262,7 +276,7 @@ func OrderCreate(c *gin.Context) {
|
||||||
|
|
||||||
order := model.Order{
|
order := model.Order{
|
||||||
Uid: uint64(uc.Uid),
|
Uid: uint64(uc.Uid),
|
||||||
GameCardId: req.GameCardId,
|
GameCardId: 0,
|
||||||
StoreId: req.StoreId,
|
StoreId: req.StoreId,
|
||||||
UserAddressId: req.UserAddressId,
|
UserAddressId: req.UserAddressId,
|
||||||
DeliveryType: req.DeliveryType,
|
DeliveryType: req.DeliveryType,
|
||||||
|
@ -278,80 +292,80 @@ func OrderCreate(c *gin.Context) {
|
||||||
|
|
||||||
//tx := model.TransactionBegin()
|
//tx := model.TransactionBegin()
|
||||||
////TODO 以支付成功作为订单下单成功的依据,不是订单创建 已修改
|
////TODO 以支付成功作为订单下单成功的依据,不是订单创建 已修改
|
||||||
var gameCardGoodsStock model.GameCardGoodsStock
|
//var gameCardGoodsStock model.GameCardGoodsStock
|
||||||
err = model.NewGameCardGoodsStockQuerySet(model.DB).StoreIdEq(req.StoreId).GameCardIdEq(req.GameCardId).One(&gameCardGoodsStock)
|
//err = model.NewGameCardGoodsStockQuerySet(model.DB).StoreIdEq(req.StoreId).GameCardIdEq(req.GameCardId).One(&gameCardGoodsStock)
|
||||||
if err != nil {
|
|
||||||
logger.Error("err:", err)
|
|
||||||
RespJson(c, status.InternalServerError, nil)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if gameCardGoodsStock.RentStock <= 0 {
|
|
||||||
logger.Error("order stock out ")
|
|
||||||
RespJson(c, status.OrderStockOut, nil)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
fmt.Println("PayPrice:", order.PayPrice)
|
|
||||||
if req.Price == 0 {
|
|
||||||
order.PayStatus = model.PayStatusPaid
|
|
||||||
fmt.Println("orderId:", order.PayStatus)
|
|
||||||
err = order.OrderCreate()
|
|
||||||
if err != nil {
|
|
||||||
logger.Error("err:", err)
|
|
||||||
RespJson(c, status.InternalServerError, nil)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// 减库存
|
|
||||||
sql := fmt.Sprintf("UPDATE game_card_goods_stock SET rent_stock= rent_stock-1 WHERE store_id=%d AND game_card_id=%d;", req.StoreId, req.GameCardId)
|
|
||||||
fmt.Println("sql:", sql)
|
|
||||||
err = model.DB.Exec(sql).Error
|
|
||||||
if err != nil {
|
|
||||||
logger.Errorf("err:", err)
|
|
||||||
RespJson(c, status.InternalServerError, nil)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
ret := map[string]interface{}{
|
|
||||||
"web_pay": "",
|
|
||||||
"order_id": order.ID,
|
|
||||||
}
|
|
||||||
RespOK(c, ret)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
begin := model.DB.Begin()
|
|
||||||
//err = order.OrderCreate()
|
|
||||||
//if err != nil {
|
//if err != nil {
|
||||||
// logger.Error("err:", err)
|
// logger.Error("err:", err)
|
||||||
// RespJson(c, status.InternalServerError, nil)
|
// RespJson(c, status.InternalServerError, nil)
|
||||||
// return
|
// return
|
||||||
//}
|
//}
|
||||||
err = order.Create(begin)
|
//if gameCardGoodsStock.RentStock <= 0 {
|
||||||
if err != nil {
|
// logger.Error("order stock out ")
|
||||||
begin.Rollback()
|
// RespJson(c, status.OrderStockOut, nil)
|
||||||
logger.Error("err:", err)
|
// return
|
||||||
RespJson(c, status.InternalServerError, nil)
|
//}
|
||||||
return
|
//
|
||||||
}
|
//fmt.Println("PayPrice:", order.PayPrice)
|
||||||
|
//if req.Price == 0 {
|
||||||
// 减库存
|
// order.PayStatus = model.PayStatusPaid
|
||||||
sql := fmt.Sprintf("UPDATE game_card_goods_stock SET rent_stock= rent_stock-1 WHERE store_id=%d AND game_card_id=%d;", req.StoreId, req.GameCardId)
|
// fmt.Println("orderId:", order.PayStatus)
|
||||||
fmt.Println("sql:", sql)
|
// err = order.OrderCreate()
|
||||||
err = begin.Exec(sql).Error
|
// if err != nil {
|
||||||
if err != nil {
|
// logger.Error("err:", err)
|
||||||
begin.Rollback()
|
// RespJson(c, status.InternalServerError, nil)
|
||||||
logger.Errorf("err:", err)
|
// return
|
||||||
RespJson(c, status.InternalServerError, nil)
|
// }
|
||||||
return
|
//
|
||||||
}
|
// // 减库存
|
||||||
err = begin.Commit().Error
|
// sql := fmt.Sprintf("UPDATE game_card_goods_stock SET rent_stock= rent_stock-1 WHERE store_id=%d AND game_card_id=%d;", req.StoreId, req.GameCardId)
|
||||||
if err != nil {
|
// fmt.Println("sql:", sql)
|
||||||
begin.Rollback()
|
// err = model.DB.Exec(sql).Error
|
||||||
logger.Errorf("err:", err)
|
// if err != nil {
|
||||||
RespJson(c, status.InternalServerError, nil)
|
// logger.Errorf("err:", err)
|
||||||
return
|
// RespJson(c, status.InternalServerError, nil)
|
||||||
}
|
// return
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// ret := map[string]interface{}{
|
||||||
|
// "web_pay": "",
|
||||||
|
// "order_id": order.ID,
|
||||||
|
// }
|
||||||
|
// RespOK(c, ret)
|
||||||
|
// return
|
||||||
|
//}
|
||||||
|
//
|
||||||
|
//begin := model.DB.Begin()
|
||||||
|
////err = order.OrderCreate()
|
||||||
|
////if err != nil {
|
||||||
|
//// logger.Error("err:", err)
|
||||||
|
//// RespJson(c, status.InternalServerError, nil)
|
||||||
|
//// return
|
||||||
|
////}
|
||||||
|
//err = order.Create(begin)
|
||||||
|
//if err != nil {
|
||||||
|
// begin.Rollback()
|
||||||
|
// logger.Error("err:", err)
|
||||||
|
// RespJson(c, status.InternalServerError, nil)
|
||||||
|
// return
|
||||||
|
//}
|
||||||
|
//
|
||||||
|
//// 减库存
|
||||||
|
//sql := fmt.Sprintf("UPDATE game_card_goods_stock SET rent_stock= rent_stock-1 WHERE store_id=%d AND game_card_id=%d;", req.StoreId, req.GameCardId)
|
||||||
|
//fmt.Println("sql:", sql)
|
||||||
|
//err = begin.Exec(sql).Error
|
||||||
|
//if err != nil {
|
||||||
|
// begin.Rollback()
|
||||||
|
// logger.Errorf("err:", err)
|
||||||
|
// RespJson(c, status.InternalServerError, nil)
|
||||||
|
// return
|
||||||
|
//}
|
||||||
|
//err = begin.Commit().Error
|
||||||
|
//if err != nil {
|
||||||
|
// begin.Rollback()
|
||||||
|
// logger.Errorf("err:", err)
|
||||||
|
// RespJson(c, status.InternalServerError, nil)
|
||||||
|
// return
|
||||||
|
//}
|
||||||
|
|
||||||
orderId := fmt.Sprintf("%d", order.ID)
|
orderId := fmt.Sprintf("%d", order.ID)
|
||||||
//orderId = "100000"
|
//orderId = "100000"
|
||||||
|
|
|
@ -57,6 +57,9 @@ func ShoppingCartAdd(c *gin.Context) {
|
||||||
RespJson(c, status.BadRequest, nil)
|
RespJson(c, status.BadRequest, nil)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
//fmt.Println("GameCardId:",req.GameCardId)
|
||||||
|
//fmt.Println("AddType:",req.AddType)
|
||||||
|
|
||||||
if req.GameCardId == 0 {
|
if req.GameCardId == 0 {
|
||||||
logger.Error("GameCardId is 0")
|
logger.Error("GameCardId is 0")
|
||||||
RespJson(c, status.BadRequest, nil)
|
RespJson(c, status.BadRequest, nil)
|
||||||
|
@ -96,7 +99,9 @@ func ShoppingCartAdd(c *gin.Context) {
|
||||||
} else if req.AddType == 2 {
|
} else if req.AddType == 2 {
|
||||||
shoppingCart.Count -= 1
|
shoppingCart.Count -= 1
|
||||||
}
|
}
|
||||||
|
if shoppingCart.Count < 0 {
|
||||||
|
shoppingCart.Count = 0
|
||||||
|
}
|
||||||
_, err = model.NewShoppingCartQuerySet(model.DB).IDEq(shoppingCart.ID).GetUpdater().SetCount(shoppingCart.Count).UpdateNum()
|
_, err = model.NewShoppingCartQuerySet(model.DB).IDEq(shoppingCart.ID).GetUpdater().SetCount(shoppingCart.Count).UpdateNum()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("err:", err)
|
logger.Error("err:", err)
|
||||||
|
|
|
@ -205,6 +205,14 @@ func UserInfoUpdate(c *gin.Context) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func OpenMember(c *gin.Context) {
|
func OpenMember(c *gin.Context) {
|
||||||
|
req := struct {
|
||||||
|
MemberLevel uint32 `json:"member_level"` // 昵称
|
||||||
|
}{}
|
||||||
|
if c.ShouldBindJSON(&req) != nil {
|
||||||
|
logger.Error("parameter err")
|
||||||
|
RespJson(c, status.BadRequest, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
uc := auth.GetCurrentUser(c)
|
uc := auth.GetCurrentUser(c)
|
||||||
if uc == nil {
|
if uc == nil {
|
||||||
RespJson(c, status.Unauthorized, nil)
|
RespJson(c, status.Unauthorized, nil)
|
||||||
|
@ -213,12 +221,19 @@ func OpenMember(c *gin.Context) {
|
||||||
|
|
||||||
user := model.GetUserByUid(uc.Uid)
|
user := model.GetUserByUid(uc.Uid)
|
||||||
|
|
||||||
configInfo, err := model.PayConfigInfo()
|
//configInfo, err := model.PayConfigInfo()
|
||||||
|
//if err != nil {
|
||||||
|
// logger.Error("err:", err)
|
||||||
|
// RespJson(c, status.InternalServerError, nil)
|
||||||
|
// return
|
||||||
|
//}
|
||||||
|
memberConfig, err := model.GetMemberConfig(req.MemberLevel)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("err:", err)
|
logger.Error("err:", err)
|
||||||
RespJson(c, status.InternalServerError, nil)
|
RespJson(c, status.InternalServerError, nil)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
//totalFee := uint32(MemberFee + DepositFee)
|
//totalFee := uint32(MemberFee + DepositFee)
|
||||||
////totalFee = uint32(3) // TODO 测试
|
////totalFee = uint32(3) // TODO 测试
|
||||||
//if user.Deposit == 300 {
|
//if user.Deposit == 300 {
|
||||||
|
@ -226,10 +241,11 @@ func OpenMember(c *gin.Context) {
|
||||||
// // //totalFee = uint32(1) // TODO 测试
|
// // //totalFee = uint32(1) // TODO 测试
|
||||||
//}
|
//}
|
||||||
|
|
||||||
fmt.Println("configInfo.MemberFee : configInfo.DepositFee", configInfo.MemberFee, configInfo.DepositFee)
|
fmt.Println("configInfo.MemberFee : configInfo.DepositFee", memberConfig.MemberFee, memberConfig.MemberDeposit)
|
||||||
totalFee := configInfo.MemberFee + configInfo.DepositFee
|
|
||||||
if user.Deposit == configInfo.DepositFee {
|
totalFee := memberConfig.MemberFee + memberConfig.MemberDeposit
|
||||||
totalFee = configInfo.MemberFee
|
if user.Deposit == memberConfig.MemberDeposit {
|
||||||
|
totalFee = memberConfig.MemberFee
|
||||||
}
|
}
|
||||||
if totalFee == 0 {
|
if totalFee == 0 {
|
||||||
logger.Error(errors.New("totalFee is 0"))
|
logger.Error(errors.New("totalFee is 0"))
|
||||||
|
@ -244,7 +260,7 @@ func OpenMember(c *gin.Context) {
|
||||||
//}
|
//}
|
||||||
//orderSn := utils.GetSerialNo32HEXString()
|
//orderSn := utils.GetSerialNo32HEXString()
|
||||||
orderSn := model.GetOrderSn()
|
orderSn := model.GetOrderSn()
|
||||||
err = model.UserOpenMemberRecord{Uid: uc.Uid, OpenNo: orderSn}.Insert()
|
err = model.UserOpenMemberRecord{Uid: uc.Uid, OpenNo: orderSn,MemberLevel: req.MemberLevel}.Insert()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error(errors.New("WebPay err"))
|
logger.Error(errors.New("WebPay err"))
|
||||||
RespJson(c, status.InternalServerError, nil)
|
RespJson(c, status.InternalServerError, nil)
|
||||||
|
@ -276,14 +292,23 @@ func PayDeposit(c *gin.Context) {
|
||||||
RespJson(c, status.InternalServerError, nil)
|
RespJson(c, status.InternalServerError, nil)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
level := user.MemberLevel
|
||||||
configInfo, err := model.PayConfigInfo()
|
if level == model.MemberLevelPeriod {
|
||||||
|
level = model.MemberLevelGold
|
||||||
|
}
|
||||||
|
//configInfo, err := model.PayConfigInfo()
|
||||||
|
//if err != nil {
|
||||||
|
// logger.Error("err:", err)
|
||||||
|
// return
|
||||||
|
//}
|
||||||
|
memberConfig, err := model.GetMemberConfig(level)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("err:", err)
|
logger.Error("GetMemberConfig err:",err)
|
||||||
|
RespJson(c, status.InternalServerError, nil)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
totalFee := configInfo.DepositFee
|
totalFee := memberConfig.MemberDeposit
|
||||||
if totalFee == 0 || user.Deposit == totalFee {
|
if totalFee == 0 || user.Deposit == totalFee {
|
||||||
logger.Error(errors.New("totalFee is 0"))
|
logger.Error(errors.New("totalFee is 0"))
|
||||||
RespJson(c, status.InternalServerError, nil)
|
RespJson(c, status.InternalServerError, nil)
|
||||||
|
@ -379,6 +404,23 @@ func UserDepositRefundRecordList(c *gin.Context) {
|
||||||
RespOK(c, resp)
|
RespOK(c, resp)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func MemberConfigList(c *gin.Context) {
|
||||||
|
//uc := auth.GetCurrentUser(c)
|
||||||
|
//if uc == nil {
|
||||||
|
// RespJson(c, status.Unauthorized, nil)
|
||||||
|
// return
|
||||||
|
//}
|
||||||
|
|
||||||
|
resp, err := model.MemberConfigInfo()
|
||||||
|
if err != nil {
|
||||||
|
logger.Errorf("err:", err)
|
||||||
|
RespJson(c, status.InternalServerError, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
RespOK(c, resp)
|
||||||
|
}
|
||||||
|
|
||||||
// 升级 1-黄金会员 2-白金会员 3-黑金会员
|
// 升级 1-黄金会员 2-白金会员 3-黑金会员
|
||||||
// 开通会员
|
// 开通会员
|
||||||
// 升级会员
|
// 升级会员
|
||||||
|
@ -386,3 +428,5 @@ func UserDepositRefundRecordList(c *gin.Context) {
|
||||||
// 购物车
|
// 购物车
|
||||||
// 押金
|
// 押金
|
||||||
|
|
||||||
|
// 会员列表 开通会员 下订单 借卡 还卡
|
||||||
|
// 会员升级
|
||||||
|
|
|
@ -82,14 +82,14 @@ const (
|
||||||
AwardOffShelves = 500407 //奖品下架
|
AwardOffShelves = 500407 //奖品下架
|
||||||
AwardExchangeOut = 500408 //奖品已兑完
|
AwardExchangeOut = 500408 //奖品已兑完
|
||||||
|
|
||||||
NotMember = 500501 //非会员
|
NotMember = 500501 //非会员
|
||||||
HadReceiveReward = 500502 // 已经领取过奖励
|
HadReceiveReward = 500502 // 已经领取过奖励
|
||||||
OrderDelivered = 500503 // 订单已发货
|
OrderDelivered = 500503 // 订单已发货
|
||||||
OrderCompleted = 500504 // 订单已完成
|
OrderCompleted = 500504 // 订单已完成
|
||||||
OrderStockOut = 500505 // 没有库存
|
OrderStockOut = 500505 // 没有库存
|
||||||
OrderUnpaidDeposit = 500506 // 没有库存
|
OrderUnpaidDeposit = 500506 // 未交押金
|
||||||
|
|
||||||
RefundDepositSubmitted = 500507 // 已提交押金退款
|
RefundDepositSubmitted = 500507 // 已提交押金退款
|
||||||
|
OrderMemberLevelLow = 500508 // 会员等级低
|
||||||
|
|
||||||
ToastErr = 600 // 报错
|
ToastErr = 600 // 报错
|
||||||
)
|
)
|
||||||
|
|
|
@ -1679,6 +1679,62 @@ func (qs UserInviteQuerySet) Limit(limit int) UserInviteQuerySet {
|
||||||
return qs.w(qs.db.Limit(limit))
|
return qs.w(qs.db.Limit(limit))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// MemberLevelEq is an autogenerated method
|
||||||
|
// nolint: dupl
|
||||||
|
func (qs UserInviteQuerySet) MemberLevelEq(memberLevel uint32) UserInviteQuerySet {
|
||||||
|
return qs.w(qs.db.Where("member_level = ?", memberLevel))
|
||||||
|
}
|
||||||
|
|
||||||
|
// MemberLevelGt is an autogenerated method
|
||||||
|
// nolint: dupl
|
||||||
|
func (qs UserInviteQuerySet) MemberLevelGt(memberLevel uint32) UserInviteQuerySet {
|
||||||
|
return qs.w(qs.db.Where("member_level > ?", memberLevel))
|
||||||
|
}
|
||||||
|
|
||||||
|
// MemberLevelGte is an autogenerated method
|
||||||
|
// nolint: dupl
|
||||||
|
func (qs UserInviteQuerySet) MemberLevelGte(memberLevel uint32) UserInviteQuerySet {
|
||||||
|
return qs.w(qs.db.Where("member_level >= ?", memberLevel))
|
||||||
|
}
|
||||||
|
|
||||||
|
// MemberLevelIn is an autogenerated method
|
||||||
|
// nolint: dupl
|
||||||
|
func (qs UserInviteQuerySet) MemberLevelIn(memberLevel ...uint32) UserInviteQuerySet {
|
||||||
|
if len(memberLevel) == 0 {
|
||||||
|
qs.db.AddError(errors.New("must at least pass one memberLevel in MemberLevelIn"))
|
||||||
|
return qs.w(qs.db)
|
||||||
|
}
|
||||||
|
return qs.w(qs.db.Where("member_level IN (?)", memberLevel))
|
||||||
|
}
|
||||||
|
|
||||||
|
// MemberLevelLt is an autogenerated method
|
||||||
|
// nolint: dupl
|
||||||
|
func (qs UserInviteQuerySet) MemberLevelLt(memberLevel uint32) UserInviteQuerySet {
|
||||||
|
return qs.w(qs.db.Where("member_level < ?", memberLevel))
|
||||||
|
}
|
||||||
|
|
||||||
|
// MemberLevelLte is an autogenerated method
|
||||||
|
// nolint: dupl
|
||||||
|
func (qs UserInviteQuerySet) MemberLevelLte(memberLevel uint32) UserInviteQuerySet {
|
||||||
|
return qs.w(qs.db.Where("member_level <= ?", memberLevel))
|
||||||
|
}
|
||||||
|
|
||||||
|
// MemberLevelNe is an autogenerated method
|
||||||
|
// nolint: dupl
|
||||||
|
func (qs UserInviteQuerySet) MemberLevelNe(memberLevel uint32) UserInviteQuerySet {
|
||||||
|
return qs.w(qs.db.Where("member_level != ?", memberLevel))
|
||||||
|
}
|
||||||
|
|
||||||
|
// MemberLevelNotIn is an autogenerated method
|
||||||
|
// nolint: dupl
|
||||||
|
func (qs UserInviteQuerySet) MemberLevelNotIn(memberLevel ...uint32) UserInviteQuerySet {
|
||||||
|
if len(memberLevel) == 0 {
|
||||||
|
qs.db.AddError(errors.New("must at least pass one memberLevel in MemberLevelNotIn"))
|
||||||
|
return qs.w(qs.db)
|
||||||
|
}
|
||||||
|
return qs.w(qs.db.Where("member_level NOT IN (?)", memberLevel))
|
||||||
|
}
|
||||||
|
|
||||||
// MemberOpenTimeEq is an autogenerated method
|
// MemberOpenTimeEq is an autogenerated method
|
||||||
// nolint: dupl
|
// nolint: dupl
|
||||||
func (qs UserInviteQuerySet) MemberOpenTimeEq(memberOpenTime time.Time) UserInviteQuerySet {
|
func (qs UserInviteQuerySet) MemberOpenTimeEq(memberOpenTime time.Time) UserInviteQuerySet {
|
||||||
|
@ -1863,6 +1919,12 @@ func (qs UserInviteQuerySet) OrderAscByID() UserInviteQuerySet {
|
||||||
return qs.w(qs.db.Order("id ASC"))
|
return qs.w(qs.db.Order("id ASC"))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// OrderAscByMemberLevel is an autogenerated method
|
||||||
|
// nolint: dupl
|
||||||
|
func (qs UserInviteQuerySet) OrderAscByMemberLevel() UserInviteQuerySet {
|
||||||
|
return qs.w(qs.db.Order("member_level ASC"))
|
||||||
|
}
|
||||||
|
|
||||||
// OrderAscByMemberOpenTime is an autogenerated method
|
// OrderAscByMemberOpenTime is an autogenerated method
|
||||||
// nolint: dupl
|
// nolint: dupl
|
||||||
func (qs UserInviteQuerySet) OrderAscByMemberOpenTime() UserInviteQuerySet {
|
func (qs UserInviteQuerySet) OrderAscByMemberOpenTime() UserInviteQuerySet {
|
||||||
|
@ -1935,6 +1997,12 @@ func (qs UserInviteQuerySet) OrderDescByID() UserInviteQuerySet {
|
||||||
return qs.w(qs.db.Order("id DESC"))
|
return qs.w(qs.db.Order("id DESC"))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// OrderDescByMemberLevel is an autogenerated method
|
||||||
|
// nolint: dupl
|
||||||
|
func (qs UserInviteQuerySet) OrderDescByMemberLevel() UserInviteQuerySet {
|
||||||
|
return qs.w(qs.db.Order("member_level DESC"))
|
||||||
|
}
|
||||||
|
|
||||||
// OrderDescByMemberOpenTime is an autogenerated method
|
// OrderDescByMemberOpenTime is an autogenerated method
|
||||||
// nolint: dupl
|
// nolint: dupl
|
||||||
func (qs UserInviteQuerySet) OrderDescByMemberOpenTime() UserInviteQuerySet {
|
func (qs UserInviteQuerySet) OrderDescByMemberOpenTime() UserInviteQuerySet {
|
||||||
|
@ -2271,6 +2339,13 @@ func (u UserInviteUpdater) SetID(ID uint32) UserInviteUpdater {
|
||||||
return u
|
return u
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// SetMemberLevel is an autogenerated method
|
||||||
|
// nolint: dupl
|
||||||
|
func (u UserInviteUpdater) SetMemberLevel(memberLevel uint32) UserInviteUpdater {
|
||||||
|
u.fields[string(UserInviteDBSchema.MemberLevel)] = memberLevel
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
// SetMemberOpenTime is an autogenerated method
|
// SetMemberOpenTime is an autogenerated method
|
||||||
// nolint: dupl
|
// nolint: dupl
|
||||||
func (u UserInviteUpdater) SetMemberOpenTime(memberOpenTime time.Time) UserInviteUpdater {
|
func (u UserInviteUpdater) SetMemberOpenTime(memberOpenTime time.Time) UserInviteUpdater {
|
||||||
|
@ -2367,6 +2442,7 @@ var UserInviteDBSchema = struct {
|
||||||
MemberStatus UserInviteDBSchemaField
|
MemberStatus UserInviteDBSchemaField
|
||||||
ToUid UserInviteDBSchemaField
|
ToUid UserInviteDBSchemaField
|
||||||
StoreType UserInviteDBSchemaField
|
StoreType UserInviteDBSchemaField
|
||||||
|
MemberLevel UserInviteDBSchemaField
|
||||||
}{
|
}{
|
||||||
|
|
||||||
ID: UserInviteDBSchemaField("id"),
|
ID: UserInviteDBSchemaField("id"),
|
||||||
|
@ -2381,6 +2457,7 @@ var UserInviteDBSchema = struct {
|
||||||
MemberStatus: UserInviteDBSchemaField("member_status"),
|
MemberStatus: UserInviteDBSchemaField("member_status"),
|
||||||
ToUid: UserInviteDBSchemaField("to_uid"),
|
ToUid: UserInviteDBSchemaField("to_uid"),
|
||||||
StoreType: UserInviteDBSchemaField("store_type"),
|
StoreType: UserInviteDBSchemaField("store_type"),
|
||||||
|
MemberLevel: UserInviteDBSchemaField("member_level"),
|
||||||
}
|
}
|
||||||
|
|
||||||
// Update updates UserInvite fields by primary key
|
// Update updates UserInvite fields by primary key
|
||||||
|
@ -2399,6 +2476,7 @@ func (o *UserInvite) Update(db *gorm.DB, fields ...UserInviteDBSchemaField) erro
|
||||||
"member_status": o.MemberStatus,
|
"member_status": o.MemberStatus,
|
||||||
"to_uid": o.ToUid,
|
"to_uid": o.ToUid,
|
||||||
"store_type": o.StoreType,
|
"store_type": o.StoreType,
|
||||||
|
"member_level": o.MemberLevel,
|
||||||
}
|
}
|
||||||
u := map[string]interface{}{}
|
u := map[string]interface{}{}
|
||||||
for _, f := range fields {
|
for _, f := range fields {
|
||||||
|
@ -2656,6 +2734,62 @@ func (qs UserOpenMemberRecordQuerySet) Limit(limit int) UserOpenMemberRecordQuer
|
||||||
return qs.w(qs.db.Limit(limit))
|
return qs.w(qs.db.Limit(limit))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// MemberLevelEq is an autogenerated method
|
||||||
|
// nolint: dupl
|
||||||
|
func (qs UserOpenMemberRecordQuerySet) MemberLevelEq(memberLevel uint32) UserOpenMemberRecordQuerySet {
|
||||||
|
return qs.w(qs.db.Where("member_level = ?", memberLevel))
|
||||||
|
}
|
||||||
|
|
||||||
|
// MemberLevelGt is an autogenerated method
|
||||||
|
// nolint: dupl
|
||||||
|
func (qs UserOpenMemberRecordQuerySet) MemberLevelGt(memberLevel uint32) UserOpenMemberRecordQuerySet {
|
||||||
|
return qs.w(qs.db.Where("member_level > ?", memberLevel))
|
||||||
|
}
|
||||||
|
|
||||||
|
// MemberLevelGte is an autogenerated method
|
||||||
|
// nolint: dupl
|
||||||
|
func (qs UserOpenMemberRecordQuerySet) MemberLevelGte(memberLevel uint32) UserOpenMemberRecordQuerySet {
|
||||||
|
return qs.w(qs.db.Where("member_level >= ?", memberLevel))
|
||||||
|
}
|
||||||
|
|
||||||
|
// MemberLevelIn is an autogenerated method
|
||||||
|
// nolint: dupl
|
||||||
|
func (qs UserOpenMemberRecordQuerySet) MemberLevelIn(memberLevel ...uint32) UserOpenMemberRecordQuerySet {
|
||||||
|
if len(memberLevel) == 0 {
|
||||||
|
qs.db.AddError(errors.New("must at least pass one memberLevel in MemberLevelIn"))
|
||||||
|
return qs.w(qs.db)
|
||||||
|
}
|
||||||
|
return qs.w(qs.db.Where("member_level IN (?)", memberLevel))
|
||||||
|
}
|
||||||
|
|
||||||
|
// MemberLevelLt is an autogenerated method
|
||||||
|
// nolint: dupl
|
||||||
|
func (qs UserOpenMemberRecordQuerySet) MemberLevelLt(memberLevel uint32) UserOpenMemberRecordQuerySet {
|
||||||
|
return qs.w(qs.db.Where("member_level < ?", memberLevel))
|
||||||
|
}
|
||||||
|
|
||||||
|
// MemberLevelLte is an autogenerated method
|
||||||
|
// nolint: dupl
|
||||||
|
func (qs UserOpenMemberRecordQuerySet) MemberLevelLte(memberLevel uint32) UserOpenMemberRecordQuerySet {
|
||||||
|
return qs.w(qs.db.Where("member_level <= ?", memberLevel))
|
||||||
|
}
|
||||||
|
|
||||||
|
// MemberLevelNe is an autogenerated method
|
||||||
|
// nolint: dupl
|
||||||
|
func (qs UserOpenMemberRecordQuerySet) MemberLevelNe(memberLevel uint32) UserOpenMemberRecordQuerySet {
|
||||||
|
return qs.w(qs.db.Where("member_level != ?", memberLevel))
|
||||||
|
}
|
||||||
|
|
||||||
|
// MemberLevelNotIn is an autogenerated method
|
||||||
|
// nolint: dupl
|
||||||
|
func (qs UserOpenMemberRecordQuerySet) MemberLevelNotIn(memberLevel ...uint32) UserOpenMemberRecordQuerySet {
|
||||||
|
if len(memberLevel) == 0 {
|
||||||
|
qs.db.AddError(errors.New("must at least pass one memberLevel in MemberLevelNotIn"))
|
||||||
|
return qs.w(qs.db)
|
||||||
|
}
|
||||||
|
return qs.w(qs.db.Where("member_level NOT IN (?)", memberLevel))
|
||||||
|
}
|
||||||
|
|
||||||
// Offset is an autogenerated method
|
// Offset is an autogenerated method
|
||||||
// nolint: dupl
|
// nolint: dupl
|
||||||
func (qs UserOpenMemberRecordQuerySet) Offset(offset int) UserOpenMemberRecordQuerySet {
|
func (qs UserOpenMemberRecordQuerySet) Offset(offset int) UserOpenMemberRecordQuerySet {
|
||||||
|
@ -2718,6 +2852,12 @@ func (qs UserOpenMemberRecordQuerySet) OrderAscByID() UserOpenMemberRecordQueryS
|
||||||
return qs.w(qs.db.Order("id ASC"))
|
return qs.w(qs.db.Order("id ASC"))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// OrderAscByMemberLevel is an autogenerated method
|
||||||
|
// nolint: dupl
|
||||||
|
func (qs UserOpenMemberRecordQuerySet) OrderAscByMemberLevel() UserOpenMemberRecordQuerySet {
|
||||||
|
return qs.w(qs.db.Order("member_level ASC"))
|
||||||
|
}
|
||||||
|
|
||||||
// OrderAscByOrderId is an autogenerated method
|
// OrderAscByOrderId is an autogenerated method
|
||||||
// nolint: dupl
|
// nolint: dupl
|
||||||
func (qs UserOpenMemberRecordQuerySet) OrderAscByOrderId() UserOpenMemberRecordQuerySet {
|
func (qs UserOpenMemberRecordQuerySet) OrderAscByOrderId() UserOpenMemberRecordQuerySet {
|
||||||
|
@ -2760,6 +2900,12 @@ func (qs UserOpenMemberRecordQuerySet) OrderDescByID() UserOpenMemberRecordQuery
|
||||||
return qs.w(qs.db.Order("id DESC"))
|
return qs.w(qs.db.Order("id DESC"))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// OrderDescByMemberLevel is an autogenerated method
|
||||||
|
// nolint: dupl
|
||||||
|
func (qs UserOpenMemberRecordQuerySet) OrderDescByMemberLevel() UserOpenMemberRecordQuerySet {
|
||||||
|
return qs.w(qs.db.Order("member_level DESC"))
|
||||||
|
}
|
||||||
|
|
||||||
// OrderDescByOrderId is an autogenerated method
|
// OrderDescByOrderId is an autogenerated method
|
||||||
// nolint: dupl
|
// nolint: dupl
|
||||||
func (qs UserOpenMemberRecordQuerySet) OrderDescByOrderId() UserOpenMemberRecordQuerySet {
|
func (qs UserOpenMemberRecordQuerySet) OrderDescByOrderId() UserOpenMemberRecordQuerySet {
|
||||||
|
@ -3009,6 +3155,13 @@ func (u UserOpenMemberRecordUpdater) SetID(ID uint32) UserOpenMemberRecordUpdate
|
||||||
return u
|
return u
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// SetMemberLevel is an autogenerated method
|
||||||
|
// nolint: dupl
|
||||||
|
func (u UserOpenMemberRecordUpdater) SetMemberLevel(memberLevel uint32) UserOpenMemberRecordUpdater {
|
||||||
|
u.fields[string(UserOpenMemberRecordDBSchema.MemberLevel)] = memberLevel
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
// SetOpenNo is an autogenerated method
|
// SetOpenNo is an autogenerated method
|
||||||
// nolint: dupl
|
// nolint: dupl
|
||||||
func (u UserOpenMemberRecordUpdater) SetOpenNo(openNo string) UserOpenMemberRecordUpdater {
|
func (u UserOpenMemberRecordUpdater) SetOpenNo(openNo string) UserOpenMemberRecordUpdater {
|
||||||
|
@ -3072,38 +3225,41 @@ func (f UserOpenMemberRecordDBSchemaField) String() string {
|
||||||
|
|
||||||
// UserOpenMemberRecordDBSchema stores db field names of UserOpenMemberRecord
|
// UserOpenMemberRecordDBSchema stores db field names of UserOpenMemberRecord
|
||||||
var UserOpenMemberRecordDBSchema = struct {
|
var UserOpenMemberRecordDBSchema = struct {
|
||||||
ID UserOpenMemberRecordDBSchemaField
|
ID UserOpenMemberRecordDBSchemaField
|
||||||
CreatedAt UserOpenMemberRecordDBSchemaField
|
CreatedAt UserOpenMemberRecordDBSchemaField
|
||||||
UpdatedAt UserOpenMemberRecordDBSchemaField
|
UpdatedAt UserOpenMemberRecordDBSchemaField
|
||||||
DeletedAt UserOpenMemberRecordDBSchemaField
|
DeletedAt UserOpenMemberRecordDBSchemaField
|
||||||
Uid UserOpenMemberRecordDBSchemaField
|
Uid UserOpenMemberRecordDBSchemaField
|
||||||
OpenNo UserOpenMemberRecordDBSchemaField
|
OpenNo UserOpenMemberRecordDBSchemaField
|
||||||
OrderId UserOpenMemberRecordDBSchemaField
|
OrderId UserOpenMemberRecordDBSchemaField
|
||||||
OrderType UserOpenMemberRecordDBSchemaField
|
OrderType UserOpenMemberRecordDBSchemaField
|
||||||
|
MemberLevel UserOpenMemberRecordDBSchemaField
|
||||||
}{
|
}{
|
||||||
|
|
||||||
ID: UserOpenMemberRecordDBSchemaField("id"),
|
ID: UserOpenMemberRecordDBSchemaField("id"),
|
||||||
CreatedAt: UserOpenMemberRecordDBSchemaField("created_at"),
|
CreatedAt: UserOpenMemberRecordDBSchemaField("created_at"),
|
||||||
UpdatedAt: UserOpenMemberRecordDBSchemaField("updated_at"),
|
UpdatedAt: UserOpenMemberRecordDBSchemaField("updated_at"),
|
||||||
DeletedAt: UserOpenMemberRecordDBSchemaField("deleted_at"),
|
DeletedAt: UserOpenMemberRecordDBSchemaField("deleted_at"),
|
||||||
Uid: UserOpenMemberRecordDBSchemaField("uid"),
|
Uid: UserOpenMemberRecordDBSchemaField("uid"),
|
||||||
OpenNo: UserOpenMemberRecordDBSchemaField("open_no"),
|
OpenNo: UserOpenMemberRecordDBSchemaField("open_no"),
|
||||||
OrderId: UserOpenMemberRecordDBSchemaField("order_id"),
|
OrderId: UserOpenMemberRecordDBSchemaField("order_id"),
|
||||||
OrderType: UserOpenMemberRecordDBSchemaField("order_type"),
|
OrderType: UserOpenMemberRecordDBSchemaField("order_type"),
|
||||||
|
MemberLevel: UserOpenMemberRecordDBSchemaField("member_level"),
|
||||||
}
|
}
|
||||||
|
|
||||||
// Update updates UserOpenMemberRecord fields by primary key
|
// Update updates UserOpenMemberRecord fields by primary key
|
||||||
// nolint: dupl
|
// nolint: dupl
|
||||||
func (o *UserOpenMemberRecord) Update(db *gorm.DB, fields ...UserOpenMemberRecordDBSchemaField) error {
|
func (o *UserOpenMemberRecord) Update(db *gorm.DB, fields ...UserOpenMemberRecordDBSchemaField) error {
|
||||||
dbNameToFieldName := map[string]interface{}{
|
dbNameToFieldName := map[string]interface{}{
|
||||||
"id": o.ID,
|
"id": o.ID,
|
||||||
"created_at": o.CreatedAt,
|
"created_at": o.CreatedAt,
|
||||||
"updated_at": o.UpdatedAt,
|
"updated_at": o.UpdatedAt,
|
||||||
"deleted_at": o.DeletedAt,
|
"deleted_at": o.DeletedAt,
|
||||||
"uid": o.Uid,
|
"uid": o.Uid,
|
||||||
"open_no": o.OpenNo,
|
"open_no": o.OpenNo,
|
||||||
"order_id": o.OrderId,
|
"order_id": o.OrderId,
|
||||||
"order_type": o.OrderType,
|
"order_type": o.OrderType,
|
||||||
|
"member_level": o.MemberLevel,
|
||||||
}
|
}
|
||||||
u := map[string]interface{}{}
|
u := map[string]interface{}{}
|
||||||
for _, f := range fields {
|
for _, f := range fields {
|
||||||
|
|
|
@ -2,6 +2,7 @@ package model
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
|
"errors"
|
||||||
"github.com/codinl/go-logger"
|
"github.com/codinl/go-logger"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -25,7 +26,8 @@ type PayConfig struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
ConfigNamePay = "pay_config" // 支付配置
|
ConfigNamePay = "pay_config" // 支付配置
|
||||||
|
ConfigNameMember = "member_config" // 会员配置
|
||||||
)
|
)
|
||||||
|
|
||||||
func PayConfigInfo() (*PayConfig, error) {
|
func PayConfigInfo() (*PayConfig, error) {
|
||||||
|
@ -46,15 +48,54 @@ func PayConfigInfo() (*PayConfig, error) {
|
||||||
return payConfig, nil
|
return payConfig, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
type MemberConfig struct {
|
||||||
|
MemberLever uint32 `json:"member_lever"` // 会员等级
|
||||||
|
MemberFee uint32 `json:"member_fee"` // 会员费
|
||||||
|
MemberDeposit uint32 `json:"member_deposit"` // 押金
|
||||||
|
CardMax uint32 `json:"card_max"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func MemberConfigInfo() ([]MemberConfig, error) {
|
||||||
|
var memberConfigs []MemberConfig
|
||||||
|
var configAllocation Config
|
||||||
|
err := NewConfigQuerySet(DB).NameEq(ConfigNameMember).One(&configAllocation)
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("err:", err)
|
||||||
|
return memberConfigs, err
|
||||||
|
}
|
||||||
|
|
||||||
|
err = json.Unmarshal([]byte(configAllocation.Value), &memberConfigs)
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("err:", err)
|
||||||
|
return memberConfigs, err
|
||||||
|
}
|
||||||
|
|
||||||
|
return memberConfigs, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func GetMemberConfig(level uint32) (*MemberConfig, error) {
|
||||||
|
if level == 3 {
|
||||||
|
level = 2
|
||||||
|
}
|
||||||
|
info, err := MemberConfigInfo()
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
for _, config := range info {
|
||||||
|
if config.MemberLever == level {
|
||||||
|
return &config, nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return nil, errors.New("level err")
|
||||||
|
}
|
||||||
|
|
||||||
//type ConfigInterface interface {
|
//type ConfigInterface interface {
|
||||||
// Encode() string
|
// Encode() string
|
||||||
//}
|
//}
|
||||||
//
|
|
||||||
//type CheckConfig struct {
|
//type CheckConfig struct {
|
||||||
// Check uint8 `json:"check"`
|
// Check uint8 `json:"check"`
|
||||||
//}
|
//}
|
||||||
//
|
|
||||||
//func (c *CheckConfig) Encode() string {
|
//func (c *CheckConfig) Encode() string {
|
||||||
// configBytes, err := json.Marshal(c)
|
// configBytes, err := json.Marshal(c)
|
||||||
// if err != nil {
|
// if err != nil {
|
||||||
|
|
38
model/config_test.go
Normal file
38
model/config_test.go
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
package model
|
||||||
|
|
||||||
|
import (
|
||||||
|
"encoding/json"
|
||||||
|
"fmt"
|
||||||
|
"testing"
|
||||||
|
)
|
||||||
|
|
||||||
|
func TestMemberConfigInfo(t *testing.T) {
|
||||||
|
lever := []uint32{2, 4, 5}
|
||||||
|
list := make([]MemberConfig, 0)
|
||||||
|
cardCount := 0
|
||||||
|
|
||||||
|
for i, _ := range lever {
|
||||||
|
if lever[i] == 2 {
|
||||||
|
cardCount = 1
|
||||||
|
} else if lever[i] == 4 {
|
||||||
|
cardCount = 2
|
||||||
|
} else if lever[i] == 4 {
|
||||||
|
cardCount = 5
|
||||||
|
}
|
||||||
|
|
||||||
|
var config = MemberConfig{
|
||||||
|
MemberLever: lever[i],
|
||||||
|
MemberFee: lever[i],
|
||||||
|
MemberDeposit: lever[i],
|
||||||
|
CardMax: uint32(cardCount),
|
||||||
|
}
|
||||||
|
list = append(list, config)
|
||||||
|
}
|
||||||
|
|
||||||
|
bytes, err := json.Marshal(&list)
|
||||||
|
if err != nil {
|
||||||
|
fmt.Println("err:", err.Error())
|
||||||
|
}
|
||||||
|
|
||||||
|
fmt.Println("list:", string(bytes))
|
||||||
|
}
|
|
@ -50,6 +50,11 @@ func (*HomeCarousel) TableName() string {
|
||||||
return "home_carousel"
|
return "home_carousel"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type CardInfo struct {
|
||||||
|
GameCardId uint32 `json:"game_card_id"`
|
||||||
|
Count uint32 `json:"count"`
|
||||||
|
}
|
||||||
|
|
||||||
func GetGameCardList(sortType, page, pageSize int, gameTypeIds []uint64, storeId uint32) ([]GameCard, uint32, error) {
|
func GetGameCardList(sortType, page, pageSize int, gameTypeIds []uint64, storeId uint32) ([]GameCard, uint32, error) {
|
||||||
var (
|
var (
|
||||||
cards []GameCard = make([]GameCard, 0)
|
cards []GameCard = make([]GameCard, 0)
|
||||||
|
@ -166,6 +171,21 @@ func IsGameCardOnline(gameCardId uint32) (bool, error) {
|
||||||
return count == 1, nil
|
return count == 1, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func IsGameCardListOnline(gameCards []CardInfo) (bool, error) {
|
||||||
|
for _, v := range gameCards {
|
||||||
|
count, err := NewGameCardQuerySet(DB).IDEq(v.GameCardId).StatusEq(1).Count()
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("err:", err)
|
||||||
|
return false, err
|
||||||
|
}
|
||||||
|
if count < 1 {
|
||||||
|
return false, nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return true, nil
|
||||||
|
}
|
||||||
|
|
||||||
func IsGameCardHaveStoke(storeId, gameCardId uint32) (bool, error) {
|
func IsGameCardHaveStoke(storeId, gameCardId uint32) (bool, error) {
|
||||||
var stock GameCardGoodsStock
|
var stock GameCardGoodsStock
|
||||||
err := NewGameCardGoodsStockQuerySet(DB).StoreIdEq(uint64(storeId)).GameCardIdEq(uint64(gameCardId)).One(&stock)
|
err := NewGameCardGoodsStockQuerySet(DB).StoreIdEq(uint64(storeId)).GameCardIdEq(uint64(gameCardId)).One(&stock)
|
||||||
|
|
|
@ -62,6 +62,16 @@ type Order struct {
|
||||||
Mchid string `json:"mchid"` // 商户
|
Mchid string `json:"mchid"` // 商户
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type OrderCard struct {
|
||||||
|
Model
|
||||||
|
OrderId uint32 `json:"order_id" gorm:"index"`
|
||||||
|
Uid uint32 `json:"uid" gorm:"index"`
|
||||||
|
GameCardId uint32 `json:"game_card_id" gorm:"index"` // 游戏id
|
||||||
|
GameCardGoodsId uint32 `json:"game_card_goods_id" gorm:"index"` // 游戏卡id
|
||||||
|
StoreId uint32 `json:"store_id" gorm:"index"` // 门店id
|
||||||
|
Status uint8 `json:"status" gorm:"index"`
|
||||||
|
}
|
||||||
|
|
||||||
func (*Order) TableName() string {
|
func (*Order) TableName() string {
|
||||||
return "order"
|
return "order"
|
||||||
}
|
}
|
||||||
|
@ -295,7 +305,6 @@ func IsHaveUnreturnedOrders(uid uint32) (bool, error) {
|
||||||
return unreturned.Count != 0, nil
|
return unreturned.Count != 0, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
func IsUserHaveUnreturnedOrder(uid uint32) (bool, error) {
|
func IsUserHaveUnreturnedOrder(uid uint32) (bool, error) {
|
||||||
fmt.Println("uid", uid)
|
fmt.Println("uid", uid)
|
||||||
|
|
||||||
|
@ -378,7 +387,6 @@ func (m *Order) Cancel() error {
|
||||||
return errors.New("card status expire")
|
return errors.New("card status expire")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
begin := DB.Begin()
|
begin := DB.Begin()
|
||||||
err = NewOrderQuerySet(begin).IDEq(m.ID).GetUpdater().SetCardStatus(OrderCardStatusCancel).Update()
|
err = NewOrderQuerySet(begin).IDEq(m.ID).GetUpdater().SetCardStatus(OrderCardStatusCancel).Update()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -43,8 +43,16 @@ func (o *User) TableName() string {
|
||||||
}
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
MemberTypeConsumer = 1
|
MemberTypeConsumer = 1 // 普通用户
|
||||||
MemberTypeMember = 2
|
MemberTypeMember = 2 // 黄金会员
|
||||||
|
)
|
||||||
|
|
||||||
|
const (
|
||||||
|
MemberLevelConsumer = 1 // 普通用户
|
||||||
|
MemberLevelGold = 2 // 黄金会员
|
||||||
|
MemberLevelPeriod = 3
|
||||||
|
MemberLevelPlatinum = 4 // 白金会员
|
||||||
|
MemberLevelBlackGold = 5 // 黑金会员
|
||||||
)
|
)
|
||||||
|
|
||||||
const DateTimeFormat = "2006-01-02"
|
const DateTimeFormat = "2006-01-02"
|
||||||
|
@ -61,6 +69,7 @@ type UserInvite struct {
|
||||||
MemberStatus uint8 `json:"member_status"` // 被邀请用户 1-未开通 2-已开通 3-已取消会员
|
MemberStatus uint8 `json:"member_status"` // 被邀请用户 1-未开通 2-已开通 3-已取消会员
|
||||||
ToUid uint32 `json:"to_uid"` // 被邀请用户
|
ToUid uint32 `json:"to_uid"` // 被邀请用户
|
||||||
StoreType uint32 `json:"store_type"` // 门店类型
|
StoreType uint32 `json:"store_type"` // 门店类型
|
||||||
|
MemberLevel uint32 `json:"member_level"` // 会员等级
|
||||||
}
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
@ -128,11 +137,11 @@ func UserUpdate(user *User) error {
|
||||||
type UserOpenMemberRecord struct {
|
type UserOpenMemberRecord struct {
|
||||||
Model
|
Model
|
||||||
|
|
||||||
Uid uint32 `json:"uid"`
|
Uid uint32 `json:"uid"`
|
||||||
OpenNo string `json:"open_no" gorm:"index"`
|
OpenNo string `json:"open_no" gorm:"index"`
|
||||||
OrderId uint32 `json:"order_id"`
|
OrderId uint32 `json:"order_id"`
|
||||||
OrderType uint32 `json:"order_type"` // 1-物流支付
|
OrderType uint32 `json:"order_type"` // 1-物流支付
|
||||||
|
MemberLevel uint32 `json:"member_level"`
|
||||||
}
|
}
|
||||||
|
|
||||||
func (o *UserOpenMemberRecord) TableName() string {
|
func (o *UserOpenMemberRecord) TableName() string {
|
||||||
|
@ -166,7 +175,6 @@ type CommonProblem struct {
|
||||||
Sort uint32 `json:"sort" gorm:"index"`
|
Sort uint32 `json:"sort" gorm:"index"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
type GroupSendMessageTemplate struct {
|
type GroupSendMessageTemplate struct {
|
||||||
Model
|
Model
|
||||||
|
|
||||||
|
@ -178,7 +186,6 @@ type GroupSendMessageTemplate struct {
|
||||||
Status uint32 `json:"status"` // 1-待发送 2-已发送
|
Status uint32 `json:"status"` // 1-待发送 2-已发送
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
func (*CommonProblem) TableName() string {
|
func (*CommonProblem) TableName() string {
|
||||||
return "common_problem"
|
return "common_problem"
|
||||||
}
|
}
|
||||||
|
@ -364,7 +371,6 @@ func GetDepositRefundRecordList(uid uint32) ([]DepositRefundRecord, error) {
|
||||||
return deposits, nil
|
return deposits, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
var userMutexMap map[string]*sync.Mutex
|
var userMutexMap map[string]*sync.Mutex
|
||||||
|
|
||||||
func GetUserMutexMap() map[string]*sync.Mutex {
|
func GetUserMutexMap() map[string]*sync.Mutex {
|
||||||
|
@ -388,5 +394,4 @@ func GetUserMutex(mutexKey string) *sync.Mutex {
|
||||||
// return GetUserMutex(fmt.Sprintf("AuthLogin:%d", uid))
|
// return GetUserMutex(fmt.Sprintf("AuthLogin:%d", uid))
|
||||||
//}
|
//}
|
||||||
|
|
||||||
|
var AuthLoginMutex = sync.Mutex{}
|
||||||
var AuthLoginMutex = sync.Mutex{}
|
|
||||||
|
|
531
pack/log_server/server.2022-01-16.log
Normal file
531
pack/log_server/server.2022-01-16.log
Normal file
|
@ -0,0 +1,531 @@
|
||||||
|
2022/01/16 14:38:12 [INFO ]base_init_db.go:38: DB init success
|
||||||
|
2022/01/16 15:29:56 [INFO ]init.go:30: /api/v1/game_card/banner
|
||||||
|
2022/01/16 15:29:57 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 15:29:57 [INFO ]init.go:30: /api/v1/game_card/type/list
|
||||||
|
2022/01/16 15:29:57 [INFO ]init.go:30: /api/v1/game_card/banner
|
||||||
|
2022/01/16 15:29:57 [INFO ]init.go:30: /api/v1/game_card/type/list
|
||||||
|
2022/01/16 15:29:57 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 15:30:00 [INFO ]init.go:30: /api/v1/game_card/banner
|
||||||
|
2022/01/16 15:30:00 [INFO ]init.go:30: /api/v1/game_card/type/list
|
||||||
|
2022/01/16 15:30:00 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 15:30:01 [INFO ]init.go:30: /api/v1/game_card/banner
|
||||||
|
2022/01/16 15:30:01 [INFO ]init.go:30: /api/v1/game_card/type/list
|
||||||
|
2022/01/16 15:30:01 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 15:30:02 [INFO ]init.go:30: /api/v1/game_card/type/list
|
||||||
|
2022/01/16 15:30:02 [INFO ]init.go:30: /api/v1/game_card/banner
|
||||||
|
2022/01/16 15:30:02 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 15:30:02 [INFO ]init.go:30: /api/v1/game_card/banner
|
||||||
|
2022/01/16 15:30:02 [INFO ]init.go:30: /api/v1/game_card/type/list
|
||||||
|
2022/01/16 15:30:02 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 15:30:03 [INFO ]init.go:30: /api/v1/game_card/banner
|
||||||
|
2022/01/16 15:30:03 [INFO ]init.go:30: /api/v1/game_card/type/list
|
||||||
|
2022/01/16 15:30:03 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 15:30:58 [INFO ]init.go:30: /api/v1/auth/login
|
||||||
|
2022/01/16 15:30:58 [INFO ]account.go:48: OpenID=ohuHh4tpfro8u_fUPMbHEWYx5svQ
|
||||||
|
2022/01/16 15:30:58 [INFO ]account.go:49: resp.UnionID=
|
||||||
|
2022/01/16 15:30:58 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 15:31:04 [INFO ]init.go:30: /api/v1/auth/login
|
||||||
|
2022/01/16 15:31:04 [INFO ]account.go:48: OpenID=ohuHh4tpfro8u_fUPMbHEWYx5svQ
|
||||||
|
2022/01/16 15:31:04 [INFO ]account.go:49: resp.UnionID=
|
||||||
|
2022/01/16 15:31:04 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 15:31:24 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:31:25 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:31:25 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 15:31:26 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:31:26 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 15:31:37 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:31:38 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 15:31:38 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:34:59 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:35:04 [INFO ]init.go:30: /api/v1/auth/login
|
||||||
|
2022/01/16 15:35:04 [INFO ]account.go:48: OpenID=ohuHh4tpfro8u_fUPMbHEWYx5svQ
|
||||||
|
2022/01/16 15:35:04 [INFO ]account.go:49: resp.UnionID=
|
||||||
|
2022/01/16 15:35:04 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 15:35:04 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:35:05 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 15:35:05 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:35:08 [INFO ]init.go:30: /api/v1/user/user_info/upload
|
||||||
|
2022/01/16 15:35:08 [ERROR]account.go:279: Key: 'Code' Error:Field validation for 'Code' failed on the 'required' tag
|
||||||
|
2022/01/16 15:35:10 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:35:10 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 15:35:16 [INFO ]init.go:30: /api/v1/user/user_info/upload
|
||||||
|
2022/01/16 15:35:16 [INFO ]account.go:302: userInfo={OpenID: Nickname:枫 Gender:0 Province: Language:zh_CN Country: City: Avatar:https://thirdwx.qlogo.cn/mmopen/vi_32/DYAIOgq83eoBbibF1ykzNbej9KZreT23p4O2MLFgNIt73BeIP6GnYOH3baeJvS30wKk866ibKuSL3prOpLJMC6Jg/132 UnionID: Watermark:{AppID:wx806c079463b5b56c Timestamp:1642318516}}
|
||||||
|
2022/01/16 15:35:16 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 15:35:18 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:35:19 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:35:19 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 15:35:20 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:35:20 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 15:35:29 [INFO ]init.go:30: /api/v1/auth/login
|
||||||
|
2022/01/16 15:35:29 [INFO ]account.go:48: OpenID=ohuHh4tpfro8u_fUPMbHEWYx5svQ
|
||||||
|
2022/01/16 15:35:29 [INFO ]account.go:49: resp.UnionID=
|
||||||
|
2022/01/16 15:35:29 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 15:35:29 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:36:36 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:38:42 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:40:22 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:40:26 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:41:56 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:42:15 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:42:23 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:44:12 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:44:16 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:44:35 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:44:37 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:44:44 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:46:59 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:47:16 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:47:19 [INFO ]init.go:30: /api/v1/user/open_member
|
||||||
|
2022/01/16 15:47:19 [INFO ]wx_pay.go:63: MchId: 1609877389
|
||||||
|
2022/01/16 15:47:19 [INFO ]wx_pay.go:64: AppId: wx806c079463b5b56c
|
||||||
|
2022/01/16 15:47:19 [INFO ]wx_pay.go:65: MchSecret: DeovoMingHuiRengTianTang45675456
|
||||||
|
2022/01/16 15:47:19 [INFO ]wx_pay.go:440: 签字符串1 : appid=wx806c079463b5b56c&attach=member_pay&body=创建订单&device_info=WEB&fee_type=CNY&mch_id=1609877389&nonce_str=vjVgoqgzYqJ6pyrK47L363Qf0wYDWV8x¬ify_url=https://dev.switch.deovo.com:8004/api/v1/wxpay/notice&openid=ohuHh4tpfro8u_fUPMbHEWYx5svQ&out_trade_no=diddvhp40000&profit_sharing=N&sign_type=MD5&spbill_create_ip=39.108.188.218&time_start=20220116154719&total_fee=41&trade_type=JSAPI&key=DeovoMingHuiRengTianTang45675456
|
||||||
|
2022/01/16 15:47:19 [ERROR]wx_pay.go:464: xml: <xml><appid>wx806c079463b5b56c</appid><mch_id>1609877389</mch_id><device_info>WEB</device_info><nonce_str>vjVgoqgzYqJ6pyrK47L363Qf0wYDWV8x</nonce_str><sign>ECDE78A54BA7B9A8BC19C51B3F5CE5D8</sign><sign_type>MD5</sign_type><body>创建订单</body><attach>member_pay</attach><out_trade_no>diddvhp40000</out_trade_no><fee_type>CNY</fee_type><total_fee>41</total_fee><spbill_create_ip>39.108.188.218</spbill_create_ip><time_start>20220116154719</time_start><notify_url>https://dev.switch.deovo.com:8004/api/v1/wxpay/notice</notify_url><trade_type>JSAPI</trade_type><openid>ohuHh4tpfro8u_fUPMbHEWYx5svQ</openid><profit_sharing>N</profit_sharing></xml>
|
||||||
|
2022/01/16 15:47:19 [INFO ]wx_pay.go:440: 签字符串1 : appId=wx806c079463b5b56c&nonceStr=Mc9GYbaUaXD3BToo&package=prepay_id=wx1615471951571141d8de42ce2655ae0000&signType=MD5&timeStamp=1642319239&key=DeovoMingHuiRengTianTang45675456
|
||||||
|
2022/01/16 15:47:47 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:49:03 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:49:09 [INFO ]init.go:30: /api/v1/user/open_member
|
||||||
|
2022/01/16 15:49:09 [INFO ]wx_pay.go:63: MchId: 1609877389
|
||||||
|
2022/01/16 15:49:09 [INFO ]wx_pay.go:64: AppId: wx806c079463b5b56c
|
||||||
|
2022/01/16 15:49:09 [INFO ]wx_pay.go:65: MchSecret: DeovoMingHuiRengTianTang45675456
|
||||||
|
2022/01/16 15:49:09 [INFO ]wx_pay.go:440: 签字符串1 : appid=wx806c079463b5b56c&attach=member_pay&body=创建订单&device_info=WEB&fee_type=CNY&mch_id=1609877389&nonce_str=cCHl1d7GEi7g9is9A2my0vbx3cFnvQuJ¬ify_url=https://dev.switch.deovo.com:8004/api/v1/wxpay/notice&openid=ohuHh4tpfro8u_fUPMbHEWYx5svQ&out_trade_no=dided18o0000&profit_sharing=N&sign_type=MD5&spbill_create_ip=39.108.188.218&time_start=20220116154909&total_fee=41&trade_type=JSAPI&key=DeovoMingHuiRengTianTang45675456
|
||||||
|
2022/01/16 15:49:09 [ERROR]wx_pay.go:464: xml: <xml><appid>wx806c079463b5b56c</appid><mch_id>1609877389</mch_id><device_info>WEB</device_info><nonce_str>cCHl1d7GEi7g9is9A2my0vbx3cFnvQuJ</nonce_str><sign>0C404E64B119780687532816783F03EF</sign><sign_type>MD5</sign_type><body>创建订单</body><attach>member_pay</attach><out_trade_no>dided18o0000</out_trade_no><fee_type>CNY</fee_type><total_fee>41</total_fee><spbill_create_ip>39.108.188.218</spbill_create_ip><time_start>20220116154909</time_start><notify_url>https://dev.switch.deovo.com:8004/api/v1/wxpay/notice</notify_url><trade_type>JSAPI</trade_type><openid>ohuHh4tpfro8u_fUPMbHEWYx5svQ</openid><profit_sharing>N</profit_sharing></xml>
|
||||||
|
2022/01/16 15:49:10 [INFO ]wx_pay.go:440: 签字符串1 : appId=wx806c079463b5b56c&nonceStr=lOVZRmfoioPBfULu&package=prepay_id=wx161549100009358b0b65c85b76b1520000&signType=MD5&timeStamp=1642319350&key=DeovoMingHuiRengTianTang45675456
|
||||||
|
2022/01/16 15:49:10 [INFO ]init.go:30: /api/v1/user/open_member
|
||||||
|
2022/01/16 15:49:10 [INFO ]wx_pay.go:63: MchId: 1609877389
|
||||||
|
2022/01/16 15:49:10 [INFO ]wx_pay.go:64: AppId: wx806c079463b5b56c
|
||||||
|
2022/01/16 15:49:10 [INFO ]wx_pay.go:65: MchSecret: DeovoMingHuiRengTianTang45675456
|
||||||
|
2022/01/16 15:49:10 [INFO ]wx_pay.go:440: 签字符串1 : appid=wx806c079463b5b56c&attach=member_pay&body=创建订单&device_info=WEB&fee_type=CNY&mch_id=1609877389&nonce_str=63cN2N1GnO3rjy8DOACK03V6Dp515q6E¬ify_url=https://dev.switch.deovo.com:8004/api/v1/wxpay/notice&openid=ohuHh4tpfro8u_fUPMbHEWYx5svQ&out_trade_no=dided4ng0000&profit_sharing=N&sign_type=MD5&spbill_create_ip=39.108.188.218&time_start=20220116154910&total_fee=41&trade_type=JSAPI&key=DeovoMingHuiRengTianTang45675456
|
||||||
|
2022/01/16 15:49:10 [ERROR]wx_pay.go:464: xml: <xml><appid>wx806c079463b5b56c</appid><mch_id>1609877389</mch_id><device_info>WEB</device_info><nonce_str>63cN2N1GnO3rjy8DOACK03V6Dp515q6E</nonce_str><sign>03A10200FDED898D6C7DA73316D53CF4</sign><sign_type>MD5</sign_type><body>创建订单</body><attach>member_pay</attach><out_trade_no>dided4ng0000</out_trade_no><fee_type>CNY</fee_type><total_fee>41</total_fee><spbill_create_ip>39.108.188.218</spbill_create_ip><time_start>20220116154910</time_start><notify_url>https://dev.switch.deovo.com:8004/api/v1/wxpay/notice</notify_url><trade_type>JSAPI</trade_type><openid>ohuHh4tpfro8u_fUPMbHEWYx5svQ</openid><profit_sharing>N</profit_sharing></xml>
|
||||||
|
2022/01/16 15:49:10 [INFO ]wx_pay.go:440: 签字符串1 : appId=wx806c079463b5b56c&nonceStr=YtFKFOjTvYF1TAza&package=prepay_id=wx16154910775284d1d11a140b92f2bd0000&signType=MD5&timeStamp=1642319350&key=DeovoMingHuiRengTianTang45675456
|
||||||
|
2022/01/16 15:49:16 [INFO ]init.go:30: /api/v1/user/open_member
|
||||||
|
2022/01/16 15:49:17 [INFO ]wx_pay.go:63: MchId: 1609877389
|
||||||
|
2022/01/16 15:49:17 [INFO ]wx_pay.go:64: AppId: wx806c079463b5b56c
|
||||||
|
2022/01/16 15:49:17 [INFO ]wx_pay.go:65: MchSecret: DeovoMingHuiRengTianTang45675456
|
||||||
|
2022/01/16 15:49:17 [INFO ]wx_pay.go:440: 签字符串1 : appid=wx806c079463b5b56c&attach=member_pay&body=创建订单&device_info=WEB&fee_type=CNY&mch_id=1609877389&nonce_str=CHz2Jj33ULa0VKk7I2q1ki7n77XfK535¬ify_url=https://dev.switch.deovo.com:8004/api/v1/wxpay/notice&openid=ohuHh4tpfro8u_fUPMbHEWYx5svQ&out_trade_no=didedtp40000&profit_sharing=N&sign_type=MD5&spbill_create_ip=39.108.188.218&time_start=20220116154916&total_fee=41&trade_type=JSAPI&key=DeovoMingHuiRengTianTang45675456
|
||||||
|
2022/01/16 15:49:17 [ERROR]wx_pay.go:464: xml: <xml><appid>wx806c079463b5b56c</appid><mch_id>1609877389</mch_id><device_info>WEB</device_info><nonce_str>CHz2Jj33ULa0VKk7I2q1ki7n77XfK535</nonce_str><sign>11C1E2D541DC0F8284B2CCE24CEA1068</sign><sign_type>MD5</sign_type><body>创建订单</body><attach>member_pay</attach><out_trade_no>didedtp40000</out_trade_no><fee_type>CNY</fee_type><total_fee>41</total_fee><spbill_create_ip>39.108.188.218</spbill_create_ip><time_start>20220116154916</time_start><notify_url>https://dev.switch.deovo.com:8004/api/v1/wxpay/notice</notify_url><trade_type>JSAPI</trade_type><openid>ohuHh4tpfro8u_fUPMbHEWYx5svQ</openid><profit_sharing>N</profit_sharing></xml>
|
||||||
|
2022/01/16 15:49:17 [INFO ]wx_pay.go:440: 签字符串1 : appId=wx806c079463b5b56c&nonceStr=e5zoJnepNXQX6mBl&package=prepay_id=wx16154917204493a8a49858360b56130000&signType=MD5&timeStamp=1642319357&key=DeovoMingHuiRengTianTang45675456
|
||||||
|
2022/01/16 15:49:43 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:49:47 [INFO ]init.go:30: /api/v1/auth/login
|
||||||
|
2022/01/16 15:49:47 [INFO ]account.go:48: OpenID=ohuHh4tpfro8u_fUPMbHEWYx5svQ
|
||||||
|
2022/01/16 15:49:47 [INFO ]account.go:49: resp.UnionID=
|
||||||
|
2022/01/16 15:49:47 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 15:49:48 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:49:52 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 15:49:52 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:50:06 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:50:06 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:50:06 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 15:50:07 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:50:07 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 15:50:09 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:50:09 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 15:51:27 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:51:33 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:59:38 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:59:41 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:59:43 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:59:44 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:59:44 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 15:59:45 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:59:45 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 15:59:47 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 15:59:47 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:01:44 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:01:46 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:01:46 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:01:48 [INFO ]init.go:30: /api/v1/game_card/type/list
|
||||||
|
2022/01/16 16:01:48 [INFO ]init.go:30: /api/v1/game_card/banner
|
||||||
|
2022/01/16 16:01:48 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:01:49 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:02:34 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:04:03 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:04:04 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:04:05 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:04:07 [INFO ]init.go:30: /api/v1/user/invite_list
|
||||||
|
2022/01/16 16:04:53 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:04:54 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:04:55 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:04:55 [INFO ]init.go:30: /api/v1/store/list
|
||||||
|
2022/01/16 16:04:56 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:04:57 [INFO ]init.go:30: /api/v1/article/title_panel/list
|
||||||
|
2022/01/16 16:04:57 [INFO ]init.go:30: /api/v1/article/list
|
||||||
|
2022/01/16 16:04:57 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:04:57 [INFO ]init.go:30: /api/v1/game_card/type/list
|
||||||
|
2022/01/16 16:04:57 [INFO ]init.go:30: /api/v1/game_card/banner
|
||||||
|
2022/01/16 16:04:59 [INFO ]init.go:30: /api/v1/game_card/info
|
||||||
|
2022/01/16 16:04:59 [INFO ]init.go:30: /api/v1/game_card/game_type
|
||||||
|
2022/01/16 16:05:00 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:05:02 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:05:03 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:05:07 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:05:11 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:05:12 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:05:14 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:05:20 [INFO ]init.go:30: /api/v1/user/user_info/tel
|
||||||
|
2022/01/16 16:05:20 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:05:20 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:05:30 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:05:31 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:06:01 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:06:01 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:06:46 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:06:47 [INFO ]init.go:30: /api/v1/store/list
|
||||||
|
2022/01/16 16:06:47 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:06:48 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:06:51 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:06:53 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:06:54 [INFO ]init.go:30: /api/v1/store/list
|
||||||
|
2022/01/16 16:06:54 [INFO ]init.go:30: /api/v1/user/address/list
|
||||||
|
2022/01/16 16:07:19 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:07:20 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:07:22 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:07:23 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:07:31 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:07:32 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:07:33 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:07:34 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:09:09 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:09:09 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:09:11 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:09:12 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:10:33 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:10:34 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:10:35 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:12:54 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:12:55 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:13:11 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:13:11 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:13:40 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:13:42 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:13:53 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:13:54 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:13:55 [INFO ]init.go:30: /api/v1/game_card/info
|
||||||
|
2022/01/16 16:13:55 [INFO ]init.go:30: /api/v1/game_card/game_type
|
||||||
|
2022/01/16 16:15:10 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:15:11 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:15:11 [INFO ]init.go:30: /api/v1/game_card/info
|
||||||
|
2022/01/16 16:15:11 [INFO ]init.go:30: /api/v1/game_card/game_type
|
||||||
|
2022/01/16 16:15:21 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:15:21 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:15:22 [INFO ]init.go:30: /api/v1/game_card/info
|
||||||
|
2022/01/16 16:15:22 [INFO ]init.go:30: /api/v1/game_card/game_type
|
||||||
|
2022/01/16 16:15:23 [INFO ]init.go:30: /api/v1/game_card/info
|
||||||
|
2022/01/16 16:15:23 [INFO ]init.go:30: /api/v1/user/address/list
|
||||||
|
2022/01/16 16:15:24 [INFO ]init.go:30: /api/v1/store/list
|
||||||
|
2022/01/16 16:15:36 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:15:58 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:15:58 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:17:44 [INFO ]base_init_db.go:38: DB init success
|
||||||
|
2022/01/16 16:17:45 [INFO ]init.go:30: /api/v1/auth/login
|
||||||
|
2022/01/16 16:17:45 [INFO ]account.go:48: OpenID=ohuHh4tpfro8u_fUPMbHEWYx5svQ
|
||||||
|
2022/01/16 16:17:45 [INFO ]account.go:49: resp.UnionID=
|
||||||
|
2022/01/16 16:17:45 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:17:45 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:17:49 [INFO ]init.go:30: /api/v1/user/user_info/upload
|
||||||
|
2022/01/16 16:17:50 [INFO ]account.go:302: userInfo={OpenID: Nickname:枫 Gender:0 Province: Language:zh_CN Country: City: Avatar:https://thirdwx.qlogo.cn/mmopen/vi_32/DYAIOgq83eoBbibF1ykzNbej9KZreT23p4O2MLFgNIt73BeIP6GnYOH3baeJvS30wKk866ibKuSL3prOpLJMC6Jg/132 UnionID: Watermark:{AppID:wx806c079463b5b56c Timestamp:1642321068}}
|
||||||
|
2022/01/16 16:17:50 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:17:52 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:17:52 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:17:54 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:17:54 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:17:55 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:17:55 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:18:02 [INFO ]init.go:30: /api/v1/store/list
|
||||||
|
2022/01/16 16:18:02 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:18:04 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:18:05 [INFO ]init.go:30: /api/v1/store/list
|
||||||
|
2022/01/16 16:18:06 [INFO ]init.go:30: /api/v1/user/address/list
|
||||||
|
2022/01/16 16:18:21 [INFO ]init.go:30: /api/v1/user/address/add
|
||||||
|
2022/01/16 16:18:21 [INFO ]init.go:30: /api/v1/order/amount
|
||||||
|
2022/01/16 16:18:44 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:18:45 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:18:45 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:18:46 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:18:46 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:18:47 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:18:48 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:18:50 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:18:50 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:18:50 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:18:51 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:18:52 [INFO ]init.go:30: /api/v1/article/title_panel/list
|
||||||
|
2022/01/16 16:18:53 [INFO ]init.go:30: /api/v1/article/list
|
||||||
|
2022/01/16 16:18:54 [INFO ]init.go:30: /api/v1/game_card/type/list
|
||||||
|
2022/01/16 16:18:54 [INFO ]init.go:30: /api/v1/game_card/banner
|
||||||
|
2022/01/16 16:18:54 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:18:55 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:18:55 [INFO ]init.go:30: /api/v1/game_card/type/list
|
||||||
|
2022/01/16 16:18:55 [INFO ]init.go:30: /api/v1/game_card/banner
|
||||||
|
2022/01/16 16:19:04 [INFO ]init.go:30: /api/v1/store/list
|
||||||
|
2022/01/16 16:19:04 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:19:05 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:19:07 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:19:09 [INFO ]init.go:30: /api/v1/user/invite_list
|
||||||
|
2022/01/16 16:19:13 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:19:14 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:19:14 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:19:19 [INFO ]init.go:30: /api/v1/game_card/info
|
||||||
|
2022/01/16 16:19:19 [INFO ]init.go:30: /api/v1/game_card/game_type
|
||||||
|
2022/01/16 16:19:20 [INFO ]init.go:30: /api/v1/game_card/info
|
||||||
|
2022/01/16 16:19:20 [INFO ]init.go:30: /api/v1/user/address/list
|
||||||
|
2022/01/16 16:19:20 [INFO ]init.go:30: /api/v1/store/list
|
||||||
|
2022/01/16 16:19:24 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:19:26 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:19:26 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:19:32 [INFO ]init.go:30: /api/v1/game_card/banner
|
||||||
|
2022/01/16 16:19:32 [INFO ]init.go:30: /api/v1/game_card/type/list
|
||||||
|
2022/01/16 16:19:32 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:20:01 [INFO ]init.go:30: /api/v1/auth/login
|
||||||
|
2022/01/16 16:20:01 [INFO ]account.go:48: OpenID=ohuHh4tpfro8u_fUPMbHEWYx5svQ
|
||||||
|
2022/01/16 16:20:01 [INFO ]account.go:49: resp.UnionID=
|
||||||
|
2022/01/16 16:20:02 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:20:02 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:20:05 [INFO ]init.go:30: /api/v1/user/user_info/upload
|
||||||
|
2022/01/16 16:20:05 [INFO ]account.go:302: userInfo={OpenID: Nickname:枫 Gender:0 Province: Language:zh_CN Country: City: Avatar:https://thirdwx.qlogo.cn/mmopen/vi_32/DYAIOgq83eoBbibF1ykzNbej9KZreT23p4O2MLFgNIt73BeIP6GnYOH3baeJvS30wKk866ibKuSL3prOpLJMC6Jg/132 UnionID: Watermark:{AppID:wx806c079463b5b56c Timestamp:1642321204}}
|
||||||
|
2022/01/16 16:20:05 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:20:54 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:21:06 [INFO ]init.go:30: /api/v1/user/open_member
|
||||||
|
2022/01/16 16:21:06 [INFO ]wx_pay.go:63: MchId: 1609877389
|
||||||
|
2022/01/16 16:21:06 [INFO ]wx_pay.go:64: AppId: wx806c079463b5b56c
|
||||||
|
2022/01/16 16:21:06 [INFO ]wx_pay.go:65: MchSecret: DeovoMingHuiRengTianTang45675456
|
||||||
|
2022/01/16 16:21:06 [INFO ]wx_pay.go:440: 签字符串1 : appid=wx806c079463b5b56c&attach=member_pay&body=创建订单&device_info=WEB&fee_type=CNY&mch_id=1609877389&nonce_str=4t4p3Bqd0P2oY4zIsP4IGIsRC70zgR9I¬ify_url=https://dev.switch.deovo.com:8004/api/v1/wxpay/notice&openid=ohuHh4tpfro8u_fUPMbHEWYx5svQ&out_trade_no=didln10s0000&profit_sharing=N&sign_type=MD5&spbill_create_ip=39.108.188.218&time_start=20220116162106&total_fee=4&trade_type=JSAPI&key=DeovoMingHuiRengTianTang45675456
|
||||||
|
2022/01/16 16:21:06 [ERROR]wx_pay.go:464: xml: <xml><appid>wx806c079463b5b56c</appid><mch_id>1609877389</mch_id><device_info>WEB</device_info><nonce_str>4t4p3Bqd0P2oY4zIsP4IGIsRC70zgR9I</nonce_str><sign>A6A4F7BAAA85ADC1FBCA6EC3A3D18BEB</sign><sign_type>MD5</sign_type><body>创建订单</body><attach>member_pay</attach><out_trade_no>didln10s0000</out_trade_no><fee_type>CNY</fee_type><total_fee>4</total_fee><spbill_create_ip>39.108.188.218</spbill_create_ip><time_start>20220116162106</time_start><notify_url>https://dev.switch.deovo.com:8004/api/v1/wxpay/notice</notify_url><trade_type>JSAPI</trade_type><openid>ohuHh4tpfro8u_fUPMbHEWYx5svQ</openid><profit_sharing>N</profit_sharing></xml>
|
||||||
|
2022/01/16 16:21:06 [INFO ]wx_pay.go:440: 签字符串1 : appId=wx806c079463b5b56c&nonceStr=4j2i5D5vEzDZsJxu&package=prepay_id=wx16162106859233ff5ca5291acb1b5a0000&signType=MD5&timeStamp=1642321266&key=DeovoMingHuiRengTianTang45675456
|
||||||
|
2022/01/16 16:22:55 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:23:07 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:23:15 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:23:23 [INFO ]init.go:30: /api/v1/user/open_member
|
||||||
|
2022/01/16 16:23:23 [INFO ]wx_pay.go:63: MchId: 1609877389
|
||||||
|
2022/01/16 16:23:23 [INFO ]wx_pay.go:64: AppId: wx806c079463b5b56c
|
||||||
|
2022/01/16 16:23:23 [INFO ]wx_pay.go:65: MchSecret: DeovoMingHuiRengTianTang45675456
|
||||||
|
2022/01/16 16:23:23 [INFO ]wx_pay.go:440: 签字符串1 : appid=wx806c079463b5b56c&attach=member_pay&body=创建订单&device_info=WEB&fee_type=CNY&mch_id=1609877389&nonce_str=3Qftg657g46XN59t62kaaqs5Mz52poHL¬ify_url=https://dev.switch.deovo.com:8004/api/v1/wxpay/notice&openid=ohuHh4tpfro8u_fUPMbHEWYx5svQ&out_trade_no=didm7n1c0000&profit_sharing=N&sign_type=MD5&spbill_create_ip=39.108.188.218&time_start=20220116162323&total_fee=8&trade_type=JSAPI&key=DeovoMingHuiRengTianTang45675456
|
||||||
|
2022/01/16 16:23:23 [ERROR]wx_pay.go:464: xml: <xml><appid>wx806c079463b5b56c</appid><mch_id>1609877389</mch_id><device_info>WEB</device_info><nonce_str>3Qftg657g46XN59t62kaaqs5Mz52poHL</nonce_str><sign>E5F4A1C61F53C0965E6F9E1DB685587F</sign><sign_type>MD5</sign_type><body>创建订单</body><attach>member_pay</attach><out_trade_no>didm7n1c0000</out_trade_no><fee_type>CNY</fee_type><total_fee>8</total_fee><spbill_create_ip>39.108.188.218</spbill_create_ip><time_start>20220116162323</time_start><notify_url>https://dev.switch.deovo.com:8004/api/v1/wxpay/notice</notify_url><trade_type>JSAPI</trade_type><openid>ohuHh4tpfro8u_fUPMbHEWYx5svQ</openid><profit_sharing>N</profit_sharing></xml>
|
||||||
|
2022/01/16 16:23:23 [INFO ]wx_pay.go:440: 签字符串1 : appId=wx806c079463b5b56c&nonceStr=l2GpwuLNzq6HeQSz&package=prepay_id=wx16162323563678392ca9ba60590a5b0000&signType=MD5&timeStamp=1642321403&key=DeovoMingHuiRengTianTang45675456
|
||||||
|
2022/01/16 16:23:42 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:24:16 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:24:17 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:24:17 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:24:34 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:24:35 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:24:35 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:25:09 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:25:10 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:25:10 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:25:11 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:25:11 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:25:42 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:25:49 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:26:44 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:27:05 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:27:05 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:27:05 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:27:06 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:27:06 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:29:03 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:29:03 [INFO ]init.go:30: //api/v1/user/member_config
|
||||||
|
2022/01/16 16:29:10 [INFO ]init.go:30: /api/v1/user/member_config
|
||||||
|
2022/01/16 16:29:10 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:35:41 [INFO ]init.go:30: /api/v1/user/member_config
|
||||||
|
2022/01/16 16:35:41 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:35:50 [INFO ]init.go:30: /api/v1/user/member_config
|
||||||
|
2022/01/16 16:35:50 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:36:04 [INFO ]init.go:30: /api/v1/user/member_config
|
||||||
|
2022/01/16 16:36:04 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:37:15 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:37:26 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:37:26 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:37:26 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:37:28 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:37:28 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:37:28 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:37:28 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:37:30 [INFO ]init.go:30: /api/v1/store/list
|
||||||
|
2022/01/16 16:37:30 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:37:31 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:37:31 [INFO ]init.go:30: /api/v1/game_card/banner
|
||||||
|
2022/01/16 16:37:31 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:37:31 [INFO ]init.go:30: /api/v1/game_card/type/list
|
||||||
|
2022/01/16 16:37:33 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:37:33 [INFO ]init.go:30: /api/v1/game_card/banner
|
||||||
|
2022/01/16 16:37:33 [INFO ]init.go:30: /api/v1/game_card/type/list
|
||||||
|
2022/01/16 16:37:46 [INFO ]init.go:30: /api/v1/game_card/info
|
||||||
|
2022/01/16 16:37:47 [INFO ]init.go:30: /api/v1/game_card/game_type
|
||||||
|
2022/01/16 16:37:47 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:37:50 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:37:52 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:37:53 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:37:54 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:38:10 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:40:09 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:40:16 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:40:17 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:40:19 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:40:19 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:40:44 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:41:36 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:41:37 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:41:37 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:41:37 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:41:40 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:41:40 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:41:47 [INFO ]base_init_db.go:38: DB init success
|
||||||
|
2022/01/16 16:41:47 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:41:47 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:41:48 [INFO ]init.go:30: /api/v1/game_card/banner
|
||||||
|
2022/01/16 16:41:48 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:41:48 [INFO ]init.go:30: /api/v1/game_card/type/list
|
||||||
|
2022/01/16 16:41:49 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:41:50 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:41:51 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:41:52 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:41:57 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:41:58 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:42:16 [INFO ]init.go:30: /api/v1/game_card/info
|
||||||
|
2022/01/16 16:42:16 [INFO ]init.go:30: /api/v1/game_card/game_type
|
||||||
|
2022/01/16 16:42:16 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:42:19 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:42:21 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:42:23 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:43:10 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:43:11 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:43:12 [INFO ]init.go:30: /api/v1/store/list
|
||||||
|
2022/01/16 16:43:12 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:43:13 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:43:14 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:43:15 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:43:20 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:43:20 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:43:20 [INFO ]init.go:30: /api/v1/game_card/type/list
|
||||||
|
2022/01/16 16:43:20 [INFO ]init.go:30: /api/v1/game_card/banner
|
||||||
|
2022/01/16 16:43:23 [INFO ]init.go:30: /api/v1/game_card/info
|
||||||
|
2022/01/16 16:43:23 [INFO ]init.go:30: /api/v1/game_card/game_type
|
||||||
|
2022/01/16 16:43:25 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:43:32 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:43:35 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:43:40 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:43:42 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:44:18 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:44:23 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:44:27 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:44:42 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:44:43 [INFO ]init.go:30: /api/v1/game_card/info
|
||||||
|
2022/01/16 16:44:43 [INFO ]init.go:30: /api/v1/game_card/game_type
|
||||||
|
2022/01/16 16:44:44 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:44:46 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:44:46 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:44:52 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:45:00 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:46:13 [INFO ]base_init_db.go:38: DB init success
|
||||||
|
2022/01/16 16:47:04 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:47:22 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:47:23 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:47:23 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:47:24 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:47:26 [INFO ]init.go:30: /api/v1/store/list
|
||||||
|
2022/01/16 16:47:26 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:47:27 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:47:28 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:47:28 [INFO ]init.go:30: /api/v1/game_card/type/list
|
||||||
|
2022/01/16 16:47:28 [INFO ]init.go:30: /api/v1/game_card/banner
|
||||||
|
2022/01/16 16:47:29 [INFO ]init.go:30: /api/v1/game_card/banner
|
||||||
|
2022/01/16 16:47:29 [INFO ]init.go:30: /api/v1/game_card/type/list
|
||||||
|
2022/01/16 16:47:29 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:47:30 [INFO ]init.go:30: /api/v1/game_card/info
|
||||||
|
2022/01/16 16:47:30 [INFO ]init.go:30: /api/v1/game_card/game_type
|
||||||
|
2022/01/16 16:47:31 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:47:34 [INFO ]init.go:30: /api/v1/store/list
|
||||||
|
2022/01/16 16:47:36 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:47:36 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:47:37 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:47:38 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:47:39 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:47:39 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:47:40 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:47:41 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:47:44 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:47:45 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:47:45 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:47:49 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:47:51 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:47:54 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:47:59 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:48:02 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:48:08 [INFO ]init.go:30: /api/v1/game_card/banner
|
||||||
|
2022/01/16 16:48:08 [INFO ]init.go:30: /api/v1/game_card/type/list
|
||||||
|
2022/01/16 16:48:08 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:48:15 [INFO ]init.go:30: /api/v1/game_card/type/list
|
||||||
|
2022/01/16 16:48:15 [INFO ]init.go:30: /api/v1/game_card/banner
|
||||||
|
2022/01/16 16:48:15 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:49:02 [INFO ]init.go:30: /api/v1/game_card/info
|
||||||
|
2022/01/16 16:49:02 [INFO ]init.go:30: /api/v1/game_card/game_type
|
||||||
|
2022/01/16 16:49:03 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:49:05 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:49:06 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:49:12 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:49:56 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:50:02 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:50:04 [INFO ]init.go:30: /api/v1/store/list
|
||||||
|
2022/01/16 16:50:04 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:50:06 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:50:41 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:51:35 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:51:37 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:51:38 [INFO ]init.go:30: /api/v1/store/list
|
||||||
|
2022/01/16 16:51:38 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:51:39 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:51:50 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:51:50 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:51:51 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:51:52 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:51:53 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:51:53 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:51:56 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:51:56 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:51:57 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:51:58 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:51:58 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:51:59 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:52:00 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:52:00 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:52:01 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:52:02 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:52:03 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:52:03 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:52:04 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:52:05 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:52:05 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:52:06 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:52:07 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:52:07 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:52:08 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:52:09 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:52:09 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:52:10 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:53:34 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:53:36 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:53:37 [INFO ]init.go:30: /api/v1/store/list
|
||||||
|
2022/01/16 16:53:37 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:53:38 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:53:39 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:53:40 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:53:41 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:53:41 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:53:42 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:53:43 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:53:43 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:53:44 [INFO ]init.go:30: /api/v1/shopping_cart/add
|
||||||
|
2022/01/16 16:53:45 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:54:45 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:54:45 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:55:02 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:55:03 [INFO ]init.go:30: /api/v1/game_card/list
|
||||||
|
2022/01/16 16:55:13 [INFO ]init.go:30: /api/v1/store/list
|
||||||
|
2022/01/16 16:55:13 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:55:14 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:55:15 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:55:15 [INFO ]init.go:30: /api/v1/shopping_cart/list
|
||||||
|
2022/01/16 16:55:26 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:55:28 [INFO ]init.go:30: /api/v1/user/data
|
||||||
|
2022/01/16 16:55:28 [INFO ]init.go:30: /api/v1/activity/redeem_code/user_redeem_code/list
|
||||||
|
2022/01/16 16:55:28 [INFO ]init.go:30: /api/v1/game_card/list
|
|
@ -79,6 +79,8 @@ func ConfigAppRouter(r gin.IRouter) {
|
||||||
user.POST("refund_deposit", controller.RefundDeposit) // 押金
|
user.POST("refund_deposit", controller.RefundDeposit) // 押金
|
||||||
user.POST("refund_deposit_record", controller.UserDepositRefundRecordList) // 押金记录
|
user.POST("refund_deposit_record", controller.UserDepositRefundRecordList) // 押金记录
|
||||||
|
|
||||||
|
user.POST("member_config", controller.MemberConfigList) // 开通会员配置
|
||||||
|
|
||||||
user.POST("common_problem/list", controller.CommonProblemList) // 常见问题列表
|
user.POST("common_problem/list", controller.CommonProblemList) // 常见问题列表
|
||||||
//user.POST("service/wechat_id", controller.GetCustomerServiceWechatId) // 获取客服微信号
|
//user.POST("service/wechat_id", controller.GetCustomerServiceWechatId) // 获取客服微信号
|
||||||
user.POST("invite_applet_code", controller.UserInviteAppletQRCode) // 小程序分享二维码
|
user.POST("invite_applet_code", controller.UserInviteAppletQRCode) // 小程序分享二维码
|
||||||
|
|
Loading…
Reference in New Issue
Block a user