Пример #1
0
        public async Task <object> CreateResult(CreateResultModel resultmodel)
        {
            Result result = new Result
            {
                Id     = resultmodel.Id,
                TestId = resultmodel.TestId,
                Data   = resultmodel.Data,
                UserId = resultmodel.UserId
            };

            resultmodel.AtheleteList = await unitOfWork.Data.GetAllAtheleteList();

            int status = unitOfWork.Data.AddResult(result);

            if (status == 0)
            {
                return(Ok(new { status }));
            }
            else
            {
                unitOfWork.Data.IncrementCountByTestId(resultmodel.TestId);
                unitOfWork.Commit();
                //"ViewResult", "Result", new { testid = resultmodel.TestId }
                return(Ok(new { status }));
            }
        }
Пример #2
0
        public async Task <object> EditResult(CreateResultModel resultmodel)
        {
            resultmodel.AtheleteList = await unitOfWork.Data.GetAllAtheleteList();

            Result result = new Result
            {
                Id     = resultmodel.Id,
                TestId = resultmodel.TestId,
                Data   = resultmodel.Data,
                UserId = resultmodel.UserId
            };

            int status = unitOfWork.Data.Update(result);

            if (status == 0)
            {
                ViewBag.message = "Athelete already exists";
                return(Ok(new { status }));
            }
            else
            {
                unitOfWork.Commit();
                return(Ok(new { status }));
            }
        }
Пример #3
0
        public async Task <object> CreateResult(int TestId)
        {
            var resultmodel = new CreateResultModel
            {
                TestId       = TestId,
                AtheleteList = await unitOfWork.Data.GetAllAtheleteList()
            };

            return(Ok(resultmodel));
        }
Пример #4
0
        public async Task <object> EditResult(int Id)
        {
            var result    = unitOfWork.Data.GetResultById(Id);
            var atheletes = unitOfWork.Data.GetAtheleteNamesWithDataByTestId(result.TestId);
            CreateResultModel ResultModel = new CreateResultModel
            {
                TestId       = result.TestId,
                UserId       = result.UserId,
                Data         = result.Data,
                Id           = result.Id,
                AtheleteList = await unitOfWork.Data.GetAllAtheleteList()
            };

            return(Ok(ResultModel));
        }
Пример #5
0
        public HttpResponseMessage PostResultsOnTeam(int teamId, CreateResultModel model)
        {
            var responseMessage = this.PerformOperationAndHandleExceptions(() =>
            {
                var sessionKey = this.GetHeaderValue(Request.Headers, "sessionKey");
                var dbContext  = new TeamAssessnmentContext();
                // dbContext.Configuration.ProxyCreationEnabled = false;

                using (dbContext)
                {
                    var user = dbContext.Users.FirstOrDefault(usr => usr.SessionKey == sessionKey);
                    if (user == null)
                    {
                        throw new ArgumentException("Users must be logged when create a new comment!");
                    }

                    var teamEntity = dbContext.Teams.FirstOrDefault(team => team.Id == teamId);

                    foreach (var assignmentItem in model.AssignmentsResult)
                    {
                        var assignmentEntity = dbContext.Assignments.FirstOrDefault(ass => ass.Name == assignmentItem.Name);
                        var newResult        = new Result()
                        {
                            Team       = teamEntity,
                            Value      = assignmentItem.Value,
                            User       = user,
                            Assignment = assignmentEntity,
                        };

                        dbContext.Results.Add(newResult);
                        dbContext.SaveChanges();
                    }



                    var response =
                        this.Request.CreateResponse(HttpStatusCode.OK);
                    return(response);
                }
            });

            return(responseMessage);
        }