public bool Update(Impuesto o)
 {
     try
     {
         using (var db = new DymContext())
         {
             db.Entry(o).State = Microsoft.EntityFrameworkCore.EntityState.Modified;
             db.SaveChanges();
             return(true);
         }
     }
     catch (Exception ex)
     {
         Ambiente.Mensaje(Ambiente.CatalgoMensajes[-1] + "@" + GetType().Name + "\n" + ex.ToString());
     }
     return(false);
 }
 public bool InsertRange(List <LoteVentap> lista)
 {
     try
     {
         using (var db = new DymContext())
         {
             db.AddRange(lista);
             db.SaveChanges();
             return(true);
         }
     }
     catch (Exception ex)
     {
         Ambiente.Mensaje(Ambiente.CatalgoMensajes[-1] + "@" + GetType().Name + "\n" + ex.ToString());
     }
     return(false);
 }
 public bool Delete(Informe o)
 {
     try
     {
         using (var db = new DymContext())
         {
             db.Remove(o);
             db.SaveChanges();
             return(true);
         }
     }
     catch (Exception ex)
     {
         Ambiente.Mensaje(Ambiente.CatalgoMensajes[-1] + "@" + GetType().Name + "\n" + ex.ToString());
     }
     return(false);
 }
예제 #4
0
 public bool InsertOne(Laboratorio o)
 {
     try
     {
         using (var db = new DymContext())
         {
             db.Add(o);
             db.SaveChanges();
             return(true);
         }
     }
     catch (Exception ex)
     {
         Ambiente.Mensaje(Ambiente.CatalgoMensajes[-1] + "@" + GetType().Name + "\n" + ex.ToString());
     }
     return(false);
 }
 public bool UpdateRange(List <Lote> lotes)
 {
     try
     {
         using (var db = new DymContext())
         {
             db.UpdateRange(lotes);
             db.SaveChanges();
             return(true);
         }
     }
     catch (Exception ex)
     {
         Ambiente.Mensaje(Ambiente.CatalgoMensajes[-1] + "@" + GetType().Name + "\n" + ex.ToString());
     }
     return(false);
 }
예제 #6
0
        internal static void IngresosVsEgresos(DateTime inicial, DateTime final, bool todasLasFechas)
        {
            try
            {
                report = new StiReport();
                report.Load(FIngresosVsEgresos);

                List <Flujo> ingresos = new List <Flujo>();
                List <Flujo> egresos  = new List <Flujo>();

                using (var db = new DymContext())
                {
                    //if (todasLasFechas)
                    //{
                    //    ingresos = db.Flujo.Where(x => x.EntradaSalida.Equals("E")).ToList();
                    //    egresos = db.Flujo.Where(x => x.EntradaSalida.Equals("S")).ToList();

                    //}
                    //else
                    //{
                    //    ingresos = db.Flujo.Where(x => x.EntradaSalida.Equals("E") && (x.CreatedAt.Date >= inicial && x.CreatedAt <= final)).ToList();
                    //    egresos = db.Flujo.Where(x => x.EntradaSalida.Equals("S") && (x.CreatedAt.Date >= inicial && x.CreatedAt <= final)).ToList();

                    //}
                }


                report.RegBusinessObject("ingresos", "ingresos", ingresos);
                report.RegBusinessObject("egresos", "egresos", egresos);
                //Diseñar
                //report.Load(@RutaFormato);
                //report.RegData(ds);
                //report.Dictionary.Synchronize();
                // report.Compile();
                //report.Design();
                //report.Save(@"C:\Dympos\Formatos\EntradaXcompra.mrt");
                //report.Render(true);
                //report.Compile();
                report.Show(true);
            }
            catch (Exception e)
            {
                Ambiente.Mensaje(e.Message);
            }
        }
예제 #7
0
        private void Autenticha()
        {
            var login = new LoginController();
            var estacioncontroller = new EstacionController();
            var usuarioController = new UsuarioController();


            if (login.AuthenticaUsuario(txtUser.Text, txtPassword.Text))
            {

                var form = new FrmMain
                {
                    MdiParent = this.MdiParent
                };

                if (Ambiente.Estacion == null)
                {
                    Ambiente.Estacion = estacioncontroller.SelectOne(TxtEstacionId.Text.Trim());
                    if (Ambiente.Estacion == null)
                    {
                        Ambiente.Mensaje("LA ESTACION NO EXISTE");
                        return;
                    }
                    else
                    {
                        Ambiente.LoggedUser.EstacionId = Ambiente.Estacion.EstacionId;
                        usuarioController.Update(Ambiente.LoggedUser);
                    }
                }
                else
                {
                    Ambiente.LoggedUser.EstacionId = Ambiente.Estacion.EstacionId;
                    usuarioController.Update(Ambiente.LoggedUser);
                }



                form.Show();
                Dispose();
            }
            else
            {
                Ambiente.Mensaje("Credenciales incorrectas");
            }
        }
예제 #8
0
 private void InsertarVenta()
 {
     try
     {
         venta                   = new Venta();
         venta.NoRef             = Ambiente.TraeSiguiente("FAC");
         venta.TipoDocId         = "FAC";
         venta.FechaDoc          = DateTime.Now;
         venta.ClienteId         = "SYS";
         venta.Descuento         = 0;
         venta.NoPrecio          = 1;
         venta.MonedaId          = "MXN";
         venta.DatosCliente      = "PUBLICO EN GENERAL";
         venta.EnFactCierre      = false;
         venta.Anulada           = false;
         venta.EsConversiondeTaF = false;
         venta.VentaOrigen       = null;
         venta.CxcId             = null;
         venta.Pago1             = 0;
         venta.EstacionId        = Ambiente.Estacion.EstacionId;
         venta.Cortada           = false;
         venta.CreatedAt         = DateTime.Now;
         venta.CreatedBy         = Ambiente.LoggedUser.UsuarioId;
         venta.EstadoDocId       = "PEN";
         venta.SubTotal          = 0;
         venta.Impuesto          = 0;
         venta.Total             = 0;
         venta.TotalConLetra     = "";
         venta.DescXpuntos       = 0;
         venta.PuntosAplicados   = false;
         venta.Cambio            = 0;
         //venta.Unidades = ventas.Count;
         venta.UsoCfdi         = "P01";
         venta.FormaPago1      = "99";
         venta.MetodoPago      = "PUE";
         venta.EsCxc           = false;
         venta.EsFacturaGlobal = true;
         venta.TipoComprobante = "I";
         ventaController.InsertOne(venta);
     }
     catch (Exception ex)
     {
         Ambiente.Mensaje(ex.Message);
     }
 }
 public bool Delete(Producto o)
 {
     try
     {
         using (var db = new DymContext())
         {
             o.IsDeleted       = true;
             db.Entry(o).State = EntityState.Modified;
             db.SaveChanges();
             return(true);
         }
     }
     catch (Exception ex)
     {
         Ambiente.Mensaje(Ambiente.CatalgoMensajes[-1] + "@" + GetType().Name + "\n" + ex.ToString());
     }
     return(false);
 }
예제 #10
0
        public static void ClientesXmonedero()
        {
            try
            {
                report = new StiReport();

                report.Load(FClientesXmonedero);
                report.Compile();
                report["creador"] = Ambiente.LoggedUser.UsuarioId;
                report.RegBusinessObject("clientes", clienteController.SelectAllOrderByMonedero());

                report.Show();
            }
            catch (Exception e)
            {
                Ambiente.Mensaje(e.Message);
            }
        }
예제 #11
0
        public List <Lote> GetLotesDisponibilidad(string productoId, decimal cantidad)
        {
            List <Lote> lotes = new List <Lote>();

            try
            {
                using (var db = new DymContext())
                {
                    lotes = db.Lote.Where(x => x.ProductoId.Equals(productoId.Trim()) && x.StockRestante > 0)
                            .OrderBy(x => x.CreatedAt).ToList();
                }
            }
            catch (Exception ex)
            {
                Ambiente.Mensaje(Ambiente.CatalgoMensajes[-1] + "@" + GetType().Name + "\n" + ex.ToString());
            }
            return(lotes);
        }
        public List <Producto> FiltrarVsDescrip(string SearchText)
        {
            try
            {
                using (var db = new DymContext())
                {
                    return(db.Producto
                           .Include(x => x.ProductoSustancia)
                           .Where(x => x.Descripcion.Contains(SearchText.Trim())).Take(50).ToList());
                }
            }
            catch (Exception ex)
            {
                Ambiente.Mensaje("ProductoController: " + ex.ToString());
            }

            return(null);
        }
 public Producto SelectOne(string Id)
 {
     try
     {
         using (var db = new DymContext())
         {
             return(db.Producto
                    .Include(x => x.ProductoSustancia)
                    .Include(x => x.Laboratorio)
                    .FirstOrDefault(x => x.ProductoId.Equals(Id.Trim())));
         }
     }
     catch (Exception ex)
     {
         Ambiente.Mensaje(Ambiente.CatalgoMensajes[-1] + "@" + GetType().Name + "\n" + ex.ToString());
     }
     return(null);
 }
예제 #14
0
        private void BtnAceptar_Click(object sender, EventArgs e)
        {
            if ((int)CboCategorias.SelectedValue <= 0)
            {
                Ambiente.Mensaje("Informe todos los campos");
                return;
            }
            if (TxtDescripcion.Text.Equals(""))
            {
                Ambiente.Mensaje("Informe todos los campos");
                return;
            }

            CategoriaId  = int.Parse(CboCategorias.SelectedValue.ToString());
            Descrip      = TxtDescripcion.Text.Trim();
            Sistema      = ChkSistema.Checked;
            DialogResult = DialogResult.OK;
        }
        public List <Producto> SelectOneOverList(string Id)
        {
            try
            {
                using (var db = new DymContext())
                {
                    return(db.Producto

                           .Include(x => x.ProductoSustancia)
                           .Where(x => x.ProductoId == Id.Trim() && x.IsDeleted == false).ToList());
                }
            }
            catch (Exception ex)
            {
                Ambiente.Mensaje(Ambiente.CatalgoMensajes[-1] + "@" + GetType().Name + "\n" + ex.ToString());
            }
            return(null);
        }
예제 #16
0
        private void BtnCerrarCaja_Click(object sender, EventArgs e)
        {
            //var parametros = new List<Parametro>();
            //try
            //{
            //    if (Ambiente.Empresa.FormatoCortes.Equals("CORTEXESTACION"))
            //    {
            //        parametros.Add(new Parametro { Clave = "[EstacionId]", Valor = "'" + Ambiente.Estacion.EstacionId + "'" });
            //        parametros.Add(new Parametro { Clave = "[FechaSistema]", Valor = Ambiente.FechaSQL(DateTime.Now) });
            //        Ambiente.ShowReport("CORTEXESTACION", parametros);
            //    }
            //    else if (Ambiente.Empresa.FormatoCortes.Equals("CORTEXUSUARIO"))
            //    {
            //        parametros.Add(new Parametro { Clave = "[UsuarioId]", Valor = "'" + Ambiente.LoggedUser.UsuarioId + "'" });
            //        parametros.Add(new Parametro { Clave = "[FechaSistema]", Valor = Ambiente.FechaSQL(DateTime.Now) });
            //        Ambiente.ShowReport("CORTEXUSUARIO", parametros);
            //    }
            //}
            //catch (Exception ex)
            //{
            //    Ambiente.Mensaje(ex.Message);
            //}


            try
            {
                if (Ambiente.Empresa.FormatoCortes.Equals("CORTEXESTACION"))
                {
                    Ambiente.AddReportParam("[EstacionId]", "'" + Ambiente.Estacion.EstacionId + "'", true);
                    Ambiente.AddReportParam("[FechaSistema]", Ambiente.FechaSQL(DateTime.Now));
                    Ambiente.ShowReport("CORTEXESTACION", Ambiente.GetReportParam());
                }
                else if (Ambiente.Empresa.FormatoCortes.Equals("CORTEXUSUARIO"))
                {
                    Ambiente.AddReportParam("[UsuarioId]", "'" + Ambiente.LoggedUser.UsuarioId + "'", true);
                    Ambiente.AddReportParam("[FechaSistema]", Ambiente.FechaSQL(DateTime.Now));
                    Ambiente.ShowReport("CORTEXUSUARIO", Ambiente.GetReportParam());
                }
            }
            catch (Exception ex)
            {
                Ambiente.Mensaje(ex.Message);
            }
        }
예제 #17
0
        private void CerrarVenta()
        {
            if (cambio < 0)
            {
                Ambiente.Mensaje("Liquida el documento o mándalo a cuentas por cobrar");
                return;
            }

            if ((TxtPago1.Text.Trim().Length > 0 && formaPago1 == null))
            {
                Ambiente.Mensaje("Busque y seleccione la forma de pago 1");
                DialogResult = DialogResult.Cancel;
                return;
            }
            if ((TxtPago2.Text.Trim().Length > 0 && formaPago2 == null))
            {
                Ambiente.Mensaje("Busque y seleccione la forma de pago 2");
                DialogResult = DialogResult.Cancel;
                return;
            }
            if ((TxtPago3.Text.Trim().Length > 0 && formaPago3 == null))
            {
                Ambiente.Mensaje("Busque y seleccione la forma de pago 3");
                DialogResult = DialogResult.Cancel;
                return;
            }
            //if (tipoDoc.Equals("FAC") && Ambiente.Estacion.SolicitarFmpago)
            //{
            //    using (var form = new FrmMetodoPago())
            //    {
            //        if (form.ShowDialog() == DialogResult.OK)
            //            metodoPago = form.MetodoPago;
            //        else
            //            metodoPago = "PUE";
            //    }
            //}



            CobroConPuntos = ChkCobrarConPtos.Checked;
            totalLetra     = moneda.Convertir(total.ToString(), true);
            DialogResult   = DialogResult.OK;
            Close();
        }
        public string InsertRange(List <ProductoSustancia> lista)
        {
            List <ProductoSustancia> listaCorrectos = new List <ProductoSustancia>();
            List <string>            errores        = new List <string>();
            string correctos = string.Empty;

            try
            {
                using (var db = new DymContext())
                {
                    foreach (var item in lista)
                    {
                        var producto  = db.Producto.FirstOrDefault(x => x.ProductoId == item.ProductoId);
                        var sustancia = db.Sustancia.FirstOrDefault(x => x.SustanciaId == item.SustanciaId);
                        if (producto != null && sustancia != null)
                        {
                            var prodsus = new ProductoSustancia();
                            prodsus.ProductoId  = producto.ProductoId;
                            prodsus.SustanciaId = sustancia.SustanciaId;
                            prodsus.Contenido   = item.Contenido;

                            listaCorrectos.Add(prodsus);
                        }
                        else
                        {
                            errores.Add(item.SustanciaId + ", NO EXISTE EN LAS SUSTANCIAS o, " + item.ProductoId + ", NO EXISTE EN LOS PRODUCTOS");
                        }
                    }
                    db.ProductoSustancia.AddRange(listaCorrectos);
                    db.SaveChanges();
                    correctos += "SE GUARDARON " + listaCorrectos.Count + " REGISTOS\n\n";
                    correctos += "SE OMITIERON " + errores.Count + " REGISTOS\n\n";
                    correctos += "COPIE Y PEGUE LOS DETALLES\n\n ";
                    var result = String.Join(" \n ", errores.ToArray());
                    correctos += result;
                }
            }
            catch (Exception ex)
            {
                Ambiente.Mensaje(Ambiente.CatalgoMensajes[-1] + "@" + this.GetType().Name + "\n" + ex.ToString());
            }

            return(correctos);
        }
예제 #19
0
        private void Malla_CellEndEdit(object sender, DataGridViewCellEventArgs e)
        {
            if (Malla.CurrentCell.Value == null)
            {
                Ambiente.Mensaje("Este cambio será desconsiderado, el campo y expresion es obligatorio");
                return;
            }

            if (Malla.CurrentCell.ColumnIndex == 2)
            {
                //Campo
                ActualizaCampo(Malla.CurrentCell.Value.ToString(), e.RowIndex);
            }
            if (Malla.CurrentCell.ColumnIndex == 3)
            {
                //Expresion
                ActualizaExpr(Malla.CurrentCell.Value.ToString(), e.RowIndex);
            }
        }
예제 #20
0
 public FrmReporte(bool boolcreate, Reporte reporte)
 {
     InitializeComponent();
     Inicializar();
     this.reporte = reporte;
     modoCreate   = boolcreate;
     if (reporte != null)
     {
         Text = "ACTUALIZANDO " + reporte.Nombre;
         TxtDescripcion.Text = reporte.Descripcion;
         TxtNomre.Text       = reporte.Nombre;
         TxtQuery.Text       = reporte.Sql;
         TxtQuery.Rtf        = reporte.Rtf;
     }
     else
     {
         Ambiente.Mensaje("Nigun reporte seleccionado");
     }
 }
예제 #21
0
 private void CargarTraspaso()
 {
     if (CboTraspasos.Text.Trim().Length == 0)
     {
         Ambiente.Mensaje("Proceso abortado, seleccione un traspaso.");
         return;
     }
     if (Ambiente.ExtraerFile(empresa.DirectorioTraspasos + CboTraspasos.Text.Trim(), empresa.DirectorioTrabajo))
     {
         traspaso = Ambiente.SerializaPH(empresa.DirectorioTrabajo + @"\PH.XLSX");
         partidas = Ambiente.SerializaPD(empresa.DirectorioTrabajo + @"\PD.XLSX");
         LlenaHeader();
         LlenaMalla();
     }
     else
     {
         Ambiente.Mensaje("Proceso abortado, no se pudo extraer el archivo.");
     }
 }
 public List <Producto> SelectMany(int cantidad)
 {
     try
     {
         //r => Guid.NewGuid()
         using (var db = new DymContext())
         {
             return(db.Producto
                    .Include(x => x.ProductoSustancia)
                    .Where(x => x.IsDeleted == false)
                    .Take(cantidad).ToList());
         }
     }
     catch (Exception ex)
     {
         Ambiente.Mensaje(Ambiente.CatalgoMensajes[-1] + "@" + GetType().Name + "\n" + ex.ToString());
     }
     return(null);
 }
 private void AplicarTraspaso()
 {
     if (traspasoController.InsertOne(traspaso))
     {
         foreach (var p in partidas)
         {
             p.TraspasoId = traspaso.TraspasoId;
         }
         if (traspasopController.InsertRange(partidas))
         {
             SumaLotes();
             AfectaStock();
             AfectaMovsInv();
             CambiarStatus();
             Ambiente.Mensaje("Proceso concluido con éxito.");
             Inicializa();
         }
     }
 }
 private void Salir()
 {
     if (restante == 0 && lotes.Count > 0)
     {
         if (lotes[0].LoteId > 0)
         {
             DialogResult = DialogResult.Cancel;
             Close();
         }
         else
         {
             Ambiente.Mensaje("Operación denegada, No se han guardado los cambios");
         }
     }
     else
     {
         Ambiente.Mensaje("Operación denegada, hay lotes sin asignar");
     }
 }
        private void StockCeros()
        {
            try
            {
                if (Ambiente.Pregunta("Este proceso eliminará la existencia de los lotes vinculados al articulo y su nombre quedará como responsable: Continuar"))
                {
                    int index = 0;
                    foreach (var p in partidas)
                    {
                        if (p.LoteId != null)
                        {
                            lote = loteController.SelectOne((int)p.LoteId);
                        }
                        producto = productoController.SelectOne(p.ProductoId);

                        if (lote != null)
                        {
                            lote.StockRestante = 0;
                            loteController.Update(lote);
                        }
                        if (producto != null)
                        {
                            producto.Stock     = 0;
                            producto.UpdatedBy = Ambiente.LoggedUser.UsuarioId;
                            productoController.Update(producto);
                        }

                        ActualizaCantidad(0, index, true);
                        index++;
                    }

                    inventario.UpdatedBy = Ambiente.LoggedUser.UsuarioId;
                    inventario.UpdatedAt = DateTime.Now;
                    inventarioController.Update(inventario);
                    ReCargaGrid();
                    Ambiente.Mensaje("Proceso concluido");
                }
            }
            catch (Exception ex)
            {
                Ambiente.Mensaje(ex.Message);
            }
        }
예제 #26
0
        public string InsertRange(List <ProductoImpuesto> lista)
        {
            var           listaCorrectos = new List <ProductoImpuesto>();
            List <string> errores        = new List <string>();
            string        correctos      = string.Empty;

            try
            {
                using (var db = new DymContext())
                {
                    foreach (var item in lista)
                    {
                        var producto = db.Producto.FirstOrDefault(x => x.ProductoId == item.ProductoId);
                        var impuesto = db.Impuesto.FirstOrDefault(x => x.ImpuestoId == item.ImpuestoId);
                        if (producto != null && impuesto != null)
                        {
                            var prodImp = new ProductoImpuesto();
                            prodImp.ProductoId = producto.ProductoId;
                            prodImp.ImpuestoId = impuesto.ImpuestoId;
                            listaCorrectos.Add(prodImp);
                        }
                        else
                        {
                            errores.Add(item.ImpuestoId + ", NO EXISTE EN LOS IMPUESTOS o, " + item.ProductoId + ", NO EXISTE EN LOS PRODUCTOS");
                        }
                    }
                    db.AddRange(listaCorrectos);
                    db.SaveChanges();
                    correctos += "SE GUARDARON " + listaCorrectos.Count + " REGISTOS\n\n";
                    correctos += "SE OMITIERON " + errores.Count + " REGISTOS\n\n";
                    correctos += "COPIE Y PEGUE LOS DETALLES\n\n ";
                    var result = String.Join(" \n ", errores.ToArray());
                    correctos += result;
                }
            }
            catch (Exception ex)
            {
                Ambiente.Mensaje(Ambiente.CatalgoMensajes[-1] + "@" + GetType().Name + "\n" + ex.ToString());
            }

            return(correctos);
        }
예제 #27
0
 private void InsertOrUpdate()
 {
     if (objeto == null)
     {
         if (TxtClave.Text.Trim().Length == 0)
         {
             Ambiente.Mensaje("Proceso abortado");
             return;
         }
         objeto = new ConceptoIngreso();
         objeto.ConceptoIngresoId = TxtClave.Text.Trim();
         objeto.Descripcion       = TxtNombre.Text.Trim();
         if (conceptoIngresoController.InsertOne(objeto))
         {
             Ambiente.Mensaje("Cambios guardados");
             Close();
         }
         else
         {
             Ambiente.Mensaje("Algo salio mal");
         }
     }
     else
     {
         if (TxtClave.Text.Trim().Length == 0)
         {
             Ambiente.Mensaje("Proceso abortado");
             return;
         }
         objeto.ConceptoIngresoId = TxtClave.Text.Trim();
         objeto.Descripcion       = TxtNombre.Text.Trim();
         if (conceptoIngresoController.Update(objeto))
         {
             Ambiente.Mensaje("Cambios guardados");
             Close();
         }
         else
         {
             Ambiente.Mensaje("Algo salio mal");
         }
     }
 }
예제 #28
0
        private void GlobalEvents_LoadingReportInDesigner(object sender, Stimulsoft.Report.Design.StiLoadingObjectEventArgs e)
        {
            e.Processed = true;

            using (var form = new FrmBuscadorReportes())
            {
                if (form.ShowDialog() == DialogResult.OK)
                {
                    reporte = form.reporte;
                    if (reporte != null)
                    {
                        LeerReporte();
                    }
                    else
                    {
                        Ambiente.Mensaje("No se seleccionó ningun reporte.");
                    }
                }
            }
        }
 public bool Delete(string Id)
 {
     try
     {
         using (var db = new DymContext())
         {
             var temp = db.CMetodopago.FirstOrDefault(x => x.MetodoPagoId == Id);
             if (temp != null)
             {
                 db.Remove(temp);
                 return(db.SaveChanges() > 0 ? true : false);
             }
         }
     }
     catch (Exception ex)
     {
         Ambiente.Mensaje("Algo salio mal con: " + MethodBase.GetCurrentMethod().Name + "@" + GetType().Name + "\n" + ex.ToString());
     }
     return(false);
 }
예제 #30
0
 public static void Proveedores()
 {
     try
     {
         report = new StiReport();
         report.Load(@"C:\Dympos\Formatos\Proveedores.mrt");
         report.Compile();
         report["creador"] = Ambiente.LoggedUser.UsuarioId;
         report.RegBusinessObject("proveedores", proveedorController.SelectAll());
         // report.Dictionary.Synchronize();
         //report.Render();
         //report.Design();
         //report.Save(@"C:\Dympos\Formatos\Proveedores.mrt");
         report.Show();
     }
     catch (Exception e)
     {
         Ambiente.Mensaje(e.Message);
     }
 }