public async Task <IActionResult> LoginByAccount()
        {
            string  userName      = Request.Form["username"];
            string  passWord      = Request.Form["pass"];
            Account resultAccount = accountRepository.Login(userName, passWord);

            if (resultAccount != null)
            {
                UtilModel util        = new UtilModel(config);
                string    emailEncode = Convert.ToBase64String(Encoding.UTF8.GetBytes(resultAccount.Email));
                //TempData["token"] = util.CreateToken(resultEmail);
                ViewBag.token   = util.CreateToken(resultAccount.Email);
                ViewBag.brandid = resultAccount.BrandId;
                ViewBag.email   = resultAccount.Email;
                //use to showAccountByAdminName on ManageAccount Page (Sub-admin was create by username-Admin)
                ViewBag.adminName = resultAccount.Username;

                //Admin ko dc tạo bởi admin khác nên adminName = null  Mai
                await HttpContext.Session.LoadAsync();

                if (String.IsNullOrEmpty(resultAccount.AdminName))
                {
                    HttpContext.Session.SetString("brandId", resultAccount.BrandId.ToString());
                    HttpContext.Session.SetString("date", DateTime.Now.ToString());
                    HttpContext.Session.SetString("adminName", resultAccount.Username);
                }
                HttpContext.Session.SetString("email", resultAccount.Email);
                await HttpContext.Session.CommitAsync();

                /*return View("Admin");*/
                return(RedirectToAction("Show", "Admin"));
            }
            return(View("Login"));
        }
Esempio n. 2
0
        public JsonResult UnidadeContratante(string Prefix)
        {
            UtilModel util      = new UtilModel();
            string    SessionID = (string)Session["SessionID"];


            ListaItem listaItem = new ListaItem();

            listaItem.Itens = new List <Item>()
            {
            };

            var unidadeContratante = util.ListaUnidade(SessionID, "UNIDADE");

            var retorno = (from u in unidadeContratante
                           where u.Nome.Contains("PARANA")
                           select new { u.Codigo, u.Nome });

            foreach (var i in retorno)
            {
                Item item = new Item();
                item.codigo    = i.Codigo;
                item.Descricao = i.Nome;

                listaItem.Itens.Add(item);
            }


            return(Json(listaItem, JsonRequestBehavior.AllowGet));
        }
        public async Task <IActionResult> CheckToken(string email, string token)
        {
            UtilModel utilModel = new UtilModel(config);

            if (utilModel.ValidateToken(token))
            {
                string  emailDecode = Encoding.UTF8.GetString(Convert.FromBase64String(email));
                Account account     = await accountRepository.GetAccountByEmail(emailDecode);

                int role = account.Role;

                if (role == 0)
                {
                    return(RedirectToAction("ShowResult", "Staff", new { email = email }));
                }
                else
                {
                    await HttpContext.Session.LoadAsync();

                    HttpContext.Session.SetString("brandId", account.BrandId.ToString());
                    HttpContext.Session.SetString("date", DateTime.Now.ToString());
                    HttpContext.Session.SetString("adminName", account.Username);
                    HttpContext.Session.SetString("email", account.Email);
                    await HttpContext.Session.CommitAsync();

                    return(RedirectToAction("Show", "Admin"));
                }
            }
            return(RedirectToAction("Logout"));
        }
        public async Task <IActionResult> LoginByGoogle(string token)
        {
            const string        GoogleApiTokenInfoUrl = "https://www.googleapis.com/oauth2/v3/tokeninfo?id_token={0}";
            var                 httpClient            = new HttpClient();
            var                 requestUri            = new Uri(string.Format(GoogleApiTokenInfoUrl, token));
            HttpResponseMessage httpResponseMessage;

            try
            {
                httpResponseMessage = httpClient.GetAsync(requestUri).Result;
            }
            catch (Exception)
            {
                return(RedirectToAction("Logout"));
            }
            if (httpResponseMessage.StatusCode != HttpStatusCode.OK)
            {
                return(RedirectToAction("Logout"));
            }

            string response           = httpResponseMessage.Content.ReadAsStringAsync().Result;
            var    googleApiTokenInfo = JsonConvert.DeserializeObject <GoogleApiTokenInfo>(response);

            Account account = await accountRepository.GetAccountByEmail(googleApiTokenInfo.email);

            if (account == null)
            {
                return(RedirectToAction("Logout"));
            }
            else
            {
                UtilModel utilModel = new UtilModel(config);

                string email       = googleApiTokenInfo.email;
                string emailEncode = Convert.ToBase64String(Encoding.UTF8.GetBytes(email));
                int    role        = account.Role;

                TempData["token"] = utilModel.CreateToken(email);

                if (role == 0)
                {
                    return(RedirectToAction("ShowResult", "Staff", new { email = emailEncode }));
                }
                else
                {
                    await HttpContext.Session.LoadAsync();

                    HttpContext.Session.SetString("brandId", account.BrandId.ToString());
                    HttpContext.Session.SetString("date", DateTime.Now.ToString());
                    HttpContext.Session.SetString("adminName", account.Username);
                    HttpContext.Session.SetString("email", account.Email);
                    await HttpContext.Session.CommitAsync();

                    return(RedirectToAction("Show", "Admin"));
                }
            }
        }
Esempio n. 5
0
        public ActionResult CarregarInfoSolicitante(int ColaboradorID)
        {
            UtilModel util      = new UtilModel();
            string    SessionID = (string)Session["SessionID"];

            //carregar informações do usuario selecionado no dropdownlist
            var colaborador = util.CarregarColaborador(SessionID, ColaboradorID);

            return(Json(colaborador));
        }
Esempio n. 6
0
        // GET: Solicitacoes
        public ActionResult Index(int?pagina)
        {
            if (Session["SessionID"] != null)
            {
                string           SessionID    = (string)Session["SessionID"];
                SolicitacaoModel solicitacoes = new SolicitacaoModel();
                ProjetoModel     projeto      = new ProjetoModel();
                UtilModel        util         = new UtilModel();

                //Define a ação do botão novo
                ViewBag.Rota         = "";
                ViewBag.ContCadastro = "";

                //Carrega as solicitações
                var sol = solicitacoes.Solicitacoes(SessionID);

                //Configuração da paginação
                int paginaTamanho = 10;
                int paginaNumero  = (pagina ?? 1);

                //Carrega 10 solicitações por requisição.
                var listaSolicitacoes = sol.OrderBy(s => s.Codigo)
                                        .ToPagedList(paginaNumero, paginaTamanho);

                ViewBag.Situacao = util.ListaSituacao();
                ViewBag.Tipo     = util.ListaTipoSolicitacao();

                // Lista Projeto
                ViewBag.Projeto = projeto.ListaProjetos(SessionID);

                //Lista de usuarios do filtro
                ViewBag.Solicitante = util.ListaColaborador(SessionID);
                ViewBag.Coordenador = util.ListaColaborador(SessionID);
                ViewBag.Pesquisador = util.ListaColaborador(SessionID);

                //Lista de Unidades
                ViewBag.UnidadeContratante  = util.ListaUnidade(SessionID, "UNIDADE");
                ViewBag.UnidadeSolicitadora = util.ListaUnidade(SessionID, "UNIDADE");
                ViewBag.UnidadeRealizadora  = util.ListaUnidade(SessionID, "UNIDADE");

                return(View(listaSolicitacoes));
            }
            else
            {
                return(RedirectToAction("Login"));
            }
        }
Esempio n. 7
0
        // GET: Reembolso
        public ActionResult Index()
        {
            if (Session["SessionID"] != null)
            {
                string         SessionID = (string)Session["SessionID"];
                ReembolsoModel reembolso = new ReembolsoModel();
                UtilModel      utils     = new UtilModel();

                //Define a ação do botão novo
                ViewBag.Rota         = "CadastroReembolso";
                ViewBag.ContCadastro = "Reembolso";

                //Carrega as solicitações
                var reb = reembolso.ListaReembolso(SessionID, 0);

                return(View(reb));
            }
            else
            {
                return(RedirectToAction("Login"));
            }
        }
Esempio n. 8
0
        public ActionResult CadastroOrdemDePagamento()
        {
            if (Session["SessionID"] != null)
            {
                string           SessionID = (string)Session["SessionID"];
                SolicitacaoModel OrdemPgto = new SolicitacaoModel();
                ProjetoModel     projeto   = new ProjetoModel();
                UtilModel        utils     = new UtilModel();

                //carrega dropdow de projetos / Solicitante / Banco
                ViewBag.Projetos   = projeto.ListaProjetos(SessionID);
                ViewBag.Solicitate = utils.ListaColaborador(SessionID);
                ViewBag.Banco      = utils.ListaBancos();

                //Carrega as solicitações
                return(View(OrdemPgto.Solicitacoes(SessionID, "DI")));
            }
            else
            {
                return(RedirectToAction("Login"));
            }
        }
Esempio n. 9
0
        public ActionResult CadastroQuilometragem()
        {
            if (Session["SessionID"] != null)
            {
                string           SessionID     = (string)Session["SessionID"];
                SolicitacaoModel Quilometragem = new SolicitacaoModel();
                ProjetoModel     projeto       = new ProjetoModel();
                UtilModel        utils         = new UtilModel();

                //carrega dropdow de projetos / Solicitante / Banco
                ViewBag.Projetos   = projeto.ListaProjetos(SessionID);
                ViewBag.Solicitate = utils.ListaColaborador(SessionID);
                ViewBag.Banco      = utils.ListaBancos();

                //Carrega as solicitações
                var res = Quilometragem.Solicitacoes(SessionID, "KM");
                return(View(res));
            }
            else
            {
                return(RedirectToAction("Login"));
            }
        }
Esempio n. 10
0
        public ActionResult CadastroReembolso()
        {
            if (Session["SessionID"] != null)
            {
                string         SessionID = (string)Session["SessionID"];
                ReembolsoModel reembolso = new ReembolsoModel();
                ProjetoModel   projeto   = new ProjetoModel();
                UtilModel      utils     = new UtilModel();

                //carrega dropdow de projetos / Solicitante / Banco
                ViewBag.Projetos   = projeto.ListaProjetos(SessionID);
                ViewBag.Solicitate = utils.ListaColaborador(SessionID);
                ViewBag.Banco      = utils.ListaBancos();

                //Carrega as solicitações
                var reb = reembolso.ListaReembolso(SessionID, 0);
                return(View(reb));
            }
            else
            {
                return(RedirectToAction("Login"));
            }
        }