using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Configuration;
using Consulenza.ExternalServices.ImmobiliareDatiRischioWs;
//using Consulenza.ReportModeler.Manager;
//using Consulenza.Immobiliare.Business;
using Consulenza.ReportCommon;

namespace Consulenza.ExternalServices
{
    class ImmobiliareDatiRischio
    {
        private readonly WebProxy _proxy;
        private uidConsulenza _uidConsulenza = null;
        private chiavePropostaBean _chiaveProposta = null;
        private chiaveNucleoBean _chiaveNucleo = null;

        public ImmobiliareDatiRischio(string codiceAgente, string codiceFiscale, string codiceMandato, string codiceRete, long chiaveProposta, long chiaveNucleo, List<int> listaSchede)
        {
            var proxy = ConfigurationManager.AppSettings["ProxyUrl"];

            if (!string.IsNullOrEmpty(proxy))
            {
                _proxy = new WebProxy(proxy, true)
                    {
                        Credentials = new NetworkCredential(
                            ConfigurationManager.AppSettings["ProxyUserName"],
                            ConfigurationManager.AppSettings["ProxyPassword"])
                    };
            }


             _uidConsulenza = new uidConsulenza
                {
                    codiceAgente = codiceAgente,
                    codiceFiscale = codiceFiscale,
                    codiceMandato = codiceMandato,
                    codiceRete=codiceRete
                };
             if (chiaveNucleo == 0 && chiaveProposta > 0)
             {
                 _chiaveProposta = new chiavePropostaBean
                 {
                     chiaveProposta = chiaveProposta,
                     chiavePropostaSpecified = true
                 };
             }
             if (chiaveNucleo > 0 && chiaveProposta == 0)
             {
                
                 _chiaveNucleo = new chiaveNucleoBean
                 {
                     chiaveNucleo = chiaveNucleo,
                     chiaveNucleoSpecified = true,
                     codiceAgente = codiceAgente,
                     rete = codiceRete
                 };
             }  
           
        }


        public void GetDati( long chiaveClientePb)
        {

           
            //rqReportManager request = new rqReportManager
            //{

            //    chiaveClientePB =_uidConsulenza ,
            //    chiaveProposta = _chiaveProposta,
            //    chiaveNucleo = _chiaveNucleo,
            //    info = ,
            //    requestData = ""
            //};
            
            //Valorizzare Request

            try
            {
                var url = ConfigurationManager.AppSettings["UrlImmobiliareDatiRischio"];
                ImmobiliareDatiRischioWs.rsReportManager dati = new rsReportManager();
                
                

            }
            catch (System.Exception ex)
            {
                throw new System.Exception(string.Format("ImmobiliareDatiRischio.GetDati {0}", ex.Message));
            }
        }

    }
}
