diff --git a/server/web3sign/controllers/activate721nft.js b/server/web3sign/controllers/activate721nft.js index 6a527cd..171c998 100644 --- a/server/web3sign/controllers/activate721nft.js +++ b/server/web3sign/controllers/activate721nft.js @@ -14,6 +14,7 @@ async function activate721Nft(session) { const itemUniId = session.request('item_uniid'); const itemId = session.request('item_id'); const bc = serviceFactory.create('BlockChain'); + const isMint = session.request('is_mint') == '1' ? true : false; { const ret = await bc.init(netId); if (!ret) { @@ -51,6 +52,10 @@ async function activate721Nft(session) { session.rspErr(101, 'token_type param error'); return; } + if (itemMeta.getNftType() == bcconst.BC_NFT_GOLD_BULLION && !isMint) { + session.rspErr(101, 'gold bullion only mint'); + return; + } } { if (!nftAddress) { @@ -86,13 +91,17 @@ async function activate721Nft(session) { const nftList = [ [ tokenId, - true + isMint ] ]; const nftListArr = []; nftList.forEach((item) => { nftListArr.push(item[0].toString()); - nftListArr.push('0x01'); + if (isMint) { + nftListArr.push('0x01'); + } else { + nftListArr.push('0x00'); + } }); const signature = await bc.soliditySha3Sign( account,