package br.gov.al.saude.srv.core.domain.servidor;
import java.util.List;
import net.sf.jasperreports.engine.JasperPrint;
import br.gov.al.saude.framework.core.generic.GenericService;
import br.gov.al.saude.framework.model.PessoaFisicaView;
import br.gov.al.saude.srv.model.Servidor;
import br.gov.al.saude.srv.model.dto.ParametroConsultaServidorAtivoDTO;
import br.gov.al.saude.srv.model.dto.ParametroConsultaServidorDTO;
import br.gov.al.saude.srv.model.dto.ServidorAtivoDTO;
import br.gov.al.saude.srv.model.dto.ServidorDTO;
import br.gov.al.saude.srv.model.enums.TipoSituacaoCadastral;
public interface ServidorService
extends GenericService
<Servidor
> {
String PAPEL_SERVIDOR_TECNICO_SAFP =
"ROLE_SRV_TECNICO_SAFP_PAPEL";
String PAPEL_SERVIDOR_TECNICO_SER =
"ROLE_SRV_TECNICO_SER_PAPEL";
String PAPEL_SERVIDOR_TECNICO_SIF =
"ROLE_SRV_TECNICO_SIF_PAPEL";
String PAPEL_SERVIDOR_TECNICO_SAD =
"ROLE_SRV_TECNICO_SAD_PAPEL";
String PAPEL_SERVIDOR_TECNICO_CSGDP =
"ROLE_SRV_TECNICO_CSGDP_PAPEL";
String PAPEL_SERVIDOR =
"ROLE_SRV_SERVIDOR_PAPEL";
String PAPEL_SERVIDOR_TECNICO_SAFP_SEM_PREFIXO_ROLE =
"SRV_TECNICO_SAFP_PAPEL";
String PAPEL_SERVIDOR_TECNICO_SER_SEM_PREFIXO_ROLE =
"SRV_TECNICO_SER_PAPEL";
String PAPEL_SERVIDOR_TECNICO_SIF_SEM_PREFIXO_ROLE =
"SRV_TECNICO_SIF_PAPEL";
String PAPEL_SERVIDOR_TECNICO_SAD_SEM_PREFIXO_ROLE =
"SRV_TECNICO_SAD_PAPEL";
String PAPEL_SERVIDOR_TECNICO_CSGDP_SEM_PREFIXO_ROLE =
"SRV_TECNICO_CSGDP_PAPEL";
String PAPEL_SERVIDOR_SEM_PREFIXO_ROLE =
"SRV_SERVIDOR_PAPEL";
String MSG_ERRO_JA_EXISTE_SERVIDOR_ATIVO_MESMA_MATRICULA =
"Já existe servidor ATIVO cadastrado com a matrícula informada.";
String MSG_ERRO_NUMERO_ORDEM_JA_CADASTRADO =
"Número de ordem já cadastrado.";
String MSG_ERRO_OBRIGATORIO_INFORMAR_FUNCAO =
"Obrigatório informar a função.";
String MSG_ERRO_SERVIDOR_POSSUI_DADO_FUNCIONAL_ATIVO_COM_CARGO_NA_UNIDADE_LOTACAO =
"Servidor já possui dado funcional ativo com o cargo e unidade de lotação informados.";
String MSG_ERRO_LIMITE_CARGA_HORARIA_ATINGIDO =
"Limite de carga horária atingido.";
String MSG_ERRO_NAO_EH_PERMITIDO_ALTERAR_SITUACAO_SERVIDOR_COM_DADO_FUNCIONAL_DIFERENTE_PRESTADOR =
"Não é permitido alterar situação da ficha cadastral de servidor que possui dado funcional diferente de Prestador.";
String MSG_ERRO_NAO_EH_PERMITIDO_ALTERAR_SITUACAO_SERVIDOR_COM_DADO_FUNCIONAL_DIFERENTE_ESTAGIARIO =
"Não é permitido alterar situação da ficha cadastral de servidor que possui dado funcional diferente de Estagiário.";
String MSG_ERRO_NAO_LIMITE_VAGAS_FUNCAO_TIPO_GRATIFICADA=
"O limite de vagas para função do tipo gratificada foi atingido.";
String MSG_ERRO_EXTENSAO_ARQUIVO_FOTO_INVALIDA =
"Extensão do arquivo de foto inválido. Extensões disponíveis JPEG, JPG e PNG.";
Servidor consultarServidorPorSequencial
(Long sequencial
);
PessoaFisicaView consultarPessoaPorSequencial
(Long sequencial
);
void atualizarServidorLegado
(Servidor entidade
);
void atualizarServidor
(Servidor entidade
);
void alterarSituacaoFichaCadastral
(Servidor entidade, TipoSituacaoCadastral situacao
);
JasperPrint emitirFichaCadastral
(Long sequencial
);
List<ServidorDTO
> consultar
(ParametroConsultaServidorDTO parametroConsultaServidorDTO
);
Servidor consultarServidorPorNossoNumero
(Long nossoNumero
);
List<ServidorAtivoDTO
> consultarServidorAtivo
(ParametroConsultaServidorAtivoDTO parametroConsultaServidorDTO
);
List<ServidorAtivoDTO
> consultarServidorNaoPendente
(ParametroConsultaServidorAtivoDTO parametroConsultaServidorDTO
);
Integer obterQuantidadeDeRegistrosParaConsultarServidorAtivo
(ParametroConsultaServidorAtivoDTO parametroConsultaServidorDTO
);
Integer obterQuantidadeDeRegistrosParaConsultarServidorNaoPendente
(ParametroConsultaServidorAtivoDTO parametroConsultaServidorDTO
);
Integer obterQuantidadeDeRegistros
(ParametroConsultaServidorDTO parametro
);
}