tx · 3zw9zuMTnNyqy8xqZRj9Bu8RDXgK9hQ3h1cPdcsjJutm 3Mxwpryb8c7kdSq4zXHEk2NUxL1ypRQsfV8: -0.05000000 Waves 2020.07.27 13:24 [1105876] smart account 3Mxwpryb8c7kdSq4zXHEk2NUxL1ypRQsfV8 > SELF 0.00000000 Waves
{ "type": 13, "id": "3zw9zuMTnNyqy8xqZRj9Bu8RDXgK9hQ3h1cPdcsjJutm", "fee": 5000000, "feeAssetId": null, "timestamp": 1595845557246, "version": 1, "sender": "3Mxwpryb8c7kdSq4zXHEk2NUxL1ypRQsfV8", "senderPublicKey": "6ASPwCnszmpHQsH3RTy32YGmQBDm7fSwZndCfc7N245Y", "proofs": [ "2y8kLBytyfRgR3xmjLNQWeQLqDTKwWv7iUxCaU8x9nDGBgHRBqt3Un33zYRMfx1TcVgWgdz7JfVjBhdce86DWUE" ], "script": "base64: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", "chainId": 84, "height": 1105876, "spentComplexity": 0 } View: original | compacted Prev: B66eFmhc8dwmWKc2iPNKMSfUAEs7vXYAMAPvr82sW3L Next: 3ZVH9WyXqcoyv2dpbgPpxPPUavMcuVrEVaXtVzi9PrVb Diff:
Old | New | Differences | |
---|---|---|---|
27 | 27 | let swapLimit = wavesBalance(this) | |
28 | 28 | if (!(isDefined(inv.payment))) | |
29 | 29 | then throw("Should be with Payment in Waves") | |
30 | - | else if ( | |
31 | - | then throw("Payment should be in | |
30 | + | else if ((payment.assetId != assetId)) | |
31 | + | then throw("Payment should be in Satoshi") | |
32 | 32 | else if ((payment.amount > (swapLimit / 100000000))) | |
33 | 33 | then throw(("Payment should be less than " + toString(swapLimit))) | |
34 | 34 | else { |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 3 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let assetId = base58'CEw1NLJ2mUmrHhLY99PUc6RqsJfduSvSPFzJqTYGmHCD' | |
5 | 5 | ||
6 | 6 | let dappAddress = Address(base58'3Mxwpryb8c7kdSq4zXHEk2NUxL1ypRQsfV8') | |
7 | 7 | ||
8 | 8 | func startSwapToSatoshi (inv) = { | |
9 | 9 | let payment = extract(inv.payment) | |
10 | 10 | let swapLimitAsset = assetBalance(dappAddress, assetId) | |
11 | 11 | if (!(isDefined(inv.payment))) | |
12 | 12 | then throw("Should be with Payment in Waves") | |
13 | 13 | else if (isDefined(payment.assetId)) | |
14 | 14 | then throw("Payment should be in Waves") | |
15 | 15 | else if ((payment.amount > (swapLimitAsset * 100000000))) | |
16 | 16 | then throw(("Payment should be less than " + toString(swapLimitAsset))) | |
17 | 17 | else { | |
18 | 18 | let depoTransfer = TransferSet([ScriptTransfer(inv.caller, (payment.amount * 100000000), assetId)]) | |
19 | 19 | let writeLastTx = WriteSet([DataEntry("lastDeposit", inv.transactionId)]) | |
20 | 20 | ScriptResult(writeLastTx, depoTransfer) | |
21 | 21 | } | |
22 | 22 | } | |
23 | 23 | ||
24 | 24 | ||
25 | 25 | func startSwapToBase (inv) = { | |
26 | 26 | let payment = extract(inv.payment) | |
27 | 27 | let swapLimit = wavesBalance(this) | |
28 | 28 | if (!(isDefined(inv.payment))) | |
29 | 29 | then throw("Should be with Payment in Waves") | |
30 | - | else if ( | |
31 | - | then throw("Payment should be in | |
30 | + | else if ((payment.assetId != assetId)) | |
31 | + | then throw("Payment should be in Satoshi") | |
32 | 32 | else if ((payment.amount > (swapLimit / 100000000))) | |
33 | 33 | then throw(("Payment should be less than " + toString(swapLimit))) | |
34 | 34 | else { | |
35 | 35 | let depoTransfer = TransferSet([ScriptTransfer(inv.caller, (payment.amount / 100000000), unit)]) | |
36 | 36 | let writeLastTx = WriteSet([DataEntry("lastWd", inv.transactionId)]) | |
37 | 37 | ScriptResult(writeLastTx, depoTransfer) | |
38 | 38 | } | |
39 | 39 | } | |
40 | 40 | ||
41 | 41 | ||
42 | 42 | @Callable(inv) | |
43 | 43 | func swapSatoshi () = startSwapToSatoshi(inv) | |
44 | 44 | ||
45 | 45 | ||
46 | 46 | ||
47 | 47 | @Callable(inv) | |
48 | 48 | func swapWaves () = startSwapToBase(inv) | |
49 | 49 | ||
50 | 50 | ||
51 | 51 | ||
52 | 52 | @Callable(inv) | |
53 | 53 | func default () = startSwapToSatoshi(inv) | |
54 | 54 | ||
55 | 55 |
github/deemru/w8io/169f3d6 57.74 ms ◑