package com.ruoyi.sales.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
/**
*
* 打印销售发货单Dto
*
*
* @author deslrey
* @version 1.0
* @since 2026/03/27 15:30
*/
@Data
public class SalesInvoicesDto {
@ApiModelProperty("客户名称")
private String customerName;
@ApiModelProperty("联系人")
private String contactPerson;
@ApiModelProperty("联系电话")
private String contactPhone;
@ApiModelProperty("送货地址")
private String companyAddress;
@ApiModelProperty("发货单号")
private String deliveryNo;
@ApiModelProperty("对方单号")
private String externalOrderNo;
@ApiModelProperty("总合计数量")
private BigDecimal totalQuantity;
@ApiModelProperty("总合计面积")
private BigDecimal totalArea;
@ApiModelProperty("制单员")
private String orderMaker;
@ApiModelProperty("制单日期")
@JsonFormat(pattern = "yyyy/MM/dd")
private LocalDateTime executionDate;
@ApiModelProperty("发货订单分组")
private List groups;
/**
* 订单分组 DTO
*/
@Data
public static class InvoiceOrderGroupDto {
@ApiModelProperty("订单编号")
private String salesContractNo;
@ApiModelProperty("产品名称")
private String productName;
@ApiModelProperty("明细列表")
private List items;
@ApiModelProperty("小计数量")
private BigDecimal groupTotalQuantity;
@ApiModelProperty("小计面积")
private BigDecimal groupTotalArea;
}
/**
* 发货单明细 DTO
*/
@Data
public static class InvoiceItemDto {
@ApiModelProperty("楼层编号")
private String floorCode;
@ApiModelProperty("宽*高")
private String widthHeight;
@ApiModelProperty("数量")
private BigDecimal quantity;
@ApiModelProperty("面积")
private BigDecimal area;
@ApiModelProperty("备注")
private String remark;
@ApiModelProperty("加工要求")
private String processRequirement;
}
}