예제 #1
0
        public async Task <ActionServiceResult> Put([FromBody] Examination entity)
        {
            StringValues userHeader;

            Request.Headers.TryGetValue("UserID", out userHeader);
            var userID = userHeader.FirstOrDefault().ToString();
            var result = new ActionServiceResult();

            if (userID == null || string.IsNullOrEmpty(userID) || entity == null)
            {
                result.Success = false;
                result.Code    = Code.NotFound;
            }
            else
            {
                var response = new ActionServiceResult();
                if (entity == null)
                {
                    response.Success = false;
                    response.Code    = Code.NotFound;
                    response.Message = Resources.NotFound;
                }
                else
                {
                    if (entity.Status != 1)
                    {
                        entity.ModifiedDate = Utils.GetNistTime();
                        response            = await _baseEntityService.Update(entity);
                    }
                    return(response);
                }
                return(response);
            }
            return(new ActionServiceResult());
        }
예제 #2
0
        public virtual async Task <ActionResult <T> > Put([FromBody] T entity)
        {
            var result = await _baseEntityService.Update(entity);

            if (entity == null)
            {
                return(NotFound());
            }
            return(Ok(result));
        }
예제 #3
0
        public virtual async Task <IActionResult> Put([FromRoute] int id, [FromBody] TEntityDto entityDto)
        {
            if (entityDto.Id != id)
            {
                return(BadRequest());
            }

            var dto = await _baseEntityService.Update(id, entityDto);

            if (dto is null)
            {
                return(NotFound());
            }

            return(Ok(dto));
        }
예제 #4
0
        public virtual async Task <ActionServiceResult> Put([FromBody] T entity)
        {
            var response = new ActionServiceResult();

            if (entity == null)
            {
                response.Success = false;
                response.Code    = Code.NotFound;
                response.Message = Resources.NotFound;
            }
            else
            {
                response = await _baseEntityService.Update(entity);
            }
            return(response);
        }
예제 #5
0
        public async Task <ActionServiceResult> GetEntityByID([FromQuery] string contestID)
        {
            StringValues userHeader;

            Request.Headers.TryGetValue("UserID", out userHeader);
            var userID   = userHeader.FirstOrDefault().ToString();
            var token    = Request.Headers["Authorization"].ToString();
            var roleName = Utils.GetClaimFromToken(token, "rolename") == "" ? "student" : Utils.GetClaimFromToken(token, "rolename");

            var result = new ActionServiceResult();

            if (userID == null || string.IsNullOrEmpty(userID) || string.IsNullOrEmpty(contestID))
            {
                result.Success = false;
                result.Code    = Code.NotFound;
            }
            else
            {
                var response = await _examService.GetByUserID(contestID);

                switch (roleName)
                {
                case "lecture":
                    result.Data = response;
                    return(result);

                case "student":
                    var exam = response.Where(item => item.UserId.ToString() == userID).FirstOrDefault();
                    result.Data = exam;

                    if (exam == null)
                    {
                        //Handle goi api tao de thi tu nhom 10
                        var res = JsonConvert.DeserializeObject("[{'Question':'Day la cau hoi','type':1,'Answer':'|Dap an 1|Dap an 2 |Dap an 3'},{ 'Question':'Day la cau hoi','type':1,'Answer':'|Dap an 1|Dap an 2 |Dap an 3'},{ 'Question':'Day la cau hoi','type':1,'Answer':'|Dap an 1|Dap an 2 |Dap an 3'}]");
                        //
                        var examRes = new Exam();
                        examRes.ContestId    = Guid.Parse(contestID);
                        examRes.CreatedDate  = DateTime.Now;
                        examRes.ModifiedDate = DateTime.Now;
                        examRes.ExamId       = Guid.NewGuid();
                        examRes.UserId       = Guid.Parse(userID);
                        examRes.Question     = response;
                        //exam.Answer = response.Answer;
                        examRes.IsDoing = 1;
                        examRes.Status  = 0;

                        await _baseEntityService.Insert(examRes);

                        return(new ActionServiceResult(true, Resources.Success, Code.Success, examRes, 0));
                    }
                    else
                    {
                        exam.ModifiedDate = DateTime.Now;
                        result.Data       = exam;
                        await _baseEntityService.Update(exam);

                        return(result);
                    }

                default:
                    break;
                }
            }
            return(result);
        }