package shop.alien.entity.store.vo;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 律所子表视图对象（包含律所信息）
 *
 * @author system
 * @since 2025-01-XX
 */
@Data
@JsonInclude
@ApiModel(value = "LawFirmPaymentVO对象", description = "律所子表视图对象（包含律所信息）")
public class LawFirmPaymentVO implements Serializable {

    private static final long serialVersionUID = 1L;

    // ========== 律所子表字段 ==========
    @ExcelIgnore
    @ApiModelProperty(value = "主键id")
    private Integer id;

    @ExcelIgnore
    @ApiModelProperty(value = "律师表id")
    private Integer firmId;

    @ExcelProperty(value = "律师事务所收款账号", index = 3)
    @ApiModelProperty(value = "律师事务所收款账号")
    private String paymentAccount;

    @ExcelProperty(value = "详细地址", index = 4)
    @ApiModelProperty(value = "地址")
    private String address;

    @ExcelIgnore
    @ApiModelProperty(value = "删除标记, 0:未删除, 1:已删除")
    private Integer deleteFlag;

    @ExcelIgnore
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createdTime;

    @ExcelIgnore
    @ApiModelProperty(value = "创建人ID")
    private Integer createdUserId;

    @ExcelIgnore
    @ApiModelProperty(value = "修改时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updatedTime;

    @ExcelIgnore
    @ApiModelProperty(value = "修改人ID")
    private Integer updatedUserId;

    // ========== 律所表字段 ==========
    @ExcelProperty(value = "律所名称", index = 0)
    @ApiModelProperty(value = "律所名称")
    private String firmName;

    @ExcelProperty(value = "统一社会信用代码", index = 1)
    @ApiModelProperty(value = "统一社会信用代码")
    private String creditCode;

    @ExcelIgnore
    @ApiModelProperty(value = "律所简称")
    private String shortName;

    @ExcelProperty(value = "联系电话", index = 5)
    @ApiModelProperty(value = "联系电话")
    private String phone;

    @ExcelIgnore
    @ApiModelProperty(value = "邮箱")
    private String email;

    @ExcelProperty(value = "负责人姓名", index = 2)
    @ApiModelProperty(value = "负责人姓名")
    private String directorName;

    @ExcelIgnore
    @ApiModelProperty(value = "负责人电话")
    private String directorPhone;

    @ExcelIgnore
    @ApiModelProperty(value = "律所状态, 0:禁用, 1:启用")
    private Integer status;

    @ExcelIgnore
    @ApiModelProperty(value = "认证状态, 0:未认证, 1:认证中, 2:已认证, 3:认证失败")
    private Integer certificationStatus;

    @ExcelIgnore
    @ApiModelProperty(value = "手续费")
    private Integer platformCommissionRatio;
}



