
package com.mx.dla.dda.reporte.pagosTransaccion.dtos;

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.XmlRootElement;
import javax.xml.bind.annotation.XmlType;

import com.mx.dla.global.dtos.BaseDTO;


/**
 * Estructura para el registro de entrada de mercancia
 * 
 * <p>Clase Java para DT_EntradaMercancia complex type.
 * 
 * <p>El siguiente fragmento de esquema especifica el contenido que se espera que haya en esta clase.
 * 
 * <pre>
 * &lt;complexType name="DT_EntradaMercancia">
 *   &lt;complexContent>
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *       &lt;sequence>
 *         &lt;element name="FechaContab">
 *           &lt;simpleType>
 *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *               &lt;maxLength value="10"/>
 *             &lt;/restriction>
 *           &lt;/simpleType>
 *         &lt;/element>
 *         &lt;element name="FechaDoc">
 *           &lt;simpleType>
 *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *               &lt;maxLength value="10"/>
 *             &lt;/restriction>
 *           &lt;/simpleType>
 *         &lt;/element>
 *         &lt;element name="NumeroPO">
 *           &lt;simpleType>
 *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *               &lt;maxLength value="10"/>
 *             &lt;/restriction>
 *           &lt;/simpleType>
 *         &lt;/element>
 *         &lt;element name="TextoCab">
 *           &lt;simpleType>
 *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *               &lt;maxLength value="25"/>
 *             &lt;/restriction>
 *           &lt;/simpleType>
 *         &lt;/element>
 *         &lt;element name="Actividad">
 *           &lt;simpleType>
 *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *               &lt;maxLength value="2"/>
 *             &lt;/restriction>
 *           &lt;/simpleType>
 *         &lt;/element>
 *         &lt;element name="Item" maxOccurs="unbounded">
 *           &lt;complexType>
 *             &lt;complexContent>
 *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                 &lt;sequence>
 *                   &lt;element name="Centro">
 *                     &lt;simpleType>
 *                       &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *                         &lt;maxLength value="4"/>
 *                       &lt;/restriction>
 *                     &lt;/simpleType>
 *                   &lt;/element>
 *                   &lt;element name="ClaseMov">
 *                     &lt;simpleType>
 *                       &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *                         &lt;maxLength value="3"/>
 *                       &lt;/restriction>
 *                     &lt;/simpleType>
 *                   &lt;/element>
 *                   &lt;element name="Cantidad">
 *                     &lt;simpleType>
 *                       &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *                         &lt;maxLength value="13"/>
 *                       &lt;/restriction>
 *                     &lt;/simpleType>
 *                   &lt;/element>
 *                   &lt;element name="NumeroPO">
 *                     &lt;simpleType>
 *                       &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *                         &lt;maxLength value="10"/>
 *                       &lt;/restriction>
 *                     &lt;/simpleType>
 *                   &lt;/element>
 *                   &lt;element name="PosicionRefPO">
 *                     &lt;simpleType>
 *                       &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *                         &lt;maxLength value="5"/>
 *                       &lt;/restriction>
 *                     &lt;/simpleType>
 *                   &lt;/element>
 *                   &lt;element name="IndicadorMvto">
 *                     &lt;simpleType>
 *                       &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *                         &lt;maxLength value="1"/>
 *                       &lt;/restriction>
 *                     &lt;/simpleType>
 *                   &lt;/element>
 *                 &lt;/sequence>
 *               &lt;/restriction>
 *             &lt;/complexContent>
 *           &lt;/complexType>
 *         &lt;/element>
 *       &lt;/sequence>
 *     &lt;/restriction>
 *   &lt;/complexContent>
 * &lt;/complexType>
 * </pre>
 * 
 * 
 */
@XmlRootElement(name="MT_EntradaMercancia" , namespace = "http://americamovil.com/DDA/1/EnviaEntradaMercancia" )
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "MT_EntradaMercancia", propOrder = {
    "fechaContab",
    "fechaDoc",
    "numeroPO",
    "textoCab",
    "actividad",
    "item"
})
public class DTEntradaMercancia extends BaseDTO{

    @XmlElement(name = "FechaContab", required = true)
    protected String fechaContab;
    @XmlElement(name = "FechaDoc", required = true)
    protected String fechaDoc;
    @XmlElement(name = "NumeroPO", required = true)
    protected String numeroPO;
    @XmlElement(name = "TextoCab", required = true)
    protected String textoCab;
    @XmlElement(name = "Actividad", required = true)
    protected String actividad;
    @XmlElement(name = "Item", required = true)
    protected List<DTEntradaMercancia.Item> item;

    /**
     * Obtiene el valor de la propiedad fechaContab.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getFechaContab() {
        return fechaContab;
    }

    /**
     * Define el valor de la propiedad fechaContab.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setFechaContab(String value) {
        this.fechaContab = value;
    }

    /**
     * Obtiene el valor de la propiedad fechaDoc.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getFechaDoc() {
        return fechaDoc;
    }

    /**
     * Define el valor de la propiedad fechaDoc.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setFechaDoc(String value) {
        this.fechaDoc = value;
    }

    /**
     * Obtiene el valor de la propiedad numeroPO.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getNumeroPO() {
        return numeroPO;
    }

    /**
     * Define el valor de la propiedad numeroPO.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setNumeroPO(String value) {
        this.numeroPO = value;
    }

    /**
     * Obtiene el valor de la propiedad textoCab.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getTextoCab() {
        return textoCab;
    }

    /**
     * Define el valor de la propiedad textoCab.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setTextoCab(String value) {
        this.textoCab = value;
    }

    /**
     * Obtiene el valor de la propiedad actividad.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getActividad() {
        return actividad;
    }

    /**
     * Define el valor de la propiedad actividad.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setActividad(String value) {
        this.actividad = value;
    }

    /**
     * Gets the value of the item property.
     * 
     * <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 item property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getItem().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link DTEntradaMercancia.Item }
     * 
     * 
     */
    public List<DTEntradaMercancia.Item> getItem() {
        if (item == null) {
            item = new ArrayList<DTEntradaMercancia.Item>();
        }
        return this.item;
    }


    /**
     * <p>Clase Java para anonymous complex type.
     * 
     * <p>El siguiente fragmento de esquema especifica el contenido que se espera que haya en esta clase.
     * 
     * <pre>
     * &lt;complexType>
     *   &lt;complexContent>
     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *       &lt;sequence>
     *         &lt;element name="Centro">
     *           &lt;simpleType>
     *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
     *               &lt;maxLength value="4"/>
     *             &lt;/restriction>
     *           &lt;/simpleType>
     *         &lt;/element>
     *         &lt;element name="ClaseMov">
     *           &lt;simpleType>
     *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
     *               &lt;maxLength value="3"/>
     *             &lt;/restriction>
     *           &lt;/simpleType>
     *         &lt;/element>
     *         &lt;element name="Cantidad">
     *           &lt;simpleType>
     *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
     *               &lt;maxLength value="13"/>
     *             &lt;/restriction>
     *           &lt;/simpleType>
     *         &lt;/element>
     *         &lt;element name="NumeroPO">
     *           &lt;simpleType>
     *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
     *               &lt;maxLength value="10"/>
     *             &lt;/restriction>
     *           &lt;/simpleType>
     *         &lt;/element>
     *         &lt;element name="PosicionRefPO">
     *           &lt;simpleType>
     *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
     *               &lt;maxLength value="5"/>
     *             &lt;/restriction>
     *           &lt;/simpleType>
     *         &lt;/element>
     *         &lt;element name="IndicadorMvto">
     *           &lt;simpleType>
     *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
     *               &lt;maxLength value="1"/>
     *             &lt;/restriction>
     *           &lt;/simpleType>
     *         &lt;/element>
     *       &lt;/sequence>
     *     &lt;/restriction>
     *   &lt;/complexContent>
     * &lt;/complexType>
     * </pre>
     * 
     * 
     */
    @XmlAccessorType(XmlAccessType.FIELD)
    @XmlType(name = "", propOrder = {
        "centro",
        "claseMov",
        "cantidad",
        "numeroPO",
        "posicionRefPO",
        "indicadorMvto"
    })
    public static class Item extends BaseDTO{

        @XmlElement(name = "Centro", required = true)
        protected String centro;
        @XmlElement(name = "ClaseMov", required = true)
        protected String claseMov;
        @XmlElement(name = "Cantidad", required = true)
        protected String cantidad;
        @XmlElement(name = "NumeroPO", required = true)
        protected String numeroPO;
        @XmlElement(name = "PosicionRefPO", required = true)
        protected String posicionRefPO;
        @XmlElement(name = "IndicadorMvto", required = true)
        protected String indicadorMvto;

        /**
         * Obtiene el valor de la propiedad centro.
         * 
         * @return
         *     possible object is
         *     {@link String }
         *     
         */
        public String getCentro() {
            return centro;
        }

        /**
         * Define el valor de la propiedad centro.
         * 
         * @param value
         *     allowed object is
         *     {@link String }
         *     
         */
        public void setCentro(String value) {
            this.centro = value;
        }

        /**
         * Obtiene el valor de la propiedad claseMov.
         * 
         * @return
         *     possible object is
         *     {@link String }
         *     
         */
        public String getClaseMov() {
            return claseMov;
        }

        /**
         * Define el valor de la propiedad claseMov.
         * 
         * @param value
         *     allowed object is
         *     {@link String }
         *     
         */
        public void setClaseMov(String value) {
            this.claseMov = value;
        }

        /**
         * Obtiene el valor de la propiedad cantidad.
         * 
         * @return
         *     possible object is
         *     {@link String }
         *     
         */
        public String getCantidad() {
            return cantidad;
        }

        /**
         * Define el valor de la propiedad cantidad.
         * 
         * @param value
         *     allowed object is
         *     {@link String }
         *     
         */
        public void setCantidad(String value) {
            this.cantidad = value;
        }

        /**
         * Obtiene el valor de la propiedad numeroPO.
         * 
         * @return
         *     possible object is
         *     {@link String }
         *     
         */
        public String getNumeroPO() {
            return numeroPO;
        }

        /**
         * Define el valor de la propiedad numeroPO.
         * 
         * @param value
         *     allowed object is
         *     {@link String }
         *     
         */
        public void setNumeroPO(String value) {
            this.numeroPO = value;
        }

        /**
         * Obtiene el valor de la propiedad posicionRefPO.
         * 
         * @return
         *     possible object is
         *     {@link String }
         *     
         */
        public String getPosicionRefPO() {
            return posicionRefPO;
        }

        /**
         * Define el valor de la propiedad posicionRefPO.
         * 
         * @param value
         *     allowed object is
         *     {@link String }
         *     
         */
        public void setPosicionRefPO(String value) {
            this.posicionRefPO = value;
        }

        /**
         * Obtiene el valor de la propiedad indicadorMvto.
         * 
         * @return
         *     possible object is
         *     {@link String }
         *     
         */
        public String getIndicadorMvto() {
            return indicadorMvto;
        }

        /**
         * Define el valor de la propiedad indicadorMvto.
         * 
         * @param value
         *     allowed object is
         *     {@link String }
         *     
         */
        public void setIndicadorMvto(String value) {
            this.indicadorMvto = value;
        }

    }

}
