package com.jwipc.tender.dto;

import com.jwipc.aggregation.annotation.RelationAggregationField;
import com.jwipc.supplier.client.SupplierClient;
import com.jwipc.sys.client.FileClient;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * <p> </p>
 *
 * @author ZhangJie
 * @version 1.0
 * @since JDK 1.8
 */
@Data
public class TenderDepositApprovelListDTO implements Serializable {
    @Serial
    private static final long serialVersionUID = 4340599652570308907L;
    private Long id;
    private Long bidId;
    private Long tenderId;
    private Integer securityDepositStatus;
    private String tenderTitle;
    private String tenderCode;
    private String tenderRemark;
    private String typeName;
    private Long submitDepositFileId;
    @RelationAggregationField(
            masterIdField = "submitDepositFileId",
            relationIdField = "id",
            relationNameField = "fileName",
            relationClientClass = FileClient.class,
            relationMethod = "getFileInfos"
    )
    private String submitDepositFileName;
    private Long supplierId;
    @RelationAggregationField(
            masterIdField = "supplierId",
            relationIdField = "id",
            relationNameField = "supplierName",
            relationClientClass = SupplierClient.class,
            relationMethod = "getSupplierByIds"
    )
    private String supplierName;
    @RelationAggregationField(
            masterIdField = "supplierId",
            relationIdField = "id",
            relationNameField = "supplierCode",
            relationClientClass = SupplierClient.class,
            relationMethod = "getSupplierByIds"
    )
    private String supplierCode;

    private String createName;
    private LocalDateTime createTime;
    private String reason;
    //保证金状态
    private Integer marginStatus;
}
