tx · H9nhvh63chs7Jwdp5K48UAJ8K6BN8dGy2jPWNDFL62xy 3N2idNzCJ9a55CzgQksGvN8dJtzxJP2fRXS: -0.01000000 Waves 2020.09.23 10:14 [1189633] smart account 3N2idNzCJ9a55CzgQksGvN8dJtzxJP2fRXS > SELF 0.00000000 Waves
{ "type": 13, "id": "H9nhvh63chs7Jwdp5K48UAJ8K6BN8dGy2jPWNDFL62xy", "fee": 1000000, "feeAssetId": null, "timestamp": 1600845317113, "version": 2, "chainId": 84, "sender": "3N2idNzCJ9a55CzgQksGvN8dJtzxJP2fRXS", "senderPublicKey": "5XbovAGoKSWTrXtsESKTrACco3sctwbFxeScg3zYkuxr", "proofs": [ "4sGHSWgeVgYrg6FB3Jm8uThpRerVotieWvSUpafUPbkJswVoG7ifWMvCVBCWRDE4WMSgH6nVk6S3ZWAV9Q6UrKdS" ], "script": "base64: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", "height": 1189633, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 3 #-} | |
2 | + | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | + | {-# CONTENT_TYPE DAPP #-} | |
4 | + | ||
5 | + | ||
6 | + | @Callable(a) | |
7 | + | func register (b,c,d) = { | |
8 | + | let e = toBase58String(a.caller.bytes) | |
9 | + | let f = { | |
10 | + | let g = getString(this, (b + "_owner")) | |
11 | + | if ($isInstanceOf(g, "String")) | |
12 | + | then { | |
13 | + | let h = g | |
14 | + | true | |
15 | + | } | |
16 | + | else false | |
17 | + | } | |
18 | + | if ((b == "")) | |
19 | + | then throw("item name cannot be empty string") | |
20 | + | else WriteSet([DataEntry((b + "_price"), c), DataEntry((b + "_stock"), d), DataEntry((b + "_owner"), e)]) | |
21 | + | } | |
22 | + | ||
23 | + | ||
24 | + | ||
25 | + | @Callable(a) | |
26 | + | func purchase (b,i) = { | |
27 | + | let c = getIntegerValue(this, (b + "_price")) | |
28 | + | let j = extract(a.payment) | |
29 | + | let k = toBase58String(a.caller.bytes) | |
30 | + | let e = getStringValue(this, (b + "_owner")) | |
31 | + | let l = getIntegerValue(this, (b + "_stock")) | |
32 | + | let m = getStringValue(this, ((("status:" + b) + "_") + k)) | |
33 | + | if (((c * i) != j.amount)) | |
34 | + | then throw(("your payment is not equal to the price of " + b)) | |
35 | + | else if ((i > l)) | |
36 | + | then throw("over stock") | |
37 | + | else WriteSet([DataEntry((b + "_stock"), (l - i)), DataEntry(((("purchase:" + b) + ":") + toString(height)), (((((("{'item':'" + b) + "','price':") + toString(c)) + ",'number':") + toString(i)) + "}"))]) | |
38 | + | } | |
39 | + | ||
40 | + | ||
41 | + | @Verifier(n) | |
42 | + | func o () = { | |
43 | + | let g = n | |
44 | + | if ($isInstanceOf(g, "InvokeScriptTransaction")) | |
45 | + | then { | |
46 | + | let a = g | |
47 | + | true | |
48 | + | } | |
49 | + | else false | |
50 | + | } | |
51 | + |
github/deemru/w8io/169f3d6 17.93 ms ◑![]()