package com.klp.domain.vo; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import java.math.BigDecimal; import java.util.Date; /** * 合同挂接情况统计视图对象 * 基于 crm_order + wms_coil_contract_rel + wms_material_coil 三表联合统计 * * @author klp * @date 2026-06-30 */ @Data @ExcelIgnoreUnannotated public class ContractCoilStatisticsVo { private static final long serialVersionUID = 1L; // ========== 合同信息(来自 crm_order)========== /** 订单ID */ @ExcelProperty(value = "订单ID") private Long orderId; /** 订单编号 */ @ExcelProperty(value = "订单编号") private String orderCode; /** 合同号 */ @ExcelProperty(value = "合同号") private String contractCode; /** 合同名称 */ @ExcelProperty(value = "合同名称") private String contractName; /** 需方(客户) */ @ExcelProperty(value = "需方") private String customer; /** 供方 */ @ExcelProperty(value = "供方") private String supplier; /** 销售员 */ @ExcelProperty(value = "销售员") private String salesman; /** 合同状态 0=草稿 1=生效 2=作废 3=已完成 */ @ExcelProperty(value = "合同状态") private Long status; /** 订单总额 */ @ExcelProperty(value = "订单总额") private BigDecimal orderAmount; /** 签订时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @ExcelProperty(value = "签订时间") private Date signTime; /** 交货日期 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @ExcelProperty(value = "交货日期") private Date deliveryDate; // ========== 统计字段 ========== /** 挂接钢卷数量 */ @ExcelProperty(value = "挂接钢卷数") private Long coilCount; /** 钢卷总净重(kg) */ @ExcelProperty(value = "钢卷总净重(kg)") private BigDecimal totalNetWeight; /** 钢卷总毛重(kg) */ @ExcelProperty(value = "钢卷总毛重(kg)") private BigDecimal totalGrossWeight; }