package cn.iocoder.yudao.module.bpm.controller.admin.oa.vo.print;

import cn.iocoder.yudao.module.bpm.controller.admin.oa.vo.BpmOABaseRespVO;
import cn.iocoder.yudao.module.bpm.controller.admin.oa.vo.reimbursement.BpmOAReimbursementRespVO;
import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.task.BpmTaskRespVO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

import java.util.List;

@Schema(description = "管理后台 - 报销打印数回数据 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class BpmOAReimbursementPrintDataRespVO extends BpmOABaseRespVO {

    @Schema(description = "报销业务数据", requiredMode = Schema.RequiredMode.REQUIRED)
    private BpmOAReimbursementRespVO bpmOAReimbursementRespVO ;

    @Schema(description = "流程审批节点信息【包含人员签名地址】", requiredMode = Schema.RequiredMode.REQUIRED)
    List<BpmTaskRespVO> processTasks ;

    /**
     * 抄送用户信息
     */
    private List<CCUser> ccUsers;

    @Schema(description = "抄送用户信息")
    @Data
    public static class CCUser {

        @Schema(description = "抄送用户编号", example = "146,128")
        private Long ccUserId;

        @Schema(description = "抄送用户名称", example = "张三")
        private String ccUserName;

        @Schema(description = "抄送用户部门名称", example = "研发部")
        private String ccDeptName;
    }
}
