From f52cd84b9074fb26a89635ccf7c668f95c7a64a2 Mon Sep 17 00:00:00 2001 From: vanitha1822 Date: Fri, 20 Feb 2026 11:05:43 +0530 Subject: [PATCH 1/2] fix: column datatype mismatch issue --- .../service/report/CRMReportServiceImpl.java | 47 ++++++++----------- 1 file changed, 20 insertions(+), 27 deletions(-) diff --git a/src/main/java/com/iemr/inventory/service/report/CRMReportServiceImpl.java b/src/main/java/com/iemr/inventory/service/report/CRMReportServiceImpl.java index 714043b7..3748ae6b 100644 --- a/src/main/java/com/iemr/inventory/service/report/CRMReportServiceImpl.java +++ b/src/main/java/com/iemr/inventory/service/report/CRMReportServiceImpl.java @@ -520,57 +520,50 @@ public String getYearlyReport(ItemStockEntryReport entryReport) { for (Object[] objects : reports) { if (objects != null && objects.length > 0) { - String batchNo = (String) objects[3]; + String batchNo = objects[3] != null ? objects[3].toString() : null; Long totalQuantityReceived = 0L; if (objects[4] != null) { - totalQuantityReceived = ((Number) objects[4]).longValue(); + totalQuantityReceived = Long.valueOf(objects[4].toString()); } Double unitCostPrice = 0.0; if (objects[5] != null) { - unitCostPrice = ((Number) objects[5]).doubleValue(); + unitCostPrice = Double.valueOf(objects[5].toString()); } Date expiryDate = (Date) objects[6]; Long openingStock = 0L; if (objects[10] != null) { - openingStock = ((Number) objects[10]).longValue(); + openingStock = Long.valueOf(objects[10].toString()); } Long adjustedQuantity_FromDate = 0L; - if (objects[11] != null) { - adjustedQuantity_FromDate = ((Number) objects[11]).longValue(); + if (objects[15] != null) { + adjustedQuantity_FromDate = Long.valueOf(objects[15].toString()); } Long quantityDispanced = 0L; - if (objects[12] != null) { - quantityDispanced = ((Number) objects[12]).longValue(); + if (objects[11] != null) { + quantityDispanced = Long.valueOf(objects[11].toString()); } - String itemName = (String) objects[13]; - String facilityName = (String) objects[14]; - String itemCategoryName = (String) objects[15]; + String itemName = objects[12] != null ? objects[12].toString() : null; + String facilityName = objects[13] != null ? objects[13].toString() : null; + String itemCategoryName = objects[14] != null ? objects[14].toString() : null; Long adjustedQuantity_ToDate = 0L; - if (objects[16] != null) { - adjustedQuantity_ToDate = ((Number) objects[16]).longValue(); + if (objects[15] != null) { + adjustedQuantity_ToDate = Long.valueOf(objects[15].toString()); } Long adjustedQuantity_ToDate_Receipt = 0L; - if (objects[17] != null) { - adjustedQuantity_ToDate_Receipt = ((Number) objects[17]).longValue(); + if (objects[16] != null) { + adjustedQuantity_ToDate_Receipt = Long.valueOf(objects[16].toString()); } Long adjustedQuantity_ToDate_Issue = 0L; - if (objects[18] != null) { - adjustedQuantity_ToDate_Issue = ((Number) objects[18]).longValue(); + if (objects[17] != null) { + adjustedQuantity_ToDate_Issue = Long.valueOf(objects[17].toString()); } Long ClosingStock = 0L; - if (objects[19] != null) { - ClosingStock = ((Number) objects[19]).longValue(); + if (objects[18] != null) { + ClosingStock = Long.valueOf(objects[18].toString()); } -// Long actualOpening = openingStock + adjustedQuantity_FromDate; Long actualOpening = openingStock; - Long actualDispensed = quantityDispanced;// - adjustedQuantity_ToDate; + Long actualDispensed = quantityDispanced; Long actualClosing = ClosingStock; -// if (actualOpening == 0 || actualOpening == null) { -// actualClosing = totalQuantityReceived - actualDispensed + adjustedQuantity_ToDate; -// } else { -// actualClosing = actualOpening - actualDispensed + adjustedQuantity_ToDate; -// totalQuantityReceived = 0L; -// } YearlyReport stockDetail = new YearlyReport(); stockDetail.setSlNo(slNo++); From 7601307b052d2ec9705e1499f0831d5a704e895b Mon Sep 17 00:00:00 2001 From: vanitha1822 Date: Fri, 20 Feb 2026 13:15:53 +0530 Subject: [PATCH 2/2] fix: report download issue in AMM-2017 --- .../service/report/CRMReportServiceImpl.java | 60 +++++++++---------- 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/src/main/java/com/iemr/inventory/service/report/CRMReportServiceImpl.java b/src/main/java/com/iemr/inventory/service/report/CRMReportServiceImpl.java index 3748ae6b..526c63e2 100644 --- a/src/main/java/com/iemr/inventory/service/report/CRMReportServiceImpl.java +++ b/src/main/java/com/iemr/inventory/service/report/CRMReportServiceImpl.java @@ -223,31 +223,31 @@ public String getDailyStockDetailsReport(ItemStockEntryReport entryReport) { openingStock = ((Number) objects[10]).longValue(); } Long adjustedQuantity_FromDate = 0L; - if (objects[11] != null) { - adjustedQuantity_FromDate = ((Number) objects[11]).longValue(); + if (objects[15] != null) { + adjustedQuantity_FromDate = ((Number) objects[15]).longValue(); } Long quantityDispanced = 0L; - if (objects[12] != null) { - quantityDispanced = ((Number) objects[12]).longValue(); + if (objects[11] != null) { + quantityDispanced = ((Number) objects[11]).longValue(); } - String itemName = (String) objects[13]; - String facilityName = (String) objects[14]; - String itemCategoryName = (String) objects[15]; + String itemName = (String) objects[12]; + String facilityName = (String) objects[13]; + String itemCategoryName = (String) objects[14]; Long adjustedQuantity_ToDate = 0L; - if (objects[16] != null) { - adjustedQuantity_ToDate = ((Number) objects[16]).longValue(); + if (objects[15] != null) { + adjustedQuantity_ToDate = ((Number) objects[15]).longValue(); } Long adjustedQuantity_ToDate_Receipt = 0L; - if (objects[17] != null) { - adjustedQuantity_ToDate_Receipt = ((Number) objects[17]).longValue(); + if (objects[16] != null) { + adjustedQuantity_ToDate_Receipt = ((Number) objects[16]).longValue(); } Long adjustedQuantity_ToDate_Issue = 0L; - if (objects[18] != null) { - adjustedQuantity_ToDate_Issue = ((Number) objects[18]).longValue(); + if (objects[17] != null) { + adjustedQuantity_ToDate_Issue = ((Number) objects[17]).longValue(); } Long ClosingStock = 0L; - if (objects[19] != null) { - ClosingStock = ((Number) objects[19]).longValue(); + if (objects[18] != null) { + ClosingStock = ((Number) objects[18]).longValue(); } @@ -421,31 +421,31 @@ public String getMonthlyReport(ItemStockEntryReport entryReport) { openingStock = ((Number) objects[10]).longValue(); } Long adjustedQuantity_FromDate = 0L; - if (objects[11] != null) { - adjustedQuantity_FromDate = ((Number) objects[11]).longValue(); + if (objects[15] != null) { + adjustedQuantity_FromDate = ((Number) objects[15]).longValue(); } Long quantityDispanced = 0L; - if (objects[12] != null) { - quantityDispanced = ((Number) objects[12]).longValue(); + if (objects[11] != null) { + quantityDispanced = ((Number) objects[11]).longValue(); } - String itemName = (String) objects[13]; - String facilityName = (String) objects[14]; - String itemCategoryName = (String) objects[15]; + String itemName = (String) objects[12]; + String facilityName = (String) objects[13]; + String itemCategoryName = (String) objects[14]; Long adjustedQuantity_ToDate = 0L; - if (objects[16] != null) { - adjustedQuantity_ToDate = ((Number) objects[16]).longValue(); + if (objects[15] != null) { + adjustedQuantity_ToDate = ((Number) objects[15]).longValue(); } Long adjustedQuantity_ToDate_Receipt = 0L; - if (objects[17] != null) { - adjustedQuantity_ToDate_Receipt = ((Number) objects[17]).longValue(); + if (objects[16] != null) { + adjustedQuantity_ToDate_Receipt = ((Number) objects[16]).longValue(); } Long adjustedQuantity_ToDate_Issue = 0L; - if (objects[18] != null) { - adjustedQuantity_ToDate_Issue = ((Number) objects[18]).longValue(); + if (objects[17] != null) { + adjustedQuantity_ToDate_Issue = ((Number) objects[17]).longValue(); } Long ClosingStock = 0L; - if (objects[19] != null) { - ClosingStock = ((Number) objects[19]).longValue(); + if (objects[18] != null) { + ClosingStock = ((Number) objects[18]).longValue(); } // Long actualOpening = openingStock + adjustedQuantity_FromDate; Long actualOpening = openingStock;