Skip to content

Commit

Permalink
Add/remove coupons
Browse files Browse the repository at this point in the history
  • Loading branch information
backwardstruck committed Oct 1, 2024
1 parent 96003be commit bf21e9b
Show file tree
Hide file tree
Showing 3 changed files with 48 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,7 @@ import com.woocommerce.android.ui.orders.creation.giftcards.OrderCreateEditGiftC
import com.woocommerce.android.ui.orders.creation.navigation.OrderCreateEditNavigationTarget
import com.woocommerce.android.ui.orders.creation.navigation.OrderCreateEditNavigator
import com.woocommerce.android.ui.orders.creation.product.discount.OrderCreateEditProductDiscountFragment.Companion.KEY_PRODUCT_DISCOUNT_RESULT
import com.woocommerce.android.ui.orders.creation.shipping.CouponFormSection
import com.woocommerce.android.ui.orders.creation.shipping.OrderShippingFragment.Companion.REMOVE_SHIPPING_RESULT
import com.woocommerce.android.ui.orders.creation.shipping.OrderShippingFragment.Companion.UPDATE_SHIPPING_RESULT
import com.woocommerce.android.ui.orders.creation.shipping.ShippingLineFormSection
Expand Down Expand Up @@ -464,8 +465,11 @@ class OrderCreateEditFormFragment :
setContent {
viewModel.orderDraft.observeAsState().value?.couponLines?.let { couponLines ->
WooThemeWithBackground {
Text(text = "Applied coupons:" + couponLines.toString())
}
CouponFormSection(
couponDetails = couponLines,
//formatCurrency = { amount -> currencyFormatter.formatCurrency(amount) },
onRemoveCoupon = { couponCode -> viewModel.onCouponRemoved(couponCode) }
) }
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1803,7 +1803,7 @@ class OrderCreateEditViewModel @Inject constructor(
}
}

private fun onCouponRemoved(couponCode: String) {
fun onCouponRemoved(couponCode: String) {
trackCouponRemoved()
_orderDraft.update { draft ->
val updatedCouponLines = draft.couponLines.filter { it.code != couponCode }
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
package com.woocommerce.android.ui.orders.creation.shipping

import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.material.Button
import androidx.compose.material.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.unit.dp
import com.woocommerce.android.model.Order
import java.math.BigDecimal

@Composable
fun CouponFormSection(
couponDetails: List<Order.CouponLine>,
//formatCurrency: (BigDecimal) -> String,
onRemoveCoupon: (String) -> Unit
) {
Column {
couponDetails.forEach { coupon ->
Row(
modifier = Modifier
.fillMaxWidth()
.padding(8.dp),// Adjust the padding as needed
horizontalArrangement = Arrangement.SpaceBetween
) {
Column {
Text(text = "Coupon: ${coupon.code}")
Text(text = "Discount: ${coupon.discount}")
}
Button(onClick = { onRemoveCoupon(coupon.code) }) {
Text(text = "Remove")
}
}
}
}
}

0 comments on commit bf21e9b

Please sign in to comment.