package cn.iocoder.yudao.module.aftersales.controller.admin.ticket.vo.ticket;
|
|
import io.swagger.v3.oas.annotations.media.Schema;
|
import lombok.Data;
|
|
import java.math.BigDecimal;
|
import java.time.LocalDateTime;
|
import java.util.List;
|
|
/**
|
* 售后工单响应 VO
|
*/
|
@Schema(description = "售后工单 - 响应 VO")
|
@Data
|
public class AfterSaleTicketRespVO {
|
|
@Schema(description = "工单编号", example = "1")
|
private Long id;
|
|
@Schema(description = "工单单号", example = "AS20240101000001")
|
private String no;
|
|
@Schema(description = "工单主题", example = "产品外观缺陷")
|
private String name;
|
|
@Schema(description = "客户编号", example = "1")
|
private Long customerId;
|
|
@Schema(description = "客户名称")
|
private String customerName;
|
|
@Schema(description = "联系人编号", example = "1")
|
private Long contactId;
|
|
@Schema(description = "联系人名称")
|
private String contactName;
|
|
@Schema(description = "销售订单编号", example = "1")
|
private Long saleOrderId;
|
|
@Schema(description = "销售订单号", example = "SO202401010001")
|
private String saleOrderNo;
|
|
@Schema(description = "合同编号", example = "1")
|
private Long contractId;
|
|
@Schema(description = "问题类型: 1-一般问题 2-维修问题 3-退货问题", example = "1")
|
private Integer issueType;
|
|
@Schema(description = "问题分类", example = "外观缺陷")
|
private String issueCategory;
|
|
@Schema(description = "问题描述", example = "收到货后发现产品表面有划痕")
|
private String issueDescription;
|
|
@Schema(description = "严重程度: 0-轻微 1-一般 2-严重 3-致命", example = "1")
|
private Integer severityLevel;
|
|
@Schema(description = "状态: 0-草稿 10-处理中 30-待退货 40-待退款/换货 50-已完结 60-已关闭 99-已取消", example = "0")
|
private Integer status;
|
|
@Schema(description = "负责人用户编号", example = "1")
|
private Long ownerUserId;
|
|
@Schema(description = "负责人名称")
|
private String ownerUserName;
|
|
@Schema(description = "处理人用户编号", example = "2")
|
private Long handlerUserId;
|
|
@Schema(description = "处理人名称")
|
private String handlerUserName;
|
|
@Schema(description = "BPM 工作流实例编号")
|
private String processInstanceId;
|
|
@Schema(description = "关联退货申请编号", example = "1")
|
private Long returnId;
|
|
@Schema(description = "关联维修记录编号", example = "1")
|
private Long repairId;
|
|
@Schema(description = "解决时间")
|
private LocalDateTime resolvedTime;
|
|
@Schema(description = "关闭时间")
|
private LocalDateTime closedTime;
|
|
@Schema(description = "备注")
|
private String remark;
|
|
@Schema(description = "创建者")
|
private String creator;
|
|
@Schema(description = "创建时间")
|
private LocalDateTime createTime;
|
|
@Schema(description = "更新者")
|
private String updater;
|
|
@Schema(description = "更新时间")
|
private LocalDateTime updateTime;
|
|
@Schema(description = "明细行列表")
|
private List<Item> items;
|
|
@Schema(description = "工单明细行")
|
@Data
|
public static class Item {
|
|
@Schema(description = "编号", example = "1")
|
private Long id;
|
|
@Schema(description = "工单编号", example = "1")
|
private Long ticketId;
|
|
@Schema(description = "销售订单行编号", example = "1")
|
private Long saleOrderItemId;
|
|
@Schema(description = "MDM物料编号", example = "1")
|
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;
|
}
|
|
}
|