public void OnSalvarEdicaoCommand()
        {
            try
            {
                HabilitaEdicao = false;
                System.Xml.Serialization.XmlSerializer serializer = new System.Xml.Serialization.XmlSerializer(typeof(ClasseEmpresasSeguros));

                ObservableCollection <ClasseEmpresasSeguros.EmpresaSeguro> _EmpresasSegurosTemp = new ObservableCollection <ClasseEmpresasSeguros.EmpresaSeguro>();
                ClasseEmpresasSeguros _ClasseEmpresasSegurosTemp = new ClasseEmpresasSeguros();
                _EmpresasSegurosTemp.Add(SeguroSelecionado);
                _ClasseEmpresasSegurosTemp.EmpresasSeguros = _EmpresasSegurosTemp;

                string xmlString;

                using (StringWriterWithEncoding sw = new StringWriterWithEncoding(System.Text.Encoding.UTF8))
                {
                    using (XmlTextWriter xw = new XmlTextWriter(sw))
                    {
                        xw.Formatting = Formatting.Indented;
                        serializer.Serialize(xw, _ClasseEmpresasSegurosTemp);
                        xmlString = sw.ToString();
                    }
                }

                InsereSeguroBD(xmlString);

                _ClasseEmpresasSegurosTemp = null;

                _SegurosTemp.Clear();
                _seguroTemp = null;
            }
            catch (Exception ex)
            {
            }
        }
 public void OnEditarCommand()
 {
     try
     {
         //BuscaBadges();
         _seguroTemp        = SeguroSelecionado.CriaCopia(SeguroSelecionado);
         _selectedIndexTemp = SelectedIndex;
         HabilitaEdicao     = true;
     }
     catch (Exception)
     {
     }
 }
        public void OnAdicionarCommand()
        {
            try
            {
                foreach (var x in Seguros)
                {
                    _SegurosTemp.Add(x);
                }

                _selectedIndexTemp = SelectedIndex;
                Seguros.Clear();
                //ClasseEmpresasSeguros.EmpresaSeguro _seguro = new ClasseEmpresasSeguros.EmpresaSeguro();
                //_seguro.EmpresaID = EmpresaSelecionadaID;
                //Seguros.Add(_seguro);
                _seguroTemp           = new ClasseEmpresasSeguros.EmpresaSeguro();
                _seguroTemp.EmpresaID = EmpresaSelecionadaID;
                Seguros.Add(_seguroTemp);
                SelectedIndex  = 0;
                HabilitaEdicao = true;
            }
            catch (Exception ex)
            {
            }
        }
        //private string RequisitaSeguros(int _empresaID, string _seguradora = "", string _numeroapolice = "")
        //{
        //    try
        //    {
        //        XmlDocument _xmlDocument = new XmlDocument();
        //        XmlNode _xmlNode = _xmlDocument.CreateXmlDeclaration("1.0", "UTF-8", null);

        //        XmlNode _ClasseSegurosEmpresas = _xmlDocument.CreateElement("ClasseEmpresasSeguros");
        //        _xmlDocument.AppendChild(_ClasseSegurosEmpresas);

        //        XmlNode _Seguros = _xmlDocument.CreateElement("EmpresasSeguros");
        //        _ClasseSegurosEmpresas.AppendChild(_Seguros);

        //        string _strSql;

        //        //
        //        // SqlConnection _Con = new SqlConnection(Global._connectionString);_Con.Open();


        //         SqlConnection _Con = new SqlConnection(Global._connectionString);_Con.Open();

        //        _seguradora = "%" + _seguradora + "%";
        //        _numeroapolice = "%" + _numeroapolice + "%";

        //        _strSql = "select [EmpresaSeguroID],[NomeSeguradora],[NumeroApolice],[ValorCobertura],[EmpresaID],[NomeArquivo],[Emissao],[Validade]" +
        //            " from EmpresasSeguros where EmpresaID = " + _empresaID + " and NomeSeguradora Like '" + _seguradora +
        //            "' and NumeroApolice Like '" + _numeroapolice + "'    order by EmpresaSeguroID desc";

        //        SqlCommand _sqlcmd = new SqlCommand(_strSql, _Con);
        //        SqlDataReader _sqlreader = _sqlcmd.ExecuteReader(CommandBehavior.Default);
        //        while (_sqlreader.Read())
        //        {

        //            XmlNode _Seguro = _xmlDocument.CreateElement("EmpresaSeguro");
        //            _Seguros.AppendChild(_Seguro);

        //            XmlNode _EmpresaSeguroID = _xmlDocument.CreateElement("EmpresaSeguroID");
        //            _EmpresaSeguroID.AppendChild(_xmlDocument.CreateTextNode((_sqlreader["EmpresaSeguroID"].ToString())));
        //            _Seguro.AppendChild(_EmpresaSeguroID);

        //            XmlNode _NomeSeguradora = _xmlDocument.CreateElement("NomeSeguradora");
        //            _NomeSeguradora.AppendChild(_xmlDocument.CreateTextNode((_sqlreader["NomeSeguradora"].ToString())));
        //            _Seguro.AppendChild(_NomeSeguradora);

        //            XmlNode _NumeroApolice = _xmlDocument.CreateElement("NumeroApolice");
        //            _NumeroApolice.AppendChild(_xmlDocument.CreateTextNode((_sqlreader["NumeroApolice"].ToString())));
        //            _Seguro.AppendChild(_NumeroApolice);

        //            XmlNode _ValorCobertura = _xmlDocument.CreateElement("ValorCobertura");
        //            _ValorCobertura.AppendChild(_xmlDocument.CreateTextNode((_sqlreader["ValorCobertura"].ToString())));
        //            _Seguro.AppendChild(_ValorCobertura);

        //            XmlNode _Emissao = _xmlDocument.CreateElement("Emissao");
        //            _Emissao.AppendChild(_xmlDocument.CreateTextNode((_sqlreader["Emissao"].ToString())));
        //            _Seguro.AppendChild(_Emissao);

        //            XmlNode _Validade = _xmlDocument.CreateElement("Validade");
        //            _Validade.AppendChild(_xmlDocument.CreateTextNode((_sqlreader["Validade"].ToString())));
        //            _Seguro.AppendChild(_Validade);

        //            XmlNode _EmpresaID = _xmlDocument.CreateElement("EmpresaID");
        //            _EmpresaID.AppendChild(_xmlDocument.CreateTextNode((_sqlreader["EmpresaID"].ToString())));
        //            _Seguro.AppendChild(_EmpresaID);

        //            XmlNode _NomeArquivo = _xmlDocument.CreateElement("NomeArquivo");
        //            _NomeArquivo.AppendChild(_xmlDocument.CreateTextNode((_sqlreader["NomeArquivo"].ToString())));
        //            _Seguro.AppendChild(_NomeArquivo);

        //            XmlNode _Arquivo = _xmlDocument.CreateElement("Arquivo");
        //            //_Arquivo.AppendChild(_xmlDocument.CreateTextNode((_sqlreader["SeguroArquivo"].ToString())));
        //            _Seguro.AppendChild(_Arquivo);

        //        }

        //        _sqlreader.Close();

        //        _Con.Close();
        //        _Con.Dispose();

        //        string _xml = _xmlDocument.InnerXml;
        //        _xmlDocument = null;
        //        return _xml;
        //    }
        //    catch
        //    {

        //        return null;
        //    }
        //    return null;
        //}
        private void InsereSeguroBD(string xmlString)
        {
            try
            {
                System.Xml.XmlDocument _xmlDoc = new System.Xml.XmlDocument();

                _xmlDoc.LoadXml(xmlString);
                // SqlConnection _Con = new SqlConnection(Global._connectionString);_Con.Open();
                ClasseEmpresasSeguros.EmpresaSeguro _empresaSeguro = new ClasseEmpresasSeguros.EmpresaSeguro();
                //for (int i = 0; i <= _xmlDoc.GetElementsByTagName("EmpresaID").Count - 1; i++)
                //{
                int i = 0;

                _empresaSeguro.EmpresaSeguroID = Convert.ToInt32(_xmlDoc.GetElementsByTagName("EmpresaSeguroID")[i].InnerText);
                _empresaSeguro.EmpresaID       = Convert.ToInt32(_xmlDoc.GetElementsByTagName("EmpresaID")[i].InnerText);
                _empresaSeguro.NomeArquivo     = _xmlDoc.GetElementsByTagName("NomeArquivo")[i] == null ? "" : _xmlDoc.GetElementsByTagName("NomeArquivo")[i].InnerText;
                _empresaSeguro.NomeSeguradora  = _xmlDoc.GetElementsByTagName("NomeSeguradora")[i] == null ? "" : _xmlDoc.GetElementsByTagName("NomeSeguradora")[i].InnerText;
                _empresaSeguro.NumeroApolice   = _xmlDoc.GetElementsByTagName("NumeroApolice")[i] == null ? "" : _xmlDoc.GetElementsByTagName("NumeroApolice")[i].InnerText;
                _empresaSeguro.ValorCobertura  = _xmlDoc.GetElementsByTagName("ValorCobertura")[i] == null ? "" : _xmlDoc.GetElementsByTagName("ValorCobertura")[i].InnerText;
                _empresaSeguro.Emissao         = _xmlDoc.GetElementsByTagName("Emissao")[i].InnerText == "" ? null : (DateTime?)Convert.ToDateTime(_xmlDoc.GetElementsByTagName("Emissao")[i].InnerText);
                _empresaSeguro.Validade        = _xmlDoc.GetElementsByTagName("Validade")[i].InnerText == "" ? null : (DateTime?)Convert.ToDateTime(_xmlDoc.GetElementsByTagName("Validade")[i].InnerText);

                //_empresaSeguro.Arquivo = _xmlDoc.GetElementsByTagName("Arquivo")[i] == null ? "" : _xmlDoc.GetElementsByTagName("Arquivo")[i].InnerText;

                _empresaSeguro.NomeArquivo = _seguroTemp.NomeArquivo == null ? "" : _seguroTemp.NomeArquivo;
                _empresaSeguro.Arquivo     = _seguroTemp.Arquivo == null ? "" : _seguroTemp.Arquivo;


                SqlConnection _Con = new SqlConnection(Global._connectionString); _Con.Open();

                SqlCommand _sqlCmd;
                if (_empresaSeguro.EmpresaSeguroID != 0)
                {
                    _sqlCmd = new SqlCommand("Update EmpresasSeguros Set EmpresaID=@v1,NomeArquivo=@v2" +
                                             ",NomeSeguradora= @v3,NumeroApolice=@v4,ValorCobertura=@v5,Emissao=@v6,Validade=@v7,Arquivo=@v8 Where EmpresaSeguroID =@v0", _Con);

                    _sqlCmd.Parameters.Add("@V0", SqlDbType.Int).Value     = _empresaSeguro.EmpresaSeguroID;
                    _sqlCmd.Parameters.Add("@V1", SqlDbType.Int).Value     = _empresaSeguro.EmpresaID;
                    _sqlCmd.Parameters.Add("@V2", SqlDbType.VarChar).Value = _empresaSeguro.NomeArquivo;
                    _sqlCmd.Parameters.Add("@V3", SqlDbType.VarChar).Value = _empresaSeguro.NomeSeguradora;
                    _sqlCmd.Parameters.Add("@V4", SqlDbType.VarChar).Value = _empresaSeguro.NumeroApolice;
                    _sqlCmd.Parameters.Add("@V5", SqlDbType.VarChar).Value = _empresaSeguro.ValorCobertura;
                    if (_empresaSeguro.Emissao == null)
                    {
                        _sqlCmd.Parameters.Add("@V6", SqlDbType.DateTime).Value = DBNull.Value;
                    }
                    else
                    {
                        _sqlCmd.Parameters.Add("@V6", SqlDbType.DateTime).Value = _empresaSeguro.Emissao;
                    }
                    if (_empresaSeguro.Validade == null)
                    {
                        _sqlCmd.Parameters.Add("@V7", SqlDbType.DateTime).Value = DBNull.Value;
                    }
                    else
                    {
                        _sqlCmd.Parameters.Add("@V7", SqlDbType.DateTime).Value = _empresaSeguro.Validade;
                    }
                    _sqlCmd.Parameters.Add("@V8", SqlDbType.VarChar).Value = _empresaSeguro.Arquivo;
                }
                else
                {
                    _sqlCmd = new SqlCommand("Insert into EmpresasSeguros(EmpresaID,NomeArquivo,NomeSeguradora,NumeroApolice,ValorCobertura,Emissao,Validade,Arquivo) values (@v1,@v2,@v3,@v4,@v5,@v6,@v7,@v8)", _Con);
                    _sqlCmd.Parameters.Add("@V1", SqlDbType.Int).Value     = _empresaSeguro.EmpresaID;
                    _sqlCmd.Parameters.Add("@V2", SqlDbType.VarChar).Value = _empresaSeguro.NomeArquivo;
                    _sqlCmd.Parameters.Add("@V3", SqlDbType.VarChar).Value = _empresaSeguro.NomeSeguradora;
                    _sqlCmd.Parameters.Add("@V4", SqlDbType.VarChar).Value = _empresaSeguro.NumeroApolice;
                    _sqlCmd.Parameters.Add("@V5", SqlDbType.VarChar).Value = _empresaSeguro.ValorCobertura;
                    if (_empresaSeguro.Emissao == null)
                    {
                        _sqlCmd.Parameters.Add("@V6", SqlDbType.DateTime).Value = DBNull.Value;
                    }
                    else
                    {
                        _sqlCmd.Parameters.Add("@V6", SqlDbType.DateTime).Value = _empresaSeguro.Emissao;
                    }
                    if (_empresaSeguro.Validade == null)
                    {
                        _sqlCmd.Parameters.Add("@V7", SqlDbType.DateTime).Value = DBNull.Value;
                    }
                    else
                    {
                        _sqlCmd.Parameters.Add("@V7", SqlDbType.DateTime).Value = _empresaSeguro.Validade;
                    }
                    _sqlCmd.Parameters.Add("@V8", SqlDbType.VarChar).Value = _empresaSeguro.Arquivo;
                }

                _sqlCmd.ExecuteNonQuery();
                _Con.Close();
            }
            catch (Exception ex)
            {
                Global.Log("Erro na void InsereEmpresaBD ex: " + ex);
            }
        }