tx · Gorpw2X1q6e3NPPmBVnEsLuquv28jVLo5rY6y5sY8VpE 3NB412VeXkiWqruYpeEEWkm364Xc9MskZ2k: -0.01400000 Waves 2020.08.18 15:34 [1138312] smart account 3NB412VeXkiWqruYpeEEWkm364Xc9MskZ2k > SELF 0.00000000 Waves
{ "type": 13, "id": "Gorpw2X1q6e3NPPmBVnEsLuquv28jVLo5rY6y5sY8VpE", "fee": 1400000, "feeAssetId": null, "timestamp": 1597754040076, "version": 1, "sender": "3NB412VeXkiWqruYpeEEWkm364Xc9MskZ2k", "senderPublicKey": "7FQufF9XhJBsTdvrn67eWxYT7ZxDwzjuXAprkWiHrS3Y", "proofs": [ "4exBwGb3R6Yz6pHFxLXzkmKSPq3y2uov86FaRwiUqEfVL1XvJxZ9JzQSEwfVVBDGeQMjxCjkh1qdiXJbnCcx3sH8" ], "script": "base64:AAIDAAAAAAAAABcIARIECgIICBIHCgUICAgIARIECgIIAQAAACoAAAAAB3hCaXRDTzIBAAAAICAEZKaqA3sNb6aq+pclWLOWiXpTDP/vusZoh2yDVNyNAAAAAAhzdGFydFF0eQAAAAAAAASqHQAAAAAMRmlyc3RGYXNlUXR5AAAAAAAAAHnZAAAAAA1TZWNvbmRGYXNlUXR5AAAAAAAABDBEAAAAAAhub21QcmljZQAAAAAAAAAAAQAAAAADd3ZzAAAAAAAF9eEAAAAAABBzdXBwbGllckRpc2NvdW50AAAAAAAAAAAMAAAAAAROT05FAgAAAARub25lAAAAAAtPd25lclB1YktleQEAAAAgXNdJIM57S2At8HU18j+g+Sd9q4Ac8pt9JaEK2Onv9h8AAAAABmlzc3VlcgkBAAAAB0FkZHJlc3MAAAABAQAAACAvfl8GuDGccyaiBLhG+5I/bitn0ojPaO02SQ7jH5LcEQAAAAAEZUFkZAkBAAAAB0FkZHJlc3MAAAABAQAAACDpc36Tei0iAGkRGZLM03QiZonvwRKoKxR9Z8j3EmfoRAAAAAAEcEFkZAkBAAAAB0FkZHJlc3MAAAABAQAAABoBVOfaAU+duF2N3KEjaN5+JgyNthefOf5YvQAAAAADaWd2AAAAAAAAAAASAAAAAANjUEIAAAAAAAAAAFgAAAAAA3VJUAAAAAAAAAAABwAAAAADcElQAAAAAAAAAAAKAAAAAANzSVAAAAAAAAAAAAEAAAAAA2VJUAAAAAAAAAAAAQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABAAAAA2tleQQAAAADbnVtBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMFAAAAA2tleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABQAAAANudW0BAAAAC2dldFN0ckJ5S2V5AAAAAQAAAANrZXkEAAAAA3N0cgQAAAAHJG1hdGNoMAkABB0AAAACBQAAAAR0aGlzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQUAAAAETk9ORQUAAAADc3RyAQAAABJnZXRLZXlJdGVtU3VwcGxpZXIAAAABAAAACHN1cHBsaWVyCQABLAAAAAIFAAAACHN1cHBsaWVyAgAAABhCaXQtQ08yIFNob3AsIExpbWEtUGVyw7oBAAAACmdldEtleUl0ZW0AAAACAAAACHN1cHBsaWVyAAAABGl0ZW0JAAEsAAAAAgkAASwAAAACAgAAAA5Qcm9kdWN0by1HVFM6IAIAAAABIAkAAlgAAAABCQAB9wAAAAEJAAGbAAAAAQkAASwAAAACBQAAAAhzdXBwbGllcgUAAAAEaXRlbQEAAAAYZ2V0S2V5VXNlckl0ZW1HdHNDb3VudGVyAAAAAgAAAAR1c2VyAAAABGl0ZW0CAAAACk9yZGVyX+KEljoBAAAAGmdldFZhbHVlVXNlckl0ZW1HdHNDb3VudGVyAAAAAgAAAAR1c2VyAAAABGl0ZW0JAQAAAA5nZXROdW1iZXJCeUtleQAAAAEJAQAAABhnZXRLZXlVc2VySXRlbUd0c0NvdW50ZXIAAAACBQAAAAR1c2VyBQAAAARpdGVtAQAAAA5nZXRLZXlJdGVtTmFtZQAAAAEAAAAEaXRlbQIAAAAYQ2F0ZWdvcsOtYSBkZWwgUHJvZHVjdG86AQAAABBnZXRWYWx1ZUl0ZW1OYW1lAAAAAQAAAARpdGVtCQEAAAALZ2V0U3RyQnlLZXkAAAABCQEAAAAOZ2V0S2V5SXRlbU5hbWUAAAABBQAAAARpdGVtAQAAAA5nZXRLZXlVc2VyTmFtZQAAAAEAAAAEaXRlbQIAAAATTm9tYnJlIGRlbCBVc3VhcmlvOgEAAAAQZ2V0VmFsdWVVc2VyTmFtZQAAAAEAAAAEaXRlbQkBAAAAC2dldFN0ckJ5S2V5AAAAAQkBAAAADmdldEtleVVzZXJOYW1lAAAAAQUAAAAEaXRlbQEAAAASZ2V0S2V5VXNlckRvY3VtZW50AAAAAQAAAARpdGVtAgAAACPihJYgZGUgRG9jdW1lbnRvIC8gRE5JIGRlbCBVc3VhcmlvOgEAAAAUZ2V0VmFsdWVVc2VyRG9jdW1lbnQAAAABAAAABGl0ZW0JAQAAAAtnZXRTdHJCeUtleQAAAAEJAQAAABJnZXRLZXlVc2VyRG9jdW1lbnQAAAABBQAAAARpdGVtAQAAAB1nZXRLZXlTYWxkb1Rva2VuUXR5U3RhcnRFdGFwYQAAAAEAAAAEaXRlbQIAAAAuVG9rZW5zIE9mZXJ0YWRvcyBlbiBsYSBwcmVzZW50ZSBldGFwYSAvIFNhbGRvOgEAAAAfZ2V0VmFsdWVTYWxkb1Rva2VuUXR5U3RhcnRFdGFwYQAAAAEAAAAEaXRlbQkBAAAADmdldE51bWJlckJ5S2V5AAAAAQkBAAAAHWdldEtleVNhbGRvVG9rZW5RdHlTdGFydEV0YXBhAAAAAQUAAAAEaXRlbQEAAAAYZ2V0S2V5QmFsYW5jZVF0eVN1cHBsaWVyAAAAAQAAAARpdGVtAgAAABpCYWxhbmNlL1NhbGRvIEdUUywgdG9rZW5zOgEAAAAaZ2V0VmFsdWVCYWxhbmNlUXR5U3VwcGxpZXIAAAABAAAABGl0ZW0JAQAAAA5nZXROdW1iZXJCeUtleQAAAAEJAQAAABhnZXRLZXlCYWxhbmNlUXR5U3VwcGxpZXIAAAABBQAAAARpdGVtAQAAABVnZXRLZXlCYWxhbmNlU3VwcGxpZXIAAAABAAAACHN1cHBsaWVyAgAAABZJbmdyZXNvcyBwb3IgVmVudGFHVFM6AQAAABdnZXRWYWx1ZUJhbGFuY2VTdXBwbGllcgAAAAEAAAAIc3VwcGxpZXIJAQAAAA5nZXROdW1iZXJCeUtleQAAAAEJAQAAABVnZXRLZXlCYWxhbmNlU3VwcGxpZXIAAAABBQAAAAhzdXBwbGllcgEAAAAIZ2V0S2V5VUkAAAABAAAABGl0ZW0CAAAACFVJLF93dnM6AQAAAApnZXRWYWx1ZVVJAAAAAQAAAARpdGVtCQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABCQEAAAAIZ2V0S2V5VUkAAAABBQAAAARpdGVtAQAAAAhnZXRLZXlQSQAAAAEAAAAEaXRlbQIAAAAGUEksXyU6AQAAAApnZXRWYWx1ZVBJAAAAAQAAAARpdGVtCQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABCQEAAAAIZ2V0S2V5UEkAAAABBQAAAARpdGVtAQAAAAhnZXRLZXlTSQAAAAEAAAAEaXRlbQIAAAAGU0ksXyU6AQAAAApnZXRWYWx1ZVNJAAAAAQAAAARpdGVtCQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABCQEAAAAIZ2V0S2V5U0kAAAABBQAAAARpdGVtAAAAAwAAAAFpAQAAAAdkZXBvc2l0AAAA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", "chainId": 84, "height": 1138312, "spentComplexity": 0 } View: original | compacted Prev: Cqw6iT7EppMQNJKfkYv5RDVG91hTRuSLvBa3R9MJ8piX Next: FYVsBvUck9xhb6rerwM2MuAVokJRp4NgdUEzu6D5fNuA Diff:
Old | New | Differences | |
---|---|---|---|
157 | 157 | ||
158 | 158 | ||
159 | 159 | @Callable(Y) | |
160 | - | func purchaseGTS (C,ae,af,ag) = { | |
160 | + | func purchaseGTS (C,ae,af,ag,ah) = { | |
161 | 161 | let ab = extract(Y.payment) | |
162 | 162 | if (isDefined(ab.assetId)) | |
163 | 163 | then throw("El Precio de los aves.") | |
171 | 171 | } | |
172 | 172 | else h | |
173 | 173 | } | |
174 | - | let | |
174 | + | let ai = { | |
175 | 175 | let v = getInteger(this, O(C)) | |
176 | 176 | if ($isInstanceOf(v, "Int")) | |
177 | 177 | then { | |
180 | 180 | } | |
181 | 181 | else d | |
182 | 182 | } | |
183 | - | let | |
183 | + | let aj = { | |
184 | 184 | let v = getInteger(this, Q(A)) | |
185 | 185 | if ($isInstanceOf(v, "Int")) | |
186 | 186 | then { | |
189 | 189 | } | |
190 | 190 | else 0 | |
191 | 191 | } | |
192 | - | let | |
193 | - | let | |
194 | - | let | |
195 | - | let | |
196 | - | let | |
197 | - | let | |
198 | - | let | |
199 | - | let | |
200 | - | let | |
201 | - | let | |
202 | - | if (( | |
192 | + | let ak = toBase58String(Y.caller.bytes) | |
193 | + | let al = (ah - ((m * ah) / 100)) | |
194 | + | let am = ((al * o) / 100) | |
195 | + | let an = (am / n) | |
196 | + | let ao = ((al * p) / 100) | |
197 | + | let ap = ((al * r) / 100) | |
198 | + | let aq = ((al * r) / (n * 100)) | |
199 | + | let ar = ((ah - ao) - ap) | |
200 | + | let as = ((al * q) / (n * 100)) | |
201 | + | let at = ((al * 11) / (n * 100)) | |
202 | + | if ((ah > ab.amount)) | |
203 | 203 | then throw("Payment Amount can't be less than item Purchase Order") | |
204 | - | else if ((ab.amount > | |
204 | + | else if ((ab.amount > ah)) | |
205 | 205 | then throw("Payment Amount can't be higher than item Purchase Order") | |
206 | - | else ScriptResult(WriteSet([DataEntry(D( | |
206 | + | else ScriptResult(WriteSet([DataEntry(D(ak, C), (F(ak, C) + 1)), DataEntry(B(A, C), C), DataEntry(G(C), ae), DataEntry(I(C), af), DataEntry(K(C), ag), DataEntry("Payment_amount,_wvs", ah), DataEntry("Imp, %", m), DataEntry("STtl, wvs", al), DataEntry("CP 1 B, wvs", (n * 1000000)), DataEntry(S(C), am), DataEntry("UBI", an), DataEntry(U(C), ao), DataEntry("EcSys", aq), DataEntry(W(C), ar), DataEntry("SBI: b", as), DataEntry(("Order_Status:_" + ak), "Adquisición Confirmada!"), DataEntry("QporVentasGTS", at), DataEntry(O(A), (d - at)), DataEntry(Q(A), (aj + ab.amount))]), TransferSet([ScriptTransfer(Y.caller, an, a), ScriptTransfer(l, ao, unit), ScriptTransfer(j, ar, unit), ScriptTransfer(j, as, a), ScriptTransfer(k, ap, unit), ScriptTransfer(k, aq, a)])) | |
207 | 207 | } | |
208 | 208 | } | |
209 | 209 | ||
210 | 210 | ||
211 | 211 | ||
212 | 212 | @Callable(Y) | |
213 | - | func withdraw (C, | |
214 | - | let | |
213 | + | func withdraw (C,au) = { | |
214 | + | let ak = toBase58String(Y.caller.bytes) | |
215 | 215 | let A = { | |
216 | 216 | let v = getString(this, z(C)) | |
217 | 217 | if ($isInstanceOf(v, "String")) | |
221 | 221 | } | |
222 | 222 | else h | |
223 | 223 | } | |
224 | - | let | |
224 | + | let ai = { | |
225 | 225 | let v = getInteger(this, O(C)) | |
226 | 226 | if ($isInstanceOf(v, "Int")) | |
227 | 227 | then { | |
230 | 230 | } | |
231 | 231 | else b | |
232 | 232 | } | |
233 | - | let ad = ( | |
234 | - | if ((0 > | |
233 | + | let ad = (ai - au) | |
234 | + | if ((0 > au)) | |
235 | 235 | then throw("El balance de retiro no puede ser negativo!") | |
236 | 236 | else if ((0 >= ad)) | |
237 | 237 | then throw("Ooppss.. Insuficiente balance!") | |
238 | - | else ScriptResult(WriteSet([DataEntry(C, ad)]), TransferSet([ScriptTransfer(Y.caller, | |
238 | + | else ScriptResult(WriteSet([DataEntry(C, ad)]), TransferSet([ScriptTransfer(Y.caller, au, a)])) | |
239 | 239 | } | |
240 | 240 | ||
241 | 241 | ||
242 | - | @Verifier( | |
243 | - | func | |
244 | - | let v = | |
242 | + | @Verifier(av) | |
243 | + | func aw () = { | |
244 | + | let v = av | |
245 | 245 | if ($isInstanceOf(v, "SetScriptTransaction")) | |
246 | 246 | then { | |
247 | - | let | |
248 | - | sigVerify( | |
247 | + | let ax = v | |
248 | + | sigVerify(av.bodyBytes, av.proofs[0], i) | |
249 | 249 | } | |
250 | 250 | else if (if ($isInstanceOf(v, "DataTransaction")) | |
251 | 251 | then true | |
252 | 252 | else $isInstanceOf(v, "ReissueTransaction")) | |
253 | 253 | then { | |
254 | - | let | |
254 | + | let ay = v | |
255 | 255 | true | |
256 | 256 | } | |
257 | 257 | else if ($isInstanceOf(v, "TransferTransaction")) | |
258 | 258 | then { | |
259 | - | let | |
259 | + | let av = v | |
260 | 260 | true | |
261 | 261 | } | |
262 | 262 | else if ($isInstanceOf(v, "ExchangeTransaction")) | |
263 | 263 | then { | |
264 | - | let | |
265 | - | let | |
264 | + | let av = v | |
265 | + | let az = if (!(isDefined(av.sellOrder.assetPair.priceAsset))) | |
266 | 266 | then true | |
267 | - | else !(isDefined( | |
268 | - | | |
267 | + | else !(isDefined(av.sellOrder.assetPair.amountAsset)) | |
268 | + | az | |
269 | 269 | } | |
270 | 270 | else false | |
271 | 271 | } |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 3 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let a = base58'39yw38hm342hiK43SqELTaZRkTWJoBc22XpxmsSiBrsN' | |
5 | 5 | ||
6 | 6 | let b = 305693 | |
7 | 7 | ||
8 | 8 | let c = 31193 | |
9 | 9 | ||
10 | 10 | let d = 274500 | |
11 | 11 | ||
12 | 12 | let e = 1 | |
13 | 13 | ||
14 | 14 | let f = 100000000 | |
15 | 15 | ||
16 | 16 | let g = 12 | |
17 | 17 | ||
18 | 18 | let h = "none" | |
19 | 19 | ||
20 | 20 | let i = base58'7FQufF9XhJBsTdvrn67eWxYT7ZxDwzjuXAprkWiHrS3Y' | |
21 | 21 | ||
22 | 22 | let j = Address(base58'4CPvf7HYx8YmgeJPYeXhhC76cvGzV16vxvPwZCxVH8b2') | |
23 | 23 | ||
24 | 24 | let k = Address(base58'GiJ8yN72wG35H2Cg1qYERtqFNbZuWav2QskRKnDjggZH') | |
25 | 25 | ||
26 | 26 | let l = Address(base58'3NB412VeXkiWqruYpeEEWkm364Xc9MskZ2k') | |
27 | 27 | ||
28 | 28 | let m = 18 | |
29 | 29 | ||
30 | 30 | let n = 88 | |
31 | 31 | ||
32 | 32 | let o = 7 | |
33 | 33 | ||
34 | 34 | let p = 10 | |
35 | 35 | ||
36 | 36 | let q = 1 | |
37 | 37 | ||
38 | 38 | let r = 1 | |
39 | 39 | ||
40 | 40 | func s (t) = { | |
41 | 41 | let u = { | |
42 | 42 | let v = getInteger(this, t) | |
43 | 43 | if ($isInstanceOf(v, "Int")) | |
44 | 44 | then { | |
45 | 45 | let w = v | |
46 | 46 | w | |
47 | 47 | } | |
48 | 48 | else 0 | |
49 | 49 | } | |
50 | 50 | u | |
51 | 51 | } | |
52 | 52 | ||
53 | 53 | ||
54 | 54 | func x (t) = { | |
55 | 55 | let y = { | |
56 | 56 | let v = getString(this, t) | |
57 | 57 | if ($isInstanceOf(v, "String")) | |
58 | 58 | then { | |
59 | 59 | let w = v | |
60 | 60 | w | |
61 | 61 | } | |
62 | 62 | else h | |
63 | 63 | } | |
64 | 64 | y | |
65 | 65 | } | |
66 | 66 | ||
67 | 67 | ||
68 | 68 | func z (A) = (A + "Bit-CO2 Shop, Lima-Perú") | |
69 | 69 | ||
70 | 70 | ||
71 | 71 | func B (A,C) = (("Producto-GTS: " + " ") + toBase58String(sha256(toBytes((A + C))))) | |
72 | 72 | ||
73 | 73 | ||
74 | 74 | func D (E,C) = "Order_№:" | |
75 | 75 | ||
76 | 76 | ||
77 | 77 | func F (E,C) = s(D(E, C)) | |
78 | 78 | ||
79 | 79 | ||
80 | 80 | func G (C) = "Categoría del Producto:" | |
81 | 81 | ||
82 | 82 | ||
83 | 83 | func H (C) = x(G(C)) | |
84 | 84 | ||
85 | 85 | ||
86 | 86 | func I (C) = "Nombre del Usuario:" | |
87 | 87 | ||
88 | 88 | ||
89 | 89 | func J (C) = x(I(C)) | |
90 | 90 | ||
91 | 91 | ||
92 | 92 | func K (C) = "№ de Documento / DNI del Usuario:" | |
93 | 93 | ||
94 | 94 | ||
95 | 95 | func L (C) = x(K(C)) | |
96 | 96 | ||
97 | 97 | ||
98 | 98 | func M (C) = "Tokens Ofertados en la presente etapa / Saldo:" | |
99 | 99 | ||
100 | 100 | ||
101 | 101 | func N (C) = s(M(C)) | |
102 | 102 | ||
103 | 103 | ||
104 | 104 | func O (C) = "Balance/Saldo GTS, tokens:" | |
105 | 105 | ||
106 | 106 | ||
107 | 107 | func P (C) = s(O(C)) | |
108 | 108 | ||
109 | 109 | ||
110 | 110 | func Q (A) = "Ingresos por VentaGTS:" | |
111 | 111 | ||
112 | 112 | ||
113 | 113 | func R (A) = s(Q(A)) | |
114 | 114 | ||
115 | 115 | ||
116 | 116 | func S (C) = "UI,_wvs:" | |
117 | 117 | ||
118 | 118 | ||
119 | 119 | func T (C) = s(S(C)) | |
120 | 120 | ||
121 | 121 | ||
122 | 122 | func U (C) = "PI,_%:" | |
123 | 123 | ||
124 | 124 | ||
125 | 125 | func V (C) = s(U(C)) | |
126 | 126 | ||
127 | 127 | ||
128 | 128 | func W (C) = "SI,_%:" | |
129 | 129 | ||
130 | 130 | ||
131 | 131 | func X (C) = s(W(C)) | |
132 | 132 | ||
133 | 133 | ||
134 | 134 | @Callable(Y) | |
135 | 135 | func deposit (Z,aa) = { | |
136 | 136 | let ab = extract(Y.payment) | |
137 | 137 | if ((ab.assetId != a)) | |
138 | 138 | then throw("deposito permitido solo en xBitCO2 tokens") | |
139 | 139 | else { | |
140 | 140 | let A = toBase58String(Y.caller.bytes) | |
141 | 141 | let ac = { | |
142 | 142 | let v = getInteger(this, A) | |
143 | 143 | if ($isInstanceOf(v, "Int")) | |
144 | 144 | then { | |
145 | 145 | let w = v | |
146 | 146 | w | |
147 | 147 | } | |
148 | 148 | else b | |
149 | 149 | } | |
150 | 150 | let ad = (ac + ab.amount) | |
151 | 151 | if ((0 >= ad)) | |
152 | 152 | then throw("No hay xBitCO2 en su balance") | |
153 | 153 | else WriteSet([DataEntry(A, ad)]) | |
154 | 154 | } | |
155 | 155 | } | |
156 | 156 | ||
157 | 157 | ||
158 | 158 | ||
159 | 159 | @Callable(Y) | |
160 | - | func purchaseGTS (C,ae,af,ag) = { | |
160 | + | func purchaseGTS (C,ae,af,ag,ah) = { | |
161 | 161 | let ab = extract(Y.payment) | |
162 | 162 | if (isDefined(ab.assetId)) | |
163 | 163 | then throw("El Precio de los aves.") | |
164 | 164 | else { | |
165 | 165 | let A = { | |
166 | 166 | let v = getString(this, z(C)) | |
167 | 167 | if ($isInstanceOf(v, "String")) | |
168 | 168 | then { | |
169 | 169 | let w = v | |
170 | 170 | w | |
171 | 171 | } | |
172 | 172 | else h | |
173 | 173 | } | |
174 | - | let | |
174 | + | let ai = { | |
175 | 175 | let v = getInteger(this, O(C)) | |
176 | 176 | if ($isInstanceOf(v, "Int")) | |
177 | 177 | then { | |
178 | 178 | let w = v | |
179 | 179 | w | |
180 | 180 | } | |
181 | 181 | else d | |
182 | 182 | } | |
183 | - | let | |
183 | + | let aj = { | |
184 | 184 | let v = getInteger(this, Q(A)) | |
185 | 185 | if ($isInstanceOf(v, "Int")) | |
186 | 186 | then { | |
187 | 187 | let w = v | |
188 | 188 | w | |
189 | 189 | } | |
190 | 190 | else 0 | |
191 | 191 | } | |
192 | - | let | |
193 | - | let | |
194 | - | let | |
195 | - | let | |
196 | - | let | |
197 | - | let | |
198 | - | let | |
199 | - | let | |
200 | - | let | |
201 | - | let | |
202 | - | if (( | |
192 | + | let ak = toBase58String(Y.caller.bytes) | |
193 | + | let al = (ah - ((m * ah) / 100)) | |
194 | + | let am = ((al * o) / 100) | |
195 | + | let an = (am / n) | |
196 | + | let ao = ((al * p) / 100) | |
197 | + | let ap = ((al * r) / 100) | |
198 | + | let aq = ((al * r) / (n * 100)) | |
199 | + | let ar = ((ah - ao) - ap) | |
200 | + | let as = ((al * q) / (n * 100)) | |
201 | + | let at = ((al * 11) / (n * 100)) | |
202 | + | if ((ah > ab.amount)) | |
203 | 203 | then throw("Payment Amount can't be less than item Purchase Order") | |
204 | - | else if ((ab.amount > | |
204 | + | else if ((ab.amount > ah)) | |
205 | 205 | then throw("Payment Amount can't be higher than item Purchase Order") | |
206 | - | else ScriptResult(WriteSet([DataEntry(D( | |
206 | + | else ScriptResult(WriteSet([DataEntry(D(ak, C), (F(ak, C) + 1)), DataEntry(B(A, C), C), DataEntry(G(C), ae), DataEntry(I(C), af), DataEntry(K(C), ag), DataEntry("Payment_amount,_wvs", ah), DataEntry("Imp, %", m), DataEntry("STtl, wvs", al), DataEntry("CP 1 B, wvs", (n * 1000000)), DataEntry(S(C), am), DataEntry("UBI", an), DataEntry(U(C), ao), DataEntry("EcSys", aq), DataEntry(W(C), ar), DataEntry("SBI: b", as), DataEntry(("Order_Status:_" + ak), "Adquisición Confirmada!"), DataEntry("QporVentasGTS", at), DataEntry(O(A), (d - at)), DataEntry(Q(A), (aj + ab.amount))]), TransferSet([ScriptTransfer(Y.caller, an, a), ScriptTransfer(l, ao, unit), ScriptTransfer(j, ar, unit), ScriptTransfer(j, as, a), ScriptTransfer(k, ap, unit), ScriptTransfer(k, aq, a)])) | |
207 | 207 | } | |
208 | 208 | } | |
209 | 209 | ||
210 | 210 | ||
211 | 211 | ||
212 | 212 | @Callable(Y) | |
213 | - | func withdraw (C, | |
214 | - | let | |
213 | + | func withdraw (C,au) = { | |
214 | + | let ak = toBase58String(Y.caller.bytes) | |
215 | 215 | let A = { | |
216 | 216 | let v = getString(this, z(C)) | |
217 | 217 | if ($isInstanceOf(v, "String")) | |
218 | 218 | then { | |
219 | 219 | let w = v | |
220 | 220 | w | |
221 | 221 | } | |
222 | 222 | else h | |
223 | 223 | } | |
224 | - | let | |
224 | + | let ai = { | |
225 | 225 | let v = getInteger(this, O(C)) | |
226 | 226 | if ($isInstanceOf(v, "Int")) | |
227 | 227 | then { | |
228 | 228 | let w = v | |
229 | 229 | w | |
230 | 230 | } | |
231 | 231 | else b | |
232 | 232 | } | |
233 | - | let ad = ( | |
234 | - | if ((0 > | |
233 | + | let ad = (ai - au) | |
234 | + | if ((0 > au)) | |
235 | 235 | then throw("El balance de retiro no puede ser negativo!") | |
236 | 236 | else if ((0 >= ad)) | |
237 | 237 | then throw("Ooppss.. Insuficiente balance!") | |
238 | - | else ScriptResult(WriteSet([DataEntry(C, ad)]), TransferSet([ScriptTransfer(Y.caller, | |
238 | + | else ScriptResult(WriteSet([DataEntry(C, ad)]), TransferSet([ScriptTransfer(Y.caller, au, a)])) | |
239 | 239 | } | |
240 | 240 | ||
241 | 241 | ||
242 | - | @Verifier( | |
243 | - | func | |
244 | - | let v = | |
242 | + | @Verifier(av) | |
243 | + | func aw () = { | |
244 | + | let v = av | |
245 | 245 | if ($isInstanceOf(v, "SetScriptTransaction")) | |
246 | 246 | then { | |
247 | - | let | |
248 | - | sigVerify( | |
247 | + | let ax = v | |
248 | + | sigVerify(av.bodyBytes, av.proofs[0], i) | |
249 | 249 | } | |
250 | 250 | else if (if ($isInstanceOf(v, "DataTransaction")) | |
251 | 251 | then true | |
252 | 252 | else $isInstanceOf(v, "ReissueTransaction")) | |
253 | 253 | then { | |
254 | - | let | |
254 | + | let ay = v | |
255 | 255 | true | |
256 | 256 | } | |
257 | 257 | else if ($isInstanceOf(v, "TransferTransaction")) | |
258 | 258 | then { | |
259 | - | let | |
259 | + | let av = v | |
260 | 260 | true | |
261 | 261 | } | |
262 | 262 | else if ($isInstanceOf(v, "ExchangeTransaction")) | |
263 | 263 | then { | |
264 | - | let | |
265 | - | let | |
264 | + | let av = v | |
265 | + | let az = if (!(isDefined(av.sellOrder.assetPair.priceAsset))) | |
266 | 266 | then true | |
267 | - | else !(isDefined( | |
268 | - | | |
267 | + | else !(isDefined(av.sellOrder.assetPair.amountAsset)) | |
268 | + | az | |
269 | 269 | } | |
270 | 270 | else false | |
271 | 271 | } | |
272 | 272 |
github/deemru/w8io/169f3d6 105.96 ms ◑