Subversion Repositories SmartDukaan

Rev

Rev 2690 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

/**
 * Autogenerated by Thrift
 *
 * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
 */
package in.shop2020.model.v1.order;

import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.util.HashMap;
import java.util.EnumMap;
import java.util.Set;
import java.util.HashSet;
import java.util.EnumSet;
import java.util.Collections;
import java.util.BitSet;
import java.util.Arrays;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import org.apache.thrift.*;
import org.apache.thrift.meta_data.*;
import org.apache.thrift.protocol.*;

public class ReturnOrder implements TBase<ReturnOrder._Fields>, java.io.Serializable, Cloneable, Comparable<ReturnOrder> {
  private static final TStruct STRUCT_DESC = new TStruct("ReturnOrder");

  private static final TField ORDER_ID_FIELD_DESC = new TField("orderId", TType.I64, (short)1);
  private static final TField WAREHOUSE_ID_FIELD_DESC = new TField("warehouseId", TType.I64, (short)2);
  private static final TField JACKET_NUMBER_FIELD_DESC = new TField("jacketNumber", TType.I64, (short)3);
  private static final TField INVOICE_NUMBER_FIELD_DESC = new TField("invoiceNumber", TType.STRING, (short)4);
  private static final TField ITEM_ID_FIELD_DESC = new TField("itemId", TType.I64, (short)5);
  private static final TField PRODUCT_GROUP_FIELD_DESC = new TField("productGroup", TType.STRING, (short)6);
  private static final TField BRAND_FIELD_DESC = new TField("brand", TType.STRING, (short)7);
  private static final TField MODEL_NUMBER_FIELD_DESC = new TField("modelNumber", TType.STRING, (short)8);
  private static final TField MODEL_NAME_FIELD_DESC = new TField("modelName", TType.STRING, (short)9);
  private static final TField COLOR_FIELD_DESC = new TField("color", TType.STRING, (short)10);
  private static final TField TOTAL_PRICE_FIELD_DESC = new TField("totalPrice", TType.DOUBLE, (short)11);
  private static final TField TRANSFER_PRICE_FIELD_DESC = new TField("transferPrice", TType.DOUBLE, (short)12);
  private static final TField PROCESSED_STATUS_FIELD_DESC = new TField("processedStatus", TType.BOOL, (short)13);
  private static final TField CREATED_AT_FIELD_DESC = new TField("createdAt", TType.I64, (short)14);
  private static final TField PROCESSED_AT_FIELD_DESC = new TField("processedAt", TType.I64, (short)15);

  private long orderId;
  private long warehouseId;
  private long jacketNumber;
  private String invoiceNumber;
  private long itemId;
  private String productGroup;
  private String brand;
  private String modelNumber;
  private String modelName;
  private String color;
  private double totalPrice;
  private double transferPrice;
  private boolean processedStatus;
  private long createdAt;
  private long processedAt;

  /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
  public enum _Fields implements TFieldIdEnum {
    ORDER_ID((short)1, "orderId"),
    WAREHOUSE_ID((short)2, "warehouseId"),
    JACKET_NUMBER((short)3, "jacketNumber"),
    INVOICE_NUMBER((short)4, "invoiceNumber"),
    ITEM_ID((short)5, "itemId"),
    PRODUCT_GROUP((short)6, "productGroup"),
    BRAND((short)7, "brand"),
    MODEL_NUMBER((short)8, "modelNumber"),
    MODEL_NAME((short)9, "modelName"),
    COLOR((short)10, "color"),
    TOTAL_PRICE((short)11, "totalPrice"),
    TRANSFER_PRICE((short)12, "transferPrice"),
    PROCESSED_STATUS((short)13, "processedStatus"),
    CREATED_AT((short)14, "createdAt"),
    PROCESSED_AT((short)15, "processedAt");

    private static final Map<Integer, _Fields> byId = new HashMap<Integer, _Fields>();
    private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();

    static {
      for (_Fields field : EnumSet.allOf(_Fields.class)) {
        byId.put((int)field._thriftId, field);
        byName.put(field.getFieldName(), field);
      }
    }

    /**
     * Find the _Fields constant that matches fieldId, or null if its not found.
     */
    public static _Fields findByThriftId(int fieldId) {
      return byId.get(fieldId);
    }

    /**
     * Find the _Fields constant that matches fieldId, throwing an exception
     * if it is not found.
     */
    public static _Fields findByThriftIdOrThrow(int fieldId) {
      _Fields fields = findByThriftId(fieldId);
      if (fields == null) throw new IllegalArgumentException("Field " + fieldId + " doesn't exist!");
      return fields;
    }

    /**
     * Find the _Fields constant that matches name, or null if its not found.
     */
    public static _Fields findByName(String name) {
      return byName.get(name);
    }

    private final short _thriftId;
    private final String _fieldName;

    _Fields(short thriftId, String fieldName) {
      _thriftId = thriftId;
      _fieldName = fieldName;
    }

    public short getThriftFieldId() {
      return _thriftId;
    }

    public String getFieldName() {
      return _fieldName;
    }
  }

  // isset id assignments
  private static final int __ORDERID_ISSET_ID = 0;
  private static final int __WAREHOUSEID_ISSET_ID = 1;
  private static final int __JACKETNUMBER_ISSET_ID = 2;
  private static final int __ITEMID_ISSET_ID = 3;
  private static final int __TOTALPRICE_ISSET_ID = 4;
  private static final int __TRANSFERPRICE_ISSET_ID = 5;
  private static final int __PROCESSEDSTATUS_ISSET_ID = 6;
  private static final int __CREATEDAT_ISSET_ID = 7;
  private static final int __PROCESSEDAT_ISSET_ID = 8;
  private BitSet __isset_bit_vector = new BitSet(9);

  public static final Map<_Fields, FieldMetaData> metaDataMap = Collections.unmodifiableMap(new EnumMap<_Fields, FieldMetaData>(_Fields.class) {{
    put(_Fields.ORDER_ID, new FieldMetaData("orderId", TFieldRequirementType.DEFAULT, 
        new FieldValueMetaData(TType.I64)));
    put(_Fields.WAREHOUSE_ID, new FieldMetaData("warehouseId", TFieldRequirementType.DEFAULT, 
        new FieldValueMetaData(TType.I64)));
    put(_Fields.JACKET_NUMBER, new FieldMetaData("jacketNumber", TFieldRequirementType.DEFAULT, 
        new FieldValueMetaData(TType.I64)));
    put(_Fields.INVOICE_NUMBER, new FieldMetaData("invoiceNumber", TFieldRequirementType.DEFAULT, 
        new FieldValueMetaData(TType.STRING)));
    put(_Fields.ITEM_ID, new FieldMetaData("itemId", TFieldRequirementType.DEFAULT, 
        new FieldValueMetaData(TType.I64)));
    put(_Fields.PRODUCT_GROUP, new FieldMetaData("productGroup", TFieldRequirementType.DEFAULT, 
        new FieldValueMetaData(TType.STRING)));
    put(_Fields.BRAND, new FieldMetaData("brand", TFieldRequirementType.DEFAULT, 
        new FieldValueMetaData(TType.STRING)));
    put(_Fields.MODEL_NUMBER, new FieldMetaData("modelNumber", TFieldRequirementType.DEFAULT, 
        new FieldValueMetaData(TType.STRING)));
    put(_Fields.MODEL_NAME, new FieldMetaData("modelName", TFieldRequirementType.DEFAULT, 
        new FieldValueMetaData(TType.STRING)));
    put(_Fields.COLOR, new FieldMetaData("color", TFieldRequirementType.DEFAULT, 
        new FieldValueMetaData(TType.STRING)));
    put(_Fields.TOTAL_PRICE, new FieldMetaData("totalPrice", TFieldRequirementType.DEFAULT, 
        new FieldValueMetaData(TType.DOUBLE)));
    put(_Fields.TRANSFER_PRICE, new FieldMetaData("transferPrice", TFieldRequirementType.DEFAULT, 
        new FieldValueMetaData(TType.DOUBLE)));
    put(_Fields.PROCESSED_STATUS, new FieldMetaData("processedStatus", TFieldRequirementType.DEFAULT, 
        new FieldValueMetaData(TType.BOOL)));
    put(_Fields.CREATED_AT, new FieldMetaData("createdAt", TFieldRequirementType.DEFAULT, 
        new FieldValueMetaData(TType.I64)));
    put(_Fields.PROCESSED_AT, new FieldMetaData("processedAt", TFieldRequirementType.DEFAULT, 
        new FieldValueMetaData(TType.I64)));
  }});

  static {
    FieldMetaData.addStructMetaDataMap(ReturnOrder.class, metaDataMap);
  }

  public ReturnOrder() {
  }

  public ReturnOrder(
    long orderId,
    long warehouseId,
    long jacketNumber,
    String invoiceNumber,
    long itemId,
    String productGroup,
    String brand,
    String modelNumber,
    String modelName,
    String color,
    double totalPrice,
    double transferPrice,
    boolean processedStatus,
    long createdAt,
    long processedAt)
  {
    this();
    this.orderId = orderId;
    setOrderIdIsSet(true);
    this.warehouseId = warehouseId;
    setWarehouseIdIsSet(true);
    this.jacketNumber = jacketNumber;
    setJacketNumberIsSet(true);
    this.invoiceNumber = invoiceNumber;
    this.itemId = itemId;
    setItemIdIsSet(true);
    this.productGroup = productGroup;
    this.brand = brand;
    this.modelNumber = modelNumber;
    this.modelName = modelName;
    this.color = color;
    this.totalPrice = totalPrice;
    setTotalPriceIsSet(true);
    this.transferPrice = transferPrice;
    setTransferPriceIsSet(true);
    this.processedStatus = processedStatus;
    setProcessedStatusIsSet(true);
    this.createdAt = createdAt;
    setCreatedAtIsSet(true);
    this.processedAt = processedAt;
    setProcessedAtIsSet(true);
  }

  /**
   * Performs a deep copy on <i>other</i>.
   */
  public ReturnOrder(ReturnOrder other) {
    __isset_bit_vector.clear();
    __isset_bit_vector.or(other.__isset_bit_vector);
    this.orderId = other.orderId;
    this.warehouseId = other.warehouseId;
    this.jacketNumber = other.jacketNumber;
    if (other.isSetInvoiceNumber()) {
      this.invoiceNumber = other.invoiceNumber;
    }
    this.itemId = other.itemId;
    if (other.isSetProductGroup()) {
      this.productGroup = other.productGroup;
    }
    if (other.isSetBrand()) {
      this.brand = other.brand;
    }
    if (other.isSetModelNumber()) {
      this.modelNumber = other.modelNumber;
    }
    if (other.isSetModelName()) {
      this.modelName = other.modelName;
    }
    if (other.isSetColor()) {
      this.color = other.color;
    }
    this.totalPrice = other.totalPrice;
    this.transferPrice = other.transferPrice;
    this.processedStatus = other.processedStatus;
    this.createdAt = other.createdAt;
    this.processedAt = other.processedAt;
  }

  public ReturnOrder deepCopy() {
    return new ReturnOrder(this);
  }

  @Deprecated
  public ReturnOrder clone() {
    return new ReturnOrder(this);
  }

  public long getOrderId() {
    return this.orderId;
  }

  public ReturnOrder setOrderId(long orderId) {
    this.orderId = orderId;
    setOrderIdIsSet(true);
    return this;
  }

  public void unsetOrderId() {
    __isset_bit_vector.clear(__ORDERID_ISSET_ID);
  }

  /** Returns true if field orderId is set (has been asigned a value) and false otherwise */
  public boolean isSetOrderId() {
    return __isset_bit_vector.get(__ORDERID_ISSET_ID);
  }

  public void setOrderIdIsSet(boolean value) {
    __isset_bit_vector.set(__ORDERID_ISSET_ID, value);
  }

  public long getWarehouseId() {
    return this.warehouseId;
  }

  public ReturnOrder setWarehouseId(long warehouseId) {
    this.warehouseId = warehouseId;
    setWarehouseIdIsSet(true);
    return this;
  }

  public void unsetWarehouseId() {
    __isset_bit_vector.clear(__WAREHOUSEID_ISSET_ID);
  }

  /** Returns true if field warehouseId is set (has been asigned a value) and false otherwise */
  public boolean isSetWarehouseId() {
    return __isset_bit_vector.get(__WAREHOUSEID_ISSET_ID);
  }

  public void setWarehouseIdIsSet(boolean value) {
    __isset_bit_vector.set(__WAREHOUSEID_ISSET_ID, value);
  }

  public long getJacketNumber() {
    return this.jacketNumber;
  }

  public ReturnOrder setJacketNumber(long jacketNumber) {
    this.jacketNumber = jacketNumber;
    setJacketNumberIsSet(true);
    return this;
  }

  public void unsetJacketNumber() {
    __isset_bit_vector.clear(__JACKETNUMBER_ISSET_ID);
  }

  /** Returns true if field jacketNumber is set (has been asigned a value) and false otherwise */
  public boolean isSetJacketNumber() {
    return __isset_bit_vector.get(__JACKETNUMBER_ISSET_ID);
  }

  public void setJacketNumberIsSet(boolean value) {
    __isset_bit_vector.set(__JACKETNUMBER_ISSET_ID, value);
  }

  public String getInvoiceNumber() {
    return this.invoiceNumber;
  }

  public ReturnOrder setInvoiceNumber(String invoiceNumber) {
    this.invoiceNumber = invoiceNumber;
    return this;
  }

  public void unsetInvoiceNumber() {
    this.invoiceNumber = null;
  }

  /** Returns true if field invoiceNumber is set (has been asigned a value) and false otherwise */
  public boolean isSetInvoiceNumber() {
    return this.invoiceNumber != null;
  }

  public void setInvoiceNumberIsSet(boolean value) {
    if (!value) {
      this.invoiceNumber = null;
    }
  }

  public long getItemId() {
    return this.itemId;
  }

  public ReturnOrder setItemId(long itemId) {
    this.itemId = itemId;
    setItemIdIsSet(true);
    return this;
  }

  public void unsetItemId() {
    __isset_bit_vector.clear(__ITEMID_ISSET_ID);
  }

  /** Returns true if field itemId is set (has been asigned a value) and false otherwise */
  public boolean isSetItemId() {
    return __isset_bit_vector.get(__ITEMID_ISSET_ID);
  }

  public void setItemIdIsSet(boolean value) {
    __isset_bit_vector.set(__ITEMID_ISSET_ID, value);
  }

  public String getProductGroup() {
    return this.productGroup;
  }

  public ReturnOrder setProductGroup(String productGroup) {
    this.productGroup = productGroup;
    return this;
  }

  public void unsetProductGroup() {
    this.productGroup = null;
  }

  /** Returns true if field productGroup is set (has been asigned a value) and false otherwise */
  public boolean isSetProductGroup() {
    return this.productGroup != null;
  }

  public void setProductGroupIsSet(boolean value) {
    if (!value) {
      this.productGroup = null;
    }
  }

  public String getBrand() {
    return this.brand;
  }

  public ReturnOrder setBrand(String brand) {
    this.brand = brand;
    return this;
  }

  public void unsetBrand() {
    this.brand = null;
  }

  /** Returns true if field brand is set (has been asigned a value) and false otherwise */
  public boolean isSetBrand() {
    return this.brand != null;
  }

  public void setBrandIsSet(boolean value) {
    if (!value) {
      this.brand = null;
    }
  }

  public String getModelNumber() {
    return this.modelNumber;
  }

  public ReturnOrder setModelNumber(String modelNumber) {
    this.modelNumber = modelNumber;
    return this;
  }

  public void unsetModelNumber() {
    this.modelNumber = null;
  }

  /** Returns true if field modelNumber is set (has been asigned a value) and false otherwise */
  public boolean isSetModelNumber() {
    return this.modelNumber != null;
  }

  public void setModelNumberIsSet(boolean value) {
    if (!value) {
      this.modelNumber = null;
    }
  }

  public String getModelName() {
    return this.modelName;
  }

  public ReturnOrder setModelName(String modelName) {
    this.modelName = modelName;
    return this;
  }

  public void unsetModelName() {
    this.modelName = null;
  }

  /** Returns true if field modelName is set (has been asigned a value) and false otherwise */
  public boolean isSetModelName() {
    return this.modelName != null;
  }

  public void setModelNameIsSet(boolean value) {
    if (!value) {
      this.modelName = null;
    }
  }

  public String getColor() {
    return this.color;
  }

  public ReturnOrder setColor(String color) {
    this.color = color;
    return this;
  }

  public void unsetColor() {
    this.color = null;
  }

  /** Returns true if field color is set (has been asigned a value) and false otherwise */
  public boolean isSetColor() {
    return this.color != null;
  }

  public void setColorIsSet(boolean value) {
    if (!value) {
      this.color = null;
    }
  }

  public double getTotalPrice() {
    return this.totalPrice;
  }

  public ReturnOrder setTotalPrice(double totalPrice) {
    this.totalPrice = totalPrice;
    setTotalPriceIsSet(true);
    return this;
  }

  public void unsetTotalPrice() {
    __isset_bit_vector.clear(__TOTALPRICE_ISSET_ID);
  }

  /** Returns true if field totalPrice is set (has been asigned a value) and false otherwise */
  public boolean isSetTotalPrice() {
    return __isset_bit_vector.get(__TOTALPRICE_ISSET_ID);
  }

  public void setTotalPriceIsSet(boolean value) {
    __isset_bit_vector.set(__TOTALPRICE_ISSET_ID, value);
  }

  public double getTransferPrice() {
    return this.transferPrice;
  }

  public ReturnOrder setTransferPrice(double transferPrice) {
    this.transferPrice = transferPrice;
    setTransferPriceIsSet(true);
    return this;
  }

  public void unsetTransferPrice() {
    __isset_bit_vector.clear(__TRANSFERPRICE_ISSET_ID);
  }

  /** Returns true if field transferPrice is set (has been asigned a value) and false otherwise */
  public boolean isSetTransferPrice() {
    return __isset_bit_vector.get(__TRANSFERPRICE_ISSET_ID);
  }

  public void setTransferPriceIsSet(boolean value) {
    __isset_bit_vector.set(__TRANSFERPRICE_ISSET_ID, value);
  }

  public boolean isProcessedStatus() {
    return this.processedStatus;
  }

  public ReturnOrder setProcessedStatus(boolean processedStatus) {
    this.processedStatus = processedStatus;
    setProcessedStatusIsSet(true);
    return this;
  }

  public void unsetProcessedStatus() {
    __isset_bit_vector.clear(__PROCESSEDSTATUS_ISSET_ID);
  }

  /** Returns true if field processedStatus is set (has been asigned a value) and false otherwise */
  public boolean isSetProcessedStatus() {
    return __isset_bit_vector.get(__PROCESSEDSTATUS_ISSET_ID);
  }

  public void setProcessedStatusIsSet(boolean value) {
    __isset_bit_vector.set(__PROCESSEDSTATUS_ISSET_ID, value);
  }

  public long getCreatedAt() {
    return this.createdAt;
  }

  public ReturnOrder setCreatedAt(long createdAt) {
    this.createdAt = createdAt;
    setCreatedAtIsSet(true);
    return this;
  }

  public void unsetCreatedAt() {
    __isset_bit_vector.clear(__CREATEDAT_ISSET_ID);
  }

  /** Returns true if field createdAt is set (has been asigned a value) and false otherwise */
  public boolean isSetCreatedAt() {
    return __isset_bit_vector.get(__CREATEDAT_ISSET_ID);
  }

  public void setCreatedAtIsSet(boolean value) {
    __isset_bit_vector.set(__CREATEDAT_ISSET_ID, value);
  }

  public long getProcessedAt() {
    return this.processedAt;
  }

  public ReturnOrder setProcessedAt(long processedAt) {
    this.processedAt = processedAt;
    setProcessedAtIsSet(true);
    return this;
  }

  public void unsetProcessedAt() {
    __isset_bit_vector.clear(__PROCESSEDAT_ISSET_ID);
  }

  /** Returns true if field processedAt is set (has been asigned a value) and false otherwise */
  public boolean isSetProcessedAt() {
    return __isset_bit_vector.get(__PROCESSEDAT_ISSET_ID);
  }

  public void setProcessedAtIsSet(boolean value) {
    __isset_bit_vector.set(__PROCESSEDAT_ISSET_ID, value);
  }

  public void setFieldValue(_Fields field, Object value) {
    switch (field) {
    case ORDER_ID:
      if (value == null) {
        unsetOrderId();
      } else {
        setOrderId((Long)value);
      }
      break;

    case WAREHOUSE_ID:
      if (value == null) {
        unsetWarehouseId();
      } else {
        setWarehouseId((Long)value);
      }
      break;

    case JACKET_NUMBER:
      if (value == null) {
        unsetJacketNumber();
      } else {
        setJacketNumber((Long)value);
      }
      break;

    case INVOICE_NUMBER:
      if (value == null) {
        unsetInvoiceNumber();
      } else {
        setInvoiceNumber((String)value);
      }
      break;

    case ITEM_ID:
      if (value == null) {
        unsetItemId();
      } else {
        setItemId((Long)value);
      }
      break;

    case PRODUCT_GROUP:
      if (value == null) {
        unsetProductGroup();
      } else {
        setProductGroup((String)value);
      }
      break;

    case BRAND:
      if (value == null) {
        unsetBrand();
      } else {
        setBrand((String)value);
      }
      break;

    case MODEL_NUMBER:
      if (value == null) {
        unsetModelNumber();
      } else {
        setModelNumber((String)value);
      }
      break;

    case MODEL_NAME:
      if (value == null) {
        unsetModelName();
      } else {
        setModelName((String)value);
      }
      break;

    case COLOR:
      if (value == null) {
        unsetColor();
      } else {
        setColor((String)value);
      }
      break;

    case TOTAL_PRICE:
      if (value == null) {
        unsetTotalPrice();
      } else {
        setTotalPrice((Double)value);
      }
      break;

    case TRANSFER_PRICE:
      if (value == null) {
        unsetTransferPrice();
      } else {
        setTransferPrice((Double)value);
      }
      break;

    case PROCESSED_STATUS:
      if (value == null) {
        unsetProcessedStatus();
      } else {
        setProcessedStatus((Boolean)value);
      }
      break;

    case CREATED_AT:
      if (value == null) {
        unsetCreatedAt();
      } else {
        setCreatedAt((Long)value);
      }
      break;

    case PROCESSED_AT:
      if (value == null) {
        unsetProcessedAt();
      } else {
        setProcessedAt((Long)value);
      }
      break;

    }
  }

  public void setFieldValue(int fieldID, Object value) {
    setFieldValue(_Fields.findByThriftIdOrThrow(fieldID), value);
  }

  public Object getFieldValue(_Fields field) {
    switch (field) {
    case ORDER_ID:
      return new Long(getOrderId());

    case WAREHOUSE_ID:
      return new Long(getWarehouseId());

    case JACKET_NUMBER:
      return new Long(getJacketNumber());

    case INVOICE_NUMBER:
      return getInvoiceNumber();

    case ITEM_ID:
      return new Long(getItemId());

    case PRODUCT_GROUP:
      return getProductGroup();

    case BRAND:
      return getBrand();

    case MODEL_NUMBER:
      return getModelNumber();

    case MODEL_NAME:
      return getModelName();

    case COLOR:
      return getColor();

    case TOTAL_PRICE:
      return new Double(getTotalPrice());

    case TRANSFER_PRICE:
      return new Double(getTransferPrice());

    case PROCESSED_STATUS:
      return new Boolean(isProcessedStatus());

    case CREATED_AT:
      return new Long(getCreatedAt());

    case PROCESSED_AT:
      return new Long(getProcessedAt());

    }
    throw new IllegalStateException();
  }

  public Object getFieldValue(int fieldId) {
    return getFieldValue(_Fields.findByThriftIdOrThrow(fieldId));
  }

  /** Returns true if field corresponding to fieldID is set (has been asigned a value) and false otherwise */
  public boolean isSet(_Fields field) {
    switch (field) {
    case ORDER_ID:
      return isSetOrderId();
    case WAREHOUSE_ID:
      return isSetWarehouseId();
    case JACKET_NUMBER:
      return isSetJacketNumber();
    case INVOICE_NUMBER:
      return isSetInvoiceNumber();
    case ITEM_ID:
      return isSetItemId();
    case PRODUCT_GROUP:
      return isSetProductGroup();
    case BRAND:
      return isSetBrand();
    case MODEL_NUMBER:
      return isSetModelNumber();
    case MODEL_NAME:
      return isSetModelName();
    case COLOR:
      return isSetColor();
    case TOTAL_PRICE:
      return isSetTotalPrice();
    case TRANSFER_PRICE:
      return isSetTransferPrice();
    case PROCESSED_STATUS:
      return isSetProcessedStatus();
    case CREATED_AT:
      return isSetCreatedAt();
    case PROCESSED_AT:
      return isSetProcessedAt();
    }
    throw new IllegalStateException();
  }

  public boolean isSet(int fieldID) {
    return isSet(_Fields.findByThriftIdOrThrow(fieldID));
  }

  @Override
  public boolean equals(Object that) {
    if (that == null)
      return false;
    if (that instanceof ReturnOrder)
      return this.equals((ReturnOrder)that);
    return false;
  }

  public boolean equals(ReturnOrder that) {
    if (that == null)
      return false;

    boolean this_present_orderId = true;
    boolean that_present_orderId = true;
    if (this_present_orderId || that_present_orderId) {
      if (!(this_present_orderId && that_present_orderId))
        return false;
      if (this.orderId != that.orderId)
        return false;
    }

    boolean this_present_warehouseId = true;
    boolean that_present_warehouseId = true;
    if (this_present_warehouseId || that_present_warehouseId) {
      if (!(this_present_warehouseId && that_present_warehouseId))
        return false;
      if (this.warehouseId != that.warehouseId)
        return false;
    }

    boolean this_present_jacketNumber = true;
    boolean that_present_jacketNumber = true;
    if (this_present_jacketNumber || that_present_jacketNumber) {
      if (!(this_present_jacketNumber && that_present_jacketNumber))
        return false;
      if (this.jacketNumber != that.jacketNumber)
        return false;
    }

    boolean this_present_invoiceNumber = true && this.isSetInvoiceNumber();
    boolean that_present_invoiceNumber = true && that.isSetInvoiceNumber();
    if (this_present_invoiceNumber || that_present_invoiceNumber) {
      if (!(this_present_invoiceNumber && that_present_invoiceNumber))
        return false;
      if (!this.invoiceNumber.equals(that.invoiceNumber))
        return false;
    }

    boolean this_present_itemId = true;
    boolean that_present_itemId = true;
    if (this_present_itemId || that_present_itemId) {
      if (!(this_present_itemId && that_present_itemId))
        return false;
      if (this.itemId != that.itemId)
        return false;
    }

    boolean this_present_productGroup = true && this.isSetProductGroup();
    boolean that_present_productGroup = true && that.isSetProductGroup();
    if (this_present_productGroup || that_present_productGroup) {
      if (!(this_present_productGroup && that_present_productGroup))
        return false;
      if (!this.productGroup.equals(that.productGroup))
        return false;
    }

    boolean this_present_brand = true && this.isSetBrand();
    boolean that_present_brand = true && that.isSetBrand();
    if (this_present_brand || that_present_brand) {
      if (!(this_present_brand && that_present_brand))
        return false;
      if (!this.brand.equals(that.brand))
        return false;
    }

    boolean this_present_modelNumber = true && this.isSetModelNumber();
    boolean that_present_modelNumber = true && that.isSetModelNumber();
    if (this_present_modelNumber || that_present_modelNumber) {
      if (!(this_present_modelNumber && that_present_modelNumber))
        return false;
      if (!this.modelNumber.equals(that.modelNumber))
        return false;
    }

    boolean this_present_modelName = true && this.isSetModelName();
    boolean that_present_modelName = true && that.isSetModelName();
    if (this_present_modelName || that_present_modelName) {
      if (!(this_present_modelName && that_present_modelName))
        return false;
      if (!this.modelName.equals(that.modelName))
        return false;
    }

    boolean this_present_color = true && this.isSetColor();
    boolean that_present_color = true && that.isSetColor();
    if (this_present_color || that_present_color) {
      if (!(this_present_color && that_present_color))
        return false;
      if (!this.color.equals(that.color))
        return false;
    }

    boolean this_present_totalPrice = true;
    boolean that_present_totalPrice = true;
    if (this_present_totalPrice || that_present_totalPrice) {
      if (!(this_present_totalPrice && that_present_totalPrice))
        return false;
      if (this.totalPrice != that.totalPrice)
        return false;
    }

    boolean this_present_transferPrice = true;
    boolean that_present_transferPrice = true;
    if (this_present_transferPrice || that_present_transferPrice) {
      if (!(this_present_transferPrice && that_present_transferPrice))
        return false;
      if (this.transferPrice != that.transferPrice)
        return false;
    }

    boolean this_present_processedStatus = true;
    boolean that_present_processedStatus = true;
    if (this_present_processedStatus || that_present_processedStatus) {
      if (!(this_present_processedStatus && that_present_processedStatus))
        return false;
      if (this.processedStatus != that.processedStatus)
        return false;
    }

    boolean this_present_createdAt = true;
    boolean that_present_createdAt = true;
    if (this_present_createdAt || that_present_createdAt) {
      if (!(this_present_createdAt && that_present_createdAt))
        return false;
      if (this.createdAt != that.createdAt)
        return false;
    }

    boolean this_present_processedAt = true;
    boolean that_present_processedAt = true;
    if (this_present_processedAt || that_present_processedAt) {
      if (!(this_present_processedAt && that_present_processedAt))
        return false;
      if (this.processedAt != that.processedAt)
        return false;
    }

    return true;
  }

  @Override
  public int hashCode() {
    return 0;
  }

  public int compareTo(ReturnOrder other) {
    if (!getClass().equals(other.getClass())) {
      return getClass().getName().compareTo(other.getClass().getName());
    }

    int lastComparison = 0;
    ReturnOrder typedOther = (ReturnOrder)other;

    lastComparison = Boolean.valueOf(isSetOrderId()).compareTo(isSetOrderId());
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = TBaseHelper.compareTo(orderId, typedOther.orderId);
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = Boolean.valueOf(isSetWarehouseId()).compareTo(isSetWarehouseId());
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = TBaseHelper.compareTo(warehouseId, typedOther.warehouseId);
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = Boolean.valueOf(isSetJacketNumber()).compareTo(isSetJacketNumber());
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = TBaseHelper.compareTo(jacketNumber, typedOther.jacketNumber);
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = Boolean.valueOf(isSetInvoiceNumber()).compareTo(isSetInvoiceNumber());
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = TBaseHelper.compareTo(invoiceNumber, typedOther.invoiceNumber);
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = Boolean.valueOf(isSetItemId()).compareTo(isSetItemId());
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = TBaseHelper.compareTo(itemId, typedOther.itemId);
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = Boolean.valueOf(isSetProductGroup()).compareTo(isSetProductGroup());
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = TBaseHelper.compareTo(productGroup, typedOther.productGroup);
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = Boolean.valueOf(isSetBrand()).compareTo(isSetBrand());
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = TBaseHelper.compareTo(brand, typedOther.brand);
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = Boolean.valueOf(isSetModelNumber()).compareTo(isSetModelNumber());
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = TBaseHelper.compareTo(modelNumber, typedOther.modelNumber);
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = Boolean.valueOf(isSetModelName()).compareTo(isSetModelName());
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = TBaseHelper.compareTo(modelName, typedOther.modelName);
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = Boolean.valueOf(isSetColor()).compareTo(isSetColor());
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = TBaseHelper.compareTo(color, typedOther.color);
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = Boolean.valueOf(isSetTotalPrice()).compareTo(isSetTotalPrice());
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = TBaseHelper.compareTo(totalPrice, typedOther.totalPrice);
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = Boolean.valueOf(isSetTransferPrice()).compareTo(isSetTransferPrice());
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = TBaseHelper.compareTo(transferPrice, typedOther.transferPrice);
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = Boolean.valueOf(isSetProcessedStatus()).compareTo(isSetProcessedStatus());
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = TBaseHelper.compareTo(processedStatus, typedOther.processedStatus);
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = Boolean.valueOf(isSetCreatedAt()).compareTo(isSetCreatedAt());
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = TBaseHelper.compareTo(createdAt, typedOther.createdAt);
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = Boolean.valueOf(isSetProcessedAt()).compareTo(isSetProcessedAt());
    if (lastComparison != 0) {
      return lastComparison;
    }
    lastComparison = TBaseHelper.compareTo(processedAt, typedOther.processedAt);
    if (lastComparison != 0) {
      return lastComparison;
    }
    return 0;
  }

  public void read(TProtocol iprot) throws TException {
    TField field;
    iprot.readStructBegin();
    while (true)
    {
      field = iprot.readFieldBegin();
      if (field.type == TType.STOP) { 
        break;
      }
      _Fields fieldId = _Fields.findByThriftId(field.id);
      if (fieldId == null) {
        TProtocolUtil.skip(iprot, field.type);
      } else {
        switch (fieldId) {
          case ORDER_ID:
            if (field.type == TType.I64) {
              this.orderId = iprot.readI64();
              setOrderIdIsSet(true);
            } else { 
              TProtocolUtil.skip(iprot, field.type);
            }
            break;
          case WAREHOUSE_ID:
            if (field.type == TType.I64) {
              this.warehouseId = iprot.readI64();
              setWarehouseIdIsSet(true);
            } else { 
              TProtocolUtil.skip(iprot, field.type);
            }
            break;
          case JACKET_NUMBER:
            if (field.type == TType.I64) {
              this.jacketNumber = iprot.readI64();
              setJacketNumberIsSet(true);
            } else { 
              TProtocolUtil.skip(iprot, field.type);
            }
            break;
          case INVOICE_NUMBER:
            if (field.type == TType.STRING) {
              this.invoiceNumber = iprot.readString();
            } else { 
              TProtocolUtil.skip(iprot, field.type);
            }
            break;
          case ITEM_ID:
            if (field.type == TType.I64) {
              this.itemId = iprot.readI64();
              setItemIdIsSet(true);
            } else { 
              TProtocolUtil.skip(iprot, field.type);
            }
            break;
          case PRODUCT_GROUP:
            if (field.type == TType.STRING) {
              this.productGroup = iprot.readString();
            } else { 
              TProtocolUtil.skip(iprot, field.type);
            }
            break;
          case BRAND:
            if (field.type == TType.STRING) {
              this.brand = iprot.readString();
            } else { 
              TProtocolUtil.skip(iprot, field.type);
            }
            break;
          case MODEL_NUMBER:
            if (field.type == TType.STRING) {
              this.modelNumber = iprot.readString();
            } else { 
              TProtocolUtil.skip(iprot, field.type);
            }
            break;
          case MODEL_NAME:
            if (field.type == TType.STRING) {
              this.modelName = iprot.readString();
            } else { 
              TProtocolUtil.skip(iprot, field.type);
            }
            break;
          case COLOR:
            if (field.type == TType.STRING) {
              this.color = iprot.readString();
            } else { 
              TProtocolUtil.skip(iprot, field.type);
            }
            break;
          case TOTAL_PRICE:
            if (field.type == TType.DOUBLE) {
              this.totalPrice = iprot.readDouble();
              setTotalPriceIsSet(true);
            } else { 
              TProtocolUtil.skip(iprot, field.type);
            }
            break;
          case TRANSFER_PRICE:
            if (field.type == TType.DOUBLE) {
              this.transferPrice = iprot.readDouble();
              setTransferPriceIsSet(true);
            } else { 
              TProtocolUtil.skip(iprot, field.type);
            }
            break;
          case PROCESSED_STATUS:
            if (field.type == TType.BOOL) {
              this.processedStatus = iprot.readBool();
              setProcessedStatusIsSet(true);
            } else { 
              TProtocolUtil.skip(iprot, field.type);
            }
            break;
          case CREATED_AT:
            if (field.type == TType.I64) {
              this.createdAt = iprot.readI64();
              setCreatedAtIsSet(true);
            } else { 
              TProtocolUtil.skip(iprot, field.type);
            }
            break;
          case PROCESSED_AT:
            if (field.type == TType.I64) {
              this.processedAt = iprot.readI64();
              setProcessedAtIsSet(true);
            } else { 
              TProtocolUtil.skip(iprot, field.type);
            }
            break;
        }
        iprot.readFieldEnd();
      }
    }
    iprot.readStructEnd();
    validate();
  }

  public void write(TProtocol oprot) throws TException {
    validate();

    oprot.writeStructBegin(STRUCT_DESC);
    oprot.writeFieldBegin(ORDER_ID_FIELD_DESC);
    oprot.writeI64(this.orderId);
    oprot.writeFieldEnd();
    oprot.writeFieldBegin(WAREHOUSE_ID_FIELD_DESC);
    oprot.writeI64(this.warehouseId);
    oprot.writeFieldEnd();
    oprot.writeFieldBegin(JACKET_NUMBER_FIELD_DESC);
    oprot.writeI64(this.jacketNumber);
    oprot.writeFieldEnd();
    if (this.invoiceNumber != null) {
      oprot.writeFieldBegin(INVOICE_NUMBER_FIELD_DESC);
      oprot.writeString(this.invoiceNumber);
      oprot.writeFieldEnd();
    }
    oprot.writeFieldBegin(ITEM_ID_FIELD_DESC);
    oprot.writeI64(this.itemId);
    oprot.writeFieldEnd();
    if (this.productGroup != null) {
      oprot.writeFieldBegin(PRODUCT_GROUP_FIELD_DESC);
      oprot.writeString(this.productGroup);
      oprot.writeFieldEnd();
    }
    if (this.brand != null) {
      oprot.writeFieldBegin(BRAND_FIELD_DESC);
      oprot.writeString(this.brand);
      oprot.writeFieldEnd();
    }
    if (this.modelNumber != null) {
      oprot.writeFieldBegin(MODEL_NUMBER_FIELD_DESC);
      oprot.writeString(this.modelNumber);
      oprot.writeFieldEnd();
    }
    if (this.modelName != null) {
      oprot.writeFieldBegin(MODEL_NAME_FIELD_DESC);
      oprot.writeString(this.modelName);
      oprot.writeFieldEnd();
    }
    if (this.color != null) {
      oprot.writeFieldBegin(COLOR_FIELD_DESC);
      oprot.writeString(this.color);
      oprot.writeFieldEnd();
    }
    oprot.writeFieldBegin(TOTAL_PRICE_FIELD_DESC);
    oprot.writeDouble(this.totalPrice);
    oprot.writeFieldEnd();
    oprot.writeFieldBegin(TRANSFER_PRICE_FIELD_DESC);
    oprot.writeDouble(this.transferPrice);
    oprot.writeFieldEnd();
    oprot.writeFieldBegin(PROCESSED_STATUS_FIELD_DESC);
    oprot.writeBool(this.processedStatus);
    oprot.writeFieldEnd();
    oprot.writeFieldBegin(CREATED_AT_FIELD_DESC);
    oprot.writeI64(this.createdAt);
    oprot.writeFieldEnd();
    oprot.writeFieldBegin(PROCESSED_AT_FIELD_DESC);
    oprot.writeI64(this.processedAt);
    oprot.writeFieldEnd();
    oprot.writeFieldStop();
    oprot.writeStructEnd();
  }

  @Override
  public String toString() {
    StringBuilder sb = new StringBuilder("ReturnOrder(");
    boolean first = true;

    sb.append("orderId:");
    sb.append(this.orderId);
    first = false;
    if (!first) sb.append(", ");
    sb.append("warehouseId:");
    sb.append(this.warehouseId);
    first = false;
    if (!first) sb.append(", ");
    sb.append("jacketNumber:");
    sb.append(this.jacketNumber);
    first = false;
    if (!first) sb.append(", ");
    sb.append("invoiceNumber:");
    if (this.invoiceNumber == null) {
      sb.append("null");
    } else {
      sb.append(this.invoiceNumber);
    }
    first = false;
    if (!first) sb.append(", ");
    sb.append("itemId:");
    sb.append(this.itemId);
    first = false;
    if (!first) sb.append(", ");
    sb.append("productGroup:");
    if (this.productGroup == null) {
      sb.append("null");
    } else {
      sb.append(this.productGroup);
    }
    first = false;
    if (!first) sb.append(", ");
    sb.append("brand:");
    if (this.brand == null) {
      sb.append("null");
    } else {
      sb.append(this.brand);
    }
    first = false;
    if (!first) sb.append(", ");
    sb.append("modelNumber:");
    if (this.modelNumber == null) {
      sb.append("null");
    } else {
      sb.append(this.modelNumber);
    }
    first = false;
    if (!first) sb.append(", ");
    sb.append("modelName:");
    if (this.modelName == null) {
      sb.append("null");
    } else {
      sb.append(this.modelName);
    }
    first = false;
    if (!first) sb.append(", ");
    sb.append("color:");
    if (this.color == null) {
      sb.append("null");
    } else {
      sb.append(this.color);
    }
    first = false;
    if (!first) sb.append(", ");
    sb.append("totalPrice:");
    sb.append(this.totalPrice);
    first = false;
    if (!first) sb.append(", ");
    sb.append("transferPrice:");
    sb.append(this.transferPrice);
    first = false;
    if (!first) sb.append(", ");
    sb.append("processedStatus:");
    sb.append(this.processedStatus);
    first = false;
    if (!first) sb.append(", ");
    sb.append("createdAt:");
    sb.append(this.createdAt);
    first = false;
    if (!first) sb.append(", ");
    sb.append("processedAt:");
    sb.append(this.processedAt);
    first = false;
    sb.append(")");
    return sb.toString();
  }

  public void validate() throws TException {
    // check for required fields
  }

}