tx · CQBMATMLzsT36KeDfLrW5CV5pCL7r2dJtFKQbQqSCsnE 3MwuRJoXoSjMeXnEUrLPgRz99wNiAuU9CBR: -0.01000000 Waves 2019.11.03 11:46 [748480] smart account 3MwuRJoXoSjMeXnEUrLPgRz99wNiAuU9CBR > SELF 0.00000000 Waves
{ "type": 13, "id": "CQBMATMLzsT36KeDfLrW5CV5pCL7r2dJtFKQbQqSCsnE", "fee": 1000000, "feeAssetId": null, "timestamp": 1572770753141, "version": 1, "sender": "3MwuRJoXoSjMeXnEUrLPgRz99wNiAuU9CBR", "senderPublicKey": "yUsSKsNhgnpSG5NTFt4oRnHShxqriS8ATaHyG9qon5e", "proofs": [ "9jGSk5fjm8XqLhEvccSss971eTna57wRqu4Buk2h8XmYnhaTjbW1E98PALY5WyDeezv8eubwDXsKiufv2puJpDf" ], "script": "base64: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", "chainId": 84, "height": 748480, "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 enrollEmpPay (b,c,d,e) = if (if ((this == a.caller)) | |
8 | + | then !(isDefined(getBoolean(this, (b + "_state")))) | |
9 | + | else false) | |
10 | + | then WriteSet([DataEntry((b + "_state"), "enrolled"), DataEntry((b + "_id"), c), DataEntry((b + "_amount"), d), DataEntry((b + "_description"), e), DataEntry((b + "_enrolledBy"), toBase58String(a.caller.bytes))]) | |
11 | + | else throw((("Pay for " + b) + " has already been enrolled or caller is not dApp owner")) | |
12 | + | ||
13 | + | ||
14 | + | ||
15 | + | @Callable(a) | |
16 | + | func reviseEmpPay (b,d,e) = if ((this == a.caller)) | |
17 | + | then { | |
18 | + | let f = { | |
19 | + | let g = getString(this, (b + "_description")) | |
20 | + | if ($isInstanceOf(g, "Unit")) | |
21 | + | then { | |
22 | + | let h = g | |
23 | + | "unset" | |
24 | + | } | |
25 | + | else if ($isInstanceOf(g, "String")) | |
26 | + | then { | |
27 | + | let h = g | |
28 | + | ((h + "; Revised: ") + e) | |
29 | + | } | |
30 | + | else throw() | |
31 | + | } | |
32 | + | WriteSet([DataEntry((b + "_amount"), d), DataEntry((b + "_description"), f), DataEntry((b + "_revisedBy"), toBase58String(a.caller.bytes))]) | |
33 | + | } | |
34 | + | else throw("Caller is not dApp owner") | |
35 | + | ||
36 | + | ||
37 | + | ||
38 | + | @Callable(a) | |
39 | + | func payEmp (b) = { | |
40 | + | let i = toBase58String(a.caller.bytes) | |
41 | + | let j = { | |
42 | + | let g = getString(this, (b + "_state")) | |
43 | + | if ($isInstanceOf(g, "Unit")) | |
44 | + | then { | |
45 | + | let h = g | |
46 | + | "unset" | |
47 | + | } | |
48 | + | else if ($isInstanceOf(g, "String")) | |
49 | + | then { | |
50 | + | let h = g | |
51 | + | h | |
52 | + | } | |
53 | + | else throw() | |
54 | + | } | |
55 | + | let d = extract(getInteger(this, (b + "_amount"))) | |
56 | + | if ((j == "enrolled")) | |
57 | + | then ScriptResult(WriteSet([DataEntry((b + "_paidBy"), i)]), TransferSet([ScriptTransfer(addressFromStringValue(value(b)), d, unit)])) | |
58 | + | else throw("Employee not enrolled") | |
59 | + | } | |
60 | + | ||
61 | + | ||
62 | + | @Verifier(k) | |
63 | + | func l () = true | |
64 | + |
github/deemru/w8io/026f985 20.89 ms ◑