Commit 492a2604 by zhangxingmin

push

parent 5ae4a98f
...@@ -44,6 +44,7 @@ import org.springframework.stereotype.Service; ...@@ -44,6 +44,7 @@ import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.math.RoundingMode;
import java.time.LocalDate; import java.time.LocalDate;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.YearMonth; import java.time.YearMonth;
...@@ -1054,12 +1055,14 @@ public class ApiSalaryServiceImpl implements ApiSalaryService { ...@@ -1054,12 +1055,14 @@ public class ApiSalaryServiceImpl implements ApiSalaryService {
* @param totalAmount * @param totalAmount
* @return * @return
*/ */
public void checkAmount(BigDecimal paidAmount,BigDecimal totalAmount) { public void checkAmount(BigDecimal paidAmount, BigDecimal totalAmount) {
paidAmount = ObjectUtils.defaultIfNull(paidAmount, BigDecimal.ZERO); paidAmount = ObjectUtils.defaultIfNull(paidAmount, BigDecimal.ZERO);
totalAmount = ObjectUtils.defaultIfNull(totalAmount, BigDecimal.ZERO); totalAmount = ObjectUtils.defaultIfNull(totalAmount, BigDecimal.ZERO);
if (paidAmount.compareTo(totalAmount) != 0) { // 统一保留两位小数后比较
//汇款明细合计总金额和实发总金额必须相等 BigDecimal paidScaled = paidAmount.setScale(2, RoundingMode.HALF_UP);
throw new BusinessException("汇款明细合计总金额和实发总金额必须相等"); BigDecimal totalScaled = totalAmount.setScale(2, RoundingMode.HALF_UP);
if (paidScaled.compareTo(totalScaled) != 0) {
throw new BusinessException("汇款明细合计总金额和实发总金额必须相等(精确到分)");
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment