diff --git a/src/main/java/com/ffii/lioner/modules/lioner/client/entity/Client.java b/src/main/java/com/ffii/lioner/modules/lioner/client/entity/Client.java index 89f99d4..d98e8cf 100644 --- a/src/main/java/com/ffii/lioner/modules/lioner/client/entity/Client.java +++ b/src/main/java/com/ffii/lioner/modules/lioner/client/entity/Client.java @@ -1,7 +1,6 @@ package com.ffii.lioner.modules.lioner.client.entity; import java.time.LocalDate; -import java.time.LocalDateTime; import com.ffii.core.entity.BaseEntity; @@ -11,7 +10,6 @@ import jakarta.persistence.Inheritance; import jakarta.persistence.InheritanceType; import jakarta.persistence.Table; import jakarta.validation.constraints.NotBlank; -import jakarta.validation.constraints.NotNull; /** @author Jason Lam */ @Entity @@ -53,6 +51,33 @@ public class Client extends BaseEntity{ @Column private Integer consultantId; + + @Column + private String crAddressRoom; + + @Column + private String crAddressFloor; + + @Column + private String crAddressBlock; + + @Column + private String crAddressBuilding; + + @Column + private String crAddressStreet; + + @Column + private String crAddressArea; + + @Column + private String crAddressCity; + + @Column + private String crAddressCountry; + + @Column + private String crAddressPostalCode; public String getClientCode() { @@ -142,5 +167,79 @@ public class Client extends BaseEntity{ public void setConsultantId(Integer consultantId) { this.consultantId = consultantId; } + + public String getCrAddressRoom() { + return crAddressRoom; + } + + public void setCrAddressRoom(String crAddressRoom) { + this.crAddressRoom = crAddressRoom; + } + + public String getCrAddressFloor() { + return crAddressFloor; + } + + public void setCrAddressFloor(String crAddressFloor) { + this.crAddressFloor = crAddressFloor; + } + + public String getCrAddressBlock() { + return crAddressBlock; + } + + public void setCrAddressBlock(String crAddressBlock) { + this.crAddressBlock = crAddressBlock; + } + + public String getCrAddressBuilding() { + return crAddressBuilding; + } + + public void setCrAddressBuilding(String crAddressBuilding) { + this.crAddressBuilding = crAddressBuilding; + } + + public String getCrAddressStreet() { + return crAddressStreet; + } + + public void setCrAddressStreet(String crAddressStreet) { + this.crAddressStreet = crAddressStreet; + } + + public String getCrAddressArea() { + return crAddressArea; + } + + public void setCrAddressArea(String crAddressArea) { + this.crAddressArea = crAddressArea; + } + + public String getCrAddressCity() { + return crAddressCity; + } + + public void setCrAddressCity(String crAddressCity) { + this.crAddressCity = crAddressCity; + } + + public String getCrAddressCountry() { + return crAddressCountry; + } + + public void setCrAddressCountry(String crAddressCountry) { + this.crAddressCountry = crAddressCountry; + } + + public String getCrAddressPostalCode() { + return crAddressPostalCode; + } + + public void setCrAddressPostalCode(String crAddressPostalCode) { + this.crAddressPostalCode = crAddressPostalCode; + } + + } diff --git a/src/main/java/com/ffii/lioner/modules/lioner/client/req/UpdateClientReq.java b/src/main/java/com/ffii/lioner/modules/lioner/client/req/UpdateClientReq.java index b761045..4626677 100644 --- a/src/main/java/com/ffii/lioner/modules/lioner/client/req/UpdateClientReq.java +++ b/src/main/java/com/ffii/lioner/modules/lioner/client/req/UpdateClientReq.java @@ -1,11 +1,9 @@ package com.ffii.lioner.modules.lioner.client.req; -import java.util.List; +import java.time.LocalDate; import jakarta.validation.constraints.Size; -import java.time.LocalDate; - public class UpdateClientReq { private Long id; @@ -39,6 +37,24 @@ public class UpdateClientReq { Integer consultantId; + String crAddressRoom; + + String crAddressFloor; + + String crAddressBlock; + + String crAddressBuilding; + + String crAddressStreet; + + String crAddressArea; + + String crAddressCity; + + String crAddressCountry; + + String crAddressPostalCode; + public Long getId() { return id; } @@ -135,4 +151,76 @@ public class UpdateClientReq { this.consultantId = consultantId; } + public String getCrAddressRoom() { + return crAddressRoom; + } + + public void setCrAddressRoom(String crAddressRoom) { + this.crAddressRoom = crAddressRoom; + } + + public String getCrAddressFloor() { + return crAddressFloor; + } + + public void setCrAddressFloor(String crAddressFloor) { + this.crAddressFloor = crAddressFloor; + } + + public String getCrAddressBlock() { + return crAddressBlock; + } + + public void setCrAddressBlock(String crAddressBlock) { + this.crAddressBlock = crAddressBlock; + } + + public String getCrAddressBuilding() { + return crAddressBuilding; + } + + public void setCrAddressBuilding(String crAddressBuilding) { + this.crAddressBuilding = crAddressBuilding; + } + + public String getCrAddressStreet() { + return crAddressStreet; + } + + public void setCrAddressStreet(String crAddressStreet) { + this.crAddressStreet = crAddressStreet; + } + + public String getCrAddressArea() { + return crAddressArea; + } + + public void setCrAddressArea(String crAddressArea) { + this.crAddressArea = crAddressArea; + } + + public String getCrAddressCity() { + return crAddressCity; + } + + public void setCrAddressCity(String crAddressCity) { + this.crAddressCity = crAddressCity; + } + + public String getCrAddressCountry() { + return crAddressCountry; + } + + public void setCrAddressCountry(String crAddressCountry) { + this.crAddressCountry = crAddressCountry; + } + + public String getCrAddressPostalCode() { + return crAddressPostalCode; + } + + public void setCrAddressPostalCode(String crAddressPostalCode) { + this.crAddressPostalCode = crAddressPostalCode; + } + } diff --git a/src/main/java/com/ffii/lioner/modules/lioner/pdf/service/PdfService.java b/src/main/java/com/ffii/lioner/modules/lioner/pdf/service/PdfService.java index 6d02aa4..31faaf9 100644 --- a/src/main/java/com/ffii/lioner/modules/lioner/pdf/service/PdfService.java +++ b/src/main/java/com/ffii/lioner/modules/lioner/pdf/service/PdfService.java @@ -4,12 +4,15 @@ import java.io.ByteArrayInputStream; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; +import java.text.DecimalFormat; +import java.text.NumberFormat; import java.time.LocalDate; import java.time.Period; import java.time.format.DateTimeFormatter; import java.time.format.DateTimeParseException; import java.util.HashMap; import java.util.List; +import java.util.Locale; import java.util.Map; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -434,7 +437,8 @@ public class PdfService extends AbstractBaseEntityService d = getCountryAndPhoneNo(commonField.getContactNo()); if(d.get("countryCode") != null) @@ -1620,14 +1633,22 @@ public class PdfService extends AbstractBaseEntityService commonField.setName(fieldValue); case "fill_7" -> commonField.setNameChi(fieldValue); case "fill_11" -> commonField.setIdCard(fieldValue); case "fill_12" -> commonField.setCountryOfIssue(fieldValue); @@ -2508,10 +2529,10 @@ public class PdfService extends AbstractBaseEntityService commonField.setContactNo(fieldValue); case "fill_18" -> commonField.setEmail(fieldValue); - case "fill_19" -> commonField.getOthers().put("address1", fieldValue); - case "fill_19_1" -> commonField.getOthers().put("address2", fieldValue); - case "fill_23" -> commonField.getOthers().put("crAddress1", fieldValue); - case "fill_23_1" -> commonField.getOthers().put("crAddress2", fieldValue); + //case "fill_19" -> commonField.getOthers().put("address1", fieldValue); + //case "fill_19_1" -> commonField.getOthers().put("address2", fieldValue); + //case "fill_23" -> commonField.getOthers().put("crAddress1", fieldValue); + //case "fill_23_1" -> commonField.getOthers().put("crAddress2", fieldValue); case "edu_pri" -> commonField.setEduPri(fieldValue); case "edu_sec" -> commonField.setEduSec(fieldValue); @@ -2565,8 +2586,8 @@ public class PdfService extends AbstractBaseEntityService commonField.setBankruptYes(fieldValue); - case "toggle_6_2" -> commonField.setBankruptNo(fieldValue); - case "fill_18_1" -> commonField.setBankruptNo(fieldValue); + case "toggle_4_2" -> commonField.setBankruptNo(fieldValue); + case "fill_18_1" -> commonField.setBankruptDesc(fieldValue); case "fill_3_3" -> commonField.getOthers().put("travelCity1",fieldValue); case "fill_6_3" -> commonField.getOthers().put("travelCity2",fieldValue); @@ -2752,7 +2773,11 @@ public class PdfService extends AbstractBaseEntityService commonField.setFna_c1a_amount(fieldValue); case "totalAnnualIncome" -> commonField.setTotalAnnualIncome(fieldValue); - + case "fill_26_4" -> commonField.getOthers().put("totalEarnedIncome", fieldValue); + case "fill_27_4" -> commonField.getOthers().put("totalEarnedIncomeLastYear", fieldValue); + case "fill_28_4" -> commonField.getOthers().put("totalUnearnedIncome", fieldValue); + case "fill_29_4" -> commonField.getOthers().put("totalUnearnedIncomeLastYear", fieldValue); + case "totalLiquidAsset" -> commonField.setFna_c2a_amount(fieldValue); case "totalLiquidLia" -> commonField.setFna_c2b_amount(fieldValue); @@ -2768,6 +2793,7 @@ public class PdfService extends AbstractBaseEntityService commonField.setIncomeDividentsLastYear(fieldValue); case "incomeRentals" -> commonField.setIncomeRentals(fieldValue); case "incomeRentalsLastYear" -> commonField.setIncomeRentalsLastYear(fieldValue); + case "assetCash" -> commonField.setAssetCash(fieldValue); case "assetInvestment" -> commonField.setAssetInvestment(fieldValue); case "assetRealEstate" -> commonField.setAssetRealEstate(fieldValue); @@ -2822,10 +2848,6 @@ public class PdfService extends AbstractBaseEntityService commonField.setName(fieldValue); - //case "fna_a_name_1" -> commonField.getOthers().put("name1", fieldValue); - //case "fna_a_name_2" -> commonField.getOthers().put("name2", fieldValue); - case "fna_a_birth" -> commonField.setDateOfBirth(fieldValue); case "fna_a_id_card" -> commonField.setIdCard(fieldValue); case "fna_a_occupation" -> commonField.setOccupationTitle(fieldValue); @@ -2913,6 +2935,8 @@ public class PdfService extends AbstractBaseEntityService commonField.setFna_c3a_20(fieldValue); case "fna_c3a_life" -> commonField.setFna_c3a_life(fieldValue); case "fna_c3a_single_pay" -> commonField.setFna_c3a_single_pay(fieldValue); + case "fna_c3a_single_pay_max" -> commonField.getOthers().put("singlePayAmount", fieldValue); + case "fna_a_retire" -> commonField.setFna_a_retire(fieldValue); case "fna_c3b_salary" -> commonField.setFna_c3b_salary(fieldValue); case "fna_c3b_income" -> commonField.setFna_c3b_income(fieldValue); @@ -2942,7 +2966,7 @@ public class PdfService extends AbstractBaseEntityService commonField.getOthers().put("recProd1_2", fieldValue); case "fna_d_name_2" -> commonField.getOthers().put("recProd2_1", fieldValue); case "fna_d_name_2_2" -> commonField.getOthers().put("recProd2_2", fieldValue); - case "fna_d_name_3" -> commonField.getOthers().put("recProd3_2", fieldValue); + case "fna_d_name_3" -> commonField.getOthers().put("recProd3_1", fieldValue); case "fna_d_name_3_2" -> commonField.getOthers().put("recProd3_2", fieldValue); case "fna_d_name_4" -> commonField.getOthers().put("recProd4_1", fieldValue); case "fna_d_name_4_2" -> commonField.getOthers().put("recProd4_2", fieldValue); @@ -2970,9 +2994,6 @@ public class PdfService extends AbstractBaseEntityService commonField.setName(fieldValue); - //case "fill_3_1" -> commonField.getOthers().put("name1", fieldValue); - //case "fill_3_2" -> commonField.getOthers().put("name2", fieldValue); case "fill_4" -> commonField.setNameChi(fieldValue); case "fill_5" -> commonField.setGender(fieldValue); case "fill_6" -> commonField.setDateOfBirth(fieldValue); @@ -3054,7 +3075,8 @@ public class PdfService extends AbstractBaseEntityService {commonField.setFna_c3b_income(fieldValue); commonField.setFna_c3b_salary(fieldValue);} + //since it will tick both income and salary and make SLHK income and salary ticked + //case "toggle_1f" -> {commonField.setFna_c3b_income(fieldValue); commonField.setFna_c3b_salary(fieldValue);} case "toggle_1g" -> {commonField.setFna_c3b_saving(fieldValue); commonField.setFna_c3b_investments(fieldValue);} //case "toggle_1h" -> commonField.setFna_c3b_policy(fieldValue); case "toggle_1i56" -> commonField.setFna_c3b_others(fieldValue); @@ -3081,8 +3103,6 @@ public class PdfService extends AbstractBaseEntityService commonField.setFirstName(fieldValue); - case "GivenName1" -> commonField.setGivenName(fieldValue); case "ChineseName1" -> commonField.setNameChi(fieldValue); case "male" -> commonField.setGenderMale(fieldValue); @@ -3113,16 +3133,6 @@ public class PdfService extends AbstractBaseEntityService commonField.setOccupationTitle(fieldValue); //Income1 = IDA commonField.getIncomeSalary() + commonField.getIncomeBonus() ??? beware of it may have , and english P.A. or even USD - case "Room1" -> commonField.getOthers().put("crAddressRoom", fieldValue); - case "Floor1" -> commonField.getOthers().put("crAddressFloor", fieldValue); - case "Block1" -> commonField.getOthers().put("crAddressBlock", fieldValue); - case "Building1" -> commonField.getOthers().put("crAddressBuilding", fieldValue); - case "Street1" -> commonField.getOthers().put("crAddressStreet", fieldValue); - case "City1" -> commonField.getOthers().put("crAddressCity", fieldValue); - case "District1" -> commonField.getOthers().put("crAddressDistrict", fieldValue); - case "Country1" -> commonField.getOthers().put("crAddressCountry", fieldValue); - case "PostalCode1" -> commonField.getOthers().put("crAddressPostalCode", fieldValue); - case "Checkbox_Y" -> commonField.setTobarccoYes(fieldValue); case "Checkbox_N" -> commonField.setTobarccoNo(fieldValue); /* Page1 End */ @@ -3179,7 +3189,6 @@ public class PdfService extends AbstractBaseEntityService commonField.setName(fieldValue); case "part2_1a" -> commonField.setFna_b1_a(fieldValue); case "part2_1a_amount" -> commonField.setFna_b1_a_amount(fieldValue); @@ -3259,11 +3268,10 @@ public class PdfService extends AbstractBaseEntityService commonField.setName(fieldValue); case "date_of_birth" -> commonField.setDateOfBirth(fieldValue); case "occupation" -> commonField.setOccupationTitle(fieldValue); - case "address1" -> commonField.getOthers().put("address1", fieldValue); - case "address2" -> commonField.getOthers().put("address2", fieldValue); + //case "address1" -> commonField.getOthers().put("address1", fieldValue); + //case "address2" -> commonField.getOthers().put("address2", fieldValue); case "contact" -> commonField.setContactNo(fieldValue); case "email" -> commonField.setEmail(fieldValue); @@ -3424,33 +3432,6 @@ public class PdfService extends AbstractBaseEntityService commonField.setCompanyNature1(fieldValue); case "1_12_8_2" -> commonField.setCompanyNature2(fieldValue); - /* - case "ch1_13_rm" -> commonField.setCrAddressRoom(fieldValue); - case "ch1_13_floor" -> commonField.setCrAddressFloor(fieldValue); - case "ch1_13_block" -> commonField.setCrAddressBlock(fieldValue); - case "ch1_13_building" -> commonField.setCrAddressBuilding(fieldValue); - case "ch1_13_street" -> commonField.setCrAddressStreet(fieldValue); - case "ch1_13_country" -> commonField.setCrAddressCountry(fieldValue); - case "1_13_zip" -> commonField.setCrAddressPostalCode(fieldValue); - - case "ch1_13_corr_rm" -> commonField.setCorAddressRoom(fieldValue); - case "ch1_13_corr_floor" -> commonField.setCorAddressFloor(fieldValue); - case "ch1_13_corr_block" -> commonField.setCorAddressBlock(fieldValue); - case "ch1_13_corr_building" -> commonField.setCorAddressBuilding(fieldValue); - case "ch1_13_corr_street" -> commonField.setCorAddressStreet(fieldValue); - case "ch1_13_corr_zip" -> commonField.setCorAddressPostalCode(fieldValue); - */ - case "ch1_13_rm" -> commonField.getOthers().put("crAddressRoom", fieldValue); - case "ch1_13_floor" -> commonField.getOthers().put("crAddressFloor", fieldValue); - case "ch1_13_block" -> commonField.getOthers().put("crAddressBlock", fieldValue); - case "ch1_13_building" -> commonField.getOthers().put("crAddressBuilding", fieldValue); - case "ch1_13_street" -> commonField.getOthers().put("crAddressStreet", fieldValue); - case "ch1_13_country" -> commonField.getOthers().put("crAddressCountry", fieldValue); - case "1_13_zip" -> commonField.getOthers().put("crAddressPostalCode", fieldValue); - case "ch1_13_hk" -> commonField.getOthers().put("crAddressHk", fieldValue); - case "ch1_13_kln" -> commonField.getOthers().put("crAddressKln", fieldValue); - case "ch1_13_nt" -> commonField.getOthers().put("crAddressNt", fieldValue); - case "ch1_13_corr_rm" -> commonField.getOthers().put("corAddressRoom", fieldValue); case "ch1_13_corr_floor" -> commonField.getOthers().put("corAddressFloor", fieldValue); case "ch1_13_corr_block" -> commonField.getOthers().put("corAddressBlock", fieldValue); @@ -3466,23 +3447,23 @@ public class PdfService extends AbstractBaseEntityService commonField.setTaxResidency1(fieldValue); case "1_14d_tax_num1" -> commonField.setTaxPin1(fieldValue); - case "ch1_14d_reason1_a" -> commonField.setTaxReason1("A"); - case "ch1_14d_reason1_b" -> commonField.setTaxReason1("B"); - case "ch1_14d_reason1_c" -> commonField.setTaxReason1("C"); + //case "ch1_14d_reason1_a" -> commonField.setTaxReason1("A"); + //case "ch1_14d_reason1_b" -> commonField.setTaxReason1("B"); + //case "ch1_14d_reason1_c" -> commonField.setTaxReason1("C"); case "1_14d_explain1" -> commonField.setTaxReasonB1(fieldValue); case "1_14d_tax2" -> commonField.setTaxResidency2(fieldValue); case "1_14d_tax_num2" -> commonField.setTaxPin2(fieldValue); - case "ch1_14d_reason2_a" -> commonField.setTaxReason2("A"); - case "ch1_14d_reason2_b" -> commonField.setTaxReason2("B"); - case "ch1_14d_reason2_c" -> commonField.setTaxReason2("C"); + //case "ch1_14d_reason2_a" -> commonField.setTaxReason2("A"); + //case "ch1_14d_reason2_b" -> commonField.setTaxReason2("B"); + //case "ch1_14d_reason2_c" -> commonField.setTaxReason2("C"); case "1_14d_explain2" -> commonField.setTaxReasonB2(fieldValue); case "1_14d_tax3" -> commonField.setTaxResidency3(fieldValue); case "1_14d_tax_num3" -> commonField.setTaxPin3(fieldValue); - case "ch1_14d_reason3_a" -> commonField.setTaxReason3("A"); - case "ch1_14d_reason3_b" -> commonField.setTaxReason3("B"); - case "ch1_14d_reason3_c" -> commonField.setTaxReason3("C"); + //case "ch1_14d_reason3_a" -> commonField.setTaxReason3("A"); + //case "ch1_14d_reason3_b" -> commonField.setTaxReason3("B"); + //case "ch1_14d_reason3_c" -> commonField.setTaxReason3("C"); case "1_14d_explain3" -> commonField.setTaxReasonB3(fieldValue); case "ch2_5_1p" -> commonField.setEduPri(fieldValue); @@ -3652,9 +3633,6 @@ public class PdfService extends AbstractBaseEntityService commonField.setFirstName(fieldValue); - case "fill_16" -> commonField.setGivenName(fieldValue); - case "fill_17" -> commonField.setNameChi(fieldValue); case "Text1" -> commonField.setIdCard(fieldValue); @@ -3668,11 +3646,11 @@ public class PdfService extends AbstractBaseEntityService commonField.setPlaceOfBirth(fieldValue); /* Page1 End */ /* Page2 Start */ - case "Text16_1" -> commonField.getOthers().put("crAddress1", fieldValue); - case "Text16_2" -> commonField.getOthers().put("crAddress2", fieldValue); + //case "Text16_1" -> commonField.getOthers().put("crAddress1", fieldValue); + //case "Text16_2" -> commonField.getOthers().put("crAddress2", fieldValue); - case "address1" -> commonField.getOthers().put("address1", fieldValue); - case "address2" -> commonField.getOthers().put("address2", fieldValue); + //case "address1" -> commonField.getOthers().put("address1", fieldValue); + //case "address2" -> commonField.getOthers().put("address2", fieldValue); //case "undefined_6" -> commonField.setContactNo(fieldValue); @@ -3734,6 +3712,7 @@ public class PdfService extends AbstractBaseEntityService commonField.getOthers().put("futureAddressNo", fieldValue); /* Page12 End */ /* Page13 Start */ + /* case "fill_9_6" -> commonField.setIncomeSalary(fieldValue); case "fill_1k0_5" -> commonField.setIncomeSalaryLastYear(fieldValue); case "fill_13_4" -> commonField.setIncomeBonus(fieldValue); @@ -3748,8 +3727,7 @@ public class PdfService extends AbstractBaseEntityService commonField.setIncomeRentalsLastYear(fieldValue); case "fill_k37_2" -> commonField.setIncomeOther(fieldValue); case "fill_38_2" -> commonField.setIncomeOtherLastYear(fieldValue); - //case "fill_37_2" -> commonField.setTotalAnnualIncome(fieldValue); - + case "fill_39_2" -> commonField.setFna_c1b_amount(fieldValue); case "fill_4114" -> commonField.setAssetCash(fieldValue); @@ -3759,6 +3737,8 @@ public class PdfService extends AbstractBaseEntityService commonField.setFna_c2a_amount(fieldValue); case "fill_1111" -> commonField.setFna_c2b_amount(fieldValue); + */ + /* Page13 End */ /* Page14 Start */ case "fill_73_1" -> commonField.getOthers().put("realEstateAddress1_1", fieldValue); @@ -3791,8 +3771,6 @@ public class PdfService extends AbstractBaseEntityService commonField.setFirstName(fieldValue); - case "given_name" -> commonField.setGivenName(fieldValue); case "ChineseName1" -> commonField.setNameChi(fieldValue); case "ch1_4_m" -> commonField.setGenderMale(fieldValue); @@ -3835,16 +3813,6 @@ public class PdfService extends AbstractBaseEntityService commonField.setCompanyNature1(fieldValue); case "1_12_nature_2" -> commonField.setCompanyNature2(fieldValue); - case "1_13a_rm" -> commonField.getOthers().put("crAddressRoom", fieldValue); - case "1_13a_floor" -> commonField.getOthers().put("crAddressFloor", fieldValue); - case "1_13a_block" -> commonField.getOthers().put("crAddressBlock", fieldValue); - case "1_13a_building" -> commonField.getOthers().put("crAddressBuilding", fieldValue); - case "1_13a_district" -> commonField.getOthers().put("crAddressCountry", fieldValue); - case "1_13a_zip" -> commonField.getOthers().put("crAddressPostalCode", fieldValue); - case "ch1_13a_hk" -> commonField.getOthers().put("crAddressHK", fieldValue); - case "ch1_13a_kln" -> commonField.getOthers().put("crAddressKln", fieldValue); - case "ch1_13a_nt" -> commonField.getOthers().put("crAddressNt", fieldValue); - case "1_13bc_rm" -> commonField.getOthers().put("corAddressRoom", fieldValue); case "1_13bc_floor" -> commonField.getOthers().put("corAddressFloor", fieldValue); case "1_13bc_block" -> commonField.getOthers().put("corAddressBlock", fieldValue); @@ -3866,6 +3834,7 @@ public class PdfService extends AbstractBaseEntityService commonField.setTaxPin1(fieldValue); case "1_14d_tax_num2" -> commonField.setTaxPin2(fieldValue); case "1_14d_tax_num3" -> commonField.setTaxPin3(fieldValue); + /* case "ch1_14d_reason1_a" -> { if("Off".equals(fieldValue)){ commonField.setTaxReason1("A"); @@ -3911,6 +3880,7 @@ public class PdfService extends AbstractBaseEntityService commonField.setTaxReasonB1(fieldValue); case "1_14d_explain2" -> commonField.setTaxReasonB2(fieldValue); case "1_14d_explain3" -> commonField.setTaxReasonB3(fieldValue); @@ -4206,6 +4176,8 @@ public class PdfService extends AbstractBaseEntityService= bValue) - return String.valueOf(aValue - bValue); - else + if (aValue >= bValue) { + double difference = aValue - bValue; + + // --- Formatting the result --- + // 1. Get a formatter instance (using US locale for comma thousands separator and period decimal) + NumberFormat formatter = NumberFormat.getNumberInstance(Locale.US); + DecimalFormat decimalFormatter = (DecimalFormat) formatter; + + // 2. Apply the desired pattern: #,##0.00 + decimalFormatter.applyPattern("#,##0.00"); + + // 3. Format and return the difference + return decimalFormatter.format(difference); + } else { + // Return an empty string if aValue is less than bValue return ""; + } } public static Map getCountryAndPhoneNo(String contactNo){ @@ -4326,4 +4324,39 @@ public class PdfService extends AbstractBaseEntityService