Fix refund display

This commit is contained in:
2026-03-30 09:40:22 -06:00
parent a3851871c7
commit 4ef913dfd0

View File

@@ -258,18 +258,23 @@ public class SaleController {
if (sale.getItems() != null && !sale.getItems().isEmpty()) { if (sale.getItems() != null && !sale.getItems().isEmpty()) {
for (SaleItemResponse item : sale.getItems()) { for (SaleItemResponse item : sale.getItems()) {
boolean isRefund = sale.getIsRefund() != null && sale.getIsRefund();
double unitPrice = item.getUnitPrice() != null ? item.getUnitPrice().doubleValue() : 0.0; double unitPrice = item.getUnitPrice() != null ? item.getUnitPrice().doubleValue() : 0.0;
double lineTotal = unitPrice * item.getQuantity(); int quantity = item.getQuantity() != null ? item.getQuantity() : 0;
if (isRefund && quantity > 0) {
quantity = -quantity;
}
double lineTotal = unitPrice * quantity;
lineItems.add(new SaleLineItem( lineItems.add(new SaleLineItem(
sale.getSaleId().intValue(), sale.getSaleId().intValue(),
saleDate, saleDate,
sale.getEmployeeName(), sale.getEmployeeName(),
item.getProductName(), item.getProductName(),
item.getQuantity(), quantity,
unitPrice, unitPrice,
lineTotal, lineTotal,
sale.getPaymentMethod(), sale.getPaymentMethod(),
sale.getIsRefund() != null && sale.getIsRefund() isRefund
)); ));
} }
} }
@@ -501,9 +506,13 @@ public class SaleController {
private SaleDetail mapToSaleDetail(SaleResponse sale) { private SaleDetail mapToSaleDetail(SaleResponse sale) {
ObservableList<SaleDetail.SaleDetailItem> items = FXCollections.observableArrayList(); ObservableList<SaleDetail.SaleDetailItem> items = FXCollections.observableArrayList();
if (sale.getItems() != null) { if (sale.getItems() != null) {
boolean isRefund = sale.getIsRefund() != null && sale.getIsRefund();
for (SaleItemResponse item : sale.getItems()) { for (SaleItemResponse item : sale.getItems()) {
double unitPrice = item.getUnitPrice() != null ? item.getUnitPrice().doubleValue() : 0.0; double unitPrice = item.getUnitPrice() != null ? item.getUnitPrice().doubleValue() : 0.0;
int quantity = item.getQuantity() != null ? item.getQuantity() : 0; int quantity = item.getQuantity() != null ? item.getQuantity() : 0;
if (isRefund && quantity > 0) {
quantity = -quantity;
}
items.add(new SaleDetail.SaleDetailItem( items.add(new SaleDetail.SaleDetailItem(
item.getProdId() != null ? item.getProdId().intValue() : 0, item.getProdId() != null ? item.getProdId().intValue() : 0,
item.getProductName(), item.getProductName(),