Пример #1
0
        public JsonResult SolicitarEmprestimo(int idTimeLine, DateTime dtDevolucao)
        {
            if (!ModelState.IsValid)
            {
                return(Json(false));
            }

            UsuarioModel user = (UsuarioModel)Session["oUser"];

            using (MigxContext ctx = new MigxContext())
            {
                var itemEmprestado = ctx.Itens.SingleOrDefault(it => it.Id == idTimeLine);

                EmprestimoModel emp = new EmprestimoModel()
                {
                    ItemID = idTimeLine,
                    UsuarioIDSolicitante    = user.ID,
                    UsuarioIDSolicitadoPara = itemEmprestado.UsuarioID,
                    DataSolicitacao         = DateTime.Now.Date,
                    DataDevolucaoPrevista   = dtDevolucao.Date,
                    Situacao = EmprestimoEstado.Solicitado
                };

                ctx.Emprestimos.Add(emp);
                ctx.SaveChanges();
            }

            return(Json(true));
        }
        public ActionResult Editar(TimeLineItemModel item)
        {
            var user = (UsuarioModel)Session["oUser"];

            using (MigxContext ctx = new MigxContext())
            {
                for (int i = 0; i < Request.Files.Count; i++)
                {
                    if (Request.Files[i].ContentLength > 0)
                    {
                        var file     = Request.Files[i];
                        var fileName = Path.GetFileName(file.FileName);
                        var extensao = Path.GetExtension(file.FileName);

                        FotoModel fotoInfo = new FotoModel();
                        fotoInfo.Id          = Guid.NewGuid();
                        fotoInfo.NomeArquivo = fileName;
                        fotoInfo.Extensao    = extensao;

                        var novoNome = Path.Combine(Server.MapPath("~/Content/Images/"), user.ID.ToString(), fotoInfo.Id + fotoInfo.Extensao); //Cria um novo nome baseado no Id e extensão.
                        file.SaveAs(novoNome);

                        fotoInfo.TimeLineID       = item.Id;
                        ctx.Entry(fotoInfo).State = System.Data.Entity.EntityState.Added;
                    }
                }

                item.UsuarioID        = user.ID;
                ctx.Entry(item).State = System.Data.Entity.EntityState.Modified;
                ctx.SaveChanges();
            }

            return(RedirectToAction("MeusDados", "Usuario"));
        }
        public ActionResult Excluir(int idTimeLine)
        {
            if (!ModelState.IsValid)
            {
                return(HttpNotFound());
            }

            using (MigxContext ctx = new MigxContext())
            {
                TimeLineItemModel item = GetDetalhesItem(idTimeLine, ctx);

                foreach (var foto in item.Fotos)
                {
                    var path = Path.Combine(Server.MapPath("~/Content/Images/"), item.UsuarioID.ToString(), foto.Id + foto.Extensao);

                    if (System.IO.File.Exists(path))
                    {
                        System.IO.File.Delete(path);
                    }
                }

                ctx.Fotos.RemoveRange(item.Fotos);
                ctx.Itens.Remove(item);
                ctx.SaveChanges();
            }

            return(RedirectToAction("MeusDados", "Usuario"));
        }
        public ActionResult Editar(UsuarioModel user)
        {
            var userSession = (UsuarioModel)Session["oUser"];

            using (MigxContext ctx = new MigxContext())
            {
                var userAlterado = ctx.Usuarios.SingleOrDefault(us => us.ID == userSession.ID);
                userAlterado.Cidade       = user.Cidade;
                userAlterado.Complemento  = user.Complemento;
                userAlterado.DtNascimento = user.DtNascimento;
                userAlterado.Endereco     = user.Endereco;
                userAlterado.Estado       = user.Estado;
                userAlterado.Nome         = user.Nome;
                userAlterado.Telefone     = user.Telefone;

                ctx.SaveChanges();

                Session["oUser"] = userAlterado;
            }

            if (Request.Files != null && Request.Files.Count > 0)
            {
                if (Request.Files[0].ContentLength > 0)
                {
                    var file     = Request.Files[0];
                    var novoNome = Path.Combine(Server.MapPath("~/Content/Images/"), user.ID.ToString(), "profilePicture" + ".jpg");
                    file.SaveAs(novoNome);
                }
            }

            return(View(user));
        }
        public JsonResult Devolver(int idTimeLine)
        {
            var user = (UsuarioModel)Session["oUser"];

            using (MigxContext ctx = new MigxContext())
            {
                TimeLineItemModel devolvido = ctx.Itens.SingleOrDefault(it => it.Id == idTimeLine);
                devolvido.Emprestado = false;

                EmprestimoModel empFinalizado = ctx.Emprestimos.SingleOrDefault(em => em.ItemID == idTimeLine && em.Situacao == EmprestimoEstado.Emprestado);
                empFinalizado.Situacao = EmprestimoEstado.Finalizado;

                ctx.SaveChanges();
            }

            return(Json(true));
        }
        public async Task <ActionResult> Cadastrar(UsuarioModel user)
        {
            if (!ModelState.IsValid)
            {
                ModelState.Clear();
                return(View());
            }

            string plainPass = user.Senha;


            var userIdentity = new AppUserIdentity()
            {
                UserName = user.Email, Email = user.Email
            };
            var result = await UserManager.CreateAsync(userIdentity, plainPass);

            if (result.Succeeded)
            {
                await SignInAsync(userIdentity, isPersistent : false);

                //return RedirectToAction("Index", "Home");
            }

            using (ctx = new MigxContext())
            {
                var hashPass = Crypto.HashPassword(plainPass);
                user.Senha = hashPass;

                user = ctx.Usuarios.Add(user);

                ctx.SaveChanges();
            }
            Session["oUser"] = user;

            Directory.CreateDirectory(Path.Combine(Server.MapPath("~/Content/Images/"), user.ID.ToString())); //Cria o diretório caso ele não exista.
            if (Request.Files != null && Request.Files.Count > 0)
            {
                var file     = Request.Files[0];
                var novoNome = Path.Combine(Server.MapPath("~/Content/Images/"), user.ID.ToString(), "profilePicture" + ".jpg");
                file.SaveAs(novoNome);
            }

            return(RedirectToAction("Index", "TimeLine"));
        }
        public ActionResult AdicionarItem(TimeLineItemModel item)
        {
            if (!ModelState.IsValid)
            {
                return(View(item));
            }

            var user   = (UsuarioModel)Session["oUser"];
            var userId = user.ID;

            Directory.CreateDirectory(Path.Combine(Server.MapPath("~/Content/Images/"), userId.ToString())); //Cria o diretório caso ele não exista.

            item.UsuarioID = userId;
            item.Fotos     = new List <FotoModel>();
            for (int i = 0; i < Request.Files.Count; i++)
            {
                if (Request.Files[i].ContentLength > 0)
                {
                    var file     = Request.Files[i];
                    var fileName = Path.GetFileName(file.FileName);
                    var extensao = Path.GetExtension(file.FileName);

                    FotoModel fotoInfo = new FotoModel();
                    fotoInfo.Id          = Guid.NewGuid();
                    fotoInfo.NomeArquivo = fileName;
                    fotoInfo.Extensao    = extensao;

                    var novoNome = Path.Combine(Server.MapPath("~/Content/Images/"), userId.ToString(), fotoInfo.Id + fotoInfo.Extensao); //Cria um novo nome baseado no Id e extensão.
                    file.SaveAs(novoNome);

                    item.Fotos.Add(fotoInfo);
                }
            }

            using (MigxContext ctx = new MigxContext())
            {
                ctx.Itens.Add(item);
                ctx.SaveChanges();
            }

            return(RedirectToAction("MeusDados", "Usuario"));
        }
Пример #8
0
        public JsonResult AceitarEmprestimo(int IdEmprestimo)
        {
            if (!ModelState.IsValid)
            {
                return(Json(false));
            }

            UsuarioModel user = (UsuarioModel)Session["oUser"];

            using (MigxContext ctx = new MigxContext())
            {
                EmprestimoModel aceitar = ctx.Emprestimos.SingleOrDefault(em => em.ID == IdEmprestimo && em.UsuarioIDSolicitadoPara == user.ID);
                aceitar.Situacao        = EmprestimoEstado.Emprestado;
                aceitar.Item.Emprestado = true;

                ctx.SaveChanges();
            }

            return(Json(true));
        }
        public JsonResult ExcluirFoto(Guid idFoto)
        {
            var user = (UsuarioModel)Session["oUser"];

            using (MigxContext ctx = new MigxContext())
            {
                FotoModel foto = ctx.Fotos.SingleOrDefault(ft => ft.Id == idFoto);

                var path = Path.Combine(Server.MapPath("~/Content/Images/"), user.ID.ToString(), foto.Id + foto.Extensao);

                if (System.IO.File.Exists(path))
                {
                    System.IO.File.Delete(path);
                }

                ctx.Fotos.Remove(foto);
                ctx.SaveChanges();
            }

            return(Json(true));
        }
Пример #10
0
        public JsonResult RecusarEmprestimo(int IdEmprestimo)
        {
            if (!ModelState.IsValid)
            {
                return(Json(false));
            }

            UsuarioModel user = (UsuarioModel)Session["oUser"];

            using (MigxContext ctx = new MigxContext())
            {
                EmprestimoModel remover = new EmprestimoModel()
                {
                    ID = IdEmprestimo,
                    UsuarioIDSolicitadoPara = user.ID
                };

                ctx.Emprestimos.Add(remover);
                ctx.Entry <EmprestimoModel>(remover).State = System.Data.Entity.EntityState.Deleted;
                ctx.SaveChanges();
            }

            return(Json(true));
        }
Пример #11
0
        public JsonResult AceitarAmizade(int IdSolicitacao)
        {
            if (!ModelState.IsValid)
            {
                return(Json(false));
            }

            UsuarioModel user = (UsuarioModel)Session["oUser"];

            using (MigxContext ctx = new MigxContext())
            {
                SolicitacaoAmizadeModel solicitacao = ctx.SolicitoesAmizade.SingleOrDefault(sa => sa.Id == IdSolicitacao && sa.UsuarioSolicitadoParaID == user.ID);
                DateTime dataInicioAmizade          = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day);

                AmigosModel souAmigo = new AmigosModel()
                {
                    IdUsuario       = user.ID,
                    IdAmigo         = solicitacao.UsuarioSolicitadoPorID,
                    DtInicioAmizade = dataInicioAmizade
                };

                AmigosModel meuAmigo = new AmigosModel()
                {
                    IdUsuario       = solicitacao.UsuarioSolicitadoPorID,
                    IdAmigo         = user.ID,
                    DtInicioAmizade = dataInicioAmizade
                };


                ctx.SolicitoesAmizade.Remove(solicitacao);
                ctx.Amigos.Add(souAmigo);
                ctx.Amigos.Add(meuAmigo);
                ctx.SaveChanges();
            }
            return(Json(true));
        }
Пример #12
0
        public JsonResult RecusarAmizade(int IdSolicitacao)
        {
            if (!ModelState.IsValid)
            {
                return(Json(false));
            }

            UsuarioModel user = (UsuarioModel)Session["oUser"];

            using (MigxContext ctx = new MigxContext())
            {
                SolicitacaoAmizadeModel remover = new SolicitacaoAmizadeModel()
                {
                    Id = IdSolicitacao,
                    UsuarioSolicitadoParaID = user.ID
                };

                ctx.SolicitoesAmizade.Add(remover);
                ctx.Entry <SolicitacaoAmizadeModel>(remover).State = System.Data.Entity.EntityState.Deleted;
                ctx.SaveChanges();
            }

            return(Json(true));
        }
Пример #13
0
        public JsonResult SolicitarAmizade(int IdUsuario)
        {
            if (!ModelState.IsValid)
            {
                return(Json(false));
            }

            UsuarioModel user = (UsuarioModel)Session["oUser"];

            using (MigxContext ctx = new MigxContext())
            {
                SolicitacaoAmizadeModel solicitacao = new SolicitacaoAmizadeModel()
                {
                    UsuarioSolicitadoPorID  = user.ID,
                    UsuarioSolicitadoParaID = IdUsuario,
                    DtSolicitacao           = DateTime.Now
                };

                ctx.SolicitoesAmizade.Add(solicitacao);
                ctx.SaveChanges();
            }

            return(Json(true));
        }