tx · 8vmdSiHUAXeN7mTPz5VKwBunfdTroCQmZnVCUiDPfrnU

3N5hQm6twVhFgf8mKBkJpNhxwcBnpZsPyni:  -0.01400000 Waves

2019.08.19 13:44 [637926] smart account 3N5hQm6twVhFgf8mKBkJpNhxwcBnpZsPyni > SELF 0.00000000 Waves

{ "type": 13, "id": "8vmdSiHUAXeN7mTPz5VKwBunfdTroCQmZnVCUiDPfrnU", "fee": 1400000, "feeAssetId": null, "timestamp": 1566211499580, "version": 1, "sender": "3N5hQm6twVhFgf8mKBkJpNhxwcBnpZsPyni", "senderPublicKey": "5qEf6v7n4Cm55KWEaSs76eUft3uwLezLoJeBrf6u9BKE", "proofs": [ "4mPmU9MQ7hZwWXLEtGut1WW5etRWL4rDrkTWNTGoSTP4hJDm5AkrRFWyHCmn2fHGiL6VzLtTwCzApEn8uuxr3AqV" ], "script": "base64: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", "chainId": 84, "height": 637926, "spentComplexity": 0 } View: original | compacted Prev: 8Q7sFAGDunFcNEJeScbPWLpHEJwcUsx2ZTALCAf1DLXR Next: A8hEwna6F3GCXksAe7ZocUJw68BgjGpTKHnM9WjB6yWx Diff:
OldNewDifferences
4040 if ((a.assetId == wavesToken))
4141 then {
4242 let data = WriteSet([DataEntry(statusOf(key), "paid")])
43- let payment = extract(getInteger(this, "payment_of_test"))
44- ScriptResult(data, TransferSet([ScriptTransfer(owner, payment, wavesToken)]))
43+ ScriptResult(data, TransferSet([ScriptTransfer(owner, 10, wavesToken)]))
4544 }
4645 else throw(("can only WAVES, but got " + toBase58String(value(a.assetId))))
4746 case _ =>
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let ownerKey = "owner"
55
66 let wavesToken = unit
77
88 func paymentOf (key) = ("payment_of_" + key)
99
1010
1111 func statusOf (key) = ("status_of_" + key)
1212
1313
1414 let owner = addressFromStringValue(value(getString(this, ownerKey)))
1515
1616 func isPaymentPending (key) = match getString(this, ("status_of_" + key)) {
1717 case s: String =>
1818 (s == "pending")
1919 case _ =>
2020 false
2121 }
2222
2323
2424 @Callable(i)
2525 func init (owner,token) = if ((i.caller == this))
2626 then WriteSet([DataEntry(ownerKey, owner)])
2727 else throw("only dapp itself can init")
2828
2929
3030
3131 @Callable(i)
3232 func setWaitToPayment (key,payment) = WriteSet([DataEntry(statusOf(key), "pending"), DataEntry(paymentOf(key), payment)])
3333
3434
3535
3636 @Callable(i)
3737 func pay (key) = if (true)
3838 then match i.payment {
3939 case a: AttachedPayment =>
4040 if ((a.assetId == wavesToken))
4141 then {
4242 let data = WriteSet([DataEntry(statusOf(key), "paid")])
43- let payment = extract(getInteger(this, "payment_of_test"))
44- ScriptResult(data, TransferSet([ScriptTransfer(owner, payment, wavesToken)]))
43+ ScriptResult(data, TransferSet([ScriptTransfer(owner, 10, wavesToken)]))
4544 }
4645 else throw(("can only WAVES, but got " + toBase58String(value(a.assetId))))
4746 case _ =>
4847 throw("payment in assetTokens must be attached")
4948 }
5049 else throw("Order already has been payed or rejected")
5150
5251
5352
5453 @Callable(i)
5554 func reject (key) = if (isPaymentPending(key))
5655 then WriteSet([DataEntry(statusOf(key), "rejected")])
5756 else throw("Order already has been payed or rejected")
5857
5958

github/deemru/w8io/169f3d6 
39.88 ms