This commit is contained in:
苏尹岚
2020-10-20 11:02:54 +08:00
parent 5dd72f7b2d
commit 5a76c726c4
2 changed files with 55 additions and 87 deletions

View File

@@ -239,34 +239,34 @@ func Pay4Order(ctx *jxcontext.Context, orderID int64, payType int, vendorPayType
} }
func Pay4User(ctx *jxcontext.Context, thingID, payType int, vendorPayType string) (orderPay *model.OrderPay, err error) { func Pay4User(ctx *jxcontext.Context, thingID, payType int, vendorPayType string) (orderPay *model.OrderPay, err error) {
var ( // var (
db = dao.GetDB() // db = dao.GetDB()
order *model.GoodsOrder // order *model.GoodsOrder
dicountCards []*model.DiscountCard // dicountCards []*model.DiscountCard
vendorOrderID string // vendorOrderID string
) // )
switch payType { // switch payType {
case model.PayTypeTL_DiscountCard: // case model.PayTypeTL_DiscountCard:
if configList, err := dao.QueryConfigs(db, "会员折扣卡", model.ConfigTypeDiscountCard, ""); err == nil { // if configList, err := dao.QueryConfigs(db, "会员折扣卡", model.ConfigTypeDiscountCard, ""); err == nil {
jxutils.Strings2Objs(configList[0].Value, &dicountCards) // jxutils.Strings2Objs(configList[0].Value, &dicountCards)
if err != nil { // if err != nil {
return nil, err // return nil, err
} // }
discountCard := findDiscountCard(dicountCards, thingID) // discountCard := findDiscountCard(dicountCards, thingID)
// flag, userMemberOrigin, err := checkMember(db, ctx.GetUserID(), discountCard) // // flag, userMemberOrigin, err := checkMember(db, ctx.GetUserID(), discountCard)
if err != nil { // if err != nil {
return nil, err // return nil, err
} // }
vendorOrderID = utils.Int64ToStr(jxutils.GenOrderNo()) // vendorOrderID = utils.Int64ToStr(jxutils.GenOrderNo())
order = &model.GoodsOrder{ // order = &model.GoodsOrder{
VendorOrderID: vendorOrderID, // VendorOrderID: vendorOrderID,
ActualPayPrice: int64(discountCard.Price), // ActualPayPrice: int64(discountCard.Price),
VendorID: model.VendorIDJX, // VendorID: model.VendorIDJX,
} // }
if orderPay, err = pay4OrderByTL(ctx, order, payType, vendorPayType); err == nil && orderPay != nil { // if orderPay, err = pay4OrderByTL(ctx, order, payType, vendorPayType); err == nil && orderPay != nil {
dao.WrapAddIDCULDEntity(orderPay, ctx.GetUserName()) // dao.WrapAddIDCULDEntity(orderPay, ctx.GetUserName())
err = dao.CreateEntity(dao.GetDB(), orderPay) // err = dao.CreateEntity(dao.GetDB(), orderPay)
} // }
// userMember := &model.UserMember{ // userMember := &model.UserMember{
// VendorOrderID: vendorOrderID, // VendorOrderID: vendorOrderID,
// UserID: ctx.GetUserID(), // UserID: ctx.GetUserID(),
@@ -282,45 +282,13 @@ func Pay4User(ctx *jxcontext.Context, thingID, payType int, vendorPayType string
// userMemberOrigin.EndAt = userMemberOrigin.EndAt.AddDate(0, 1, 0) // userMemberOrigin.EndAt = userMemberOrigin.EndAt.AddDate(0, 1, 0)
// dao.UpdateEntity(db, userMemberOrigin, "EndAt") // dao.UpdateEntity(db, userMemberOrigin, "EndAt")
// } // }
} // }
default: // default:
err = fmt.Errorf("支付方式:%d当前不支持", payType) // err = fmt.Errorf("支付方式:%d当前不支持", payType)
} // }
return orderPay, err return orderPay, err
} }
//flag
//0 正常购买
//1 续费
//-1 不能购买
func checkMember(db *dao.DaoDB, userID string, discountCard *model.DiscountCard) (flag int, userMember *model.UserMember, err error) {
// userMembers, err := dao.GetUserMember(db, userID, "", model.MemberTypeDiscountCard, model.YES)
// if len(userMembers) > 0 {
// userMember = userMembers[0]
// if userMember.ID < discountCard.ID {
// return 0, userMember, err
// } else if userMember.ID == discountCard.ID {
// return 1, userMember, err
// } else {
// return -1, userMember, fmt.Errorf("已购买更高档次的会员,无法继续购买!")
// }
// }
return 0, userMember, err
}
func time2ShortTimeStr(t time.Time) string {
return t.Format("15:04")
}
func findDiscountCard(dicountCards []*model.DiscountCard, thingID int) (dicountCard *model.DiscountCard) {
for _, v := range dicountCards {
if v.ID == thingID {
return v
}
}
return dicountCard
}
func OnPayFinished(orderPay *model.OrderPay) (err error) { func OnPayFinished(orderPay *model.OrderPay) (err error) {
order, err := partner.CurOrderManager.LoadOrder(orderPay.VendorOrderID, orderPay.VendorID) order, err := partner.CurOrderManager.LoadOrder(orderPay.VendorOrderID, orderPay.VendorID)
if err == nil { if err == nil {
@@ -345,7 +313,7 @@ func OnPayFinished(orderPay *model.OrderPay) (err error) {
} }
} else { } else {
switch orderPay.PayType { switch orderPay.PayType {
case model.PayTypeTL_DiscountCard: // case model.PayTypeTL_DiscountCard:
// userMembers, _ := dao.GetUserMember(dao.GetDB(), "", orderPay.VendorOrderID, model.MemberTypeDiscountCard, model.NO) // userMembers, _ := dao.GetUserMember(dao.GetDB(), "", orderPay.VendorOrderID, model.MemberTypeDiscountCard, model.NO)
// if len(userMembers) > 0 { // if len(userMembers) > 0 {
// userMembers[0].IsPay = model.YES // userMembers[0].IsPay = model.YES

View File

@@ -48,7 +48,7 @@ func init() {
), ),
) )
beego.AddNamespace(ns) beego.AddNamespace(ns)
// beego.AutoRouter(&controllers) beego.AutoRouter(&controllers.WXPayController{})
beego.AutoRouter(&controllers.TongLianController{}) beego.AutoRouter(&controllers.TongLianController{})
// 如下都是用于检测存活的空接口 // 如下都是用于检测存活的空接口