Fedexc.java 3.27 KB
package com.erry.iclear.dateInterface.api.request;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;

import javax.persistence.*;
import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.List;

@ApiModel(value = "fedexc", description = "主运单")
@Entity
@Table(name = "T_ICLEAR_API_MAWB")
@DynamicInsert
@DynamicUpdate
@Data
public class Fedexc implements Serializable {


    private static final long serialVersionUID = -7092144710653831972L;
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "Id", insertable = false, nullable = false)
    private Long id;

    @ApiModelProperty(value = "用户ID", name = "AppId", example = "BASF")
    @Column(name = "APPID")
    private String AppId;

    @Column(name = "MSGID")
    private Long msgId;

    /*@ApiModelProperty(value = "权限", name = "AppKey", example = "iClearExportC")
    @Column(name = "APP_KEY")
    private String AppKey;*/

    @ApiModelProperty(value = "加密码", name = "Secret")
    @Column(name = "SECRET")
    private String secret;

    @ApiModelProperty(value = "运单号", name = "consignmentCode")
    @Column(name = "CONSIGNMENTCODE")
    @NotBlank(message="参数consignmentCode不能为空!")
    private String consignmentCode;

    @ApiModelProperty(value = "运单ID", name = "consignmentId", example = "运单记录的唯一ID")
    @Column(name = "CONSIGNMENTID")
    @NotNull(message="参数consignmentId不能为空!")
//    @NotBlank(message="参数consignmentId不能为空!")
    private Long consignmentId;

    @ApiModelProperty(value = "运单类型",name = "consType", example = "A/B/C/D")
    @Column(name = "CONSTYPE")
    @NotBlank(message = "参数consType不能为空!")
    private String consType;

    @ApiModelProperty(value = "发件人", name = "sender")
    @Column(name = "SENDER")
    @NotBlank(message = "参数sender不能为空!")
    private String sender;

    @ApiModelProperty(value = "发件人海关编码", name = "shipperCustomsCode")
    @Column(name = "SHIPPERCUSTOMSCODE")
    private String shipperCustomsCode;

    @ApiModelProperty(value = "发件人社会信用证代码", name = "shipperSCC")
    @Column(name = "SHIPPERSCC")
    @NotBlank(message = "参数shipperSCC不能为空!")
    private String shipperSCC;

    @ApiModelProperty(value = "经营单位", name = "operateUnitName")
    @Column(name = "OPERATEUNITNAME")
    private String operateUnitName;

    @ApiModelProperty(value = "经营单位海关编码", name = "operateUnitCode")
    @Column(name = "OPERATEUNITCODE")
    private String operateUnitCode;

    @ApiModelProperty(value = "经营单位社会信用证代码", name = "operateSCC")
    @Column(name = "OPERATESCC")
    private String operateSCC;

    @ApiModelProperty(value = "eanNo", name = "eanNo")
    @Column(name = "EANNO")
    private String eanNo;

    @Valid
    @ApiModelProperty(value = "运单明细", name = "consignmentList", example = "")
    @OneToMany(cascade = CascadeType.PERSIST)
    @JoinColumn(name = "BASFCID")
    private List<FedexDetail> consignmentList;
}