fix:
This commit is contained in:
parent
a8fdb04881
commit
a6689f2ad1
|
@ -228,6 +228,8 @@ func RentCardOrderCreate(c *gin.Context) {
|
||||||
RespJson(c, status.InternalServerError, nil)
|
RespJson(c, status.InternalServerError, nil)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
fmt.Println("Deposit:", user.Deposit)
|
||||||
|
fmt.Println("MemberDeposit:", memberConfig.MemberDeposit)
|
||||||
if user.Deposit != memberConfig.MemberDeposit {
|
if user.Deposit != memberConfig.MemberDeposit {
|
||||||
logger.Error(errors.New("user deposit 0"))
|
logger.Error(errors.New("user deposit 0"))
|
||||||
RespJson(c, status.OrderUnpaidDeposit, nil)
|
RespJson(c, status.OrderUnpaidDeposit, nil)
|
||||||
|
|
|
@ -33,6 +33,18 @@ func UserShareCardBillCreate(c *gin.Context) {
|
||||||
RespJson(c, status.Unauthorized, nil)
|
RespJson(c, status.Unauthorized, nil)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
user := model.GetUserByUid(uc.Uid)
|
||||||
|
if user == nil {
|
||||||
|
logger.Error("parameter err")
|
||||||
|
RespJson(c, status.BadRequest, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if user.MemberLevel != 2 && user.MemberLevel != 4 && user.MemberLevel != 5 {
|
||||||
|
logger.Error("user not is member err:")
|
||||||
|
RespJson(c, status.NotMember, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
billSn := model.GetShareCardBillSn()
|
billSn := model.GetShareCardBillSn()
|
||||||
begin := model.DB.Begin()
|
begin := model.DB.Begin()
|
||||||
shareCardBill := &model.UserShareCardBill{
|
shareCardBill := &model.UserShareCardBill{
|
||||||
|
@ -97,21 +109,22 @@ func ShareCardBillSendCard(c *gin.Context) {
|
||||||
}
|
}
|
||||||
begin := model.DB.Begin()
|
begin := model.DB.Begin()
|
||||||
_, err := model.NewUserShareCardBillQuerySet(begin).IDEq(req.UserShareCardBillId).GetUpdater().
|
_, err := model.NewUserShareCardBillQuerySet(begin).IDEq(req.UserShareCardBillId).GetUpdater().
|
||||||
SetExpressCompany(req.ExpressCompany).SetExpressNo(req.ExpressNo).SetState(model.ShareCardBillStateSentCard).UpdateNum()
|
SetExpressCompany(req.ExpressCompany).SetExpressNo(req.ExpressNo).UpdateNum()
|
||||||
if err != nil {
|
//SetState(model.ShareCardBillStateSentCard).UpdateNum()
|
||||||
begin.Rollback()
|
|
||||||
logger.Error("update user share card bill err:", err)
|
|
||||||
RespJson(c, status.InternalServerError, nil)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
_, err = model.NewShareCardBillGameQuerySet(begin).UserShareCardBillIdEq(req.UserShareCardBillId).GetUpdater().
|
|
||||||
SetState(model.ShareCardStateSentCard).UpdateNum()
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
begin.Rollback()
|
begin.Rollback()
|
||||||
logger.Error("update user share card bill err:", err)
|
logger.Error("update user share card bill err:", err)
|
||||||
RespJson(c, status.InternalServerError, nil)
|
RespJson(c, status.InternalServerError, nil)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
//_, err = model.NewShareCardBillGameQuerySet(begin).UserShareCardBillIdEq(req.UserShareCardBillId).GetUpdater().
|
||||||
|
// SetState(model.ShareCardStateSentCard).UpdateNum()
|
||||||
|
//if err != nil {
|
||||||
|
// begin.Rollback()
|
||||||
|
// logger.Error("update user share card bill err:", err)
|
||||||
|
// RespJson(c, status.InternalServerError, nil)
|
||||||
|
// return
|
||||||
|
//}
|
||||||
err = begin.Commit().Error
|
err = begin.Commit().Error
|
||||||
if err != nil {
|
if err != nil {
|
||||||
begin.Rollback()
|
begin.Rollback()
|
||||||
|
@ -123,6 +136,38 @@ func ShareCardBillSendCard(c *gin.Context) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func UserShareCardGameList(c *gin.Context) {
|
||||||
|
req := struct {
|
||||||
|
Label string `json:"label"`
|
||||||
|
Page int `json:"cur_page"`
|
||||||
|
PageSize int `json:"page_size"`
|
||||||
|
}{}
|
||||||
|
if c.ShouldBindJSON(&req) != nil {
|
||||||
|
logger.Error("parameter err")
|
||||||
|
RespJson(c, status.BadRequest, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
//uc := auth.GetCurrentUser(c)
|
||||||
|
//if uc == nil {
|
||||||
|
// RespJson(c, status.Unauthorized, nil)
|
||||||
|
// return
|
||||||
|
//}
|
||||||
|
list, totalPage, err := model.GetUserShareCardGameList(0, req.Page, req.PageSize, req.Label)
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("share card bill game create err:", err)
|
||||||
|
RespJson(c, status.InternalServerError, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
ret := map[string]interface{}{
|
||||||
|
"list": list,
|
||||||
|
"cur_page": req.Page,
|
||||||
|
"total_page": totalPage,
|
||||||
|
}
|
||||||
|
RespOK(c, ret)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func UserShareCardBillList(c *gin.Context) {
|
func UserShareCardBillList(c *gin.Context) {
|
||||||
req := struct {
|
req := struct {
|
||||||
State string `json:"state"`
|
State string `json:"state"`
|
||||||
|
@ -189,8 +234,21 @@ func UserShareCardBillCancel(c *gin.Context) {
|
||||||
RespJson(c, status.BadRequest, nil)
|
RespJson(c, status.BadRequest, nil)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
var shareCardBill model.UserShareCardBill
|
||||||
|
err := model.NewUserShareCardBillQuerySet(model.DB).IDEq(req.UserShareCardBillId).One(&shareCardBill)
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("user share card bill err")
|
||||||
|
RespJson(c, status.InternalServerError, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if shareCardBill.State != model.ShareCardBillStateInCheck &&
|
||||||
|
shareCardBill.State != model.ShareCardBillStateInSendCard {
|
||||||
|
logger.Error("user share card bill err")
|
||||||
|
RespJson(c, status.ShareCardBillStateCancelError, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
begin := model.DB.Begin()
|
begin := model.DB.Begin()
|
||||||
_, err := model.NewUserShareCardBillQuerySet(begin).IDEq(req.UserShareCardBillId).GetUpdater().
|
_, err = model.NewUserShareCardBillQuerySet(begin).IDEq(req.UserShareCardBillId).GetUpdater().
|
||||||
SetState(model.ShareCardBillStateCancel).UpdateNum()
|
SetState(model.ShareCardBillStateCancel).UpdateNum()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
begin.Rollback()
|
begin.Rollback()
|
||||||
|
@ -234,7 +292,7 @@ func UserShareCardMyCard(c *gin.Context) {
|
||||||
RespJson(c, status.Unauthorized, nil)
|
RespJson(c, status.Unauthorized, nil)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
list, totalPage, err := model.GetUserShareCardMyCardList(uc.Uid, req.Page, req.PageSize, req.State)
|
list, totalPage, cardCount, err := model.GetUserShareCardMyCardList(uc.Uid, req.Page, req.PageSize, req.State)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("share card bill game create err:", err)
|
logger.Error("share card bill game create err:", err)
|
||||||
RespJson(c, status.InternalServerError, nil)
|
RespJson(c, status.InternalServerError, nil)
|
||||||
|
@ -251,6 +309,7 @@ func UserShareCardMyCard(c *gin.Context) {
|
||||||
ret := map[string]interface{}{
|
ret := map[string]interface{}{
|
||||||
"yesterday_vm": dateVm.Vm,
|
"yesterday_vm": dateVm.Vm,
|
||||||
"total_vm": dateVm.TotalVm,
|
"total_vm": dateVm.TotalVm,
|
||||||
|
"card_count": cardCount,
|
||||||
"list": list,
|
"list": list,
|
||||||
"cur_page": req.Page,
|
"cur_page": req.Page,
|
||||||
"total_page": totalPage,
|
"total_page": totalPage,
|
||||||
|
@ -309,12 +368,21 @@ func ShareCardRetrieveCreate(c *gin.Context) {
|
||||||
RespJson(c, status.Unauthorized, nil)
|
RespJson(c, status.Unauthorized, nil)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if user.MemberLevel != 2 && user.MemberLevel != 4 && user.MemberLevel != 5 {
|
|
||||||
logger.Error("user not is member err:")
|
count, err := model.NewShareCardRetrieveCardQuerySet(model.DB).SerialNumberIn(req.SerialNumbers...).
|
||||||
RespJson(c, status.NotMember, nil)
|
//StateIn(model.RetrieveStateInCheck).Count()
|
||||||
|
StateNotIn(model.RetrieveStateCheckLose, model.RetrieveStateCancel).Count()
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("share card retrieve card err:", err)
|
||||||
|
RespJson(c, status.InternalServerError, nil)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
req.Amount = 10 // TODO
|
if count > 0 {
|
||||||
|
logger.Error("serial number has applied")
|
||||||
|
RespJson(c, status.ShareCardRetrieveExistAppliedCard, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
req.Amount = 40 // TODO
|
||||||
retrieve, err := req.RetrieveCreate()
|
retrieve, err := req.RetrieveCreate()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("share card retrieve create err:", err)
|
logger.Error("share card retrieve create err:", err)
|
||||||
|
@ -455,7 +523,7 @@ func ShareCardRetrieveCancel(c *gin.Context) {
|
||||||
NotifyUrl: "",
|
NotifyUrl: "",
|
||||||
Amount: wxpay.OrderRefundAmount{
|
Amount: wxpay.OrderRefundAmount{
|
||||||
Refund: retrieve.PayAmount,
|
Refund: retrieve.PayAmount,
|
||||||
Total: retrieve.PayState,
|
Total: retrieve.PayAmount,
|
||||||
Currency: "CNY",
|
Currency: "CNY",
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
@ -539,3 +607,141 @@ func ShareCardRetrieveConfirm(c *gin.Context) {
|
||||||
RespOK(c, nil)
|
RespOK(c, nil)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func CardIssueCreate(c *gin.Context) {
|
||||||
|
req := struct {
|
||||||
|
RelevanceId uint32 `json:"relevance_id"` // 关联id
|
||||||
|
ObtainType string `json:"obtain_type"` // 卡类型
|
||||||
|
Problem string `json:"problem"` // 问题
|
||||||
|
Remark string `json:"remark"`
|
||||||
|
}{}
|
||||||
|
if c.ShouldBindJSON(&req) != nil {
|
||||||
|
logger.Error("parameter err")
|
||||||
|
RespJson(c, status.BadRequest, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
uc := auth.GetCurrentUser(c)
|
||||||
|
if uc == nil {
|
||||||
|
RespJson(c, status.Unauthorized, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
var feedback *model.CardIssueFeedback
|
||||||
|
if req.ObtainType == "retrieve_card" {
|
||||||
|
var shareCardRetrieveCard model.ShareCardRetrieveCard
|
||||||
|
err := model.NewShareCardRetrieveCardQuerySet(model.DB).IDEq(req.RelevanceId).One(&shareCardRetrieveCard)
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("share card retrieve err:", err)
|
||||||
|
RespJson(c, status.InternalServerError, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if shareCardRetrieveCard.Uid != uc.Uid {
|
||||||
|
logger.Error("feedback uid err:")
|
||||||
|
RespJson(c, status.InternalServerError, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
feedback = &model.CardIssueFeedback{
|
||||||
|
Uid: shareCardRetrieveCard.Uid,
|
||||||
|
GameCardId: shareCardRetrieveCard.GameCardId,
|
||||||
|
SerialNumber: shareCardRetrieveCard.RetrieveSerialNumber,
|
||||||
|
GameCardGoodsId: shareCardRetrieveCard.GameCardGoodsId,
|
||||||
|
StoreId: shareCardRetrieveCard.StoreId,
|
||||||
|
RelevanceId: shareCardRetrieveCard.ID,
|
||||||
|
ObtainType: req.ObtainType,
|
||||||
|
Problem: req.Problem,
|
||||||
|
Remark: req.Remark,
|
||||||
|
}
|
||||||
|
} else if req.ObtainType == "rent_card" {
|
||||||
|
var order model.Order
|
||||||
|
err := model.NewOrderQuerySet(model.DB).IDEq(req.RelevanceId).One(&order)
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("order err:", err)
|
||||||
|
RespJson(c, status.InternalServerError, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if uint32(order.Uid) != uc.Uid {
|
||||||
|
logger.Error("order uid err:")
|
||||||
|
RespJson(c, status.InternalServerError, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
feedback = &model.CardIssueFeedback{
|
||||||
|
Uid: uint32(order.Uid),
|
||||||
|
GameCardId: uint32(order.GameCardId),
|
||||||
|
SerialNumber: order.GameCardSerialNumber,
|
||||||
|
GameCardGoodsId: uint32(order.GameCardGoodsId),
|
||||||
|
StoreId: uint32(order.StoreId),
|
||||||
|
RelevanceId: order.ID,
|
||||||
|
ObtainType: req.ObtainType,
|
||||||
|
Problem: req.Problem,
|
||||||
|
Remark: req.Remark,
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
logger.Error("obtain type err:")
|
||||||
|
RespJson(c, status.InternalServerError, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
err := model.DB.Create(feedback).Error
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("create feedback err:")
|
||||||
|
RespJson(c, status.InternalServerError, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
RespOK(c, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func CardIssueList(c *gin.Context) {
|
||||||
|
req := struct {
|
||||||
|
Uid uint32 `json:"uid"`
|
||||||
|
State string `json:"state"`
|
||||||
|
Page int `json:"cur_page"`
|
||||||
|
PageSize int `json:"page_size"`
|
||||||
|
}{}
|
||||||
|
if c.ShouldBindJSON(&req) != nil {
|
||||||
|
logger.Error("parameter err")
|
||||||
|
RespJson(c, status.BadRequest, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
uc := auth.GetCurrentUser(c)
|
||||||
|
if uc == nil {
|
||||||
|
logger.Error("user err")
|
||||||
|
RespJson(c, status.Unauthorized, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
var issueFeedbacks []model.CardIssueFeedback
|
||||||
|
qs := model.NewCardIssueFeedbackQuerySet(model.DB).UidEq(uc.Uid)
|
||||||
|
if req.State != "" {
|
||||||
|
qs = qs.StateEq(req.State)
|
||||||
|
}
|
||||||
|
|
||||||
|
count, err := qs.Count()
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("count card issue feedback err")
|
||||||
|
RespJson(c, status.InternalServerError, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
page := req.Page - 1
|
||||||
|
if page < 0 {
|
||||||
|
page = 0
|
||||||
|
}
|
||||||
|
if req.PageSize == 0 {
|
||||||
|
req.PageSize = 10
|
||||||
|
}
|
||||||
|
totalPage := count / req.PageSize
|
||||||
|
|
||||||
|
err = qs.OrderDescByID().Offset(page * req.PageSize).Limit(req.PageSize).All(&issueFeedbacks)
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("card issue feedback err")
|
||||||
|
RespJson(c, status.InternalServerError, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
issueFeedbacks = model.CardIssueFeedbackListSetGame(issueFeedbacks)
|
||||||
|
ret := map[string]interface{}{
|
||||||
|
"list": issueFeedbacks,
|
||||||
|
"cur_page": req.Page,
|
||||||
|
"total_page": totalPage,
|
||||||
|
}
|
||||||
|
RespOK(c, ret)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
|
@ -83,16 +83,18 @@ 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 // 会员等级低
|
OrderMemberLevelLow = 500508 // 会员等级低
|
||||||
OrderOutRentCount = 500509 // 会员超过可借卡数
|
OrderOutRentCount = 500509 // 会员超过可借卡数
|
||||||
OrderStatusNotReturning = 500510 // 订单已完成
|
OrderStatusNotReturning = 500510 // 订单已完成
|
||||||
|
ShareCardBillStateCancelError = 500511 // 共享单状态不能取消
|
||||||
|
ShareCardRetrieveExistAppliedCard = 500513 // 共享单状态不能取消
|
||||||
|
|
||||||
GoodsNotSale = 500508 // 商品已下架
|
GoodsNotSale = 500508 // 商品已下架
|
||||||
|
|
||||||
|
@ -200,12 +202,10 @@ var statusMsg = map[int]string{
|
||||||
CheckInAlready: "今日已签到",
|
CheckInAlready: "今日已签到",
|
||||||
OpenChestTimeNot: "宝箱时间未到",
|
OpenChestTimeNot: "宝箱时间未到",
|
||||||
|
|
||||||
|
|
||||||
NotExists: "请求的资源不存在",
|
NotExists: "请求的资源不存在",
|
||||||
IsExists: "资源已经存在",
|
IsExists: "资源已经存在",
|
||||||
OrderOutRentCount: "借卡数量超了",
|
OrderOutRentCount: "借卡数量超了",
|
||||||
|
|
||||||
|
|
||||||
InternalServerError: "服务器开小差了,请稍后再试",
|
InternalServerError: "服务器开小差了,请稍后再试",
|
||||||
SmsFail: "短信发送失败",
|
SmsFail: "短信发送失败",
|
||||||
JsonParseError: "服务器开小差了,请稍后再试",
|
JsonParseError: "服务器开小差了,请稍后再试",
|
||||||
|
@ -215,15 +215,16 @@ var statusMsg = map[int]string{
|
||||||
RequestTimeout: "服务器开小差了,请稍后再试",
|
RequestTimeout: "服务器开小差了,请稍后再试",
|
||||||
InviteUserFail: "邀请失败",
|
InviteUserFail: "邀请失败",
|
||||||
|
|
||||||
UserHasBeenInvited: "用户已被邀请过",
|
UserHasBeenInvited: "用户已被邀请过",
|
||||||
UserSelfInviteSelf: "不允许自己邀请自己",
|
UserSelfInviteSelf: "不允许自己邀请自己",
|
||||||
OutOffWithdrawCountLimit: "超出每天提现次数",
|
OutOffWithdrawCountLimit: "超出每天提现次数",
|
||||||
OutOffWithdrawAccountLimit: "超出提现金额范围",
|
OutOffWithdrawAccountLimit: "超出提现金额范围",
|
||||||
CaptchaDelivered: "验证码5分钟内有效",
|
CaptchaDelivered: "验证码5分钟内有效",
|
||||||
|
ShareCardBillStateCancelError: "当前状态不能取消",
|
||||||
PayStateIng: "支付中",
|
ShareCardRetrieveExistAppliedCard: "存在重复申请收回的卡",
|
||||||
PayStateFail: "支付失败",
|
PayStateIng: "支付中",
|
||||||
MoneySufficient: "余额不足",
|
PayStateFail: "支付失败",
|
||||||
|
MoneySufficient: "余额不足",
|
||||||
|
|
||||||
AwardOffShelves: "奖品已下架",
|
AwardOffShelves: "奖品已下架",
|
||||||
AwardExchangeOut: "奖品已兑完",
|
AwardExchangeOut: "奖品已兑完",
|
||||||
|
|
|
@ -3,7 +3,6 @@ package utils
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
"mh-server/lib/utils/crypt"
|
"mh-server/lib/utils/crypt"
|
||||||
"mh-server/model"
|
|
||||||
"testing"
|
"testing"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -92,7 +91,7 @@ func TestUpload(t *testing.T) {
|
||||||
*/
|
*/
|
||||||
|
|
||||||
func TestGenSmallProceduresShareCode(t *testing.T) {
|
func TestGenSmallProceduresShareCode(t *testing.T) {
|
||||||
model.InitDBTest()
|
//model.InitDBTest()
|
||||||
//appid := "wxff888972e97ff2ef"
|
//appid := "wxff888972e97ff2ef"
|
||||||
//secret := "3d7335cf0b9fa1d70aa7eb079526ebf0"
|
//secret := "3d7335cf0b9fa1d70aa7eb079526ebf0"
|
||||||
|
|
||||||
|
@ -102,13 +101,9 @@ func TestGenSmallProceduresShareCode(t *testing.T) {
|
||||||
//}
|
//}
|
||||||
//fmt.Println("微信二维码rep:", rep)
|
//fmt.Println("微信二维码rep:", rep)
|
||||||
|
|
||||||
|
rep, err := crypt.GenDrawShareCode("", "", "", 156234)
|
||||||
rep, err :=crypt.GenDrawShareCode("","","",156234)
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println(err)
|
fmt.Println(err)
|
||||||
}
|
}
|
||||||
fmt.Println("微信二维码rep:", rep)
|
fmt.Println("微信二维码rep:", rep)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -28,12 +28,25 @@ type GameCard struct {
|
||||||
Likes uint32 `json:"likes"` // 点赞
|
Likes uint32 `json:"likes"` // 点赞
|
||||||
DetailInfo string `json:"detail_info" gorm:"type:text;comment:'详情描述'"` // 详情描述
|
DetailInfo string `json:"detail_info" gorm:"type:text;comment:'详情描述'"` // 详情描述
|
||||||
DetailImg string `json:"detail_img"` // 详情图片
|
DetailImg string `json:"detail_img"` // 详情图片
|
||||||
|
EstimateVm uint32 `json:"estimate_vm" gorm:"-"` // 预计积分
|
||||||
}
|
}
|
||||||
|
|
||||||
func (*GameCard) TableName() string {
|
func (*GameCard) TableName() string {
|
||||||
return "game_card"
|
return "game_card"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// gen:qs
|
||||||
|
type GameCardLabel struct {
|
||||||
|
Model
|
||||||
|
|
||||||
|
GameCardId uint32 `json:"game_card_id" gorm:"index"`
|
||||||
|
GameLabel string `json:"game_label" gorm:"index"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func (*GameCardLabel) TableName() string {
|
||||||
|
return "game_card_label"
|
||||||
|
}
|
||||||
|
|
||||||
// gen:qs
|
// gen:qs
|
||||||
type HomeCarousel struct {
|
type HomeCarousel struct {
|
||||||
Model
|
Model
|
||||||
|
|
|
@ -114,6 +114,8 @@ func InitTestDB() {
|
||||||
&ShareCardVmRecord{},
|
&ShareCardVmRecord{},
|
||||||
&ShareCardRetrieve{},
|
&ShareCardRetrieve{},
|
||||||
&ShareCardRetrieveCard{},
|
&ShareCardRetrieveCard{},
|
||||||
|
&GameCardLabel{},
|
||||||
|
&CardIssueFeedback{},
|
||||||
|
|
||||||
//&GameShareCardVm{},
|
//&GameShareCardVm{},
|
||||||
)
|
)
|
||||||
|
|
|
@ -1,8 +1,10 @@
|
||||||
package model
|
package model
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"fmt"
|
||||||
"github.com/codinl/go-logger"
|
"github.com/codinl/go-logger"
|
||||||
"mh-server/lib/utils"
|
"mh-server/lib/utils"
|
||||||
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -41,12 +43,14 @@ type ShareCardBillGame struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
ShareCardBillStateInCheck = "in_check" // 待审核
|
ShareCardBillStateInCheck = "in_check" // 待审核
|
||||||
ShareCardBillStateInSendCard = "in_send_card" // 待递送卡
|
ShareCardBillStateInSendCard = "in_send_card" // 待递送卡
|
||||||
ShareCardBillStateSentCard = "sent_card" // 已递送卡
|
ShareCardBillStateSentCard = "sent_card" // 已递送卡
|
||||||
ShareCardBillStateCompleted = "completed" // 完成
|
ShareCardBillStateCompleted = "completed" // 完成
|
||||||
ShareCardBillStateCancel = "cancel" // 取消
|
ShareCardBillStateCancel = "cancel" // 取消
|
||||||
ShareCardBillStateAuditLose = "check_lose" // 审核失败
|
ShareCardBillStateAuditLose = "check_lose" // 审核失败
|
||||||
|
ShareCardBillStateReceivingCard = "receiving_card" // 收回中
|
||||||
|
ShareCardBillStateReceivedCard = "received_card" // 已收回
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
@ -59,6 +63,10 @@ const (
|
||||||
ShareCardStateRetrieve = "retrieve" // 收回
|
ShareCardStateRetrieve = "retrieve" // 收回
|
||||||
)
|
)
|
||||||
|
|
||||||
|
const (
|
||||||
|
CardProfitVm = 21
|
||||||
|
)
|
||||||
|
|
||||||
// gen:qs
|
// gen:qs
|
||||||
type UserShareCard struct {
|
type UserShareCard struct {
|
||||||
Model
|
Model
|
||||||
|
@ -203,6 +211,30 @@ type ShareCardRetrieveCard struct {
|
||||||
// share_card_retrieve_card
|
// share_card_retrieve_card
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const (
|
||||||
|
CardIssueStateUnFollow = "unfollow" // 待处理
|
||||||
|
CardIssueStateFollowing = "following" // 处理中
|
||||||
|
CardIssueStateCompleted = "completed" // 已完成
|
||||||
|
CardIssueStateCanceled = "canceled" // 已取消
|
||||||
|
)
|
||||||
|
|
||||||
|
// gen:qs
|
||||||
|
type CardIssueFeedback struct {
|
||||||
|
Model
|
||||||
|
Uid uint32 `json:"uid" gorm:"index"` // 反馈用户
|
||||||
|
GameCardId uint32 `json:"game_card_id" gorm:"index"`
|
||||||
|
SerialNumber string `json:"serial_number" gorm:"index"` // 编号
|
||||||
|
GameCardGoodsId uint32 `json:"game_card_goods_id" gorm:"index"`
|
||||||
|
StoreId uint32 `json:"store_id" gorm:"index"` // 门店id
|
||||||
|
RelevanceId uint32 `json:"relevance_id" gorm:"index"` // 关联id
|
||||||
|
ObtainType string `json:"obtain_type"` // 卡类型
|
||||||
|
State string `json:"state" gorm:"index"` //
|
||||||
|
Problem string `json:"problem"` // 问题
|
||||||
|
Remark string `json:"remark"`
|
||||||
|
|
||||||
|
GameCard *GameCard `json:"game_card" gorm:"-"`
|
||||||
|
}
|
||||||
|
|
||||||
func GetUserShareCardBillList(uid uint32, page, pageSize int, state string) ([]UserShareCardBill, int, error) {
|
func GetUserShareCardBillList(uid uint32, page, pageSize int, state string) ([]UserShareCardBill, int, error) {
|
||||||
page = page - 1
|
page = page - 1
|
||||||
if page < 0 {
|
if page < 0 {
|
||||||
|
@ -261,6 +293,7 @@ func GetUserShareCardBill(uid uint32, billId uint32) (UserShareCardBill, error)
|
||||||
}
|
}
|
||||||
return list[0], nil
|
return list[0], nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func UserShareCardBillListSetGame(list []UserShareCardBill) []UserShareCardBill {
|
func UserShareCardBillListSetGame(list []UserShareCardBill) []UserShareCardBill {
|
||||||
billIds := make([]uint32, 0, len(list))
|
billIds := make([]uint32, 0, len(list))
|
||||||
for i, _ := range list {
|
for i, _ := range list {
|
||||||
|
@ -307,6 +340,108 @@ func UserShareCardBillListSetGame(list []UserShareCardBill) []UserShareCardBill
|
||||||
return list
|
return list
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func GetUserShareCardGameList(uid uint32, page, pageSize int, label string) ([]GameCard, int, error) {
|
||||||
|
page = page - 1
|
||||||
|
if page < 0 {
|
||||||
|
page = 0
|
||||||
|
}
|
||||||
|
if pageSize == 0 {
|
||||||
|
pageSize = 10
|
||||||
|
}
|
||||||
|
var games []GameCard
|
||||||
|
//qs := NewGameCardQuerySet(DB)
|
||||||
|
sql := fmt.Sprintf("SELECT * FROM game_card WHERE 1 ")
|
||||||
|
if label != "" {
|
||||||
|
var gameLabels []GameCardLabel
|
||||||
|
labelSql := "SELECT * FROM game_card_label WHERE game_label LIKE '%" + label + "%';"
|
||||||
|
err := DB.Raw(labelSql).Scan(&gameLabels).Error
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("game card label err:", err)
|
||||||
|
return games, 0, err
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(gameLabels) > 0 {
|
||||||
|
idString := make([]string, 0, len(gameLabels))
|
||||||
|
for i, _ := range gameLabels {
|
||||||
|
//idString += fmt.Sprintf("%d", gameLabels[i].GameCardId)
|
||||||
|
idString = append(idString, fmt.Sprintf("%d", gameLabels[i].GameCardId))
|
||||||
|
}
|
||||||
|
sql += " AND (`name` LIKE '%" + label + "%' " + fmt.Sprintf(" OR id IN (%s))",
|
||||||
|
strings.Join(idString, ","))
|
||||||
|
} else {
|
||||||
|
sql += " AND `name` LIKE '%" + label + "%' "
|
||||||
|
}
|
||||||
|
//qs = qs.StateEq(state)
|
||||||
|
}
|
||||||
|
|
||||||
|
type GameCount struct {
|
||||||
|
Count int `json:"count"`
|
||||||
|
}
|
||||||
|
var count GameCount
|
||||||
|
countSql := strings.Replace(sql, "SELECT *", "SELECT COUNT(*) ", -1)
|
||||||
|
err := DB.Raw(countSql).Scan(&count).Error
|
||||||
|
//count, err := qs.Count()
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("user share card bill count err:", err)
|
||||||
|
return games, 0, err
|
||||||
|
}
|
||||||
|
totalPage := count.Count/pageSize + 1
|
||||||
|
sql += fmt.Sprintf("ORDER BY id DESC LIMIT %d OFFSET %d ;", pageSize, page*pageSize)
|
||||||
|
err = DB.Raw(sql).Scan(&games).Error
|
||||||
|
//err = qs.OrderDescByID().Offset(page * pageSize).Limit(pageSize).All(&games)
|
||||||
|
fmt.Println("sql:", sql)
|
||||||
|
if err != nil && err != RecordNotFound {
|
||||||
|
logger.Error("user share card bill err:", err)
|
||||||
|
return games, 0, err
|
||||||
|
}
|
||||||
|
if len(games) == 0 {
|
||||||
|
return games, 0, nil
|
||||||
|
}
|
||||||
|
games = ShareCardGameListSetGameVm(games)
|
||||||
|
//shareCardBills = UserShareCardBillListSetGame(shareCardBills)
|
||||||
|
return games, totalPage, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func ShareCardGameListSetGameVm(list []GameCard) []GameCard {
|
||||||
|
if len(list) == 0 {
|
||||||
|
return list
|
||||||
|
}
|
||||||
|
gameIds := make([]uint32, 0, len(list))
|
||||||
|
for i, _ := range list {
|
||||||
|
gameIds = append(gameIds, list[i].ID)
|
||||||
|
}
|
||||||
|
vmMap := GetShareCardGameVmMap(gameIds)
|
||||||
|
for i, _ := range list {
|
||||||
|
v, ok := vmMap[list[i].ID]
|
||||||
|
if ok {
|
||||||
|
list[i].EstimateVm = v.Vm
|
||||||
|
}
|
||||||
|
if list[i].EstimateVm == 0 {
|
||||||
|
list[i].EstimateVm = CardProfitVm
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return list
|
||||||
|
}
|
||||||
|
|
||||||
|
func GetShareCardGameVmMap(ids []uint32) map[uint32]ShareCardGameVm {
|
||||||
|
shareCardGameVmMap := make(map[uint32]ShareCardGameVm, 0)
|
||||||
|
if len(ids) == 0 {
|
||||||
|
return shareCardGameVmMap
|
||||||
|
}
|
||||||
|
dateFormat := utils.ZeroDateFormat(-1)
|
||||||
|
var shareGameVm []ShareCardGameVm
|
||||||
|
err := NewShareCardGameVmQuerySet(DB).IDIn(ids...).ProvideDateEq(dateFormat).All(&shareGameVm)
|
||||||
|
if err != nil && err != RecordNotFound {
|
||||||
|
logger.Error("share card game vm err:", err)
|
||||||
|
return shareCardGameVmMap
|
||||||
|
}
|
||||||
|
for i, _ := range shareGameVm {
|
||||||
|
shareCardGameVmMap[shareGameVm[i].GameCardId] = shareGameVm[i]
|
||||||
|
}
|
||||||
|
|
||||||
|
return shareCardGameVmMap
|
||||||
|
}
|
||||||
|
|
||||||
func (m *UserShareCardBill) SetShareCard() error {
|
func (m *UserShareCardBill) SetShareCard() error {
|
||||||
var userShareCards []UserShareCard
|
var userShareCards []UserShareCard
|
||||||
err := NewUserShareCardQuerySet(DB).UserShareCardBillIdEq(m.ID).All(&userShareCards)
|
err := NewUserShareCardQuerySet(DB).UserShareCardBillIdEq(m.ID).All(&userShareCards)
|
||||||
|
@ -332,7 +467,7 @@ func (m *UserShareCardBill) SetShareCard() error {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetUserShareCardMyCardList(uid uint32, page, pageSize int, state string) ([]UserShareCard, int, error) {
|
func GetUserShareCardMyCardList(uid uint32, page, pageSize int, state string) ([]UserShareCard, int, int, error) {
|
||||||
page = page - 1
|
page = page - 1
|
||||||
if page < 0 {
|
if page < 0 {
|
||||||
page = 0
|
page = 0
|
||||||
|
@ -344,25 +479,32 @@ func GetUserShareCardMyCardList(uid uint32, page, pageSize int, state string) ([
|
||||||
if state == "" {
|
if state == "" {
|
||||||
states = []string{ShareCardStateInCheck, ShareCardStateSharing, ShareCardStateRetrieve}
|
states = []string{ShareCardStateInCheck, ShareCardStateSharing, ShareCardStateRetrieve}
|
||||||
}
|
}
|
||||||
|
|
||||||
var shareCards []UserShareCard
|
var shareCards []UserShareCard
|
||||||
|
shareCardCount, err := NewUserShareCardQuerySet(DB).UidEq(uid).StateEq(ShareCardStateSharing).Count()
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("user share card count err:", err)
|
||||||
|
return shareCards, 0, shareCardCount, err
|
||||||
|
}
|
||||||
|
|
||||||
qs := NewUserShareCardQuerySet(DB).UidEq(uid).StateIn(states...)
|
qs := NewUserShareCardQuerySet(DB).UidEq(uid).StateIn(states...)
|
||||||
|
|
||||||
count, err := qs.Count()
|
count, err := qs.Count()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("user share card bill count err:", err)
|
logger.Error("user share card bill count err:", err)
|
||||||
return shareCards, 0, err
|
return shareCards, 0, shareCardCount, err
|
||||||
}
|
}
|
||||||
totalPage := count/pageSize + 1
|
totalPage := count/pageSize + 1
|
||||||
err = qs.OrderDescByID().Offset(page * pageSize).Limit(pageSize).All(&shareCards)
|
err = qs.OrderDescByID().Offset(page * pageSize).Limit(pageSize).All(&shareCards)
|
||||||
if err != nil && err != RecordNotFound {
|
if err != nil && err != RecordNotFound {
|
||||||
logger.Error("user share card bill err:", err)
|
logger.Error("user share card bill err:", err)
|
||||||
return shareCards, 0, err
|
return shareCards, 0, shareCardCount, err
|
||||||
}
|
}
|
||||||
if len(shareCards) == 0 {
|
if len(shareCards) == 0 {
|
||||||
return shareCards, 0, nil
|
return shareCards, 0, shareCardCount, nil
|
||||||
}
|
}
|
||||||
shareCards = UserShareCardListSetGame(shareCards)
|
shareCards = UserShareCardListSetGame(shareCards)
|
||||||
return shareCards, totalPage, nil
|
return shareCards, totalPage, shareCardCount, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func UserShareCardListSetGame(list []UserShareCard) []UserShareCard {
|
func UserShareCardListSetGame(list []UserShareCard) []UserShareCard {
|
||||||
|
@ -476,6 +618,7 @@ func (m *ShareCardRetrieveCreateReq) RetrieveCreate() (*ShareCardRetrieve, error
|
||||||
}
|
}
|
||||||
err = begin.Create(&retrieve).Error
|
err = begin.Create(&retrieve).Error
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
begin.Rollback()
|
||||||
logger.Error("create share card retrieve err:", err)
|
logger.Error("create share card retrieve err:", err)
|
||||||
return retrieve, err
|
return retrieve, err
|
||||||
}
|
}
|
||||||
|
@ -495,12 +638,14 @@ func (m *ShareCardRetrieveCreateReq) RetrieveCreate() (*ShareCardRetrieve, error
|
||||||
}
|
}
|
||||||
err = begin.Create(&card).Error
|
err = begin.Create(&card).Error
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
begin.Rollback()
|
||||||
logger.Error("create share card retrieve card err:", err)
|
logger.Error("create share card retrieve card err:", err)
|
||||||
return retrieve, err
|
return retrieve, err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
err = begin.Commit().Error
|
err = begin.Commit().Error
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
begin.Rollback()
|
||||||
logger.Error("commit err:", err)
|
logger.Error("commit err:", err)
|
||||||
return retrieve, err
|
return retrieve, err
|
||||||
}
|
}
|
||||||
|
@ -557,7 +702,7 @@ type ShareCardRetrieveListReq struct {
|
||||||
|
|
||||||
func (m *ShareCardRetrieveListReq) List() ([]ShareCardRetrieve, int, error) {
|
func (m *ShareCardRetrieveListReq) List() ([]ShareCardRetrieve, int, error) {
|
||||||
var retrieveCards []ShareCardRetrieve
|
var retrieveCards []ShareCardRetrieve
|
||||||
qs := NewShareCardRetrieveQuerySet(DB).PayStateEq(2)
|
qs := NewShareCardRetrieveQuerySet(DB).UidEq(m.Uid).PayStateEq(2)
|
||||||
if m.State != "" {
|
if m.State != "" {
|
||||||
qs = qs.StateEq(m.State)
|
qs = qs.StateEq(m.State)
|
||||||
}
|
}
|
||||||
|
@ -735,6 +880,27 @@ func (m *ShareCardRetrieve) SetUserAddress() error {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func CardIssueFeedbackListSetGame(list []CardIssueFeedback) []CardIssueFeedback {
|
||||||
|
ids := make([]uint32, 0, len(list))
|
||||||
|
for i, _ := range list {
|
||||||
|
ids = append(ids, list[i].GameCardId)
|
||||||
|
}
|
||||||
|
gameMap, err := GameCardMap(ids)
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("set store err:", err)
|
||||||
|
return list
|
||||||
|
}
|
||||||
|
|
||||||
|
for i, _ := range list {
|
||||||
|
v, ok := gameMap[list[i].GameCardId]
|
||||||
|
if ok {
|
||||||
|
list[i].GameCard = &v
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return list
|
||||||
|
}
|
||||||
|
|
||||||
// 用户收回卡
|
// 用户收回卡
|
||||||
//// gen:qs
|
//// gen:qs
|
||||||
//type ShareCardRetrieve struct {
|
//type ShareCardRetrieve struct {
|
||||||
|
|
|
@ -396,7 +396,8 @@ func (m *UserInviteListReq) InviteUserList() (*UserInviteListResp, error) {
|
||||||
func GetOrderSn() string {
|
func GetOrderSn() string {
|
||||||
var orderSn string
|
var orderSn string
|
||||||
for {
|
for {
|
||||||
orderSn = utils.GetSerialNo32HEXString()
|
//orderSn = utils.GetSerialNo32HEXString()
|
||||||
|
orderSn = utils.GenSerialNo()
|
||||||
count, err := NewUserOpenMemberRecordQuerySet(DB).OpenNoEq(orderSn).Count()
|
count, err := NewUserOpenMemberRecordQuerySet(DB).OpenNoEq(orderSn).Count()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("err:", err)
|
logger.Error("err:", err)
|
||||||
|
@ -411,7 +412,8 @@ func GetOrderSn() string {
|
||||||
func GetShareCardBillSn() string {
|
func GetShareCardBillSn() string {
|
||||||
var billSn string
|
var billSn string
|
||||||
for {
|
for {
|
||||||
billSn = utils.GetSerialNo32HEXString()
|
//billSn = utils.GetSerialNo32HEXString()
|
||||||
|
billSn = utils.GenSerialNo()
|
||||||
count, err := NewUserShareCardBillQuerySet(DB).BillSnEq(billSn).Count()
|
count, err := NewUserShareCardBillQuerySet(DB).BillSnEq(billSn).Count()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("err:", err)
|
logger.Error("err:", err)
|
||||||
|
@ -426,7 +428,8 @@ func GetShareCardBillSn() string {
|
||||||
func GetShareCardRetrieveOrderSn() string {
|
func GetShareCardRetrieveOrderSn() string {
|
||||||
var orderSn string
|
var orderSn string
|
||||||
for {
|
for {
|
||||||
orderSn = utils.GetSerialNo32HEXString()
|
//orderSn = utils.GetSerialNo32HEXString()
|
||||||
|
orderSn = utils.GenSerialNo()
|
||||||
count, err := NewShareCardRetrieveQuerySet(DB).OrderSnEq(orderSn).Count()
|
count, err := NewShareCardRetrieveQuerySet(DB).OrderSnEq(orderSn).Count()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("err:", err)
|
logger.Error("err:", err)
|
||||||
|
|
|
@ -186,7 +186,9 @@ func ConfigAppRouter(r gin.IRouter) {
|
||||||
}
|
}
|
||||||
shareCard := api.Group("share_card")
|
shareCard := api.Group("share_card")
|
||||||
{
|
{
|
||||||
|
shareCard.POST("game/list", controller.UserShareCardGameList) // 共享单游戏列表
|
||||||
shareCard.Use(auth.UserAccessAuth)
|
shareCard.Use(auth.UserAccessAuth)
|
||||||
|
|
||||||
shareCard.POST("bill/list", controller.UserShareCardBillList) // 共享单列表
|
shareCard.POST("bill/list", controller.UserShareCardBillList) // 共享单列表
|
||||||
shareCard.POST("bill/add", controller.UserShareCardBillCreate) //
|
shareCard.POST("bill/add", controller.UserShareCardBillCreate) //
|
||||||
shareCard.POST("bill/cancel", controller.UserShareCardBillCancel) //
|
shareCard.POST("bill/cancel", controller.UserShareCardBillCancel) //
|
||||||
|
@ -197,9 +199,12 @@ func ConfigAppRouter(r gin.IRouter) {
|
||||||
|
|
||||||
shareCard.POST("retrieve/add", controller.ShareCardRetrieveCreate) // 我的共享卡收回
|
shareCard.POST("retrieve/add", controller.ShareCardRetrieveCreate) // 我的共享卡收回
|
||||||
shareCard.POST("retrieve_card/cancel", controller.ShareCardRetrieveCancel) // 我的共享卡收回取消
|
shareCard.POST("retrieve_card/cancel", controller.ShareCardRetrieveCancel) // 我的共享卡收回取消
|
||||||
shareCard.POST("retrieve_card/list", controller.ShareCardRetrieveList) // 我的共享卡收回审核
|
shareCard.POST("retrieve_card/list", controller.ShareCardRetrieveList) // 我的共享卡收回列表
|
||||||
shareCard.POST("retrieve_card/detail", controller.ShareCardRetrieveDetail) // 我的共享卡收回审核
|
shareCard.POST("retrieve_card/detail", controller.ShareCardRetrieveDetail) // 我的共享卡收回详情
|
||||||
shareCard.POST("retrieve_card/confirm", controller.ShareCardRetrieveConfirm) // 我的共享卡收回审核
|
shareCard.POST("retrieve_card/confirm", controller.ShareCardRetrieveConfirm) // 我的共享卡收回确认
|
||||||
|
|
||||||
|
shareCard.POST("card_issue/add", controller.CardIssueCreate) // 我的共享卡问题反馈
|
||||||
|
shareCard.POST("card_issue/list", controller.CardIssueList) // 我的共享卡问题反馈列表
|
||||||
|
|
||||||
//shoppingCart.POST("del", controller.ShoppingCartDel) //
|
//shoppingCart.POST("del", controller.ShoppingCartDel) //
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user