OrgaoDao orgaoDao = new OrgaoDao(null);
ItemEstruturaDao itemEstruturaDao = new ItemEstruturaDao(null);
EstruturaDao estruturaDao = new EstruturaDao(null);
PerfilIntercambioDadosPflid perfil = config.getPerfil();
ItemEstruturaIett iett = null;
//Se o item passado como par�metro for igual a null,
//ser� um novo item
//caso contr�rio ser� uma altera��o de um item j� existente
if (itemEstruturaIett == null){
iett = new ItemEstruturaIett();
} else {
iett = itemEstruturaIett;
}
//C�digo - siglaIett
iett.setSiglaIett(itemEstruturaDTO.getCodigo());
//Nome - nomeIett
iett.setNomeIett(itemEstruturaDTO.getNome());
//Descri��o - descricaoR2
iett.setDescricaoR2(itemEstruturaDTO.getDescricao());
//Data de In�cio - dataInicioIett
iett.setDataInicioIett(Data.parseDate(itemEstruturaDTO.getDataInicio(), ConstantesECAR.FORMATO_DATA_IMPORTACAO));
//Data de T�rmino - dataTerminoIett
iett.setDataTerminoIett(Data.parseDate(itemEstruturaDTO.getDataConclusao(), ConstantesECAR.FORMATO_DATA_IMPORTACAO));
//Custo - valPrevistoFuturoIett
if (itemEstruturaDTO.getCusto() != null && !itemEstruturaDTO.getCusto().equals(Dominios.STRING_VAZIA)){
BigDecimal custo = new BigDecimal(Double.valueOf(Util.formataNumero(itemEstruturaDTO.getCusto())).doubleValue());
iett.setValPrevistoFuturoIett(custo);
}
//Situa��o - situacaoSit
SituacaoSit situacaoSit = null;
//ser� usada a situa��o configurada no perfil (situacaoSitNaoInformadoImp) caso n�o seja informada a situa��o no arquivo
if (itemEstruturaDTO.getSituacao() == null || itemEstruturaDTO.getSituacao().equals(Dominios.STRING_VAZIA)){
if (perfil.getTipoFuncionalidade().equals(TipoFuncionalidadeEnum.CADASTRO)) {
situacaoSit = ((PerfilIntercambioDadosCadastroPidc)perfil).getSituacaoNaoInformadaPidc();
} else {
//TODO caso haja importa��o de acompanhamento/parecer via arquivo texto, o c�digo referente ao parecer dever� ser informado aqui.
}
} else {
//ser� usada a situa��o configurado no perfil (situacaoSitSemCorrespondenteImp)caso a situa��o informada n�o tenha correspondente no e-car
situacaoSit = situacaoDao.getSituacaoSitByDescricao(itemEstruturaDTO.getSituacao());
if (perfil.getTipoFuncionalidade().equals(TipoFuncionalidadeEnum.CADASTRO)) {
if (situacaoSit == null){
situacaoSit = ((PerfilIntercambioDadosCadastroPidc)perfil).getSituacaoSemCorrespondentePidc();
}
}
}
iett.setSituacaoSit(situacaoSit);
//Tipo - descricaoR4
iett.setDescricaoR4(itemEstruturaDTO.getTipo());
//Sub-Tipo - descricaoR5
iett.setDescricaoR5(itemEstruturaDTO.getSubTipo());
//Valor de liga��o - descricaoR1
iett.setDescricaoR1(itemEstruturaDTO.getValorAssociacao());
//Novos campos acrescentados para importa��o
//Executor - descricaoIett
iett.setDescricaoIett(itemEstruturaDTO.getExecutor());
//Meta PAC - origemIett
iett.setOrigemIett(itemEstruturaDTO.getMetaPac());
//Investimento Previsto 2007-2010 - objetivoGeralIett
iett.setObjetivoGeralIett(itemEstruturaDTO.getInvestPrev20072010());
//Investimento Previsto ap�s 2010 - objetivoEspecificoIett
iett.setObjetivoEspecificoIett(itemEstruturaDTO.getInvestPrevApos2010());
//Est�gio - beneficiosIett
iett.setBeneficiosIett(itemEstruturaDTO.getEstagio());
//Tipo de Empreendimento - descricaoR3
iett.setDescricaoR3(itemEstruturaDTO.getTipoEmpreendimento());
ItemEstruturaIett itemBase = null;
if (perfil.getTipoFuncionalidade().equals(TipoFuncionalidadeEnum.CADASTRO)) {
itemBase = itemEstruturaDao.getItemEstruturaIettByEstruturaDescricaoR1(((PerfilIntercambioDadosCadastroPidc)perfil).getEstruturaBasePidc(), itemEstruturaDTO.getValorAssociacao());
ItemEstruturaIett itemNivelSuperior = itemEstruturaDao.getItemEstruturaIettByEstruturaDescricaoR3(((PerfilIntercambioDadosCadastroPidc)perfil).getEstruturaItemNivelSuperiorPidc(), itemBase, itemEstruturaDTO.getTipoEmpreendimento());
iett.setItemEstruturaIett(itemNivelSuperior);
iett.setEstruturaEtt((EstruturaEtt) estruturaDao.buscar(EstruturaEtt.class, ((PerfilIntercambioDadosCadastroPidc)perfil).getEstruturaCriacaoItemPidc().getCodEtt()));
iett.setIndAtivoIett(Dominios.SIM);
iett.setNivelIett(itemNivelSuperior.getNivelIett() + 1);
}
if (itemEstruturaDTO.getOperacao().equals(ConstantesECAR.TIPO_OPERACAO_INCLUSAO)){
if (perfil.getIndUsuarioProcessamentoAssociacaoItemPflid() != null && perfil.getIndUsuarioProcessamentoAssociacaoItemPflid().equals(Dominios.SIM)){
iett.setUsuarioUsuByCodUsuIncIett(usuarioLogado);