fix
This commit is contained in:
parent
30f18cf601
commit
064300871b
|
@ -183,6 +183,7 @@ type ZoneRefundPageReq struct {
|
||||||
|
|
||||||
type ZoneRefundPageData struct {
|
type ZoneRefundPageData struct {
|
||||||
Price int64 `json:"price"` // 退款价格,单位:分
|
Price int64 `json:"price"` // 退款价格,单位:分
|
||||||
|
CoinPrice int64 `json:"coin_price"` // 推荐价格,单位:金币
|
||||||
Name string `json:"name"` // 退款商品名
|
Name string `json:"name"` // 退款商品名
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -63,7 +63,7 @@ func ZoneRefundPage(ctx *gin.Context) {
|
||||||
ReplyErrCodeMsg(ctx, errcode.ErrCodeBadParam)
|
ReplyErrCodeMsg(ctx, errcode.ErrCodeBadParam)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
name, price, ec, err := service.DefaultService.ZoneGetRefundPage(ctx, req)
|
name, price, payType, ec, err := service.DefaultService.ZoneGetRefundPage(ctx, req)
|
||||||
if ec != errcode.ErrCodeVasSrvOk {
|
if ec != errcode.ErrCodeVasSrvOk {
|
||||||
logger.Error("ZoneGetRefundPage fail, req: %v, ec: %v", util.ToJson(req), ec)
|
logger.Error("ZoneGetRefundPage fail, req: %v, ec: %v", util.ToJson(req), ec)
|
||||||
if ec == errcode.ErrCodeVasSrvFail && err != nil {
|
if ec == errcode.ErrCodeVasSrvFail && err != nil {
|
||||||
|
@ -74,9 +74,13 @@ func ZoneRefundPage(ctx *gin.Context) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
data := &vasproto.ZoneRefundPageData{
|
data := &vasproto.ZoneRefundPageData{
|
||||||
Price: price,
|
|
||||||
Name: name,
|
Name: name,
|
||||||
}
|
}
|
||||||
|
if payType == vasproto.PayTypeCoin {
|
||||||
|
data.CoinPrice = price
|
||||||
|
} else {
|
||||||
|
data.Price = price
|
||||||
|
}
|
||||||
ReplyOk(ctx, data)
|
ReplyOk(ctx, data)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1509,11 +1509,13 @@ func (v *Vas) PayCallback(ctx *gin.Context, p *vasproto.PayCallbackParamIn) erro
|
||||||
ch.SType = goproto.Int32(dbstruct.CHSTypeChargeZoneSuperfanship)
|
ch.SType = goproto.Int32(dbstruct.CHSTypeChargeZoneSuperfanship)
|
||||||
ch.Change = goproto.Int64(order.GetPayAmount())
|
ch.Change = goproto.Int64(order.GetPayAmount())
|
||||||
}
|
}
|
||||||
|
if !(order.GetPayType() == vasproto.PayTypeCoin && product.Id == dbstruct.ProductIdMembership) {
|
||||||
err = v.store.CreateConsumeHistory(ctx, tx, ch)
|
err = v.store.CreateConsumeHistory(ctx, tx, ch)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("CreateConsumeHistory fail, ch: %v, err: %v", util.ToJson(ch), err)
|
logger.Error("CreateConsumeHistory fail, ch: %v, err: %v", util.ToJson(ch), err)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// 更新状态
|
// 更新状态
|
||||||
err = v.store.UpdateOrderStatus(ctx, tx, orderId, dbstruct.VasOrderStatusInit, dbstruct.VasOrderStatusPaySuccess)
|
err = v.store.UpdateOrderStatus(ctx, tx, orderId, dbstruct.VasOrderStatusInit, dbstruct.VasOrderStatusPaySuccess)
|
||||||
|
@ -2243,7 +2245,11 @@ func (v *Vas) UnlockMembership(ctx *gin.Context, tx *sqlx.Tx, mid int64, product
|
||||||
}
|
}
|
||||||
|
|
||||||
// 增加空间消费
|
// 增加空间消费
|
||||||
_err := v.IncZoneConsume(ctx, tx, zid, mid, order.GetUid(), order.GetPayAmount(), orderId, order.GetProductId())
|
consume := order.GetPayAmount()
|
||||||
|
if order.GetPayType() == vasproto.PayTypeCoin {
|
||||||
|
consume = consume * 10
|
||||||
|
}
|
||||||
|
_err := v.IncZoneConsume(ctx, tx, zid, mid, order.GetUid(), consume, orderId, order.GetProductId())
|
||||||
if _err != nil {
|
if _err != nil {
|
||||||
logger.Error("IncZoneConsume fail, mid: %v, orderId: %v, err: %v", mid, orderId, err)
|
logger.Error("IncZoneConsume fail, mid: %v, orderId: %v, err: %v", mid, orderId, err)
|
||||||
}
|
}
|
||||||
|
|
|
@ -277,7 +277,6 @@ func (v *Vas) UnlockZoneMoment(ctx *gin.Context, tx *sqlx.Tx, order *dbstruct.Or
|
||||||
|
|
||||||
var (
|
var (
|
||||||
orderId = order.GetID()
|
orderId = order.GetID()
|
||||||
price = order.GetPayAmount()
|
|
||||||
mid = order.GetMid()
|
mid = order.GetMid()
|
||||||
zid = order.GetZid()
|
zid = order.GetZid()
|
||||||
momentId = order.GetMomentId()
|
momentId = order.GetMomentId()
|
||||||
|
@ -313,7 +312,11 @@ func (v *Vas) UnlockZoneMoment(ctx *gin.Context, tx *sqlx.Tx, order *dbstruct.Or
|
||||||
}
|
}
|
||||||
|
|
||||||
// 增加空间消费
|
// 增加空间消费
|
||||||
_err := v.IncZoneConsume(ctx, tx, zid, mid, 0, price, orderId, order.GetProductId())
|
consume := order.GetPayAmount()
|
||||||
|
if order.GetPayType() == vasproto.PayTypeCoin {
|
||||||
|
consume = consume * 10
|
||||||
|
}
|
||||||
|
_err := v.IncZoneConsume(ctx, tx, zid, mid, 0, consume, orderId, order.GetProductId())
|
||||||
if _err != nil {
|
if _err != nil {
|
||||||
logger.Error("IncZoneConsume fail, mid: %v, zid: %v, mmid: %v, orderId: %v, err: %v", mid, zid, momentId, orderId, err)
|
logger.Error("IncZoneConsume fail, mid: %v, zid: %v, mmid: %v, orderId: %v, err: %v", mid, zid, momentId, orderId, err)
|
||||||
}
|
}
|
||||||
|
@ -407,7 +410,6 @@ func (v *Vas) UnlockZoneSuperfanship(ctx *gin.Context, tx *sqlx.Tx, order *dbstr
|
||||||
|
|
||||||
var (
|
var (
|
||||||
orderId = order.GetID()
|
orderId = order.GetID()
|
||||||
price = order.GetPayAmount()
|
|
||||||
mid = order.GetMid()
|
mid = order.GetMid()
|
||||||
zid = order.GetZid()
|
zid = order.GetZid()
|
||||||
)
|
)
|
||||||
|
@ -449,7 +451,11 @@ func (v *Vas) UnlockZoneSuperfanship(ctx *gin.Context, tx *sqlx.Tx, order *dbstr
|
||||||
}
|
}
|
||||||
|
|
||||||
// 增加空间消费
|
// 增加空间消费
|
||||||
_err := v.IncZoneConsume(ctx, tx, zid, mid, 0, price, orderId, order.GetProductId())
|
consume := order.GetPayAmount()
|
||||||
|
if order.GetPayType() == vasproto.PayTypeCoin {
|
||||||
|
consume = consume * 10
|
||||||
|
}
|
||||||
|
_err := v.IncZoneConsume(ctx, tx, zid, mid, 0, consume, orderId, order.GetProductId())
|
||||||
if _err != nil {
|
if _err != nil {
|
||||||
logger.Error("IncZoneConsume fail, mid: %v, zid: %v, orderId: %v, err: %v", mid, zid, orderId, err)
|
logger.Error("IncZoneConsume fail, mid: %v, zid: %v, orderId: %v, err: %v", mid, zid, orderId, err)
|
||||||
}
|
}
|
||||||
|
@ -881,36 +887,36 @@ func (v *Vas) GetZoneMomentUnlockMapByMidMomentIds(ctx *gin.Context, mid int64,
|
||||||
}
|
}
|
||||||
|
|
||||||
// 空间退款页面
|
// 空间退款页面
|
||||||
func (v *Vas) ZoneGetRefundPage(ctx *gin.Context, req *vasproto.ZoneRefundPageReq) (string, int64, error) {
|
func (v *Vas) ZoneGetRefundPage(ctx *gin.Context, req *vasproto.ZoneRefundPageReq) (string, int64, string, error) {
|
||||||
zv, err := v.store.GetZoneUnlock(ctx, nil, req.Mid, req.Zid)
|
zv, err := v.store.GetZoneUnlock(ctx, nil, req.Mid, req.Zid)
|
||||||
if err == sql.ErrNoRows || zv == nil {
|
if err == sql.ErrNoRows || zv == nil {
|
||||||
logger.Error("no zone unlock info, mid: %v, zid: %v", req.Mid, req.Zid)
|
logger.Error("no zone unlock info, mid: %v, zid: %v", req.Mid, req.Zid)
|
||||||
return "", 0, fmt.Errorf("没有解锁信息")
|
return "", 0, "", fmt.Errorf("没有解锁信息")
|
||||||
}
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("get zone unlock info fail, mid: %v, zid: %v, err: %v", req.Mid, req.Zid, err)
|
logger.Error("get zone unlock info fail, mid: %v, zid: %v, err: %v", req.Mid, req.Zid, err)
|
||||||
return "", 0, err
|
return "", 0, "", err
|
||||||
}
|
}
|
||||||
|
|
||||||
// 判断
|
// 判断
|
||||||
if zv.GetAdmissionUntil() == 0 || len(zv.GetAdmissionOrderId()) <= 0 {
|
if zv.GetAdmissionUntil() == 0 || len(zv.GetAdmissionOrderId()) <= 0 {
|
||||||
err = fmt.Errorf("无空间解锁记录")
|
err = fmt.Errorf("无空间解锁记录")
|
||||||
logger.Error("no zone unlock info, mid: %v, zid: %v", req.Mid, req.Zid)
|
logger.Error("no zone unlock info, mid: %v, zid: %v", req.Mid, req.Zid)
|
||||||
return "", 0, err
|
return "", 0, "", err
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取订单
|
// 获取订单
|
||||||
order, err := v.store.GetOrderById(ctx, nil, zv.GetAdmissionOrderId())
|
order, err := v.store.GetOrderById(ctx, nil, zv.GetAdmissionOrderId())
|
||||||
if err == sql.ErrNoRows || order == nil {
|
if err == sql.ErrNoRows || order == nil {
|
||||||
logger.Error("no zone admission order info, mid: %v, zid: %v, orderId: %v", req.Mid, req.Zid, zv.GetAdmissionOrderId())
|
logger.Error("no zone admission order info, mid: %v, zid: %v, orderId: %v", req.Mid, req.Zid, zv.GetAdmissionOrderId())
|
||||||
return "", 0, fmt.Errorf("没有相关订单")
|
return "", 0, "", fmt.Errorf("没有相关订单")
|
||||||
}
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("get zone admission order info fail, mid: %v, zid: %v, orderId: %v, err: %v", req.Mid, req.Zid, zv.GetAdmissionOrderId(), err)
|
logger.Error("get zone admission order info fail, mid: %v, zid: %v, orderId: %v, err: %v", req.Mid, req.Zid, zv.GetAdmissionOrderId(), err)
|
||||||
return "", 0, err
|
return "", 0, "", err
|
||||||
}
|
}
|
||||||
|
|
||||||
return "空间成员权限", order.GetPayAmount(), nil
|
return "空间成员权限", order.GetPayAmount(), order.GetPayType(), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// 空间退款
|
// 空间退款
|
||||||
|
|
|
@ -325,6 +325,7 @@ func (s *Service) chListCharge(ctx *gin.Context, chList []*dbstruct.ConsumeHisto
|
||||||
newChange += oldChange[:1]
|
newChange += oldChange[:1]
|
||||||
}
|
}
|
||||||
newChange += fmt.Sprintf("%d金币", chDB.GetChange())
|
newChange += fmt.Sprintf("%d金币", chDB.GetChange())
|
||||||
|
item.Change = newChange
|
||||||
}
|
}
|
||||||
|
|
||||||
list = append(list, item)
|
list = append(list, item)
|
||||||
|
@ -907,8 +908,8 @@ func (s *Service) ZoneGetCashier(ctx *gin.Context, req *vasproto.ZoneGetCashierR
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *Service) ZoneGetRefundPage(ctx *gin.Context, req *vasproto.ZoneRefundPageReq) (name string, price int64, ec errcode.ErrCode, err error) {
|
func (s *Service) ZoneGetRefundPage(ctx *gin.Context, req *vasproto.ZoneRefundPageReq) (name string, price int64, payType string, ec errcode.ErrCode, err error) {
|
||||||
name, price, err = _DefaultVas.ZoneGetRefundPage(ctx, req)
|
name, price, payType, err = _DefaultVas.ZoneGetRefundPage(ctx, req)
|
||||||
ec, err = errs.DealVasErr(err)
|
ec, err = errs.DealVasErr(err)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("ZoneGetRefundPage fail, err: %v", err)
|
logger.Error("ZoneGetRefundPage fail, err: %v", err)
|
||||||
|
|
Loading…
Reference in New Issue