コード例 #1
0
        public IActionResult Put(string id, [FromBody] SaveDonationModel donationModel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (!ObjectId.TryParse(id, out var objectId))
            {
                return(BadRequest("'Id' parameter is ivalid ObjectId"));
            }

            var oldDonation = _donationManager.GetDonation(objectId);

            if (oldDonation == null)
            {
                return(NotFound());
            }

            oldDonation.UserId    = donationModel.UserId == ObjectId.Empty ? oldDonation.UserId : donationModel.UserId;
            oldDonation.ProjectId = donationModel.ProjectId == ObjectId.Empty ? oldDonation.ProjectId : donationModel.ProjectId;
            oldDonation.Value     = donationModel.Value == 0 ? oldDonation.Value : donationModel.Value;
            oldDonation.Date      = donationModel.Date;
            oldDonation.Recursive = donationModel.Recursive;
            oldDonation.Confirmed = donationModel.Confirmed;

            _donationManager.UpdateDonation(oldDonation);
            return(Ok(id));
        }
コード例 #2
0
        public IActionResult CreateDonation([FromBody] SaveDonationModel donationModel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var postToCreate = DonationMapper.DonationModelToDonation(donationModel);

            return(Ok(_donationManager.CreateDonation(postToCreate).ToString()));
        }
コード例 #3
0
        public static Donation DonationModelToDonation(SaveDonationModel donationModel)
        {
            if (donationModel == null)
            {
                return(null);
            }

            return(new Donation
            {
                UserId = donationModel.UserId,
                ProjectId = donationModel.ProjectId,
                Value = donationModel.Value,
                Recursive = donationModel.Recursive,
                Confirmed = donationModel.Confirmed
            });
        }
コード例 #4
0
        public IActionResult ComboDonation(DonationWithRegistrationModel comboModel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var userToCreate = new User
            {
                FirstName   = comboModel.FirstName,
                LastName    = comboModel.LastName,
                MiddleName  = comboModel.MiddleName,
                Email       = comboModel.Email,
                IsConfirmed = comboModel.Confirmed,
                //простите меня
                Password = new Password
                           (
                    //crutches.js
                    Guid.NewGuid().ToString("n").Substring(0, 10)
                           ),
                Role = UserRole.User
            };

            var newuserId = _userManager.CreateUser(userToCreate);

            var donationToCreate = new SaveDonationModel
            {
                UserId    = newuserId,
                ProjectId = comboModel.ProjectId,
                Value     = comboModel.Value,
                Date      = comboModel.Date,
                Recursive = comboModel.Recursive,
                Confirmed = comboModel.Confirmed
            };

            return(CreateDonation(donationToCreate));
        }