tx · 47QPZbkEoHAYd6X6kMzV5TroRrPvxZb9nuqNTiBRemSD 3PQLUs4aPzwvFhBupHgPPFjq6uFJZzniUxH: -1.00000000 Waves 2020.05.21 20:21 [2071763] smart asset 3PQLUs4aPzwvFhBupHgPPFjq6uFJZzniUxH > SELF 0.00000000 InvesCMT
{ "type": 15, "id": "47QPZbkEoHAYd6X6kMzV5TroRrPvxZb9nuqNTiBRemSD", "fee": 100000000, "feeAssetId": null, "timestamp": 1590081748394, "version": 1, "sender": "3PQLUs4aPzwvFhBupHgPPFjq6uFJZzniUxH", "senderPublicKey": "4yjws9gPpvT8qN8SattjH61SNmYJjSa8TPijnhAdLRfJ", "proofs": [ "4P2mCm7xXThWFfuUhnaxjX5PVvdawtMayEhHpF7oeTV2VYx8CsRUgZprbetFr63s3AjKmZDwUkYS8jvdxzoBf6FQ" ], "assetId": "DmBmVXq3ouwtx8JqdQ6xSS7AX7PpZK1Y9EkReorhur9B", "script": "base64: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", "chainId": 87, "height": 2071763, "spentComplexity": 0 } View: original | compacted Prev: none Next: EJaSCzVQUb8mwBJKt5jhpQjyHYsQXFWo5cANfFyjuks1 Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 1 #-} | |
2 | + | {-# CONTENT_TYPE EXPRESSION #-} | |
3 | + | let dAppAddress = addressFromString("3PQLUs4aPzwvFhBupHgPPFjq6uFJZzniUxH") | |
4 | + | let adminPK = base58'4yjws9gPpvT8qN8SattjH61SNmYJjSa8TPijnhAdLRfJ' | |
5 | + | let sellAmount = 1000 | |
6 | + | let sellPrice = 1020100 | |
7 | + | let buyPrice = 1010000 | |
8 | + | match tx { | |
9 | + | case tx: BurnTransaction => | |
10 | + | (tx.sender == dAppAddress) | |
11 | + | case tx: ReissueTransaction => | |
12 | + | (tx.sender == dAppAddress) | |
13 | + | case tx: SetAssetScriptTransaction => | |
14 | + | (tx.sender == dAppAddress) | |
15 | + | case tx: MassTransferTransaction => | |
16 | + | (tx.sender == dAppAddress) | |
17 | + | case tx: TransferTransaction => | |
18 | + | (tx.sender == dAppAddress) | |
19 | + | case e: ExchangeTransaction => | |
20 | + | let sender = e.sellOrder.sender | |
21 | + | let sell = sigVerify(e.sellOrder.bodyBytes, e.sellOrder.proofs[0], e.sellOrder.senderPublicKey) | |
22 | + | let buy = sigVerify(e.buyOrder.bodyBytes, e.buyOrder.proofs[0], e.buyOrder.senderPublicKey) | |
23 | + | let admin = (e.sellOrder.sender == addressFromPublicKey(adminPK)) | |
24 | + | if (admin) | |
25 | + | then true | |
26 | + | else if (isDefined(e.sellOrder.assetPair.priceAsset)) | |
27 | + | then throw("Only waves accepted") | |
28 | + | else if (sell) | |
29 | + | then if ((sellAmount > e.sellOrder.amount)) | |
30 | + | then throw(("-= Sales must be greater than or equal to 0.00001000 InvesCMT =-" + " -= Объем продажи должен быть больше или равно 0.00001000 InvesCMT =-")) | |
31 | + | else if ((sellPrice != e.sellOrder.price)) | |
32 | + | then throw(("-= Selling price 0.01020100 Waves =-" + " -= Цена продажи 0.01020100 Waves =-")) | |
33 | + | else true | |
34 | + | else if (buy) | |
35 | + | then if ((buyPrice != e.sellOrder.price)) | |
36 | + | then throw(("-= Purchase price 0.01010000 Waves =-" + " -= Цена покупки 0.01010000 Waves =-")) | |
37 | + | else true | |
38 | + | else throw("something bad happened") | |
39 | + | case _ => | |
40 | + | false | |
41 | + | } |
github/deemru/w8io/6500d08 67.85 ms ◑