Пример #1
0
        public async Task AddGymApplication()
        {
            GymApplicationsRequest request = new GymApplicationsRequest {
                Name        = "Longji",
                Surname     = "Kang",
                Email       = "*****@*****.**",
                PhoneNumber = "0629058357",
                GymName     = "Test",
                BranchName  = "Gym",
                Address     = "An address",
                Extra       = "None"
            };

            var response = await gymApplicationController.addApplication(request);

            Assert.IsType <OkObjectResult>(response.Result);

            bool removed = await applicationRepository.removeApplication((await applicationRepository.getApplication("Test", "Gym"))[0]);

            Assert.True(removed);
        }
Пример #2
0
        public async Task <ActionResult <GymApplications> > addApplication(GymApplicationsRequest application)
        {
            if (application.GymName == "")
            {
                return(StatusCode(StatusCodes.Status400BadRequest, "Gym name cannot be empty!"));
            }

            if (application.BranchName == "")
            {
                return(StatusCode(StatusCodes.Status400BadRequest, "Branch name cannot be empty!"));
            }

            if (application.Name == "")
            {
                return(StatusCode(StatusCodes.Status400BadRequest, "Name cannot be empty!"));
            }

            if (application.Surname == "")
            {
                return(StatusCode(StatusCodes.Status400BadRequest, "Surname cannot be empty!"));
            }

            if (application.Email == "")
            {
                return(StatusCode(StatusCodes.Status400BadRequest, "Email cannot be empty!"));
            }

            if (application.PhoneNumber == "")
            {
                return(StatusCode(StatusCodes.Status400BadRequest, "Phone number cannot be empty!"));
            }

            if (application.Address == "")
            {
                return(StatusCode(StatusCodes.Status400BadRequest, "Gym address cannot be empty!"));
            }


            Gym gym = await gymRepository.getGymByNameAndBranch(application.GymName, application.BranchName);

            if (gym != null)
            {
                return(StatusCode(StatusCodes.Status400BadRequest, $"Gym with name {application.GymName} and branch {application.BranchName} is already taken!"));
            }

            if ((await applicationRepository.getApplication(application.GymName, application.BranchName)).Length != 0)
            {
                return(StatusCode(StatusCodes.Status400BadRequest, "An application for this gym is already in progress!"));
            }

            GymApplications existingApplication = new GymApplications();

            existingApplication.Name        = application.Name;
            existingApplication.Surname     = application.Surname;
            existingApplication.Email       = application.Email;
            existingApplication.PhoneNumber = application.PhoneNumber;
            existingApplication.GymName     = application.GymName;
            existingApplication.BranchName  = application.BranchName;
            existingApplication.Address     = application.Address;
            existingApplication.Extra       = application.Extra;
            existingApplication.Status      = ApplicationStatus.Pending;

            if (await applicationRepository.addApplication(existingApplication))
            {
                return(Ok(existingApplication));
            }
            else
            {
                return(StatusCode(StatusCodes.Status500InternalServerError, "We were unable to add your application to the database!"));
            }
        }