private void GotoWareHouseWSButton_OnClick(object sender, RoutedEventArgs e) { WareHouseWindow whWindow = new WareHouseWindow(); whWindow.Show(); this.Close(); }
private async Task LoginByCodeAsync(string code) { try { await Task.Run(() => { List <Employee> empList = _unitofwork.EmployeeRepository.Get().ToList(); Employee loginEmp = empList.FirstOrDefault(x => x.DecryptedCode.Equals(code)); if (loginEmp != null) { App.Current.Properties["EmpLogin"] = loginEmp; if (loginEmp.EmpRole == (int)EmployeeRole.Stock) { Dispatcher.Invoke(() => { WareHouseWindow wareHouse = new WareHouseWindow(); wareHouse.Show(); }); } else { try { SalaryNote empSalaryNote = _unitofwork.SalaryNoteRepository.Get(sle => sle.EmpId.Equals(loginEmp.EmpId) && sle.ForMonth.Equals(DateTime.Now.Month) && sle.ForYear.Equals(DateTime.Now.Year)).First(); App.Current.Properties["EmpSN"] = empSalaryNote; WorkingHistory empWorkHistory = new WorkingHistory { ResultSalary = empSalaryNote.SnId, EmpId = empSalaryNote.EmpId }; App.Current.Properties["EmpWH"] = empWorkHistory; } catch (Exception ex) { SalaryNote empSalary = new SalaryNote { EmpId = loginEmp.EmpId, SalaryValue = 0, WorkHour = 0, ForMonth = DateTime.Now.Month, ForYear = DateTime.Now.Year, IsPaid = 0 }; _unitofwork.SalaryNoteRepository.Insert(empSalary); _unitofwork.Save(); WorkingHistory empWorkHistory = new WorkingHistory { ResultSalary = empSalary.SnId, EmpId = empSalary.EmpId }; App.Current.Properties["EmpWH"] = empWorkHistory; App.Current.Properties["EmpSN"] = empSalary; } Dispatcher.Invoke(() => { EmpLoginListData.emploglist.Clear(); EmpLoginListData.emploglist.Add(new EmpLoginList { Emp = loginEmp, EmpSal = App.Current.Properties["EmpSN"] as SalaryNote, EmpWH = App.Current.Properties["EmpWH"] as WorkingHistory, TimePercent = 0 }); EmployeeWorkSpace.MainWindow main = new EmployeeWorkSpace.MainWindow(); main.Show(); }); } } else { MessageBox.Show("incorrect username or password"); return; } Dispatcher.Invoke(() => { this.Close(); }); }); } catch (Exception ex) { MessageBox.Show("Something went wrong: \n" + ex.Message); AppLog.Error(ex); } }