package cn.iocoder.yudao.module.aftersales.controller.admin.ticket.vo.ticket;
|
|
import io.swagger.v3.oas.annotations.media.Schema;
|
import jakarta.validation.constraints.NotEmpty;
|
import jakarta.validation.constraints.NotNull;
|
import lombok.Data;
|
|
import java.math.BigDecimal;
|
import java.util.List;
|
|
/**
|
* 售后工单保存 VO
|
*/
|
@Schema(description = "售后工单 - 保存 Request VO")
|
@Data
|
public class AfterSaleTicketSaveReqVO {
|
|
@Schema(description = "工单编号", example = "1")
|
private Long id;
|
|
@Schema(description = "工单主题", requiredMode = Schema.RequiredMode.REQUIRED, example = "产品外观缺陷")
|
@NotEmpty(message = "工单主题不能为空")
|
private String name;
|
|
@Schema(description = "客户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
@NotNull(message = "客户不能为空")
|
private Long customerId;
|
|
@Schema(description = "联系人编号", example = "1")
|
private Long contactId;
|
|
@Schema(description = "销售订单编号", example = "1")
|
private Long saleOrderId;
|
|
@Schema(description = "销售订单号", example = "SO202401010001")
|
private String saleOrderNo;
|
|
@Schema(description = "合同编号", example = "1")
|
private Long contractId;
|
|
@Schema(description = "问题描述", example = "收到货后发现产品表面有划痕")
|
private String issueDescription;
|
|
@Schema(description = "备注", example = "客户要求尽快处理")
|
private String remark;
|
|
@Schema(description = "明细行列表")
|
private List<Item> items;
|
|
@Schema(description = "工单明细行")
|
@Data
|
public static class Item {
|
|
@Schema(description = "销售订单行编号", example = "1")
|
private Long saleOrderItemId;
|
|
@Schema(description = "MDM物料编号", requiredMode = Schema.RequiredMode.REQUIRED)
|
@NotNull(message = "物料不能为空")
|
private Long itemId;
|
|
@Schema(description = "物料编码", example = "MAT-001")
|
private String itemCode;
|
|
@Schema(description = "物料名称", example = "电子元器件")
|
private String itemName;
|
|
@Schema(description = "生产批次编号", example = "1")
|
private Long batchId;
|
|
@Schema(description = "生产批次号", example = "BATCH-2024-001")
|
private String batchCode;
|
|
@Schema(description = "销售数量", example = "100.000")
|
private BigDecimal saleQuantity;
|
|
@Schema(description = "退货数量", example = "10.000")
|
private BigDecimal returnQuantity;
|
|
@Schema(description = "是否需要维修", example = "false")
|
private Boolean needRepair;
|
|
@Schema(description = "是否需要退货", example = "true")
|
private Boolean needReturn;
|
|
@Schema(description = "备注")
|
private String remark;
|
}
|
|
}
|