Esempio n. 1
0
        public PartialViewResult BancosClientes(int bancoId, string nombre, string numeroCuenta)
        {
            var bancoCliente = new BancoCliente
            {
                BancoId      = bancoId,
                Banco        = _db.Bancos.Find(bancoId),
                Nombre       = nombre,
                NumeroCuenta = numeroCuenta
            };

            return(PartialView("~/Views/Clientes/Bancos.cshtml", bancoCliente));
        }
Esempio n. 2
0
        private void btnAtualizarCliente_Click(object sender, EventArgs e)
        {
            BancoCliente cli = new BancoCliente();

            _ = cli.AlterarCliente(txtNomeCliente.Text.ToString(), mskCpf.Text.ToString(), "", txtEmailCliente.Text.ToString(), "", mskTelefone.Text.ToString(), txtEndereco.Text.ToString(), txtBairro.Text.ToString(), txtCidade.Text.ToString(), txtEstado.Text.ToString(), txtComplemento.Text.ToString(), txtNumero.Text.ToString());

            CamadaNegocios Cli = new CamadaNegocios();
            DataSet        ds  = new DataSet();

            ds = Cli.ExibirDados("Cliente");
            dtgCliente.DataSource = ds.Tables[0];
        }
Esempio n. 3
0
        //Botão de Cadastro
        private void btnAdicionarCli_Click(object sender, EventArgs e)
        {
            if (textNomeCli.Text != "")
            {
                CCliente c = new CCliente();
                c.nome     = textNomeCli.Text;
                c.telefone = maskedTextTelefonecli.Text;
                c.cpf      = maskedTextCPFcli.Text;
                c.email    = textemail.Text;
                c.endereço = textendereco.Text;

                BancoCliente bc1 = new BancoCliente();
                bc1.addCliente(c);
                MessageBox.Show("Cliente cadastrado com sucesso!!!");
                AtualizarLista();
                LimparTela();
            }
        }
Esempio n. 4
0
        public List <BancoCliente> getbancobycliente(string cliente)
        {
            try
            {
                using (SqlConnection sqlConn = new SqlConnection(this.strConn))
                {
                    sqlConn.Open();

                    SqlCommand cmd = new SqlCommand(strConn, sqlConn);

                    cmd.CommandType = System.Data.CommandType.StoredProcedure;

                    cmd.CommandText = "sp_get_Banco_Cliente";

                    cmd.Parameters.AddWithValue("@cliente", cliente);

                    SqlDataReader reader = cmd.ExecuteReader();

                    List <BancoCliente> lgasto = new List <BancoCliente>();

                    while (reader.Read())
                    {
                        BancoCliente mbancocliente = new BancoCliente();

                        mbancocliente.Codigo_banco = reader["codigo_banco"].ToString();
                        mbancocliente.Id_cliente   = reader["id_cliente"].ToString();;
                        mbancocliente.Nombre       = reader["nombre"].ToString();;
                        mbancocliente.Check        = reader["check"].ToString();

                        lgasto.Add(mbancocliente);

                        mbancocliente = null;
                    }
                    return(lgasto);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Esempio n. 5
0
 //Botão de excluir
 private void btnExcluircli_Click(object sender, EventArgs e)
 {
     if (!isCCliente())
     {
         MessageBox.Show("Cliente não cadastrado, selecione um cliente válido.");
     }
     else
     {
         DialogResult resposta = MessageBox.Show("Tem certeza que deseja excluir o cliente selecionado?", "Atenção", MessageBoxButtons.YesNo);
         if (resposta == DialogResult.Yes)
         {
             CCliente c = new CCliente();
             c.idcli = id;
             BancoCliente bc3 = new BancoCliente();
             bc3.excluirCliente(c);
             MessageBox.Show("Excluido do banco");
             AtualizarLista();
             LimparTela();
         }
     }
 }
Esempio n. 6
0
        //Botão de alterar
        private void btnAlterarcli_Click(object sender, EventArgs e)
        {
            if (!isCCliente())
            {
                MessageBox.Show("Cliente não cadastrado, selecione um cliente válido.");
            }
            else
            {
                CCliente c = new CCliente();
                c.idcli    = id;
                c.nome     = textNomeCli.Text;
                c.telefone = maskedTextTelefonecli.Text;
                c.cpf      = maskedTextCPFcli.Text;
                c.email    = textemail.Text;
                c.endereço = textendereco.Text;

                BancoCliente bc2 = new BancoCliente();
                bc2.alterarCliente(c);
                MessageBox.Show("Cliente alterado com sucesso!!!");
                AtualizarLista();
                LimparTela();
            }
        }
Esempio n. 7
0
        public List <String> Importar(string path, int sucursalId)
        {
            var errores = new List <String>();

            using (StreamReader archivo = File.OpenText(path))
            {
                var csv = new CsvReader(archivo);

                var registros = new List <List <String> >();
                var sucursal  = _db.Sucursales.Find(sucursalId);

                while (csv.Read())
                {
                    var registro = new List <String>();
                    for (int i = 0; csv.TryGetField(i, out string value); i++)
                    {
                        registro.Add(value);
                    }
                    registros.Add(registro);
                }

                for (int i = 1; i < registros.Count(); i++)
                {
                    try
                    {
                        var bancoCliente = new BancoCliente();

                        var rfcCliente   = registros[i][0];
                        var nombreBanco  = registros[i][1];
                        var nombre       = registros[i][2];
                        var numeroCuenta = registros[i][3];

                        var cliente = _db.Clientes.FirstOrDefault(p => p.Rfc == rfcCliente && p.SucursalId == sucursalId);
                        if (cliente == null)
                        {
                            throw new Exception(String.Format("El cliente con RFC {0} no fue encontrado en el registro {1}", rfcCliente, i));
                        }
                        bancoCliente.ClienteId = cliente.Id;

                        var banco = _db.Bancos.FirstOrDefault(p => p.NombreCorto == nombreBanco);
                        if (banco == null)
                        {
                            throw new Exception(String.Format("El banco {0} no fue encontrado en el registro {1}", nombreBanco, i));
                        }
                        bancoCliente.BancoId = banco.Id;

                        bancoCliente.Nombre       = nombre;
                        bancoCliente.NumeroCuenta = numeroCuenta;

                        //Sustitucion de espacios en blanco por null
                        foreach (var propertyInfo in bancoCliente.GetType().GetProperties())
                        {
                            if (propertyInfo.PropertyType == typeof(string))
                            {
                                if ((String)propertyInfo.GetValue(bancoCliente, null) == string.Empty)
                                {
                                    propertyInfo.SetValue(bancoCliente, null, null);
                                }
                            }
                        }

                        //Registro Existente
                        var registroAnterior = _db.BancosClientes.FirstOrDefault(bc => bc.ClienteId == cliente.Id && bc.BancoId == banco.Id && bc.NumeroCuenta == numeroCuenta);
                        if (registroAnterior != null)
                        {
                            bancoCliente.Id = registroAnterior.Id;
                        }

                        //Actualizacion
                        _db.BancosClientes.AddOrUpdate(bancoCliente);

                        try
                        {
                            _db.SaveChanges();
                        }
                        catch (DbEntityValidationException dbEx)
                        {
                            var erroresDb = new List <String>();
                            foreach (var validationErrors in dbEx.EntityValidationErrors)
                            {
                                foreach (var validationError in validationErrors.ValidationErrors)
                                {
                                    erroresDb.Add(String.Format("Propiedad: {0} Error: {1}", validationError.PropertyName, validationError.ErrorMessage));
                                }
                            }
                            throw new Exception(string.Join(",", erroresDb.ToArray()));
                        }
                        catch (Exception ex)
                        {
                            if (ex.InnerException != null)
                            {
                                throw new Exception(ex.InnerException.InnerException.Message);
                            }
                            throw ex;
                        }
                    }
                    catch (Exception ex)
                    {
                        errores.Add(ex.Message);
                    }
                    finally
                    {
                        archivo.Close();
                        archivo.Dispose();
                    }
                }
            }
            return(errores);
        }
Esempio n. 8
0
        public List <ComplementoPago> Importar(string path, int sucursalId, Meses mes, bool previsualizacion)
        {
            var errores          = new List <String>();
            var complementosPago = new List <ComplementoPago>();

            using (StreamReader archivo = File.OpenText(path))
            {
                try
                {
                    var csv = new CsvReader(archivo);

                    var registros = new List <List <String> >();
                    var sucursal  = _db.Sucursales.Find(sucursalId);

                    while (csv.Read())
                    {
                        var registro = new List <String>();
                        for (int i = 0; csv.TryGetField(i, out string value); i++)
                        {
                            registro.Add(value);
                        }
                        registros.Add(registro);
                    }

                    var pagos = new List <Pago>();

                    //var facturasEmitidas = _db.FacturasEmitidas.Where(fe => fe.EmisorId == sucursalId).ToList();
                    for (int i = 1; i < registros.Count(); i++)
                    {
                        try
                        {
                            var fechaPago      = Convert.ToDateTime(registros[i][0]);
                            var formaPago      = ParseEnum <c_FormaPago>(registros[i][1], i);
                            var monto          = Convert.ToDouble(registros[i][2]);
                            var moneda         = ParseEnum <c_Moneda>(registros[i][3], i);
                            var tipoCambioPago = Convert.ToDouble(registros[i][4]);
                            var tipoCambioDocumentoRelacionado = Convert.ToDouble(registros[i][5]);
                            var numeroOperacion = registros[i][6];
                            if (String.IsNullOrEmpty(numeroOperacion))
                            {
                                numeroOperacion = null;
                            }


                            var serie = registros[i][10];
                            var folio = registros[i][11];

                            var facturaEmitida = _db.FacturasEmitidas.FirstOrDefault(fe => fe.EmisorId == sucursalId && fe.Serie == serie && fe.Folio == folio);
                            if (facturaEmitida == null)
                            {
                                errores.Add(String.Format("La factura {0} - {1} no fue encontrada para el registro {2}", serie, folio, i));
                                continue;
                            }

                            //Se desorganizaron los numeros por que necesito el cliente para determinar el banco
                            var          nombreBancoOrdenante = registros[i][7];
                            BancoCliente bancoOrdenante       = null;
                            if (!String.IsNullOrEmpty(nombreBancoOrdenante))
                            {
                                bancoOrdenante = _db.BancosClientes.FirstOrDefault(b => b.Nombre == nombreBancoOrdenante && b.Cliente.SucursalId == sucursalId && b.ClienteId == facturaEmitida.ReceptorId);
                                if (bancoOrdenante == null)
                                {
                                    errores.Add(String.Format("El banco {0} no fue encontrado para el registro {1}", nombreBancoOrdenante, i));
                                    continue;
                                }
                            }

                            var           nombreBancoBeneficiario = registros[i][8];
                            BancoSucursal bancoBeneficiario       = null;
                            if (!String.IsNullOrEmpty(nombreBancoBeneficiario))
                            {
                                bancoBeneficiario = _db.BancosSucursales.FirstOrDefault(b => b.Nombre == nombreBancoBeneficiario && b.SucursalId == sucursalId);
                                if (bancoBeneficiario == null)
                                {
                                    errores.Add(String.Format("El banco {0} no fue encontrado para el registro {1}", nombreBancoBeneficiario, i));
                                    continue;
                                }
                            }

                            var numeroParcialidad = registros[i][9];


                            var importePagado        = String.IsNullOrEmpty(registros[i][12]) ? facturaEmitida.Total : Convert.ToDouble(registros[i][12]);
                            var importeSaldoAnterior = String.IsNullOrEmpty(registros[i][13]) ? facturaEmitida.Total : Convert.ToDouble(registros[i][13]);
                            var importeSaldoInsoluto = String.IsNullOrEmpty(registros[i][14]) ? 0.0 : Convert.ToDouble(registros[i][14]);

                            #region Pagos

                            #region Documentos Relacionados

                            var documentoRelacionado = new DocumentoRelacionado
                            {
                                FacturaEmitidaId     = facturaEmitida.Id,
                                FacturaEmitida       = facturaEmitida,
                                Folio                = facturaEmitida.Folio,
                                IdDocumento          = facturaEmitida.Uuid,
                                ImportePagado        = importePagado,
                                ImporteSaldoAnterior = importeSaldoAnterior,
                                ImporteSaldoInsoluto = importeSaldoInsoluto,
                                MetodoPago           = facturaEmitida.MetodoPago,
                                Moneda               = facturaEmitida.Moneda,
                                NumeroParcialidad    = Convert.ToInt32(String.IsNullOrEmpty(numeroParcialidad) ? "1" : numeroParcialidad),
                                Serie                = facturaEmitida.Serie,
                                TipoCambio           = tipoCambioDocumentoRelacionado
                            };

                            #endregion

                            if (pagos.Any(p => p.NumeroOperacion == numeroOperacion && p.FechaPago == fechaPago && p.Monto == monto && p.DocumentosRelacionados.Any(dr => dr.FacturaEmitida.ReceptorId == documentoRelacionado.FacturaEmitida.ReceptorId)))
                            {
                                pagos.First(p => p.NumeroOperacion == numeroOperacion && p.FechaPago == fechaPago && p.Monto == monto && p.DocumentosRelacionados.Any(dr => dr.FacturaEmitida.ReceptorId == documentoRelacionado.FacturaEmitida.ReceptorId)).DocumentosRelacionados.Add(documentoRelacionado);
                            }
                            else
                            {
                                var pago = new Pago
                                {
                                    FechaPago       = fechaPago,
                                    FormaPago       = formaPago,
                                    Moneda          = moneda,
                                    Monto           = monto,
                                    NumeroOperacion = numeroOperacion,
                                    SucursalId      = sucursalId,
                                    TipoCambio      = tipoCambioPago
                                };

                                if (bancoOrdenante != null)
                                {
                                    pago.BancoOrdenante   = bancoOrdenante;
                                    pago.BancoOrdenanteId = bancoOrdenante.Id;
                                }

                                if (bancoBeneficiario != null)
                                {
                                    pago.BancoBeneficiario   = bancoBeneficiario;
                                    pago.BancoBeneficiarioId = bancoBeneficiario.Id;
                                }

                                if (pago.DocumentosRelacionados == null)
                                {
                                    pago.DocumentosRelacionados = new List <DocumentoRelacionado>();
                                }

                                pago.DocumentosRelacionados.Add(documentoRelacionado);

                                pagos.Add(pago);
                            }


                            #endregion
                        }
                        catch (Exception ex)
                        {
                            errores.Add(String.Format("No se pudo procesar el registro {0} el motivo reportado: {1} </br>", i, ex.Message));
                            continue;
                        }
                    }

                    foreach (var pago in pagos)
                    {
                        var receptor = pago.DocumentosRelacionados.FirstOrDefault().FacturaEmitida.Receptor;
                        if (receptor == null)
                        {
                            errores.Add(String.Format("El pago {0} no tiene documentos relacionados", pago.Desplegado));
                        }

                        var complementoPago = complementosPago.FirstOrDefault(cp => cp.ReceptorId == receptor.Id);
                        if (complementoPago == null)
                        {
                            complementoPago = new ComplementoPago
                            {
                                FechaDocumento = DateTime.Now,
                                Generado       = false,
                                ReceptorId     = receptor.Id,
                                Receptor       = receptor,
                                Status         = Status.Activo,
                                Mes            = mes,
                                SucursalId     = sucursal.Id,
                                Sucursal       = sucursal,
                                Version        = "1.0",
                                Pagos          = new List <Pago> {
                                    pago
                                }
                            };
                            complementosPago.Add(complementoPago);
                        }
                        else
                        {
                            complementoPago.Pagos.Add(pago);
                        }
                    }
                }
                catch (Exception ex)
                {
                    errores.Add(ex.Message);
                }
                finally
                {
                    archivo.Close();
                    archivo.Dispose();
                }
            }

            if (errores.Count > 0)
            {
                throw new Exception(String.Join("|", errores));
            }

            if (!previsualizacion)
            {
                foreach (var complementoPago in complementosPago)
                {
                    _db.ComplementosPago.Add(complementoPago);
                    try
                    {
                        _db.SaveChanges();
                    }
                    catch (DbEntityValidationException dbEx)
                    {
                        foreach (var validationErrors in dbEx.EntityValidationErrors)
                        {
                            foreach (var validationError in validationErrors.ValidationErrors)
                            {
                                errores.Add(String.Format("Propiedad: {0} Error: {1}", validationError.PropertyName, validationError.ErrorMessage));
                            }
                        }
                    }
                }

                //foreach (var complementoPago in complementosPago)
                //{
                //    try
                //    {
                //        _pagosManager.GenerarComplementoPago(sucursalId, complementoPago.ReceptorId, complementoPago.Id);
                //        errores.Add(String.Format("Comando realizado con éxito del complemento del receptor {0} con total de montos {1:c}", complementoPago.Receptor.RazonSocial, complementoPago.Pagos.Sum(p => p.Monto)));
                //    }
                //    catch (Exception ex)
                //    {
                //        errores.Add(String.Format("Error de generación del complemento del receptor {0} con total de montos {1:c}: {2}", complementoPago.Receptor.RazonSocial, complementoPago.Pagos.Sum(p => p.Monto), ex.Message));
                //    }

                //}
            }

            return(complementosPago);
        }