fix loyalty points display

This commit is contained in:
2026-04-15 15:49:47 -06:00
parent 5ff5995bcf
commit 748a4ff866
8 changed files with 44 additions and 10 deletions

View File

@@ -841,6 +841,7 @@ public class SaleController {
double subtotal = sale.getSubtotalAmount() != null ? sale.getSubtotalAmount().doubleValue() : 0.0;
double couponDiscount = sale.getCouponDiscountAmount() != null ? sale.getCouponDiscountAmount().doubleValue() : 0.0;
double loyaltyDiscount = sale.getLoyaltyDiscountAmount() != null ? sale.getLoyaltyDiscountAmount().doubleValue() : 0.0;
int pointsUsed = sale.getPointsUsed() != null ? sale.getPointsUsed() : 0;
return new SaleDetail(
sale.getSaleId().intValue(),
sale.getSaleDate(),
@@ -852,7 +853,8 @@ public class SaleController {
sale.getCustomerName(),
subtotal,
couponDiscount,
loyaltyDiscount
loyaltyDiscount,
pointsUsed
);
}

View File

@@ -33,6 +33,7 @@ public class SaleDetailDialogController {
@FXML private javafx.scene.layout.HBox hbDetailCouponDiscount;
@FXML private Label lblDetailCouponDiscount;
@FXML private javafx.scene.layout.HBox hbDetailLoyaltyDiscount;
@FXML private Label lblDetailLoyaltyDiscountTitle;
@FXML private Label lblDetailLoyaltyDiscount;
@FXML private Label lblTotal;
@FXML private Button btnRefund;
@@ -86,6 +87,11 @@ public class SaleDetailDialogController {
if (sale.getLoyaltyDiscountAmount() > 0.001) {
lblDetailLoyaltyDiscount.setText("-" + currency.format(sale.getLoyaltyDiscountAmount()));
if (sale.getPointsUsed() > 0) {
lblDetailLoyaltyDiscountTitle.setText("Loyalty Discount (" + sale.getPointsUsed() + " pts):");
} else {
lblDetailLoyaltyDiscountTitle.setText("Loyalty Discount:");
}
hbDetailLoyaltyDiscount.setVisible(true);
hbDetailLoyaltyDiscount.setManaged(true);
} else {

View File

@@ -15,8 +15,9 @@ public class SaleDetail {
private final double subtotalAmount;
private final double couponDiscountAmount;
private final double loyaltyDiscountAmount;
private final int pointsUsed;
public SaleDetail(int saleId, LocalDateTime saleDate, double totalAmount, String paymentMethod, String employeeName, boolean refund, ObservableList<SaleDetailItem> items, String customerName, double subtotalAmount, double couponDiscountAmount, double loyaltyDiscountAmount) {
public SaleDetail(int saleId, LocalDateTime saleDate, double totalAmount, String paymentMethod, String employeeName, boolean refund, ObservableList<SaleDetailItem> items, String customerName, double subtotalAmount, double couponDiscountAmount, double loyaltyDiscountAmount, int pointsUsed) {
this.saleId = saleId;
this.saleDate = saleDate;
this.totalAmount = totalAmount;
@@ -28,6 +29,7 @@ public class SaleDetail {
this.subtotalAmount = subtotalAmount;
this.couponDiscountAmount = couponDiscountAmount;
this.loyaltyDiscountAmount = loyaltyDiscountAmount;
this.pointsUsed = pointsUsed;
}
public int getSaleId() {
@@ -74,6 +76,10 @@ public class SaleDetail {
return loyaltyDiscountAmount;
}
public int getPointsUsed() {
return pointsUsed;
}
public static class SaleDetailItem {
private final int prodId;
private final String productName;