pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSe/VoTradeDetails.java
@@ -1,8 +1,15 @@
package com.dy.pipIrrGlobal.voSe;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import com.alibaba.fastjson2.annotation.JSONField;
import com.alibaba.fastjson2.writer.ObjectWriterImplToString;
import com.dy.common.po.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
@@ -16,30 +23,157 @@
 */
@Data
@Schema(title = "财务对账,交易明细视图对象")
@JsonPropertyOrder({"orderNumber", "clientName", "cardNum", "idCard", "clientNum", "phone", "operateType", "tradeAmount", "waterCost", "cardCost", "gift", "refundAmount", "money", "paymentName", "tradeTime", "cashierId", "cashierName", "cardState", "districtTitle", "villageId"})
@HeadRowHeight(30)
@ContentRowHeight(20)
public class VoTradeDetails implements BaseEntity {
    private static final long serialVersionUID = 202402012040001L;
    @Schema(title = "农户姓名")
    /**
     * 订单号
     */
    @ExcelProperty(value = {"${title}", "订单号"})
    @ColumnWidth(25)
    private String orderNumber;
    /**
     * 农户姓名
     */
    @ExcelProperty(value = {"${title}", "农户姓名"})
    @ColumnWidth(15)
    private String clientName;
    @Schema(title = "联系电话")
    private String phone;
    /**
     * 水卡编号
     */
    @JSONField(serializeUsing= ObjectWriterImplToString.class)
    @ExcelProperty(value = {"${title}", "水卡编号"})
    @ColumnWidth(20)
    private String cardNum;
    @Schema(title = "农户编号")
    /**
     * 身份证号
     */
    @ExcelProperty(value = {"${title}", "身份证号"})
    @ColumnWidth(15)
    private String idCard;
    /**
     * 农户编号
     */
    @ExcelProperty(value = {"${title}", "农户编号"})
    @ColumnWidth(15)
    private String clientNum;
    @Schema(title = "业务类型")
    /**
     * 联系电话
     */
    @ExcelProperty(value = {"${title}", "联系电话"})
    @ColumnWidth(15)
    private String phone;
    /**
     * 业务类型
     */
    @ExcelProperty(value = {"${title}", "业务类型"})
    @ColumnWidth(15)
    private String operateType;
    @Schema(title = "交易金额")
    /**
     * 交易金额
     */
    @ExcelProperty(value = {"${title}", "交易金额"})
    @ColumnWidth(15)
    @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
    private Double tradeAmount;
    @Schema(title = "付款方式")
    /**
     * 购水金额
     */
    @ExcelProperty(value = {"${title}", "购水金额"})
    @ColumnWidth(15)
    @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
    private Double waterCost;
    /**
     * 购卡金额
     */
    @ExcelProperty(value = {"${title}", "购卡金额"})
    @ColumnWidth(15)
    @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
    private Double cardCost;
    /**
     * 赠送金额
     */
    @ExcelProperty(value = {"${title}", "赠送金额"})
    @ColumnWidth(15)
    @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
    private Double gift;
    /**
     * 返还金额
     */
    @ExcelProperty(value = {"${title}", "返还金额"})
    @ColumnWidth(15)
    @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
    private Double refundAmount;
    /**
     * 余额
     */
    @ExcelProperty(value = {"${title}", "余额"})
    @ColumnWidth(15)
    @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
    private Double money;
    /**
     * 付款方式
     */
    @ExcelProperty(value = {"${title}", "付款方式"})
    @ColumnWidth(15)
    private String paymentName;
    /**
     * 交易时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Schema(title = "交易时间")
    private Date tradeDate;
    @ExcelProperty(value = {"${title}", "交易时间"})
    @ColumnWidth(20)
    private Date tradeTime;
    /**
     * 收银员ID
     */
    @JSONField(serializeUsing= ObjectWriterImplToString.class)
    @ExcelIgnore
    private Long cashierId;
    /**
     * 收银员姓名
     */
    @ExcelProperty(value = {"${title}", "收银员姓名"})
    @ColumnWidth(15)
    private String cashierName;
    /**
     * 卡片状态
     */
    @ExcelProperty(value = {"${title}", "卡片状态"})
    @ColumnWidth(15)
    private String cardState;
    /**
     * 村庄名称
     */
    @ExcelProperty(value = {"${title}", "村庄名称"})
    @ColumnWidth(35)
    private String districtTitle;
    /**
     * 村庄ID
     */
    @JSONField(serializeUsing= ObjectWriterImplToString.class)
    @ExcelIgnore
    private Long villageId;
}