This commit is contained in:
aozhiwei 2024-06-24 13:35:33 +08:00
parent 8055191421
commit 233a5e3ea6
3 changed files with 52 additions and 49 deletions

View File

@ -1,3 +1,4 @@
{
"gameapi_url": "https://game2006api-test.kingsome.cn"
"gameapi_url": "https://game2006api-test.kingsome.cn",
"jwks_uri": "https://auth.immutable.com/.well-known/jwks.json"
}

View File

@ -39,54 +39,56 @@ func (this *ShopCartApi) List(c *gin.Context) {
c.JSON(200, rspObj)
return
}
cartDb := common.NewShopCart()
nfts := []*common.NftDto{}
if q5.DecodeJson(ds.GetByName("data"), cartDb) == nil {
q5.Sort[common.ShopCartGoods](cartDb.Goods,
func (a *common.ShopCartGoods, b *common.ShopCartGoods) bool{
return a.SortIdx < b.SortIdx
})
dirty := false
newGoods := []*common.ShopCartGoods{}
for _, val := range cartDb.Goods {
var err1 error
f5.GetGoStyleDb().OrmSelectOne(
constant.BCNFT_DB,
"t_order",
[][]string{
{"net_id", q5.ToString(val.NetId)},
{"contract_address", q5.ToString(val.ContractAddress)},
{"token_id", q5.ToString(val.TokenId)},
{"status", jccommon.ORDER_STATUS_ACTIVE},
},
func (err error, ds* f5.DataSet) {
err1 = err
if err == nil {
if ds.Next() {
p := new(common.NftDto)
p.NetId = q5.ToInt32(ds.GetByName("net_id"))
p.ContractAddress = ds.GetByName("contract_address")
p.TokenId = ds.GetByName("token_id")
p.Payload = map[string]interface{}{}
q5.DecodeJson(ds.GetByName("event_data"), &p.Payload)
q5.AppendSlice(&nfts, p)
q5.AppendSlice(&newGoods, val)
} else {
dirty = true
val.Flag = 1
}
}
if ds.Next() {
cartDb := common.NewShopCart()
if q5.DecodeJson(ds.GetByName("data"), cartDb) == nil {
q5.Sort[common.ShopCartGoods](cartDb.Goods,
func (a *common.ShopCartGoods, b *common.ShopCartGoods) bool{
return a.SortIdx < b.SortIdx
})
if err1 != nil {
rspObj.ErrCode = 500
rspObj.ErrMsg = "server internal error"
c.JSON(200, rspObj)
return
dirty := false
newGoods := []*common.ShopCartGoods{}
for _, val := range cartDb.Goods {
var err1 error
f5.GetGoStyleDb().OrmSelectOne(
constant.BCNFT_DB,
"t_order",
[][]string{
{"net_id", q5.ToString(val.NetId)},
{"contract_address", q5.ToString(val.ContractAddress)},
{"token_id", q5.ToString(val.TokenId)},
{"status", jccommon.ORDER_STATUS_ACTIVE},
},
func (err error, ds* f5.DataSet) {
err1 = err
if err == nil {
if ds.Next() {
p := new(common.NftDto)
p.NetId = q5.ToInt32(ds.GetByName("net_id"))
p.ContractAddress = ds.GetByName("contract_address")
p.TokenId = ds.GetByName("token_id")
p.Payload = map[string]interface{}{}
q5.DecodeJson(ds.GetByName("event_data"), &p.Payload)
q5.AppendSlice(&nfts, p)
q5.AppendSlice(&newGoods, val)
} else {
dirty = true
val.Flag = 1
}
}
})
if err1 != nil {
rspObj.ErrCode = 500
rspObj.ErrMsg = "server internal error"
c.JSON(200, rspObj)
return
}
}//end for goods
if dirty {
cartDb.Goods = newGoods
this.save(openId, cartDb)
}
}//end for goods
if dirty {
cartDb.Goods = newGoods
this.save(openId, cartDb)
}
}
GetCacheMgr().GetNfts(nfts)

View File

@ -14,8 +14,8 @@ import (
func JwtAuth(c *gin.Context) {
tokenHeader := c.Request.Header.Get("Authorization")
jwtToken := ""
if len(tokenHeader) < 8 {
jwtToken = tokenHeader[8:len(tokenHeader)]
if len(tokenHeader) > 8 {
jwtToken = tokenHeader[7:len(tokenHeader)]
}
params := map[string]string{
@ -62,7 +62,7 @@ func JwtAuth(c *gin.Context) {
}
rspObj.ErrCode = q5.SafeToInt32(jsonRspObj.ErrCode)
rspObj.ErrMsg = jsonRspObj.ErrMsg
if rspObj.ErrCode != 0 {
if q5.SafeToInt32(rspObj.ErrCode) != 0 {
rspObj.ErrCode = 501
rspObj.ErrMsg = "jwt error"
c.JSON(200, rspObj)