예제 #1
0
        private void persistenciaDeDatos()
        {
            using (drususEntities db = new drususEntities())
            {
                db.Entry(clientePagador).State = System.Data.Entity.EntityState.Modified;
                db.SaveChanges();

                Cobro cobroActual = new Cobro
                {
                    monto = monto
                };
                if (pagaEnDolarescheckBox.Checked)
                {
                    cobroActual.descripcion = txtDescripcion.Text + " (Pagado en USS)";
                }
                else
                {
                    cobroActual.descripcion = txtDescripcion.Text;
                }

                cobroActual.idCliente = clientePagador.idCliente;
                cobroActual.fecha     = calendario.Value.Date;
                db.Cobros.Add(cobroActual);
                db.SaveChanges();
            }
        }
예제 #2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            Utils.VerificarAccesoEmpresa(this);
            LabelFecha.Text         = DateTime.Now.Date.ToString("dd/MM/yy");
            this.textboxId.ReadOnly = true;
            if (!IsPostBack)
            {
                System.Linq.Expressions.Expression <Func <Cliente, bool> > filtro = x => true;
                Utils.LlenarDropDownList <Cliente>(dropdownlistClientes, new BLL.RepositorioBase <Cliente>(), filtro, "Id_Cliente", "Nombre");
                ViewState["data"] = new Cobro();
                int id = Request.QueryString["id"].ToInt();
                if (id > 0)
                {
                    BLL.RepositorioBase <Cobro> repositorio = new BLL.RepositorioBase <Cobro>();
                    Cobro data = repositorio.Get(id);
                    if (data == null)
                    {
                        Utils.ShowToastr(this, "Cobro no encontrado!", "Advertencia", "warning");
                        return;
                    }

                    LlenaCampos(data);
                    Utils.ShowToastr(this, "Cobro Encontrada", "Exito!");
                    textboxId.ReadOnly = true;
                }
            }
            else
            {
                Cobro data = (Cobro)ViewState["data"];
            }
        }
예제 #3
0
        public int Sp_registrar_cobro(Cobro cobro, Sesion sesion)
        {
            int id = -1;

            try
            {
                con = conn.Conectar();

                if (con != null)
                {
                    tra = con.BeginTransaction();
                    cmd = new MySqlCommand("Sp_registrar_cobro", con)
                    {
                        CommandType = CommandType.StoredProcedure,
                        Transaction = tra
                    };

                    cmd.Parameters.Add(new MySqlParameter("@_iddeuda", MySqlDbType.Int32));
                    cmd.Parameters.Add(new MySqlParameter("@_fechacobro", MySqlDbType.Date));
                    cmd.Parameters.Add(new MySqlParameter("@_idtipocobro", MySqlDbType.Int32));
                    cmd.Parameters.Add(new MySqlParameter("@_cuentabancaria", MySqlDbType.VarChar));
                    cmd.Parameters.Add(new MySqlParameter("@_noperacion", MySqlDbType.VarChar));
                    cmd.Parameters.Add(new MySqlParameter("@_monto", MySqlDbType.Decimal));
                    cmd.Parameters.Add(new MySqlParameter("@_observacion", MySqlDbType.VarChar));
                    cmd.Parameters.Add(new MySqlParameter("@_idusuario", MySqlDbType.Int32));

                    cmd.Parameters[0].Value = cobro.Deuda.Iddeuda;
                    cmd.Parameters[1].Value = cobro.Fechacobro;
                    cmd.Parameters[2].Value = cobro.Tipocobro.Idtipocobro;
                    cmd.Parameters[3].Value = cobro.Cuentabancaria;
                    cmd.Parameters[4].Value = cobro.Noperacion;
                    cmd.Parameters[5].Value = cobro.Monto;
                    cmd.Parameters[6].Value = cobro.Observacion;
                    cmd.Parameters[7].Value = sesion.Usuario.Idusuario;

                    dr = cmd.ExecuteReader();
                    if (dr.HasRows)
                    {
                        while (dr.Read())
                        {
                            id = Convert.ToInt32(dr["_id"]);
                        }
                    }
                    dr.Close();
                    tra.Commit();
                    tra.Dispose();
                }
                return(id);
            }
            catch (MySqlException ex)
            {
                id = -1;
                tra.Rollback();
                tra.Dispose();
                return(id);

                throw ex;
            }
            finally { cmd.Dispose(); conn.Desconectar(con); }
        }
        public async Task <IActionResult> PutCobro([FromRoute] int id, [FromBody] Cobro cobro)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != cobro.Id)
            {
                return(BadRequest());
            }

            _context.Entry(cobro).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!CobroExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
예제 #5
0
 public FormDetalleCobroNuevo(Cobro currentCobro)
 {
     InitializeComponent();
     this.nuevo        = true;
     this.currentCobro = currentCobro;
     this.reLoad();
 }
예제 #6
0
        private void btnAplicarVale_Click(object sender, EventArgs e)
        {
            try
            {
                if (!string.IsNullOrEmpty(this.txtVale.Text.Trim()))
                {
                    this.txtErrorVale.Visible = false;
                    Vales Datos = new Vales
                    {
                        IDVenta   = this.IDVenta,
                        IDCliente = (DatosCliente != null ? DatosCliente.IDCliente : string.Empty),
                        Folio     = this.txtVale.Text.Trim(),
                        IDUsuario = Comun.IDUsuario,
                        Conexion  = Comun.Conexion
                    };
                    Venta_Negocio VN       = new Venta_Negocio();
                    Cobro         DatosAux = VN.AplicarVale(Datos);
                    if (DatosAux.Completado)
                    {
                        this.txtVale.Text = string.Empty;
                        this.IDVale       = DatosAux.IDVale;
                        this.CodigoVale   = DatosAux.FolioVale;

                        List <VentaDetalle> Lista = new List <VentaDetalle>();
                        VentaDetalle        Item;
                        DataTableReader     Dr = DatosAux.TablaDatos.CreateDataReader();
                        while (Dr.Read())
                        {
                            Item = new VentaDetalle();
                            Item.IDVentaDetalle = Dr.GetString(Dr.GetOrdinal("IDVentaDetalle"));
                            Item.IDProducto     = Dr.GetString(Dr.GetOrdinal("IDProducto"));
                            Item.Clave          = Dr.GetString(Dr.GetOrdinal("Clave"));
                            Item.NombreProducto = Dr.GetString(Dr.GetOrdinal("NombreProducto"));
                            Item.PrecioNormal   = Dr.GetDecimal(Dr.GetOrdinal("Precio"));
                            Item.CantidadVenta  = Dr.GetDecimal(Dr.GetOrdinal("Cantidad"));
                            Item.Subtotal       = Dr.GetDecimal(Dr.GetOrdinal("Subtotal"));
                            Item.Descuento      = Dr.GetDecimal(Dr.GetOrdinal("Descuento"));
                            Item.Total          = Dr.GetDecimal(Dr.GetOrdinal("Total"));

                            Lista.Add(Item);
                        }
                        this.DetalleVenta = Lista;
                        this.CargarGridVentaDetalle();
                        this.ActiveControl = this.btnCobrar;
                        this.btnCobrar.Focus();
                    }
                    else
                    {
                        this.MensajeErrorVale(DatosAux.Resultado);
                        this.ActiveControl = this.txtVale;
                        this.txtVale.Focus();
                    }
                }
            }
            catch (Exception ex)
            {
                LogError.AddExcFileTxt(ex, "frmVentaDirecta ~ btnAplicarVale_Click");
                MessageBox.Show(Comun.MensajeError, Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
예제 #7
0
        public Cobro LlenarClase()
        {
            Cobro cobro = new Cobro();
            RepositorioBase <Clientes> repo = new RepositorioBase <Clientes>();

            cobro.Cobroid   = Convert.ToInt32(IDNumericUpDown.Value);
            cobro.Clienteid = Convert.ToInt32(IDClienteNumericUpDown.Value);
            Clientes cliente = repo.Buscar(Convert.ToInt32(IDClienteNumericUpDown.Value));

            if (string.IsNullOrWhiteSpace(BalanceTextBox.Text))
            {
                BalanceTextBox.Text = "0";
            }

            if (string.IsNullOrWhiteSpace(DepositoTextBox.Text))
            {
                DepositoTextBox.Text = "0";
            }

            cliente.LimiteCredito = 5000 + Convert.ToDecimal(LimiteCreditoTextBox.Text) - Convert.ToDecimal(BalanceTextBox.Text) + Convert.ToDecimal(DepositoTextBox.Text);
            cliente.Balance       = Convert.ToDecimal(BalanceTextBox.Text) - Convert.ToDecimal(DepositoTextBox.Text);
            repo.Modificar(cliente);
            //
            cobro.Fecha     = FechaDateTimePicker.Value;
            cobro.Usuarioid = Login.Usuarioid;
            return(cobro);
        }
예제 #8
0
        private void DibujarDatos(Cobro DatosAux)
        {
            try
            {
                this.txtNombreCliente.Text   = DatosAux.Cliente;
                this.txtMonedero.Text        = string.Format("{0:c}", DatosAux.Saldo);
                this.txtPuntosObtenidos.Text = string.Format("{0:c}", DatosAux.PuntosVenta);
                this.txtNumTarjeta.Text      = DatosAux.NumTarjeta;
                this.txtSubtotal.Text        = string.Format("{0:c}", DatosAux.Subtotal);
                this.txtDescuento.Text       = string.Format("{0:c}", DatosAux.Descuento);
                this.txtTotal.Text           = string.Format("{0:c}", DatosAux.TotalAPagar);

                this.txtPromociones.Visible    = DatosAux.AplicaPromocion;
                this.btnDescCumpleaños.Visible = DatosAux.AplicaPromocion;
                if (DatosAux.AplicaPromocion)
                {
                    this.btnDescCumpleaños.Text = DatosAux.DescCumpleaños ? "Rem. Desc." : "Desc. Cumpl.";
                }

                this.txtValeAplicado.Text = DatosAux.FolioVale;
                this.dgvProductosXServicio.AutoGenerateColumns = false;
                this.dgvProductosXServicio.DataSource          = DatosAux.TablaDatos;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
예제 #9
0
        private void DibujarDatos(Cobro DatosAux)
        {
            try
            {
                this.txtNombreCliente.Text   = DatosAux.Cliente;
                this.txtMonedero.Text        = string.Format("{0:c}", DatosAux.Saldo);
                this.txtPuntosObtenidos.Text = string.Format("{0:c}", DatosAux.PuntosVenta);
                this.txtNumTarjeta.Text      = DatosAux.NumTarjeta;

                this.txtSubtotal.Text  = string.Format("{0:c}", DatosAux.Subtotal);
                this.txtDescuento.Text = string.Format("{0:c}", DatosAux.Descuento);
                this.txtTotal.Text     = string.Format("{0:c}", DatosAux.TotalAPagar);

                this.txtPagoMonedero.Text    = string.Format("{0:c}", 0);
                this.txtPagoEfectivo.Text    = string.Format("{0:c}", 0);
                this.txtPagoTarjetaCred.Text = string.Format("{0:c}", 0);
                this.txtPagoTarjetaDeb.Text  = string.Format("{0:c}", 0);

                this.txtPagoTotal.Text = string.Format("{0:c}", 0);
                this.txtCambio.Text    = string.Format("{0:c}", 0);

                this.txtValeAplicado.Text = DatosAux.FolioVale;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
예제 #10
0
        public bool ExisteEnLaBaseDeDatos()
        {
            RepositorioBase <Cobro> repo = new RepositorioBase <Cobro>();
            Cobro cobro = repo.Buscar((int)IDNumericUpDown.Value);

            return(cobro != null);
        }
예제 #11
0
        /// <summary>
        /// Guarda en la bd el objeto actual
        /// </summary>
        protected override bool SaveObject()
        {
            this.Datos.RaiseListChangedEvents = false;

            //Creamos los cobros REA de los expedientes seleccionados
            if (!Asignar())
            {
                return(false);
            }

            // do the save
            try
            {
                Cobro temp = _entity.Clone();
                temp.ApplyEdit();

                _entity = temp.Save();
                _entity.ApplyEdit();

                return(true);
            }
            catch (Exception ex)
            {
                PgMng.ShowInfoException(ex);
                return(false);
            }
            finally
            {
                this.Datos.RaiseListChangedEvents = true;
            }
        }
예제 #12
0
        private async void executeDetalles()
        {
            // Verificando la existencia de datos en el datagridview
            if (dgvCobros.Rows.Count == 0)
            {
                MessageBox.Show("No hay un registro seleccionado", "Modificar", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return;
            }

            int index   = dgvCobros.CurrentRow.Index;                            // Identificando la fila actual del datagridview
            int idCobro = Convert.ToInt32(dgvCobros.Rows[index].Cells[0].Value); // obteniedo el idRegistro del datagridview

            currentCobro = listaCobros.Find(x => x.idCobro == idCobro);          //Buscando el registro especifico en la lista de registros

            //Mostrar Detalles del Cobro
            listaDetalleCobros = await cobroModel.detalleCobro(currentCobro.idCobro);

            // Mostrando el formulario de modificacion
            detalleCobroBindingSource.DataSource = listaDetalleCobros;
            dgvDetalleCobro.Refresh();

            //Colocar el total para cobrar
            lbTotal.Text  = currentCobro.montoPagar;
            currentTotal  = decimal.Parse(currentCobro.montoPagar);
            currentPagado = 0;
            //Sumar los pagos detalle
            for (int i = 0; i < listaDetalleCobros.Count; i++)
            {
                if (listaDetalleCobros[i].estado == 1)
                {
                    currentPagado += listaDetalleCobros[i].monto;
                }
            }
            lbSaldo.Text = (currentTotal - currentPagado).ToString();
        }
예제 #13
0
        public int setCobro(Cobro cobro)
        {
            int     id = 0;
            DataSet ds = new DataSet("Cobro");

            using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["api_tpos.Properties.Settings.Conexion2"].ConnectionString))
            {
                using (SqlCommand cmd = new SqlCommand("sp_TPOS_INSERTA_COBROS", con))
                {
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.Add("@pImei", SqlDbType.VarChar).Value      = cobro.pImei;
                    cmd.Parameters.Add("@pFACT_NUM", SqlDbType.Int).Value      = cobro.pFACT_NUM;
                    cmd.Parameters.Add("@pFORMA_PAG", SqlDbType.VarChar).Value = cobro.pFORMA_PAG;
                    cmd.Parameters.Add("@pCOBRO", SqlDbType.Decimal).Value     = cobro.pCOBRO;
                    cmd.Parameters.Add("@pFE_US_IN", SqlDbType.DateTime).Value = cobro.pFE_US_IN;
                    cmd.Parameters.Add("@pLATITUD", SqlDbType.Decimal).Value   = cobro.pLATITUD;
                    cmd.Parameters.Add("@pLONGITUD", SqlDbType.Decimal).Value  = cobro.pLONGITUD;
                    if (con.State != ConnectionState.Open)
                    {
                        con.Open();
                    }
                    id = cmd.ExecuteNonQuery();

                    if (con.State == ConnectionState.Open)
                    {
                        con.Close();
                    }
                }
            }
            return(id);
        }
        public async static Task <bool> Insertar(Cobro cobro)
        {
            bool     paso     = false;
            Contexto contexto = new Contexto();

            cobro.CobroId = 0;
            try {
                contexto.Cobros.Add(cobro);
                paso = await contexto.SaveChangesAsync() > 0;

                if (paso)
                {
                    foreach (var cobroDetalle in cobro.Detalles)
                    {
                        var venta = await VentasBLL.Buscar(cobroDetalle.VentaId);

                        if (venta != null)
                        {
                            venta.Balance -= cobroDetalle.Monto;
                            await VentasBLL.Modificar(venta);
                        }
                    }
                }
            } catch (Exception) {
                throw;
            } finally {
                await contexto.DisposeAsync();
            }

            return(paso);
        }
예제 #15
0
        public override void OpenAddForm()
        {
            CobroREAAddForm form = new CobroREAAddForm(this);

            AddForm(form);
            _entity = form.Entity;
        }
예제 #16
0
        public Cobro Sp_listar_cobroxidcobro(int idcobro)
        {
            Cobro cobro = null;

            try
            {
                con = conn.Conectar();

                if (con != null)
                {
                    cmd = new MySqlCommand("Sp_listar_cobroxidcobro", con)
                    {
                        CommandType = CommandType.StoredProcedure
                    };
                    cmd.Parameters.Add(new MySqlParameter("@_idcobro", MySqlDbType.Int32));
                    cmd.Parameters[0].Value = idcobro;
                    dr = cmd.ExecuteReader();

                    if (dr.HasRows)
                    {
                        while (dr.Read())
                        {
                            cobro = new Cobro()
                            {
                                Idcobro = (int)dr["idcobro"],
                                Deuda   = new Deuda()
                                {
                                    Iddeuda = (int)dr["iddeuda"],
                                },
                                Fechacobro = (DateTime)dr["fechacobro"],
                                Tipocobro  = new TipoCobro()
                                {
                                    Idtipocobro = (int)dr["idtipocobro"]
                                },
                                Moneda = new Moneda()
                                {
                                    Idmoneda = (int)dr["idmoneda"]
                                },
                                Cuentabancaria = (string)dr["cuentabancaria"],
                                Noperacion     = (string)dr["noperacion"],
                                Monto          = (decimal)dr["monto"],
                                Observacion    = (string)dr["observacion"],
                                Estado         = (int)dr["estado"]
                            };
                        }
                    }
                    dr.Close();
                }
                return(cobro);
            }
            catch (MySqlException ex)
            {
                return(cobro);

                throw ex;
            }
            finally { cmd.Dispose(); conn.Desconectar(con); }
        }
예제 #17
0
 public void LlenaCampos(Cobro data)
 {
     LabelFecha.Text = data.Fecha.ToString("dd/MM/yy");
     dropdownlistPrestamos.SelectedValue = data.Id_Prestamo.ToString();
     textboxId.Text           = data.Id_Cobro.ToString();
     textboxMora.Text         = data.Mora.ToString();
     textboxInteres.Text      = data.Interes.ToString();
     textboxCobroCapital.Text = data.Monto_Capital.ToString();
     textboxMontoCobro.Text   = data.Monto_Total.ToString();
 }
예제 #18
0
        public override void OpenEditForm()
        {
            CobroREAEditForm form = new CobroREAEditForm(ActiveItem.Oid, this);

            if (form.Entity != null)
            {
                AddForm(form);
                _entity = form.Entity;
            }
        }
예제 #19
0
        private void btnRemoverVale_Click(object sender, EventArgs e)
        {
            try
            {
                if (!string.IsNullOrEmpty(this.IDVale))
                {
                    Vales Datos = new Vales
                    {
                        IDVenta   = this.IDVenta,
                        IDCliente = DatosCliente.IDCliente,
                        IDVale    = this.IDVale,
                        IDUsuario = Comun.IDUsuario,
                        Conexion  = Comun.Conexion
                    };
                    Venta_Negocio VN       = new Venta_Negocio();
                    Cobro         DatosAux = VN.RemoverVale(Datos);
                    if (DatosAux.Completado)
                    {
                        this.IDVale     = string.Empty;
                        this.CodigoVale = string.Empty;

                        List <VentaDetalle> Lista = new List <VentaDetalle>();
                        VentaDetalle        Item;
                        DataTableReader     Dr = DatosAux.TablaDatos.CreateDataReader();
                        while (Dr.Read())
                        {
                            Item = new VentaDetalle();
                            Item.IDVentaDetalle = Dr.GetString(Dr.GetOrdinal("IDVentaDetalle"));
                            Item.IDProducto     = Dr.GetString(Dr.GetOrdinal("IDProducto"));
                            Item.Clave          = Dr.GetString(Dr.GetOrdinal("Clave"));
                            Item.NombreProducto = Dr.GetString(Dr.GetOrdinal("NombreProducto"));
                            Item.PrecioNormal   = Dr.GetDecimal(Dr.GetOrdinal("Precio"));
                            Item.CantidadVenta  = Dr.GetDecimal(Dr.GetOrdinal("Cantidad"));
                            Item.Subtotal       = Dr.GetDecimal(Dr.GetOrdinal("Subtotal"));
                            Item.Descuento      = Dr.GetDecimal(Dr.GetOrdinal("Descuento"));
                            Item.Total          = Dr.GetDecimal(Dr.GetOrdinal("Total"));

                            Lista.Add(Item);
                        }
                        this.DetalleVenta = Lista;
                        this.CargarGridVentaDetalle();
                        this.ActiveControl = this.btnCobrar;
                        this.btnCobrar.Focus();
                    }
                    else
                    {
                        MessageBox.Show("Ocurrió un error. Código del error: " + DatosAux.Resultado, Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
예제 #20
0
 public void ObtenerDatosCobroXIDVenta(Cobro Datos)
 {
     try
     {
         Venta_Datos VD = new Venta_Datos();
         VD.ObtenerDatosCobroXIDVenta(Datos);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
        public async Task <IActionResult> PostCobro([FromBody] Cobro cobro)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            _context.Cobros.Add(cobro);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetCobro", new { id = cobro.Id }, cobro));
        }
예제 #22
0
 public frmConcluirPago(Cobro DatosCobro)
 {
     try
     {
         InitializeComponent();
         this._Datos = DatosCobro;
     }
     catch (Exception ex)
     {
         LogError.AddExcFileTxt(ex, "frmConcluirPago ~ frmConcluirPago()");
     }
 }
예제 #23
0
 public void CobroVenta(Cobro Datos)
 {
     try
     {
         Venta_Datos VD = new Venta_Datos();
         VD.CobroVenta(Datos);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
예제 #24
0
        public Cobro LlenaClase()
        {
            Cobro data = new Cobro();

            data.Id_Cobro      = textboxId.Text.ToInt();
            data.Id_Prestamo   = dropdownlistPrestamos.SelectedValue.ToInt();
            data.Mora          = textboxMora.Text.ToDecimal();
            data.Interes       = textboxInteres.Text.ToDecimal();
            data.Monto_Capital = textboxCobroCapital.Text.ToDecimal();
            data.Monto_Total   = textboxMontoCobro.Text.ToDecimal();

            return(data);
        }
예제 #25
0
        public override void UpdateList()
        {
            switch (_current_action)
            {
            case molAction.Add:
                if (_entity == null)
                {
                    return;
                }
                List.AddItem(_entity.GetInfo(false));
                if (FilterType == IFilterType.Filter)
                {
                    CobroList listA = CobroList.GetList(_filter_results);
                    listA.AddItem(_entity.GetInfo(false));
                    _filter_results = listA.GetSortedList();
                }
                break;

            case molAction.Edit:
            case molAction.Lock:
            case molAction.Unlock:
                if (_entity == null)
                {
                    return;
                }
                ActiveItem.CopyFrom(_entity);
                break;

            case molAction.Delete:
                if (ActiveItem == null)
                {
                    return;
                }
                List.RemoveItem(ActiveOID);
                if (FilterType == IFilterType.Filter)
                {
                    CobroList listD = CobroList.GetList(_filter_results);
                    listD.RemoveItem(ActiveOID);
                    _filter_results = listD.GetSortedList();
                }
                break;
            }

            RefreshSources();
            if (_entity != null)
            {
                Select(_entity.Oid);
            }
            _entity = null;
        }
예제 #26
0
        private void btnCobrar_Click(object sender, EventArgs e)
        {
            try
            {
                if (this.dgvProductosXServicio.Rows.Count > 0)
                {
                    frmConcluirPago Cobrar = new frmConcluirPago(DatosCobro);
                    this.Visible = false;
                    Cobrar.ShowDialog();
                    this.Visible = true;
                    Cobrar.Dispose();
                    if (Cobrar.DialogResult == DialogResult.OK)
                    {
                        Cobro DatosAux = Cobrar.Datos;

                        Venta_Negocio VN = new Venta_Negocio();
                        VN.CobroVentaServicios(DatosAux);
                        if (DatosAux.Completado)
                        {
                            Ticket Imprimir = new Ticket(2, 1, DatosAux.IDVenta);
                            Imprimir.ImprimirTicket();
                            this.DialogResult = DialogResult.OK;
                        }
                        else
                        {
                            MessageBox.Show("Ocurrió un error al guardar los datos. Código el error: " + DatosAux.Resultado, Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
                            Exception AuxEx = new Exception("Ocurrió un error al guardar los datos. código del Error: " + DatosAux.Resultado);
                            LogError.AddExcFileTxt(AuxEx, "frmConcluirCobro ~ btnCobrar_Click");
                        }
                        //this.DialogResult = DialogResult.OK;
                    }
                    else
                    {
                        this.DatosCobro.Saldo = Cobrar.Datos.Saldo;
                        this.txtMonedero.Text = string.Format("{0:c}", this.DatosCobro.Saldo);
                    }
                }
                else
                {
                    MessageBox.Show("Debe agregar productos a la venta. ", Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
            catch (Exception ex)
            {
                this.Visible = true;
                LogError.AddExcFileTxt(ex, "frmCobro ~ btnCobrar_Click");
                MessageBox.Show(Comun.MensajeError, Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
예제 #27
0
파일: Main.cs 프로젝트: mkeOrt/Grande
 public void cobrar()
 {
     if (dgCarrito.Rows.Count < 1)
     {
         MessageBox.Show("Debes agregar minimo un articulo al carrito", "Atención", MessageBoxButtons.OK, MessageBoxIcon.Information);
     }
     else
     {
         DialogResult dr = new Cobro(dgCarrito).ShowDialog();
         if (dr == DialogResult.Yes)
         {
             limpiado();
         }
     }
     checarInventario();
     txtCodigo.Focus();
 }
예제 #28
0
 private void IniciarForm()
 {
     try
     {
         DatosCobro = this.ObtenerDatosAPagarXIDVenta();
         this.DibujarDatos(DatosCobro);
         this.ActiveControl = this.txtVale;
         this.txtVale.Focus();
         if (File.Exists(Path.Combine(System.Windows.Forms.Application.StartupPath, @"Resources\Documents\" + Comun.UrlLogo)))
         {
             this.pictureBox1.Image = Image.FromFile(Path.Combine(System.Windows.Forms.Application.StartupPath, @"Resources\Documents\" + Comun.UrlLogo));
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
예제 #29
0
 private void btnAplicarVale_Click(object sender, EventArgs e)
 {
     try
     {
         if (!string.IsNullOrEmpty(this.txtVale.Text.Trim()))
         {
             this.txtErrorVale.Visible = false;
             Vales Datos = new Vales
             {
                 IDVenta   = this.IDVenta,
                 IDCliente = (DatosCobro != null ? DatosCobro.IDCliente : string.Empty),
                 Folio     = this.txtVale.Text.Trim(),
                 IDUsuario = Comun.IDUsuario,
                 Conexion  = Comun.Conexion
             };
             Venta_Negocio VN       = new Venta_Negocio();
             Cobro         DatosAux = VN.AplicarVale(Datos);
             if (DatosAux.Completado)
             {
                 BandCambios       = true;
                 DatosCobro        = DatosAux;
                 this.txtVale.Text = string.Empty;
                 this.Vale         = new Vales {
                     IDVale = DatosCobro.IDVale, Folio = DatosAux.FolioVale
                 };
                 this.DibujarDatos(DatosCobro);
                 this.txtValeAplicado.Text = Datos.Folio;
                 this.ActiveControl        = this.btnCobrar;
                 this.btnCobrar.Focus();
             }
             else
             {
                 this.MensajeErrorVale(DatosAux.Resultado);
                 this.ActiveControl = this.txtVale;
                 this.txtVale.Focus();
             }
         }
     }
     catch (Exception ex)
     {
         LogError.AddExcFileTxt(ex, "frmCobro ~ btnCancelar_Click");
         MessageBox.Show(Comun.MensajeError, Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
예제 #30
0
        public void LlenarCampo(Cobro cobro)
        {
            RepositorioBase <Clientes> repo = new RepositorioBase <Clientes>();

            IDNumericUpDown.Value        = cobro.Cobroid;
            IDClienteNumericUpDown.Value = cobro.Clienteid;

            Clientes cliente = repo.Buscar(cobro.Clienteid);

            BalanceTextBox.Text       = cliente.Balance.ToString();
            LimiteCreditoTextBox.Text = cliente.LimiteCredito.ToString();

            RepositorioBase <Usuario> repou = new RepositorioBase <Usuario>();

            Usuario usuario = repou.Buscar(Login.Usuarioid);

            UsuarioTextBox.Text       = usuario.User;
            FechaDateTimePicker.Value = cobro.Fecha;
        }
예제 #31
0
                public override void OnLoad()
                {
                        if (this.Registro != null) {
                                this.Numero = System.Convert.ToInt32(m_Registro["numero"]);
                                this.PV = System.Convert.ToInt32(m_Registro["pv"]);

                                if (m_Registro["id_concepto"] != null)
                                        this.Concepto = new Lbl.Cajas.Concepto(this.Connection, this.GetFieldValue<int>("id_concepto"));
                                else
                                        this.Concepto = null;

                                if (m_Registro["concepto"] != null)
                                        this.ConceptoTexto = m_Registro["concepto"].ToString();
                                else
                                        this.ConceptoTexto = string.Empty;

                                this.Cobros = new ColeccionDeCobros();
                                this.Pagos = new ColeccionDePagos();

                                // Cargo pagos asociados al registro
                                // Pagos en efectivo
                                using (System.Data.DataTable TablaPagos = Connection.Select("SELECT * FROM cajas_movim WHERE id_caja=" + Lfx.Workspace.Master.CurrentConfig.Empresa.CajaDiaria.ToString() + " AND id_recibo=" + Id.ToString())) {
                                        foreach (System.Data.DataRow Pago in TablaPagos.Rows) {
                                                decimal ImporteCaja = System.Convert.ToDecimal(Pago["importe"]);
                                                if (this.DePago && ImporteCaja < 0) {
                                                        Pago Pg = new Pago(this.Connection, Lbl.Pagos.TiposFormasDePago.Efectivo, -ImporteCaja);
                                                        Pg.Recibo = this;
                                                        Pagos.Add(Pg);
                                                } else if (this.DePago == false && ImporteCaja > 0) {
                                                        Cobro Cb = new Cobro(this.Connection, Lbl.Pagos.TiposFormasDePago.Efectivo, ImporteCaja);
                                                        Cb.Recibo = this;
                                                        Cobros.Add(Cb);
                                                }
                                        }
                                }

                                // Pagos con cheque
                                using (System.Data.DataTable TablaPagos = this.Connection.Select("SELECT * FROM bancos_cheques WHERE (id_recibo=" + this.Id.ToString() + " OR id_recibo_pago=" + this.Id.ToString() + ")")) {
                                        foreach (System.Data.DataRow Pago in TablaPagos.Rows) {
                                                Bancos.Cheque Ch = new Lbl.Bancos.Cheque(Connection, (Lfx.Data.Row)Pago);
                                                if (this.DePago)
                                                        Ch.ReciboPago = this;
                                                else
                                                        Ch.ReciboCobro = this;
                                                if (this.DePago)
                                                        Pagos.Add(new Pago(Ch));
                                                else 
                                                        Cobros.Add(new Cobro(Ch));
                                        }
                                }

                                // Pagos con Tarjetas de Crédito y Débito
                                using (System.Data.DataTable TablaPagos = this.Connection.Select("SELECT id_cupon FROM tarjetas_cupones WHERE id_recibo=" + Id.ToString())) {
                                        foreach (System.Data.DataRow Pago in TablaPagos.Rows) {
                                                Pagos.Cupon Cp = new Pagos.Cupon(Connection, System.Convert.ToInt32(Pago["id_cupon"]));
                                                Cobros.Add(new Cobro(Cp));
                                        }
                                }

                                // Acreditaciones en cuenta regular (excepto caja diaria)
                                using (System.Data.DataTable TablaPagos = this.Connection.Select("SELECT * FROM cajas_movim WHERE auto=1 AND id_caja<>" + Lfx.Workspace.Master.CurrentConfig.Empresa.CajaDiaria.ToString() + " AND id_caja<>" + Lfx.Workspace.Master.CurrentConfig.Empresa.CajaCheques.ToString() + " AND id_recibo=" + this.Id.ToString())) {
                                        foreach (System.Data.DataRow Pago in TablaPagos.Rows) {
                                                if (this.DePago) {
                                                        Pago Pg = new Pago(this.Connection, Lbl.Pagos.TiposFormasDePago.Caja, Math.Abs(System.Convert.ToDecimal(Pago["importe"])));
                                                        Pg.Recibo = this;
                                                        Pg.CajaOrigen = new Cajas.Caja(Connection, System.Convert.ToInt32(Pago["id_caja"]));
                                                        Pagos.Add(Pg);
                                                } else {
                                                        Cobro Cb = new Cobro(this.Connection, Lbl.Pagos.TiposFormasDePago.Caja, System.Convert.ToDecimal(Pago["importe"]));
                                                        Cb.Recibo = this;
                                                        Cb.CajaDestino = new Cajas.Caja(Connection, System.Convert.ToInt32(Pago["id_caja"]));
                                                        Cobros.Add(Cb);
                                                }
                                        }
                                }

                                // Otros valores
                                using (System.Data.DataTable TablaPagos = this.Connection.Select("SELECT id_valor FROM pagos_valores WHERE id_recibo=" + Id.ToString())) {
                                        foreach (System.Data.DataRow Pago in TablaPagos.Rows) {
                                                Lbl.Pagos.Valor Vl = new Lbl.Pagos.Valor(Connection, System.Convert.ToInt32(Pago["id_valor"]));
                                                Vl.Recibo = this;
                                                if (this.DePago)
                                                        Pagos.Add(new Pago(Vl));
                                                else
                                                        Cobros.Add(new Cobro(Vl));
                                        }
                                }
                        }
                        base.OnLoad();
                }