public Task<HttpResponseMessage> Put([FromBody]dynamic body) { var listQuestion = _serviceQuestion.AddToEvaluationTool(body.question, (ETypeEvaluationTool)body.type); var commandEvaluationTool = new UpdateEvaluationToolCommand( Guid.Parse((string)body.id), (string)body.name, (ETypeEvaluationTool)body.type, listQuestion ); _serviceQuestion.CheckQuestionRemoved(listQuestion, Guid.Parse((string)body.id)); var evaluationTool = _serviceEvaluationTool.Update(commandEvaluationTool); return CreateResponse(HttpStatusCode.Created, evaluationTool); }
public Task<HttpResponseMessage> Fill([FromBody]dynamic body) { if (body.role == "Coachee") { var commandFilledTool = new UpdateFilledToolCoacheeCommand( Guid.Parse((string)body.id), DateTime.Now, Guid.Parse((string)body.idEvaluationTool), Guid.Parse((string)body.idCoachee) ); var filledTool = _serviceFilledToolCoachee.Update(commandFilledTool); } else if (body.role == "Coach") { var commandFilledTool = new UpdateFilledToolCoachCommand( Guid.Parse((string)body.id), DateTime.Now, Guid.Parse((string)body.idEvaluationTool), Guid.Parse((string)body.idCoach) ); var filledTool = _serviceFilledToolCoach.Update(commandFilledTool); } else return CreateResponse(HttpStatusCode.BadRequest, null); var listQuestion = _serviceQuestion.AddToEvaluationTool(body.evaluationTool.question, (ETypeEvaluationTool)body.evaluationTool.type); var commandEvaluationTool = new UpdateEvaluationToolCommand( Guid.Parse((string)body.evaluationTool.id), (string)body.evaluationTool.name, (ETypeEvaluationTool)body.evaluationTool.type, listQuestion ); var evaluationTool = _serviceEvaluationTool.Update(commandEvaluationTool); return CreateResponse(HttpStatusCode.OK, evaluationTool); }
public EvaluationTool Update(UpdateEvaluationToolCommand command) { var evaluationTool = _repository.GetOne(command.Id); if (!string.IsNullOrEmpty(command.Author)) evaluationTool.ChangeAuthor(command.Author); if (!string.IsNullOrEmpty(command.Name)) evaluationTool.ChangeName(command.Name); if (command.Type != 0) evaluationTool.ChangeType(command.Type); if (command.Question.Count > 0) foreach (var question in command.Question) evaluationTool.AddQuestion(question); _repository.Update(evaluationTool); if (Commit()) return evaluationTool; return null; }