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));
     }
 }
Beispiel #4
0
        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));
            }
        }
Beispiel #5
0
        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));
            }
        }
Beispiel #6
0
        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));
     }
 }
Beispiel #9
0
        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();
            }
        }
Beispiel #10
0
        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();
            }
        }