tx · C6oz4cMV5tzMdNBAjPmjFUB1t4yvZBQFTkcxGJpkpiSe

3N5RAMPJE4xs7mfEqKaHmhuWgVjXbK6dfGc:  -0.01000000 Waves

2022.02.04 18:20 [1909050] smart account 3N5RAMPJE4xs7mfEqKaHmhuWgVjXbK6dfGc > SELF 0.00000000 Waves

{ "type": 13, "id": "C6oz4cMV5tzMdNBAjPmjFUB1t4yvZBQFTkcxGJpkpiSe", "fee": 1000000, "feeAssetId": null, "timestamp": 1643988063633, "version": 2, "chainId": 84, "sender": "3N5RAMPJE4xs7mfEqKaHmhuWgVjXbK6dfGc", "senderPublicKey": "EAog7JJhHByJAZz8XubAMQbtFA3hXBrwbb3goJoVDs4Q", "proofs": [ "3eRrpj2f5mas6TVfVQavhXt8w1DXxSKfArQL4iV464Zi1hBzxuMJRKuXPfPX16u6P6zepkYXAtJ5y3tpy7nUPzZ5" ], "script": "base64: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", "height": 1909050, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: Gw9MFuHHPPM6h57iQHR4wsoEBN9AJAjRHnooJqb27Wfq Next: none Diff:
OldNewDifferences
6161 then {
6262 let lease = Lease(addressFromStringValue(addressToLease), leasableBalance)
6363 let leaseId = calculateLeaseId(lease)
64-[IntegerEntry(presenceKey, (nbPresence + 1)), IntegerEntry(totalCours, (nbCours + 1)), BinaryEntry(leaseIdKey, leaseId), lease]
64+ $Tuple2([IntegerEntry(presenceKey, (nbPresence + 1)), IntegerEntry(totalCours, (nbCours + 1)), BinaryEntry(leaseIdKey, leaseId), lease], 0)
6565 }
66- else [IntegerEntry(presenceKey, (nbPresence + 1)), IntegerEntry(totalCours, (nbCours + 1))]
66+ else $Tuple2([IntegerEntry(presenceKey, (nbPresence + 1)), IntegerEntry(totalCours, (nbCours + 1))], 0)
6767 }
68- else [IntegerEntry(absenceKey, (nbAbsence + 1)), IntegerEntry(totalCours, (nbCours + 1)), LeaseCancel(getBinaryValue(leaseIdKey))]
68+ else $Tuple2([IntegerEntry(absenceKey, (nbAbsence + 1)), IntegerEntry(totalCours, (nbCours + 1)), LeaseCancel(getBinaryValue(leaseIdKey))], 0)
6969 else throw("Strict value is not equal to itself.")
7070 }
7171 else if ((presence == "présent"))
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let presenceKey = "presences"
55
66 let absenceKey = "absences"
77
88 let totalCours = "totalCours"
99
1010 let leaseIdKey = "leaseId"
1111
1212 func getNbPresence () = {
1313 let nbPresence = getInteger(presenceKey)
1414 match nbPresence {
1515 case t: Int =>
1616 t
1717 case _ =>
1818 0
1919 }
2020 }
2121
2222
2323 func getNbCours () = {
2424 let nbCours = getInteger(totalCours)
2525 match nbCours {
2626 case t: Int =>
2727 t
2828 case _ =>
2929 0
3030 }
3131 }
3232
3333
3434 func getNbAbsence () = {
3535 let nbAbsence = getInteger(absenceKey)
3636 match nbAbsence {
3737 case t: Int =>
3838 t
3939 case _ =>
4040 0
4141 }
4242 }
4343
4444
4545 @Callable(i)
4646 func validationPresence (presence,addressToLease,addresses) = {
4747 let nbPresence = getNbPresence()
4848 let nbCours = getNbCours()
4949 let nbAbsence = getNbAbsence()
5050 if ((size(addresses) > 0))
5151 then {
5252 let firstStudent = addressFromStringValue(take(addresses[0], 35))
5353 let firstStudentStatus = takeRight(addresses[0], (size(addresses[0]) - 36))
5454 let listeAdresses = removeByIndex(addresses, 0)
5555 let res = invoke(firstStudent, "validationPresence", [firstStudentStatus, addressToLease, listeAdresses], nil)
5656 if ((res == res))
5757 then if ((presence == "présent"))
5858 then {
5959 let leasableBalance = (wavesBalance(this).available - 10000000)
6060 if ((leasableBalance > 0))
6161 then {
6262 let lease = Lease(addressFromStringValue(addressToLease), leasableBalance)
6363 let leaseId = calculateLeaseId(lease)
64-[IntegerEntry(presenceKey, (nbPresence + 1)), IntegerEntry(totalCours, (nbCours + 1)), BinaryEntry(leaseIdKey, leaseId), lease]
64+ $Tuple2([IntegerEntry(presenceKey, (nbPresence + 1)), IntegerEntry(totalCours, (nbCours + 1)), BinaryEntry(leaseIdKey, leaseId), lease], 0)
6565 }
66- else [IntegerEntry(presenceKey, (nbPresence + 1)), IntegerEntry(totalCours, (nbCours + 1))]
66+ else $Tuple2([IntegerEntry(presenceKey, (nbPresence + 1)), IntegerEntry(totalCours, (nbCours + 1))], 0)
6767 }
68- else [IntegerEntry(absenceKey, (nbAbsence + 1)), IntegerEntry(totalCours, (nbCours + 1)), LeaseCancel(getBinaryValue(leaseIdKey))]
68+ else $Tuple2([IntegerEntry(absenceKey, (nbAbsence + 1)), IntegerEntry(totalCours, (nbCours + 1)), LeaseCancel(getBinaryValue(leaseIdKey))], 0)
6969 else throw("Strict value is not equal to itself.")
7070 }
7171 else if ((presence == "présent"))
7272 then {
7373 let leasableBalance = (wavesBalance(this).available - 10000000)
7474 if ((leasableBalance > 0))
7575 then {
7676 let lease = Lease(addressFromStringValue(addressToLease), leasableBalance)
7777 let leaseId = calculateLeaseId(lease)
7878 [IntegerEntry(presenceKey, (nbPresence + 1)), IntegerEntry(totalCours, (nbCours + 1)), BinaryEntry(leaseIdKey, leaseId), lease]
7979 }
8080 else [IntegerEntry(presenceKey, (nbPresence + 1)), IntegerEntry(totalCours, (nbCours + 1))]
8181 }
8282 else [IntegerEntry(absenceKey, (nbAbsence + 1)), IntegerEntry(totalCours, (nbCours + 1)), LeaseCancel(getBinaryValue(leaseIdKey))]
8383 }
8484
8585

github/deemru/w8io/873ac7e 
27.92 ms