use of com.tomasio.projects.trainning.dto.CertificadoConclusaoDTO in project trainning by fernandotomasio.
the class CertificadoConclusao method createDTO.
public CertificadoConclusaoDTO createDTO() {
CertificadoConclusaoDTO dto = new CertificadoConclusaoDTO();
dto.setDataEmissao(dataEmissao);
dto.setObservacao(observacao);
dto.setId(id);
dto.setNumero(numero);
dto.setContentId(contentId);
if (conclusao != null) {
dto.setConclusao(conclusao.createDTO());
}
return dto;
}
use of com.tomasio.projects.trainning.dto.CertificadoConclusaoDTO in project trainning by fernandotomasio.
the class TurmasEfetivasController method saveCertificado.
@RequestMapping("/save_certificado")
public String saveCertificado(Model model, @Valid CertificadoConclusaoForm certificado, BindingResult bindingResult, @RequestParam(value = "file", required = false) MultipartFile file, WebRequest request, final RedirectAttributes redirectAttributes) {
String folderId = "614fca6b-f633-4430-a810-74096b460518";
String folderName = "Certificados";
String documentsRoot = "SGC/Certificados";
if (bindingResult.hasErrors()) {
return "turmas_efetivas/form_certificado";
}
SimpleDateFormat df = new SimpleDateFormat("dd/MM/yyyy");
ConclusaoDTO conclusao = atividadesEnsinoService.findConclusao(Long.parseLong(certificado.getConclusaoId()));
CertificadoConclusaoDTO certificadoDTO = new CertificadoConclusaoDTO();
certificadoDTO.setNumero(certificado.getNumero());
try {
certificadoDTO.setDataEmissao(df.parse(certificado.getDataEmissao()));
} catch (ParseException ex) {
Logger.getLogger(TurmasEfetivasController.class.getName()).log(Level.SEVERE, null, ex);
}
certificadoDTO.setObservacao(certificado.getObservacao());
certificadoDTO.setConclusao(conclusao);
if (!file.isEmpty()) {
DocumentDTO dto = new DocumentDTO();
dto.setTitle("Certificado Nº " + certificado.getNumero());
dto.setDescription("Certificado Nº " + certificado.getNumero() + " Do aluno Matricula: " + conclusao.getMatricula() + " Emitido na data: " + certificado.getDataEmissao() + " Com a seguinte Observação: " + certificado.getObservacao());
dto.setName(file.getOriginalFilename());
dto.setMimeType(file.getContentType());
try {
byte[] content = file.getBytes();
dto.setContentStream(content);
} catch (IOException ex) {
Logger.getLogger(TurmasEfetivasController.class.getName()).log(Level.SEVERE, null, ex);
}
String contentId = ecmService.createDocumentWithUUIDParent(dto, folderId);
if (contentId == null || contentId.equals("")) {
// erro certificado não upload
redirectAttributes.addFlashAttribute("errorMessage", "Nao foi possível fazer o UPLOAD no Arquivo do Certificado!");
} else {
certificadoDTO.setContentId(contentId);
}
// gravar o certificado no BD
try {
atividadesEnsinoService.createCertificadoConclusao(certificadoDTO);
redirectAttributes.addFlashAttribute("successMessage", "Certificado de Conclusão cadastrado com sucesso.");
} catch (CoreException e) {
redirectAttributes.addFlashAttribute("errorMessage", e.getMessage());
}
}
model.addAttribute("tab", "certificados");
return "redirect:detail/certificados";
}
use of com.tomasio.projects.trainning.dto.CertificadoConclusaoDTO in project trainning by fernandotomasio.
the class AtividadesEnsinoServiceSimpleImpl method findAllCertificadosConclusaoByConclusao.
@Override
@Transactional(readOnly = true)
public CertificadoConclusaoDTO[] findAllCertificadosConclusaoByConclusao(Long conclusaoId) {
CertificadoConclusaoDAO dao = factory.getCertificadoConclusaoDAO();
CertificadoConclusaoDTO[] certificadosArray = null;
try {
List<CertificadoConclusao> certificados = dao.findAllCertificadosConclusaoByConclusao(conclusaoId);
if (certificados != null) {
certificadosArray = new CertificadoConclusaoDTO[certificados.size()];
for (int i = 0; i < certificados.size(); i++) {
certificadosArray[i] = certificados.get(i).createDTO();
}
}
} catch (DAOException ex) {
ex.printStackTrace();
throw new CoreException(ex.getMessage());
} catch (Exception ex) {
ex.printStackTrace();
throw new CoreException("Erro em tempo de execução: " + ex.getMessage());
}
return certificadosArray;
}
use of com.tomasio.projects.trainning.dto.CertificadoConclusaoDTO in project trainning by fernandotomasio.
the class TurmasEfetivasController method removeDocumento.
@RequestMapping("/remove_certificado")
public String removeDocumento(Model model, WebRequest request, final RedirectAttributes redirectAttributes) {
String certificadoId = request.getParameter("certificadoId");
// antes buscar o contentId
CertificadoConclusaoDTO certificadoConclusao = atividadesEnsinoService.findCertificadoConclusao(Long.parseLong(certificadoId));
if (certificadoConclusao != null) {
try {
String contentId = certificadoConclusao.getContentId();
atividadesEnsinoService.removeCertificadoConclusao(Long.parseLong(certificadoId));
ecmService.removeContent(contentId);
redirectAttributes.addFlashAttribute("successMessage", "Certificado de Conclusão excluído com sucesso.");
// model.addAttribute("successMessage", "Matricula cancelada com sucesso.");
} catch (CoreException e) {
redirectAttributes.addFlashAttribute("errorMessage", e.getMessage());
// model.addAttribute("errorMessage", e.getMessage());
}
} else {
redirectAttributes.addFlashAttribute("errorMessage", "Certificado de Conclusão não encontado!");
}
return "redirect:detail/certificados";
}
use of com.tomasio.projects.trainning.dto.CertificadoConclusaoDTO in project trainning by fernandotomasio.
the class TurmasEfetivasController method listCertificados.
@RequestMapping("/detail/certificados")
public String listCertificados(Model model, WebRequest request, @ModelAttribute("turma") TurmaEfetivaDTO turma) {
// buscar todos os concluídos com aproveitamento
// busca e ordena por nome os apresentados concluintes com aproveitamento
ConclusaoDTO[] conclusoesComAproveitamento = atividadesEnsinoService.findAllConcluidosByTurma(turma.getId(), true);
Arrays.sort(conclusoesComAproveitamento, new Comparator<ConclusaoDTO>() {
@Override
public int compare(ConclusaoDTO o1, ConclusaoDTO o2) {
return o1.getPessoa().getNome().compareTo(o2.getPessoa().getNome());
}
});
// List conclusoesComAproveitamentoCertificado
List<Map<Object, Object>> dataList = new ArrayList<Map<Object, Object>>();
// List conclusoesComAproveitamentoNaoCertificado
List<Map<Object, Object>> dataListNao = new ArrayList<Map<Object, Object>>();
// contador de conclusoesComAproveitamentoNaoCertificado
Long totalConclusoesComAproveitamentoNaoCertificado = 0L;
// contatdor de aluno que já tem pelo menos um certificados
Long totalConclusoesComAproveitamentoCertificado = 0L;
// correr a lista de concluídos com aproveitamento para filtrar os não certificados
for (ConclusaoDTO conclusao : conclusoesComAproveitamento) {
// buscar certificado
CertificadoConclusaoDTO[] certificados = atividadesEnsinoService.findAllCertificadosConclusaoByConclusao(conclusao.getId());
if (certificados.length > 0) {
// correr certificados, para gerar uma linha para cada certificado
for (CertificadoConclusaoDTO certificado : certificados) {
Map<Object, Object> item = new HashMap<Object, Object>();
item.put("targetaCompleta", conclusao.getPessoa().getTargetaCompletaOM());
item.put("conclusaoId", conclusao.getId());
item.put("id", certificado.getId());
item.put("numero", certificado.getNumero());
item.put("dataEmissao", certificado.getDataEmissao());
item.put("observacao", certificado.getObservacao());
item.put("contentId", certificado.getContentId());
dataList.add(item);
}
totalConclusoesComAproveitamentoCertificado++;
} else {
Map<Object, Object> item = new HashMap<Object, Object>();
item.put("targetaCompleta", conclusao.getPessoa().getTargetaCompletaOM());
item.put("conclusaoId", conclusao.getId());
item.put("id", "");
item.put("numero", null);
item.put("dataEmissao", null);
item.put("observacao", null);
item.put("contentId", null);
dataListNao.add(item);
totalConclusoesComAproveitamentoNaoCertificado++;
}
}
// passa o total de conclusoesComAproveitamento
model.addAttribute("totalConclusoesComAproveitamento", conclusoesComAproveitamento.length);
// passa os concluidos com certificado e o total
model.addAttribute("conclusoesComAproveitamentoCertificado", dataList);
model.addAttribute("totalConclusoesComAproveitamentoCertificado", totalConclusoesComAproveitamentoCertificado);
// passa os concluidos não certificadose e o total
model.addAttribute("conclusoesComAproveitamentoNaoCertificado", dataListNao);
model.addAttribute("totalConclusoesComAproveitamentoNaoCertificado", totalConclusoesComAproveitamentoNaoCertificado);
model.addAttribute("tab", "certificados");
return "turmas_efetivas/detail/certificados";
}
Aggregations