public List <Video> GetByVideoMiolo(VideoMiolo vm, string matricula = null, Aplicacoes IdAplicacao = Aplicacoes.MsProMobile, string VersaoApp = "") { VideoMioloEntity vme = new VideoMioloEntity(); vme.setVersaoAplicacao((int)IdAplicacao, VersaoApp); vme.setChaveamentoVimeoApostila(new ChaveamentoVimeoMediMiolo()); var lst = vme.GetByFilters(vm).ToList(); var lstv = new Videos(); foreach (var valor in lst) { if (!lstv.Any(i => i.Url.Equals(valor.HTTPURL))) { var video = new Video(); video.ID = Convert.ToInt32(valor.ID); video.VideoId = valor.VideoID; video.Url = valor.HTTPURL; video.Thumb = valor.URLThumb; video.Links = valor.Links; video = CreateVideoObject(video, matricula); lstv.Add(video); } } return(lstv); }
public RecuperaSenhaDTO EnviarEmailEsqueciSenha(string identificador, Aplicacoes aplicacao) { Cliente cliente = new Cliente(); var filtro = new AlunoDTO(); var recupera = new RecuperaSenhaDTO(); recupera.Validacao = ValidaRecuperaSenha.Inexistente; if (Utilidades.IsValidEmail(identificador)) { filtro.Email = identificador; } else { filtro.Register = identificador; } var aluno = _clienteDataRepository.GetAlunoPorFiltros(filtro); if (aluno != null && aluno.Id != default(int)) { cliente.Register = aluno.Register; var result = _clienteDataRepository.UpdateEsqueciSenha(cliente, aplicacao); recupera.Validacao = result.Key > default(int) ? ValidaRecuperaSenha.EmailEnviado : ValidaRecuperaSenha.Inexistente; } return recupera; }
public List <Aluno> GetAlunosNotificacao(Notificacao notificacao) { using (MiniProfiler.Current.Step("Obtendo notificação de alunos")) { var matriculas = new List <Aluno> (); Aplicacoes aplicacao = (Aplicacoes)notificacao.AplicacaoId; if (notificacao.Matricula.Equals(-1)) { var listAccessObjectNotificacao = new List <AccessObject> { new AccessObject { Id = notificacao.IdNotificacao, Nome = notificacao.Texto } }; var listPermissoes = _accessRepository.GetRegrasNotificacoes(listAccessObjectNotificacao); var listCondicoesRegra = new List <RegraCondicao> (); foreach (var regraPermissao in listPermissoes) { listCondicoesRegra.AddRange(_accessRepository.GetRegraCondicoes((int)aplicacao, regraPermissao.Regra.Id)); } matriculas = _accessRepository.GetAlunosPorRegra(listCondicoesRegra, aplicacao); } else { matriculas.Add(_alunoRepository.GetAlunosDevice(notificacao.Matricula, aplicacao)); } return(matriculas); } }
public PartialViewResult ListByAnimal(int AnimalId) { ViewBag.ApresentaDadoAnimais = false; ViewBag.Titulo = "Vacinas Aplicadas"; ViewBag.Aplicacoes = Aplicacoes.ListByAnimal(AnimalId); return(PartialView("Listar")); }
public List <Banner> GetBanners(Aplicacoes aplicacao) { using (var ctx = new DesenvContext()) { var query = from b in ctx.tblBanners join o in ctx.tblAccess_Object on b.intObjectId equals o.intObjectId join ov in ctx.tblAcess_Object_Validity on o.intObjectId equals ov.intObjectId where o.intObjectTypeId == (int)Utilidades.TipoObjetos.BANNER && o.intApplicationId == (int)aplicacao && o.bitAtivo == true && ov.bitAtivo == true && ov.dteInicio <= DateTime.Now && ov.dteFim >= DateTime.Now orderby o.intOrdem ascending select new Banner() { ID = b.intBannerId, ObjectId = b.intObjectId, Descricao = b.txtDescricao, Imagem = b.txtImagem, Link = b.txtLink, IsLinkExterno = b.bitLinkExterno, ClickAqui = b.txtClickAqui, IdSimulado = b.intSimuladoID ?? 0 }; return(query.ToList()); } }
public int AceitarTermoInadimplencia(int idOrdemVenda, int matricula, Aplicacoes aplicacao) { return(_alunoRepository.SetChamadoInadimplencia(new PermissaoInadimplencia { IdOrdemDeVenda = idOrdemVenda, Matricula = matricula, IdAplicacao = (int)aplicacao })); }
public int CadastrarSenha(string register, string senha, Aplicacoes aplicacao, string senhaAnterior = "", int id = 0) { var isMedSoftPro = (aplicacao == Aplicacoes.MsProMobile); var isMedSoftProDesktop = ((int)aplicacao == (int)Aplicacoes.MEDSOFT_PRO_ELECTRON); var isMedEletro = (aplicacao == Aplicacoes.MEDELETRO); var idAplicacao = (int)aplicacao; var filtro = new AlunoDTO(); if ((isMedSoftPro || isMedSoftProDesktop || isMedEletro) && Utilidades.IsValidEmail(register)) { filtro.Email = register.ToLower().Trim(); } else { filtro.Register = register; filtro.Id = id; } var aluno = _clienteDataRepository.GetAlunoPorFiltros(filtro); if(aluno != null && aluno.Id != 0) { var novaSenha = new AlunoSenhaDTO { ClientId = aluno.Id, AplicacaoId = idAplicacao, Senha = senha, Data = DateTime.Now }; var alunoSenha = _clienteDataRepository.GetAlunoSenha(aluno.Id); if (alunoSenha == null) { _clienteDataRepository.InserirAlunoSenha(novaSenha); } else if (alunoSenha.Senha != senhaAnterior) { return 0; } else { novaSenha.Id = alunoSenha.Id; _clienteDataRepository.AlterarAlunoSenha(novaSenha); } return 1; } else { return 0; } }
public ActionResult Vacinacao(int VacinaId) { ViewBag.Vacinas = Current.Vacinas; ViewBag.ApresantaResuldado = true; Vacina vacina = Vacina.Get(VacinaId); Aplicacoes aplicacoes = Aplicacoes.ListByVacina(VacinaId, Current.FazendaId); ViewBag.Aplicacoes = aplicacoes; ViewBag.ApresentaDadoAnimais = true; ViewBag.QuantidadeFazendaAnimais = Animais.ListCountAnimaisByFazenda(Current.FazendaId); return(View()); }
public string GetUltimaVersao(Aplicacoes app) { using (var ctx = new DesenvContext()) { var versao = ctx.tblAccess_Object_Application .Where(x => x.intApplicationId == (int)app) .Select(x => x.txtMinVersion) .OrderByDescending(x => x) .FirstOrDefault(); return(versao); } }
public ValidaLoginDTO ValidaAcesso(int matricula, Aplicacoes aplicacao, string versaoApp) { if (matricula == default(int)) { var tarefaVersaoLoja = Utilidades.ObterUltimaVersaoLojaAsync(aplicacao); var versao = ObterDadosVersao(versaoApp, tarefaVersaoLoja.Result, aplicacao); return(new ValidaLoginDTO { Validacao = ValidacaoLogin.Sucesso, Versao = versao }); } var cliente = _clienteRepository.GetDadosBasicos(matricula); return(Login(cliente.Register, string.Empty, false, aplicacao, versaoApp)); }
public PartialViewResult ListByVacina(int VacinaId) { ViewBag.ApresentaDadoAnimais = true; Vacina vacina = Vacina.Get(VacinaId); string titulo = string.Empty; if (vacina != null) { titulo = string.Format("Animais vacinados ({0})", vacina.Nome); } else { titulo = "Animais vacinados"; } ViewBag.Titulo = titulo; ViewBag.Aplicacoes = Aplicacoes.ListByVacina(VacinaId, Current.FazendaId); return(PartialView("Listar")); }
public VersaoDTO ObterDadosVersao(string versaoApp, string ultimaVersao, Aplicacoes aplicacao) { var versaoInexistente = "0.0.0"; versaoApp = string.IsNullOrEmpty(versaoApp) ? versaoInexistente : versaoApp; var versaoBloqueada = _versaoAppPermissaoRepository.GetUltimaVersaoBloqueada((int)aplicacao); if (string.IsNullOrEmpty(versaoBloqueada)) { versaoBloqueada = versaoInexistente; } return(new VersaoDTO { VersaoValida = !Utilidades.VersaoMenorOuIgual(versaoApp, versaoBloqueada), VersaoAtualizada = string.IsNullOrEmpty(ultimaVersao) || Utilidades.VersaoMaiorOuIgual(versaoApp, ultimaVersao), NumeroUltimaVersao = ultimaVersao }); }
public bool IsAcessoBloqueado(int clientId, Aplicacoes aplicacao) { bool bloqueado = false; var isRecursos = (aplicacao == Aplicacoes.Recursos || aplicacao == Aplicacoes.Recursos_iPad || aplicacao == Aplicacoes.Recursos_iPhone || aplicacao == Aplicacoes.Recursos_Android); bool isOnlyMedReaderDenied = false; bool isBloqueadoPorAplicacoesOuAplicativos = false; if (clientId > 0) { var _blacklist = GetAll().Where(x => x.ID == clientId); var blacklistMember = _blacklist.FirstOrDefault(); if (blacklistMember != null) { isBloqueadoPorAplicacoesOuAplicativos = _blacklist.Where(x => x.Bloqueios.Any(y => (y.TabelaBloqueio == Bloqueio.TipoBloqueio.Aplicacao || y.TabelaBloqueio == Bloqueio.TipoBloqueio.Aplicativos))).Any(); isOnlyMedReaderDenied = blacklistMember.Bloqueios.Count == 1 && (blacklistMember.Bloqueios[0].AplicacaoId == (int)Aplicacoes.LeitordeApostilas); if (isOnlyMedReaderDenied && aplicacao != Aplicacoes.LeitordeApostilas) { isBloqueadoPorAplicacoesOuAplicativos = false; } if (isRecursos || aplicacao == Aplicacoes.MEDSOFT) { bloqueado = IsBloqueadoPorRecurso(clientId); } else { bloqueado = !(!isBloqueadoPorAplicacoesOuAplicativos || (isOnlyMedReaderDenied && aplicacao == Aplicacoes.MsProMobile)); } } } return(bloqueado); }
public List <Video> GetByVideoMiolo(VideoMiolo vm, string matricula = null, Aplicacoes IdAplicacao = Aplicacoes.MsProMobile, string VersaoApp = "") { var lstVideosMiolo = new VideosMiolo(); var videos = _vimeoRepository.GetByFilters(vm).ToList(); var chaveamento = new ChaveamentoVimeoMediMiolo(); foreach (var item in videos) { VideoMiolo v = new VideoMiolo() { ID = item.IDApostila.ToString(), VideoID = item.VideoID, IDApostila = item.IDApostila, CodigoVideo = item.CodigoVideo, BorKey = _vimeoRepository.GetBorKey(item.CodigoVideo, item.Ano, item.IDApostila), Qualidade = vm.Qualidade, }; tblVideo video = _vimeoRepository.GetVideoVimeo(null, Convert.ToInt32(item.VideoID)); VideoUrlDTO videoRetorno = new VideoUrlDTO { Url = string.Empty }; var chaveamentoVimeo = chaveamento.GetChaveamento(); if (chaveamentoVimeo) { if ((int)IdAplicacao == (int)Aplicacoes.MEDSOFT_PRO_ELECTRON || (int)IdAplicacao == (int)Aplicacoes.AreaRestrita) { v.URL = video.txtUrlStreamVimeo; } else { v.URL = video.txtUrlVimeo; } } if (video.intVimeoID == null) { ValidarEnvioEmailVideoDefeituoso(video); } else if (v.URL == null) { v.URL = _vimeoRepository.GetUrlPlataformaVideo(video, chaveamentoVimeo, (int)IdAplicacao); if (v.URL == string.Empty) { ValidarEnvioEmailVideoDefeituoso(video); } } v.HTTPURL = v.URL; v.URLThumb = _vimeoRepository.GetUrlThumb(video, new ChaveamentoVimeoMediMiolo(), VersaoApp); v.Links = _vimeoRepository.GetLinksVideoVariasQualidades(video.txtVideoInfo, v.URL); lstVideosMiolo.Add(v); } var lstv = new Videos(); foreach (var valor in lstVideosMiolo) { if (!lstv.Any(i => i.Url.Equals(valor.HTTPURL))) { var video = new Video(); video.ID = Convert.ToInt32(valor.ID); video.VideoId = valor.VideoID; video.Url = valor.HTTPURL; video.Thumb = valor.URLThumb; video.Links = valor.Links; video = _vimeoRepository.CreateVideoObject(video, matricula); lstv.Add(video); } } return(lstv); }
public ValidacaoDTO CadastrarSenhaAluno(string identificador, string senhaAtual, string novaSenha, Aplicacoes aplicacao) { var filtro = new AlunoDTO(); var validacao = new ValidacaoDTO { Status = StatusRetorno.Falha, Mensagem = Constants.Messages.Acesso.AlunoInexistente.GetDescription() }; if (Utilidades.IsValidEmail(identificador)) { filtro.Email = identificador; } else { filtro.Register = identificador; } var aluno = _clienteDataRepository.GetAlunoPorFiltros(filtro); if(aluno != null && aluno.Id != default(int)) { var result = CadastrarSenha(aluno.Register, novaSenha, aplicacao, senhaAtual, aluno.Id); if((result == default(int))) { validacao.Status = StatusRetorno.Falha; validacao.Mensagem = Constants.Messages.Acesso.SenhaIncorreta.GetDescription(); } else { validacao.Status = StatusRetorno.Sucesso; validacao.Mensagem = string.Empty; } } return validacao; }
public Videos GetVideoApostila(string codigo, string matricula, Aplicacoes IdAplicacao = Aplicacoes.MsProMobile, string versao = "") { var videos = _vimeoRepository.GetVideosApostilaCodigoJson(codigo, matricula, IdAplicacao, versao); return(videos); }
public List <NotificacaoPosEventoDTO> GetNotificacoesAlunoPosEvento(int matricula, Aplicacoes aplicacao) { using (var ctx = new DesenvContext()) { return((from ne in ctx.tblNotificacaoEvento join n in ctx.tblNotificacao on ne.intNotificacaoId equals n.intNotificacaoId where ne.intContactId == matricula && ne.bitAtivo && n.intApplicationId == (int)aplicacao select new NotificacaoPosEventoDTO { IdNotificacao = ne.intNotificacaoId ?? 0, Matricula = ne.intContactId, Titulo = ne.txtTitulo, Mensagem = ne.txtDescricao, Metadados = ne.Metadados, Data = ne.dteCadastro ?? DateTime.MinValue, Lida = ne.intStatusLeitura.HasValue && ne.intStatusLeitura.Value == (int)ELeituraNotificacaoEvento.Lida }).ToList()); } }
public List <OneSignalNotificationResponse> SendSeletivasList(List <NotificacaoSeletiva> notificacaoSeletivas, Aplicacoes aplicacao) { using (MiniProfiler.Current.Step("Enviando lista de seletivas")) { var lstRetorno = new List <OneSignalNotificationResponse> (); var chaveAppId = Utilidades.AppIdNotificacoes(aplicacao); var chaveGcmKey = Utilidades.GcmKeyNotificacoes(aplicacao); foreach (var item in notificacaoSeletivas) { var retorno = SendSeletiva(item, chaveAppId, chaveGcmKey); lstRetorno.Add(retorno); System.Threading.Thread.Sleep(3000); } return(lstRetorno); } }
private Task <PermissaoInadimplencia> VerificaInadimplenciaAsync(string register, Aplicacoes aplicacao) { return(Task.Factory.StartNew( () => _alunoRepository.GetPermissao(register, (int)aplicacao) )); }
public Videos GetVideosApostilaCodigoJson(string codigo, string matricula = null, Aplicacoes IdAplicacao = Aplicacoes.MsProMobile, string versao = "") { if (IsVideoINTRO(codigo)) { var v = Convert.ToInt32(codigo.ToUpper().Replace("INTRO_", "").Trim()); return(new Videos { GetVideoIntro(v) }); } else { var vm = new VideoMiolo(); if (codigo.Contains("-")) { string[] CodigoApostilaID = codigo.Split('-'); vm.IDApostila = int.Parse(CodigoApostilaID[0]); vm.CodigoVideo = CodigoApostilaID[1]; } else { vm.CodigoVideo = codigo; } string versaoapp = versao == "" ? ConfigurationProvider.Get("Settings:ChaveamentoVersaoMinimaMsPro") : versao; return((Videos)GetByVideoMiolo(vm, matricula, IdAplicacao, versaoapp)); } }
public ValidaLoginDTO Login(string identificador, string senha, Aplicacoes aplicacao, string versaoApp) { return(Login(identificador, senha, true, aplicacao, versaoApp)); }
private Task <List <Menu> > ObterPermissoesRecursosAsync(int matricula, string versao, Aplicacoes aplicacao) { return(Task.Factory.StartNew(() => _menuBusiness.GetPermitidos((int)aplicacao, matricula, 0, 0, versao))); }
public int RegistrarTokenNotificacaoDevice(int matricula, string token, Utilidades.TipoDevice idDevice, Aplicacoes aplicacao) { var result = 0; if (!string.IsNullOrEmpty(token) && (Utilidades.IsTablet(idDevice) || Utilidades.IsMobile(idDevice))) { result = _alunoRepository.SetDeviceToken(new DeviceToken { Register = matricula, Token = token, bitIsTablet = Utilidades.IsTablet(idDevice), AplicacaoId = (int)aplicacao }); } return(result); }
private ValidaLoginDTO Login(string identificador, string senha, bool validarSenha, Aplicacoes aplicacao, string versaoApp) { senha = validarSenha ? Utilidades.EncryptionSHA1(senha) : senha; Task <PermissaoInadimplencia> tarefaInadimplencia = null; Task <List <Menu> > menusPermitidos = null; Task <IDictionary <Utilidades.EMenuAccessObject, bool> > tarefaPermissoesRMais = null; IDictionary <Utilidades.EMenuAccessObject, bool> permissoesRMais = new Dictionary <Utilidades.EMenuAccessObject, bool>(); var tarefaVersaoLoja = Utilidades.ObterUltimaVersaoLojaAsync(aplicacao); Cliente pessoa = new Cliente(); var isGolden = false; var alunoMedMedcurso = true; Cliente cliente = new Cliente { Register = identificador }; var dadosBasicos = GetRegisterParaLogin(identificador); if (dadosBasicos != null) { cliente.Register = dadosBasicos.Register; menusPermitidos = ObterPermissoesRecursosAsync(dadosBasicos.ID, versaoApp, aplicacao); } var tipoPessoa = _clienteRepository.GetPersonType(cliente.Register); var isProfessor = (tipoPessoa == Pessoa.EnumTipoPessoa.Professor || tipoPessoa == Pessoa.EnumTipoPessoa.Funcionario); if (tipoPessoa == Pessoa.EnumTipoPessoa.Cliente) { tarefaInadimplencia = VerificaInadimplenciaAsync(cliente.Register, aplicacao); pessoa = _clienteRepository.GetByFilters(cliente, 0, aplicacao).FirstOrDefault(); pessoa.Nome = Utilidades.GetNomeResumido(pessoa.Nome); pessoa.Avatar = pessoa.Avatar; pessoa.Estado = _alunoRepository.GetAlunoEstado(pessoa.ID); } else if (isProfessor) { var funcionario = _funcionarioRepository.GetFuncionariosRecursos(cliente.Register).FirstOrDefault(); pessoa.ID = funcionario.ID; pessoa.Nome = Utilidades.GetNomeResumido(funcionario.Nome); pessoa.Senha = funcionario.Senha; pessoa.RetornoStatus = Cliente.StatusRetorno.Inexistente; var avatarProfessor = string.Concat( Constants.URLDIRETORIOAVATARPROFESSOR, pessoa.ID, ".jpg" ); pessoa.Avatar = Utilidades.VerificaImagemExiste(avatarProfessor) ? avatarProfessor : Constants.LINK_STATIC_AVATAR_PADRAO; } else if (tipoPessoa == Pessoa.EnumTipoPessoa.NaoExiste) { return(ValidaLoginDTO.AlunoInexistente); } if (IsLoginSucesso(tipoPessoa, pessoa.RetornoStatus)) { isGolden = _clienteRepository.UserGolden(cliente.Register, aplicacao) == 1; } if (tipoPessoa == Pessoa.EnumTipoPessoa.Cliente) { tarefaPermissoesRMais = ObterPermissoesRecursosRMaisAsync(menusPermitidos.Result); alunoMedMedcurso = ObterPermissoesRecursosRUm(menusPermitidos.Result); var result = ValidaResultadoLoginCliente(pessoa, senha, validarSenha, isGolden, tarefaInadimplencia); if (result != null) { if (StatusLoginPermiteAcesso(result.Validacao)) { var acessoRmais = tarefaPermissoesRMais.Result; var acessoR1 = alunoMedMedcurso; var acessoRmaisPorInteresse = GanhaPermissaoRMaisPorInteresse(pessoa.ID, acessoR1, acessoRmais); if (acessoRmaisPorInteresse) { acessoRmais = LiberarPermissoes(tarefaPermissoesRMais.Result); } var permissao = ObterHashPermissao( new KeyValuePair <string, object>("matricula", pessoa.ID), new KeyValuePair <string, object>("RMais", acessoRmais), new KeyValuePair <string, object>("RUm", acessoR1) ); result.Versao = ObterDadosVersao(versaoApp, tarefaVersaoLoja.Result, aplicacao); result.Perfil.RUm = acessoR1; result.Perfil.RMais = PossuiPermissaoRecursoRMais(pessoa.ID, acessoR1, acessoRmais); result.Perfil.ProdutoPrincipal = GetNomeProdutoPermissao(acessoRmais); result.Perfil.Hash = Criptografia.CryptAES(permissao); } return(result); } } var senhaGolden = string.Empty; if (isGolden) { senhaGolden = _clienteRepository.ObterSenhaGolden(); senhaGolden = Utilidades.EncryptionSHA1(senhaGolden); } if (validarSenha && senha != pessoa.Senha && (!isGolden || senha != senhaGolden)) { return(ValidaLoginDTO.SenhaInvalida); } var versao = ObterDadosVersao(versaoApp, tarefaVersaoLoja.Result, aplicacao); var permissaoR1 = alunoMedMedcurso; if (isProfessor) { permissoesRMais = LiberarPermissoesRecursosRMaisProfessor(); permissaoR1 = true; } else { permissoesRMais = tarefaPermissoesRMais.Result; } var permiteRMaisPorInteresse = GanhaPermissaoRMaisPorInteresse(pessoa.ID, permissaoR1, permissoesRMais); if (permiteRMaisPorInteresse) { permissoesRMais = LiberarPermissoes(tarefaPermissoesRMais.Result); } var hash = ObterHashPermissao( new KeyValuePair <string, object>("matricula", pessoa.ID), new KeyValuePair <string, object>("RMais", permissoesRMais), new KeyValuePair <string, object>("RUm", permissaoR1) ); return(new ValidaLoginDTO { Validacao = ValidacaoLogin.Sucesso, Versao = versao, Perfil = new PerfilDTO { Matricula = pessoa.ID, Email = pessoa.Email ?? pessoa.Email2 ?? pessoa.Email3, Especialidade = pessoa.Especialidade, Nome = pessoa.Nome, UrlAvatar = pessoa.Avatar, RUm = permissaoR1, RMais = PossuiPermissaoRecursoRMais(pessoa.ID, permissaoR1, permissoesRMais), ProdutoPrincipal = GetNomeProdutoPermissao(permissoesRMais), Estado = pessoa.Estado, Hash = Criptografia.CryptAES(hash) } }); }
public List <Aluno> GetAlunosPorRegra(List <RegraCondicao> listRegraCondicao, Aplicacoes aplicacao) { throw new NotImplementedException(); }