package com.izouma.uwip.domain;

import com.izouma.uwip.enums.PayStatus;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.persistence.Entity;
import java.math.BigDecimal;
import java.time.LocalDate;

@AllArgsConstructor
@Data
@Builder
@Entity
@NoArgsConstructor
@ApiModel(value = "费用")
public class Fee extends BaseEntity {
    @ApiModelProperty(value = "专利id")
    private Long patentId;

    /*
    Maintenance 表里
     */
    @ApiModelProperty(value = "官费类型")
    private String feeType;

    /*
    Maintenance 表里
     */
    @ApiModelProperty(value = "费用名称")
    private String feeName;

    @ApiModelProperty(value = "是否支付")
    private PayStatus status;

    /*
    客户列表
     */
    @ApiModelProperty(value = "专利权人")
    private Long patentPartnerId;

    /*
    供应商列表
     */
    @ApiModelProperty(value = "支付对象")
    private Long payPartnerId;

    @ApiModelProperty(value = "账单图片")
    private String billImg;

    private String billRemark;

    private BigDecimal amount;

    @ApiModelProperty(value = "币种")
    private Long currencyMaintenanceId;

    @ApiModelProperty(value = "支付期限")
    private LocalDate paymentDeadline;

    @ApiModelProperty(value = "账单")
    private String bill;

    @ApiModelProperty(value = "支付日期")
    private LocalDate paymentDate;

    @ApiModelProperty(value = "付款图片")
    private String paymentImg;

    private String paymentRemark;

    private String remark;

    @ApiModelProperty(value = "是否发票回传")
    private Boolean invoiceReturn;

    @ApiModelProperty(value = "发票图片")
    private String invoiceImg;

    private String invoiceRemark;

    private Long userId;
}
