public INFOUsuario boRealizarLogin(string pUser, string pSenha) { WsConsultarProcesso wsConsulta = null; INFOUsuario objUsuario = null; wsINFOUsuario objWsInfoUsuario = null; try { wsConsulta = new WsConsultarProcesso(); wsConsulta.Url = System.Configuration.ConfigurationManager.AppSettings["URLWSSIGPA"].ToString(); //wsConsulta.Timeout = Convert.ToInt32(System.Configuration.ConfigurationManager.AppSettings["TIMEOUT"]); objWsInfoUsuario = wsConsulta.wsRealizarLogin(pUser, pSenha); if (objWsInfoUsuario != null) { Global.USER = objWsInfoUsuario.NomeUsuario; Global.PERFIL = objWsInfoUsuario.PerfilUsuario; objUsuario = new INFOUsuario(); objUsuario.NomeUsuario = objWsInfoUsuario.NomeUsuario; objUsuario.PerfilUsuario = objWsInfoUsuario.PerfilUsuario; } return(objUsuario); } catch (Exception ex) { throw ex; } }
/// <summary> /// Sincroniza o processo entre o SIGPA e o Sistema de Digitalização /// </summary> /// <param name="pStrNref"></param> /// <returns></returns> public INFOCliente boSincronizarBaseSIGPA(string pStrNref) { DAOProcesso objDaoProcesso = null; DAOCliente objDaoCliente = null; INFOCliente objCliente = null; INFOCliente objClienteSigpa = null; INFOProcesso objProcesso = null; wsINFOCliente objWsCliente = null; try { objDaoProcesso = new DAOProcesso(); //Sincroniza os dados entre o SIGPA e o SIGPA_DIGITAL //Pesquiso o processo na base local //Processo Existe na base local objProcesso = objDaoProcesso.dbObterProcesso(pStrNref); if (objProcesso != null) { //Achei o Processo então ele existe no SIGPA_DIGITAL //Mostro os dados na tela objCliente = objProcesso.ObjCliente; objCliente.ObjProcesso = new List <INFOProcesso>(); objCliente.ObjProcesso.Add(objProcesso); return(objCliente); } else { //Processo não existe na base Local //vou buscar o processo no web service WsConsultarProcesso objWs = new WsConsultarProcesso(); objWs.Url = System.Configuration.ConfigurationManager.AppSettings["URLWSSIGPA"].ToString(); if (Service.Ultil.verifyWebService() == false) { throw new Exception("Talvez o WEBSERVICE de Integração com o SIGPA esteja off line, por favor contate o adminstrador do sistema"); } objWsCliente = objWs.wsConsultarProcesso(pStrNref); if (objWsCliente != null) { objCliente = new INFOCliente(); objProcesso = new INFOProcesso(); objCliente.IdClienteSigpa = objWsCliente.IdCliente; objCliente.NomeCliente = objWsCliente.NomeCliente; objCliente.NomeClienteMapa = objWsCliente.NomeMapa; objCliente.NumeroCnpj = objWsCliente.NumeroCNPJ; objCliente.NumeroCpf = objWsCliente.NumeroCPF; objProcesso.IdProcessoSigpa = objWsCliente.IdProcessoSigpa; objProcesso.NumeroReferencia = pStrNref; //Gravo o id_cliente, nome do cliente, nome mapa, e cnpj/cpf além do processo na base do SIGPA_DIGITAL objDaoCliente = new DAOCliente(); //Abro a transação com o banco de dados boAbrirTrasacao(); //Tenho que verificar se o cliente ja está cadastro para não cadastra-lo novamente objClienteSigpa = objDaoCliente.dbObterClientePorIDSigpa(objCliente.IdClienteSigpa); if (objClienteSigpa == null) { if (objDaoCliente.dbInserirCliente(objCliente, pTrans)) { //Insiro também o processo //objCliente.IdCliente = objDaoCliente.dbObterCliente(); objProcesso.ObjCliente = new INFOCliente(); objProcesso.ObjCliente.IdCliente = objDaoCliente.dbObterUltimoID(pTrans); if (objDaoProcesso.dbInserirProcesso(objProcesso, pTrans)) { boCommit(); } } } else { //Insiro somente o processo objProcesso.ObjCliente = new INFOCliente(); objProcesso.ObjCliente.IdCliente = objClienteSigpa.IdCliente; if (objDaoProcesso.dbInserirProcesso(objProcesso, pTrans)) { boCommit(); } } } //Não existe processo //Envio mensagem para o usuário informando que o processo não está cadastrado no SIGPA return(objCliente); } //Fim da sincronização } catch (Exception ex) { boRollBack(); throw ex; } }