Commit 09a953d3 authored by fengjie's avatar fengjie

格式化金额

parent d26cdd5e
package cn.quantgroup.customer.model.order; package cn.quantgroup.customer.model.order;
import cn.quantgroup.customer.util.MoneySerializer;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date;
/** /**
* @author Wang Xiangwei * @author Wang Xiangwei
...@@ -48,21 +52,25 @@ public class LoanOrder { ...@@ -48,21 +52,25 @@ public class LoanOrder {
/** /**
* 担保费 * 担保费
*/ */
@JsonSerialize(using = MoneySerializer.class)
private BigDecimal guaranteeFee; private BigDecimal guaranteeFee;
/** /**
* 其他费用 * 其他费用
*/ */
@JsonSerialize(using = MoneySerializer.class)
private BigDecimal otherFee; private BigDecimal otherFee;
/** /**
* 一次性服务费 * 一次性服务费
*/ */
@JsonSerialize(using = MoneySerializer.class)
private BigDecimal onceServiceFee; private BigDecimal onceServiceFee;
/** /**
* 月利率 * 月利率
*/ */
@JsonSerialize(using = MoneySerializer.class)
private BigDecimal monthlyInterestRate; private BigDecimal monthlyInterestRate;
/** /**
...@@ -94,4 +102,7 @@ public class LoanOrder { ...@@ -94,4 +102,7 @@ public class LoanOrder {
* 是否展示还款计划 * 是否展示还款计划
*/ */
private Boolean showPlans; private Boolean showPlans;
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
private Date paidAt;
} }
...@@ -2,6 +2,8 @@ package cn.quantgroup.customer.model.order; ...@@ -2,6 +2,8 @@ package cn.quantgroup.customer.model.order;
import cn.quantgroup.customer.enums.UserRepayType; import cn.quantgroup.customer.enums.UserRepayType;
import cn.quantgroup.customer.util.DateUtil; import cn.quantgroup.customer.util.DateUtil;
import cn.quantgroup.customer.util.MoneySerializer;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal; import java.math.BigDecimal;
...@@ -24,42 +26,50 @@ public class Repayment { ...@@ -24,42 +26,50 @@ public class Repayment {
/** /**
* 本金 * 本金
*/ */
@JsonSerialize(using = MoneySerializer.class)
private BigDecimal principal; private BigDecimal principal;
/** /**
* 利息 * 利息
*/ */
@JsonSerialize(using = MoneySerializer.class)
private BigDecimal interest; private BigDecimal interest;
/** /**
* 担保费 * 担保费
*/ */
@JsonSerialize(using = MoneySerializer.class)
private BigDecimal serviceFee; private BigDecimal serviceFee;
/** /**
* 其他担保 * 其他担保
*/ */
@JsonSerialize(using = MoneySerializer.class)
private BigDecimal otherFee; private BigDecimal otherFee;
/** /**
* 罚息 * 罚息
*/ */
@JsonSerialize(using = MoneySerializer.class)
private BigDecimal overdueInterest; private BigDecimal overdueInterest;
/** /**
* 当前减免 * 当前减免
*/ */
@JsonSerialize(using = MoneySerializer.class)
private BigDecimal reliefAmount; private BigDecimal reliefAmount;
/** /**
* 还款总额 * 还款总额
*/ */
@JsonSerialize(using = MoneySerializer.class)
private BigDecimal repayAmount; private BigDecimal repayAmount;
/** /**
* 应还总额 * 应还总额
*/ */
@JsonSerialize(using = MoneySerializer.class)
private BigDecimal requiredRepayment; private BigDecimal requiredRepayment;
/** /**
......
package cn.quantgroup.customer.util;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider;
import java.io.IOException;
import java.math.BigDecimal;
/**
* 在字段或get上加:
* <b>@JsonSerialize(using = MoneySerializer.class)</b>
* @author Jie.Feng
* @date 2018/8/28
*/
public class MoneySerializer extends JsonSerializer<BigDecimal> {
/**
* Method that can be called to ask implementation to serialize
* values of type this serializer handles.
*
* @param value Value to serialize; can <b>not</b> be null.
* @param gen Generator used to output resulting Json content
* @param serializers Provider that can be used to get serializers for
*/
@Override
public void serialize(BigDecimal value, JsonGenerator gen, SerializerProvider serializers) throws IOException {
if(value == null)
gen.writeString("0.00");
else
gen.writeString(value.setScale(2, BigDecimal.ROUND_HALF_UP).toString());
}
}
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