public void SaveChildMovement(CYCAChildMovementTransfer vm, int userId)//, int movementId) { using (SDIIS_DatabaseEntities db = new SDIIS_DatabaseEntities()) { try { //Is Child in another Venue var closeMovements = (from m in db.CYCA_Child_Movement join p in db.Persons on m.Person_Id equals p.Person_Id where m.Person_Id == vm.Person_Id && m.Child_Check_Out_Date == null select m).ToList(); foreach (CYCA_Child_Movement closeMovement in closeMovements) { closeMovement.Check_Out_Date = DateTime.Now; closeMovement.Check_Out_Time = DateTime.Now; closeMovement.Child_Check_Out_Date = DateTime.Now; closeMovement.Child_Check_Out_Time = DateTime.Now; closeMovement.Date_Last_Modified = DateTime.Now; closeMovement.Modified_By = userId.ToString(); db.SaveChanges(); } //Open New Record CYCA_Child_Movement add = new CYCA_Child_Movement(); add.Person_Id = vm.Person_Id; add.Admission_Id = vm.Admission_Id; add.Venue_Id = vm.Venue_Id; add.Date_Moved = Convert.ToDateTime(DateTime.Now); add.Time_Moved = Convert.ToDateTime(DateTime.Now); add.Moved_By = userId; add.Created_By = userId.ToString(); add.Date_Created = DateTime.Now; add.Is_Active = true; add.Is_Deleted = false; db.CYCA_Child_Movement.Add(add); db.SaveChanges(); } catch (System.Data.Entity.Validation.DbEntityValidationException dbEx) { Exception raise = dbEx; foreach (var validationErrors in dbEx.EntityValidationErrors) { foreach (var validationError in validationErrors.ValidationErrors) { string message = string.Format("{0}:{1}", validationErrors.Entry.Entity.ToString(), validationError.ErrorMessage); // raise a new exception nesting // the current instance as InnerException raise = new InvalidOperationException(message, raise); } } throw raise; } } }
//Add Child on transfer table public void AddChildTransferToDatabase(CYCAChildMovementTransfer vm, int userId) { using (SDIIS_DatabaseEntities db = new SDIIS_DatabaseEntities()) { try { CYCA_Child_Transfer add = new CYCA_Child_Transfer(); add.Person_Id = vm.Person_Id; add.Tansfer_Status_Id = 1; add.Date_Transferred = DateTime.Now; add.Time_Transferred = DateTime.Now; add.Transferred_By = userId; add.Tranferred_To = vm.TransferredTo_Id; add.Created_By = userId.ToString(); add.Date_Created = DateTime.Now; add.Is_Active = true; add.Is_Deleted = false; add.Admission_Id = vm.Admission_Id; db.CYCA_Child_Transfer.Add(add); db.SaveChanges(); } catch (System.Data.Entity.Validation.DbEntityValidationException dbEx) { Exception raise = dbEx; foreach (var validationErrors in dbEx.EntityValidationErrors) { foreach (var validationError in validationErrors.ValidationErrors) { string message = string.Format("{0}:{1}", validationErrors.Entry.Entity.ToString(), validationError.ErrorMessage); // raise a new exception nesting // the current instance as InnerException raise = new InvalidOperationException(message, raise); } } throw raise; } } }