Advertisement
Guest User

Untitled

a guest
Aug 19th, 2019
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.31 KB | None | 0 0
  1. public ActionResult ExportarExcel(List<Sigeri> array)
  2. {
  3.  
  4. var listado = array;
  5.  
  6. var ruta = new FileInfo("D:\archivo_excel\reporte_horas.xlsx");
  7. ExcelPackage pkg = new ExcelPackage(ruta);
  8. //ExcelWorksheet ws = pkg.Workbook.Worksheets.Add("Reportes");
  9. ExcelWorksheet ws = pkg.Workbook.Worksheets["Gestion_horas"];
  10.  
  11. ws.Cells["A1"].Value = "Comunicación";
  12. ws.Cells["B1"].Value = "Com1";
  13.  
  14. ws.Cells["A2"].Value = "Reporte";
  15. ws.Cells["B2"].Value = "Seguimiento de Horas";
  16.  
  17. ws.Cells["A3"].Value = "Fecha";
  18. ws.Cells["B3"].Value = string.Format("{0:dd MMMM yyyy} at {0:H: mm tt}", DateTimeOffset.Now);
  19.  
  20. ws.Cells["A6"].Value = "PROYECTO";
  21. ws.Cells["B6"].Value = "DESCRIPCION";
  22. ws.Cells["C6"].Value = "HORAS";
  23. ws.Cells["D6"].Value = "T. COBRADO";
  24. ws.Cells["E6"].Value = "COSTO BIENES";
  25. ws.Cells["F6"].Value = "MANO OBRA";
  26. ws.Cells["G6"].Value = "GASTOS GENERALES";
  27. ws.Cells["H6"].Value = "DEPRECIACION";
  28.  
  29. int rowstart = 7;
  30.  
  31. foreach (Sigeri obj in listado)
  32. {
  33. ws.Cells[string.Format("A{0}", rowstart)].Value = obj.Proyecto.IdProyecto; //obj.Proyecto.IdProyecto; //obj.Proyecto.IdProyecto;
  34. ws.Cells[string.Format("B{0}", rowstart)].Value = obj.Proyecto.Descripcion;//obj.Proyecto.Descripcion;
  35. ws.Cells[string.Format("C{0}", rowstart)].Value = obj.Horas;
  36. ws.Cells[string.Format("D{0}", rowstart)].Value = obj.TotalCobrado;
  37. ws.Cells[string.Format("E{0}", rowstart)].Value = obj.CostoBienes;
  38. ws.Cells[string.Format("F{0}", rowstart)].Value = obj.ManoObra;
  39. ws.Cells[string.Format("G{0}", rowstart)].Value = obj.GatosGenerales;
  40. ws.Cells[string.Format("H{0}", rowstart)].Value = obj.Depreciacion;
  41. rowstart++;
  42.  
  43. }
  44.  
  45. var myChart = ws.Drawings.AddChart("chart", eChartType.Line);
  46.  
  47.  
  48. //Define las series para el cuadro
  49. var series = myChart.Series.Add("C7: E7", "C6: E6");
  50. myChart.Border.Fill.Color = System.Drawing.Color.Green;
  51. myChart.Title.Text = "My Chart";
  52. myChart.SetSize(500, 400);
  53.  
  54. //Agregar a la 6ta fila y a la 6ta columna
  55. myChart.SetPosition(6, 0, 10, 0);
  56.  
  57. var myChart2 = myChart.PlotArea.ChartTypes.Add(eChartType.ColumnClustered);
  58. //Define las series para el cuadro
  59. var series2 = myChart2.Series.Add("C7: E7", "C6: E6");
  60.  
  61. //Agregar a la 6ta fila y a la 6ta columna
  62. //myChart2.SetPosition(6, 0, 10, 0);
  63.  
  64. ws.Cells["A:AZ"].AutoFitColumns();
  65.  
  66. MemoryStream memoryStream = new MemoryStream();
  67. pkg.SaveAs(memoryStream);
  68. memoryStream.Position = 0;
  69.  
  70. return new FileStreamResult(memoryStream, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet") { FileDownloadName = "Gestion_horas.xlsx" };
  71.  
  72. }
  73.  
  74. <button class="btn btn-primary" id="btnExportar">Exportar Excel</button>
  75.  
  76. $("#btnExportar").click(function () {
  77. var array = [];
  78. var filas = $("#contenido").find("tr");
  79. for (let i = 0; i < filas.length; i++) {
  80. var celdas = $(filas[i]).find("td");
  81. var obj = {
  82. Proyecto: {
  83. IdProyecto: $(celdas[0]).text(),
  84. Descripcion: $(celdas[1]).text()
  85. },
  86. Horas: $(celdas[2]).text(),
  87. TotalCobrado: $(celdas[3]).text(),
  88. CostoBienes: $(celdas[4]).text(),
  89. ManoObra: $(celdas[5]).text(),
  90. GatosGenerales: $(celdas[6]).text(),
  91. Depreciacion: $(celdas[7]).text()
  92. };
  93. array.push(obj);
  94. }
  95.  
  96. $.ajax({
  97. url: root + '/Sigeri/ExportarExcel',
  98. type: 'POST',
  99. contentType: 'application/json',
  100. data: JSON.stringify(array),
  101. success: function (data) {
  102. //console.log(data);
  103. }
  104. });
  105. });
  106.  
  107. [HttpGet]
  108. public FileResult Descargar()
  109. {
  110. var file= TempData
  111. return File(file, "application/vnd.ms-excel", "MiArchivo.xlsx");
  112. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement