示例#1
0
        public ActionResult <List <InternshipForManagementViewModel> > GetInternshipsForStudentManagement()
        {
            var claim = User.Claims.FirstOrDefault(u => u.Type.Contains("nameidentifier"));

            if (claim != null)
            {
                var userId = claim.Value;
                try
                {
                    var studentId            = _studentService.GetStudentIdForUser(userId);
                    var internships          = _internshipService.GetInternshipsForStudent(studentId);
                    var internshipManagement = new List <InternshipForManagementViewModel>();
                    foreach (var intern in internships)
                    {
                        var companyName      = _internshipService.GetCompanyNameForInternship(intern);
                        var status           = _internshipService.GetStatusForStudentInternship(intern, studentId);
                        var internManagement = InternshipMapper.ToInternshipManagement(intern, status, companyName);
                        internshipManagement.Add(internManagement);
                    }

                    var obj = new InternshipsListObject()
                    {
                        Internships = internshipManagement
                    };
                    return(Ok(JsonConvert.SerializeObject(obj)));
                }
                catch (Exception ex)
                {
                    return(BadRequest(ex.Message));
                }
            }
            return(BadRequest("Studentul nu a fost recunoscut"));
        }
示例#2
0
        public IActionResult GetInternshipAvailability(int id)
        {
            var internship          = _internshipService.GetInternshipById(id);
            var internshipViewModel = InternshipMapper.ToInternshipManagementViewModel(internship);

            return(Ok(JsonConvert.SerializeObject(internshipViewModel)));
        }
示例#3
0
        public ActionResult <List <InternshipMainAttributesViewModel> > GetInternshipsForStudent()
        {
            var claim = User.Claims.FirstOrDefault(u => u.Type.Contains("nameidentifier"));

            if (claim != null)
            {
                var userId = claim.Value;
                try
                {
                    var studentId     = _studentService.GetStudentIdForUser(userId);
                    var internshipsDb = _internshipService.GetInternshipsForStudent(studentId);
                    var viewModels    = new List <InternshipMainAttributesViewModel>();
                    foreach (var internship in internshipsDb)
                    {
                        var viewModel = InternshipMapper.ToViewModel(internship);
                        viewModels.Add(viewModel);
                    }
                    return(Ok(viewModels));
                }
                catch (Exception ex)
                {
                    return(BadRequest(ex.Message));
                }
            }
            return(BadRequest("Studentul nu a fost recunoscut"));
        }
示例#4
0
 public IActionResult UpdateInternship([FromBody] InternshipMainAttributesViewModel internshipView, int id)
 {
     try
     {
         var internship = InternshipMapper.ToActualInternshipObject(internshipView);
         _internshipService.UpdateInternship(internship, id);
     }
     catch (Exception e)
     {
         return(BadRequest(e.Message));
     }
     return(Ok());
 }
示例#5
0
        public ActionResult <InternshipMainAttributesViewModel> AddInternship(InternshipAddViewModel internship)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            try
            {
                var userID = User.GetUserId();
                if (userID == string.Empty)
                {
                    return(BadRequest("Compania nu a fost recunoscuta"));
                }
                var companyID       = _companyService.GetCompanyIdForUser(userID);
                var addedInternship = _internshipService.AddInternship(InternshipAddMapper.ToInternship(internship, companyID));


                return(Ok(InternshipMapper.ToViewModel(addedInternship)));
            }
            catch (Exception e)
            {
                return(BadRequest(e));
            }
        }