//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6 
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
// Any modifications to this file will be lost upon recompilation of the source schema. 
// Generated on: 2014.04.25 at 03:35:22 ���� CST 
//


package com.fjs.scenic.cyt.request;

import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;


/**
 * 【畅游通提供】【订单】用户向供应商申请退款（applyOrderRefundByUser）
 * <p/>
 * <p>Java class for ApplyOrderRefundByUserRequestBody complex type.
 * <p/>
 * <p>The following schema fragment specifies the expected content contained within this class.
 * <p/>
 * <pre>
 * &lt;complexType name="ApplyOrderRefundByUserRequestBody">
 *   &lt;complexContent>
 *     &lt;extension base="{http://tour.ectrip.com/2014/QMRequestDataSchema}RequestBody">
 *       &lt;sequence>
 *         &lt;element name="orderInfo">
 *           &lt;complexType>
 *             &lt;complexContent>
 *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                 &lt;sequence>
 *                   &lt;element name="partnerorderId" type="{http://www.w3.org/2001/XMLSchema}string"/>
 *                   &lt;element name="refundSeq" type="{http://www.w3.org/2001/XMLSchema}string"/>
 *                   &lt;element name="orderPrice" type="{http://www.w3.org/2001/XMLSchema}string"/>
 *                   &lt;element name="orderQuantity" type="{http://www.w3.org/2001/XMLSchema}string"/>
 *                   &lt;element name="refundQuantity" type="{http://www.w3.org/2001/XMLSchema}string"/>
 *                   &lt;element name="orderRefundPrice" type="{http://www.w3.org/2001/XMLSchema}string"/>
 *                   &lt;element name="orderRefundCharge" type="{http://www.w3.org/2001/XMLSchema}string"/>
 *                   &lt;element name="refundExplain" type="{http://www.w3.org/2001/XMLSchema}string"/>
 *                   &lt;element name="visitPerson">
 *                     &lt;complexType>
 *                       &lt;complexContent>
 *                         &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                           &lt;sequence>
 *                             &lt;element name="person" maxOccurs="unbounded" minOccurs="0">
 *                               &lt;complexType>
 *                                 &lt;complexContent>
 *                                   &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                                     &lt;sequence>
 *                                       &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string"/>
 *                                       &lt;element name="credentials" type="{http://www.w3.org/2001/XMLSchema}string"/>
 *                                       &lt;element name="credentialsType" type="{http://www.w3.org/2001/XMLSchema}string"/>
 *                                     &lt;/sequence>
 *                                   &lt;/restriction>
 *                                 &lt;/complexContent>
 *                               &lt;/complexType>
 *                             &lt;/element>
 *                           &lt;/sequence>
 *                         &lt;/restriction>
 *                       &lt;/complexContent>
 *                     &lt;/complexType>
 *                   &lt;/element>
 *                 &lt;/sequence>
 *               &lt;/restriction>
 *             &lt;/complexContent>
 *           &lt;/complexType>
 *         &lt;/element>
 *       &lt;/sequence>
 *     &lt;/extension>
 *   &lt;/complexContent>
 * &lt;/complexType>
 * </pre>
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "ApplyOrderRefundByUserRequestBody", propOrder = {
        "orderInfo"
})
public class ApplyOrderRefundByUserRequestBody
        extends RequestBody {

    @XmlElement(required = true)
    protected ApplyOrderRefundByUserRequestBody.OrderInfo orderInfo;

    /**
     * Gets the value of the orderInfo property.
     *
     * @return possible object is
     * {@link ApplyOrderRefundByUserRequestBody.OrderInfo }
     */
    public ApplyOrderRefundByUserRequestBody.OrderInfo getOrderInfo() {
        return orderInfo;
    }

    /**
     * Sets the value of the orderInfo property.
     *
     * @param value allowed object is
     *              {@link ApplyOrderRefundByUserRequestBody.OrderInfo }
     */
    public void setOrderInfo(ApplyOrderRefundByUserRequestBody.OrderInfo value) {
        this.orderInfo = value;
    }


    /**
     * <p>Java class for anonymous complex type.
     * <p/>
     * <p>The following schema fragment specifies the expected content contained within this class.
     * <p/>
     * <pre>
     * &lt;complexType>
     *   &lt;complexContent>
     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *       &lt;sequence>
     *         &lt;element name="partnerorderId" type="{http://www.w3.org/2001/XMLSchema}string"/>
     *         &lt;element name="refundSeq" type="{http://www.w3.org/2001/XMLSchema}string"/>
     *         &lt;element name="orderPrice" type="{http://www.w3.org/2001/XMLSchema}string"/>
     *         &lt;element name="orderQuantity" type="{http://www.w3.org/2001/XMLSchema}string"/>
     *         &lt;element name="refundQuantity" type="{http://www.w3.org/2001/XMLSchema}string"/>
     *         &lt;element name="orderRefundPrice" type="{http://www.w3.org/2001/XMLSchema}string"/>
     *         &lt;element name="orderRefundCharge" type="{http://www.w3.org/2001/XMLSchema}string"/>
     *         &lt;element name="refundExplain" type="{http://www.w3.org/2001/XMLSchema}string"/>
     *         &lt;element name="visitPerson">
     *           &lt;complexType>
     *             &lt;complexContent>
     *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *                 &lt;sequence>
     *                   &lt;element name="person" maxOccurs="unbounded" minOccurs="0">
     *                     &lt;complexType>
     *                       &lt;complexContent>
     *                         &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *                           &lt;sequence>
     *                             &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string"/>
     *                             &lt;element name="credentials" type="{http://www.w3.org/2001/XMLSchema}string"/>
     *                             &lt;element name="credentialsType" type="{http://www.w3.org/2001/XMLSchema}string"/>
     *                           &lt;/sequence>
     *                         &lt;/restriction>
     *                       &lt;/complexContent>
     *                     &lt;/complexType>
     *                   &lt;/element>
     *                 &lt;/sequence>
     *               &lt;/restriction>
     *             &lt;/complexContent>
     *           &lt;/complexType>
     *         &lt;/element>
     *       &lt;/sequence>
     *     &lt;/restriction>
     *   &lt;/complexContent>
     * &lt;/complexType>
     * </pre>
     */
    @XmlAccessorType(XmlAccessType.FIELD)
    @XmlType(name = "", propOrder = {
            "partnerorderId",
            "refundSeq",
            "orderPrice",
            "orderQuantity",
            "refundQuantity",
            "orderRefundPrice",
            "orderRefundCharge",
            "refundExplain",
            "visitPerson"
    })
    public static class OrderInfo {

        @XmlElement(required = true)
        protected String partnerorderId;
        @XmlElement(required = true)
        protected String refundSeq;
        @XmlElement(required = true)
        protected String orderPrice;
        @XmlElement(required = true)
        protected String orderQuantity;
        @XmlElement(required = true)
        protected String refundQuantity;
        @XmlElement(required = true)
        protected String orderRefundPrice;
        @XmlElement(required = true)
        protected String orderRefundCharge;
        @XmlElement(required = true)
        protected String refundExplain;
        @XmlElement(required = true)
        protected ApplyOrderRefundByUserRequestBody.OrderInfo.VisitPerson visitPerson;

        /**
         * Gets the value of the partnerorderId property.
         *
         * @return possible object is
         * {@link String }
         */
        public String getPartnerorderId() {
            return partnerorderId;
        }

        /**
         * Sets the value of the partnerorderId property.
         *
         * @param value allowed object is
         *              {@link String }
         */
        public void setPartnerorderId(String value) {
            this.partnerorderId = value;
        }

        /**
         * Gets the value of the refundSeq property.
         *
         * @return possible object is
         * {@link String }
         */
        public String getRefundSeq() {
            return refundSeq;
        }

        /**
         * Sets the value of the refundSeq property.
         *
         * @param value allowed object is
         *              {@link String }
         */
        public void setRefundSeq(String value) {
            this.refundSeq = value;
        }

        /**
         * Gets the value of the orderPrice property.
         *
         * @return possible object is
         * {@link String }
         */
        public String getOrderPrice() {
            return orderPrice;
        }

        /**
         * Sets the value of the orderPrice property.
         *
         * @param value allowed object is
         *              {@link String }
         */
        public void setOrderPrice(String value) {
            this.orderPrice = value;
        }

        /**
         * Gets the value of the orderQuantity property.
         *
         * @return possible object is
         * {@link String }
         */
        public String getOrderQuantity() {
            return orderQuantity;
        }

        /**
         * Sets the value of the orderQuantity property.
         *
         * @param value allowed object is
         *              {@link String }
         */
        public void setOrderQuantity(String value) {
            this.orderQuantity = value;
        }

        /**
         * Gets the value of the refundQuantity property.
         *
         * @return possible object is
         * {@link String }
         */
        public String getRefundQuantity() {
            return refundQuantity;
        }

        /**
         * Sets the value of the refundQuantity property.
         *
         * @param value allowed object is
         *              {@link String }
         */
        public void setRefundQuantity(String value) {
            this.refundQuantity = value;
        }

        /**
         * Gets the value of the orderRefundPrice property.
         *
         * @return possible object is
         * {@link String }
         */
        public String getOrderRefundPrice() {
            return orderRefundPrice;
        }

        /**
         * Sets the value of the orderRefundPrice property.
         *
         * @param value allowed object is
         *              {@link String }
         */
        public void setOrderRefundPrice(String value) {
            this.orderRefundPrice = value;
        }

        /**
         * Gets the value of the orderRefundCharge property.
         *
         * @return possible object is
         * {@link String }
         */
        public String getOrderRefundCharge() {
            return orderRefundCharge;
        }

        /**
         * Sets the value of the orderRefundCharge property.
         *
         * @param value allowed object is
         *              {@link String }
         */
        public void setOrderRefundCharge(String value) {
            this.orderRefundCharge = value;
        }

        /**
         * Gets the value of the refundExplain property.
         *
         * @return possible object is
         * {@link String }
         */
        public String getRefundExplain() {
            return refundExplain;
        }

        /**
         * Sets the value of the refundExplain property.
         *
         * @param value allowed object is
         *              {@link String }
         */
        public void setRefundExplain(String value) {
            this.refundExplain = value;
        }

        /**
         * Gets the value of the visitPerson property.
         *
         * @return possible object is
         * {@link ApplyOrderRefundByUserRequestBody.OrderInfo.VisitPerson }
         */
        public ApplyOrderRefundByUserRequestBody.OrderInfo.VisitPerson getVisitPerson() {
            return visitPerson;
        }

        /**
         * Sets the value of the visitPerson property.
         *
         * @param value allowed object is
         *              {@link ApplyOrderRefundByUserRequestBody.OrderInfo.VisitPerson }
         */
        public void setVisitPerson(ApplyOrderRefundByUserRequestBody.OrderInfo.VisitPerson value) {
            this.visitPerson = value;
        }


        /**
         * <p>Java class for anonymous complex type.
         * <p/>
         * <p>The following schema fragment specifies the expected content contained within this class.
         * <p/>
         * <pre>
         * &lt;complexType>
         *   &lt;complexContent>
         *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
         *       &lt;sequence>
         *         &lt;element name="person" maxOccurs="unbounded" minOccurs="0">
         *           &lt;complexType>
         *             &lt;complexContent>
         *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
         *                 &lt;sequence>
         *                   &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string"/>
         *                   &lt;element name="credentials" type="{http://www.w3.org/2001/XMLSchema}string"/>
         *                   &lt;element name="credentialsType" type="{http://www.w3.org/2001/XMLSchema}string"/>
         *                 &lt;/sequence>
         *               &lt;/restriction>
         *             &lt;/complexContent>
         *           &lt;/complexType>
         *         &lt;/element>
         *       &lt;/sequence>
         *     &lt;/restriction>
         *   &lt;/complexContent>
         * &lt;/complexType>
         * </pre>
         */
        @XmlAccessorType(XmlAccessType.FIELD)
        @XmlType(name = "", propOrder = {
                "person"
        })
        public static class VisitPerson {

            protected List<ApplyOrderRefundByUserRequestBody.OrderInfo.VisitPerson.Person> person;

            /**
             * Gets the value of the person property.
             * <p/>
             * <p/>
             * This accessor method returns a reference to the live list,
             * not a snapshot. Therefore any modification you make to the
             * returned list will be present inside the JAXB object.
             * This is why there is not a <CODE>set</CODE> method for the person property.
             * <p/>
             * <p/>
             * For example, to add a new item, do as follows:
             * <pre>
             *    getPerson().add(newItem);
             * </pre>
             * <p/>
             * <p/>
             * <p/>
             * Objects of the following type(s) are allowed in the list
             * {@link ApplyOrderRefundByUserRequestBody.OrderInfo.VisitPerson.Person }
             */
            public List<ApplyOrderRefundByUserRequestBody.OrderInfo.VisitPerson.Person> getPerson() {
                if (person == null) {
                    person = new ArrayList<ApplyOrderRefundByUserRequestBody.OrderInfo.VisitPerson.Person>();
                }
                return this.person;
            }


            /**
             * <p>Java class for anonymous complex type.
             * <p/>
             * <p>The following schema fragment specifies the expected content contained within this class.
             * <p/>
             * <pre>
             * &lt;complexType>
             *   &lt;complexContent>
             *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
             *       &lt;sequence>
             *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string"/>
             *         &lt;element name="credentials" type="{http://www.w3.org/2001/XMLSchema}string"/>
             *         &lt;element name="credentialsType" type="{http://www.w3.org/2001/XMLSchema}string"/>
             *       &lt;/sequence>
             *     &lt;/restriction>
             *   &lt;/complexContent>
             * &lt;/complexType>
             * </pre>
             */
            @XmlAccessorType(XmlAccessType.FIELD)
            @XmlType(name = "", propOrder = {
                    "name",
                    "credentials",
                    "credentialsType"
            })
            public static class Person {

                @XmlElement(required = true)
                protected String name;
                @XmlElement(required = true)
                protected String credentials;
                @XmlElement(required = true)
                protected String credentialsType;

                /**
                 * Gets the value of the name property.
                 *
                 * @return possible object is
                 * {@link String }
                 */
                public String getName() {
                    return name;
                }

                /**
                 * Sets the value of the name property.
                 *
                 * @param value allowed object is
                 *              {@link String }
                 */
                public void setName(String value) {
                    this.name = value;
                }

                /**
                 * Gets the value of the credentials property.
                 *
                 * @return possible object is
                 * {@link String }
                 */
                public String getCredentials() {
                    return credentials;
                }

                /**
                 * Sets the value of the credentials property.
                 *
                 * @param value allowed object is
                 *              {@link String }
                 */
                public void setCredentials(String value) {
                    this.credentials = value;
                }

                /**
                 * Gets the value of the credentialsType property.
                 *
                 * @return possible object is
                 * {@link String }
                 */
                public String getCredentialsType() {
                    return credentialsType;
                }

                /**
                 * Sets the value of the credentialsType property.
                 *
                 * @param value allowed object is
                 *              {@link String }
                 */
                public void setCredentialsType(String value) {
                    this.credentialsType = value;
                }

            }

        }

    }

}
