package com.jeeplus.pubmodules.collect.service.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.jeeplus.pubmodules.collect.domain.CollectDetailed;
import com.jeeplus.pubmodules.oss.domain.WorkAttachment;
import com.jeeplus.pubmodules.oss.service.dto.WorkAttachmentDto;
import lombok.Data;

import java.util.Date;
import java.util.List;

/**
 * @author: 王强
 * @create: 2023-01-04 14:58
 **/
@Data
public class CollectDto {

    /**
     * 管理员修改标记
     */
    private String sign;

    /**
     * 备注
     */
    private String remarks;

    private String createBy;

    //领用编号（字典值）
    public static final String BIZ_CODE = "29";

    /**
     * 基础表主键值
     */
    private String id;

    /**
     * 领用物品名称
     */
    private String goodsName;

    /**
     * 流程id
     */
    private String procInsId;

    /**
     * 状态
     */
    private String status;

    private String processDefinitionId;

    /**
     * 领用编号
     */
    private String collectNo;

    /**
     * 领用时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date collectDate;

    /**
     * 领用时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private String[] collectDates;

    /**
     * 经办人
     */
    private String handledBy;

    /**
     * 经办人id
     */
    private String handledById;

    /**
     * 经办人名称
     */
    private String handledByName;

    /**
     * 经办人部门
     */
    private String handledByOffice;

    /**
     *经办人部门名称
     */
    private String handledByOfficeName;

    /**
     * 领用  附件
     */
    private List<WorkAttachmentDto> files;

    /**
     * 领用-退回  附件
     */
    private List<WorkAttachmentDto> returnFiles;

    //附件信息
    List<WorkAttachment> fileInfoLost;

    //新增信息
    List<CollectDetailed> detailInfos;

    /**
     * 领用申请  taskId
     */
    private String taskId;

    /**
     * 数据审核人  领用申请
     */
    private List<String> auditUserIds;

    /**
     * 领用-退回流程状态
     */
    private String statusReturn;

    /**
     * 流程id
     */
    private String procInsIdReturn;

    private String processDefinitionIdReturn;

    /**
     * 退回id
     */
    private String returnId;

    /**
     * 退回申请原因
     */
    private String returnCause;

    /**
     * 领用-退回申请  taskId
     */
    private String taskIdReturn;

    /**
     * 数据审核人  领用-退回申请
     */
    private List<String> auditUserIdsReturn;

    /**
     * 领用详情id
     */
    private String detailId;


}
