Beispiel #1
0
        public IActionResult RemoveClaimedDonation(int id)
        {
            MyClaimsViewModel my_claims = new MyClaimsViewModel();
            var userId = User.FindFirstValue(ClaimTypes.NameIdentifier);

            DonationClaimsModel claim_to_remove = _leftRoverContext.DonationClaims.Where(dnt => dnt.DonationID == id && dnt.UserId.Equals(userId)).FirstOrDefault();

            try
            {
                _leftRoverContext.DonationClaims.Attach(claim_to_remove);
                _leftRoverContext.DonationClaims.Remove(claim_to_remove);
                _leftRoverContext.SaveChanges();
            }
            catch
            {
            }

            DonationsModel donation_selected = _leftRoverContext.Donations.Where(dnt => dnt.DonationID == id).FirstOrDefault();

            donation_selected.Status = "Available";

            try
            {
                _leftRoverContext.SaveChanges();
            }
            catch
            {
            }

            List <DonationClaimsModel> claimed_donations = _leftRoverContext.DonationClaims.Where(dnts => dnts.UserId.Equals(userId)).ToList();
            List <DonationsModel>      donations         = new List <DonationsModel>();

            foreach (DonationClaimsModel claimed in claimed_donations)
            {
                DonationsModel donation = _leftRoverContext.Donations.Where(dnt => dnt.DonationID == claimed.DonationID).FirstOrDefault();
                donations.Add(donation);
            }

            my_claims.ClaimedDonations = donations;

            return(View("MyItems", my_claims));
        }
Beispiel #2
0
        public IActionResult ClaimDonation(MyDonationsViewModel model)
        {
            MyClaimsViewModel my_claims = new MyClaimsViewModel();
            var userId = User.FindFirstValue(ClaimTypes.NameIdentifier);

            DonationClaimsModel claim = new DonationClaimsModel
            {
                DonationID = model.DonationID,
                UserId     = userId
            };

            try
            {
                _leftRoverContext.DonationClaims.Add(claim);
                _leftRoverContext.SaveChanges();

                DonationsModel donation = _leftRoverContext.Donations.Where(dnt => dnt.DonationID == model.DonationID).FirstOrDefault();
                donation.Status = "Claimed";
                _leftRoverContext.SaveChanges();
            }
            catch
            {
            }

            List <DonationClaimsModel> claimed_donations = _leftRoverContext.DonationClaims.Where(dnts => dnts.UserId.Equals(userId)).ToList();
            List <DonationsModel>      donations         = new List <DonationsModel>();

            foreach (DonationClaimsModel claimed in claimed_donations)
            {
                DonationsModel donation = _leftRoverContext.Donations.Where(dnt => dnt.DonationID == claimed.DonationID).FirstOrDefault();
                donations.Add(donation);
            }

            my_claims.ClaimedDonations = donations;

            return(View("MyItems", my_claims));
        }