tx · CB9gNStW9FyrASRFa3syQUef6a2VSk6mEmJLxbUPqdAe

3MreQWCMA3vhziCq8yMCf9BdBmHcZGrbW4S:  -0.01000000 Waves

2021.01.06 01:16 [1340694] smart account 3MreQWCMA3vhziCq8yMCf9BdBmHcZGrbW4S > SELF 0.00000000 Waves

{ "type": 13, "id": "CB9gNStW9FyrASRFa3syQUef6a2VSk6mEmJLxbUPqdAe", "fee": 1000000, "feeAssetId": null, "timestamp": 1609884957583, "version": 2, "chainId": 84, "sender": "3MreQWCMA3vhziCq8yMCf9BdBmHcZGrbW4S", "senderPublicKey": "H8moDp5wDnu7iRR16S1brcH7dn2p3tUhKNW3A8LKosMa", "proofs": [ "4gXAnx16L9chdgTi7sD8eZM3pnuds6udWfpwDEdS4VVSu7nZH55eHXEKkcU7kuVdLrADav7zDgZHxNWUkDmhfbSn" ], "script": "base64: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", "height": 1340694, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 55mCczGEpicTwKsQPGb5pKUGrSaFgLAFMxr9h6NbVNcw Next: none Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 4 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+let sumazdeponowanychsrodkow = "suma_zdeponowanych_srodkow"
5+
6+@Callable(i)
7+func depozyt () = {
8+ let pmt = i.payments[0]
9+ if (isDefined(pmt.assetId))
10+ then throw("mozesz przechowywać tylko WAVES")
11+ else {
12+ let currentKey = toBase58String(i.caller.bytes)
13+ let currentAmount = match getInteger(this, currentKey) {
14+ case a: Int =>
15+ a
16+ case _ =>
17+ 0
18+ }
19+ let newAmount = (currentAmount + pmt.amount)
20+ let wczesniejszasuma = match getInteger(this, sumazdeponowanychsrodkow) {
21+ case a: Int =>
22+ a
23+ case _ =>
24+ 0
25+ }
26+ let aktualnasuma = (wczesniejszasuma + pmt.amount)
27+[IntegerEntry(currentKey, newAmount), IntegerEntry(sumazdeponowanychsrodkow, aktualnasuma)]
28+ }
29+ }
30+
31+
32+
33+@Callable(i)
34+func wyplac (kwota) = {
35+ let currentKey = toBase58String(i.caller.bytes)
36+ let currentAmount = match getInteger(this, currentKey) {
37+ case a: Int =>
38+ a
39+ case _ =>
40+ 0
41+ }
42+ let newAmount = (currentAmount - kwota)
43+ if ((0 > kwota))
44+ then throw("Niemożna wypłacić ujemnej liczby środków")
45+ else if ((0 > newAmount))
46+ then throw("Niwystarczająca ilość środków")
47+ else {
48+ let wczesniejszasuma = match getInteger(this, sumazdeponowanychsrodkow) {
49+ case a: Int =>
50+ a
51+ case _ =>
52+ 0
53+ }
54+ let aktualnasuma = (wczesniejszasuma - kwota)
55+[IntegerEntry(currentKey, newAmount), ScriptTransfer(i.caller, kwota, unit), IntegerEntry(sumazdeponowanychsrodkow, aktualnasuma)]
56+ }
57+ }
58+
59+

github/deemru/w8io/169f3d6 
44.76 ms