public AcessoDTO LoadSelectedBranchSettings(AcessoDTO pAcesso, int pSerieFaturacao, string pSys, string pFrom, EmpresaDTO pEmpresa) { try { ConfiguracaoDTO SystemConfigurations = ConfiguracaoRN.GetInstance().GetSystemConfiguration(pEmpresa); if (SystemConfigurations.Sucesso) { SystemConfigurations.SerieFaturacao = pSerieFaturacao; pAcesso.Filial = SystemConfigurations.Filial; pAcesso.CompanyName = SystemConfigurations.BranchDetails.NomeComercial; pAcesso.CompanyLogo = SystemConfigurations.BranchDetails.CompanyLogo; } else { //SystemConfigurations = new ConfiguracaoDTO(); SystemConfigurations.BranchDetails = pEmpresa; SystemConfigurations.Filial = pEmpresa.Codigo.ToString(); } if (SystemConfigurations.MensagemErro == string.Empty && SystemConfigurations.Sucesso) { if (AcessoRN.GetInstance().SessaoIniciada(pAcesso) && !string.IsNullOrEmpty(pAcesso.Maquina)) { TerminarSessao(pAcesso.Utilizador); } pAcesso.Filial = pEmpresa.Codigo.ToString(); pAcesso.DefaultLanguage = "pt-PT"; pAcesso.Language = string.Empty; pAcesso.UserDefaultWarehouse = ArmazemRN.GetInstance().ObterPorFiltro(new ArmazemDTO { Filial = pAcesso.Filial, Descricao = string.Empty }) .Where(t => t.Codigo == SystemConfigurations.PosDefaultWarehouse).FirstOrDefault(); pAcesso.WareHouseName = pAcesso.UserDefaultWarehouse.Descricao; pAcesso.UserPOS = PosRN.GetInstance().ObtePostosVendas(new PosDTO(pAcesso.Utilizador, pAcesso.Filial)).Where(t => t.Descricao == pAcesso.Utilizador).SingleOrDefault(); pAcesso.StatusSessao = "A"; pAcesso.CurrentSystem = pSys; pAcesso.Filial = pEmpresa.Codigo.ToString(); var saveLogin = InserirAcesso(pAcesso); pAcesso.Sucesso = !pAcesso.Sucesso ? saveLogin.Sucesso : pAcesso.Sucesso; if (pAcesso.Sucesso) { pAcesso.Url = "Index"; if (pSys == "REST") { pAcesso.UserAccess = PermissaoFormularioRN.GetInstance().ObterPermissoesFormularioREST(new UtilizadorDTO(pAcesso.Utilizador)); if (pAcesso.UserProfile == AcessoDTO.CashRegisterProfile) { pAcesso.Url = "window.location.href='/RestPOS'"; SystemConfigurations.IsCashRegister = true; } else if (pAcesso.FuncionarioID != "" && pAcesso.FuncionarioID != "-1" && pAcesso.FuncionarioID != "0" || pFrom == LOCKSCREEN) { pAcesso.Url = "window.location.href='/AtendimentoSala?pE=" + pAcesso.FuncionarioID + "'"; } } else { SerieDTO PosSerieDefault = pAcesso.UserPOS != null? SerieRN.GetInstance().ObterPorPK(new SerieDTO { Codigo = pAcesso.UserPOS.DocumentSerieID }) : null; SystemConfigurations.DesignationDefaultSeriePOS = PosSerieDefault != null ? PosSerieDefault.Descricao : string.Empty; if (pSys == "POS") { pAcesso.UserAccess = PermissaoFormularioRN.GetInstance().ObterPermissoesFormularioPOS(new UtilizadorDTO(pAcesso.Utilizador)); } else if (pSys == "COM") { pAcesso.UserAccess = PermissaoFormularioRN.GetInstance().GetUserAccess(pAcesso.Utilizador); } else if (pSys == "SIKOLA") { } if (pAcesso.UserProfile == AcessoDTO.CashRegisterProfile) { if (SystemConfigurations.BranchDetails.Categoria == "2") { pAcesso.Url = "window.location.href='../Lavandaria/Home';"; } else { pAcesso.Url = "window.location.href='../Comercial/POS';"; } SystemConfigurations.IsCashRegister = true; } } pAcesso.CurrentSystem = pSys; pAcesso.Settings = SystemConfigurations; } else { pAcesso.MensagemErro = "alert('Ocorreu um erro ao Gravar a Sessão: " + saveLogin.MensagemErro + "');"; } } else { if (SystemConfigurations.MensagemErro != "") { pAcesso.MensagemErro = "alert('Ocorreu um erro ao carregar as configurações: " + SystemConfigurations.MensagemErro + "');"; } else { pAcesso.MensagemErro = "alert('A Empresa não tem está configurada'); window.location.href = '../Seguranca/Login';"; } } } catch (Exception ex) { pAcesso.MensagemErro = "alert('Ocorreu um Erro durante o inicio de Sessão: " + ex.Message.Replace("'", "") + " Acesso: " + pAcesso.StatusSessao + pAcesso.Url + "');"; } return(pAcesso); }
AcessoDTO ReloadSessionSettings(AcessoDTO acesso, int pSerieFaturacao, string SystemLogged, EmpresaDTO objFilial) { ConfiguracaoDTO SystemConfigurations = ConfiguracaoRN.GetInstance().GetSystemConfiguration(objFilial); if (SystemConfigurations.Sucesso) { SystemConfigurations.SerieFaturacao = pSerieFaturacao; acesso.Filial = SystemConfigurations.Filial; } else { SystemConfigurations.BranchDetails = objFilial; SystemConfigurations.Filial = objFilial.Codigo.ToString(); } if (SystemConfigurations.MensagemErro == string.Empty && SystemConfigurations.Sucesso) { if (AcessoRN.GetInstance().SessaoIniciada(acesso) && !string.IsNullOrEmpty(acesso.Maquina)) { TerminarSessao(acesso.Utilizador); } acesso.Filial = objFilial.Codigo.ToString(); acesso.DefaultLanguage = "pt-PT"; acesso.Language = string.Empty; acesso.UserDefaultWarehouse = ArmazemRN.GetInstance().ObterPorFiltro(new ArmazemDTO { Filial = acesso.Filial, Descricao = string.Empty }) .Where(t => t.Codigo == SystemConfigurations.PosDefaultWarehouse).SingleOrDefault(); acesso.WareHouseName = acesso.UserDefaultWarehouse.Descricao; acesso.UserPOS = PosRN.GetInstance().ObtePostosVendas(new PosDTO(acesso.Utilizador, acesso.Filial)).Where(t => t.Descricao == acesso.Utilizador).SingleOrDefault(); if (SystemLogged == KITANDAREST) { acesso.UserAccess = PermissaoFormularioRN.GetInstance().ObterPermissoesFormularioREST(new UtilizadorDTO(acesso.Utilizador)); } else { SerieDTO PosSerieDefault = acesso.UserPOS != null?SerieRN.GetInstance().ObterPorPK(new SerieDTO { Codigo = acesso.UserPOS.DocumentSerieID }) : null; SystemConfigurations.DesignationDefaultSeriePOS = PosSerieDefault != null ? PosSerieDefault.Descricao : string.Empty; if (SystemLogged == KITANDAPOS) { acesso.UserAccess = PermissaoFormularioRN.GetInstance().ObterPermissoesFormularioPOS(new UtilizadorDTO(acesso.Utilizador)); } else if (SystemLogged == KITANDAGC) { acesso.UserAccess = PermissaoFormularioRN.GetInstance().GetUserAccess(acesso.Utilizador); } else if (SystemLogged == SIKOLA) { } if (acesso.UserProfile == AcessoDTO.CashRegisterProfile) { SystemConfigurations.IsCashRegister = true; } } acesso.Settings = SystemConfigurations; } return(acesso); }