//------------------------------------------------------------------------------
// <自动生成>
//     此代码由工具生成。
//     //
//     对此文件的更改可能导致不正确的行为，并在以下条件下丢失:
//     代码重新生成。
// </自动生成>
//------------------------------------------------------------------------------

namespace MesProductStorage
{
    
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("dotnet-svcutil", "1.0.0.1")]
    [System.ServiceModel.ServiceContractAttribute(Namespace="http://webservice.ldx.pt.wellsoft.com/", ConfigurationName="MesProductStorage.MesSuggestUploadWebService")]
    public interface MesSuggestUploadWebService
    {
        
        [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")]
        [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
        System.Threading.Tasks.Task<MesProductStorage.findIotDepartmentListResponse> findIotDepartmentListAsync(MesProductStorage.findIotDepartmentList request);
        
        [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")]
        [System.ServiceModel.XmlSerializerFormatAttribute(Style=System.ServiceModel.OperationFormatStyle.Rpc, SupportFaults=true)]
        [return: System.ServiceModel.MessageParameterAttribute(Name="return")]
        System.Threading.Tasks.Task<string> suggestUploadAsync(string ztmid, string aufnr);
        
        [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")]
        [System.ServiceModel.XmlSerializerFormatAttribute(Style=System.ServiceModel.OperationFormatStyle.Rpc, SupportFaults=true)]
        [return: System.ServiceModel.MessageParameterAttribute(Name="return")]
        System.Threading.Tasks.Task<string> finishStorageForPdaProceduceAsync(string makeOrderId, string makeOrderNum, string poNumber, string soNumber, string plantId, string itemId, string warehouseCode, string wmWarehouseCode, string workOrderId, string workOrderNum, string locatorCode, string moQty, string lotNumber, string po);
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("dotnet-svcutil", "1.0.0.1")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.ldx.pt.wellsoft.com/")]
    public partial class iotDepartment
    {
        
        private string codeField;
        
        private string idField;
        
        private string levelField;
        
        private string nameField;
        
        private string pathField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, Order=0)]
        public string code
        {
            get
            {
                return this.codeField;
            }
            set
            {
                this.codeField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, Order=1)]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, Order=2)]
        public string level
        {
            get
            {
                return this.levelField;
            }
            set
            {
                this.levelField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, Order=3)]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, Order=4)]
        public string path
        {
            get
            {
                return this.pathField;
            }
            set
            {
                this.pathField = value;
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("dotnet-svcutil", "1.0.0.1")]
    [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
    [System.ServiceModel.MessageContractAttribute(WrapperName="findIotDepartmentList", WrapperNamespace="http://webservice.ldx.pt.wellsoft.com/", IsWrapped=true)]
    public partial class findIotDepartmentList
    {
        
        public findIotDepartmentList()
        {
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("dotnet-svcutil", "1.0.0.1")]
    [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
    [System.ServiceModel.MessageContractAttribute(WrapperName="findIotDepartmentListResponse", WrapperNamespace="http://webservice.ldx.pt.wellsoft.com/", IsWrapped=true)]
    public partial class findIotDepartmentListResponse
    {
        
        [System.ServiceModel.MessageBodyMemberAttribute(Namespace="", Order=0)]
        [System.Xml.Serialization.XmlArrayAttribute()]
        [System.Xml.Serialization.XmlArrayItemAttribute("item", Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public MesProductStorage.iotDepartment[] @return;
        
        public findIotDepartmentListResponse()
        {
        }
        
        public findIotDepartmentListResponse(MesProductStorage.iotDepartment[] @return)
        {
            this.@return = @return;
        }
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("dotnet-svcutil", "1.0.0.1")]
    public interface MesSuggestUploadWebServiceChannel : MesProductStorage.MesSuggestUploadWebService, System.ServiceModel.IClientChannel
    {
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("dotnet-svcutil", "1.0.0.1")]
    public partial class MesSuggestUploadWebServiceClient : System.ServiceModel.ClientBase<MesProductStorage.MesSuggestUploadWebService>, MesProductStorage.MesSuggestUploadWebService
    {
        
    /// <summary>
    /// 实现此分部方法，配置服务终结点。
    /// </summary>
    /// <param name="serviceEndpoint">要配置的终结点</param>
    /// <param name="clientCredentials">客户端凭据</param>
    static partial void ConfigureEndpoint(System.ServiceModel.Description.ServiceEndpoint serviceEndpoint, System.ServiceModel.Description.ClientCredentials clientCredentials);
        
        public MesSuggestUploadWebServiceClient() : 
                base(MesSuggestUploadWebServiceClient.GetDefaultBinding(), MesSuggestUploadWebServiceClient.GetDefaultEndpointAddress())
        {
            this.Endpoint.Name = EndpointConfiguration.MesSuggestUploadWebServiceImplPort.ToString();
            ConfigureEndpoint(this.Endpoint, this.ClientCredentials);
        }
        
        public MesSuggestUploadWebServiceClient(EndpointConfiguration endpointConfiguration) : 
                base(MesSuggestUploadWebServiceClient.GetBindingForEndpoint(endpointConfiguration), MesSuggestUploadWebServiceClient.GetEndpointAddress(endpointConfiguration))
        {
            this.Endpoint.Name = endpointConfiguration.ToString();
            ConfigureEndpoint(this.Endpoint, this.ClientCredentials);
        }
        
        public MesSuggestUploadWebServiceClient(EndpointConfiguration endpointConfiguration, string remoteAddress) : 
                base(MesSuggestUploadWebServiceClient.GetBindingForEndpoint(endpointConfiguration), new System.ServiceModel.EndpointAddress(remoteAddress))
        {
            this.Endpoint.Name = endpointConfiguration.ToString();
            ConfigureEndpoint(this.Endpoint, this.ClientCredentials);
        }
        
        public MesSuggestUploadWebServiceClient(EndpointConfiguration endpointConfiguration, System.ServiceModel.EndpointAddress remoteAddress) : 
                base(MesSuggestUploadWebServiceClient.GetBindingForEndpoint(endpointConfiguration), remoteAddress)
        {
            this.Endpoint.Name = endpointConfiguration.ToString();
            ConfigureEndpoint(this.Endpoint, this.ClientCredentials);
        }
        
        public MesSuggestUploadWebServiceClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) : 
                base(binding, remoteAddress)
        {
        }
        
        [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
        System.Threading.Tasks.Task<MesProductStorage.findIotDepartmentListResponse> MesProductStorage.MesSuggestUploadWebService.findIotDepartmentListAsync(MesProductStorage.findIotDepartmentList request)
        {
            return base.Channel.findIotDepartmentListAsync(request);
        }
        
        public System.Threading.Tasks.Task<MesProductStorage.findIotDepartmentListResponse> findIotDepartmentListAsync()
        {
            MesProductStorage.findIotDepartmentList inValue = new MesProductStorage.findIotDepartmentList();
            return ((MesProductStorage.MesSuggestUploadWebService)(this)).findIotDepartmentListAsync(inValue);
        }
        
        public System.Threading.Tasks.Task<string> suggestUploadAsync(string ztmid, string aufnr)
        {
            return base.Channel.suggestUploadAsync(ztmid, aufnr);
        }
        
        public System.Threading.Tasks.Task<string> finishStorageForPdaProceduceAsync(string makeOrderId, string makeOrderNum, string poNumber, string soNumber, string plantId, string itemId, string warehouseCode, string wmWarehouseCode, string workOrderId, string workOrderNum, string locatorCode, string moQty, string lotNumber, string po)
        {
            return base.Channel.finishStorageForPdaProceduceAsync(makeOrderId, makeOrderNum, poNumber, soNumber, plantId, itemId, warehouseCode, wmWarehouseCode, workOrderId, workOrderNum, locatorCode, moQty, lotNumber, po);
        }
        
        public virtual System.Threading.Tasks.Task OpenAsync()
        {
            return System.Threading.Tasks.Task.Factory.FromAsync(((System.ServiceModel.ICommunicationObject)(this)).BeginOpen(null, null), new System.Action<System.IAsyncResult>(((System.ServiceModel.ICommunicationObject)(this)).EndOpen));
        }
        
        public virtual System.Threading.Tasks.Task CloseAsync()
        {
            return System.Threading.Tasks.Task.Factory.FromAsync(((System.ServiceModel.ICommunicationObject)(this)).BeginClose(null, null), new System.Action<System.IAsyncResult>(((System.ServiceModel.ICommunicationObject)(this)).EndClose));
        }
        
        private static System.ServiceModel.Channels.Binding GetBindingForEndpoint(EndpointConfiguration endpointConfiguration)
        {
            if ((endpointConfiguration == EndpointConfiguration.MesSuggestUploadWebServiceImplPort))
            {
                System.ServiceModel.BasicHttpBinding result = new System.ServiceModel.BasicHttpBinding();
                result.MaxBufferSize = int.MaxValue;
                result.ReaderQuotas = System.Xml.XmlDictionaryReaderQuotas.Max;
                result.MaxReceivedMessageSize = int.MaxValue;
                result.AllowCookies = true;
                return result;
            }
            throw new System.InvalidOperationException(string.Format("找不到名称为“{0}”的终结点。", endpointConfiguration));
        }
        
        private static System.ServiceModel.EndpointAddress GetEndpointAddress(EndpointConfiguration endpointConfiguration)
        {
            if ((endpointConfiguration == EndpointConfiguration.MesSuggestUploadWebServiceImplPort))
            {
                return new System.ServiceModel.EndpointAddress("http://lcp.leedarson.com/webservices/wellpt/soap/mesSuggestUpload");
            }
            throw new System.InvalidOperationException(string.Format("找不到名称为“{0}”的终结点。", endpointConfiguration));
        }
        
        private static System.ServiceModel.Channels.Binding GetDefaultBinding()
        {
            return MesSuggestUploadWebServiceClient.GetBindingForEndpoint(EndpointConfiguration.MesSuggestUploadWebServiceImplPort);
        }
        
        private static System.ServiceModel.EndpointAddress GetDefaultEndpointAddress()
        {
            return MesSuggestUploadWebServiceClient.GetEndpointAddress(EndpointConfiguration.MesSuggestUploadWebServiceImplPort);
        }
        
        public enum EndpointConfiguration
        {
            
            MesSuggestUploadWebServiceImplPort,
        }
    }
}
