async void OnBtnOpenJob(object sender, EventArgs args) { bool GoodInput = true; if (titleEntry.Text == string.Empty) { GoodInput = false; } if (DescrEntry.Text == string.Empty) { GoodInput = false; } if (GoodInput == true) { var realm = Realm.GetInstance(); string JobNum = GetJobNum(titleEntry.Text); realm.Write(() => { var NewUser = new UserJobs(); NewUser.Job_Num = JobNum; NewUser.Job_Title = titleEntry.Text; NewUser.Job_Descr = DescrEntry.Text; NewUser.Job_Status = "Not Started"; NewUser.Job_AssignedTo = IDEntry.Text; NewUser.Job_Start = DateTime.Now.ToString(); NewUser.Job_End = EndDate.Date.ToString(); realm.Add(NewUser); }); await DisplayAlert("Successfully Opened Job", "New job been added with the unique job ID: " + JobNum, "Great"); ClearInput(); } else { await DisplayAlert("Job Opening Error", "Please ensure that all info is entered correctly", "Okay"); } }
async void OnBtnAssignJob(object sender, EventArgs args) { string EmpID = IdEntry.Text; var realm = Realm.GetInstance(); var trealm = realm.All <UsersDB>().Where(d => d.Approved == true && d.Emp_ID == EmpID); var job = realm.All <UserJobs>().Where(d => d.Job_Num == UserJobNum && d.Job_AssignedTo == ""); if (!(job.Count() == 0)) { var i = job.ElementAt(0); if (!(trealm.Count() == 0)) { var u = trealm.ElementAt(0); if (!(u.assigned == "Assigned")) { string name = u.Name; string surname = u.Surname; string role = u.Role; string email = u.Email; string password = u.Password; string assigned = u.assigned; var kristianWithC = new UsersDB { Emp_ID = EmpID, Approved = true, assigned = "Assigned", Name = name, Surname = surname, Email = email, Password = password, Role = role }; realm.Write(() => realm.Add(kristianWithC, update: false)); var cheeseBook = realm.All <UsersDB>().First(b => b.Emp_ID == EmpID && b.assigned == "Unassigned"); using (var trans = realm.BeginWrite()) { realm.Remove(cheeseBook); trans.Commit(); } string title = i.Job_Title; string descr = i.Job_Descr; string end = i.Job_End; string start = i.Job_Start; var kristianWith = new UserJobs { Job_Num = UserJobNum, Job_Title = title, Job_Descr = descr, Job_Status = "In Progress", Job_AssignedTo = EmpID, Job_Start = start, Job_End = end, }; realm.Write(() => realm.Add(kristianWith, update: false)); var cheeseBoo = realm.All <UserJobs>().First(b => b.Job_Num == UserJobNum && b.Job_AssignedTo == ""); using (var trans = realm.BeginWrite()) { realm.Remove(cheeseBoo); trans.Commit(); } RefreshList(); AssignInputView(); } else { await DisplayAlert("Employee Already Assigned", "This employee is already assigned to a job", "Okay"); } } else { await DisplayAlert("Invalid Employee ID", "The employee ID entered is not valid", "Okay"); } } }