예제 #1
0
        public bool SetGrade(GradeRequest req)
        {
            var grade = _context.Grades.FirstOrDefault(x => x.studentId == req.studentId);

            if (grade != null)
            {
                if (req.vize != 0)
                {
                    grade.vize = req.vize;
                }
                if (req.final != 0)
                {
                    grade.final = req.final;
                }
            }
            else
            {
                var rec = new Grade()
                {
                    studentId = req.studentId,
                    final     = req.final,
                    vize      = req.vize
                };
                Add(rec);
            }
            return(SaveAll());
        }
예제 #2
0
 internal static Grade ConvertRequestToGrade(GradeRequest gradeRequest)
 {
     return(new Grade
     {
         Description = gradeRequest.Description,
         SchoolId = gradeRequest.SchoolId
     });
 }
예제 #3
0
        public async Task <ActionResult <Grade> > PostGrade(GradeRequest grade)
        {
            if (await _gradeService.CreateGradeAsync(grade))
            {
                return(CreatedAtAction("GetGrade", new { id = grade.CodGrade }, grade));
            }

            return(StatusCode(500));
        }
예제 #4
0
        public async Task <bool> CreateGradeAsync(GradeRequest gradeRequest)
        {
            var professor = _professorService.GetProfessorByCodigoFuncionario(gradeRequest.CodFuncionario);

            if (professor == null)
            {
                return(false);
            }

            var grade = new Grade(gradeRequest.CodGrade, gradeRequest.Turma, gradeRequest.Disciplina, gradeRequest.Curso, professor.Cpf);

            return(await _gradeRepository.CreateAsync(grade));
        }
예제 #5
0
        public async Task <ActionResult> GradeLogBook(int logBookId, [FromBody] GradeRequest gradeRequest)
        {
            var result = await _logBookRepository.GradeLogBook(logBookId, gradeRequest);

            if (result.StatusCode == Helpers.Success)
            {
                return(StatusCode(StatusCodes.Status200OK, result));
            }
            else
            {
                return(StatusCode(StatusCodes.Status400BadRequest, result));
            }
        }
        public async Task <dynamic> Add(GradeRequest gradeRequest)
        {
            if (gradeRequest == null)
            {
                AddError("20000");
                return(null);
            }

            var grade = Grade.Create(gradeRequest.Name);

            //if (!user.IsValid)
            //{
            //    Error = user.Error;
            //    return null;
            //}

            _gradeRepository.Add(grade);
            return(await Task.FromResult(grade));
        }
예제 #7
0
        public async Task <ActionResult> Post([FromBody] GradeRequest gradeRequest)
        {
            try
            {
                var response = await _gradeService.Add(gradeRequest);

                var notifications = _gradeService as Notifiable;

                if (response == null && notifications.Error.Any())
                {
                    return(BadRequest(notifications.Error));
                }

                return(Created(string.Empty, response));
            }
            catch (System.Exception ex)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError, ex.ToString()));
            }
        }
        public async Task <MessageResponse <GradeRequestResponse> > InsertAsync(GradeRequest gradeRequest)
        {
            var messageResponse = new MessageResponse <GradeRequestResponse>();

            try
            {
                var result = await _gradeService.InsertAsync(gradeRequest);

                messageResponse.IsSuccess  = true;
                messageResponse.StatusCode = HttpStatusCode.OK;
                messageResponse.Message    = "Inserido com sucesso";
                messageResponse.Count      = result;
            }
            catch (Exception e)
            {
                messageResponse.IsSuccess = false;
                messageResponse.Message   = e.Message.ToString();
            }

            return(messageResponse);
        }
예제 #9
0
 public IActionResult GradeReq([FromBody] GradeRequest req)
 {
     return(Ok(_appRepository.SetGrade(req)));
 }
        public async Task <int> InsertAsync(GradeRequest gradeRequest)
        {
            var grade = GradeServiceMapper.ConvertRequestToGrade(gradeRequest);

            return(await _unitOfWork.GradeRepository.AddAsync(grade).ConfigureAwait(false));
        }
예제 #11
0
        public async Task <ToRespond> GradeLogBook(int logBookId, GradeRequest gradeRequest)
        {
            var logBook = await _dataContext.LogBooks.FindAsync(logBookId);

            if (logBook == null || gradeRequest == null)
            {
                return(new ToRespond()
                {
                    StatusCode = Helpers.ObjectNull,
                    StatusMessage = Helpers.StatusMessageObjectNull
                });
            }

            var userId = Int32.Parse(_httpContextAccessor.HttpContext.User.Identity.Name);

            var industrialSupervisor = await _dataContext.IndustrialSupervisors.Where(a => a.UserId == userId).SingleOrDefaultAsync();

            var lecturer = await _dataContext.Lecturers.Where(a => a.UserId == userId).SingleOrDefaultAsync();

            var grade = new Grade();

            if (lecturer != null)
            {
                grade.GraderId        = lecturer.LecturerId;
                grade.ObtainedGrade   = gradeRequest.ObtainedGrade;
                grade.ObtainableGrade = gradeRequest.ObtainableGrade;
                grade.Lecturer        = lecturer;
                grade.LogBook         = logBook;
                grade.LogBookId       = logBook.LogBookId;

                _globalRepository.Add(grade);

                logBook.Grade.Add(grade);

                _dataContext.Entry(logBook).State = EntityState.Modified;
            }
            else if (industrialSupervisor != null)
            {
                grade.GraderId             = industrialSupervisor.IndustrialSupervisorId;
                grade.ObtainedGrade        = gradeRequest.ObtainedGrade;
                grade.ObtainableGrade      = gradeRequest.ObtainableGrade;
                grade.IndustrialSupervisor = industrialSupervisor;
                grade.LogBook   = logBook;
                grade.LogBookId = logBook.LogBookId;

                _globalRepository.Add(grade);

                logBook.Grade.Add(grade);

                _dataContext.Entry(logBook).State = EntityState.Modified;
            }
            else
            {
                return(new ToRespond()
                {
                    StatusCode = Helpers.NotFound,
                    StatusMessage = Helpers.StatusMessageNotFound
                });
            }

            var result = await _globalRepository.SaveAll();

            if (result != null)
            {
                if (!result.Value)
                {
                    return(new ToRespond()
                    {
                        StatusCode = Helpers.SaveError,
                        StatusMessage = Helpers.StatusMessageSaveError
                    });
                }
                return(new ToRespond()
                {
                    StatusCode = Helpers.Success,
                    ObjectValue = _mapper.Map <GradeResponse>(grade),
                    StatusMessage = "Student Log Book Graded Successfully!!!"
                });
            }

            return(new ToRespond()
            {
                StatusCode = Helpers.SaveError,
                StatusMessage = Helpers.StatusMessageSaveError
            });
        }
예제 #12
0
        public Task <IActionResult> Add([FromBody] GradeRequest GradeRequest)
        {
            var result = _GradeAppService.InsertAsync(GradeRequest).Result;

            return(Response(result.StatusCode, result));
        }