tx · 78GGFYbV7Gka2nYdNeL5gQpTv185fpjYisXTtA8BRdPf

3N5BTH4bjnXn7AAKoj4sswxytsPGmdXUuTx:  -0.01000000 Waves

2023.03.28 19:49 [2510058] smart account 3N5BTH4bjnXn7AAKoj4sswxytsPGmdXUuTx > SELF 0.00000000 Waves

{ "type": 13, "id": "78GGFYbV7Gka2nYdNeL5gQpTv185fpjYisXTtA8BRdPf", "fee": 1000000, "feeAssetId": null, "timestamp": 1680022282516, "version": 2, "chainId": 84, "sender": "3N5BTH4bjnXn7AAKoj4sswxytsPGmdXUuTx", "senderPublicKey": "DyeDJ3fgwVVux2WRkxpLU9BbVjTM96AyV58b7bRFzCBx", "proofs": [ "YCF1X4hXU9Z5rMUsRekqSKuqo2z2uj42xUWy99DjzrCBtES8Gu4zfx6PSK6tdKHnQxHMPtr6ev8cm64umghV88s" ], "script": "base64:BgIICAISBAoCGAgAAQFpARRidXlBbGxQcm9kdWN0c19hc2ltaQIHbmZ0SW5mbwt0b3RhbGFtb3VudAQFYnV5ZXIIBQFpBmNhbGxlcgQFdGVhbXMBIIVjlaPziI6w3gwXjghOv5o/krsm2zrodo4W3BQiKkh+BAxidXllckJhbGFuY2UJAPAHAgUFYnV5ZXIFBXRlYW1zBAZhbW91bnQJAQV2YWx1ZQEICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50BAhyZWFsY29zdAkAZQIFBmFtb3VudAkAaAIJAGkCBQZhbW91bnQA6AcAGQQLcGxhdGZvcm1mZWUJAGUCBQZhbW91bnQFCHJlYWxjb3N0BARuZlQxCQC1CQIJAJEDAgUHbmZ0SW5mbwAAAgFfBARuZlQyCQC1CQIJAJEDAgUHbmZ0SW5mbwABAgFfBARuZlQzCQC1CQIJAJEDAgUHbmZ0SW5mbwACAgFfBARuZlQ0CQC1CQIJAJEDAgUHbmZ0SW5mbwADAgFfBARuZlQ1CQC1CQIJAJEDAgUHbmZ0SW5mbwAEAgFfAwkAZgIFBmFtb3VudAUMYnV5ZXJCYWxhbmNlCQACAQI6QnV5ZXIgZG9lcyBub3QgaGF2ZSBlbm91Z2ggZnVuZHMgdG8gY29tcGxldGUgdGhlIHB1cmNoYXNlLgMJAAACCQCQAwEFB25mdEluZm8AAQkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIPZmlyc3RfbmZ0X0luZm89AgVuZnRJZAkAkQMCBQRuZlQxAAAJAKwCAgIFYnV5ZXIJAKUIAQUFYnV5ZXIJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICD2ZpcnN0X25mdF9JbmZvPQIOc2VsbGVyX2FkZHJlc3MJAJEDAgUEbmZUMQABCQCsAgICBXByaWNlCQCRAwIFBG5mVDEAAgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQVidXllcgABCQDZBAEJAJEDAgUEbmZUMQAACQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMJAQdBZGRyZXNzAQkA2QQBCQCRAwIFBG5mVDEAAQkAaAIJAQ1wYXJzZUludFZhbHVlAQkAkQMCBQRuZlQxAAIAZAUFdGVhbXMFA25pbAMJAAACCQCQAwEFB25mdEluZm8AAgkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgkArAICAg9maXJzdF9uZnRfSW5mbz0CBW5mdElkCQCRAwIFBG5mVDEAAAIOc2VsbGVyX2FkZHJlc3MJAJEDAgUEbmZUMQABAgVwcmljZQkAkQMCBQRuZlQxAAIJAKwCAgIFYnV5ZXIJAKUIAQUFYnV5ZXIJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgIQc2Vjb25kX25mdF9JbmZvPQIFbmZ0SWQJAJEDAgUEbmZUMgAAAg5zZWxsZXJfYWRkcmVzcwkAkQMCBQRuZlQyAAECBXByaWNlCQCRAwIFBG5mVDIAAgkArAICAgVidXllcgkApQgBBQVidXllcgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQVidXllcgABCQDZBAEJAJEDAgUEbmZUMQAACQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFBWJ1eWVyAAEJANkEAQkAkQMCBQRuZlQyAAAJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwkBB0FkZHJlc3MBCQDZBAEJAJEDAgUEbmZUMQABCQBoAgkBDXBhcnNlSW50VmFsdWUBCQCRAwIFBG5mVDEAAgBkBQV0ZWFtcwkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCQEHQWRkcmVzcwEJANkEAQkAkQMCBQRuZlQyAAEJAGgCCQENcGFyc2VJbnRWYWx1ZQEJAJEDAgUEbmZUMgACAGQFBXRlYW1zBQNuaWwFA25pbAARZU40", "height": 2510058, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: HoY6WWRmE3QJPgZsbsJbbckR9xXK6fjTfVpHbPqriHYa Next: HwL4TAMjahnwHHJTijcCnM151JXerUWYzZWNhU87qFkp Diff:
OldNewDifferences
44
55
66 @Callable(i)
7-func buyAllProducts (nftInfo,totalamount) = {
7+func buyAllProducts_asimi (nftInfo,totalamount) = {
88 let buyer = i.caller
99 let teams = base58'9yhJDfWjPpv6tFjWRD1AJyBQwausJf2ZdxzLn86Uknnq'
1010 let buyerBalance = assetBalance(buyer, teams)
1111 let amount = value(i.payments[0].amount)
12+ let realcost = (amount - ((amount / 1000) * 25))
13+ let platformfee = (amount - realcost)
1214 let nfT1 = split(nftInfo[0], "_")
1315 let nfT2 = split(nftInfo[1], "_")
1416 let nfT3 = split(nftInfo[2], "_")
1517 let nfT4 = split(nftInfo[3], "_")
1618 let nfT5 = split(nftInfo[4], "_")
17- if ((totalamount > amount))
18- then throw("your paying amount is wrong ")
19- else if ((amount > buyerBalance))
20- then throw("Buyer does not have enough funds to complete the purchase.")
21- else if ((size(nftInfo) == 1))
22- then [StringEntry((((((((("first_nft_Info=" + "nftId") + nfT1[0]) + "seller_address") + nfT1[1]) + "price") + nfT1[2]) + "currency") + nfT1[3]), ("buyer" + toString(buyer))), ScriptTransfer(buyer, 1, fromBase58String(nfT1[0])), ScriptTransfer(Address(fromBase58String(nfT1[1])), parseIntValue(nfT1[2]), fromBase58String(nfT1[3]))]
23- else if ((size(nftInfo) == 2))
24- then [StringEntry((((((("first_nft_Info=" + "nftId") + nfT1[0]) + "seller_address") + nfT1[1]) + "price") + nfT1[2]), ("buyer" + toString(buyer))), StringEntry((((((("second_nft_Info=" + "nftId") + nfT2[0]) + "seller_address") + nfT2[1]) + "price") + nfT2[2]), ("buyer" + toString(buyer))), ScriptTransfer(buyer, 1, fromBase58String(nfT1[0])), ScriptTransfer(buyer, 1, fromBase58String(nfT2[0])), ScriptTransfer(Address(fromBase58String(nfT1[1])), parseIntValue(nfT1[2]), fromBase58String(nfT1[3])), ScriptTransfer(Address(fromBase58String(nfT2[1])), parseIntValue(nfT2[2]), fromBase58String(nfT2[3]))]
25- else nil
19+ if ((amount > buyerBalance))
20+ then throw("Buyer does not have enough funds to complete the purchase.")
21+ else if ((size(nftInfo) == 1))
22+ then [StringEntry((("first_nft_Info=" + "nftId") + nfT1[0]), ("buyer" + toString(buyer))), StringEntry((("first_nft_Info=" + "seller_address") + nfT1[1]), ("price" + nfT1[2])), ScriptTransfer(buyer, 1, fromBase58String(nfT1[0])), ScriptTransfer(Address(fromBase58String(nfT1[1])), (parseIntValue(nfT1[2]) * 100), teams)]
23+ else if ((size(nftInfo) == 2))
24+ then [StringEntry((((((("first_nft_Info=" + "nftId") + nfT1[0]) + "seller_address") + nfT1[1]) + "price") + nfT1[2]), ("buyer" + toString(buyer))), StringEntry((((((("second_nft_Info=" + "nftId") + nfT2[0]) + "seller_address") + nfT2[1]) + "price") + nfT2[2]), ("buyer" + toString(buyer))), ScriptTransfer(buyer, 1, fromBase58String(nfT1[0])), ScriptTransfer(buyer, 1, fromBase58String(nfT2[0])), ScriptTransfer(Address(fromBase58String(nfT1[1])), (parseIntValue(nfT1[2]) * 100), teams), ScriptTransfer(Address(fromBase58String(nfT2[1])), (parseIntValue(nfT2[2]) * 100), teams)]
25+ else nil
2626 }
2727
2828
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44
55
66 @Callable(i)
7-func buyAllProducts (nftInfo,totalamount) = {
7+func buyAllProducts_asimi (nftInfo,totalamount) = {
88 let buyer = i.caller
99 let teams = base58'9yhJDfWjPpv6tFjWRD1AJyBQwausJf2ZdxzLn86Uknnq'
1010 let buyerBalance = assetBalance(buyer, teams)
1111 let amount = value(i.payments[0].amount)
12+ let realcost = (amount - ((amount / 1000) * 25))
13+ let platformfee = (amount - realcost)
1214 let nfT1 = split(nftInfo[0], "_")
1315 let nfT2 = split(nftInfo[1], "_")
1416 let nfT3 = split(nftInfo[2], "_")
1517 let nfT4 = split(nftInfo[3], "_")
1618 let nfT5 = split(nftInfo[4], "_")
17- if ((totalamount > amount))
18- then throw("your paying amount is wrong ")
19- else if ((amount > buyerBalance))
20- then throw("Buyer does not have enough funds to complete the purchase.")
21- else if ((size(nftInfo) == 1))
22- then [StringEntry((((((((("first_nft_Info=" + "nftId") + nfT1[0]) + "seller_address") + nfT1[1]) + "price") + nfT1[2]) + "currency") + nfT1[3]), ("buyer" + toString(buyer))), ScriptTransfer(buyer, 1, fromBase58String(nfT1[0])), ScriptTransfer(Address(fromBase58String(nfT1[1])), parseIntValue(nfT1[2]), fromBase58String(nfT1[3]))]
23- else if ((size(nftInfo) == 2))
24- then [StringEntry((((((("first_nft_Info=" + "nftId") + nfT1[0]) + "seller_address") + nfT1[1]) + "price") + nfT1[2]), ("buyer" + toString(buyer))), StringEntry((((((("second_nft_Info=" + "nftId") + nfT2[0]) + "seller_address") + nfT2[1]) + "price") + nfT2[2]), ("buyer" + toString(buyer))), ScriptTransfer(buyer, 1, fromBase58String(nfT1[0])), ScriptTransfer(buyer, 1, fromBase58String(nfT2[0])), ScriptTransfer(Address(fromBase58String(nfT1[1])), parseIntValue(nfT1[2]), fromBase58String(nfT1[3])), ScriptTransfer(Address(fromBase58String(nfT2[1])), parseIntValue(nfT2[2]), fromBase58String(nfT2[3]))]
25- else nil
19+ if ((amount > buyerBalance))
20+ then throw("Buyer does not have enough funds to complete the purchase.")
21+ else if ((size(nftInfo) == 1))
22+ then [StringEntry((("first_nft_Info=" + "nftId") + nfT1[0]), ("buyer" + toString(buyer))), StringEntry((("first_nft_Info=" + "seller_address") + nfT1[1]), ("price" + nfT1[2])), ScriptTransfer(buyer, 1, fromBase58String(nfT1[0])), ScriptTransfer(Address(fromBase58String(nfT1[1])), (parseIntValue(nfT1[2]) * 100), teams)]
23+ else if ((size(nftInfo) == 2))
24+ then [StringEntry((((((("first_nft_Info=" + "nftId") + nfT1[0]) + "seller_address") + nfT1[1]) + "price") + nfT1[2]), ("buyer" + toString(buyer))), StringEntry((((((("second_nft_Info=" + "nftId") + nfT2[0]) + "seller_address") + nfT2[1]) + "price") + nfT2[2]), ("buyer" + toString(buyer))), ScriptTransfer(buyer, 1, fromBase58String(nfT1[0])), ScriptTransfer(buyer, 1, fromBase58String(nfT2[0])), ScriptTransfer(Address(fromBase58String(nfT1[1])), (parseIntValue(nfT1[2]) * 100), teams), ScriptTransfer(Address(fromBase58String(nfT2[1])), (parseIntValue(nfT2[2]) * 100), teams)]
25+ else nil
2626 }
2727
2828

github/deemru/w8io/169f3d6 
47.25 ms