public ImprimirRotinaResults Imprimir(Guid id) { var imprimir = new ImprimirRotinaResults(); var retorno = (from r in _context.Rotinas join f in _context.Funcionarios on r.FuncionarioId equals f.Id join s in _context.Series on r.SerieId equals s.Id where r.Id == id && r.Status == true select new ListarRotinaResults() { RotinaId = r.Id, De = r.De, Ate = r.Ate, DataCadastro = r.DataCadastro, FuncionarioId = r.FuncionarioId, ImgCabecalho = r.ImgCabecalho, SerieId = r.SerieId, Status = r.Status, Visualizada = r.Visualizada, NomeFuncionario = f.Nome + " " + f.SobreNome, NomeSerie = s.Nome }).FirstOrDefault(); var horario = (from s in _context.HorarioRotinas join r in _context.Rotinas on s.RotinaId equals r.Id join d in _context.DiaSemanas on s.DiaSemanaId equals d.Id where s.RotinaId == id && r.Status == true select new ListarHorarioRotinaResults() { Conteudo = s.Conteudo, DataCadastro = s.DataCadastro, DiaSemanaId = s.DiaSemanaId, RotinaId = s.RotinaId, Status = s.Status, Aula = s.Aula, NomeSemana = d.Nome, Order = d.Order }).OrderBy(s => s.Aula).ToList(); imprimir.ListarRotinaResults = retorno; imprimir.ListarHorarioRotinaResults = horario; return(imprimir); }
public static string ImprimirRotina(ImprimirRotinaResults horarioRotina) { return(HtmlRotina(horarioRotina)); }
private static string HtmlRotina(ImprimirRotinaResults horarioRotina) { var sb = new StringBuilder(); var grupo = horarioRotina.ListarHorarioRotinaResults.GroupBy(c => c.Aula); sb.Append(@" <html> <head> </head> <body> <img class='tamnhoImg' src='http://192.168.1.254:5200/imagens/relatorio/Logo.PNG' alt='Card image cap'> <h4 class='margemTitulo'><b>Rotina semanal: " + horarioRotina.ListarRotinaResults.De.ToString("dd/MM/yyyy") + " a " + horarioRotina.ListarRotinaResults.Ate.ToString("dd/MM/yyyy") + " - " + horarioRotina.ListarRotinaResults.NomeSerie + " - " + horarioRotina.ListarRotinaResults.NomeFuncionario + "</b></h4>" + "<table border='1px' id='example' class='display dataTable dtr-inline' cellspacing='0' width='100%' role='grid' aria-describedby='example_info' style='width: 100%; table-layout:fixed'>" + "<thead>" + " <tr>" + " <th width='60px' class='table-dark' scope='row'>Horário</th>" + " <th class='table-dark' scope='row'>2°FEIRA</th>" + " <th class='table-dark' scope='row'>3°FEIRA</th>" + " <th class='table-dark' scope='row'>4°FEIRA</th>" + " <th class='table-dark' scope='row'>5°FEIRA</th>" + " <th class='table-dark' scope='row'>6°FEIRA</th>" + " </tr>" + " </thead>"); foreach (var item in grupo) { sb.Append(@"<tbody><tr>"); if (item.Key == "1°Aula") { sb.Append(@"<td>" + item.Key + "</td>"); foreach (var i in item.OrderBy(c => c.Order)) { sb.Append(@"<td><div [innerHTML] = " + i.Conteudo + "</div></td>"); } sb.Append(@"</tr>"); } else if (item.Key == "2°Aula") { sb.Append(@"<td>" + item.Key + "</td>"); foreach (var i in item.OrderBy(c => c.Order)) { sb.Append(@"<td><div [innerHTML] = " + i.Conteudo + "</div></td>"); } sb.Append(@"</tr>"); } else if (item.Key == "3°Aula") { sb.Append(@"<td>" + item.Key + "</td>"); foreach (var i in item.OrderBy(c => c.Order)) { sb.Append(@"<td><div [innerHTML] = " + i.Conteudo + "</div></td>"); } sb.Append(@"</tr>"); } else if (item.Key == "4°Aula") { sb.Append(@"<td>" + item.Key + "</td>"); foreach (var i in item.OrderBy(c => c.Order)) { sb.Append(@"<td><div [innerHTML] = " + i.Conteudo + "</div></td>"); } sb.Append(@"</tr>"); } else if (item.Key == "5°Aula") { sb.Append(@"<td>" + item.Key + "</td>"); foreach (var i in item.OrderBy(c => c.Order)) { sb.Append(@"<td><div [innerHTML] = " + i.Conteudo + "</ div ></td>"); } sb.Append(@"</tr>"); } else { sb.Append(@"<td>" + item.Key + "</td>"); foreach (var i in item.OrderBy(c => c.Order)) { sb.Append(@"<td><div [innerHTML] = " + i.Conteudo + "</div></td>"); } sb.Append(@"</tr></tbody>"); } } sb.Append(@" </table> </body> </html>"); return(sb.ToString()); }