Пример #1
0
        public IActionResult CreateJob([FromBody] JobLocationRequest jobLocationRequest)
        {
            if (jobLocationRequest.Start == 0 || jobLocationRequest.Destination == 0)
            {
                return(GetResultBadRequest());
            }

            try
            {
                _jobService.CreateJob(jobLocationRequest);
                return(GetResultCreated());
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                return(GetResultInternalError());
            }
        }
Пример #2
0
        public void CreateJob(JobLocationRequest jobLocationRequest)
        {
            try
            {
                var locationStart       = _locationRepository.Get(jobLocationRequest.Start);
                var locationDestination = _locationRepository.Get(jobLocationRequest.Destination);
                if (locationStart == null || locationDestination == null)
                {
                    throw new Exception("No location found");
                }

                var job = new Job()
                {
                    Status      = JobStatus.StatusPending,
                    CreatedDate = DateTime.Now
                };
                _jobRepository.Add(job);

                var startGoal = new Goal()
                {
                    JobId      = job.JobId,
                    LocationId = jobLocationRequest.Start,
                    Status     = "pending"
                };
                var destinationGoal = new Goal()
                {
                    JobId      = job.JobId,
                    LocationId = jobLocationRequest.Destination,
                    Status     = "pending"
                };

                _goalRepository.Add(startGoal);
                _goalRepository.Add(destinationGoal);
            }
            catch (Exception e)
            {
                throw new Exception(e.ToString());
            }
        }