package com.mydreamjob.salarycalculator; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import java.math.BigDecimal; import java.time.LocalDate; @Data @Builder @NoArgsConstructor @AllArgsConstructor public class SalaryCalculationResult { private String cityCode; private String cityName; private SalaryDataLevel dataLevel; private String policyVersion; private LocalDate policyEffectiveDate; private String taxRulesVersion; private boolean estimate; private Integer monthIndex; private BigDecimal grossMonthlySalary; private BigDecimal specialAdditionalDeduction; private BigDecimal socialSecurityBase; private BigDecimal housingFundBase; private BigDecimal pensionRate; private BigDecimal medicalRate; private BigDecimal unemploymentRate; private BigDecimal housingFundRate; private BigDecimal seriousIllnessMonthlyFee; private BigDecimal pension; private BigDecimal medical; private BigDecimal unemployment; private BigDecimal housingFund; private BigDecimal cumulativeGrossIncome; private BigDecimal cumulativeSocialInsurance; private BigDecimal cumulativeHousingFund; private BigDecimal cumulativeSeriousIllness; private BigDecimal cumulativeBasicDeduction; private BigDecimal cumulativeSpecialAdditionalDeduction; private BigDecimal cumulativeTaxableIncome; private BigDecimal cumulativeTaxDue; private BigDecimal previouslyWithheldTax; private BigDecimal currentMonthTax; private BigDecimal netSalary; }