This commit is contained in:
aozhiwei 2024-07-16 14:21:31 +08:00
parent 4e4bec1f21
commit b4b9a834f0
3 changed files with 35 additions and 2 deletions

View File

@ -27,6 +27,7 @@ const (
const (
CONTRACT_NAME_CFHero = "CFHero"
CONTRACT_NAME_GCardHero = "GCard"
CONTRACT_NAME_GoldBrick = "GoldBrick"
CONTRACT_NAME_NFTLock = "NFTLock"
)

View File

@ -1,7 +1,11 @@
package nft
import (
"q5"
"f5"
"mt"
"jccommon"
"main/constant"
"github.com/gin-gonic/gin"
)
@ -14,7 +18,7 @@ func (this *NftApi) Unlock(c *gin.Context) {
NetId interface{} `json:"net_id"`
ContractAddress string `json:"contract_address"`
To string `json:"to"`
Tokens struct {
Tokens []struct {
TokenId string `json:"token_id"`
} `json:"tokens"`
}{}
@ -22,4 +26,29 @@ func (this *NftApi) Unlock(c *gin.Context) {
f5.RspErr(c, 401, "params parse error")
return
}
heroMeta := mt.Table.Contract.GetByName(jccommon.CONTRACT_NAME_CFHero)
gcardMeta := mt.Table.Contract.GetByName(jccommon.CONTRACT_NAME_GCardHero)
if heroMeta == nil && gcardMeta == nil {
f5.RspErr(c, 1, "contract_address params error")
return
}
if reqJson.To == "" {
f5.RspErr(c, 1, "to params error")
return
}
if len(reqJson.Tokens) != 1 {
f5.RspErr(c, 1, "tokens params error")
return
}
f5.GetGoStyleDb().OrmSelectOne(
constant.BCNFT_DB,
"t_nft",
[][]string{
{"net_id", q5.SafeToString(reqJson.NetId)},
{"contract_address", reqJson.ContractAddress},
{"token_id", reqJson.Tokens[0].TokenId},
},
func (err error, ds *f5.DataSet) {
})
}

View File

@ -3,11 +3,14 @@ package nft
import (
"f5"
"main/api/v1"
"main/middleware"
)
type NftRouter struct{}
func (this *NftRouter) InitRouter() {
api := v1.ApiGroupApp.NftApiGroup
f5.GetApp().GetGinEngine().POST("/api/nft/stacking/unlock", api.NftApi.Unlock)
f5.GetApp().GetGinEngine().POST("/api/nft/stacking/unlock",
middleware.JwtAuth,
api.NftApi.Unlock)
}