public List <CabeceraEvaluacionLomosMigasViewModel> ConsultarCabReportes(DateTime FechaDesde, DateTime FechaHasta) { using (var db = new ASIS_PRODEntities()) { clsDApiOrdenFabricacion = new clsDApiOrdenFabricacion(); var respuesta = (from x in db.CC_EVALUACION_LOMO_MIGA_BANDEJA_CABECERA join cl in db.CLASIFICADOR on new { Codigo = x.NivelLimpieza, Grupo = "008", EstadoRegistro = clsAtributos.EstadoRegistroActivo } equals new { cl.Codigo, cl.Grupo, cl.EstadoRegistro } join d in db.CC_EVALUACION_LOMO_MIGA_BANDEJA_DETALLE on new { IdCabeceraEvaluacionLomosYMigasEnBandeja = x.IdEvaluacionDeLomosYMigasEnBandejas, EstadoRegistro = clsAtributos.EstadoRegistroActivo } equals new { d.IdCabeceraEvaluacionLomosYMigasEnBandeja, d.EstadoRegistro } join clt in db.CLASIFICADOR on new { Codigo = x.Turno, EstadoRegistro = clsAtributos.EstadoRegistroActivo, Grupo = clsAtributos.GrupoCodTurno } equals new { clt.Codigo, clt.EstadoRegistro, clt.Grupo } where x.EstadoRegistro == clsAtributos.EstadoRegistroActivo && (x.FechaProduccion >= FechaDesde && x.FechaProduccion <= FechaHasta) && cl.Codigo != "0" select new CabeceraEvaluacionLomosMigasViewModel { Cliente = x.Cliente, Empaque = x.Empaque, Enlatado = x.Enlatado, EstadoControl = x.EstadoControl, EstadoRegistro = x.EstadoRegistro, FechaIngresoLog = x.FechaIngresoLog, FechaModificacionLog = x.FechaModificacionLog, FechaProduccion = x.FechaProduccion, IdEvaluacionDeLomosYMigasEnBandejas = x.IdEvaluacionDeLomosYMigasEnBandejas, Lomo = x.Lomo, Miga = x.Miga, NivelLimpieza = x.NivelLimpieza, Observacion = x.Observacion, OrdenFabricacion = x.OrdenFabricacion, Pouch = x.Pouch, TerminalIngresoLog = x.TerminalIngresoLog, TerminalModificacionLog = x.TerminalModificacionLog, UsuarioIngresoLog = x.UsuarioIngresoLog, UsuarioModificacionLog = x.UsuarioModificacionLog, NivelLimpiezaDescripcion = cl.Descripcion, AprobadoPor = x.AprobadoPor, FechaAprobacion = x.FechaAprobacion, Turno = clt.Descripcion }).Distinct().ToList(); if (respuesta.Count > 0) { List <OrdenFabricacionAvance> DatosOrdenes = clsDApiOrdenFabricacion.ConsultaDatosLotePorRangoFecha( respuesta.Select(f => f.FechaProduccion).Min().Value, respuesta.Select(f => f.FechaProduccion).Max().Value) .Select(x => new OrdenFabricacionAvance { Fecha = x.Fecha, OrdenFabricacion = x.OrdenFabricacion, Cliente = x.Cliente }).Distinct().ToList(); foreach (var item in respuesta) { var buscarOrden = DatosOrdenes.FirstOrDefault(x => x.OrdenFabricacion == item.OrdenFabricacion); if (buscarOrden != null) { item.Cliente = string.IsNullOrEmpty(buscarOrden.Cliente) ? item.Cliente : buscarOrden.Cliente; } else { string cliente = clsDApiOrdenFabricacion.ConsultaOrdenFabricacionPorFechaConsumoInsumo(item.OrdenFabricacion.Value.ToString()).FirstOrDefault().CLIENTE; item.Cliente = string.IsNullOrEmpty(cliente) ? item.Cliente : cliente; } } } return(respuesta); } }
// GET: General //PRDOCUTO TERMINADO public JsonResult ConsultarOFNivel1(DateTime Fecha) { try { lsUsuario = User.Identity.Name.Split('_'); if (string.IsNullOrEmpty(lsUsuario[0])) { return(Json("101", JsonRequestBehavior.AllowGet)); } clsDApiOrdenFabricacion = new clsDApiOrdenFabricacion(); var ordenes = clsDApiOrdenFabricacion.ConsultaOrdenFabricacionPorFechaProductoTerminado(Fecha); return(Json(ordenes, JsonRequestBehavior.AllowGet)); } catch (DbEntityValidationException e) { Response.StatusCode = (int)HttpStatusCode.InternalServerError; clsDError = new clsDError(); lsUsuario = User.Identity.Name.Split('_'); string Mensaje = clsDError.ControlError(lsUsuario[0], Request.UserHostAddress, this.ControllerContext.RouteData.Values["controller"].ToString(), "Metodo: " + this.ControllerContext.RouteData.Values["action"].ToString(), null, e); return(Json(Mensaje, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { Response.StatusCode = (int)HttpStatusCode.InternalServerError; clsDError = new clsDError(); lsUsuario = User.Identity.Name.Split('_'); string Mensaje = clsDError.ControlError(lsUsuario[0], Request.UserHostAddress, this.ControllerContext.RouteData.Values["controller"].ToString(), "Metodo: " + this.ControllerContext.RouteData.Values["action"].ToString(), ex, null); return(Json(Mensaje, JsonRequestBehavior.AllowGet)); } }
//PRODUCTO CONGELADO LOMOS - DATOS OF public JsonResult ConsultarDatosOFNivel3(DateTime Fecha) { try { clsDApiOrdenFabricacion = new clsDApiOrdenFabricacion(); dynamic result = clsDApiOrdenFabricacion.ConsultaOFNivel3(Fecha); List <OrdenFabricacion> Listado = new List <OrdenFabricacion>(); foreach (var x in result) { Listado.Add(new OrdenFabricacion { Orden = x.ORDEN_FABRICACION }); } return(Json(Listado, JsonRequestBehavior.AllowGet)); } catch (DbEntityValidationException e) { Response.StatusCode = (int)HttpStatusCode.InternalServerError; clsDError = new clsDError(); lsUsuario = User.Identity.Name.Split('_'); string Mensaje = clsDError.ControlError(lsUsuario[0], Request.UserHostAddress, this.ControllerContext.RouteData.Values["controller"].ToString(), "Metodo: " + this.ControllerContext.RouteData.Values["action"].ToString(), null, e); return(Json(Mensaje, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { Response.StatusCode = (int)HttpStatusCode.InternalServerError; clsDError = new clsDError(); lsUsuario = User.Identity.Name.Split('_'); string Mensaje = clsDError.ControlError(lsUsuario[0], Request.UserHostAddress, this.ControllerContext.RouteData.Values["controller"].ToString(), "Metodo: " + this.ControllerContext.RouteData.Values["action"].ToString(), ex, null); return(Json(Mensaje, JsonRequestBehavior.AllowGet)); } }
public ActionResult MapeoProductoTunel(MAPEO_PRODUCTO_TUNEL model) { try { lsUsuario = User.Identity.Name.Split('_'); if (string.IsNullOrEmpty(lsUsuario[0])) { return(Json("101", JsonRequestBehavior.AllowGet)); } if (model.OrdenFabricacion == 0 || string.IsNullOrEmpty(model.Lote)) { return(Json("0", JsonRequestBehavior.AllowGet)); } clsDMapeoProductoTunel = new clsDMapeoProductoTunel(); clsDApiOrdenFabricacion = new clsDApiOrdenFabricacion(); var lotes = clsDApiOrdenFabricacion.ConsultaLotesPorOF(model.OrdenFabricacion); if (lotes == null) { return(Json("102", JsonRequestBehavior.AllowGet)); } var lote = lotes.FirstOrDefault(x => x.Lote == model.Lote); if (lote == null) { return(Json("102", JsonRequestBehavior.AllowGet)); } model.PesoProducto = lote.Peso; //model.TipoLimpieza = lote.Limpieza; model.Barco = lote.Barco; model.Talla = lote.Talla; model.FechaIngresoLog = DateTime.Now; model.TerminalIngresoLog = Request.UserHostAddress; model.UsuarioIngresoLog = lsUsuario[0]; model.EstadoRegistro = clsAtributos.EstadoRegistroActivo; clsDMapeoProductoTunel.GuardarModificarControl(model); return(Json("Registro Exitoso", JsonRequestBehavior.AllowGet)); } catch (DbEntityValidationException e) { Response.StatusCode = (int)HttpStatusCode.InternalServerError; clsDError = new clsDError(); lsUsuario = User.Identity.Name.Split('_'); string Mensaje = clsDError.ControlError(lsUsuario[0], Request.UserHostAddress, this.ControllerContext.RouteData.Values["controller"].ToString(), "Metodo: " + this.ControllerContext.RouteData.Values["action"].ToString(), null, e); return(Json(Mensaje, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { Response.StatusCode = (int)HttpStatusCode.InternalServerError; clsDError = new clsDError(); lsUsuario = User.Identity.Name.Split('_'); string Mensaje = clsDError.ControlError(lsUsuario[0], Request.UserHostAddress, this.ControllerContext.RouteData.Values["controller"].ToString(), "Metodo: " + this.ControllerContext.RouteData.Values["action"].ToString(), ex, null); return(Json(Mensaje, JsonRequestBehavior.AllowGet)); } }
public JsonResult ConsultarOrdenesFabricacion(DateTime Fecha, string Orden) { try { lsUsuario = User.Identity.Name.Split('_'); if (string.IsNullOrEmpty(lsUsuario[0])) { return(Json("101", JsonRequestBehavior.AllowGet)); } clsDApiOrdenFabricacion = new clsDApiOrdenFabricacion(); List <OrdenFabricacionAutoclave> result = clsDApiOrdenFabricacion.ConsultaOrdenFabricacionPorFechaAutoclave(Fecha); if (!result.Any()) { return(Json("0", JsonRequestBehavior.AllowGet)); } //else //{ // clsDControlHoraMaquina = new clsDControlHoraMaquina(); // var ordenesUsadas = clsDControlHoraMaquina.ConsultarControlAutoclave(Fecha,"0").Select(x => x.OrdenFabricacion).ToList(); // result = result.Where(x => !ordenesUsadas.Contains(x.ORDEN_FABRICACION)).ToList(); //} if (!string.IsNullOrEmpty(Orden)) { result = result.Where(x => x.ORDEN_FABRICACION == Orden).ToList(); } return(Json(result, JsonRequestBehavior.AllowGet)); } catch (DbEntityValidationException e) { Response.StatusCode = (int)HttpStatusCode.InternalServerError; clsDError = new clsDError(); lsUsuario = User.Identity.Name.Split('_'); string Mensaje = clsDError.ControlError(lsUsuario[0], Request.UserHostAddress, this.ControllerContext.RouteData.Values["controller"].ToString(), "Metodo: " + this.ControllerContext.RouteData.Values["action"].ToString(), null, e); return(Json(Mensaje, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { Response.StatusCode = (int)HttpStatusCode.InternalServerError; clsDError = new clsDError(); lsUsuario = User.Identity.Name.Split('_'); string Mensaje = clsDError.ControlError(lsUsuario[0], Request.UserHostAddress, this.ControllerContext.RouteData.Values["controller"].ToString(), "Metodo: " + this.ControllerContext.RouteData.Values["action"].ToString(), ex, null); return(Json(Mensaje, JsonRequestBehavior.AllowGet)); } }
public ActionResult MapeoProductoTunelDetalle(MAPEO_PRODUCTO_TUNEL_DETALLE model) { try { lsUsuario = User.Identity.Name.Split('_'); if (string.IsNullOrEmpty(lsUsuario[0])) { return(Json("101", JsonRequestBehavior.AllowGet)); } if (model.IdMapeoProductoTunel == 0 || string.IsNullOrEmpty(model.Producto)) { return(Json("0", JsonRequestBehavior.AllowGet)); } clsDMapeoProductoTunel = new clsDMapeoProductoTunel(); clsDApiOrdenFabricacion = new clsDApiOrdenFabricacion(); model.Producto = model.Producto.ToUpper(); model.FechaIngresoLog = DateTime.Now; model.TerminalIngresoLog = Request.UserHostAddress; model.UsuarioIngresoLog = lsUsuario[0]; model.EstadoRegistro = clsAtributos.EstadoRegistroActivo; clsDMapeoProductoTunel.GuardarModificarControlDetalle(model); return(Json("Registro Exitoso", JsonRequestBehavior.AllowGet)); } catch (DbEntityValidationException e) { Response.StatusCode = (int)HttpStatusCode.InternalServerError; clsDError = new clsDError(); lsUsuario = User.Identity.Name.Split('_'); string Mensaje = clsDError.ControlError(lsUsuario[0], Request.UserHostAddress, this.ControllerContext.RouteData.Values["controller"].ToString(), "Metodo: " + this.ControllerContext.RouteData.Values["action"].ToString(), null, e); return(Json(Mensaje, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { Response.StatusCode = (int)HttpStatusCode.InternalServerError; clsDError = new clsDError(); lsUsuario = User.Identity.Name.Split('_'); string Mensaje = clsDError.ControlError(lsUsuario[0], Request.UserHostAddress, this.ControllerContext.RouteData.Values["controller"].ToString(), "Metodo: " + this.ControllerContext.RouteData.Values["action"].ToString(), ex, null); return(Json(Mensaje, JsonRequestBehavior.AllowGet)); } }
/// <summary> /// PARA EL CONTROL DE AVANCE EN LA SALA DE PROCESO /// </summary> /// <param name="Orden"></param> /// <returns></returns> public JsonResult ConsultarLotesPorLinea(int Orden) { try { lsUsuario = User.Identity.Name.Split('_'); if (string.IsNullOrEmpty(lsUsuario[0])) { return(Json("101", JsonRequestBehavior.AllowGet)); } clsDEmpleado = new clsDEmpleado(); var Linea = clsDEmpleado.ConsultaEmpleado(lsUsuario[1]).FirstOrDefault(); clsDApiOrdenFabricacion = new clsDApiOrdenFabricacion(); dynamic result = clsDApiOrdenFabricacion.ConsultaLotesPorOrdenFabricacionLinea(Orden, Linea.CODIGOLINEA); List <ClasificadorGenerico> Listado = new List <ClasificadorGenerico>(); foreach (var x in result) { Listado.Add(new ClasificadorGenerico { descripcion = x.Lote }); } return(Json(Listado, JsonRequestBehavior.AllowGet)); } catch (DbEntityValidationException e) { Response.StatusCode = (int)HttpStatusCode.InternalServerError; clsDError = new clsDError(); lsUsuario = User.Identity.Name.Split('_'); string Mensaje = clsDError.ControlError(lsUsuario[0], Request.UserHostAddress, this.ControllerContext.RouteData.Values["controller"].ToString(), "Metodo: " + this.ControllerContext.RouteData.Values["action"].ToString(), null, e); return(Json(Mensaje, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { Response.StatusCode = (int)HttpStatusCode.InternalServerError; clsDError = new clsDError(); lsUsuario = User.Identity.Name.Split('_'); string Mensaje = clsDError.ControlError(lsUsuario[0], Request.UserHostAddress, this.ControllerContext.RouteData.Values["controller"].ToString(), "Metodo: " + this.ControllerContext.RouteData.Values["action"].ToString(), ex, null); return(Json(Mensaje, JsonRequestBehavior.AllowGet)); } }
public JsonResult ConsultarDatosOrdenFabricacion(string Orden) { try { lsUsuario = User.Identity.Name.Split('_'); if (string.IsNullOrEmpty(lsUsuario[0])) { return(Json("101", JsonRequestBehavior.AllowGet)); } if (string.IsNullOrEmpty(Orden)) { return(Json("0", JsonRequestBehavior.AllowGet)); } clsDApiOrdenFabricacion = new clsDApiOrdenFabricacion(); OrdenFabricacionConsumoInsumo result = new OrdenFabricacionConsumoInsumo(); result = clsDApiOrdenFabricacion.ConsultaOrdenFabricacionPorFechaConsumoInsumo(Orden).FirstOrDefault(); if (result == null) { return(Json("1", JsonRequestBehavior.AllowGet)); } return(Json(result, JsonRequestBehavior.AllowGet)); } catch (DbEntityValidationException e) { Response.StatusCode = (int)HttpStatusCode.InternalServerError; clsDError = new clsDError(); lsUsuario = User.Identity.Name.Split('_'); string Mensaje = clsDError.ControlError(lsUsuario[0], Request.UserHostAddress, this.ControllerContext.RouteData.Values["controller"].ToString(), "Metodo: " + this.ControllerContext.RouteData.Values["action"].ToString(), null, e); return(Json(Mensaje, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { Response.StatusCode = (int)HttpStatusCode.InternalServerError; clsDError = new clsDError(); lsUsuario = User.Identity.Name.Split('_'); string Mensaje = clsDError.ControlError(lsUsuario[0], Request.UserHostAddress, this.ControllerContext.RouteData.Values["controller"].ToString(), "Metodo: " + this.ControllerContext.RouteData.Values["action"].ToString(), ex, null); return(Json(Mensaje, JsonRequestBehavior.AllowGet)); } }
public void GenerarRendimientoOrdenesApi(DateTime FechaDesde, DateTime FechaHasta) { using (ASIS_PRODEntities entities = new ASIS_PRODEntities()) { List <CONTROL_AVANCE_API> ListadoControlAvanceApi = new List <CONTROL_AVANCE_API>(); clsDApiOrdenFabricacion = new clsDApiOrdenFabricacion(); var ordendesFabricacion = (from p in entities.PROYECCION_PROGRAMACION join d in entities.PROYECCION_PROGRAMACION_DETALLE on p.IdProyeccionProgramacion equals d.IdProyeccionProgramacion where p.FechaProduccion >= FechaDesde && p.FechaProduccion <= FechaHasta && p.EstadoRegistro == clsAtributos.EstadoRegistroActivo select new { d.OrdenFabricacion }).Distinct().ToList(); //recorrer las ordenes de fabricacion para actualizar los datos o agregar. foreach (var orden in ordendesFabricacion) { int x = int.Parse(orden.OrdenFabricacion.ToString()); var ListaLotes = clsDApiOrdenFabricacion.ConsultaLotesPorOFCompleto(x); foreach (var detalle in ListaLotes) { var modelControlAvanceApi = entities.CONTROL_AVANCE_API.FirstOrDefault(y => y.OrdenFabricacion == x && y.Lote == detalle.Lote); if (modelControlAvanceApi == null) { if (!ListadoControlAvanceApi.Any(lista => lista.OrdenFabricacion == x && lista.Lote == detalle.Lote)) { ListadoControlAvanceApi.Add(new CONTROL_AVANCE_API { OrdenFabricacion = x, Limpieza = detalle.Limpieza, Lote = detalle.Lote, Peso = detalle.Peso != null ? int.Parse(double.Parse(detalle.Peso).ToString()) : 0, Piezas = detalle.Piezas != null ? int.Parse(double.Parse(detalle.Piezas).ToString()) : 0, Talla = detalle.Talla, Promedio = detalle.Promedio != null ? decimal.Parse(detalle.Promedio) : 0, Especie = detalle.Especie, Producto = detalle.Producto, LomoReal = detalle.Lomos, MigaReal = detalle.Migas }); } } else { modelControlAvanceApi.Promedio = detalle.Promedio != null?decimal.Parse(detalle.Promedio) : 0; modelControlAvanceApi.Talla = detalle.Talla; modelControlAvanceApi.LomoReal = detalle.Lomos; modelControlAvanceApi.MigaReal = detalle.Migas; modelControlAvanceApi.Especie = detalle.Especie; modelControlAvanceApi.Lote = detalle.Lote; modelControlAvanceApi.Limpieza = detalle.Limpieza; modelControlAvanceApi.Peso = detalle.Peso != null?int.Parse(double.Parse(detalle.Peso).ToString()) : 0; modelControlAvanceApi.Piezas = detalle.Piezas != null?int.Parse(double.Parse(detalle.Piezas).ToString()) : 0; } } } if (ListadoControlAvanceApi.Any()) { entities.CONTROL_AVANCE_API.AddRange(ListadoControlAvanceApi.Distinct()); } entities.SaveChanges(); } }
public void GenerarAvanceOrdenesApi2(DateTime FechaDesde, DateTime?FechaHasta) { using (ASIS_PRODEntities entities = new ASIS_PRODEntities()) { if (FechaHasta == null) { FechaHasta = FechaDesde; } List <CONTROL_AVANCE_API> ListadoControlAvanceApi = new List <CONTROL_AVANCE_API>(); clsDApiOrdenFabricacion = new clsDApiOrdenFabricacion(); var ordendesFabricacion = entities.CONTROL_HUESO.Where(x => x.Fecha >= FechaDesde && x.Fecha <= FechaHasta && x.EstadoRegistro == clsAtributos.EstadoRegistroActivo).Select(x => x.OrdenFabricacion).Distinct(); //Consulta de servicio var detalleOrden = clsDApiOrdenFabricacion.ConsultaDatosLotePorRangoFecha(FechaDesde, FechaHasta ?? FechaDesde); //recorrer las ordenes de fabricacion para actualizar los datos o agregar. foreach (int x in ordendesFabricacion) { var ListaLotes = detalleOrden.Where(o => o.OrdenFabricacion == x).ToList(); if (ListaLotes == null || ListaLotes.Count == 0) { ListaLotes = clsDApiOrdenFabricacion.ConsultaLotesPorOFCompleto(x); } foreach (var detalle in ListaLotes) { var modelControlAvanceApi = entities.CONTROL_AVANCE_API.FirstOrDefault(y => y.OrdenFabricacion == x && y.Lote == detalle.Lote); if (modelControlAvanceApi == null) { if (!ListadoControlAvanceApi.Any(lista => lista.OrdenFabricacion == x && lista.Lote == detalle.Lote)) { ListadoControlAvanceApi.Add(new CONTROL_AVANCE_API { OrdenFabricacion = x, Limpieza = detalle.Limpieza, Lote = detalle.Lote, Peso = detalle.Peso != null ? int.Parse(double.Parse(detalle.Peso).ToString()) : 0, Piezas = detalle.Piezas != null ? int.Parse(double.Parse(detalle.Piezas).ToString()) : 0, Talla = detalle.Talla, Promedio = detalle.Promedio != null ? decimal.Parse(detalle.Promedio) : 0, Especie = detalle.Especie, Producto = detalle.Producto, LomoReal = detalle.Lomos, MigaReal = detalle.Migas }); } } else { modelControlAvanceApi.Promedio = detalle.Promedio != null?decimal.Parse(detalle.Promedio) : 0; modelControlAvanceApi.Talla = detalle.Talla; modelControlAvanceApi.LomoReal = detalle.Lomos; modelControlAvanceApi.MigaReal = detalle.Migas; modelControlAvanceApi.Especie = detalle.Especie; modelControlAvanceApi.Lote = detalle.Lote; modelControlAvanceApi.Limpieza = detalle.Limpieza; modelControlAvanceApi.Peso = detalle.Peso != null?int.Parse(double.Parse(detalle.Peso).ToString()) : 0; modelControlAvanceApi.Piezas = detalle.Piezas != null?int.Parse(double.Parse(detalle.Piezas).ToString()) : 0; } } } if (ListadoControlAvanceApi.Any()) { entities.CONTROL_AVANCE_API.AddRange(ListadoControlAvanceApi.Distinct()); } entities.SaveChanges(); } }