public ResultadoPostWeb guardaGestion(GestionWeb entrada) { ResultadoPostWeb resolucion = new ResultadoPostWeb(); try { GestionEntity GesSave = GestionEntity.ParseWeb(entrada); GestionData.Guardar(GesSave); resolucion.Codigo = 1; resolucion.Descripcion = "Gestión guardada con éxito"; resolucion.Objeto = gestBase(GesSave.CodAsignacion); } catch (Exception ex) { resolucion.Codigo = 0; resolucion.Descripcion = "Gestión no guardada por errores " + ex.Message; } return(resolucion); }
public IEnumerable <dynamic> listarAsgLlenita(int cc, string re) { var salida = new List <dynamic>(); List <AsignacionEntity> asigs = AsignacionData.ObtenerEntidadesByEjecutivo(re, cc); asigs.ForEach(asg => { EntidadEntity ent = EntidadData.ObtenerPorID(asg.RutEntidad); GestionEntity UltimaGestion = GestionData.ObtenerEntidades().FindAll(d => d.CodAsignacion == asg.CodAsignacion).OrderByDescending(f => f.FechaAccion).FirstOrDefault(); int codEstado_UltimaGestion = (UltimaGestion != null) ? UltimaGestion.CodEstadoGestion : 0; dynamic x = new ExpandoObject(); x.RutEntidad = asg.RutEntidad; x.DvEntidad = ent.DvEntidad; x.Nombre = ent.NombreEntidad; x.CodAsignacion = asg.CodAsignacion; if (codEstado_UltimaGestion > 0) { EstadogestionEntity gst = EstadogestionData.ObtenerEntidades().Find(y => y.CodCamp == cc && y.CodEstado == codEstado_UltimaGestion); x.SubEstado = gst.Nombre; x.Estado = EstadogestionData.ObtenerEntidades().Find(y => y.CodCamp == cc && y.CodEstado == gst.CodEstPadre).Nombre; x.FechaProximaGestion = UltimaGestion.FechaCompromiso; } else { x.SubEstado = "Sin Gestión"; x.Estado = "Sin Gestión"; x.FechaProximaGestion = "N/A"; } AttrvaloresData.ObtenerEntidadesByAsig(asg.CodAsignacion).ForEach(attrv => { AddProperty(x, attrv.CodAttr, attrv.ValorAttr); }); salida.Add(x); }); return(salida); }
private List <GestionBase> gestBase(long ca) { List <GestionBase> res = new List <GestionBase>(); GestionData.ObtenerEntidades().FindAll(x => x.CodAsignacion == ca).ForEach(gst => { EstadogestionEntity SubEstadoGst = EstadogestionData.ObtenerPorID(gst.CodEstadoGestion); EstadogestionEntity EstadoGst = EstadogestionData.ObtenerPorID(SubEstadoGst.CodEstPadre); AsignacionEntity Asignacion = AsignacionData.ObtenerPorID(ca); string eRut = Asignacion.RutEjecutivo != "0" ? Asignacion.RutEjecutivo : (string.IsNullOrEmpty(gst.RutEjecutivo) ? "N/A" : gst.RutEjecutivo); res.Add(new GestionBase { Gestion = gst, SubEstadoGestion = SubEstadoGst, EstadoGestion = EstadoGst, RutEjecutivo = eRut, NombreEjecutivo = CRM.Security.Data.UsuarioDataAccess.UsuarioData(eRut).Nombres }); }); return(res); }
public HttpResponseMessage XLS_TABLA(int cc, string re, string em) { var salida = new List <dynamic>(); List <AsignacionEntity> asigs = AsignacionData.ObtenerEntidadesByEjecutivoE(re, cc, em); DataTable dt = new DataTable(); dt.Columns.Add("RutAfiliado", typeof(string)); dt.Columns.Add("DvAfiliado", typeof(string)); dt.Columns.Add("NombreAfiliado", typeof(string)); List <Columna> columns = new List <Columna>(); columns.Add(new Columna("RutAfiliado", "Rut Afiliado")); columns.Add(new Columna("DvAfiliado", "Dv Afiliado")); columns.Add(new Columna("NombreAfiliado", "Nombre Afiliado")); asigs.ForEach(asg => { EntidadEntity ent = EntidadData.ObtenerPorID(asg.RutEntidad); GestionEntity UltimaGestion = GestionData.ObtenerEntidades().FindAll(d => d.CodAsignacion == asg.CodAsignacion).OrderByDescending(f => f.FechaAccion).FirstOrDefault(); DataRow dr = dt.NewRow(); dr["RutAfiliado"] = asg.RutEntidad; dr["DvAfiliado"] = ent.DvEntidad; dr["NombreAfiliado"] = ent.NombreEntidad; AttrvaloresData.ObtenerEntidadesByAsig(asg.CodAsignacion).ForEach(attrv => { if (attrv.CodAttr != "FechaResolucion" && attrv.CodAttr != "Prioridad" && attrv.CodAttr != "Observacion") { if (!dt.Columns.Contains(attrv.CodAttr)) { dt.Columns.Add(attrv.CodAttr, typeof(string)); columns.Add(new Columna(attrv.CodAttr, AtributoData.ObtenerPorID(attrv.CodAttr).Etiqueta)); } dr[attrv.CodAttr] = attrv.ValorAttr; } }); if (!dt.Columns.Contains("NotaEjecutivo")) { dt.Columns.Add("NotaEjecutivo", typeof(string)); columns.Add(new Columna("NotaEjecutivo", "Documentación Faltante")); } dr["NotaEjecutivo"] = (UltimaGestion != null) ? UltimaGestion.NotaGestion.Replace("\n", ";").Replace("\t", " ").Replace("\r", ";") : "Sin Gestión"; dt.Rows.Add(dr); }); byte[] filecontent = ExcelExportHelper.ExportExcel(dt, "Documentación Faltante.", false, columns.ToArray()); HttpResponseMessage response = new HttpResponseMessage(); Stream stri = new MemoryStream(filecontent); response.Content = new StreamContent(stri); response.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment"); response.Content.Headers.ContentDisposition.FileName = "Documentacion_Pendiente_SIL.xlsx"; response.Content.Headers.ContentType = new MediaTypeHeaderValue(ExcelExportHelper.ExcelContentType); response.Content.Headers.ContentLength = stri.Length; return(response); }