Esempio n. 1
0
        public ActionResult Create(int idAnalisisEmpleado, REPORTE reporte)
        {
            object result;

            try
            {
                if (!true)
                {
                    throw new Exception();
                }

                ANALISIS_EMPLEADO analisisEmpleado = db.ANALISIS_EMPLEADO.Find(idAnalisisEmpleado);

                reporte.id_analisis_empleado = analisisEmpleado.id_analisis_empleado;
                db.REPORTEs.Add(reporte);

                db.SaveChanges();

                result = new { valid = true };
            }
            catch (Exception e) {
                result = new { valid = false, msg = "Favor verifique los datos" };
            }
            return(Json(result));
        }
Esempio n. 2
0
        public ActionResult Create([Bind(Include = "Id,Servicio,Cliente,IVA,ISR,AHORRO,MESES,TOTAL")] REPORTE rEPORTE)
        {
            if (ModelState.IsValid)
            {
                CLIENTE cl = new CLIENTE();

                if (((cl.Total) <= 30000))
                {
                    rEPORTE.ISR = ((cl.Total) * 5) / 100;
                }
                else if (((cl.Total) > 30000))
                {
                    rEPORTE.ISR = ((cl.Total) * 7) / 100;
                }

                rEPORTE.IVA    = ((cl.Total) * 12) / 100;
                rEPORTE.AHORRO = ((cl.Total) * 5) / 100;
                rEPORTE.TOTAL  = ((cl.Total) - (rEPORTE.IVA) - (rEPORTE.ISR) - (rEPORTE.AHORRO)) * rEPORTE.MESES;

                db.REPORTE.Add(rEPORTE);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.Cliente  = new SelectList(db.CLIENTE, "Id", "Nombre", rEPORTE.Cliente);
            ViewBag.Servicio = new SelectList(db.SERVICIO, "Id", "Id", rEPORTE.Servicio);
            return(View(rEPORTE));
        }
Esempio n. 3
0
        public ActionResult DeleteConfirmed(int id)
        {
            REPORTE rEPORTE = db.REPORTE.Find(id);

            db.REPORTE.Remove(rEPORTE);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Esempio n. 4
0
        public ActionResult ExportarCSV(int idSolicitud)
        {
            SOLICITUD solicitud = db.SOLICITUDs.Find(idSolicitud);

            string attachment = "attachment; filename=solicitud_" + solicitud.no_referencia + ".csv";

            Response.Clear();
            Response.ClearHeaders();
            Response.ClearContent();
            Response.AddHeader("content-disposition", attachment);
            Response.ContentType = "text/csv";
            Response.AddHeader("Pragma", "public");

            var           sb   = new StringBuilder();
            List <string> line = new List <string>();

            foreach (DETALLE_SOLICITUD detalle in solicitud.DETALLE_SOLICITUD)
            {
                line.Add(solicitud.no_referencia);
                line.Add(solicitud.fecha_inicio.Value.ToShortDateString());
                line.Add(solicitud.fecha_finalizacion.Value.ToShortDateString());
                line.Add(solicitud.VISITAs.First().SITIO_MUESTREO.nombre_sitio);
                line.Add(solicitud.VISITAs.First().SITIO_MUESTREO.lat.ToString());
                line.Add(solicitud.VISITAs.First().SITIO_MUESTREO.lng.ToString());

                List <DETALLE_VISITA> detalleVisita = solicitud.VISITAs.First().DETALLE_VISITA.ToList();

                foreach (DETALLE_VISITA visita in detalleVisita)
                {
                    line.Add(visita.MUESTRA.nombre_muestra + "(" + visita.MUESTRA.expresado + ")");
                    line.Add(visita.value.ToString());
                }

                line.Add(detalle.ANALISI.AREA.nombre_area);
                line.Add(detalle.ANALISIS_EMPLEADO.First().EMPLEADO.nombre_empleado);
                line.Add(detalle.ANALISI.nombre);

                REPORTE reporte = detalle.ANALISIS_EMPLEADO.First().REPORTEs.First();

                line.Add(reporte.resultado.ToString());
                line.Add(reporte.incerteza.ToString());
                line.Add(reporte.limite_deteccion.ToString());
                line.Add(reporte.metodo);
                line.Add(reporte.unidades);

                string lineString = string.Join(";", line.ToArray());
                line.Clear();

                sb.AppendLine(lineString);
            }

            Response.Write(sb.ToString());

            return(null);
        }
Esempio n. 5
0
 public ActionResult Edit([Bind(Include = "C_REPORTE,ID_SONDEO,ID_USUARIO,FECHA_REPORTE")] REPORTE rEPORTE)
 {
     if (ModelState.IsValid)
     {
         db.Entry(rEPORTE).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.ID_SONDEO = new SelectList(db.SONDEO, "ID_SONDEO", "DESCRIPCION", rEPORTE.ID_SONDEO);
     return(View(rEPORTE));
 }
Esempio n. 6
0
 public ActionResult Edit([Bind(Include = "Id,Cliente,IVA,ISR,AHORRO,MESES,TOTAL")] REPORTE rEPORTE)
 {
     if (ModelState.IsValid)
     {
         db.Entry(rEPORTE).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.Cliente = new SelectList(db.CLIENTE, "Id", "Nombre", rEPORTE.Cliente);
     return(View(rEPORTE));
 }
Esempio n. 7
0
        public ActionResult Editar(int idReporte)
        {
            //REPORTE reporte = detalle.ANALISIS_EMPLEADO.First().REPORTEs.First();
            REPORTE reporte = db.REPORTEs.Find(idReporte);

            ViewBag.Reporte = reporte;
            DETALLE_SOLICITUD detalle = db.DETALLE_SOLICITUD.Find(reporte.ANALISIS_EMPLEADO.id_detalle_solicitud);

            ViewBag.DetalleSol = detalle;
            return(PartialView(reporte));
        }
Esempio n. 8
0
        public ActionResult Editar(int idReporte, REPORTE postReporte)
        {
            object  result;
            REPORTE reporteF = db.REPORTEs.Find(idReporte);

            db.Entry(reporteF).CurrentValues.SetValues(postReporte);

            db.SaveChanges();
            result = new { valid = true };

            return(Json(result));
        }
Esempio n. 9
0
        // GET: REPORTE/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            REPORTE rEPORTE = db.REPORTE.Find(id);

            if (rEPORTE == null)
            {
                return(HttpNotFound());
            }
            return(View(rEPORTE));
        }
Esempio n. 10
0
        // GET: Reportes/Edit/5
        public ActionResult Edit(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            REPORTE rEPORTE = db.REPORTE.Find(id);

            if (rEPORTE == null)
            {
                return(HttpNotFound());
            }
            ViewBag.ID_SONDEO = new SelectList(db.SONDEO, "ID_SONDEO", "DESCRIPCION", rEPORTE.ID_SONDEO);
            return(View(rEPORTE));
        }
Esempio n. 11
0
        // GET: REPORTEs/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            REPORTE rEPORTE = db.REPORTE.Find(id);

            if (rEPORTE == null)
            {
                return(HttpNotFound());
            }
            ViewBag.Cliente = new SelectList(db.CLIENTE, "Id", "Nombre", rEPORTE.Cliente);
            return(View(rEPORTE));
        }
Esempio n. 12
0
        public ActionResult Create([Bind(Include = "Id,Nombre,Empresa,Fecha,Donacion,Pib,Ubicacion,Producto,Total")] CLIENTE cLIENTE)
        {
            //if (ModelState.IsValid)
            //{



            //    db.CLIENTE.Add(cLIENTE);
            //    db.SaveChanges();
            //    return RedirectToAction("Index");
            //}

            //ViewBag.Pib = new SelectList(db.PIB, "Id", "Id", cLIENTE.Pib);
            //ViewBag.Producto = new SelectList(db.PRODUCTO, "Id", "Descripcion", cLIENTE.Producto);
            //ViewBag.Ubicacion = new SelectList(db.UBICACION, "Id", "Id", cLIENTE.Ubicacion);
            //return View(cLIENTE);
            if (ModelState.IsValid)
            {
                using (var client = new HttpClient())
                {
                    client.BaseAddress = new Uri("http://localhost:52161/api/");
                    //HTTP Post
                    REPORTE rp = new REPORTE();
                    if (cLIENTE.Pib == 1)
                    {
                        cLIENTE.Total = ((cLIENTE.Donacion * 5) / 100);
                    }
                    else if (cLIENTE.Pib == 2)
                    {
                        cLIENTE.Total = ((cLIENTE.Donacion * 10) / 100);
                    }
                    cLIENTE.Fecha = DateTime.Now;
                    var postTask = client.PostAsJsonAsync <CLIENTE>("clienteapi", cLIENTE);
                    postTask.Wait();


                    var resul = postTask.Result;
                    if (resul.IsSuccessStatusCode)
                    {
                        return(RedirectToAction("Index"));
                    }
                }
                ModelState.AddModelError(string.Empty, "Error en la insercción,favor contacte al administrador");
            }
            return(RedirectToAction("Index"));
        }
Esempio n. 13
0
        public List <REPORTE> ObtenerReporte()
        {
            List <REPORTE> reporte  = new List <REPORTE>();
            var            consulta = _context.SP_REPORTES().ToList();

            foreach (var l in consulta)
            {
                REPORTE report = new REPORTE();
                report.CODIGO_BENEFICIARIO  = l.CODIGO_BENEFICIARIO;
                report.NOMBRE_SECTOR        = l.NOMBRE_SECTOR;
                report.COD_SECTOR_ECONOMICO = l.COD_SECTOR_ECONOMICO;
                report.NOMBRES                     = l.NOMBRES;
                report.APELLIDOS                   = l.APELLIDOS;
                report.nombre_formulador           = l.nombre_formulador;
                report.apellidos_formulador        = l.apellidos_formulador;
                report.NOMBRE_PROBLEMA             = l.NOMBRE_PROBLEMA;
                report.ID_ESTADO                   = l.ID_ESTADO_PROCESO;
                report.CODIGO_ESTADO               = l.CODIGO_ESTADO_PROCESO;
                report.DESCRIPCION_ESTADO_PROCESO  = l.DESCRIPCION_ESTADO_PROCESO;
                report.codigo_estado_proyecto      = l.codigo_estado_proyecto;
                report.descripcion_estado_proyecto = l.descripcion_estado_proyecto;
                report.MONTO = l.MONTO;
                report.ID_TIPO_INICIATIVA     = l.ID_TIPO_INICIATIVA;
                report.CODIGO_TIPO_INICIATIVA = l.CODIGO_TIPO_INICIATVA;
                report.NOMBRE       = l.NOMBRE;
                report.COD_PROYECTO = l.COD_PROYECTO;
                report.PRESUPUESTO_CONTRAPARTIDA       = l.PRESUPUESTO_CONTRAPARTIDA;
                report.nombres_consultor_vinculacion   = l.nombres_consultor_vinculacion;
                report.apellidos_consultor_vinculacion = l.apellidos_consultor_vinculacion;
                report.ID_SECTOR_ECONOMICO             = l.ID_SECTOR_ECONOMICO;
                report.ID_BENEFICIARIO          = l.ID_BENEFICIARIO;
                report.id_formulador            = l.id_persona_formulador;
                report.id_consultor_vinculacion = l.id_persona_consultor;
                report.FECHA = l.FECHA_CREA;
                reporte.Add(report);
            }
            return(reporte);
        }
Esempio n. 14
0
        public ActionResult CrearInforme(int idSolicitud)
        {
            Object result;

            SOLICITUD solicitud = db.SOLICITUDs.Find(idSolicitud);
            VISITA    visita    = solicitud.VISITAs.First();

            try
            {
                if (solicitud.id_estado != 3 || (solicitud.id_estado_proceso != 4 && solicitud.id_estado_proceso != 6))
                {
                    throw new Exception("No puede generar reportes con los estados actuales de la solicitud");
                }

                if (solicitud.id_estado_proceso == 6 && solicitud.fecha_finalizacion == null)
                {
                    solicitud.fecha_finalizacion = DateTime.Now;
                }

                var tipo = "O";
                if (solicitud.INFORMES.Count() > 0)
                {
                    tipo = "R";
                }

                var areas = solicitud.DETALLE_SOLICITUD.GroupBy(ds => ds.ANALISI.AREA).ToList();

                List <string>  areasInforme = new List <string>();
                List <INFORME> informes     = new List <INFORME>();

                foreach (var area in areas)
                {
                    if (area.Key.id_area < 4)
                    {
                        if (!areasInforme.Contains("FQAA"))
                        {
                            areasInforme.Add("FQAA");
                        }
                    }
                    else
                    {
                        if (!areasInforme.Contains("Bact"))
                        {
                            areasInforme.Add("Bact");
                        }
                    }
                }

                foreach (string areaInforme in areasInforme)
                {
                    List <Parametro> parametros = new List <Parametro>();
                    List <Resultado> resultados = new List <Resultado>();

                    foreach (DETALLE_VISITA detalleVisita in visita.DETALLE_VISITA)
                    {
                        Parametro parametro = new Parametro()
                        {
                            nombre    = detalleVisita.MUESTRA.nombre_muestra,
                            valor     = detalleVisita.value.ToString(),
                            expresado = detalleVisita.MUESTRA.expresado,
                        };

                        parametros.Add(parametro);
                    }

                    IEnumerable <LaboratorioMarn.DETALLE_SOLICITUD> detallesSolicitud = solicitud.DETALLE_SOLICITUD.ToList();

                    foreach (DETALLE_SOLICITUD detalle in detallesSolicitud)
                    {
                        REPORTE reporte = detalle.ANALISIS_EMPLEADO.First().REPORTEs.First();

                        Resultado resultado = new Resultado()
                        {
                            analisis        = detalle.ANALISI.nombre,
                            resultado       = reporte.resultado.ToString(),
                            incerteza       = reporte.incerteza.ToString(),
                            unidades        = reporte.unidades,
                            limiteDeteccion = reporte.limite_deteccion.ToString(),
                            metodo          = detalle.ANALISI.metodo
                        };

                        resultados.Add(resultado);
                    }

                    InformeSolicitud informeSolicitud = new InformeSolicitud()
                    {
                        tipo               = tipo,
                        numeroReferencia   = solicitud.no_referencia,
                        solicitante        = solicitud.SOLICITANTE.nombre_solicitante,
                        fechaInicio        = solicitud.fecha_inicio.Value.ToShortDateString(),
                        fechaFinalizacion  = solicitud.fecha_finalizacion.Value.ToShortDateString(),
                        direccion          = visita.SITIO_MUESTREO.direccion_sitio,
                        fechaTomaMuestra   = visita.fecha_visita.Value.ToString(),
                        fechaRecepcion     = visita.fecha_entrega.Value.ToShortDateString(),
                        responsableMuestra = visita.EMPLEADO.nombre_empleado,
                        tipoMuestra        = visita.TIPO_MUESTRA.nombre_tipo_muestra,
                        procedencia        = visita.PROCEDENCIA.nombre_procedencia,
                        areas              = areaInforme,
                        fechaGeneracion    = DateTime.Now.ToShortDateString(),
                        Parametros         = parametros,
                        Resultados         = resultados
                    };

                    string informeJson = JsonConvert.SerializeObject(informeSolicitud);

                    INFORME informe = new INFORME()
                    {
                        data           = informeJson,
                        fecha_creacion = DateTime.Now,
                        tipo           = tipo,
                        id_solicitud   = solicitud.id_solicitud,
                        areas          = areaInforme
                    };

                    solicitud.INFORMES.Add(informe);

                    informes.Add(informe);
                }

                solicitud.informe_generado  = 1;
                solicitud.id_estado_proceso = 5;

                foreach (PROCESO_ANALISTA procesoAnalista in solicitud.PROCESO_ANALISTA)
                {
                    procesoAnalista.id_estado_proceso_analista = 6;
                }

                db.SaveChanges();

                List <int> informesIds = new List <int>();

                foreach (INFORME informe in informes)
                {
                    informesIds.Add(informe.id_informe);
                }

                result = new { valid = true, informes = informesIds };
            }
            catch (Exception e)
            {
                result = new { valid = false, msg = e.Message };
            }

            return(Json(result));
        }