Skip to content

Commit 2b42ae3

Browse files
Move classes for better organization
1 parent 8adb003 commit 2b42ae3

File tree

7 files changed

+74
-91
lines changed

7 files changed

+74
-91
lines changed

WooCommerce/src/main/kotlin/com/woocommerce/android/ui/payments/refunds/IssueRefundViewModel.kt

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,6 @@ import com.woocommerce.android.analytics.AnalyticsEvent.REFUND_CREATE_SUCCESS
1818
import com.woocommerce.android.analytics.AnalyticsTracker
1919
import com.woocommerce.android.analytics.AnalyticsTrackerWrapper
2020
import com.woocommerce.android.extensions.adminUrlOrDefault
21-
import com.woocommerce.android.extensions.calculateTotalSubtotal
22-
import com.woocommerce.android.extensions.calculateTotalTaxes
23-
import com.woocommerce.android.extensions.calculateTotals
2421
import com.woocommerce.android.extensions.isCashPayment
2522
import com.woocommerce.android.extensions.isEqualTo
2623
import com.woocommerce.android.extensions.joinToString
@@ -38,9 +35,6 @@ import com.woocommerce.android.ui.payments.refunds.IssueRefundViewModel.IssueRef
3835
import com.woocommerce.android.ui.payments.refunds.IssueRefundViewModel.IssueRefundEvent.ShowNumberPicker
3936
import com.woocommerce.android.ui.payments.refunds.IssueRefundViewModel.IssueRefundEvent.ShowRefundConfirmation
4037
import com.woocommerce.android.ui.payments.refunds.IssueRefundViewModel.IssueRefundEvent.ShowRefundSummary
41-
import com.woocommerce.android.ui.payments.refunds.RefundFeeListAdapter.FeeRefundListItem
42-
import com.woocommerce.android.ui.payments.refunds.RefundProductListAdapter.ProductRefundListItem
43-
import com.woocommerce.android.ui.payments.refunds.RefundShippingListAdapter.ShippingRefundListItem
4438
import com.woocommerce.android.util.CurrencyFormatter
4539
import com.woocommerce.android.util.max
4640
import com.woocommerce.android.util.min

WooCommerce/src/main/kotlin/com/woocommerce/android/ui/payments/refunds/RefundDetailViewModel.kt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,12 @@ import androidx.lifecycle.SavedStateHandle
77
import com.woocommerce.android.R
88
import com.woocommerce.android.analytics.AnalyticsEvent
99
import com.woocommerce.android.analytics.AnalyticsTracker
10-
import com.woocommerce.android.extensions.calculateTotals
1110
import com.woocommerce.android.extensions.isCashPayment
1211
import com.woocommerce.android.model.Order
1312
import com.woocommerce.android.model.OrderMapper
1413
import com.woocommerce.android.model.Refund
1514
import com.woocommerce.android.model.toAppModel
1615
import com.woocommerce.android.tools.SelectedSite
17-
import com.woocommerce.android.ui.payments.refunds.RefundProductListAdapter.ProductRefundListItem
1816
import com.woocommerce.android.ui.products.addons.AddonRepository
1917
import com.woocommerce.android.util.CoroutineDispatchers
2018
import com.woocommerce.android.util.CurrencyFormatter

WooCommerce/src/main/kotlin/com/woocommerce/android/ui/payments/refunds/RefundFeeListAdapter.kt

Lines changed: 0 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package com.woocommerce.android.ui.payments.refunds
22

3-
import android.os.Parcelable
43
import android.view.LayoutInflater
54
import android.view.View
65
import android.view.ViewGroup
@@ -9,10 +8,6 @@ import androidx.recyclerview.widget.RecyclerView
98
import com.google.android.material.switchmaterial.SwitchMaterial
109
import com.woocommerce.android.R
1110
import com.woocommerce.android.extensions.hide
12-
import com.woocommerce.android.model.Order
13-
import kotlinx.parcelize.Parcelize
14-
import org.wordpress.android.fluxc.model.refunds.RefundRequestItem
15-
import org.wordpress.android.fluxc.model.refunds.RefundRequestTax
1611
import java.math.BigDecimal
1712

1813
class RefundFeeListAdapter(
@@ -72,23 +67,4 @@ class RefundFeeListAdapter(
7267
val switch: SwitchMaterial = view.findViewById(R.id.issueRefund_feeLineSwitch)
7368
val divider: View = view.findViewById(R.id.issueRefund_feesDivider)
7469
}
75-
76-
@Parcelize
77-
data class FeeRefundListItem(
78-
val feeLine: Order.FeeLine
79-
) : Parcelable {
80-
fun toDataModel(): RefundRequestItem {
81-
return RefundRequestItem(
82-
feeLine.id,
83-
quantity = 1, /* Hardcoded because a fee line always has a quantity of 1 */
84-
refundTotal = feeLine.total,
85-
refundTax = listOf(
86-
RefundRequestTax(
87-
taxRateId = 0L,
88-
refundTotal = feeLine.totalTax,
89-
)
90-
)
91-
)
92-
}
93-
}
9470
}

WooCommerce/src/main/kotlin/com/woocommerce/android/ui/payments/refunds/RefundProductListAdapter.kt

Lines changed: 0 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package com.woocommerce.android.ui.payments.refunds
22

33
import android.annotation.SuppressLint
4-
import android.os.Parcelable
54
import android.view.LayoutInflater
65
import android.view.ViewGroup
76
import android.widget.ImageView
@@ -24,12 +23,8 @@ import com.woocommerce.android.extensions.show
2423
import com.woocommerce.android.model.Order
2524
import com.woocommerce.android.tools.ProductImageMap
2625
import com.woocommerce.android.ui.payments.refunds.RefundProductListAdapter.RefundViewHolder
27-
import kotlinx.parcelize.Parcelize
28-
import org.wordpress.android.fluxc.model.refunds.RefundRequestItem
29-
import org.wordpress.android.fluxc.model.refunds.RefundRequestTax
3026
import org.wordpress.android.util.PhotonUtils
3127
import java.math.BigDecimal
32-
import java.math.RoundingMode.HALF_UP
3328

3429
typealias ViewAddonClickListener = (Order.Item) -> Unit
3530

@@ -175,33 +170,6 @@ class RefundProductListAdapter(
175170
}
176171
}
177172

178-
@Parcelize
179-
data class ProductRefundListItem(
180-
val orderItem: Order.Item,
181-
val maxQuantity: Float = 0f,
182-
val quantity: Int = 0,
183-
val subtotal: String? = null,
184-
val taxes: String? = null
185-
) : Parcelable {
186-
val availableRefundQuantity
187-
get() = maxQuantity.toInt()
188-
189-
fun toDataModel(): RefundRequestItem {
190-
return RefundRequestItem(
191-
itemId = orderItem.itemId,
192-
quantity = quantity,
193-
refundTotal = quantity.toBigDecimal().times(orderItem.price),
194-
refundTax = listOf(
195-
RefundRequestTax(
196-
taxRateId = 0L,
197-
refundTotal = orderItem.totalTax.divide(orderItem.quantity.toBigDecimal(), 2, HALF_UP)
198-
.times(quantity.toBigDecimal())
199-
)
200-
)
201-
)
202-
}
203-
}
204-
205173
class OrderItemDiffCallback(
206174
private val oldList: List<ProductRefundListItem>,
207175
private val newList: List<ProductRefundListItem>

WooCommerce/src/main/kotlin/com/woocommerce/android/ui/payments/refunds/RefundShippingListAdapter.kt

Lines changed: 0 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package com.woocommerce.android.ui.payments.refunds
22

3-
import android.os.Parcelable
43
import android.view.LayoutInflater
54
import android.view.View
65
import android.view.ViewGroup
@@ -9,10 +8,6 @@ import androidx.recyclerview.widget.RecyclerView
98
import com.google.android.material.switchmaterial.SwitchMaterial
109
import com.woocommerce.android.R
1110
import com.woocommerce.android.extensions.hide
12-
import com.woocommerce.android.model.Order
13-
import kotlinx.parcelize.Parcelize
14-
import org.wordpress.android.fluxc.model.refunds.RefundRequestItem
15-
import org.wordpress.android.fluxc.model.refunds.RefundRequestTax
1611
import java.math.BigDecimal
1712

1813
class RefundShippingListAdapter(
@@ -72,24 +67,4 @@ class RefundShippingListAdapter(
7267
val switch: SwitchMaterial = view.findViewById(R.id.issueRefund_shippingLineSwitch)
7368
val divider: View = view.findViewById(R.id.issueRefund_shippingDivider)
7469
}
75-
76-
77-
@Parcelize
78-
data class ShippingRefundListItem(
79-
val shippingLine: Order.ShippingLine
80-
) : Parcelable {
81-
fun toDataModel(): RefundRequestItem {
82-
return RefundRequestItem(
83-
shippingLine.itemId,
84-
quantity = 1, /* Hardcoded because a shipping line always has a quantity of 1 */
85-
refundTotal = shippingLine.total,
86-
refundTax = listOf(
87-
RefundRequestTax(
88-
taxRateId = 0L,
89-
refundTotal = shippingLine.totalTax
90-
)
91-
)
92-
)
93-
}
94-
}
9570
}

WooCommerce/src/main/kotlin/com/woocommerce/android/extensions/RefundsExt.kt renamed to WooCommerce/src/main/kotlin/com/woocommerce/android/ui/payments/refunds/RefundsExt.kt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
package com.woocommerce.android.extensions
1+
package com.woocommerce.android.ui.payments.refunds
22

3-
import com.woocommerce.android.ui.payments.refunds.RefundProductListAdapter.ProductRefundListItem
43
import java.math.BigDecimal
54
import java.math.RoundingMode.HALF_UP
65

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
package com.woocommerce.android.ui.payments.refunds
2+
3+
import android.os.Parcelable
4+
import com.woocommerce.android.model.Order
5+
import kotlinx.parcelize.Parcelize
6+
import org.wordpress.android.fluxc.model.refunds.RefundRequestItem
7+
import org.wordpress.android.fluxc.model.refunds.RefundRequestTax
8+
import java.math.RoundingMode.HALF_UP
9+
10+
@Parcelize
11+
data class ProductRefundListItem(
12+
val orderItem: Order.Item,
13+
val maxQuantity: Float = 0f,
14+
val quantity: Int = 0,
15+
val subtotal: String? = null,
16+
val taxes: String? = null
17+
) : Parcelable {
18+
val availableRefundQuantity
19+
get() = maxQuantity.toInt()
20+
21+
fun toDataModel(): RefundRequestItem {
22+
return RefundRequestItem(
23+
itemId = orderItem.itemId,
24+
quantity = quantity,
25+
refundTotal = quantity.toBigDecimal().times(orderItem.price),
26+
refundTax = listOf(
27+
RefundRequestTax(
28+
taxRateId = 0L,
29+
refundTotal = orderItem.totalTax.divide(orderItem.quantity.toBigDecimal(), 2, HALF_UP)
30+
.times(quantity.toBigDecimal())
31+
)
32+
)
33+
)
34+
}
35+
}
36+
37+
@Parcelize
38+
data class ShippingRefundListItem(
39+
val shippingLine: Order.ShippingLine
40+
) : Parcelable {
41+
fun toDataModel(): RefundRequestItem {
42+
return RefundRequestItem(
43+
shippingLine.itemId,
44+
quantity = 1, /* Hardcoded because a shipping line always has a quantity of 1 */
45+
refundTotal = shippingLine.total,
46+
refundTax = listOf(
47+
RefundRequestTax(
48+
taxRateId = 0L,
49+
refundTotal = shippingLine.totalTax
50+
)
51+
)
52+
)
53+
}
54+
}
55+
56+
@Parcelize
57+
data class FeeRefundListItem(
58+
val feeLine: Order.FeeLine
59+
) : Parcelable {
60+
fun toDataModel(): RefundRequestItem {
61+
return RefundRequestItem(
62+
feeLine.id,
63+
quantity = 1, /* Hardcoded because a fee line always has a quantity of 1 */
64+
refundTotal = feeLine.total,
65+
refundTax = listOf(
66+
RefundRequestTax(
67+
taxRateId = 0L,
68+
refundTotal = feeLine.totalTax,
69+
)
70+
)
71+
)
72+
}
73+
}

0 commit comments

Comments
 (0)