package gcom.gui.atendimentopublico.registroatendimento; import gcom.atendimentopublico.registroatendimento.EspecificacaoImovSitCriterio; import gcom.atendimentopublico.registroatendimento.EspecificacaoImovelSituacao; import gcom.fachada.Fachada; import gcom.gui.GcomAction; import java.util.Collection; import java.util.Date; import java.util.Iterator; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; /** * [UC0402] Inserir Especifica��o da Situa��o do Imovel * * @author Rafael Pinto * @created 04/08/2006 */ public class InserirEspecificacaoSituacaoImovelAction extends GcomAction { public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { // Seta Retorno (Forward = Sucesso) ActionForward retorno = actionMapping.findForward("telaSucesso"); // Form InserirEspecificacaoSituacaoImovelActionForm inserirEspecificacaoSituacaoImovelActionForm = (InserirEspecificacaoSituacaoImovelActionForm) actionForm; // Fachada Fachada fachada = Fachada.getInstancia(); // EspecificacaoImovelSituacao EspecificacaoImovelSituacao especificacaoImovelSituacao = new EspecificacaoImovelSituacao(); especificacaoImovelSituacao.setDescricao( inserirEspecificacaoSituacaoImovelActionForm.getDescricaoEspecificacao()); especificacaoImovelSituacao.setUltimaAlteracao(new Date()); // Insere EspecificacaoImovelSituacao fachada.inserir(especificacaoImovelSituacao); // Insere Equipe Componentes this.inserirEspecificacaoImovelSituacaoCriterio(inserirEspecificacaoSituacaoImovelActionForm, fachada, especificacaoImovelSituacao); // [FS008] Monta a p�gina de sucesso montarPaginaSucesso(httpServletRequest, "Especifica��o Situa��o do Im�vel "+especificacaoImovelSituacao.getDescricao()+" inserida com sucesso!", "Inserir outra Especifica��o Situa��o do Im�vel", "exibirInserirEspecificacaoSituacaoImovelAction.do?menu=sim", "exibirAtualizarEspecificacaoSituacaoImovelAction.do?idEspecificacao="+especificacaoImovelSituacao.getId(), "Atualizar Especifica��o Situa��o do Im�vel Inserida"); return retorno; } /** * Insere Cole��o de EspecificacaoImovelSituacaoCriterio devidamente validados na base * * @author Rafael Pinto * @date 04/08/2006 * * @param InserirEspecificacaoSituacaoImovelActionForm * @param fachada * @param especificacaoImovelSituacao */ private void inserirEspecificacaoImovelSituacaoCriterio(InserirEspecificacaoSituacaoImovelActionForm inserirActionForm, Fachada fachada, EspecificacaoImovelSituacao especificacaoImovelSituacao) { // Cole��o de EspecificacaoImovelSituacaoCriterio Collection colecaoEspecificacaoImovelSituacaoCriterio = inserirActionForm.getEspecificacaoImovelSituacaoCriterio(); for (Iterator iter = colecaoEspecificacaoImovelSituacaoCriterio.iterator(); iter.hasNext();) { EspecificacaoImovSitCriterio element = (EspecificacaoImovSitCriterio) iter.next(); element.setEspecificacaoImovelSituacao(especificacaoImovelSituacao); fachada.inserir(element); } } }