예제 #1
0
        public bool EditarProgramacion(int idPrograma, string codigoProgramacion, string periodicidad, DateTime fechaInicio, DateTime fechaFin, double porcentajeEncuestados, string descripcion, string estado,short diasVigencia,int plantillaId)
        {
            var context = new ETNADbModelContainer();
            var programa = context.Programaciones.Find(idPrograma);
              //  if (programa.Estado.Equals("I"))
              //  {
                programa.Periodicidad = periodicidad;
                programa.FechaInicio = fechaInicio;
                programa.FechaFin = fechaFin;
                programa.PorcentajeEncuestados = porcentajeEncuestados;
                programa.Descripcion = descripcion;
                programa.DiasVigencia = diasVigencia;
                programa.Estado = estado;
                programa.Plantilla = context.Plantillas.Find(plantillaId);

                context.SaveChanges();

                return true;
              //  }
              //  else

            //{
                return false;
               // }
        }
예제 #2
0
        public int InsertarReclamo(string codigoReclamo, DateTime fechaHoraReclamo, string motivo,
            string detalle, string observaciones, DateTime fechaRespuesta, string estado, int idFacturaDetalle)
        {
            var context = new ETNADbModelContainer();
            var newReclamo = new Reclamo();
            try
            {

            newReclamo.CodigoReclamo = "RE"+DateTime.Now.Year.ToString("0000")+newReclamo.Id.ToString("00000");
            newReclamo.FechaHoraReclamo = DateTime.Now;
            newReclamo.Motivo = motivo;
            newReclamo.Detalle = detalle;
            newReclamo.Observaciones = observaciones;
            newReclamo.FechaRespuesta = DateTime.Now.AddDays(5);
            newReclamo.Estado = "P";
            newReclamo.RegistradoPor = context.Empleados.Find(1);
            newReclamo.FacturaDetalle = context.FacturaDetalles.Find(idFacturaDetalle);
            context.Reclamos.Add(newReclamo);
            context.SaveChanges();
            var reclamo = context.Reclamos.Find(newReclamo.Id);
            reclamo.CodigoReclamo = "RE" + DateTime.Now.Year.ToString("0000") + newReclamo.Id.ToString("00000");
            context.SaveChanges();
             }
            catch (NullReferenceException e)
            {
                Console.WriteLine("{0} Exception caught.", e);
            }
            return newReclamo.Id;
        }
예제 #3
0
 public bool EliminarLote(int idLote)
 {
     var context = new ETNADbModelContainer();
     var lote = context.Lotes.Find(idLote);
     context.Lotes.Remove(lote);
     context.SaveChanges();
     return true;
 }
예제 #4
0
 public bool RechazarGuiaEntrada(int idSolicitud, string observaciones)
 {
     var context = new ETNADbModelContainer();
     var solicitud = context.SolicitudesEntrada.Find(idSolicitud);
     solicitud.Observaciones = observaciones;
     solicitud.Estado = (int) Enums.EstadoSolicitudEntrada.Rechazada;
     context.SaveChanges();
     return true;
 }
예제 #5
0
 public bool EditarLote(int idLote, string nroLote)
 {
     var context = new ETNADbModelContainer();
     var lote = context.Lotes.Find(idLote);
     lote.NroLote = nroLote;
     lote.FechaCreacion = DateTime.Now;
     context.SaveChanges();
     return true;
 }
예제 #6
0
        public List<int> NroPaginasPorDetalleNroFactura(string nroFactura)
        {
            var context = new ETNADbModelContainer();
            var list = new List<int>();

            var total = context.FacturaDetalles.Where(d => d.Factura.NroFactura.Contains(nroFactura)).ToList().Count;
            list.Add(total);
            list.Add((total / GestorFacturas.TamanoPaginas) + 1);
            return list;
        }
예제 #7
0
 public int InsertarPlantilla(string descripcion, string estado, int tipoPlantillaId)
 {
     var context = new ETNADbModelContainer();
     var objPlantilla = new Plantilla();
     objPlantilla.Descripcion = descripcion;
     objPlantilla.Estado = estado;
     objPlantilla.TipoPlantilla = context.TiposPlantilla.Find(tipoPlantillaId);
     context.Plantillas.Add(objPlantilla);
     context.SaveChanges();
     return objPlantilla.Id;
 }
예제 #8
0
 public int InsertarLote(string nroLote, int idTipoLote)
 {
     var context = new ETNADbModelContainer();
     var newLote = new Lote();
     newLote.NroLote = nroLote;
     newLote.FechaCreacion = DateTime.Now;
     newLote.TipoLote = context.TipoLotes.Find(idTipoLote);
     context.Lotes.Add(newLote);
     context.SaveChanges();
     return newLote.Id;
 }
예제 #9
0
        public bool EditarPlantilla(int idPlantilla, string descripcion, string estado, int tipoPlantillaId)
        {
            var context = new ETNADbModelContainer();
            var plantilla = context.Plantillas.Find(idPlantilla);
            plantilla.Descripcion = descripcion;
            plantilla.Estado = estado;
            plantilla.TipoPlantilla = context.TiposPlantilla.Find(tipoPlantillaId);

            context.SaveChanges();
            return true;
        }
예제 #10
0
 public int InsertarEncuesta(string titulo, DateTime fechaInicio, DateTime fechaRespuesta, int clienteCodigo)
 {
     var context = new ETNADbModelContainer();
     var objEncuesta = new Encuesta();
     objEncuesta.FechaInicio = fechaInicio;
     objEncuesta.FechaRespuesta = fechaRespuesta;
     objEncuesta.Titulo = titulo;
     objEncuesta.Cliente = context.Clientes.Find(clienteCodigo);
     context.Encuestas.Add(objEncuesta);
     context.SaveChanges();
     return objEncuesta.Id;
 }
예제 #11
0
        public bool EditarEncuesta(int idEncuesta, string titulo, DateTime fechaInicio, DateTime fechaRespuesta, int clienteCodigo)
        {
            var context = new ETNADbModelContainer();
            var encuesta = context.Encuestas.Find(idEncuesta);
            encuesta.Titulo = titulo;
            encuesta.FechaInicio = fechaInicio;
            encuesta.FechaRespuesta = fechaRespuesta;
            encuesta.Cliente = context.Clientes.Find(clienteCodigo);

            context.SaveChanges();
            return true;
        }
 public List<SolicitudEntrada> ObtenerSolicitudesEntrada(int idSolicitud, int estadoSolicitud,
     DateTime fechaInicio, DateTime fechaFin, int idEmpleado, int tipoEntrada)
 {
     var context = new ETNADbModelContainer();
     return context.SolicitudesEntrada.Where(s =>
         (idSolicitud == 0 || s.Id == idSolicitud) &&
         (estadoSolicitud == 0 || s.Estado == estadoSolicitud) &&
         (fechaInicio == DateTime.MinValue || s.FechaElaboracion >= fechaInicio) &&
         (fechaFin == DateTime.MinValue || s.FechaElaboracion <= fechaFin) &&
         (tipoEntrada == 0 || s.TipoEntrada == tipoEntrada) &&
         (idEmpleado == 0 || s.Empleado.Id == idEmpleado)
         ).ToList();
 }
예제 #13
0
        public bool GenerarGuiaEntrada(int idSolicitud, int idAlmacen, int idEmpleado)
        {
            //NOTA: Cada vez que guardamos algo, usar este bloque try catch para poder saber por qué dió excepción (si es que da)
            try
            {
                // Crear guía de entrada
                var context = new ETNADbModelContainer();
                var guiaEntrada = new GuiaEntrada();
                guiaEntrada.FechaElaboracion = DateTime.Now;
                guiaEntrada.IdentificadorDocumento = "GE-" + guiaEntrada.FechaElaboracion.ToString("MMddyyHmmss");
                guiaEntrada.SolicitudEntrada = context.SolicitudesEntrada.Find(idSolicitud);
                guiaEntrada.Almacen = context.Almacenes.Find(idAlmacen);
                guiaEntrada.Empleado = context.Empleados.Find(idEmpleado);
                context.DocumentosReferencia.Add(guiaEntrada);

                // Actualizar estado de la solicitud
                guiaEntrada.SolicitudEntrada.Estado = (int)Enums.EstadoSolicitudEntrada.Atendida;

                //Generar Kardex por cada producto
                var detalleSolicitud = context.DetalleSolicitudEntrada.Where(d => d.IdSolicitudEntrada == idSolicitud).ToList();

                foreach (var detalle in detalleSolicitud)
                {
                    var kardex = new Kardex();
                    kardex.Almacen = context.Almacenes.Find(idAlmacen);
                    kardex.DocumentoReferencia = guiaEntrada;
                    kardex.Producto = detalle.Producto;
                    kardex.Cantidad = detalle.Cantidad;
                    kardex.ValorUnitario = detalle.Producto.PrecioListaCompra;
                    kardex.TipoMovimiento = (int)Enums.TipoMovimiento.Entrada;
                    context.Kardex.Add(kardex);
                }

                context.SaveChanges();
                return true;
            }
            catch (DbEntityValidationException e)
            {
                foreach (var eve in e.EntityValidationErrors)
                {
                    Console.WriteLine("Entity of type \"{0}\" in state has the following validation errors:",
                        eve.Entry.Entity.GetType().Name);
                    foreach (var ve in eve.ValidationErrors)
                    {
                        Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"",
                            ve.PropertyName, ve.ErrorMessage);
                    }
                }
                throw;
            }
        }
 public List<SolicitudSalida> ObtenerSolicitudesSalida(int idSolicitud, int estadoSolicitud,
     DateTime fechaInicio, DateTime fechaFin, int idEmpleado, string tipoSalida, string direccionEntrega, 
     string razonSocialDestinatario)
 {
     var context = new ETNADbModelContainer();
     return context.SolicitudSalidaConjunto.Where(s =>
         (idSolicitud == 0 || s.Id == idSolicitud) &&
         (estadoSolicitud == 0 || s.Estado == estadoSolicitud) &&
         (fechaInicio == DateTime.MinValue || s.FechaElaboracion >= fechaInicio) &&
         (fechaFin == DateTime.MinValue || s.FechaElaboracion <= fechaInicio) &&
         (tipoSalida.Equals("") || s.TipoSalida.Equals(tipoSalida)) &&
         (direccionEntrega.Equals("") || s.DireccionEntrega.Equals(direccionEntrega)) &&
         (razonSocialDestinatario.Equals("") || s.RazonSocialDestinatario.Equals(razonSocialDestinatario)) &&
         (idEmpleado == 0 || s.Empleado.Id == idEmpleado)
         ).ToList();
 }
예제 #15
0
        public List<FacturaDetalle> ListarDetallePorNroFactura(string nroFactura, int nropagina = 1)
        {
            var param1 = new SqlParameter("@num_pagina", (nropagina<1?1:nropagina));
            var param2 = new SqlParameter("@tam_pagina", GestorFacturas.TamanoPaginas); //Tamaño de registros 10 by default
            var param3 = new SqlParameter("@nro_factura", nroFactura);

            var context = new ETNADbModelContainer();
            var detalleObj = context.Database.SqlQuery<FacturaDetalle>("exec GetPaginasRowNumber @num_pagina, @tam_pagina, @nro_factura", param1, param2, param3).ToList<FacturaDetalle>();

            var listaDetalle = new List<FacturaDetalle>();
            foreach (var detalle in detalleObj)
            {
                var factdeta = this.ObtenerDetalleFactura(detalle.Id);
                listaDetalle.Add(factdeta);
            }
            return listaDetalle;
            //return context.FacturaDetalles.Where(d => d.Factura.NroFactura.Contains(nroFactura)).ToList();
            //(d =>  d.Factura.NroFactura == nroFactura).ToList();
        }
예제 #16
0
 public int InsertarProgramacion(string codigoProgramacion, string periodicidad, DateTime fechaInicio, DateTime fechaFin, double porcentajeEncuestados, string descripcion, string estado, short diasVigencia, int plantillaId)
 {
     var context = new ETNADbModelContainer();
     var objProgramacion = new Programacion();
     objProgramacion.CodigoProgramacion = "PE" + DateTime.Now.Year.ToString("0000") + objProgramacion.Id.ToString("00000");
     objProgramacion.Periodicidad = periodicidad;
     objProgramacion.FechaInicio = fechaInicio;
     objProgramacion.FechaFin = fechaFin;
     objProgramacion.PorcentajeEncuestados = porcentajeEncuestados;
     objProgramacion.Descripcion = descripcion;
     objProgramacion.Estado = "A";
     objProgramacion.DiasVigencia = diasVigencia;
     objProgramacion.Plantilla = context.Plantillas.Find(plantillaId);
     context.Programaciones.Add(objProgramacion);
     context.SaveChanges();
     var programa = context.Programaciones.Find(objProgramacion.Id);
     programa.CodigoProgramacion = "PE" + DateTime.Now.Year.ToString("0000") + objProgramacion.Id.ToString("00000");
     context.SaveChanges();
     return objProgramacion.Id;
 }
예제 #17
0
        public bool EditarReclamo(int idReclamo, string codigoReclamo, DateTime fechaHoraReclamo, string motivo,
            string detalle, string observaciones, DateTime fechaRespuesta, string estado,int idFacturaDetalle)
        {
            var context = new ETNADbModelContainer();

             var reclamo = context.Reclamos.Find(idReclamo);
             try
             {
            reclamo.Motivo = motivo;
            reclamo.Detalle = detalle;
            reclamo.Observaciones = observaciones;
            reclamo.Estado = estado;
            reclamo.FacturaDetalle = context.FacturaDetalles.Find(idFacturaDetalle);
            context.SaveChanges();
             }
            catch (NullReferenceException e)
            {
                Console.WriteLine("{0} Exception caught.", e);
            }
            return true;
        }
 public SolicitudSalida ObtenerSolicitudSalida(int idSolicitud)
 {
     var context = new ETNADbModelContainer();
     return context.SolicitudSalidaConjunto.Find(idSolicitud);
 }
예제 #19
0
 public List<Empleado> ObtenerEmpleados()
 {
     var context = new ETNADbModelContainer();
     return context.Empleados.ToList();
 }
예제 #20
0
 public Cliente ObtenerCliente(int idCliente)
 {
     var context = new ETNADbModelContainer();
     return context.Clientes.Find(idCliente);
 }
예제 #21
0
 public List<Cliente> Listar()
 {
     var context = new ETNADbModelContainer();
     return context.Clientes.ToList();
 }
예제 #22
0
 public List<Reclamo> Listar()
 {
     var context = new ETNADbModelContainer();
     return context.Reclamos.ToList();
 }
예제 #23
0
 public List<Almacen> ObtenerAlmacenesPorEmpleado(int idEmpleado)
 {
     var context = new ETNADbModelContainer();
     return context.Almacenes.Where(a => a.Empleado.Any(e => e.Id == idEmpleado)).ToList();
 }
예제 #24
0
 public Almacen ObtenerAlmacen(int idAlmacen)
 {
     var context = new ETNADbModelContainer();
     return context.Almacenes.Find(idAlmacen);
 }
예제 #25
0
 public Programacion ObtenerProgramacion(int idProgramacion)
 {
     var context = new ETNADbModelContainer();
     return context.Programaciones.Find(idProgramacion);
 }
예제 #26
0
 public List<Programacion> Listar()
 {
     var context = new ETNADbModelContainer();
     return context.Programaciones.ToList();
 }
예제 #27
0
 public Reclamo ObtenerReclamo(int idReclamo)
 {
     var context = new ETNADbModelContainer();
     return context.Reclamos.Find(idReclamo);
 }
예제 #28
0
 public List<Plantilla> Listar()
 {
     var context = new ETNADbModelContainer();
     return context.Plantillas.ToList();
 }
 public SolicitudEntrada ObtenerSolicitdEntrada(int idSolicitud)
 {
     var context = new ETNADbModelContainer();
     return context.SolicitudesEntrada.Find(idSolicitud);
 }
예제 #30
0
 public List<Encuesta> Listar()
 {
     var context = new ETNADbModelContainer();
     return context.Encuestas.ToList();
 }