示例#1
0
        public async Task <ActionResult> CreateMembership(MembershipCreateDto membershipCreateDto)
        {
            var user = await _repository.GetUserById(membershipCreateDto.UserId);

            var facility = await _repository.GetFacilityById(membershipCreateDto.FacilityId);

            var contract = await _repository.GetContractById(membershipCreateDto.ContractId);

            if (user == null)
            {
                ModelState.AddModelError(string.Empty, "User does not exist");
            }
            if (facility == null)
            {
                ModelState.AddModelError(string.Empty, "Facility ID does not exist");
            }
            if (contract == null)
            {
                ModelState.AddModelError(string.Empty, "Contract ID does not exist");
            }

            if (ModelState.ErrorCount > 0)
            {
                return(ValidationProblem(ModelState));
            }

            bool success = await _repository.CreateMembership(_mapper.Map <Membership>(membershipCreateDto));

            if (success)
            {
                return(NoContent());
            }
            return(Conflict());
        }
示例#2
0
        public ActionResult <MembershipReadDto> CreateMembership(MembershipCreateDto membershipCreateDto)
        {
            Response.Headers.Add("Access-Control-Allow-Origin", "*");
            var membershipModel = _mapper.Map <Membership>(membershipCreateDto);

            _repository.CreateMembership(membershipModel);
            _repository.SaveChanges();

            var membershipReadDto = _mapper.Map <MembershipReadDto>(membershipModel);

            return(CreatedAtRoute(nameof(GetMembershipById),
                                  new { id = membershipReadDto.Id },
                                  membershipReadDto));
        }