diff --git a/templates/transaction-process/view/index.php b/templates/transaction-process/view/index.php index 80f07c4..16564c3 100644 --- a/templates/transaction-process/view/index.php +++ b/templates/transaction-process/view/index.php @@ -382,7 +382,7 @@ $kiriof_wcDiscountTotal = 0.0; $kiriof_wcShippingDiscount = 0.0; $kiriof_wcCouponCodes = []; - $kiriof_wcTotal = $kiriof_shippingFee; // fallback + $kiriof_wcTotal = $kiriof_wcOrder ? (float) $kiriof_wcOrder->get_total() : $kiriof_shippingFee; if ($kiriof_isDeficitRow && ! empty($kiriof_row->wc_order_id)) { $kiriof_wcOrderForDeficit = wc_get_order((int) $kiriof_row->wc_order_id); if ($kiriof_wcOrderForDeficit) { @@ -397,13 +397,17 @@ $kiriof_adjItemCoupon = $kiriof_adjCouponScopes['item'][0] ?? ''; $kiriof_adjShipCoupon = $kiriof_adjCouponScopes['shipping'][0] ?? ''; + $kiriof_effectiveShippingCost = max(0.0, $kiriof_shippingCost - $kiriof_wcShippingDiscount); + $kiriof_effectiveCodPayout = $kiriof_wcTotal - $kiriof_effectiveShippingCost - $kiriof_insuranceCost - $kiriof_codFee; + $kiriof_canRequestPickup = $kiriof_isProcessable && (! $kiriof_isDeficitRow || $kiriof_effectiveCodPayout >= 0); + $kiriof_isProcessedFilter = ('processed' === $kiriof_status_filter); $kiriof_isAllFilter = ('all' === $kiriof_status_filter); $kiriof_canPrintRow = (($kiriof_isProcessedFilter || $kiriof_isAllFilter) && ! empty($kiriof_awb) && 'request_pickup' === $kiriof_row->status); $kiriof_checkboxDisabled = ($kiriof_isProcessedFilter || $kiriof_isAllFilter) - ? (! $kiriof_canPrintRow && ($kiriof_isDeficitRow || ! $kiriof_isProcessable)) - : ($kiriof_isDeficitRow || ! $kiriof_isProcessable); - $kiriof_checkboxTitle = $kiriof_isDeficitRow + ? (! $kiriof_canPrintRow && ! $kiriof_canRequestPickup) + : (! $kiriof_canRequestPickup); + $kiriof_checkboxTitle = $kiriof_isDeficitRow && $kiriof_effectiveCodPayout < 0 ? __('Resolve the COD deficit before proceeding.', 'kiriminaja-official') : (($kiriof_isProcessedFilter || ($kiriof_isAllFilter && ! $kiriof_isProcessable)) ? ($kiriof_canPrintRow ? '' : __('Order must have an AWB and request pickup status before it can be printed.', 'kiriminaja-official')) @@ -415,7 +419,7 @@ echo '