public StudentParent AddStudentParent([FromBody] StudentParent studentParent) { try { if (ModelState.IsValid) { bool isNewParent = false; if (studentParent.StudentParentId == 0) { isNewParent = true; if (_userService.IsEmailAddressExists(studentParent.Email)) { throw new Exception("Email address already Exists!!"); } } studentParent.UpdateDate = DateTime.Now; studentParent = _studentService.InsertUpdateStudentParent(studentParent); if (studentParent != null && isNewParent) { Utilities.SendWelcomeMailToParent(studentParent.Email, studentParent.Password, studentParent.FirstName + " " + studentParent.LastName); } } } catch (Exception ex) { throw (ex); } return(studentParent); }
public int CreateStudentParent(StudentParent item) { _context.StudentParent.Add(item); _context.SaveChanges(); return(item.StudentParentID); }
public bool InsertIntoStudentParent(StudentParent studentParent) { bool success = true; int result = 0; try { DB.Open(); result = DB.Exec("BEGIN TRANSACTION BEGIN TRY INSERT INTO [StudentParent](fk_StudentId, fk_ParentId)" + "VALUES(" + studentParent.Fkstudentid + "," + studentParent.Fkparentid + "); COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION END CATCH"); if (result == -1) { throw new Exception(); } } catch (SqlException sqlException) { Debug.Write(sqlException.ToString()); success = false; } finally { DB.Close(); } return(success); }
public List <StudentParent> GetStudentParent(int id) { List <StudentParent> studentParentsList = new List <StudentParent>(); //var con=@"Data Source=(LocalDB)\v11.0;AttachDbFileName=C:\USERS\LarsS\DOCUMENTS\GITHUB\HOVEDOPAVE\HOVEDOPGAVE\WEBSERVICE\APP_DATA\SCHOOLDB.MDF; Integrated Security=SSPI; Connection Timeout=1200"; //(@"Data Source=(LocalDB)\v11.0;AttachDbFileName=|DataDirectory|\SchoolDB.mdf; Integrated Security=SSPI; Connection Timeout=12000"); using (SqlConnection myConnection = new SqlConnection(connectionString)) { string oString = "SELECT * FROM StudentParent WHERE [fk_StudentId]=" + id + "OR [fk_ParentId]=" + id; SqlCommand oCmd = new SqlCommand(oString, myConnection); myConnection.Open(); using (SqlDataReader oReader = oCmd.ExecuteReader()) { while (oReader.Read()) { StudentParent studentParent = new StudentParent(); studentParent.Fkparentid = Convert.ToInt32(oReader["fk_ParentId"]); studentParent.Fkstudentid = Convert.ToInt32(oReader["fk_StudentId"]); studentParentsList.Add(studentParent); } myConnection.Close(); } return(studentParentsList); } }
public async Task <IActionResult> Edit(int id, [Bind("Id,Name,LastName,Age,Gender,Password,PhoneNubmber,IsMobielVerifed,Email,IsEmailVerified,AvatarPath,BirthDay,AllowActivity")] StudentParent studentParent) { if (id != studentParent.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(studentParent); await _context.SaveChangesWithHistoryAsync(HttpContext); } catch (DbUpdateConcurrencyException) { if (!StudentParentExists(studentParent.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(studentParent)); }
private bool StudentParentEntry() { var res = false; try { foreach (var item in studentId) { foreach (var items in ParentId) { var StudentParentModel = new StudentParent(); StudentParentModel.ParentId = items; StudentParentModel.StudentId = item; db.StudentParents.Add(StudentParentModel); db.SaveChanges(); } } res = true; } catch (Exception) { res = false; } return(res); }
public void UpdateStudents(int[] students) { // add students who didnt exists before foreach (var studentId in students) { var exists = Parent.Students.FirstOrDefault(x => x.StudentId == studentId) != null; if (!exists) { var student = new StudentParent(studentId, ParentId); Parent.Students.Add(student); } } // remove old students who arent in the new list foreach (var student in Parent.Students) { if (!students.Contains(student.StudentId)) { Parent.Students.Remove(student); } } db.Entry(Parent).State = System.Data.Entity.EntityState.Modified; }
public ActionResult DeleteConfirmed(int id) { StudentParent studentParent = db.StudentParent.Find(id); db.StudentParent.Remove(studentParent); db.SaveChanges(); return(RedirectToAction("Index")); }
public bool InsertStudent(Student student, EnrollmentEx enrollment = null) { bool success = false; string sqlStatement = ""; if (enrollment != null) { List <ParentEnrollment> parentenrollmentlist = DatabaseHandler.Instance.GetParentEnrollment(enrollment.Id); // student.Id = DatabaseHandler.Instance.InsertStudent(student); // hvorfor ikke bare returner string tilbage og så have en commit metode på databasehandler // så kan du sende den samlet sql statement ned til databasen. (Dette behøves ikke når der skal læses/read da den ikke kan ødelægge noget.) transaction sqlStatement += DatabaseHandler.Instance.InsertStudent2(student); foreach (ParentEnrollment parentenrollment in parentenrollmentlist) { StudentParent association = new StudentParent(); association.Fkparentid = parentenrollment.Fkparentid; association.Fkstudentid = student.Id; sqlStatement += DatabaseHandler.Instance.InsertIntoStudentParent2(association); // abner og lukker connection flere gange.... } foreach (ParentEnrollment parentenrollment in parentenrollmentlist) { sqlStatement += DatabaseHandler.Instance.DeleteConnectionBetweenParentAndEnrollment2(parentenrollment.Fkparentid, enrollment.Id); // abner og lukker connection flere gange.... } sqlStatement += DatabaseHandler.Instance.DeleteEnrollment2(enrollment.Id); success = DatabaseHandler.Instance.Commit(sqlStatement); } else if (enrollment == null) { if (student.Id != 0) { success = DatabaseHandler.Instance.UpdateStudent(student); } else { //int recentId = DatabaseHandler.Instance.GetMostRecentUserId(); // if (recentId != -1) //{ /* student.Id = recentId; * student.Fkuserid = recentId; * student.Username = "******" + recentId;*/ int generatedId = DatabaseHandler.Instance.InsertStudent(student); // will insert into User and Student. // } } } return(success); }
public StudentParent DeleteStudentParent(int studentParentId) { StudentParent studentParent = GetStudentParent(studentParentId); db.StudentParentsRepository.Delete(studentParent); db.Save(); return(studentParent); }
public string InsertIntoStudentParent2(StudentParent studentParent) { string returnstring = ""; returnstring = (" INSERT INTO [StudentParent](fk_StudentId, fk_ParentId)" + "VALUES(@Id," + studentParent.Fkparentid + ");"); return(returnstring); }
public JsonResult RegisterByDeskTop(Register model) { UserModule module = new UserModule(_context, _userManager, _signInManager); ParentModule parentMod = new ParentModule(_context); StudentModule studentMod = new StudentModule(_context); StudentParentModule stuParMod = new StudentParentModule(_context); StudentClassroomModule stuClassMod = new StudentClassroomModule(_context); //=========== checking validation for credencials key ===============// var credInfo = GetCredentialsInfo(model.Student.Key); // if ( GetCredentialsInfo(model.Student.Key) == null ) if (credInfo == null) { return(Json(new { Succeeded = false, statusCode = 501 })); } var resultVal = module.CreateUserByDeskTop(model.Users); if (resultVal.Result.StatusCode == 200) // success Users table { if (module.GetUserInfo(model.Users) != null) { Users user = new Users { UserName = model.Users.Email, PasswordHash = model.Users.PasswordHash }; string oauthResult = CreateOAuthUser(user); // need validation check. if result is success return success value else delete MPXUser data and return error. if (model.Parent == null) { model.Parent = new Parent(); } model.Parent.UserId = module.GetUserInfo(model.Users).Id; //select userID int parentID = parentMod.CreateParent(model.Parent); //save parent info model.Student.ParentID = parentID; int studentID = studentMod.CreateStudent(model.Student); //save student info StudentParent stuParModel = new StudentParent { ParentID = parentID, StudentID = studentID }; stuParMod.CreateStudentParent(stuParModel); //save StudentParent info StudentClassroom stuClassModel = new StudentClassroom { StudentID = studentID, IsActive = true, ClassroomID = credInfo.Teacher.ClassroomID }; stuClassMod.CreateStuClassroom(stuClassModel); //save studentclassroom // var roleresult = _userManager.AddToRoleAsync(model.Users, "Superusers"); } } return(Json(resultVal.Result)); }
public static StudentParentDto StudentParentToStudentParentDto(StudentParent studentParent) { return(new StudentParentDto() { StudentParentId = studentParent.Id, StudentId = studentParent.Student.Id, ParentId = studentParent.Parent.Id, StudentName = studentParent.Student.UserName, ParentName = studentParent.Parent.UserName }); }
public async Task <IActionResult> Create([Bind("Id,Name,LastName,Age,Gender,Password,PhoneNubmber,IsMobielVerifed,Email,IsEmailVerified,AvatarPath,BirthDay,AllowActivity")] StudentParent studentParent) { if (ModelState.IsValid) { _context.Add(studentParent); await _context.SaveChangesWithHistoryAsync(HttpContext); return(RedirectToAction(nameof(Index))); } return(View(studentParent)); }
public bool IsParent(int studentId, int parentId) { StudentParent studentParent = db.StudentParentsRepository.Get(sp => sp.StudentId == studentId && sp.ParentId == parentId).FirstOrDefault(); if (studentParent == null) { return(false); } return(true); }
public ActionResult Edit([Bind(Include = "StudentParentID,StudentID,ParentID")] StudentParent studentParent) { if (ModelState.IsValid) { db.Entry(studentParent).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.ParentID = new SelectList(db.Parent, "ParentID", "Parent_FirstName", studentParent.ParentID); ViewBag.StudentID = new SelectList(db.Student, "StudentID", "LastName", studentParent.StudentID); return(View(studentParent)); }
public async Task <Unit> Handle(AssignParentToStudentCommand request, CancellationToken cancellationToken) { var studentParent = new StudentParent { StudentId = request.StudentId, ParentId = request.ParentId }; context.Add(studentParent); await context.SaveChangesAsync(cancellationToken); return(Unit.Value); }
public bool ParentsInsert(StudentParent entity) { try { StudentParentsTable = db.GetTable <StudentParent>(); StudentParentsTable.InsertOnSubmit(entity); db.SubmitChanges(); return(true); } catch { return(false); } }
// GET: StudentParents/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } StudentParent studentParent = db.StudentParent.Find(id); if (studentParent == null) { return(HttpNotFound()); } return(View(studentParent)); }
public bool ParentsDelete(int StudentParentsID) { try { StudentParentsTable = db.GetTable <StudentParent>(); StudentParent model = StudentParentsTable.SingleOrDefault(x => x.StudentParentsID.Equals(StudentParentsID)); db.SubmitChanges(); return(true); } catch { return(false); } }
public async Task EditAsync(ParentModifyInputModel modifiedModel) { var parent = _parentsRepository.All().FirstOrDefault(p => p.Id == modifiedModel.Id); if (parent != null) { var studentIds = modifiedModel.Parent.StudentIds.Select(int.Parse).ToList(); if (!studentIds.Any()) // Make sure parent has student children { throw new ArgumentException($"Sorry, it's mandatory for a parent user to have at least 1 student"); } if (HasDifferentStudentIds(parent, studentIds) && studentIds.Any()) { var students = _studentsRepository.All().Where(s => studentIds.Contains(s.Id)); // Remove all pairs that are no longer valid foreach (var studentParent in parent.StudentParents.Where(sp => !studentIds.Contains(sp.StudentId))) { _studentParentsMappingRepository.Delete(studentParent); } foreach (var studentId in studentIds.Where(sid => !parent.StudentParents.Select(sp => sp.StudentId).Contains(sid))) { var student = _studentsRepository.All().FirstOrDefault(s => s.Id == studentId); if (student != null) { var studentParentPair = new StudentParent { Student = student, Parent = parent }; await _studentParentsMappingRepository.AddAsync(studentParentPair); } } await _studentParentsMappingRepository.SaveChangesAsync(); } parent.FirstName = modifiedModel.Parent.FirstName; parent.LastName = modifiedModel.Parent.LastName; parent.PhoneNumber = modifiedModel.Parent.PhoneNumber; _parentsRepository.Update(parent); await _parentsRepository.SaveChangesAsync(); } }
public void Remove(long id) { using (ApplicationContext context = new ApplicationContext()) { StudentParent studentParent = context.StudentParents .Where(x => x.Id == id) .FirstOrDefault(); if (studentParent == null) { throw new ObjectNotFoundException(); } context.StudentParents.Remove(studentParent); context.SaveChanges(); } }
// GET: StudentParents/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } StudentParent studentParent = db.StudentParent.Find(id); if (studentParent == null) { return(HttpNotFound()); } ViewBag.ParentID = new SelectList(db.Parent, "ParentID", "Parent_FirstName", studentParent.ParentID); ViewBag.StudentID = new SelectList(db.Student, "StudentID", "LastName", studentParent.StudentID); return(View(studentParent)); }
public StudentParent CreateStudentParent(int studentId, int parentId) { StudentUser student = studentsService.Value.GetStudentById(studentId); ParentUser parent = parentsService.Value.GetParentById(parentId); StudentParent newStudentParent = new StudentParent() { Student = student, Parent = parent }; db.StudentParentsRepository.Insert(newStudentParent); db.Save(); return(newStudentParent); }
public async Task AddParents(EditParentsInputModel model) { var student = await this.db.Students.FirstOrDefaultAsync(x => x.Id == model.StudentId); var parentIds = model.Parents.Where(x => x.Selected).Select(x => x.Id).ToArray(); var parentsForStudent = this.db.Parents.Where(x => parentIds.Contains(x.Id)).ToArray(); foreach (var parent in parentsForStudent) { var link = new StudentParent { ParentId = parent.Id }; student.Parents.Add(link); } await this.db.SaveChangesAsync(); }
/// <summary> /// Add a student to the parent as a child /// </summary> /// <param name="parentId"></param> /// <param name="studentId"></param> /// <returns></returns> public ParentChildrenDto AddChild(int parentId, int studentId) { logger.Info("Make {@userId} parent of {@userId}", parentId, studentId); ParentUser parent = db.ParentsRepository.Get(p => p.Id == parentId).FirstOrDefault(); if (parent == null) { return(null); } StudentUser student = db.StudentsRepository.Get(s => s.Id == studentId).FirstOrDefault(); if (student == null) { return(null); } StudentParent sp = new StudentParent() { Student = student, Parent = parent }; db.StudentParentsRepository.Insert(sp); db.Save(); // What even to return??? return(new ParentChildrenDto() { Name = parent.FirstName + " " + parent.LastName, ParentId = parent.Id, Children = parent.StudentParents.Select(c => new StudentDto() { FirstName = c.Student.FirstName, LastName = c.Student.LastName, ClassRoom = c.Student.ClassRoom.Name, ClassRoomId = c.Student.ClassRoom.Id, StudentId = c.Student.Id }).ToList() }); }
private bool InsertTheParrentsChildren(List <Student> childList, int parentId) { bool success = true; try { foreach (Student child in childList) { StudentParent studentParent = new StudentParent(); studentParent.Fkparentid = parentId; studentParent.Fkstudentid = child.Id; DatabaseHandler.Instance.InsertIntoStudentParent(studentParent); } } catch (Exception) { success = false; } return(success); }
public bool AddParentToStudent(int studentId, int parentId) { try { var newRelationship = new StudentParent() { StudentId = studentId, ParentId = parentId, CreateDatetime = DateTime.UtcNow, CreateUser = "******" }; _context.StudentParents.Add(newRelationship); _context.SaveChanges(); return true; } catch (Exception e) { return false; } }
public async Task <T> CreateParentAsync <T>(ParentInputModel inputModel) { var studentIds = inputModel.StudentIds.Select(int.Parse); var students = _studentsRepository.All().Where(s => studentIds.Contains(s.Id)); if (students.Any()) { var parent = new Parent { FirstName = inputModel.FirstName, LastName = inputModel.LastName, PhoneNumber = inputModel.PhoneNumber, UniqueId = _idGeneratorService.GenerateParentId() }; await _parentsRepository.AddAsync(parent); await _parentsRepository.SaveChangesAsync(); foreach (var student in students) { var studentParentPair = new StudentParent { Student = student, Parent = parent }; await _studentParentsMappingRepository.AddAsync(studentParentPair); } await _studentParentsMappingRepository.SaveChangesAsync(); BasePersonModel baseModel = _parentsRepository.All().FirstOrDefault(p => p.UniqueId == parent.UniqueId); return(AutoMapperConfig.MapperInstance.Map <T>(baseModel)); } throw new ArgumentException($"Sorry, we couldn't any student with id in the following list: [{string.Join(", ", studentIds)}]"); }
public bool AddParentForStudent(int clientid, string name, string lastName1, string lastName2, DateTime birthday, char genre, string email, string phone, int studentId, string cedula) { try { var newParent = new Parent() { ClientId = clientid, Name = name, LastName2 = lastName2, LastName1 = lastName1, Birthday = birthday, RegistrationDate = DateTime.UtcNow, CreateDatetime = DateTime.UtcNow, CreateUser = "******", Address = "some address that should not be here...", Email = email, Phone = phone, CountryId = cedula }; _context.Parents.Add(newParent); _context.SaveChanges(); var rel = new StudentParent() { StudentId = studentId, ParentId = newParent.Id, CreateDatetime = DateTime.UtcNow, CreateUser = "******" }; _context.StudentParents.Add(rel); _context.SaveChanges(); return(true); } catch (Exception e) { return(false); } }