示例#1
0
        private void EditarCodigo(int codigoId)
        {
            var codigo = Codigos.FirstOrDefault(c => c.CodigoProductoId == codigoId);

            if (new CrearCodigo(codigo).ShowDialog() == DialogResult.OK)
            {
                ActualizarGrillaCodigos();
            }
        }
示例#2
0
        public void OnGet(DataCompras model)
        {
            Valor = true;
            if (model.IdProveedor.Equals(0))
            {
                var producto  = _objeto._context.TCompras.Where(c => c.ID.Equals(model.ID)).ToList().ElementAt(0);
                var proveedor = _objeto._context.TProveedores.Where(c => c.ID.Equals(producto.IdProveedor)).ToList().ElementAt(0);
                model.Descripcion = producto.Descripcion;
                model.Cantidad    = producto.Cantidad;
                model.Precio      = producto.Precio;
                model.Importe     = producto.Importe;
                model.IdProveedor = producto.IdProveedor;
                model.Proveedor   = producto.Proveedor;
                model.Email       = producto.Email;
                model.Direccion   = proveedor.Direccion;
                model.Telefono    = proveedor.Telefono;
                model.Fecha       = producto.Fecha;
                model.Credito     = producto.Credito;
                model.Codigo      = producto.Codigo;
                Valor             = false;
            }
            _model         = model;
            _TCompras_temp = model;
            AvatarImage    = model.AvatarImage;

            tProveedores = new TProveedores
            {
                ID        = _model.IdProveedor,
                Proveedor = _model.Proveedor,
                Telefono  = _model.Telefono,
                Email     = _model.Email,
                Direccion = _model.Direccion,
            };
            proveedore_Report = _objeto._context.TReportes_proveedores.Where(r => r.TProveedores.Equals(tProveedores)).ToList().ElementAt(0);
            var deuda1 = Convert.ToDecimal(_model.Importe.Replace("$", ""));
            var deuda2 = Convert.ToDecimal(proveedore_Report.Deuda.Replace("$", ""));

            Deuda      = String.Format("${0:#,###,###,##0.00####}", deuda1 + deuda2);
            FechaDeuda = fecha;
            Pago       = proveedore_Report.Pago;
            FechaPago  = proveedore_Report.FechaPago.ToString("dd/MMM/yyy");

            Ticket = new Codigos(_objeto._context).codigosTickets("Proveedor", _model.Email, "Tickets");
            Input  = new InputModel
            {
                TComprasTemp = model,
                Proveedor    = _model.Proveedor,
                Deuda        = Deuda,
                FechaDeuda   = fecha,
                Pago         = proveedore_Report.Pago,
                FechaPago    = proveedore_Report.FechaPago.ToString("dd/MMM/yyy"),
                Ticket       = Ticket
            };
        }
示例#3
0
 private void EliminarCodigo(int codigoId)
 {
     if (dgvCodigos.RowCount > 1)
     {
         var codigo = Codigos.FirstOrDefault(c => c.CodigoProductoId == codigoId);
         CodigoProductoRepository.Eliminar(codigo);
         CodigoProductoRepository.Commit();
         ActualizarGrillaCodigos();
     }
     else
     {
         MessageBox.Show("Error: Debe haber al menos un código para el producto");
     }
 }
        public async Task <IActionResult> OnPostAsync()
        {
            if (inputModel != null)
            {
                decimal Precio  = Convert.ToDecimal(Input.Precio);
                decimal Importe = Precio * Input.Cantidad;
                var     codigo  = new Codigos(_objeto._context).codigosTickets(null, inputModel.Email, "TCompras");
                var     compra  = new DataCompras
                {
                    Descripcion = Input.Descripcion,
                    Cantidad    = Input.Cantidad,
                    Precio      = string.Format("${0:#,###,###,##0.00####}", Precio),
                    Importe     = string.Format("${0:#,###,###,##0.00####}", Importe),
                    IdProveedor = inputModel.ID,
                    Proveedor   = inputModel.Proveedor,
                    Email       = inputModel.Email,
                    Direccion   = inputModel.Direccion,
                    Telefono    = inputModel.Telefono,
                    Fecha       = fecha,
                    Credito     = Input.Credito,
                    Codigo      = codigo,
                    AvatarImage = Input.AvatarImage
                };
                await _objeto._image.copiarImagenAsync(Input.AvatarImage, codigo + ".png", _objeto._environment, "Compras", null);

                return(RedirectToPage("Detalles", compra));
                //_objeto._context.Add(compra);
                //await _objeto._context.SaveChangesAsync();
            }
            else
            {
                Input = new InputModel
                {
                    ErrorMessage = "Seleccione un proveedor",
                    model        = dataPaginador,
                };
                return(Page());
            }
        }
示例#5
0
 public bool GuardarCodigo(int Codigo)
 {
     if (Codigo > 0)
     {// si el objeto es diferente de nulo
         try
         {
             Codigos Codigos = new Codigos();
             Codigos.Contador = Codigo;
             BD.Codigos.Add(Codigos);
             BD.SaveChanges();
             return(true);
         }
         catch (Exception error)
         {
             Bll_File.EscribirLog(error.ToString());
             return(false);
         }
     }
     else
     {
         return(false);
     }
 }
        public int CompareTo(object obj)
        {
            var other = (ProductoHorario)obj;

            if (other == null)
            {
                return(1);
            }

            var lista = new List <KeyValuePair <int, string> >();

            foreach (var codigo in Codigos.Where(c => c.ToLower().StartsWith(Filter)))
            {
                lista.Add(new KeyValuePair <int, string>(ProductoId, codigo));
            }
            foreach (var codigo in other.Codigos.Where(c => c.ToLower().StartsWith(Filter)))
            {
                lista.Add(new KeyValuePair <int, string>(other.ProductoId, codigo));
            }

            var listaOrdenada = lista.OrderBy(p => p.Value).ToList();

            return(listaOrdenada.First().Key == other.ProductoId ? 1 : -1);
        }
示例#7
0
        private async Task <bool> savePagoAsync()
        {
            try
            {
                var pago      = Convert.ToDecimal(Input1.Pago);
                var deuda     = Convert.ToDecimal(clienteReport[0].Deuda.Replace("$", "")) - pago;
                var dataInput = new InputModel
                {
                    Nombre        = nombre,
                    Apellido      = apellido,
                    Email         = idGet,
                    ClienteReport = clienteReport
                };
                if (deuda.Equals(0) || deuda.Equals(0.0))
                {
                    Input  = dataInput;
                    Input1 = new InputModel1
                    {
                        ErrorMessage = "El cliente no contiene deuda",
                    };
                    return(true);
                }
                else
                {
                    if (deuda < pago)
                    {
                        Input  = dataInput;
                        Input1 = new InputModel1
                        {
                            ErrorMessage = "Pago incorrecto",
                        };
                        return(true);
                    }
                    else
                    {
                        _objeto._context.Update(cliente);
                        await _objeto._context.SaveChangesAsync();

                        var ticket   = new Codigos(_objeto._context).codigoTicket("Tickets");
                        var reportes = new TReportes_clientes
                        {
                            ReportesID = clienteReport[0].ReportesID,
                            Deuda      = String.Format("${0:#,###,###,##0.00####}", deuda),
                            FechaDeuda = DateTime.Today,
                            Pago       = String.Format("${0:#,###,###,##0.00####}", pago),
                            FechaPago  = DateTime.Today,
                            Ticket     = ticket,
                            TClientes  = cliente
                        };
                        _objeto._context.Update(reportes);
                        await _objeto._context.SaveChangesAsync();

                        var ticketsReport = new TTickets
                        {
                            Propietario = "Cliente",
                            Deuda       = String.Format("${0:#,###,###,##0.00####}", deuda),
                            FechaDeuda  = DateTime.Today,
                            Pago        = String.Format("${0:#,###,###,##0.00####}", pago),
                            FechaPago   = DateTime.Today,
                            Ticket      = ticket,
                            Email       = idGet
                        };
                        _objeto._context.Add(ticketsReport);
                        await _objeto._context.SaveChangesAsync();

                        return(true);
                    }
                }
            }
            catch (Exception ex)
            {
                Input = new InputModel
                {
                    Nombre        = nombre,
                    Apellido      = apellido,
                    Email         = idGet,
                    ErrorMessage  = ex.Message,
                    ClienteReport = new List <TReportes_clientes>()
                };
                return(false);
            }
        }
示例#8
0
        private async Task <bool> savePagoAsync()
        {
            try
            {
                var pago      = Convert.ToDecimal(Input1.Pago);
                var deuda     = Convert.ToDecimal(proveedore_Report.Deuda.Replace("$", "")) - pago;
                var dataInput = new InputModel
                {
                    Proveedor         = proveedor,
                    Email             = idGet,
                    ProveedoresReport = proveedoresReport
                };
                if (proveedore_Report.Deuda.Equals("$0.00"))
                {
                    Input  = dataInput;
                    Input1 = new InputModel1
                    {
                        ErrorMessage = "El proveedor no contiene deuda",
                    };
                    return(false);
                }
                else
                {
                    if (deuda < pago)
                    {
                        Input  = dataInput;
                        Input1 = new InputModel1
                        {
                            ErrorMessage = "Pago incorrecto",
                        };
                        return(false);
                    }
                    else
                    {
                        var ticket = new Codigos(_objeto._context).codigosTickets("Proveedor", idGet, "Tickets");
                        _objeto._context.Update(tProveedores);
                        await _objeto._context.SaveChangesAsync();

                        var reportes = new TReportes_proveedores
                        {
                            ReportesID   = proveedore_Report.ReportesID,
                            Deuda        = String.Format("${0:#,###,###,##0.00####}", deuda),
                            FechaDeuda   = DateTime.Today,
                            Pago         = String.Format("${0:#,###,###,##0.00####}", pago),
                            FechaPago    = DateTime.Today,
                            Ticket       = ticket,
                            TProveedores = tProveedores
                        };
                        _objeto._context.Update(reportes);
                        await _objeto._context.SaveChangesAsync();

                        var ticketsReport = new TTickets
                        {
                            Propietario = "Proveedor",
                            Deuda       = String.Format("${0:#,###,###,##0.00####}", deuda),
                            FechaDeuda  = DateTime.Today,
                            Pago        = String.Format("${0:#,###,###,##0.00####}", pago),
                            FechaPago   = DateTime.Today,
                            Ticket      = ticket,
                            Email       = idGet
                        };
                        _objeto._context.Add(ticketsReport);
                        await _objeto._context.SaveChangesAsync();

                        return(true);
                    }
                }
            }
            catch (Exception ex)
            {
                Input = new InputModel
                {
                    Proveedor         = proveedor,
                    Email             = idGet,
                    ErrorMessage      = ex.Message,
                    ProveedoresReport = new List <TReportes_proveedores>()
                };
                return(false);
            }
        }
示例#9
0
 private void ActualizarGrillaCodigos()
 {
     _codigoProductoRepository = new EFRepository <CodigoProducto>();
     Codigos = CodigoProductoRepository.Listado().Where(c => c.ProductoId == Producto.ProductoId).ToList();
     dgvCodigos.DataSource = Codigos.ToArray();
 }
示例#10
0
 private void CargarCodigos()
 {
     Codigos = Producto.CodigosProductos.Where(c => !c.Eliminado).ToList();
     dgvCodigos.DataSource = Codigos.ToArray();
 }
示例#11
0
        private async Task <bool> insertAsync()
        {
            bool valor = false;

            codigoBarra = new Codigos(_objeto._context).codigoTicket("TProductos");
            Input       = new InputModel
            {
                Descripcion  = Input.Descripcion,
                Precio       = Input.Precio,
                Compras      = dataCompras,
                Image        = new Codigos().GetCodeBarra(codigoBarra),
                Departamento = Input.Departamento,
                Categoria    = Input.Categoria
            };
            try
            {
                var precio1 = Convert.ToDecimal(dataCompras.Precio.Replace("$", ""));
                var precio2 = Convert.ToDecimal(Input.Precio);
                if (precio2 > precio1)
                {
                    var strategy = _objeto._context.Database.CreateExecutionStrategy();
                    await strategy.ExecuteAsync(async() => {
                        using (var transaction = _objeto._context.Database.BeginTransaction())
                        {
                            try
                            {
                                var imageByte = _objeto._image.Imagebyte(dataCompras.Codigo, _objeto._environment);
                                var precio    = string.Format("${0:#,###,###,##0.00####}", Convert.ToDecimal(Input.Precio));
                                var producto  = new TProductos
                                {
                                    Codigo       = codigoBarra,
                                    Descripcion  = Input.Descripcion,
                                    Precio       = precio,
                                    Departamento = Input.Departamento,
                                    Categoria    = Input.Categoria,
                                    Descuento    = "%0.0",
                                    Dia          = Convert.ToInt16(dia),
                                    Mes          = mes,
                                    Year         = year,
                                    Fecha        = fecha,
                                    Compra       = dataCompras.Codigo,
                                    Image        = imageByte
                                };
                                _objeto._context.Add(producto);
                                await _objeto._context.SaveChangesAsync();
                                var bodega = new TBodega
                                {
                                    Codigo     = codigoBarra,
                                    Existencia = dataCompras.Cantidad,
                                    Dia        = Convert.ToInt16(dia),
                                    Mes        = mes,
                                    Year       = year,
                                    Fecha      = fecha
                                };
                                _objeto._context.Add(bodega);
                                await _objeto._context.SaveChangesAsync();
                                transaction.Commit();
                                valor = true;
                                //var compra=  _objeto._context.TCompras_temp.SingleOrDefault(t => t.ID.Equals(idGet));
                                // _objeto._context.Remove(compra);
                            }
                            catch (Exception ex)
                            {
                                valor = false;
                                Input.ErrorMessage = ex.Message;
                                transaction.Rollback();
                            }
                        }
                    });
                }
                else
                {
                    Input.ErrorMessage = "El precio debe ser mayor al precio de compra";

                    valor = false;
                }
            }
            catch (Exception ex)
            {
                Input.ErrorMessage = ex.Message;
                valor = false;
            }
            return(valor);
        }
        public List<Codigos> CargaCP(string Municipio, string Colonia)
        {
            int mun;
            mun = Convert.ToInt32(Municipio);
            List<Codigos> codigos = new List<Codigos>();
            sqlDataAdapter.SelectCommand = new SqlCommand();
            sqlDataAdapter.SelectCommand.Connection = sqlConnectionWeb;
            sqlDataAdapter.SelectCommand.CommandText = "ConsultaCP";
            sqlDataAdapter.SelectCommand.CommandType = CommandType.StoredProcedure;

            SqlParameter Param1 = new SqlParameter("@Colonia", SqlDbType.NVarChar);
            Param1.Direction = ParameterDirection.Input;
            Param1.Value = Colonia;
            sqlDataAdapter.SelectCommand.Parameters.Add(Param1);

            SqlParameter Param2 = new SqlParameter("@Id_Municipio", SqlDbType.Int);
            Param2.Direction = ParameterDirection.Input;
            Param2.Value = mun;
            sqlDataAdapter.SelectCommand.Parameters.Add(Param2);

            sqlDataAdapter.Fill(ds, "ConsultaCP");

            foreach (DataRow dr in ds.Tables["ConsultaCP"].Rows)
            {
                Codigos tmp = new Codigos();
                tmp.Id = Convert.ToString(dr["Id_Colonia"]);
                tmp.Name = Convert.ToString(dr["CP"]);

                codigos.Add(tmp);

            }

            return codigos;
        }