tx · FTYk3eq9DxaThah9CCMzpJBZyT6GgathNH7u538yBu5Z

3MwKfqXyQqe5DpURSesv3BYi3LG54W3oWd3:  -0.01000000 Waves

2019.08.26 11:45 [647908] smart account 3MwKfqXyQqe5DpURSesv3BYi3LG54W3oWd3 > SELF 0.00000000 Waves

{ "type": 13, "id": "FTYk3eq9DxaThah9CCMzpJBZyT6GgathNH7u538yBu5Z", "fee": 1000000, "feeAssetId": null, "timestamp": 1566809192867, "version": 1, "sender": "3MwKfqXyQqe5DpURSesv3BYi3LG54W3oWd3", "senderPublicKey": "3XaEhv6FGWfxpnXtgtnRGvdhDsDMrrv3jTRPM9g5Bgwr", "proofs": [ "2sEeuseWNSAjbtCQHuph13CAHGHSJP5EggzRm25taD9cucx8QQEJCzSZUxVgNqmxwgWej6bPGvUYCQWmXyHYEmV1" ], "script": "base64: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", "chainId": 84, "height": 647908, "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 3 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+let EMTPYSTRING = ""
5+
6+func getStringFromKey (key) = match getString(this, key) {
7+ case str: String =>
8+ str
9+ case _ =>
10+ EMTPYSTRING
11+}
12+
13+
14+func isValidSender (sender) = {
15+ let entryForSenderAddress = getStringFromKey(sender)
16+ if ((entryForSenderAddress == EMTPYSTRING))
17+ then false
18+ else true
19+ }
20+
21+
22+@Callable(i)
23+func addRisk (name,description) = {
24+ let sender = toBase58String(i.caller.bytes)
25+ if (isValidSender(sender))
26+ then WriteSet([DataEntry((toBase58String(i.transactionId) + "_name"), name), DataEntry((toBase58String(i.transactionId) + "_description"), description)])
27+ else throw("Sender not allowed to store risks!")
28+ }
29+
30+
31+
32+@Callable(i)
33+func addConsolidatedRisk (name,description) = {
34+ let sender = toBase58String(i.caller.bytes)
35+ if (isValidSender(sender))
36+ then WriteSet([DataEntry((toBase58String(i.transactionId) + "_consolidated_name"), name), DataEntry((toBase58String(i.transactionId) + "_consolidated_description"), description)])
37+ else throw("Sender not allowed to consolidate risks!")
38+ }
39+
40+
41+
42+@Callable(i)
43+func evaluateRisk (id,probability,impact) = {
44+ let sender = toBase58String(i.caller.bytes)
45+ if (isValidSender(sender))
46+ then WriteSet([DataEntry((((id + "_") + toBase58String(i.transactionId)) + "_prob"), probability), DataEntry((((id + "_") + toBase58String(i.transactionId)) + "_imp"), impact)])
47+ else throw("Sender not allowed to evaluate or evaluated already!")
48+ }
49+
50+
51+@Verifier(tx)
52+func verify () = match tx {
53+ case _ =>
54+ true
55+}
56+

github/deemru/w8io/026f985 
19.22 ms