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.LocalDate;
|
import java.time.LocalDateTime;
|
import java.util.List;
|
|
/**
|
* 销售订单流程卡 DTO
|
* 整合了台账信息、产品列表以及绑定的工艺路线
|
*
|
* @author deslrey
|
* @version 1.0
|
* @since 2026/03/26
|
*/
|
@Data
|
public class SalesProcessCardDto {
|
|
@ApiModelProperty("订单编号")
|
private String salesContractNo;
|
|
@ApiModelProperty("客户名称")
|
private String customerName;
|
|
@ApiModelProperty("交货日期")
|
@JsonFormat(pattern = "yyyy-MM-dd")
|
private LocalDate deliveryDate;
|
|
@ApiModelProperty("工艺路线总览")
|
private String processPathDisplay;
|
|
@ApiModelProperty("订单加工要求")
|
private String orderProcessRequirement;
|
|
@ApiModelProperty("该绑定的工艺路线节点")
|
private List<ProcessNodeDto> routeNodes;
|
|
@ApiModelProperty("流程卡行明细")
|
private List<ProcessCardItemDto> items;
|
|
// 底部信息
|
@ApiModelProperty("总合计数量")
|
private BigDecimal totalQuantity;
|
|
@ApiModelProperty("总合计面积")
|
private BigDecimal totalArea;
|
|
@ApiModelProperty("制单员")
|
private String register;
|
|
@ApiModelProperty("制单日期")
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
private LocalDateTime registerDate;
|
|
/**
|
* 内部类:对应产品表格行
|
*/
|
@Data
|
public static class ProcessCardItemDto {
|
@ApiModelProperty("楼层编号")
|
private String floorCode;
|
|
@ApiModelProperty("产品描述")
|
private String productDescription;
|
|
@ApiModelProperty("宽(弧长)")
|
private BigDecimal width;
|
|
@ApiModelProperty("高")
|
private BigDecimal height;
|
|
@ApiModelProperty("数量")
|
private BigDecimal quantity;
|
|
@ApiModelProperty("面积(㎡)")
|
private BigDecimal area;
|
|
@ApiModelProperty("明细加工要求")
|
private String processRequirement;
|
|
@ApiModelProperty("额外加工明细")
|
private List<String> extraProcesses;
|
}
|
|
/**
|
* 内部类:对应 SalesLedgerProcessRoute 的节点信息
|
*/
|
@Data
|
public static class ProcessNodeDto {
|
@ApiModelProperty("工艺节点ID")
|
private Long processRouteItemId;
|
|
@ApiModelProperty("工艺节点名称")
|
private String processRouteItemName;
|
|
@ApiModelProperty("排序号")
|
private Integer dragSort;
|
|
@ApiModelProperty("备注")
|
private String remark;
|
}
|
}
|