tx · 3KN4Vt3juHsHNSmh67GF98wgMWJT3TQGFPtYZrkwHsU7

3N3uKL5Bd3Bz4qpFn9f7nFd8RUJx6DucvPy:  -0.00200000 Waves

2024.11.21 23:59 [3381731] smart account 3N3uKL5Bd3Bz4qpFn9f7nFd8RUJx6DucvPy > SELF 0.00000000 Waves

{ "type": 13, "id": "3KN4Vt3juHsHNSmh67GF98wgMWJT3TQGFPtYZrkwHsU7", "fee": 200000, "feeAssetId": null, "timestamp": 1732222801477, "version": 2, "chainId": 84, "sender": "3N3uKL5Bd3Bz4qpFn9f7nFd8RUJx6DucvPy", "senderPublicKey": "36MZT726dzokx3z57SXTuZqJsabkLgJrhLwwE5gQYTGx", "proofs": [ "wKjjUt7CyxNdStFdPLQH7u6uoLCxGCsHzzQJ7TViT3CauGTh47gbNk9Z5AHT5tnMLCDat6fHCRP97P91nNk9ULR" ], "script": "base64:CAISCAISABIFCgMICAgSBQoDCAgBAAMBaQEJYWRkRmFybWVyAAQHYWRkcmVzcwkApQgBCAUBaQZjYWxsZXIEBmZhcm1lcgkAnwgBCQCsAgIFB2FkZHJlc3MCBl9jb3VudAMJAAACBQZmYXJtZXIFBHVuaXQJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICBQdhZGRyZXNzAghfcGVuZGluZwIACQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIFB2FkZHJlc3MCBl9jb3VudAAABQNuaWwJAAIBAhVGYXJtZXIgYWxyZWFkeSBleGlzdHMBaQEGYWRkQXVBAwpkYXRhRmFybWVyB2RhdGFWZXQGZmFybWVyBAVjb3VudAQHJG1hdGNoMAkAnwgBCQCsAgIFBmZhcm1lcgIGX2NvdW50AwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAABAdwZW5kaW5nCQCiCAEJAKwCAgUGZmFybWVyAghfcGVuZGluZwMJAQEhAQkBCWlzRGVmaW5lZAEFB3BlbmRpbmcJAAIBAhVGYXJtZXIgZG9lcyBub3QgZXhpc3QDCQAAAgUHcGVuZGluZwIACQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgUGZmFybWVyAghfcGVuZGluZwIBMAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFBmZhcm1lcgIEXzBfRgUKZGF0YUZhcm1lcgkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFBmZhcm1lcgIEXzBfVgUHZGF0YVZldAkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICBQZmYXJtZXICBl9jb3VudAABBQNuaWwJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICBQZmYXJtZXICCF9wZW5kaW5nCQCsAgIJAKwCAgkBBXZhbHVlAQUHcGVuZGluZwIBLAkApAMBBQVjb3VudAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgkArAICBQZmYXJtZXICAV8JAKQDAQUFY291bnQCAl9GBQpkYXRhRmFybWVyCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICCQCsAgIFBmZhcm1lcgIBXwkApAMBBQVjb3VudAICX1YFB2RhdGFWZXQJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgUGZmFybWVyAgZfY291bnQJAGQCBQVjb3VudAABBQNuaWwBaQEGdmVyaWZ5AwRkYXRhBmZhcm1lcgVlbnRyeQMJAQEhAQkBCWlzRGVmaW5lZAEJAKIIAQkArAICBQZmYXJtZXICCF9wZW5kaW5nCQACAQIVRmFybWVyIGRvZXMgbm90IGV4aXN0AwkBCWlzRGVmaW5lZAEJAKIIAQkArAICCQCsAgIJAKwCAgUGZmFybWVyAgFfCQCkAwEFBWVudHJ5AglfVmVyaWZpZWQJAAIBAhpBdUEgRW50cnkgYWxyZWFkeSB2ZXJpZmllZAMJAQEhAQkBCWlzRGVmaW5lZAEJAKIIAQkArAICCQCsAgIJAKwCAgUGZmFybWVyAgFfCQCkAwEFBWVudHJ5AgJfRgkAAgEJAKwCAgkArAICAgZFbnRyeSAJAKQDAQUFZW50cnkCDyBkb2VzIG5vdCBleGlzdAQNcGVuZGluZ1N0cmluZwkAtQkCCQERQGV4dHJOYXRpdmUoMTA1OCkBCQCsAgIFBmZhcm1lcgIIX3BlbmRpbmcCASwEBWluZGV4CQDPCAIFDXBlbmRpbmdTdHJpbmcJAKQDAQUFZW50cnkDCQAAAgUFaW5kZXgFBHVuaXQJAAIBCQCsAgIJAKwCAgIGRW50cnkgCQCkAwEFBWVudHJ5Ag8gZG9lcyBub3QgZXhpc3QEEG5ld1BlbmRpbmdTdHJpbmcJALkJAgkA0QgCBQ1wZW5kaW5nU3RyaW5nCQEFdmFsdWUBBQVpbmRleAIBLAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgkArAICBQZmYXJtZXICAV8JAKQDAQUFZW50cnkCCV9WZXJpZmllZAUEZGF0YQkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFBmZhcm1lcgIIX3BlbmRpbmcFEG5ld1BlbmRpbmdTdHJpbmcFA25pbAChuHXC", "height": 3381731, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 5kiGo77vxxpQgcYeztce3AAibv3eTbkXe9RBNDZ6FPhW Next: ACPEE4BfxwZgDJFmN5bMw2HPNekbff1be6egLY23ydDa Diff:
OldNewDifferences
3333
3434
3535 @Callable(i)
36-func verify (data,farmer,entry) = if (isDefined(getString((((farmer + "_") + toString(entry)) + "_Verified"))))
37- then throw("AuA Entry already verified")
38- else if (!(isDefined(getString((((farmer + "_") + toString(entry)) + "_F")))))
39- then throw((("Entry " + toString(entry)) + " does not exist"))
40- else [StringEntry((((farmer + "_") + toString(entry)) + "_Verified"), data)]
36+func verify (data,farmer,entry) = if (!(isDefined(getString((farmer + "_pending")))))
37+ then throw("Farmer does not exist")
38+ else if (isDefined(getString((((farmer + "_") + toString(entry)) + "_Verified"))))
39+ then throw("AuA Entry already verified")
40+ else if (!(isDefined(getString((((farmer + "_") + toString(entry)) + "_F")))))
41+ then throw((("Entry " + toString(entry)) + " does not exist"))
42+ else {
43+ let pendingString = split(getStringValue((farmer + "_pending")), ",")
44+ let index = indexOf(pendingString, toString(entry))
45+ if ((index == unit))
46+ then throw((("Entry " + toString(entry)) + " does not exist"))
47+ else {
48+ let newPendingString = makeString(removeByIndex(pendingString, value(index)), ",")
49+[StringEntry((((farmer + "_") + toString(entry)) + "_Verified"), data), StringEntry((farmer + "_pending"), newPendingString)]
50+ }
51+ }
4152
4253
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 8 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44
55
66 @Callable(i)
77 func addFarmer () = {
88 let address = toString(i.caller)
99 let farmer = getInteger((address + "_count"))
1010 if ((farmer == unit))
1111 then [StringEntry((address + "_pending"), ""), IntegerEntry((address + "_count"), 0)]
1212 else throw("Farmer already exists")
1313 }
1414
1515
1616
1717 @Callable(i)
1818 func addAuA (dataFarmer,dataVet,farmer) = {
1919 let count = match getInteger((farmer + "_count")) {
2020 case a: Int =>
2121 a
2222 case _ =>
2323 0
2424 }
2525 let pending = getString((farmer + "_pending"))
2626 if (!(isDefined(pending)))
2727 then throw("Farmer does not exist")
2828 else if ((pending == ""))
2929 then [StringEntry((farmer + "_pending"), "0"), StringEntry((farmer + "_0_F"), dataFarmer), StringEntry((farmer + "_0_V"), dataVet), IntegerEntry((farmer + "_count"), 1)]
3030 else [StringEntry((farmer + "_pending"), ((value(pending) + ",") + toString(count))), StringEntry((((farmer + "_") + toString(count)) + "_F"), dataFarmer), StringEntry((((farmer + "_") + toString(count)) + "_V"), dataVet), IntegerEntry((farmer + "_count"), (count + 1))]
3131 }
3232
3333
3434
3535 @Callable(i)
36-func verify (data,farmer,entry) = if (isDefined(getString((((farmer + "_") + toString(entry)) + "_Verified"))))
37- then throw("AuA Entry already verified")
38- else if (!(isDefined(getString((((farmer + "_") + toString(entry)) + "_F")))))
39- then throw((("Entry " + toString(entry)) + " does not exist"))
40- else [StringEntry((((farmer + "_") + toString(entry)) + "_Verified"), data)]
36+func verify (data,farmer,entry) = if (!(isDefined(getString((farmer + "_pending")))))
37+ then throw("Farmer does not exist")
38+ else if (isDefined(getString((((farmer + "_") + toString(entry)) + "_Verified"))))
39+ then throw("AuA Entry already verified")
40+ else if (!(isDefined(getString((((farmer + "_") + toString(entry)) + "_F")))))
41+ then throw((("Entry " + toString(entry)) + " does not exist"))
42+ else {
43+ let pendingString = split(getStringValue((farmer + "_pending")), ",")
44+ let index = indexOf(pendingString, toString(entry))
45+ if ((index == unit))
46+ then throw((("Entry " + toString(entry)) + " does not exist"))
47+ else {
48+ let newPendingString = makeString(removeByIndex(pendingString, value(index)), ",")
49+[StringEntry((((farmer + "_") + toString(entry)) + "_Verified"), data), StringEntry((farmer + "_pending"), newPendingString)]
50+ }
51+ }
4152
4253

github/deemru/w8io/169f3d6 
22.16 ms