package br.com.centralit.citgerencial.generateservices.incidentes; import java.util.ArrayList; import java.util.Collection; import java.util.HashMap; import java.util.List; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import br.com.centralit.citajax.html.AjaxFormAction; import br.com.centralit.citajax.html.DocumentHTML; import br.com.centralit.citcorpore.bean.SolicitacaoServicoDTO; import br.com.centralit.citcorpore.negocio.SolicitacaoServicoService; import br.com.centralit.citcorpore.util.Enumerados.TipoDate; import br.com.citframework.excecao.ServiceException; import br.com.citframework.service.ServiceLocator; import br.com.citframework.util.UtilDatas; @SuppressWarnings({ "unchecked", "rawtypes" }) public class ControleGenerateSLA extends AjaxFormAction { public List execute(HashMap parametersValues, Collection paramtersDefinition) throws ServiceException, Exception { String datainicial = (String) parametersValues.get("PARAM.dataInicial"); String datafinal = (String) parametersValues.get("PARAM.dataFinal"); List lstRetorno = new ArrayList(); SolicitacaoServicoDTO solicitacaoServicoDTO = new SolicitacaoServicoDTO(); if (Integer.parseInt((String) parametersValues.get("PARAM.idContrato")) != -1) { solicitacaoServicoDTO.setIdContrato(Integer.parseInt((String) parametersValues.get("PARAM.idContrato"))); } if (parametersValues.get("PARAM.situacao") != null && !parametersValues.get("PARAM.situacao").equals("") && !parametersValues.get("PARAM.situacao").equals("*")) { solicitacaoServicoDTO.setSituacao(parametersValues.get("PARAM.situacao").toString()); } if (Integer.parseInt((String) parametersValues.get("PARAM.idPrioridade")) != -1) { solicitacaoServicoDTO.setIdPrioridade(Integer.parseInt((String) parametersValues.get("PARAM.idPrioridade"))); } if (Integer.parseInt((String) parametersValues.get("PARAM.idOrigem")) != -1) { solicitacaoServicoDTO.setIdOrigem(Integer.parseInt((String) parametersValues.get("PARAM.idOrigem"))); } if (Integer.parseInt((String) parametersValues.get("PARAM.idUnidade")) != -1) { solicitacaoServicoDTO.setIdUnidade(Integer.parseInt((String) parametersValues.get("PARAM.idUnidade"))); } if (Integer.parseInt((String) parametersValues.get("PARAM.idServico")) != -1) { solicitacaoServicoDTO.setIdServico(Integer.parseInt((String) parametersValues.get("PARAM.idServico"))); } if (Integer.parseInt((String) parametersValues.get("PARAM.idTipoServico")) != -1) { solicitacaoServicoDTO.setIdTipoServico(Integer.parseInt((String) parametersValues.get("PARAM.idTipoServico"))); } if (parametersValues.get("PARAM.classificacao") != null && !parametersValues.get("PARAM.classificacao").equals("") && !parametersValues.get("PARAM.classificacao").equals("*")) { solicitacaoServicoDTO.setClassificacao(parametersValues.get("PARAM.classificacao").toString()); } solicitacaoServicoDTO.setDataInicio(UtilDatas.convertStringToSQLDate(TipoDate.DATE_DEFAULT, datainicial, super.getLanguage(paramtersDefinition))); solicitacaoServicoDTO.setDataFim(UtilDatas.convertStringToSQLDate(TipoDate.DATE_DEFAULT, datafinal, super.getLanguage(paramtersDefinition))); double qtdePrazo = 0; double qtdeForaPrazo = 0; Collection<SolicitacaoServicoDTO> listSla = new ArrayList(); SolicitacaoServicoService solicitacaoServicoService = (SolicitacaoServicoService) ServiceLocator.getInstance().getService(SolicitacaoServicoService.class, null); listSla = solicitacaoServicoService.relatorioControleSla(solicitacaoServicoDTO); if (listSla != null) { for (SolicitacaoServicoDTO sla : listSla) { solicitacaoServicoService.verificaSituacaoSLA(sla); if ((sla.getAtrasoSLAStr() != null && sla.getAtrasoSLAStr().equalsIgnoreCase("S") && !sla.getSituacao().equalsIgnoreCase("Cancelada")) || sla.getAtrasoSLA() > 0) { qtdeForaPrazo++; } else { qtdePrazo++; } } } try { if (listSla != null && listSla.size() != 0) { lstRetorno = new ArrayList(); lstRetorno.add(new Object[] { "Dentro do SLA", (qtdePrazo / (qtdePrazo + qtdeForaPrazo)) * 100, qtdePrazo }); lstRetorno.add(new Object[] { "Fora do SLA", (qtdeForaPrazo / (qtdePrazo + qtdeForaPrazo)) * 100, qtdeForaPrazo }); } return lstRetorno; } catch (Exception e) { return null; } } @Override public void load(DocumentHTML document, HttpServletRequest request, HttpServletResponse response) throws Exception { } @Override public Class getBeanClass() { return null; } }