public async Task <IActionResult> Delete(int id)
        {
            try
            {
                var ListaEspecificaciones = await db.MaterialEspecificacion.Where(x => x.MaterialId == id).ToListAsync();

                db.MaterialEspecificacion.RemoveRange(ListaEspecificaciones);
                await db.SaveChangesAsync();

                var CurrentMaterial = await db.Material.Where(x => x.MaterialId == id).FirstOrDefaultAsync();

                if (CurrentMaterial != null)
                {
                    var result = db.Material.Remove(CurrentMaterial);
                    await db.SaveChangesAsync();

                    return(this.Redireccionar($"{Mensaje.MensajeSatisfactorio}|{Mensaje.Satisfactorio}"));
                }
                return(this.Redireccionar($"{Mensaje.Error}|{Mensaje.RegistroNoEncontrado}"));
            }
            catch (Exception)
            {
                return(this.Redireccionar($"{Mensaje.Error}|{Mensaje.BorradoNoSatisfactorio}"));
            }
        }
Esempio n. 2
0
        public async Task <IActionResult> Manage(Models.Especificacion Especificacion)
        {
            try
            {
                ViewBag.accion = Especificacion.EspecificacionId == 0 ? "Crear" : "Editar";
                if (ModelState.IsValid)
                {
                    var existeRegistro = false;
                    if (Especificacion.EspecificacionId == 0)
                    {
                        if (!await db.Especificacion.AnyAsync(c => c.Descripcion.ToUpper().Trim() == Especificacion.Descripcion.ToUpper().Trim()))
                        {
                            await db.AddAsync(Especificacion);
                        }

                        else
                        {
                            existeRegistro = true;
                        }
                    }
                    else
                    {
                        if (!await db.Especificacion.Where(c => c.Descripcion.ToUpper().Trim() == Especificacion.Descripcion.ToUpper().Trim()).AnyAsync(c => c.EspecificacionId != Especificacion.EspecificacionId))
                        {
                            var CurrentEspecificacion = await db.Especificacion.Where(x => x.EspecificacionId == Especificacion.EspecificacionId).FirstOrDefaultAsync();

                            CurrentEspecificacion.Descripcion         = Especificacion.Descripcion;
                            CurrentEspecificacion.TipoEspecificacion  = Especificacion.TipoEspecificacion;
                            CurrentEspecificacion.Analisis            = Especificacion.Analisis;
                            CurrentEspecificacion.ClaseEspecificacion = Especificacion.ClaseEspecificacion;
                            CurrentEspecificacion.DescripcionIngles   = Especificacion.DescripcionIngles;
                        }
                        else
                        {
                            existeRegistro = true;
                        }
                    }
                    if (!existeRegistro)
                    {
                        await db.SaveChangesAsync();

                        return(this.Redireccionar($"{Mensaje.MensajeSatisfactorio}|{Mensaje.Satisfactorio}"));
                    }
                    else
                    {
                        TempData["Mensaje"] = $"{Mensaje.Error}|{Mensaje.ExisteRegistro}";
                    }
                    return(base.View(Especificacion));
                }

                return(base.View(Especificacion));
            }
            catch (Exception)
            {
                return(this.Redireccionar($"{Mensaje.Error}|{Mensaje.Excepcion}"));
            }
        }
        public async Task <IActionResult> Manage(ProductoFinal ProductoFinal)
        {
            try
            {
                ViewBag.accion = ProductoFinal.ProductoFinalId == 0 ? "Crear" : "Editar";
                if (ModelState.IsValid)
                {
                    await cargarCombos();

                    var existeRegistro = false;
                    if (ProductoFinal.ProductoFinalId == 0)
                    {
                        if (!await db.ProductoFinal.AnyAsync(c => c.Codigo.ToUpper().Trim() == ProductoFinal.Codigo.ToUpper().Trim() && c.ProductoId == ProductoFinal.ProductoId))
                        {
                            await db.AddAsync(ProductoFinal);
                        }

                        else
                        {
                            existeRegistro = true;
                        }
                    }
                    else
                    {
                        if (!await db.ProductoFinal.Where(c => c.Codigo.ToUpper().Trim() == ProductoFinal.Codigo.ToUpper().Trim() && c.ProductoId == ProductoFinal.ProductoId).AnyAsync(c => c.ProductoFinalId != ProductoFinal.ProductoFinalId))
                        {
                            var CurrentProductoFinal = await db.ProductoFinal.Where(x => x.ProductoFinalId == ProductoFinal.ProductoFinalId).FirstOrDefaultAsync();

                            CurrentProductoFinal.Codigo      = ProductoFinal.Codigo;
                            CurrentProductoFinal.Descripcion = ProductoFinal.Descripcion;
                        }
                        else
                        {
                            existeRegistro = true;
                        }
                    }
                    if (!existeRegistro)
                    {
                        await db.SaveChangesAsync();

                        return(this.Redireccionar($"{Mensaje.MensajeSatisfactorio}|{Mensaje.Satisfactorio}"));
                    }
                    else
                    {
                        TempData["Mensaje"] = $"{Mensaje.Error}|{Mensaje.ExisteRegistro}";
                    }
                    return(View(ProductoFinal));
                }

                return(View(ProductoFinal));
            }
            catch (Exception)
            {
                return(this.Redireccionar($"{Mensaje.Error}|{Mensaje.Excepcion}"));
            }
        }
        public async Task <IActionResult> Especificaciones(TipoNormaEspecificacionViewModel tipoNormaEspecificacion)
        {
            try
            {
                await cargarListaEspecificacionesViewData();

                if (tipoNormaEspecificacion.ValorMinimo == null && tipoNormaEspecificacion.ValorMaximo == null)
                {
                    TempData["Mensaje"] = $"{Mensaje.Error}|{Mensaje.DebeIntroducirAlMenosUnRango}";
                    return(View(await ObtenerNormaEspecificacion(tipoNormaEspecificacion.TipoNormaId, tipoNormaEspecificacion)));
                }

                if (tipoNormaEspecificacion.ValorMinimo > tipoNormaEspecificacion.ValorMaximo)
                {
                    TempData["Mensaje"] = $"{Mensaje.Error}|{Mensaje.ValorMinimoMayorRangoMaximo}";
                    return(View(await ObtenerNormaEspecificacion(tipoNormaEspecificacion.TipoNormaId, tipoNormaEspecificacion)));
                }

                var existeRegistro = false;

                if (!await db.Norma.AnyAsync(c => c.EspecificacionId == tipoNormaEspecificacion.EspecificacionId && c.TipoNormaId == tipoNormaEspecificacion.TipoNormaId))
                {
                    var p = new Norma
                    {
                        TipoNormaId      = tipoNormaEspecificacion.TipoNormaId,
                        EspecificacionId = tipoNormaEspecificacion.EspecificacionId,
                        ValorMaximo      = tipoNormaEspecificacion.ValorMaximo,
                        ValorMinimo      = tipoNormaEspecificacion.ValorMinimo,
                    };
                    await db.AddAsync(p);
                }
                else
                {
                    existeRegistro = true;
                }

                if (!existeRegistro)
                {
                    await db.SaveChangesAsync();

                    TempData["Mensaje"] = $"{Mensaje.MensajeSatisfactorio}|{Mensaje.Satisfactorio}";
                    return(View(await ObtenerNormaEspecificacion(tipoNormaEspecificacion.TipoNormaId, null)));
                }
                else
                {
                    TempData["Mensaje"] = $"{Mensaje.Error}|{Mensaje.ExisteRegistro}";
                }

                return(View(await ObtenerNormaEspecificacion(tipoNormaEspecificacion.TipoNormaId, tipoNormaEspecificacion)));
            }
            catch (Exception)
            {
                return(this.Redireccionar($"{Mensaje.Error}|{Mensaje.Excepcion}"));
            }
        }
        public async Task <IActionResult> Manage(Cliente Cliente)
        {
            try
            {
                ViewBag.accion = Cliente.ClienteId == 0 ? "Crear" : "Editar";
                if (ModelState.IsValid)
                {
                    var existeRegistro = false;
                    if (Cliente.ClienteId == 0)
                    {
                        if (!await db.Cliente.AnyAsync(c => c.NombreCliente.ToUpper().Trim() == Cliente.NombreCliente.ToUpper().Trim()))
                        {
                            await db.AddAsync(Cliente);
                        }

                        else
                        {
                            existeRegistro = true;
                        }
                    }
                    else
                    {
                        if (!await db.Cliente.Where(c => c.NombreCliente.ToUpper().Trim() == Cliente.NombreCliente.ToUpper().Trim()).AnyAsync(c => c.ClienteId != Cliente.ClienteId))
                        {
                            var CurrentCliente = await db.Cliente.Where(x => x.ClienteId == Cliente.ClienteId).FirstOrDefaultAsync();

                            CurrentCliente.NombreCliente = Cliente.NombreCliente;
                            CurrentCliente.CodigoCliente = null;
                        }
                        else
                        {
                            existeRegistro = true;
                        }
                    }
                    if (!existeRegistro)
                    {
                        await db.SaveChangesAsync();

                        return(this.Redireccionar($"{Mensaje.MensajeSatisfactorio}|{Mensaje.Satisfactorio}"));
                    }
                    else
                    {
                        TempData["Mensaje"] = $"{Mensaje.Error}|{Mensaje.ExisteRegistro}";
                    }
                    return(View(Cliente));
                }

                return(View(Cliente));
            }
            catch (Exception)
            {
                return(this.Redireccionar($"{Mensaje.Error}|{Mensaje.Excepcion}"));
            }
        }
Esempio n. 6
0
        public async Task <IActionResult> Manage(Proveedor proveedor)
        {
            try
            {
                ViewBag.accion = proveedor.ProveedorId == 0 ? "Crear" : "Editar";
                if (ModelState.IsValid)
                {
                    var existeRegistro = false;
                    if (proveedor.ProveedorId == 0)
                    {
                        if (!await db.Proveedor.AnyAsync(c => c.CodigoProveedor.ToUpper().Trim() == proveedor.CodigoProveedor.ToUpper().Trim()))
                        {
                            await db.AddAsync(proveedor);
                        }

                        else
                        {
                            existeRegistro = true;
                        }
                    }
                    else
                    {
                        if (!await db.Proveedor.Where(c => c.CodigoProveedor.ToUpper().Trim() == proveedor.CodigoProveedor.ToUpper().Trim()).AnyAsync(c => c.ProveedorId != proveedor.ProveedorId))
                        {
                            var CurrentProveedor = await db.Proveedor.Where(x => x.ProveedorId == proveedor.ProveedorId).FirstOrDefaultAsync();

                            CurrentProveedor.NombreProveedor = proveedor.NombreProveedor;
                            CurrentProveedor.CodigoProveedor = proveedor.CodigoProveedor;
                        }
                        else
                        {
                            existeRegistro = true;
                        }
                    }
                    if (!existeRegistro)
                    {
                        await db.SaveChangesAsync();

                        return(this.Redireccionar($"{Mensaje.MensajeSatisfactorio}|{Mensaje.Satisfactorio}"));
                    }
                    else
                    {
                        TempData["Mensaje"] = $"{Mensaje.Error}|{Mensaje.ExisteRegistro}";
                    }
                    return(View(proveedor));
                }

                return(View(proveedor));
            }
            catch (Exception)
            {
                return(this.Redireccionar($"{Mensaje.Error}|{Mensaje.Excepcion}"));
            }
        }
        public async Task <IActionResult> Manage(Maquina maquina)
        {
            try
            {
                ViewBag.accion = maquina.MaquinaId == 0 ? "Crear" : "Editar";
                if (ModelState.IsValid)
                {
                    var existeRegistro = false;
                    if (maquina.MaquinaId == 0)
                    {
                        if (!await db.Maquina.AnyAsync(c => c.NombreMaquina.ToUpper().Trim() == maquina.NombreMaquina.ToUpper().Trim()))
                        {
                            await db.AddAsync(maquina);
                        }

                        else
                        {
                            existeRegistro = true;
                        }
                    }
                    else
                    {
                        if (!await db.Maquina.Where(c => c.NombreMaquina.ToUpper().Trim() == maquina.NombreMaquina.ToUpper().Trim()).AnyAsync(c => c.MaquinaId != maquina.MaquinaId))
                        {
                            var CurrentMaquina = await db.Maquina.Where(x => x.MaquinaId == maquina.MaquinaId).FirstOrDefaultAsync();

                            CurrentMaquina.NombreMaquina = maquina.NombreMaquina;
                        }
                        else
                        {
                            existeRegistro = true;
                        }
                    }
                    if (!existeRegistro)
                    {
                        await db.SaveChangesAsync();

                        return(this.Redireccionar($"{Mensaje.MensajeSatisfactorio}|{Mensaje.Satisfactorio}"));
                    }
                    else
                    {
                        TempData["Mensaje"] = $"{Mensaje.Error}|{Mensaje.ExisteRegistro}";
                    }
                    return(View(maquina));
                }

                return(View(maquina));
            }
            catch (Exception)
            {
                return(this.Redireccionar($"{Mensaje.Error}|{Mensaje.Excepcion}"));
            }
        }
Esempio n. 8
0
        public async Task <IActionResult> Manage(Pais Pais)
        {
            try
            {
                ViewBag.accion = Pais.PaisId == 0 ? "Crear" : "Editar";
                if (ModelState.IsValid)
                {
                    var existeRegistro = false;
                    if (Pais.PaisId == 0)
                    {
                        if (!await db.Pais.AnyAsync(c => c.DescripcionPais.ToUpper().Trim() == Pais.DescripcionPais.ToUpper().Trim()))
                        {
                            await db.AddAsync(Pais);
                        }

                        else
                        {
                            existeRegistro = true;
                        }
                    }
                    else
                    {
                        if (!await db.Pais.Where(c => c.DescripcionPais.ToUpper().Trim() == Pais.DescripcionPais.ToUpper().Trim()).AnyAsync(c => c.PaisId != Pais.PaisId))
                        {
                            var CurrentPais = await db.Pais.Where(x => x.PaisId == Pais.PaisId).FirstOrDefaultAsync();

                            CurrentPais.DescripcionPais = Pais.DescripcionPais;
                        }
                        else
                        {
                            existeRegistro = true;
                        }
                    }
                    if (!existeRegistro)
                    {
                        await db.SaveChangesAsync();

                        return(this.Redireccionar($"{Mensaje.MensajeSatisfactorio}|{Mensaje.Satisfactorio}"));
                    }
                    else
                    {
                        TempData["Mensaje"] = $"{Mensaje.Error}|{Mensaje.ExisteRegistro}";
                    }
                    return(View(Pais));
                }

                return(View(Pais));
            }
            catch (Exception)
            {
                return(this.Redireccionar($"{Mensaje.Error}|{Mensaje.Excepcion}"));
            }
        }
Esempio n. 9
0
        public async Task <IActionResult> Aprobar(AprobarAnalisisViewModel analisis)
        {
            using (var transaction = db.Database.BeginTransaction())
            {
                try
                {
                    var analisisActualizar = await db.Analisis.Where(x => x.AnalisisId == analisis.AnalisisId).FirstOrDefaultAsync();

                    if (analisisActualizar == null)
                    {
                        return(this.Redireccionar($"{Mensaje.Error}|{Mensaje.RegistroNoEncontrado}"));
                    }

                    analisisActualizar.ObservacionesAprobado = analisis.ObservacionesAprobado;
                    db.Analisis.Update(analisisActualizar);


                    var totalDetalleAnalisis = await db.DetalleAnalisis.Where(x => x.AnalisisId == analisis.AnalisisId && x.Aprobado == false).ToListAsync();


                    analisisActualizar.Resultado = totalDetalleAnalisis.Count == analisis.AnalisisAprobados?.Count ? "CUMPLE" : "NO CUMPLE";



                    var listaUpdate = new List <DetalleAnalisis>();
                    listaUpdate.AddRange(totalDetalleAnalisis);
                    foreach (var item in listaUpdate.Where(x => x.AprobadoSupervisor != -1))
                    {
                        item.AprobadoSupervisor = 0;
                    }

                    db.UpdateRange(listaUpdate);
                    await db.SaveChangesAsync();

                    if (analisis.AnalisisAprobados != null)
                    {
                        foreach (var item in analisis.AnalisisAprobados)
                        {
                            var detalleActualizar = await db.DetalleAnalisis.Where(x => x.DetalleAnalisisId == Convert.ToInt32(item)).FirstOrDefaultAsync();

                            detalleActualizar.AprobadoSupervisor = 1;
                            db.DetalleAnalisis.Update(detalleActualizar);
                            await db.SaveChangesAsync();
                        }
                    }



                    transaction.Commit();
                    return(this.Redireccionar($"{Mensaje.MensajeSatisfactorio}|{Mensaje.Satisfactorio}"));
                }
                catch (Exception)
                {
                    transaction.Rollback();
                    return(this.Redireccionar($"{Mensaje.Error}|{Mensaje.Excepcion}"));
                }
            }
        }
        public async Task <IActionResult> Especificaciones(TipoMaterialEspecificacionViewModel tipoMaterialEspecificacion)
        {
            try
            {
                await cargarListaEspecificacionesViewData();

                var existeRegistro = false;

                if (!await db.TipoMaterialEspecificacion.AnyAsync(c => c.EspecificacionId == tipoMaterialEspecificacion.EspecificacionId && c.TipoMaterialId == tipoMaterialEspecificacion.TipoMaterialId))
                {
                    var p = new TipoMaterialEspecificacion
                    {
                        TipoMaterialId   = tipoMaterialEspecificacion.TipoMaterialId,
                        EspecificacionId = tipoMaterialEspecificacion.EspecificacionId,
                    };
                    await db.AddAsync(p);
                }
                else
                {
                    existeRegistro = true;
                }

                if (!existeRegistro)
                {
                    await db.SaveChangesAsync();

                    TempData["Mensaje"] = $"{Mensaje.Informacion}|{Mensaje.Satisfactorio}";
                    return(View(await ObtenerTipoMaterialEspecificacion(tipoMaterialEspecificacion.TipoMaterialId, null)));
                }
                else
                {
                    TempData["Mensaje"] = $"{Mensaje.Error}|{Mensaje.ExisteRegistro}";
                }

                return(View(await ObtenerTipoMaterialEspecificacion(tipoMaterialEspecificacion.TipoMaterialId, tipoMaterialEspecificacion)));
            }
            catch (Exception)
            {
                return(this.Redireccionar($"{Mensaje.Error}|{Mensaje.Excepcion}"));
            }
        }
        public async Task <JsonResult> ActualizarStock(int id, decimal valor, int signo)
        {
            var material = await db.Material.Where(x => x.MaterialId == id).FirstOrDefaultAsync();

            if (signo < 0)
            {
                if (material.StockDisponible < Convert.ToDecimal(valor))
                {
                    return(Json(-1));
                }
            }

            material.StockDisponible = material.StockDisponible + Convert.ToDecimal(valor) * Convert.ToDecimal(signo);
            await db.SaveChangesAsync();

            var materialSalida = await GetMaterial(material.MaterialId);

            return(Json(materialSalida));
        }
Esempio n. 12
0
        public async Task <bool> UploadFiles(DocumentoTransfer documentoTransfer)
        {
            try
            {
                string extensionFile = FileExtension(documentoTransfer.Nombre);
                await UploadFile(documentoTransfer.Fichero, Mensaje.CarpetaDocumento, $"{documentoTransfer.IdRequisito}{extensionFile}");

                var seleccionado = await db.Certificado.FindAsync(documentoTransfer.IdRequisito);

                seleccionado.FileUrl = $"{Mensaje.CarpetaDocumento}/{documentoTransfer.IdRequisito}{extensionFile}";
                db.Certificado.Update(seleccionado);
                await db.SaveChangesAsync();

                return(true);
            }
            catch (Exception ex)
            {
                Debug.Write(ex.Message);
            }
            return(false);
        }
Esempio n. 13
0
        public async Task <bool> ValidarNumeroOrden(string[] ListaDetalle, DateTime fecha, int certificadoId)
        {
            if (ListaDetalle.Length > 0)
            {
                var fechaActual = fecha.AddDays(Constantes.DiasEvaluarOrdenCertificado * -1);
                var listaFechas = new List <DateTime>();
                foreach (var item in ListaDetalle)
                {
                    var registro = await db.Analisis.Where(x => x.NumeroOrden == item).OrderBy(x => x.FechaAnalisis).FirstOrDefaultAsync();

                    listaFechas.Add(registro.FechaAnalisis.Date);
                }

                var FechaMasAntigua   = listaFechas.OrderBy(x => x.Date).FirstOrDefault();;
                var certificadoUpdate = await db.Certificado.Where(x => x.CertificadoId == certificadoId).FirstOrDefaultAsync();

                if (fechaActual > FechaMasAntigua)
                {
                    if (!certificadoUpdate.Liberado.Value)
                    {
                        certificadoUpdate.Liberado = false;
                        await db.SaveChangesAsync();
                    }


                    return(false);
                }

                certificadoUpdate.Liberado = true;
                await db.SaveChangesAsync();

                return(true);
            }

            return(false);
        }
        public async Task <IActionResult> Especificaciones(ProductoEspecificacionViewModel productoEspecificacion)
        {
            try
            {
                await cargarListaEspecificacionesViewData();


                var existeRegistro = false;

                if (!await db.ProductoEspecificacion.AnyAsync(c => c.EspecificacionId == productoEspecificacion.EspecificacionId && c.ProductoId == productoEspecificacion.ProductoId))
                {
                    var especificacion = await db.Especificacion.Where(x => x.EspecificacionId == productoEspecificacion.EspecificacionId).FirstOrDefaultAsync();

                    var p = new ProductoEspecificacion
                    {
                        ProductoId       = productoEspecificacion.ProductoId,
                        EspecificacionId = productoEspecificacion.EspecificacionId,
                    };

                    switch (especificacion.TipoEspecificacion)
                    {
                    case "Rango":
                        if (productoEspecificacion.RangoMinimo == null && productoEspecificacion.RangoMaximo == null)
                        {
                            TempData["Mensaje"] = $"{Mensaje.Error}|{Mensaje.DebeIntroducirAlMenosUnRango}";
                            return(View(await ObtenerProductoEspecificacion(productoEspecificacion.ProductoId, productoEspecificacion)));
                        }
                        if (productoEspecificacion.RangoMinimo > productoEspecificacion.RangoMaximo)
                        {
                            TempData["Mensaje"] = $"{Mensaje.Error}|{Mensaje.RangoMinimoMayorRangoMaximo}";
                            return(View(await ObtenerProductoEspecificacion(productoEspecificacion.ProductoId, productoEspecificacion)));
                        }
                        p.RangoMaximo = productoEspecificacion.RangoMaximo;
                        p.RangoMinimo = productoEspecificacion.RangoMinimo;
                        break;

                    case "Texto":
                        p.ValorEsperado = productoEspecificacion.ValorEsperado;
                        break;

                    case "Número":
                        p.ValorEsperadoNum = productoEspecificacion.ValorEsperadoNum;
                        break;

                    case "Bit":
                        p.ValorEsperado = "CUMPLE";
                        break;
                    }
                    await db.AddAsync(p);
                }
                else
                {
                    existeRegistro = true;
                }

                if (!existeRegistro)
                {
                    await db.SaveChangesAsync();

                    TempData["Mensaje"] = $"{Mensaje.MensajeSatisfactorio}|{Mensaje.Satisfactorio}";
                    return(View(await ObtenerProductoEspecificacion(productoEspecificacion.ProductoId, null)));
                }
                else
                {
                    TempData["Mensaje"] = $"{Mensaje.Error}|{Mensaje.ExisteRegistro}";
                }

                return(View(await ObtenerProductoEspecificacion(productoEspecificacion.ProductoId, productoEspecificacion)));
            }
            catch (Exception)
            {
                return(this.Redireccionar($"{Mensaje.Error}|{Mensaje.Excepcion}"));
            }
        }