private void MyCardHolderWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) { btSave.IsEnabled = true; if (result.Result) { if (this.mode == EType.WindowMode.ADD_MODE) { if (getCardHolderWorker.IsBusy) { getCardHolderWorker.CancelAsync(); } else { getCardHolderWorker.RunWorkerAsync(); } } else { DTO_CardHolder oldHolder = Repository.lstAllCardHolders.FirstOrDefault(c => c.Id == holder.Id); if (oldHolder != null) { oldHolder = holder; } if (workerReloadDept.IsBusy) { workerReloadDept.CancelAsync(); } else { workerReloadDept.RunWorkerAsync(); } } } else { MessageBox.Show(result.Detail, "", MessageBoxButton.OK, MessageBoxImage.Error); } }
public DTO_CardHolder GetCardHolderByAccount(string account, string password) { DataTable dt = dal.GetCardHolderByAccount(account, password); if (dt == null) { return(null); } if (dt.Rows.Count <= 0) { return(new DTO_CardHolder()); } try { DataRow row = dt.Rows[0]; DTO_CardHolder holder = new DTO_CardHolder(); holder.Id = row["Id"].ToString(); holder.Name = row["Name"].ToString(); holder.Gender = (Gender)Convert.ToInt16(row["Gender"].ToString()); holder.DOB = Convert.ToDateTime(row["DOB"].ToString()); holder.Address = row["Address"].ToString(); holder.PhoneNumber = row["PhoneNumber"].ToString(); holder.Email = row["Email"].ToString(); holder.Description = row["Description"].ToString(); holder.Account = row["UserName"].ToString(); holder.Password = row["Password"].ToString(); holder.DepartmentId = row["Department"].ToString(); holder.Department = null; return(holder); } catch { return(new DTO_CardHolder()); } }
/// <summary> /// Get all card holder /// </summary> /// <returns>Return list card holder or null if error</returns> public List <DTO_CardHolder> GetAllCardHolder() { List <DTO_CardHolder> lstCardHolders = new List <DTO_CardHolder>(); DataTable dt = dal.GetAllCardHolder(); if (dt.Rows.Count <= 0) { return(null); } try { foreach (DataRow row in dt.Rows) { DTO_CardHolder holder = new DTO_CardHolder(); holder.Id = row["Id"].ToString(); holder.Name = row["Name"].ToString(); holder.Gender = (Gender)Convert.ToInt16(row["Gender"].ToString()); holder.DOB = Convert.ToDateTime(row["DOB"].ToString()); holder.Address = row["Address"].ToString(); holder.PhoneNumber = row["PhoneNumber"].ToString(); holder.Email = row["Email"].ToString(); holder.Description = row["Description"].ToString(); holder.Account = row["UserName"].ToString(); holder.Password = row["Password"].ToString(); holder.DepartmentId = row["Department"].ToString(); holder.Department = null; lstCardHolders.Add(holder); } return(lstCardHolders); } catch { return(null); } }
private void DelCardHolderWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) { if (result.Result) { DTO_CardHolder oldCardHolder = Repository.lstAllCardHolders.FirstOrDefault(c => c.Id == holder.Id); if (oldCardHolder != null) { Repository.lstAllCardHolders.Remove(oldCardHolder); } if (workerReloadDept.IsBusy) { workerReloadDept.CancelAsync(); } else { workerReloadDept.RunWorkerAsync(); } } else { MessageBox.Show(result.Detail, "", MessageBoxButton.OK, MessageBoxImage.Error); } }
public wdCardHolderDetail(EType.WindowMode mode, DTO_CardHolder holder) { InitializeComponent(); this.mode = mode; this.holder = holder; }
/// <summary> /// Update card holder information in database /// </summary> /// <param name="cardHolder"></param> /// <returns></returns> public SQLResult UpdateCardHolder(DTO_CardHolder cardHolder) { DataTable dt = new DataTable(); SQLResult result = new SQLResult(false, ""); try { _conn.Open(); SqlCommand command = new SqlCommand(); command.Connection = _conn; command.CommandType = CommandType.StoredProcedure; command.CommandText = "spLCardHolderSave"; command.Parameters.AddWithValue("WorkType", "U"); command.Parameters.AddWithValue("Id", cardHolder.Id); command.Parameters.AddWithValue("Name", cardHolder.Name); command.Parameters.AddWithValue("Gender", (int)cardHolder.Gender); command.Parameters.AddWithValue("DOB", cardHolder.DOB); if (string.IsNullOrEmpty(cardHolder.Address)) { command.Parameters.AddWithValue("Address", DBNull.Value); } else { command.Parameters.AddWithValue("Address", cardHolder.Address); } if (string.IsNullOrEmpty(cardHolder.PhoneNumber)) { command.Parameters.AddWithValue("PhoneNumber", DBNull.Value); } else { command.Parameters.AddWithValue("PhoneNumber", cardHolder.PhoneNumber); } if (string.IsNullOrEmpty(cardHolder.PhoneNumber)) { command.Parameters.AddWithValue("Email", DBNull.Value); } else { command.Parameters.AddWithValue("Email", cardHolder.Email); } if (string.IsNullOrEmpty(cardHolder.PhoneNumber)) { command.Parameters.AddWithValue("Description", DBNull.Value); } else { command.Parameters.AddWithValue("Description", cardHolder.Description); } if (string.IsNullOrEmpty(cardHolder.Account)) { command.Parameters.AddWithValue("UserName", DBNull.Value); } else { command.Parameters.AddWithValue("UserName", cardHolder.Account); } if (string.IsNullOrEmpty(cardHolder.Password)) { command.Parameters.AddWithValue("Password", DBNull.Value); } else { command.Parameters.AddWithValue("Password", cardHolder.Password); } if (string.IsNullOrEmpty(cardHolder.Department.Id)) { command.Parameters.AddWithValue("Department", DBNull.Value); } else { command.Parameters.AddWithValue("Department", cardHolder.Department.Id); } SqlDataAdapter adapter = new SqlDataAdapter(); adapter.SelectCommand = command; adapter.Fill(dt); if (dt.Rows[0]["Result"].ToString() == "OK") { result.Result = true; } result.Detail = dt.Rows[0]["Detail"].ToString(); } catch (Exception ex) { result.Detail = ex.Message; } finally { _conn.Close(); } return(result); }
private void Window_Loaded(object sender, RoutedEventArgs e) { bUS_Right = new BUS_Right(); listRightDetails = new List <ListDetailItem>(); listRightDetails.Clear(); if (mode == DOOR_MODE) { foreach (DTO_Door door in Repository.lstAllDoor) { ListDetailItem item = new ListDetailItem(); item.TextBinding = door.Name; item.Key = door.Id; DTO_Door d = right.Doors.FirstOrDefault(o => o.Id == door.Id); if (d == null) { item.IsChecked = false; } else { item.IsChecked = true; } listRightDetails.Add(item); } lbRightDetail.ItemsSource = listRightDetails; return; } if (mode == SCHEDULE_MODE) { foreach (DTO_Schedule schedule in Repository.lstAllSchedules) { ListDetailItem item = new ListDetailItem(); item.TextBinding = schedule.Name; item.Key = schedule.Id; DTO_Schedule d = right.Schedules.FirstOrDefault(o => o.Id == schedule.Id); if (d == null) { item.IsChecked = false; } else { item.IsChecked = true; } listRightDetails.Add(item); } lbRightDetail.ItemsSource = listRightDetails; return; } if (mode == PERSON_MODE) { foreach (DTO_CardHolder hodler in Repository.lstAllCardHolders) { ListDetailItem item = new ListDetailItem(); item.TextBinding = hodler.Name; item.Key = hodler.Id; DTO_CardHolder d = right.CardHolders.FirstOrDefault(o => o.Id == hodler.Id); if (d == null) { item.IsChecked = false; } else { item.IsChecked = true; } listRightDetails.Add(item); } lbRightDetail.ItemsSource = listRightDetails; return; } }
private void btSave_Click(object sender, RoutedEventArgs e) { if (mode == DOOR_MODE) { List <DTO_Door> oldDoors = right.Doors; foreach (DTO_Door door in oldDoors) { bUS_Right.DeleteDoorInRight(rightId, door.Id); } right.Doors.Clear(); List <DTO_Door> newDoors = new List <DTO_Door>(); foreach (ListDetailItem item in listRightDetails) { if (item.IsChecked) { DTO_Door door = Repository.lstAllDoor.FirstOrDefault(d => d.Id == item.Key); newDoors.Add(door); right.Doors.Add(door); } } foreach (DTO_Door door in newDoors) { bUS_Right.AddDoorToRight(rightId, door.Id); } Repository.lstAllRIght.FirstOrDefault(r => r.Id == rightId).Doors = right.Doors; this.DialogResult = true; this.Hide(); return; } if (mode == SCHEDULE_MODE) { List <DTO_Schedule> oldSchedules = right.Schedules; foreach (DTO_Schedule schedule in oldSchedules) { bUS_Right.DeleteScheduleInRight(rightId, schedule.Id); } right.Schedules.Clear(); List <DTO_Schedule> newSchedules = new List <DTO_Schedule>(); foreach (ListDetailItem item in listRightDetails) { if (item.IsChecked) { DTO_Schedule schedule = Repository.lstAllSchedules.FirstOrDefault(d => d.Id == item.Key); newSchedules.Add(schedule); } } right.Schedules = newSchedules; foreach (DTO_Schedule schedule in newSchedules) { bUS_Right.AddScheduleToRight(rightId, schedule.Id); } Repository.lstAllRIght.FirstOrDefault(r => r.Id == rightId).Schedules = right.Schedules; this.DialogResult = true; this.Hide(); return; } if (mode == PERSON_MODE) { List <DTO_CardHolder> oldPersons = right.CardHolders; foreach (DTO_CardHolder person in oldPersons) { bUS_Right.DeletePersonInRight(rightId, person.Id); } right.CardHolders.Clear(); List <DTO_CardHolder> newPersons = new List <DTO_CardHolder>(); foreach (ListDetailItem item in listRightDetails) { if (item.IsChecked) { DTO_CardHolder person = Repository.lstAllCardHolders.FirstOrDefault(d => d.Id == item.Key); newPersons.Add(person); right.CardHolders.Add(person); } } foreach (DTO_CardHolder person in newPersons) { bUS_Right.AddPersonToRight(rightId, person.Id); } Repository.lstAllRIght.FirstOrDefault(r => r.Id == rightId).CardHolders = right.CardHolders; this.DialogResult = true; this.Hide(); return; } }
private void itemDelete_Click(object sender, RoutedEventArgs e) { //Part 1: Delete department group try { selectedDept = (DTO_Department)tvDepartment.SelectedItem; //User not yet select group if (selectedDept == null) { MessageBox.Show("Hãy lựa chọn đối tượng cần xóa.", "", MessageBoxButton.OK, MessageBoxImage.Warning); return; } else { //Department still have some employee if (selectedDept.Employees != null && selectedDept.Employees.Count > 0) { MessageBox.Show("Cần xóa nhân viên bên trong phòng ban/bộ phận trước.", "", MessageBoxButton.OK, MessageBoxImage.Warning); return; } //Department still have some group if (selectedDept.Groups != null && selectedDept.Groups.Count > 0) { MessageBox.Show("Cần xóa nhóm bên trong phòng ban/bộ phận trước.", "", MessageBoxButton.OK, MessageBoxImage.Warning); return; } //Delete group MessageBoxResult result = MessageBox.Show("Bạn có chắc chắn muốn xóa phòng ban/bộ phận không?", "", MessageBoxButton.YesNo, MessageBoxImage.Question); if (result == MessageBoxResult.Yes) { if (workerDelDept.IsBusy) { workerDelDept.CancelAsync(); } else { workerDelDept.RunWorkerAsync(); } } return; } } catch { } //PART 2: Delete employee in department selectedEmp = (DTO_CardHolder)tvDepartment.SelectedItem; MessageBoxResult result1 = MessageBox.Show("Bạn có chắc chắn muốn xóa nhân viên " + selectedEmp.Name + " không?", "", MessageBoxButton.YesNo, MessageBoxImage.Question); if (result1 == MessageBoxResult.Yes) { if (workerDelEmp.IsBusy) { workerDelEmp.CancelAsync(); } else { workerDelEmp.RunWorkerAsync(); } } }