public void LoadUserAccess(int id)
        {
            if (SystemClass.CheckConnection())
            {
                ImusCityHallEntities db = new ImusCityHallEntities();
                userAccessList.Clear();
                db = new ImusCityHallEntities();
                var subModules = db.SubModules.OrderBy(m => m.Name).ToList();
                foreach (var subModule in subModules)
                {
                    bool selectedSubModule = false;
                    if (db.SubModuleUsers.Any(m => m.EmployeeID == id && m.SubModuleID == subModule.SubModuleID))
                    {
                        selectedSubModule = true;
                    }
                    UserAccessModel userAccess = new UserAccessModel()
                    {
                        Name       = subModule.Name,
                        Id         = subModule.SubModuleID,
                        IsSelected = selectedSubModule
                    };
                    userAccessList.Add(userAccess);
                }

                moduleslb.ItemsSource       = userAccessList;
                moduleslb.SelectedValuePath = "Id";
                moduleslb.Items.Refresh();
                Employee employee = db.Employees.Find(id);
                adminchk.IsChecked = employee.IsAdmin == true ? true : false;
            }
            else
            {
                MessageBox.Show(SystemClass.DBConnectionErrorMessage);
            }
        }
        private void savebtn_Click(object sender, RoutedEventArgs e)
        {
            if (SystemClass.CheckConnection())
            {
                if (newpasswordpb.Password != confirmpasswordpb.Password)
                {
                    MessageBox.Show("Password mismatch!");
                }
                else
                {
                    Employee   employee       = db.Employees.Find(App.EmployeeID);
                    AspNetUser asp            = db.AspNetUsers.FirstOrDefault(m => m.UserName == employee.EmployeeNo);
                    var        passwordHasher = new Microsoft.AspNet.Identity.PasswordHasher();
                    asp.PasswordHash = passwordHasher.HashPassword(confirmpasswordpb.Password);
                    db.SaveChanges();
                    MessageBox.Show("Password updated successfully!");

                    var audit = new AuditTrailModel
                    {
                        Activity   = "User changes his/her password.",
                        ModuleName = this.GetType().Name,
                        EmployeeID = App.EmployeeID
                    };

                    SystemClass.InsertLog(audit);
                    this.Close();
                }
            }
            else
            {
                MessageBox.Show(SystemClass.DBConnectionErrorMessage);
            }
        }
        public void LoadQuestion()
        {
            if (SystemClass.CheckConnection())
            {
                using (var db = new ImusCityHallEntities())
                {
                    //int total = db.SecurityQuestionBanks.Count();
                    //decimal toTakeD = (total / 3);
                    //int toTake = (int)toTakeD;
                    var ques = db.SecurityQuestionBanks.ToList();

                    cbSecurityQuestion1.ItemsSource       = ques.OrderBy(m => Guid.NewGuid()).Take(7).ToList();
                    cbSecurityQuestion1.DisplayMemberPath = "Question";
                    cbSecurityQuestion1.SelectedValuePath = "SecurityQuestionID";

                    cbSecurityQuestion2.ItemsSource       = ques.OrderBy(m => Guid.NewGuid()).Take(7).ToList();
                    cbSecurityQuestion2.DisplayMemberPath = "Question";
                    cbSecurityQuestion2.SelectedValuePath = "SecurityQuestionID";

                    cbSecurityQuestion3.ItemsSource       = ques.OrderBy(m => Guid.NewGuid()).Take(7).ToList();
                    cbSecurityQuestion3.DisplayMemberPath = "Question";
                    cbSecurityQuestion3.SelectedValuePath = "SecurityQuestionID";
                }
            }
            else
            {
                MessageBox.Show(SystemClass.DBConnectionErrorMessage);
            }
        }
 public void LoadInitialQuestion()
 {
     if (SystemClass.CheckConnection())
     {
         try
         {
             using (var db = new ImusCityHallEntities())
             {
                 var getques = db.SecurityQuestionUsers.Where(m => m.EmployeeID == App.EmployeeID).OrderBy(m => Guid.NewGuid()).FirstOrDefault();
                 if (getques != null)
                 {
                     txtSecQues.Text = getques.SecurityQuestionBank.Question;
                     QuestionID      = getques.SecurityQuestionID;
                 }
                 else
                 {
                     MessageBox.Show("Question not available.");
                     return;
                 }
             }
         }
         catch (Exception ex)
         {
             MessageBox.Show(ex.ToString());
         }
     }
     else
     {
         MessageBox.Show(SystemClass.DBConnectionErrorMessage);
     }
 }
        private void btnSubmit_Click(object sender, RoutedEventArgs e)
        {
            if (SystemClass.CheckConnection())
            {
                try
                {
                    using (var db = new ImusCityHallEntities())
                    {
                        if (!String.IsNullOrEmpty(txtAnswer.Text))
                        {
                            var getanswer = db.SecurityQuestionUsers.Where(m => m.EmployeeID == App.EmployeeID && m.SecurityQuestionID == QuestionID).FirstOrDefault();

                            if (getanswer != null)
                            {
                                string inputAnswer = txtAnswer.Text;
                                if (inputAnswer.TrimStart().Trim().TrimEnd().ToLower() == getanswer.Answer.TrimStart().Trim().TrimEnd().ToLower())
                                {
                                    ChangePasswordWindow cp = new ChangePasswordWindow();
                                    cp.Show();
                                    var audit = new AuditTrailModel
                                    {
                                        Activity   = "User answer a security question for Forgot Password.",
                                        ModuleName = this.GetType().Name,
                                        EmployeeID = App.EmployeeID
                                    };

                                    SystemClass.InsertLog(audit);
                                    this.Close();
                                }
                                else
                                {
                                    MessageBox.Show("Incorrect answer.");
                                    return;
                                }
                            }
                            else
                            {
                                MessageBox.Show("Question not available.");
                                return;
                            }
                        }
                        else
                        {
                            MessageBox.Show("Please input answer.");
                            return;
                        }
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.ToString());
                }
            }
            else
            {
                MessageBox.Show(SystemClass.DBConnectionErrorMessage);
            }
        }
 private void MetroWindow_Loaded(object sender, RoutedEventArgs e)
 {
     if (SystemClass.CheckConnection())
     {
         LoadEmployee();
     }
     else
     {
         MessageBox.Show(SystemClass.DBConnectionErrorMessage);
     }
 }
 private void employeecb_SelectionChanged(object sender, SelectionChangedEventArgs e)
 {
     if (SystemClass.CheckConnection())
     {
         int employeeId = (int)employeecb.SelectedValue;
         LoadUserAccess(employeeId);
     }
     else
     {
         MessageBox.Show(SystemClass.DBConnectionErrorMessage);
     }
 }
        private void savebtn_Click(object sender, RoutedEventArgs e)
        {
            if (SystemClass.CheckConnection())
            {
                if (employeecb.SelectedValue == null)
                {
                    MessageBox.Show("Please select/load an employee");
                }
                else
                {
                    ImusCityHallEntities db = new ImusCityHallEntities();
                    int employeeId          = (int)employeecb.SelectedValue;
                    foreach (var userAccess in userAccessList.Where(m => m.IsSelected == true))
                    {
                        if (db.SubModuleUsers.Any(m => m.EmployeeID == employeeId && m.SubModuleID == userAccess.Id))
                        {
                        }
                        else
                        {
                            SubModuleUser userSubModule = new SubModuleUser();
                            userSubModule.EmployeeID  = employeeId;
                            userSubModule.SubModuleID = userAccess.Id;
                            db.SubModuleUsers.Add(userSubModule);
                            db.SaveChanges();
                        }
                    }

                    foreach (var userAccess in userAccessList.Where(m => m.IsSelected == false))
                    {
                        if (db.SubModuleUsers.Any(m => m.EmployeeID == employeeId && m.SubModuleID == userAccess.Id))
                        {
                            SubModuleUser userSubModule = db.SubModuleUsers.FirstOrDefault(m => m.EmployeeID == employeeId && m.SubModuleID == userAccess.Id);
                            db.SubModuleUsers.Remove(userSubModule);
                            db.SaveChanges();
                        }
                    }

                    Employee employee = db.Employees.Find(employeeId);
                    employee.IsAdmin = adminchk.IsChecked == true ? true : false;
                    db.SaveChanges();
                    MessageBox.Show("Employee user access updated successfully");
                }
            }
            else
            {
                MessageBox.Show(SystemClass.DBConnectionErrorMessage);
            }
        }
 private void MetroWindow_Loaded(object sender, RoutedEventArgs e)
 {
     if (SystemClass.CheckConnection())
     {
         ImusCityHallEntities db = new ImusCityHallEntities();
         if (db.SystemSettings.Count() >= 1)
         {
             ImusCityGovernmentSystem.Model.SystemSetting systemSetting = db.SystemSettings.FirstOrDefault();
             userstb.Text = systemSetting.NumberOfUser.ToString();
         }
     }
     else
     {
         MessageBox.Show(SystemClass.DBConnectionErrorMessage);
     }
 }
Exemple #10
0
        public void CheckDisbursementVoucher(int id)
        {
            if (SystemClass.CheckConnection())
            {
                ImusCityHallEntities            db     = new ImusCityHallEntities();
                List <DisbursementVoucherModel> DVList = new List <DisbursementVoucherModel>();
                db     = new ImusCityHallEntities();
                DVList = new List <DisbursementVoucherModel>();
                var          disburse    = db.GetDisbursementVoucher(id).ToList();
                CDSSignatory signatories = db.CDSSignatories.FirstOrDefault();

                foreach (var x in disburse)
                {
                    DisbursementVoucherModel dvl = new DisbursementVoucherModel();
                    dvl.Amount              = x.Amount.HasValue ? x.Amount.Value : 0;
                    dvl.Certification       = x.Certification;
                    dvl.CompanyAddress      = x.CompanyAddress;
                    dvl.CompanyName         = x.CompanyName;
                    dvl.DateCreated         = x.DateCreated.Value;
                    dvl.DepartmentCode      = x.DepartmentCode;
                    dvl.Description         = x.Explanation;
                    dvl.DocumentCompleted   = x.DocumentCompleted;
                    dvl.Obligated           = x.Obligated;
                    dvl.ObligationRequestNo = x.ObligationRequestNo;
                    dvl.TIN_EmpNo           = x.TIN_EmpNo;
                    dvl.Unit_Project        = x.Unit_Project;
                    dvl.VoucherNo           = x.VoucherNo;
                    dvl.PaymentName         = x.PaymentType;
                    dvl.Name       = x.FundName;
                    dvl.Signatory  = SystemClass.GetSignatory(signatories.CityAccountant);
                    dvl.Signatory2 = SystemClass.GetSignatory(signatories.CityTreasurer);
                    dvl.Signatory3 = SystemClass.GetSignatory(signatories.CityMayor);
                    DVList.Add(dvl);
                }
                ReportDocument report;
                report = new DisbursementVoucherReport();
                report.SetDataSource(DVList);
                report.SetParameterValue("employee", "Generated By: " + SystemClass.Employee(App.EmployeeID));
                report.SetParameterValue("actingmayor", signatories.UseActingMayor);
                reportviewer.ViewerCore.ReportSource = report;
            }
            else
            {
                MessageBox.Show(SystemClass.DBConnectionErrorMessage);
            }
        }
Exemple #11
0
        public void CheckReport(int id)
        {
            if (SystemClass.CheckConnection())
            {
                ImusCityHallEntities db          = new ImusCityHallEntities();
                CDSSignatory         signatories = db.CDSSignatories.FirstOrDefault();
                CheckModel           check       = new CheckModel();
                ImusCityGovernmentSystem.Model.Check checklist = db.Checks.Find(id);
                check.CheckNo     = checklist.CheckNo;
                check.CheckDate   = checklist.DateCreated.Value;
                check.CompanyName = checklist.Disbursement.Payee == null ? checklist.Disbursement.PayeeName : checklist.Disbursement.Payee.CompanyName;
                CurrencyToWords convert = new CurrencyToWords();
                double          amount  = Convert.ToDouble(checklist.Amount.Value);
                check.AmountInWords    = convert.NumberToWords(amount).ToUpper();
                check.CheckDescription = checklist.CheckDescription;
                check.VoucherNo        = checklist.Disbursement.VoucherNo;
                check.Amount           = checklist.Amount.Value;
                check.Signatory1       = SystemClass.GetSignatory(signatories.CityMayor);
                check.Signatory2       = SystemClass.GetSignatory(signatories.CityTreasurer);
                ReportDocument report;
                switch (bankName)
                {
                case "LB":
                    report = new LBCheckReport();
                    report.SetDataSource(new[] { check });
                    reportviewer.ViewerCore.ReportSource = report;
                    break;

                case "UCPB":
                    report = new UCPBCheckReport();
                    report.SetDataSource(new[] { check });
                    reportviewer.ViewerCore.ReportSource = report;
                    break;

                case "DBP":
                    report = new DBPCheckReport();
                    report.SetDataSource(new[] { check });
                    reportviewer.ViewerCore.ReportSource = report;
                    break;
                }
            }
            else
            {
                MessageBox.Show(SystemClass.DBConnectionErrorMessage);
            }
        }
 private void acceptbtn_Click(object sender, RoutedEventArgs e)
 {
     if (SystemClass.CheckConnection())
     {
         ImusCityHallEntities db = new ImusCityHallEntities();
         if (db.SystemSettings.Count() >= 1)
         {
             int numberUsers = Convert.ToInt32(userstb.Text);
             ImusCityGovernmentSystem.Model.SystemSetting systemSetting = db.SystemSettings.FirstOrDefault();
             systemSetting.NumberOfUser = numberUsers;
             db.SaveChanges();
             MessageBox.Show("System setting updated successfully!");
         }
         else
         {
             if (String.IsNullOrEmpty(userstb.Text))
             {
                 MessageBox.Show("Please input number of users field");
             }
             else
             {
                 int numberUsers = Convert.ToInt32(userstb.Text);
                 ImusCityGovernmentSystem.Model.SystemSetting systemSetting = new SystemSetting
                 {
                     NumberOfUser = numberUsers
                 };
                 db.SystemSettings.Add(systemSetting);
                 db.SaveChanges();
                 MessageBox.Show("System setting updated successfully!");
             }
         }
     }
     else
     {
         MessageBox.Show(SystemClass.DBConnectionErrorMessage);
     }
 }
        private void acceptbtn_Click(object sender, RoutedEventArgs e)
        {
            if (SystemClass.CheckConnection())
            {
                ImusCityHallEntities db = new ImusCityHallEntities();
                var licenseList         = from p in db.LicensingCodes
                                          select new
                {
                    p.LicenseId,
                    p.ExpirationDate,
                    p.SubModule,
                    LicenseKey = p.LicenseKey.Replace("\r\n", string.Empty)
                };


                if (String.IsNullOrEmpty(licensekey.Text))
                {
                    MessageBox.Show("The license key field is empty");
                    return;
                }
                var           licenseCode = licenseList.FirstOrDefault(m => m.LicenseKey == licensekey.Text);
                LicensingCode license     = new LicensingCode()
                {
                    LicenseId      = licenseCode.LicenseId,
                    LicenseKey     = licenseCode.LicenseKey,
                    ExpirationDate = licenseCode.ExpirationDate,
                    SubModule      = licenseCode.SubModule
                };


                if (license != null && license.ExpirationDate > DateTime.Now.Date && license.SubModule.Acronym == subModuleCode && license.LicenseKey == App.LicenseKey)
                {
                    LicensingCode dbLicense = db.LicensingCodes.Find(license.LicenseId);
                    //license.MachineName = Environment.MachineName;
                    //license.UserID = App.EmployeeID;
                    dbLicense.ActivatedDate = DateTime.Now;
                    db.SaveChanges();
                    MessageBox.Show("License key applied");
                    this.Close();
                }
                else if (String.IsNullOrEmpty(licensekey.Text))
                {
                    MessageBox.Show("The license key field is empty");
                }
                else if (license == null)
                {
                    MessageBox.Show("Please enter a valid license key.");
                }
                else if (license.ExpirationDate < DateTime.Now)
                {
                    MessageBox.Show("The license that youve entering is expired!");
                }
                else if (licensekey.Text != App.LicenseKey)
                {
                    MessageBox.Show("Please enter a valid license key.");
                }
                else if (license.SubModule.Acronym != subModuleCode && license != null)
                {
                    MessageBox.Show("The license that you are applying is not meant for the specified module");
                }
                //else if (license.LicenseKey == licensekey.Text && license.UserID == App.EmployeeID)
                //{
                //    MessageBox.Show("This license is associated with another user");
                //}
            }
            else
            {
                MessageBox.Show(SystemClass.DBConnectionErrorMessage);
            }
        }
        private void loginbtn_Click(object sender, RoutedEventArgs e)
        {
            Mouse.OverrideCursor = Cursors.Wait;
            try
            {
                if (String.IsNullOrEmpty(usernametb.Text) || String.IsNullOrEmpty(passwordpb.Password))
                {
                    MessageBox.Show("Please input your sign-in credentials");
                }
                else
                {
                    if (SystemClass.CheckConnection())
                    {
                        using (var db = new ImusCityHallEntities())
                        {
                            var    passwordHasher = new Microsoft.AspNet.Identity.PasswordHasher();
                            string pass           = "";
                            var    asp            = db.AspNetUsers.Where(m => m.UserName == usernametb.Text).FirstOrDefault();

                            if (asp != null)
                            {
                                pass = passwordHasher.VerifyHashedPassword(asp.PasswordHash, passwordpb.Password).ToString();
                            }
                            else
                            {
                                MessageBox.Show("Log-in failed!");
                                Mouse.OverrideCursor = null;
                                return;
                            }

                            if (pass == "Success")
                            {
                                Mouse.OverrideCursor = Cursors.Wait;
                                var emp = db.Employees.FirstOrDefault(m => m.EmployeeNo == usernametb.Text);
                                App.EmployeeID = emp.EmployeeID;

                                if (passwordpb.Password == "imuscitygov")
                                {
                                    Mouse.OverrideCursor = null;
                                    MessageBox.Show("Please change your default password.");
                                    ChangePasswordWindow password = new ChangePasswordWindow();
                                    password.Show();
                                }
                                else if (emp.SecurityQuestionUsers.Count < 3 && emp.EmployeeNo != "123456")
                                {
                                    Mouse.OverrideCursor = null;
                                    MessageBox.Show("Please set-up your security questions.");
                                    SecurityQuestion secquestion = new SecurityQuestion();
                                    secquestion.Show();
                                    //
                                }
                                else
                                {
                                    var audit = new AuditTrailModel
                                    {
                                        Activity   = "Log-in to the system",
                                        ModuleName = this.GetType().Name,
                                        EmployeeID = App.EmployeeID
                                    };

                                    SystemClass.InsertLog(audit);
                                    MainWindow mw = new MainWindow();
                                    mw.Password = passwordpb.Password;
                                    mw.Show();
                                    this.Close();
                                }
                            }
                            else
                            {
                                MessageBox.Show("Log-in failed!");
                                Mouse.OverrideCursor = null;
                                return;
                            }
                        }
                    }
                    else
                    {
                        MessageBox.Show(SystemClass.DBConnectionErrorMessage);
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
            Mouse.OverrideCursor = null;
        }
        private void savebtn_Click(object sender, RoutedEventArgs e)
        {
            if (SystemClass.CheckConnection())
            {
                using (var db = new ImusCityHallEntities())
                {
                    QList = new List <QuestionList>();
                    if (!String.IsNullOrEmpty(cbSecurityQuestion1.Text) && !String.IsNullOrEmpty(txtAnswer1.Text))
                    {
                        QuestionList ql          = new QuestionList();
                        int          QuestionID1 = Convert.ToInt32(cbSecurityQuestion1.SelectedValue);
                        ql.EmployeeID = App.EmployeeID;
                        ql.QuestionID = QuestionID1;
                        ql.Answer     = txtAnswer1.Text;
                        QList.Add(ql);
                    }
                    else
                    {
                        MessageBox.Show("Please answer security questions.");
                        return;
                    }
                    if (!String.IsNullOrEmpty(cbSecurityQuestion2.Text) && !String.IsNullOrEmpty(txtAnswer2.Text))
                    {
                        QuestionList ql          = new QuestionList();
                        int          QuestionID2 = Convert.ToInt32(cbSecurityQuestion2.SelectedValue);
                        ql.EmployeeID = App.EmployeeID;
                        ql.QuestionID = QuestionID2;
                        ql.Answer     = txtAnswer2.Text;
                        QList.Add(ql);
                    }
                    else
                    {
                        MessageBox.Show("Please answer security questions.");
                        return;
                    }
                    if (!String.IsNullOrEmpty(cbSecurityQuestion3.Text) && !String.IsNullOrEmpty(txtAnswer3.Text))
                    {
                        QuestionList ql          = new QuestionList();
                        int          QuestionID3 = Convert.ToInt32(cbSecurityQuestion3.SelectedValue);
                        ql.EmployeeID = App.EmployeeID;
                        ql.QuestionID = QuestionID3;
                        ql.Answer     = txtAnswer3.Text;
                        QList.Add(ql);
                    }
                    else
                    {
                        MessageBox.Show("Please answer security questions.");
                        return;
                    }

                    foreach (var x in QList)
                    {
                        SecurityQuestionUser squ = new SecurityQuestionUser();
                        squ.EmployeeID         = x.EmployeeID;
                        squ.SecurityQuestionID = x.QuestionID;
                        squ.Answer             = x.Answer;
                        db.SecurityQuestionUsers.Add(squ);
                        db.SaveChanges();
                    }

                    MessageBox.Show("Security Questions set-up succesfully!");
                    var audit = new AuditTrailModel
                    {
                        Activity   = "User set-up security questions.",
                        ModuleName = this.GetType().Name,
                        EmployeeID = App.EmployeeID
                    };

                    SystemClass.InsertLog(audit);
                    this.Close();
                }
            }
            else
            {
                MessageBox.Show(SystemClass.DBConnectionErrorMessage);
            }
        }
Exemple #16
0
        public void CheckUserAccess()
        {
            CDS.IsEnabled  = false;
            EMP.IsEnabled  = false;
            CUST.IsEnabled = false;
            DEPT.IsEnabled = false;
            DIV.IsEnabled  = false;
            ID.IsEnabled   = false;
            UA.IsEnabled   = false;
            if (SystemClass.CheckConnection())
            {
                ImusCityHallEntities        db        = new ImusCityHallEntities();
                IEnumerable <SubModuleUser> submodule = db.SubModuleUsers.Where(m => m.EmployeeID == App.EmployeeID);
                if (submodule.Count() >= 1)
                {
                    foreach (var module in submodule)
                    {
                        switch (module.SubModule.Acronym)
                        {
                        case "CDS":
                            CDS.IsEnabled = module.SubModule.Acronym == CDS.Name ? true : false;
                            break;

                        case "EMP":
                            EMP.IsEnabled = module.SubModule.Acronym == EMP.Name ? true : false;
                            break;

                        case "CUST":
                            CUST.IsEnabled = module.SubModule.Acronym == CUST.Name ? true : false;
                            break;

                        case "DEPT":
                            DEPT.IsEnabled = module.SubModule.Acronym == DEPT.Name ? true : false;
                            break;

                        case "DIV":
                            DIV.IsEnabled = module.SubModule.Acronym == DIV.Name ? true : false;
                            break;

                        case "ID":
                            ID.IsEnabled = module.SubModule.Acronym == ID.Name ? true : false;
                            break;

                        case "UA":
                            UA.IsEnabled = module.SubModule.Acronym == UA.Name ? true : false;
                            break;
                        }
                    }
                }
                else
                {
                    modules.IsEnabled = false;
                }

                Employee   superAdmin = db.Employees.Find(App.EmployeeID);
                AspNetUser user       = db.AspNetUsers.FirstOrDefault(m => m.UserName == superAdmin.EmployeeNo);

                if (user.AspNetUserRoles.FirstOrDefault().RoleId == "1")
                {
                    SS.Visibility = Visibility.Visible;
                }
            }
            else
            {
                MessageBox.Show(SystemClass.DBConnectionErrorMessage);
            }
        }