tx · 8rEiqyXLbKBGuXdk8z8iDDEbkq7FVWbKR4e1GGGVNPuh

3N5v9ndbkGSWy1SfeJSz94tYU8qVNTUJV2q:  -0.01400000 Waves

2020.07.31 23:04 [1112263] smart account 3N5v9ndbkGSWy1SfeJSz94tYU8qVNTUJV2q > SELF 0.00000000 Waves

{ "type": 13, "id": "8rEiqyXLbKBGuXdk8z8iDDEbkq7FVWbKR4e1GGGVNPuh", "fee": 1400000, "feeAssetId": null, "timestamp": 1596225866587, "version": 1, "sender": "3N5v9ndbkGSWy1SfeJSz94tYU8qVNTUJV2q", "senderPublicKey": "6tctCnkRasXYuZWRpzZz9ogLri6aifJ19LTtx9uFQv67", "proofs": [ "2tyczPogFnSsKrbdYtWMHSfMmk1W7vZPiLS5YUc9cyDiUQRygsRtLLKzHNMgdrEE9pYjniyBDqERwPExgdu9odnT" ], "script": "base64:AAIDAAAAAAAAABAIARIDCgEBEgcKBQgICAEBAAAAKAAAAAAHeEJpdENPMgEAAAAgIARkpqoDew1vpqr6lyVYs5aJelMM/++6xmiHbINU3I0AAAAACHN0YXJ0UXR5AAAAAAAAADqYAAAAAAhub21QcmljZQAAAAAAAAAACgAAAAADd3ZzAAAAAAAAmJaAAAAAAAROT05FAgAAAARub25lAAAAAAtPd25lclB1YktleQEAAAAgV4Og8/YsMblujmTdzmwpOjQnMNOO3FG4NMv2JsnE5RQAAAAABmlzc3VlcgkBAAAAB0FkZHJlc3MAAAABAQAAABoBVK+FXJ+MAQe/AqC2hmtlg7ih3z/R3ffDMgAAAAAOcHJvamVjdEFkZHJlc3MJAQAAAAdBZGRyZXNzAAAAAQEAAAAaAVS4OUE9ySb5EI+tMmuD1pt1+pssRqAnnqMBAAAADmdldE51bWJlckJ5S2V5AAAAAQAAAANrZXkEAAAAA251bQQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAUAAAADbnVtAQAAAAtnZXRTdHJCeUtleQAAAAEAAAADa2V5BAAAAANzdHIEAAAAByRtYXRjaDAJAAQdAAAAAgUAAAAEdGhpcwUAAAADa2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAZTdHJpbmcEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEFAAAABE5PTkUFAAAAA3N0cgEAAAAKZ2V0S2V5SXRlbQAAAAIAAAAIc3VwcGxpZXIAAAAFdGl0bGUJAAEsAAAAAgIAAAAbUmVzZXJ2YSBGb3Jlc3RhbCBBbWF6w7NuaWNhCQACWAAAAAEJAAH3AAAAAQkAAZsAAAABCQABLAAAAAIFAAAACHN1cHBsaWVyBQAAAAV0aXRsZQEAAAARZ2V0S2V5UHJvcGlldGFyaW8AAAABAAAACHN1cHBsaWVyCQABLAAAAAIFAAAACHN1cHBsaWVyAgAAACNDb211bmlkYWQgQWNodWFyIEthcGF3aSBkZWwgRWN1YWRvcgEAAAATZ2V0VmFsdWVQcm9waWV0YXJpbwAAAAEAAAAIc3VwcGxpZXIJAQAAAAtnZXRTdHJCeUtleQAAAAEJAQAAABFnZXRLZXlQcm9waWV0YXJpbwAAAAEFAAAACHN1cHBsaWVyAQAAABFnZXRLZXlQcm9qZWN0Q29kZQAAAAEAAAALcHJvamVjdENvZGUCAAAAGzAxLUVDL1NHVCAtIEFDSFVBUktBUEFXSS0wMQEAAAARZ2V0S2V5UHJvamVjdE5hbWUAAAABAAAAC3Byb2plY3ROYW1lAgAAACBSZXNlcnZhIEFtYXrDs25pY2EgQWNodWFyLUthcGF3aQEAAAATZ2V0VmFsdWVQcm9qZWN0TmFtZQAAAAEAAAALcHJvamVjdE5hbWUJAQAAAAtnZXRTdHJCeUtleQAAAAEJAQAAABFnZXRLZXlQcm9qZWN0TmFtZQAAAAEFAAAAC3Byb2plY3ROYW1lAQAAABJnZXRLZXlQcm9qZWN0RXRhcGEAAAABAAAADnByb2plY3RBZGRyZXNzAgAAAB1BY2h1YXJLYXBhd2ksIEkgRXRhcGE6IFByZUlDTwEAAAAUZ2V0VmFsdWVQcm9qZWN0RXRhcGEAAAABAAAADnByb2plY3RBZGRyZXNzCQEAAAALZ2V0U3RyQnlLZXkAAAABCQEAAAASZ2V0S2V5UHJvamVjdEV0YXBhAAAAAQUAAAAOcHJvamVjdEFkZHJlc3MBAAAAFGdldEtleVByb2plY3RDb3VudHJ5AAAAAQAAAARpdGVtAgAAABZSZXDDumJsaWNhIGRlbCBFY3VhZG9yAQAAABBnZXRLZXlQcm9qZWN0RGV2AAAAAQAAAARpdGVtAgAAABxGdW5kYWNpw7NuIEVjb2zDs2dpY2EgJ05BU0UnAQAAABNnZXRLZXlUb2tlblN0YXJ0UXR5AAAAAQAAAARpdGVtAgAAABQxNTAwMCB0b2tlbnMgQml0LUNPMgEAAAATZ2V0S2V5Tm9tVG9rZW5QcmljZQAAAAEAAAAEaXRlbQIAAAALMTAuMDAgRXVyb3MBAAAAEmdldEtleU1heERlc2N1ZW50bwAAAAEAAAAEaXRlbQIAAAAsMTIuMDAlIGRlbCBQcmVjaW8gTm9taW5hbCBkZSAxIHRva2VuIEJpdC1DTzIBAAAAE2dldEtleU1pblRva2VuUHJpY2UAAAABAAAABGl0ZW0CAAAAHjguODAgRXVyb3MgcG9yIDEgdG9rZW4gQml0LUNPMgEAAAAVZ2V0S2V5VXNlckl0ZW1Db3VudGVyAAAAAgAAAAR1c2VyAAAABGl0ZW0CAAAACk9yZGVyX+KEljoBAAAAF2dldFZhbHVlVXNlckl0ZW1Db3VudGVyAAAAAgAAAAR1c2VyAAAABGl0ZW0JAQAAAA5nZXROdW1iZXJCeUtleQAAAAEJAQAAABVnZXRLZXlVc2VySXRlbUNvdW50ZXIAAAACBQAAAAR1c2VyBQAAAARpdGVtAQAAAA5nZXRLZXlVc2VyTmFtZQAAAAEAAAAEaXRlbQIAAAATTm9tYnJlIGRlbCBVc3VhcmlvOgEAAAAQZ2V0VmFsdWVVc2VyTmFtZQAAAAEAAAAEaXRlbQkBAAAAC2dldFN0ckJ5S2V5AAAAAQkBAAAADmdldEtleVVzZXJOYW1lAAAAAQUAAAAEaXRlbQEAAAASZ2V0S2V5VXNlckRvY3VtZW50AAAAAQAAAARpdGVtAgAAADnihJYgZGUgRG9jdW1lbnRvIE5hY2lvbmFsIGRlIElkZW50aWRhZCAvIEROSSBkZWwgVXN1YXJpbzoBAAAAFGdldFZhbHVlVXNlckRvY3VtZW50AAAAAQAAAARpdGVtCQEAAAALZ2V0U3RyQnlLZXkAAAABCQEAAAASZ2V0S2V5VXNlckRvY3VtZW50AAAAAQUAAAAEaXRlbQEAAAARZ2V0S2V5VXNlckNvdW50cnkAAAABAAAABGl0ZW0CAAAAIFBhw61zIGRlIFJlc2lkZW5jaWEgZGVsIFVzdWFyaW86AQAAABNnZXRWYWx1ZVVzZXJDb3VudHJ5AAAAAQAAAARpdGVtCQEAAAALZ2V0U3RyQnlLZXkAAAABCQEAAAARZ2V0S2V5VXNlckNvdW50cnkAAAABBQAAAARpdGVtAQAAABZnZXRLZXlJdGVtRGlzY291bnRVc2VyAAAAAQAAAARpdGVtAgAAACREZXNjdWVudG8gZWxlamlkbyBwb3IgZWwgVXN1YXJpbywgJToBAAAAGGdldFZhbHVlSXRlbURpc2NvdW50VXNlcgAAAAEAAAAEaXRlbQkBAAAADmdldE51bWJlckJ5S2V5AAAAAQkBAAAAFmdldEtleUl0ZW1EaXNjb3VudFVzZXIAAAABBQAAAARpdGVtAQAAABZnZXRLZXlJdGVtVXNlck9yZGVyUXR5AAAAAQAAAARpdGVtAgAAACVPcmRlbiBkZSBDb21wcmEsIGNhbnRpZGFkIHNvbGljaXRhZGE6AQAAABhnZXRWYWx1ZUl0ZW1Vc2VyT3JkZXJRdHkAAAABAAAABGl0ZW0JAQAAAA5nZXROdW1iZXJCeUtleQAAAAEJAQAAABZnZXRLZXlJdGVtVXNlck9yZGVyUXR5AAAAAQUAAAAEaXRlbQEAAAAdZ2V0S2V5U2FsZG9Ub2tlblF0eVN0YXJ0RXRhcGEAAAABAAAABGl0ZW0CAAAALlRva2VucyBPZmVydGFkb3MgZW4gbGEgcHJlc2VudGUgZXRhcGEgLyBTYWxkbzoBAAAAH2dldFZhbHVlU2FsZG9Ub2tlblF0eVN0YXJ0RXRhcGEAAAABAAAABGl0ZW0JAQAAAA5nZXROdW1iZXJCeUtleQAAAAEJAQAAAB1nZXRLZXlTYWxkb1Rva2VuUXR5U3RhcnRFdGFwYQAAAAEFAAAABGl0ZW0BAAAAH2dldEtleUJhbGFuY2VTdXBwbGllclNlbGxJbmNvbWUAAAABAAAACHN1cHBsaWVyAgAAAChJbmdyZXNvcyBwb3IgVmVudGEgRGlyZWN0YSAvIEJsb2NrQ2hhaW46AQAAACFnZXRWYWx1ZUJhbGFuY2VTdXBwbGllclNlbGxJbmNvbWUAAAABAAAACHN1cHBsaWVyCQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABCQEAAAAfZ2V0S2V5QmFsYW5jZVN1cHBsaWVyU2VsbEluY29tZQAAAAEFAAAACHN1cHBsaWVyAAAAAgAAAAFpAQAAAAdkZXBvc2l0AAAAAQAAAAZhbW91bnQEAAAAA3BtdAkBAAAAB2V4dHJhY3QAAAABCAUAAAABaQAAAAdwYXltZW50AwkBAAAAAiE9AAAAAggFAAAAA3BtdAAAAAdhc3NldElkBQAAAAd4Qml0Q08yCQAAAgAAAAECAAAALlVzZSBjQml0Q08yIHRva2VucyBvbmx5IGZvciB0aGUgd2FsbGV0IGRlcG9zaXQEAAAACHN1cHBsaWVyCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAADWN1cnJlbnRBbW91bnQEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwUAAAAIc3VwcGxp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b3I6AgAAABdDb211bmlkYWQgQWNodWFyIEthcGF3aQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgIAAAAaRGVzYXJyb2xsYWRvci9SZXNwb25zYWJsZToCAAAAHEZ1bmRhY2nDs24gRWNvbMOzZ2ljYSAnTkFTRScJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAICAAAAHUV0YXBhcyBkZWwgUHJveWVjdG8sIFByZS1JQ086AgAAAAgyIEV0YXBhcwkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgIAAAAjRXRhcGFzIGRlbCBQcm95ZWN0bywgZW4gRWplY3VjacOzbjoCAAAAGkEgRGVmaW5pciwgRnVuZGFjacOzbiBSRURECQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACAgAAADhDYW50aWRhZCBUb3RhbCBkZSBUb2tlbnMgYSBFbWl0aXIsIEkgeSBJSSBFdGFwYSBQcmUtSUNPOgIAAAAVMzA1NjkzIHRva2VucyBCaXQtQ08yCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACAgAAACBQcmVjaW8gTm9taW5hbCwgMSB0b2tlbiBCaXQtQ08yOgIAAAALMTAuMDAgRXVyb3MJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAICAAAAJE3DoXhpbW8gRGVzY3VlbnRvIG9mcmVjaWRvLCBJIEV0YXBhOgIAAAAHMTIuMDAgJQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkBAAAAFWdldEtleVVzZXJJdGVtQ291bnRlcgAAAAIFAAAAC3VzZXJBZGRyZXNzBQAAAARpdGVtCQAAZAAAAAIJAQAAABdnZXRWYWx1ZVVzZXJJdGVtQ291bnRlcgAAAAIFAAAAC3VzZXJBZGRyZXNzBQAAAARpdGVtAAAAAAAAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACAgAAACZUb3RhbCBUb2tlbnMgRW1pdGlkb3MsIEkgRXRhcGEgUHJlLUlDTwUAAAAIc3RhcnRRdHkJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAAA5nZXRLZXlVc2VyTmFtZQAAAAEFAAAABGl0ZW0FAAAACHVzZXJOYW1lCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQEAAAARZ2V0S2V5VXNlckNvdW50cnkAAAABBQAAAARpdGVtBQAAAAt1c2VyQ291bnRyeQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkBAAAAFmdldEtleUl0ZW1EaXNjb3VudFVzZXIAAAABBQAAAARpdGVtBQAAAAx1c2VyRGlzY291bnQJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAABZnZXRLZXlJdGVtVXNlck9yZGVyUXR5AAAAAQUAAAAEaXRlbQUAAAAIb3JkZXJRdHkJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAICAAAAGHRva2VuUHJpY2UvU3VwcGxpZXIsIHd2cwkAAGgAAAACBQAAAAhub21QcmljZQUAAAADd3ZzCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACAgAAABR0b2tlblByaWNlL1VzZXIsIHd2cwUAAAAPYnV5ZXJUb2tlblByaWNlCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACAgAAABhpbnZlc3RlZEFtb3VudC9Vc2VyLCB3dnMFAAAAC3RvdGFsQW1vdW50CQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACAgAAABVwdXJjaGFzZU9yZGVyL1N0YXR1czoCAAAAGsKhQWRxdWlzaWNpw7NuIENvbmZpcm1hZGEhCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQEAAAAdZ2V0S2V5U2FsZG9Ub2tlblF0eVN0YXJ0RXRhcGEAAAABBQAAAARpdGVtCQAAZQAAAAIFAAAACXByZUljb1F0eQUAAAAIb3JkZXJRdHkJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAAB9nZXRLZXlCYWxhbmNlU3VwcGxpZXJTZWxsSW5jb21lAAAAAQUAAAAIc3VwcGxpZXIJAABkAAAAAgUAAAAPYmFsYW5jZVN1cHBsaWVyCAUAAAADcG10AAAABmFtb3VudAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgIAAAAiQ3VlbnRhIGRlbCBQcm95ZWN0byBlbiBCbG9ja0NoYWluOgUAAAAIc3VwcGxpZXIJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAICAAAAIkN1ZW50YSBkZWwgUHJveWVjdG8gZW4gQmxvY2tDaGFpbjoBAAAAGgFUuDlBPckm+RCPrTJrg9abdfqbLEagJ56jBQAAAANuaWwJAQAAAAtUcmFuc2ZlclNldAAAAAEJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwkBAAAAHEBleHRyVXNlcihhZGRyZXNzRnJvbVN0cmluZykAAAABBQAAAAt1c2VyQWRkcmVzcwUAAAAIb3JkZXJRdHkFAAAAB3hCaXRDTzIFAAAAA25pbAAAAAEAAAACdHgBAAAABnZlcmlmeQAAAAAEAAAAByRtYXRjaDAFAAAAAnR4AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAABRTZXRTY3JpcHRUcmFuc2FjdGlvbgQAAAABdAUAAAAHJG1hdGNoMAkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAAFAAAAC093bmVyUHViS2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAA9EYXRhVHJhbnNhY3Rpb24EAAAAAWQFAAAAByRtYXRjaDAGAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAABNUcmFuc2ZlclRyYW5zYWN0aW9uBAAAAAJ0eAUAAAAHJG1hdGNoMAQAAAAJcmVjaXBpZW50CQACWAAAAAEICQAEJAAAAAEIBQAAAAJ0eAAAAAlyZWNpcGllbnQAAAAFYnl0ZXMDCQAAAAAAAAIIBQAAAAJ0eAAAAAZzZW5kZXIFAAAABmlzc3VlcgYJAAACAAAAAQIAAAAgWW91IGNhbid0IHRyYW5zZmVycmVkIHRoaXMgdG9rZW4HTgoYPw==", "chainId": 84, "height": 1112263, "spentComplexity": 0 } View: original | compacted Prev: Bhvz9zbw1eG3b87XdG2LqkFcQLbe12D2ZpcWpn4rJ7HC Next: AVRuaY6wd6t3rQnEPRjug8hgk5VhLCGZmXRwnaGysHRL Diff:
OldNewDifferences
77
88 let nomPrice = 10
99
10-let wvs = 100000000
10+let wvs = 10000000
1111
1212 let NONE = "none"
1313
1414 let OwnerPubKey = base58'6tctCnkRasXYuZWRpzZz9ogLri6aifJ19LTtx9uFQv67'
1515
1616 let issuer = Address(base58'3N5v9ndbkGSWy1SfeJSz94tYU8qVNTUJV2q')
17-
18-let igv = 18
19-
20-let currentPrice1BitCO2 = 880000000
2117
2218 let projectAddress = Address(base58'3N6iAhMV5VZ31hJSJT4e3DoaBoiHCPxbZNa')
2319
157153 func purchase (item,userName,userCountry,userDiscount,orderQty) = {
158154 let pmt = extract(i.payment)
159155 if (isDefined(pmt.assetId))
160- then throw("you can adquire cBitCO2 only by Waves tokens")
156+ then throw("you can adquire xBitCO2 only by Waves tokens")
161157 else {
162158 let supplier = match getString(this, getKeyPropietario(item)) {
163159 case a: String =>
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let xBitCO2 = base58'39yw38hm342hiK43SqELTaZRkTWJoBc22XpxmsSiBrsN'
55
66 let startQty = 15000
77
88 let nomPrice = 10
99
10-let wvs = 100000000
10+let wvs = 10000000
1111
1212 let NONE = "none"
1313
1414 let OwnerPubKey = base58'6tctCnkRasXYuZWRpzZz9ogLri6aifJ19LTtx9uFQv67'
1515
1616 let issuer = Address(base58'3N5v9ndbkGSWy1SfeJSz94tYU8qVNTUJV2q')
17-
18-let igv = 18
19-
20-let currentPrice1BitCO2 = 880000000
2117
2218 let projectAddress = Address(base58'3N6iAhMV5VZ31hJSJT4e3DoaBoiHCPxbZNa')
2319
2420 func getNumberByKey (key) = {
2521 let num = match getInteger(this, key) {
2622 case a: Int =>
2723 a
2824 case _ =>
2925 0
3026 }
3127 num
3228 }
3329
3430
3531 func getStrByKey (key) = {
3632 let str = match getString(this, key) {
3733 case a: String =>
3834 a
3935 case _ =>
4036 NONE
4137 }
4238 str
4339 }
4440
4541
4642 func getKeyItem (supplier,title) = ("Reserva Forestal Amazónica" + toBase58String(sha256(toBytes((supplier + title)))))
4743
4844
4945 func getKeyPropietario (supplier) = (supplier + "Comunidad Achuar Kapawi del Ecuador")
5046
5147
5248 func getValuePropietario (supplier) = getStrByKey(getKeyPropietario(supplier))
5349
5450
5551 func getKeyProjectCode (projectCode) = "01-EC/SGT - ACHUARKAPAWI-01"
5652
5753
5854 func getKeyProjectName (projectName) = "Reserva Amazónica Achuar-Kapawi"
5955
6056
6157 func getValueProjectName (projectName) = getStrByKey(getKeyProjectName(projectName))
6258
6359
6460 func getKeyProjectEtapa (projectAddress) = "AchuarKapawi, I Etapa: PreICO"
6561
6662
6763 func getValueProjectEtapa (projectAddress) = getStrByKey(getKeyProjectEtapa(projectAddress))
6864
6965
7066 func getKeyProjectCountry (item) = "República del Ecuador"
7167
7268
7369 func getKeyProjectDev (item) = "Fundación Ecológica 'NASE'"
7470
7571
7672 func getKeyTokenStartQty (item) = "15000 tokens Bit-CO2"
7773
7874
7975 func getKeyNomTokenPrice (item) = "10.00 Euros"
8076
8177
8278 func getKeyMaxDescuento (item) = "12.00% del Precio Nominal de 1 token Bit-CO2"
8379
8480
8581 func getKeyMinTokenPrice (item) = "8.80 Euros por 1 token Bit-CO2"
8682
8783
8884 func getKeyUserItemCounter (user,item) = "Order_№:"
8985
9086
9187 func getValueUserItemCounter (user,item) = getNumberByKey(getKeyUserItemCounter(user, item))
9288
9389
9490 func getKeyUserName (item) = "Nombre del Usuario:"
9591
9692
9793 func getValueUserName (item) = getStrByKey(getKeyUserName(item))
9894
9995
10096 func getKeyUserDocument (item) = "№ de Documento Nacional de Identidad / DNI del Usuario:"
10197
10298
10399 func getValueUserDocument (item) = getStrByKey(getKeyUserDocument(item))
104100
105101
106102 func getKeyUserCountry (item) = "País de Residencia del Usuario:"
107103
108104
109105 func getValueUserCountry (item) = getStrByKey(getKeyUserCountry(item))
110106
111107
112108 func getKeyItemDiscountUser (item) = "Descuento elejido por el Usuario, %:"
113109
114110
115111 func getValueItemDiscountUser (item) = getNumberByKey(getKeyItemDiscountUser(item))
116112
117113
118114 func getKeyItemUserOrderQty (item) = "Orden de Compra, cantidad solicitada:"
119115
120116
121117 func getValueItemUserOrderQty (item) = getNumberByKey(getKeyItemUserOrderQty(item))
122118
123119
124120 func getKeySaldoTokenQtyStartEtapa (item) = "Tokens Ofertados en la presente etapa / Saldo:"
125121
126122
127123 func getValueSaldoTokenQtyStartEtapa (item) = getNumberByKey(getKeySaldoTokenQtyStartEtapa(item))
128124
129125
130126 func getKeyBalanceSupplierSellIncome (supplier) = "Ingresos por Venta Directa / BlockChain:"
131127
132128
133129 func getValueBalanceSupplierSellIncome (supplier) = getNumberByKey(getKeyBalanceSupplierSellIncome(supplier))
134130
135131
136132 @Callable(i)
137133 func deposit (amount) = {
138134 let pmt = extract(i.payment)
139135 if ((pmt.assetId != xBitCO2))
140136 then throw("Use cBitCO2 tokens only for the wallet deposit")
141137 else {
142138 let supplier = toBase58String(i.caller.bytes)
143139 let currentAmount = match getInteger(this, supplier) {
144140 case a: Int =>
145141 a
146142 case _ =>
147143 startQty
148144 }
149145 let newAmount = (currentAmount + pmt.amount)
150146 WriteSet([DataEntry(supplier, newAmount)])
151147 }
152148 }
153149
154150
155151
156152 @Callable(i)
157153 func purchase (item,userName,userCountry,userDiscount,orderQty) = {
158154 let pmt = extract(i.payment)
159155 if (isDefined(pmt.assetId))
160- then throw("you can adquire cBitCO2 only by Waves tokens")
156+ then throw("you can adquire xBitCO2 only by Waves tokens")
161157 else {
162158 let supplier = match getString(this, getKeyPropietario(item)) {
163159 case a: String =>
164160 a
165161 case _ =>
166162 NONE
167163 }
168164 let preIcoQty = match getInteger(this, getKeySaldoTokenQtyStartEtapa(item)) {
169165 case a: Int =>
170166 a
171167 case _ =>
172168 startQty
173169 }
174170 let balanceSupplier = match getInteger(this, getKeyBalanceSupplierSellIncome(supplier)) {
175171 case a: Int =>
176172 a
177173 case _ =>
178174 0
179175 }
180176 let userAddress = toBase58String(i.caller.bytes)
181177 let buyerTokenPrice = ((((100 - userDiscount) * nomPrice) * wvs) / 100)
182178 let totalAmount = (orderQty * buyerTokenPrice)
183179 if ((totalAmount > pmt.amount))
184180 then throw("Payment Amount can't be less than item Purchase Order")
185181 else if ((pmt.amount > totalAmount))
186182 then throw("Payment Amount can't be higher than item Purchase Order")
187183 else ScriptResult(WriteSet([DataEntry("Tipo de Proyecto:", "Reserva Forestal Amazónica"), DataEntry("Categoría:", "Emisión de CO2 Evitada"), DataEntry("País/Ubicación:", "República del Ecuador"), DataEntry("Nombre del Proyecto:", "Reserva Amazónica Achuar-Kapawi"), DataEntry("Código:", "01-EC/SGT - ACHUARKAPAWI-01"), DataEntry("Emisor:", "Comunidad Achuar Kapawi"), DataEntry("Desarrollador/Responsable:", "Fundación Ecológica 'NASE'"), DataEntry("Etapas del Proyecto, Pre-ICO:", "2 Etapas"), DataEntry("Etapas del Proyecto, en Ejecución:", "A Definir, Fundación REDD"), DataEntry("Cantidad Total de Tokens a Emitir, I y II Etapa Pre-ICO:", "305693 tokens Bit-CO2"), DataEntry("Precio Nominal, 1 token Bit-CO2:", "10.00 Euros"), DataEntry("Máximo Descuento ofrecido, I Etapa:", "12.00 %"), DataEntry(getKeyUserItemCounter(userAddress, item), (getValueUserItemCounter(userAddress, item) + 1)), DataEntry("Total Tokens Emitidos, I Etapa Pre-ICO", startQty), DataEntry(getKeyUserName(item), userName), DataEntry(getKeyUserCountry(item), userCountry), DataEntry(getKeyItemDiscountUser(item), userDiscount), DataEntry(getKeyItemUserOrderQty(item), orderQty), DataEntry("tokenPrice/Supplier, wvs", (nomPrice * wvs)), DataEntry("tokenPrice/User, wvs", buyerTokenPrice), DataEntry("investedAmount/User, wvs", totalAmount), DataEntry("purchaseOrder/Status:", "¡Adquisición Confirmada!"), DataEntry(getKeySaldoTokenQtyStartEtapa(item), (preIcoQty - orderQty)), DataEntry(getKeyBalanceSupplierSellIncome(supplier), (balanceSupplier + pmt.amount)), DataEntry("Cuenta del Proyecto en BlockChain:", supplier), DataEntry("Cuenta del Proyecto en BlockChain:", base58'3N6iAhMV5VZ31hJSJT4e3DoaBoiHCPxbZNa')]), TransferSet([ScriptTransfer(addressFromStringValue(userAddress), orderQty, xBitCO2)]))
188184 }
189185 }
190186
191187
192188 @Verifier(tx)
193189 func verify () = match tx {
194190 case t: SetScriptTransaction =>
195191 sigVerify(tx.bodyBytes, tx.proofs[0], OwnerPubKey)
196192 case d: DataTransaction =>
197193 true
198194 case tx: TransferTransaction =>
199195 let recipient = toBase58String(addressFromRecipient(tx.recipient).bytes)
200196 if ((tx.sender == issuer))
201197 then true
202198 else throw("You can't transferred this token")
203199 case _ =>
204200 false
205201 }
206202

github/deemru/w8io/873ac7e 
34.93 ms