Fix compilation errors in controllers

This commit is contained in:
2026-03-07 17:07:43 -07:00
parent 0e8ec35995
commit a6e424de41
7 changed files with 33 additions and 27 deletions

View File

@@ -196,13 +196,20 @@ public class AnalyticsController {
chartPaymentMethods.setLabelsVisible(false);
}
private void loadEmployeePerformance() throws Exception {
ObservableList<EmployeeSalesData> data = SaleDB.getEmployeeSalesPerformance();
private void loadEmployeePerformance(List<SaleResponse> sales) throws Exception {
Map<String, Double> employeeRevenue = sales.stream()
.filter(sale -> sale.getIsRefund() == null || !sale.getIsRefund())
.filter(sale -> sale.getEmployeeName() != null)
.collect(Collectors.groupingBy(
SaleResponse::getEmployeeName,
Collectors.summingDouble(sale -> sale.getTotalAmount() != null ? sale.getTotalAmount().doubleValue() : 0.0)
));
XYChart.Series<String, Number> series = new XYChart.Series<>();
series.setName("Revenue");
for (EmployeeSalesData employee : data) {
series.getData().add(new XYChart.Data<>(employee.getEmployeeName(), employee.getTotalRevenue()));
for (Map.Entry<String, Double> entry : employeeRevenue.entrySet()) {
series.getData().add(new XYChart.Data<>(entry.getKey(), entry.getValue()));
}
chartEmployeePerformance.getData().clear();

View File

@@ -240,7 +240,7 @@ public class SaleController {
task.setOnFailed(event -> {
Throwable e = task.getException();
ActivityLogger.getInstance().logException("SaleController.refreshSales", e, "Loading sales");
ActivityLogger.getInstance().logException("SaleController.refreshSales", (Exception) e, "Loading sales");
if (showErrorDialog) {
showError("Sales", "Could not load sales: " + e.getMessage());
}
@@ -376,7 +376,6 @@ public class SaleController {
dialog.setResizable(false);
dialog.showAndWait();
refreshInventory();
refreshSales(true);
} catch (Exception e) {
ActivityLogger.getInstance().logException("SaleController.openRefundDialog", e, "Opening refund dialog");

View File

@@ -13,7 +13,7 @@ import javafx.scene.control.TextField;
import javafx.scene.input.MouseEvent;
import javafx.stage.Stage;
import javafx.util.StringConverter;
import org.example.petshopdesktop.DTOs.InventoryDTO;
import org.example.petshopdesktop.models.Inventory;
import org.example.petshopdesktop.Validator;
import org.example.petshopdesktop.api.dto.inventory.InventoryRequest;
import org.example.petshopdesktop.api.dto.inventory.InventoryResponse;
@@ -126,7 +126,7 @@ public class InventoryDialogController {
InventoryRequest request = new InventoryRequest();
Product selectedProduct = cbProduct.getSelectionModel().getSelectedItem();
request.setProductId((long) selectedProduct.getProdId());
request.setQuantity(Integer.parseInt(txtQuantity.getText()));
request.setStockQuantity(Integer.parseInt(txtQuantity.getText()));
if (mode.equals("Add")) {
InventoryApi.getInstance().createInventory(request);
@@ -170,7 +170,7 @@ public class InventoryDialogController {
//Editing
//Displays fields with existing inventory data
public void displayInventoryDetails(InventoryDTO inventory) {
public void displayInventoryDetails(Inventory inventory) {
if (inventory != null) {
//Displays inventory ID

View File

@@ -171,7 +171,7 @@ public class RefundDialogController {
}
int alreadyRefunded = refundItems.stream()
.filter(r -> r.getProductId().equals(selected.getId()))
.filter(r -> r.getProdId() == selected.getId().intValue())
.mapToInt(RefundItem::getQuantity)
.sum();
@@ -200,10 +200,10 @@ public class RefundDialogController {
}
refundItems.add(new RefundItem(
selected.getId(),
selected.getId().intValue(),
selected.getProductName(),
quantity,
selected.getUnitPrice()
selected.getUnitPrice().doubleValue()
));
updateRefundTotal();
@@ -266,9 +266,9 @@ public class RefundDialogController {
List<SaleItemRequest> items = new ArrayList<>();
for (RefundItem item : refundItems) {
SaleItemRequest saleItem = new SaleItemRequest();
saleItem.setProductId(item.getProductId());
saleItem.setProductId((long) item.getProdId());
saleItem.setQuantity(-item.getQuantity());
saleItem.setUnitPrice(item.getUnitPrice());
saleItem.setUnitPrice(BigDecimal.valueOf(item.getUnitPrice()));
items.add(saleItem);
}
request.setItems(items);

View File

@@ -115,22 +115,17 @@ public class ServiceDialogController {
return;
}
int duration = (hours * 60) + minutes;
Service service = new Service(
selectedService == null ? 0 : selectedService.getServiceId(),
name,
desc,
duration,
price
);
try {
ServiceRequest request = new ServiceRequest();
request.setServiceName(name);
request.setDescription(desc);
request.setPrice(BigDecimal.valueOf(price));
if (mode.equals("Add")) {
ServiceDB.insertService(service);
ServiceApi.getInstance().createService(request);
} else {
ServiceDB.updateService(selectedService.getServiceId(), service);
Long serviceId = (long) selectedService.getServiceId();
ServiceApi.getInstance().updateService(serviceId, request);
}
close();

View File

@@ -156,6 +156,7 @@ public class AdoptionDB {
rs.getInt("adoptionId"),
rs.getInt("petId"),
rs.getInt("customerId"),
"",
rs.getString("customerName"),
rs.getString("adoptionDate"),
rs.getDouble("adoptionFee"),

View File

@@ -152,7 +152,11 @@ public class InventoryDB {
rs.getInt("inventoryId"),
rs.getInt("prodId"),
rs.getString("prodName"),
rs.getInt("quantity")
"",
0,
"",
rs.getInt("quantity"),
0
);
}
}