public Task <HttpResponseMessage> Post([FromBody] dynamic body)
        {
            var listCoach = _serviceCoach.AddCoach(body.coachs);

            var listCoachee = _serviceCoachee.AddCoachee(body.coachees);

            var listPerformanceIndicator = _servicePerformanceIndicator.AddToCoachingProcess(body.performanceIndicator);

            var listService = _service.AddToCoachingProcess(body.services);

            if (body.endDate == null || body.endDate == "")
            {
                body.endDate = DateTime.MinValue;
            }

            var commandCoachingProcess = new CreateCoachingProcessCommand(
                name: (string)body.name,
                startDate: (DateTime)body.startDate,
                endDate: (DateTime)body.endDate,
                mode: (EModeProcess)body.mode,
                coach: listCoach,
                coachee: listCoachee,
                performanceIndicator: listPerformanceIndicator,
                service: listService,
                observation: (string)body.observation
                );

            var coachingProcess = _serviceCoachingProcess.Create(commandCoachingProcess);

            return(CreateResponse(HttpStatusCode.Created, coachingProcess));
        }
Esempio n. 2
0
        public CoachingProcess Create(CreateCoachingProcessCommand command)
        {
            var coachingProcess = new CoachingProcess(command.Name, command.StartDate, command.Mode, command.Budget, command.Session, command.PerformaceIndicator, command.Coachee, command.Coach, command.Service, command.EndDate, command.Observation);

            coachingProcess.Validate();
            _repository.Create(coachingProcess);

            if (Commit())
            {
                return(coachingProcess);
            }

            return(null);
        }