tx · 2MvTScTSrxX5HeyNXZrqNdvfRMeeYKcAL4pd5BdD5hgm

3MwrbksXinhUhJ9ewTxuxiPfKVsTx9GCbYC:  -0.01400000 Waves

2022.02.16 18:05 [1926334] smart account 3MwrbksXinhUhJ9ewTxuxiPfKVsTx9GCbYC > SELF 0.00000000 Waves

{ "type": 13, "id": "2MvTScTSrxX5HeyNXZrqNdvfRMeeYKcAL4pd5BdD5hgm", "fee": 1400000, "feeAssetId": null, "timestamp": 1645023991845, "version": 2, "chainId": 84, "sender": "3MwrbksXinhUhJ9ewTxuxiPfKVsTx9GCbYC", "senderPublicKey": "2Yr3nmcvFCJn3eLnhcLTwY36srATJViCmv9AMCiuuNMd", "proofs": [ "4WRftwuuzWfxyEP4H68NrPYzoQ8JtuST6k39reoUfuv57cH4c1GiHQpov8w5y6o5pjRRzMqUn4vEM2PBCXjc1cHJ" ], "script": "base64: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", "height": 1926334, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 2cdqFvDb8MF7bwshbGG3uNSdqbzUfHCM4KqBxdBwvKNF Next: FvAb3RQ5GPrinQjyuD1SbFcmFtwt9HSczTrjQU94CdUs Diff:
OldNewDifferences
44
55
66 @Callable(i)
7-func customerBuyA (amount) = {
7+func customerBuyProduct (product) = {
88 let pmt = extract(i.payment)
99 if (isDefined(pmt.assetId))
1010 then throw("Can use Waves only at the moment")
1111 else {
1212 let customerAddress = toBase58String(i.caller.bytes)
13- let price = match getInteger(this, "item_A_coupon_price") {
13+ let price = match getInteger(this, (product + "_coupon_price")) {
1414 case a: Int =>
1515 a
1616 case _ =>
1717 0
1818 }
19- if ((price > amount))
19+ if ((price > pmt.amount))
2020 then throw("Purchase amount cannot be less than item price")
21- else if ((amount > price))
21+ else if ((pmt.amount > price))
2222 then throw("Purchase amount cannot be higher than item price")
23- else WriteSet([DataEntry(("status:purchase_item_A_customer_" + customerAddress), "confirmed"), DataEntry(("price:purchase_item_A_customer_" + customerAddress), price)])
23+ else WriteSet([DataEntry(((("status:purchase_" + product) + "_customer_") + customerAddress), "confirmed"), DataEntry(((("price:purchase_" + product) + "_customer_") + customerAddress), price)])
2424 }
2525 }
2626
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44
55
66 @Callable(i)
7-func customerBuyA (amount) = {
7+func customerBuyProduct (product) = {
88 let pmt = extract(i.payment)
99 if (isDefined(pmt.assetId))
1010 then throw("Can use Waves only at the moment")
1111 else {
1212 let customerAddress = toBase58String(i.caller.bytes)
13- let price = match getInteger(this, "item_A_coupon_price") {
13+ let price = match getInteger(this, (product + "_coupon_price")) {
1414 case a: Int =>
1515 a
1616 case _ =>
1717 0
1818 }
19- if ((price > amount))
19+ if ((price > pmt.amount))
2020 then throw("Purchase amount cannot be less than item price")
21- else if ((amount > price))
21+ else if ((pmt.amount > price))
2222 then throw("Purchase amount cannot be higher than item price")
23- else WriteSet([DataEntry(("status:purchase_item_A_customer_" + customerAddress), "confirmed"), DataEntry(("price:purchase_item_A_customer_" + customerAddress), price)])
23+ else WriteSet([DataEntry(((("status:purchase_" + product) + "_customer_") + customerAddress), "confirmed"), DataEntry(((("price:purchase_" + product) + "_customer_") + customerAddress), price)])
2424 }
2525 }
2626
2727
2828
2929 @Callable(i)
3030 func customerBuyB (amount) = {
3131 let pmt = extract(i.payment)
3232 if (isDefined(pmt.assetId))
3333 then throw("Can use Waves only at the moment")
3434 else {
3535 let customerAddress = toBase58String(i.caller.bytes)
3636 let price = match getInteger(this, "item_B_coupon_price") {
3737 case a: Int =>
3838 a
3939 case _ =>
4040 0
4141 }
4242 if ((price > amount))
4343 then throw("Purchase amount cannot be less than item price")
4444 else if ((amount > price))
4545 then throw("Purchase amount cannot be higher than item price")
4646 else WriteSet([DataEntry(("status:purchase_item_B_customer_" + customerAddress), "confirmed"), DataEntry(("price:purchase_item_B_customer_" + customerAddress), price)])
4747 }
4848 }
4949
5050
5151 @Verifier(tx)
5252 func verify () = true
5353

github/deemru/w8io/03bedc9 
39.13 ms