tx · A8hEwna6F3GCXksAe7ZocUJw68BgjGpTKHnM9WjB6yWx

3N5hQm6twVhFgf8mKBkJpNhxwcBnpZsPyni:  -0.01400000 Waves

2019.08.19 13:47 [637932] smart account 3N5hQm6twVhFgf8mKBkJpNhxwcBnpZsPyni > SELF 0.00000000 Waves

{ "type": 13, "id": "A8hEwna6F3GCXksAe7ZocUJw68BgjGpTKHnM9WjB6yWx", "fee": 1400000, "feeAssetId": null, "timestamp": 1566211639545, "version": 1, "sender": "3N5hQm6twVhFgf8mKBkJpNhxwcBnpZsPyni", "senderPublicKey": "5qEf6v7n4Cm55KWEaSs76eUft3uwLezLoJeBrf6u9BKE", "proofs": [ "36EguQw4cKrGuH8DtiXYtX3s9PRABSkPT5Mm1SuwSDscyq9gz9E5duWXLhWNqUVipMRzxCtwWXm663Eo3f9Xz9H4" ], "script": "base64:AAIDAAAAAAAAAAAAAAAGAAAAAAhvd25lcktleQIAAAAFb3duZXIAAAAACndhdmVzVG9rZW4FAAAABHVuaXQBAAAACXBheW1lbnRPZgAAAAEAAAADa2V5CQABLAAAAAICAAAAC3BheW1lbnRfb2ZfBQAAAANrZXkBAAAACHN0YXR1c09mAAAAAQAAAANrZXkJAAEsAAAAAgIAAAAKc3RhdHVzX29mXwUAAAADa2V5AAAAAAVvd25lcgkBAAAAHEBleHRyVXNlcihhZGRyZXNzRnJvbVN0cmluZykAAAABCQEAAAAFdmFsdWUAAAABCQAEHQAAAAIFAAAABHRoaXMFAAAACG93bmVyS2V5AQAAABBpc1BheW1lbnRQZW5kaW5nAAAAAQAAAANrZXkEAAAAByRtYXRjaDAJAAQdAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAAApzdGF0dXNfb2ZfBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABcwUAAAAHJG1hdGNoMAkAAAAAAAACBQAAAAFzAgAAAAdwZW5kaW5nBwAAAAQAAAABaQEAAAAEaW5pdAAAAAIAAAAFb3duZXIAAAAFdG9rZW4DCQAAAAAAAAIIBQAAAAFpAAAABmNhbGxlcgUAAAAEdGhpcwkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAIb3duZXJLZXkFAAAABW93bmVyBQAAAANuaWwJAAACAAAAAQIAAAAZb25seSBkYXBwIGl0c2VsZiBjYW4gaW5pdAAAAAFpAQAAABBzZXRXYWl0VG9QYXltZW50AAAAAgAAAANrZXkAAAAHcGF5bWVudAkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkBAAAACHN0YXR1c09mAAAAAQUAAAADa2V5AgAAAAdwZW5kaW5nCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQEAAAAJcGF5bWVudE9mAAAAAQUAAAADa2V5BQAAAAdwYXltZW50BQAAAANuaWwAAAABaQEAAAADcGF5AAAAAQAAAANrZXkDBgQAAAAHJG1hdGNoMAgFAAAAAWkAAAAHcGF5bWVudAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAPQXR0YWNoZWRQYXltZW50BAAAAAFhBQAAAAckbWF0Y2gwAwkAAAAAAAACCAUAAAABYQAAAAdhc3NldElkBQAAAAp3YXZlc1Rva2VuBAAAAARkYXRhCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQEAAAAIc3RhdHVzT2YAAAABBQAAAANrZXkCAAAABHBhaWQFAAAAA25pbAkBAAAADFNjcmlwdFJlc3VsdAAAAAIFAAAABGRhdGEJAQAAAAtUcmFuc2ZlclNldAAAAAEJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwUAAAAFb3duZXIAAAAAAAAAAAoFAAAACndhdmVzVG9rZW4FAAAAA25pbAkAAAIAAAABAgAAABhjYW4gb25seSBXQVZFUywgYnV0IGdvdCAJAAACAAAAAQIAAAAncGF5bWVudCBpbiBhc3NldFRva2VucyBtdXN0IGJlIGF0dGFjaGVkCQAAAgAAAAECAAAAKE9yZGVyIGFscmVhZHkgaGFzIGJlZW4gcGF5ZWQgb3IgcmVqZWN0ZWQAAAABaQEAAAAGcmVqZWN0AAAAAQAAAANrZXkDCQEAAAAQaXNQYXltZW50UGVuZGluZwAAAAEFAAAAA2tleQkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkBAAAACHN0YXR1c09mAAAAAQUAAAADa2V5AgAAAAhyZWplY3RlZAUAAAADbmlsCQAAAgAAAAECAAAAKE9yZGVyIGFscmVhZHkgaGFzIGJlZW4gcGF5ZWQgb3IgcmVqZWN0ZWQAAAAAhIjszA==", "chainId": 84, "height": 637932, "spentComplexity": 0 } View: original | compacted Prev: 8vmdSiHUAXeN7mTPz5VKwBunfdTroCQmZnVCUiDPfrnU Next: CupGayTDekxhm9CbB55P9J4E17q6aEVPGyHdkGAQWYzx Diff:
OldNewDifferences
4242 let data = WriteSet([DataEntry(statusOf(key), "paid")])
4343 ScriptResult(data, TransferSet([ScriptTransfer(owner, 10, wavesToken)]))
4444 }
45- else throw(("can only WAVES, but got " + toBase58String(value(a.assetId))))
45+ else throw("can only WAVES, but got ")
4646 case _ =>
4747 throw("payment in assetTokens must be attached")
4848 }
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")])
4343 ScriptResult(data, TransferSet([ScriptTransfer(owner, 10, wavesToken)]))
4444 }
45- else throw(("can only WAVES, but got " + toBase58String(value(a.assetId))))
45+ else throw("can only WAVES, but got ")
4646 case _ =>
4747 throw("payment in assetTokens must be attached")
4848 }
4949 else throw("Order already has been payed or rejected")
5050
5151
5252
5353 @Callable(i)
5454 func reject (key) = if (isPaymentPending(key))
5555 then WriteSet([DataEntry(statusOf(key), "rejected")])
5656 else throw("Order already has been payed or rejected")
5757
5858

github/deemru/w8io/c3f4982 
26.08 ms