public async Task <IHttpActionResult> Post(EnrollmentDTO enrollmentDTO)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));//status code 400
            }
            //var enrollment = new EnrollmentDTO
            //{
            //    EnrollmentID = enrollmentDTO.EnrollmentID,
            //    CourseID = enrollmentDTO.CourseID,
            //    StudentID = enrollmentDTO.StudentID,
            //    Grade = enrollmentDTO.Grade
            //};

            try
            {
                var enrollment = mapper.Map <Enrollment>(enrollmentDTO);
                enrollment = await enrollmentService.Insert(enrollment);

                return(Ok(enrollmentDTO));//status code 200
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));//status code 500
            }
        }
示例#2
0
        public List <EnrollmentDTO> GetStaleEnrollmentCases(Guid UserId)
        {
            try
            {
                List <EnrollmentDTO> oenrolllist = new List <EnrollmentDTO>();

                db = new DatabaseEntities();
                DateTime cudate      = System.DateTime.Now.AddDays(-2);
                var      Bankenrolls = (from be in db.BankEnrollments where be.UpdatedDate >= cudate && be.IsActive == true && be.ArchiveStatusCode != EMPConstants.Archive select be);
                var      custList    = Bankenrolls.Select(a => a.CustomerId).Distinct().ToList();
                var      Customers   = (from cu in db.emp_CustomerInformation
                                        join cl in db.emp_CustomerLoginInformation on cu.Id equals cl.CustomerOfficeId
                                        where custList.Contains(cu.Id)
                                        select new { cu, cl });

                foreach (var itm in Bankenrolls)
                {
                    EnrollmentDTO oEnrolModel = new EnrollmentDTO();
                    var           cust        = Customers.Where(a => a.cu.Id == itm.CustomerId).FirstOrDefault();
                    oEnrolModel.MasterID = cust.cu.MasterIdentifier;
                    oEnrolModel.UserID   = cust.cl.EMPUserId.ToString();
                    if (cust.cu.ParentId != null)
                    {
                        oEnrolModel.ParentUserID = Customers.Where(a => a.cl.CustomerOfficeId == cust.cu.ParentId).Select(a => a.cl.CrossLinkUserId).FirstOrDefault();
                    }
                    else
                    {
                        oEnrolModel.ParentUserID = "";
                    }
                    oEnrolModel.CompanyName   = cust.cu.CompanyName.ToString();
                    oEnrolModel.Efin          = cust.cu.EFIN.ToString().PadLeft(6, '0');
                    oEnrolModel.AccountStatus = cust.cu.AccountStatus.ToString();
                    oEnrolModel.EROType       = cust.cu.EROType.ToString();
                    oEnrolModel.CaseOrgin     = string.Empty;
                    oEnrolModel.Product       = string.Empty;
                    oEnrolModel.FuntionalArea = string.Empty;
                    oEnrolModel.Module        = string.Empty;
                    oEnrolModel.Issue         = string.Empty;
                    oEnrolModel.Status        = string.Empty;
                    oEnrolModel.Casenumber    = string.Empty;
                    if (cust.cu.IsMSOUser == true)
                    {
                        oEnrolModel.MSOUser = "******";
                    }
                    else
                    {
                        oEnrolModel.MSOUser = "******";
                    }
                    oEnrolModel.DateTimeOpened       = itm.CreatedDate == null ? string.Empty : Convert.ToDateTime(itm.CreatedDate).ToString("MM/dd/yyyy hh:mm tt");
                    oEnrolModel.DateTimeLastModified = itm.UpdatedDate == null ? string.Empty : Convert.ToDateTime(itm.UpdatedDate).ToString("MM/dd/yyyy hh:mm tt");
                    oenrolllist.Add(oEnrolModel);
                }
                return(oenrolllist.OrderBy(a => a.DateTimeLastModified).ToList());
            }
            catch (Exception ex)
            {
                EMPPortal.Core.Utilities.ExceptionLogger.LogException(ex.ToString(), "ReportsService/GetStaleEnrollmentCases", UserId);
                return(new List <EnrollmentDTO>());
            }
        }
示例#3
0
        /// <summary>
        /// This static void transform a student to a studentDTO for the ApiService
        /// </summary>
        /// <param name="student"></param>
        /// <returns>studentDTO</returns>
        public static StudentDTO TransformStudentToStudentDTO(Student student)
        {
            StudentDTO studentDto = new StudentDTO();


            List <EnrollmentDTO> coursesList = new List <EnrollmentDTO>();

            if (student.Enrollments != null)
            {
                foreach (Enrollment enrollment in student.Enrollments)
                {
                    EnrollmentDTO course = new EnrollmentDTO();
                    course.courseId = enrollment.CourseID;
                    coursesList.Add(course);
                }
            }

            studentDto.id             = student.ID;
            studentDto.firstname      = student.FirstMidName;
            studentDto.lastname       = student.LastName;
            studentDto.enrollmentDate = student.EnrollmentDate.ToString("yyyy-MM-dd");
            studentDto.enrollments    = coursesList;

            return(studentDto);
        }
        public async Task <IHttpActionResult> Put(EnrollmentDTO enrollmentDTO, int id) // object - cuerpo pero si es prmitivo por la url
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState)); // status code 400
            }
            if (enrollmentDTO.EnrollmentID != id)
            {
                return(BadRequest());
            }

            var flag = await enrollmentService.GetById(id);

            if (flag == null)
            {
                return(NotFound()); // status code 404
            }
            try
            {
                var enrollment = mapper.Map <Enrollment>(enrollmentDTO);
                enrollment = await enrollmentService.Insert(enrollment);

                return(Ok(enrollment)); //Sastus code 200
                //return Ok(courseDTO); //Sastus code 200
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex)); //Status code 500
            }
        }
        public async Task <IHttpActionResult> Post(EnrollmentDTO enrollmentDTO)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState)); // status code 400
            }
            //var course = new CourseDTO
            //{
            //    CourseId = courseDTO.CourseId,
            //    Title = courseDTO.Title,
            //    Credits = courseDTO.Credits
            //};

            //Ctrl + K + S Redondear el codigo
            try
            {
                var enrollment = mapper.Map <Enrollment>(enrollmentDTO);

                //var course = mapper.Map<Course>(courseDTO);
                //course = await courseService.Insert(course);
                //return Ok(courseDTO); //Sastus code 400

                enrollment = await enrollmentService.Insert(enrollment);

                return(Ok(enrollmentDTO)); //Sastus code 200
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex)); //Status code 500
            }
        }
        public EnrollmentDTO NewEnrollment()
        {
            var enrollment = new EnrollmentDTO
            {
                EnrollmentId = _enrollmentService.GetNewEnrollmentId()
            };

            return(enrollment);
        }
示例#7
0
        public IActionResult EnrollStudent(EnrollmentDTO enrolment)
        {
            var db = new s16600Context();

            //if (db.Studies.Count(s => s.Name == e.Studies) == 0)
            if (!db.Studies.Any(s => s.Name == enrolment.Studies))

            {
                return(BadRequest("Brak takiego kierunku studiów"));
            }

            if (db.Student.Any(s => s.IndexNumber == enrolment.IndexNumber))
            {
                return(BadRequest("Student o takim numerze indeksu już istnieje"));
            }

            var ids = db.Studies.Where(s => s.Name == enrolment.Studies).First().IdStudy;

            if (!db.Enrollment.Any(e => (e.Semester == 1) && (e.IdStudy == ids)))
            {
                var e = new Enrollment();
                e.IdEnrollment = db.Enrollment.Max(e => e.IdEnrollment) + 1;
                e.Semester     = 1;
                e.IdStudy      = ids;
                e.StartDate    = DateTime.Now;

                db.Enrollment.Add(e);
                db.SaveChanges();

                //return Ok("Dodano rekrutację");
            }

            var s = new Student();

            s.IndexNumber  = enrolment.IndexNumber;
            s.FirstName    = enrolment.FirstName;
            s.LastName     = enrolment.LastName;
            s.BirthDate    = Convert.ToDateTime(enrolment.BirthDate);
            s.IdEnrollment = db.Enrollment.Where(e => (e.Semester == 1) && (e.IdStudy == ids)).First().IdEnrollment;

            db.Student.Add(s);
            db.SaveChanges();

            return(Ok("Dodano studenta"));

            /*
             * {
             *  "IndexNumber": "s12345",
             *  "FirstName": "Andrzej",
             *  "LastName": "Malewski",
             *  "BirthDate": "30.03.1993",
             *  "Studies": "IT"
             * }*/
        }
示例#8
0
        public async Task <ActionResult> Create(EnrollmentDTO enrollmentDTO)
        {
            if (!ModelState.IsValid)
            {
                var enrollment = mapper.Map <Enrollment>(enrollmentDTO);
                await enrollmentService.Insert(enrollment);

                return(RedirectToAction(nameof(Index)));
            }
            return(View(enrollmentDTO));
        }
示例#9
0
 public ActionResult MakeEnrollment(EnrollmentViewModel order)
 {
     try
     {
         var enrollmentDto = new EnrollmentDTO() /*PhoneId = order.PhoneId, Address = order.Address, PhoneNumber = order.PhoneNumber*/ }
         {
             ;
             //TODO добавить проверку на факт регистрации
             enrollmentService.MakeRegister(enrollmentDto);
             return(Content("<h2>Ваш заказ успешно оформлен</h2>"));
     }
        public async Task <ActionResult> Create(EnrollmentDTO enrollmentDTO)
        {
            if (!ModelState.IsValid)
            {
                return(View(enrollmentDTO));
            }

            var enrollment = _mapper.Map <Enrollment>(enrollmentDTO);
            await _enrollmentService.Insert(enrollment);

            var id = enrollment.EnrollmentID;

            return(RedirectToAction("Index"));
        }
 public async Task <ActionResult> Create(EnrollmentDTO collection)
 {
     try
     {
         if (collection != null)
         {
             await enrollmentService.Insert(collection);
         }
         return(RedirectToAction(nameof(Index)));
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
        // GET: Enrollment/Create
        public ActionResult Create()
        {
            EnrollmentDTO enrollment = new EnrollmentDTO();

            enrollment.listStudent = studentService.GetAll().Select(x => new SelectListItem()
            {
                Value = x.ID.ToString(),
                Text  = x.FirstMidName
            }).ToList();

            enrollment.listCourse = courseService.GetAll().Select(x => new SelectListItem()
            {
                Value = x.CourseID.ToString(),
                Text  = x.Title
            }).ToList();

            return(View(enrollment));
        }
示例#13
0
        public IActionResult AddEnrollment(EnrollmentDTO enrollmentDTO)
        {
            if (!ModelState.IsValid)
            {
                var state = ModelState;
                return(BadRequest());
            }
            Enrollment enrollment = _dbService.EnrollStudent(enrollmentDTO);

            if (enrollment != null)
            {
                return(Created("api/students/" + enrollmentDTO.IndexNumber, enrollment));
            }
            else
            {
                return(BadRequest());
            }
        }
 public IActionResult Update(string code, [FromBody] EnrollmentDTO value)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest(ModelState));
     }
     try
     {
         var repo   = _unitOfWork.GetRepository <Enrollment>();
         var newval = Mapper.Map <Enrollment>(value);
         newval.EnrollmentId = code;
         repo.Update(newval);
         repo.SaveChanges();
         return(Ok(newval));
     }
     catch (Exception e)
     {
         return(BadRequest(e));
     }
 }
示例#15
0
 public EnrollmentDTO CreateEnrollment(EnrollmentDTO value, string token)
 {
     try
     {
         var repo     = _unitOfWork.GetRepository <Enrollment>();
         var newvalue = Mapper.Map <Enrollment>(value);
         newvalue.EnrollmentGUID = Guid.NewGuid();
         if (newvalue.EnrollmentCode == null)
         {
             newvalue.EnrollmentCode = newvalue.EnrollmentId;
         }
         //newvalue.CreatedBy = _appUserService.GetUserId(token);
         newvalue.CreationDate = DateTime.Now;
         repo.Add(newvalue);
         repo.SaveChanges();
         return(Mapper.Map <EnrollmentDTO>(newvalue));
     }
     catch (Exception ex)
     {
         throw new Exception(ex.Message);
     }
 }
 public IActionResult Post([FromBody] EnrollmentDTO value)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest(ModelState));
     }
     try
     {
         //var idToken = HttpContext.GetTokenAsync(JwtBearerDefaults.AuthenticationScheme, "access_token");
         //var token = idToken.Result;
         var enrollment = _enrollmentService.CreateEnrollment(value, "");
         if (enrollment != null)
         {
             return(Ok(enrollment));
         }
         return(BadRequest(new { message = "Cannot Create Enrollment" }));
     }
     catch (Exception e)
     {
         return(BadRequest(e));
     }
 }
示例#17
0
 public void UpdateEnrollment(Enrollment enrollment, EnrollmentDTO enrollmentDTO)
 {
     UpdateHedwigIdEntityWithNavigationProperties <Enrollment, EnrollmentDTO, int>(enrollment, enrollmentDTO);
 }
示例#18
0
        public EnrollmentDTO EnrollStudent(EnrollStudentDTO enrollStudentDTO)
        {
            string        connectionString = "Data Source=db-mssql;Initial Catalog=s17417;Integrated Security=True";
            EnrollmentDTO enrollment;

            using (SqlConnection connection = new SqlConnection(connectionString))
                using (SqlCommand command = new SqlCommand())
                {
                    int IdStudy;

                    connection.Open();

                    var transaction = connection.BeginTransaction();
                    try
                    {
                        // enrollment = new EnrollmentDTO();
                        command.Connection  = connection;
                        command.Transaction = transaction;

                        command.CommandText = "Select IdStudy from Studies where name=@Name";
                        command.Parameters.AddWithValue("Name", enrollStudentDTO.Studies);
                        var reader = command.ExecuteReader();
                        reader.Read();

                        if (!reader.HasRows)
                        {
                            return(null);
                        }
                        IdStudy = reader.GetInt32(reader.GetOrdinal("IdStudy"));
                        reader.Close();

                        /*enrollment.Semester = 1;
                         * enrollment.IdEnrollment = 1;
                         * enrollment.IdStudy = 1;
                         * enrollment.StarDate = DateTime.Now.ToString();
                         * return enrollment;*/
                        command.CommandText = "Select * from Enrollment where Semester=1 AND IdStudy=" + IdStudy;
                        reader = command.ExecuteReader();
                        reader.Read();

                        enrollment = new EnrollmentDTO();
                        if (reader.HasRows)
                        {
                            enrollment.IdEnrollment = reader.GetInt32(reader.GetOrdinal("IdEnrollment"));
                            enrollment.Semester     = reader.GetInt32(reader.GetOrdinal("Semester"));
                            enrollment.StarDate     = reader["StartDate"].ToString();
                            enrollment.IdStudy      = reader.GetInt32(reader.GetOrdinal("IdEnrollment"));
                            reader.Close();
                        }
                        else
                        {
                            enrollment.IdStudy  = IdStudy;
                            enrollment.Semester = 1;
                            enrollment.StarDate = DateTime.Now.ToString();
                            command.CommandText = "insert into Enrollment (idEnrollment, Semester,IdStudy,StartDate)" +
                                                  "values((Select Max(IdEnrollment) + 1 from Enrollment)," + enrollment.Semester + "," + enrollment.IdStudy + "," + enrollment.StarDate + ")";
                            command.ExecuteNonQuery();
                            command.CommandText = "Select IdEnrollment,StartDate from Enrollment where " + enrollment.Semester + " AND IdStudy=" + enrollment.IdStudy;
                            //reader = command.ExecuteReader();
                            reader.Read();

                            enrollment.IdEnrollment = reader.GetInt32(reader.GetOrdinal("IdEnrollment"));
                            enrollment.StarDate     = reader["StartDate"].ToString();
                            reader.Close();
                        }

                        command.CommandText = "select 1 from Student where IndexNumber=@IndexNumber";
                        command.Parameters.AddWithValue("IndexNumber", enrollStudentDTO.IndexNumber);
                        reader = command.ExecuteReader();
                        reader.Read();
                        if (reader.HasRows)
                        {
                            reader.Close();
                            transaction.Rollback();
                            return(null);
                        }
                        reader.Close();
                        command.CommandText = "Insert into Student(IndexNumber, FirstName, LastName, BirthDate, IdEnrollment)" +
                                              "values(@IndexNumber, @FirstName,@LastName,@BirthDate," + enrollment.IdEnrollment + ")";
                        command.Parameters.AddWithValue("FirstName", enrollStudentDTO.FirstName);
                        command.Parameters.AddWithValue("LastName", enrollStudentDTO.LastName);
                        command.Parameters.AddWithValue("BirthDate", enrollStudentDTO.BirthDate);
                        command.ExecuteNonQuery();
                    } catch (SqlException e)
                    {
                        transaction.Rollback();
                        return(null);
                    }

                    transaction.Commit();

                    return(enrollment);
                }
        }
示例#19
0
        public Enrollment EnrollStudent(EnrollmentDTO enrollment)
        {
            using (SqlConnection connection = new SqlConnection(CONNECTION_STRING))
                using (SqlCommand command = new SqlCommand())
                {
                    DateTime parsedDate = Convert.ToDateTime(enrollment.BirthDate);
                    command.Connection = connection;
                    connection.Open();


                    SqlTransaction transaction = connection.BeginTransaction();
                    command.Transaction = transaction;

                    //GET IDSTUDY if NOT present throw 404
                    command.CommandText = "SELECT IdStudy FROM Studies WHERE Name = @Name";
                    command.Parameters.AddWithValue("Name", enrollment.Studies);
                    SqlDataReader dataReader = command.ExecuteReader();
                    //1.WORKFLOW 1 - IdStudy exists
                    if (dataReader.Read())
                    {
                        int idStudies = (int)dataReader["IdStudy"];
                        dataReader.Close();

                        //Czy istenieje IdEnrollment z idStudy i Semester 1 jesli nie to stworz enrollment
                        command.CommandText = "SELECT IdEnrollment FROM Enrollment WHERE IdStudy = @IdStudy AND Semester = 1";
                        command.Parameters.AddWithValue("IdStudy", idStudies);

                        dataReader = command.ExecuteReader();

                        //1.WORKFLOW 1.1 - IdEnrollment with IdStudy and Semester = 1 exists
                        if (dataReader.Read())
                        {
                            var idEnrollment = dataReader["IdEnrollment"];
                            dataReader.Close();
                            try
                            {
                                command.CommandText = "INSERT INTO Student(IndexNumber, FirstName, LastName, BirthDate, IdEnrollment) " +
                                                      "VALUES(@IndexNumber, @FirstName, @LastName, @BirthDate, @IdEnrollment )";
                                command.Parameters.AddWithValue("IndexNumber", enrollment.IndexNumber);
                                command.Parameters.AddWithValue("FirstName", enrollment.FirstName);
                                command.Parameters.AddWithValue("LastName", enrollment.LastName);
                                command.Parameters.AddWithValue("BirthDate", parsedDate);
                                command.Parameters.AddWithValue("IdEnrollment", (int)idEnrollment);
                                command.ExecuteNonQuery();

                                transaction.Commit();

                                command.CommandText = "SELECT e.Semester, s.Name, e.StartDate " +
                                                      "FROM Enrollment e " +
                                                      "INNER JOIN Studies s ON e.IdStudy = s.IdStudy " +
                                                      "WHERE IdEnrollment = @IdEnrollemnt";
                                command.Parameters.AddWithValue("IdEnrollemnt", idEnrollment);
                                dataReader = command.ExecuteReader();

                                if (dataReader.Read())
                                {
                                    int      semester = Convert.ToInt32(dataReader["Semester"]);
                                    Study    study    = Study.newStudy(dataReader["Name"].ToString());
                                    DateTime dateTime = Convert.ToDateTime(dataReader["StartDate"]);
                                    dataReader.Close();
                                    return(Enrollment.newEnrollment(semester, study, dateTime));
                                }
                            }
                            catch (Exception ex)
                            {
                                transaction.Rollback();
                                Console.WriteLine("Duplicated Student ID" + ex);
                                return(null);
                            }
                        }
                        //1.WORKFLOW 1.2 - IdEnrollment with IdStudy and Semester = 1 does NOT exist
                        else
                        {
                            //Workaround for unique id of enrollment
                            command.CommandText = "SELECT MAX(IdEnrollment) as idEnrollment FROM Enrollment ";

                            dataReader.Close();
                            dataReader = command.ExecuteReader();
                            if (dataReader.Read())
                            {
                                int idNewEnrollment = (int)dataReader["idEnrollment"] + 1;
                                dataReader.Close();

                                try
                                {
                                    command.CommandText = "INSERT INTO Enrollment(IdEnrollment, Semester, IdStudy, StartDate) " +
                                                          "VALUES(@IdEnrollment, 1, @IdStudy, GETDATE())";
                                    command.Parameters.Clear();
                                    command.Parameters.AddWithValue("IdStudy", idStudies);
                                    command.Parameters.AddWithValue("IdEnrollment", idNewEnrollment);


                                    command.ExecuteNonQuery();

                                    transaction.Commit(); // Czy to nie jest zle jesli mam 2 x commit zamiast jednego przy calej operacji
                                }
                                catch (Exception ex)
                                {
                                    Console.WriteLine("Error when creating Enrollment:" + ex);
                                    transaction.Rollback();
                                    return(null);
                                }


                                try
                                {
                                    SqlTransaction transactionStudent = connection.BeginTransaction();
                                    command.Transaction = transactionStudent;
                                    command.CommandText = "INSERT INTO Student(IndexNumber, FirstName, LastName, BirthDate, IdEnrollment) " +
                                                          "VALUES(@IndexNumber, @FirstName, @LastName, @BirthDate, @IdEnrollment )";
                                    command.Parameters.Clear();
                                    command.Parameters.AddWithValue("IndexNumber", enrollment.IndexNumber);
                                    command.Parameters.AddWithValue("FirstName", enrollment.FirstName);
                                    command.Parameters.AddWithValue("LastName", enrollment.LastName);
                                    command.Parameters.AddWithValue("BirthDate", parsedDate);
                                    command.Parameters.AddWithValue("IdEnrollment", idNewEnrollment);


                                    command.ExecuteNonQuery();

                                    transactionStudent.Commit();

                                    command.CommandText = "SELECT e.Semester, s.Name, e.StartDate " +
                                                          "FROM Enrollment e " +
                                                          "INNER JOIN Studies s ON e.IdStudy = s.IdStudy " +
                                                          "WHERE IdEnrollment = @IdEnrollemnt";

                                    command.Parameters.AddWithValue("IdEnrollemnt", idNewEnrollment);
                                    dataReader = command.ExecuteReader();

                                    if (dataReader.Read())
                                    {
                                        int      semester = Convert.ToInt32(dataReader["Semester"]);
                                        Study    study    = Study.newStudy(dataReader["Name"].ToString());
                                        DateTime dateTime = Convert.ToDateTime(dataReader["StartDate"]);
                                        dataReader.Close();
                                        return(Enrollment.newEnrollment(semester, study, dateTime));
                                    }
                                }
                                catch (Exception ex)
                                {
                                    Console.WriteLine("Error when creating Student:" + ex);
                                    transaction.Rollback();
                                    return(null);
                                }
                            }
                        }
                        return(null);
                    }
                    //2.WORKFLOW 2 - IdStudy does not exist
                    else
                    {
                        Console.WriteLine("Nie znaleziono Studies o takim name" + enrollment.Studies);
                        return(null);
                    }
                }
        }
示例#20
0
 public bool MakeRegister(EnrollmentDTO enrollmentDto)
 {
     //TODO перезаполнить правильно
     return(false);
 }