// CREATE: Admin/Account public ActionResult Create(AccountInfoVM accountInfoVM) { try { string password = CommonBox.StringSecurity.SHA256Encrypt(accountInfoVM.Password); var account = new Account() { AccountName = accountInfoVM.AccountName, Password = password, RoleID = 1, CreatedDate = System.DateTime.Now, ModifiedDate = System.DateTime.Now, IsActive = true }; db.Accounts.Add(account); db.SaveChanges(); var siteOwner = new SiteOwner() { SiteOwnerName = accountInfoVM.SiteOwnerName, SiteOwnerAddress = accountInfoVM.SiteOwnerAddress, SiteOwnerEmail = accountInfoVM.SiteOwnerEmail, SiteOwnerPhoneNumber = accountInfoVM.SiteOwnerPhoneNumber, GenderID = accountInfoVM.GenderID, AccountID = account.AccountID }; db.SiteOwners.Add(siteOwner); db.SaveChanges(); var siteowners = db.SiteOwners.Include(m => m.Account.Role).Include(m => m.Gender).Where(m => m.Account.IsActive).OrderByDescending(m => m.Account.ModifiedDate); ViewBag.GenderID = new SelectList(db.Genders, "GenderID", "GenderName"); return(PartialView("_IndexAccountPage", siteowners.ToList())); } catch { ModelState.AddModelError("", "Abnormal protection mechanism in the system! "); Session[SessionBox.SITEOWNER_SESSION] = null; return(View("Login")); } }
public ActionResult Edit(AccountInfoVM accountInfoVM) { using (DbContextTransaction transaction = db.Database.BeginTransaction()) { try { var siteownerID = accountInfoVM.SiteOwnerID; var accountID = db.SiteOwners.Where(m => m.SiteOwnerID == siteownerID).Select(m => m.AccountID).SingleOrDefault(); var createdDate = db.SiteOwners.Where(m => m.SiteOwnerID == siteownerID).Select(m => m.Account.CreatedDate).SingleOrDefault(); if (accountInfoVM.Password != db.Accounts.Where(m => m.AccountID == accountID).Select(m => m.Password).FirstOrDefault()) { accountInfoVM.Password = CommonBox.StringSecurity.SHA256Encrypt(accountInfoVM.Password); } var siteowner = new SiteOwner() { SiteOwnerID = accountInfoVM.SiteOwnerID, GenderID = accountInfoVM.GenderID, SiteOwnerAddress = accountInfoVM.SiteOwnerAddress, SiteOwnerEmail = accountInfoVM.SiteOwnerEmail, SiteOwnerName = accountInfoVM.SiteOwnerName, SiteOwnerPhoneNumber = accountInfoVM.SiteOwnerPhoneNumber, AccountID = accountID }; db.Entry(siteowner).State = EntityState.Modified; var account = new Account() { AccountID = accountID, AccountName = accountInfoVM.AccountName, CreatedDate = createdDate, IsActive = true, Password = accountInfoVM.Password, RoleID = 1, ModifiedDate = System.DateTime.Now }; db.Entry(account).State = EntityState.Modified; db.SaveChanges(); transaction.Commit(); var siteowners = db.SiteOwners.Include(m => m.Account.Role).Include(m => m.Gender).Where(m => m.Account.IsActive).OrderByDescending(m => m.Account.ModifiedDate); ViewBag.GenderID = new SelectList(db.Genders, "genderID", "genderName"); return(PartialView("_IndexAccountPage", siteowners.ToList())); } catch { transaction.Rollback(); ModelState.AddModelError("", "Abnormal protection mechanism in the system!"); Session[SessionBox.SITEOWNER_SESSION] = null; return(View("Login")); } } }
// EDIT: Admin/Account public ActionResult ShowEdit(int siteownerID) { var siteowner = db.SiteOwners.Include(m => m.Account).Where(m => m.SiteOwnerID == siteownerID).SingleOrDefault(); var accountInfoVM = new AccountInfoVM() { AccountName = siteowner.Account.AccountName, GenderID = siteowner.GenderID, SiteOwnerAddress = siteowner.SiteOwnerAddress, Password = siteowner.Account.Password, SiteOwnerEmail = siteowner.SiteOwnerEmail, SiteOwnerID = siteowner.SiteOwnerID, SiteOwnerName = siteowner.SiteOwnerName, SiteOwnerPhoneNumber = siteowner.SiteOwnerPhoneNumber }; ViewBag.GenderID = new SelectList(db.Genders, "genderID", "genderName", siteowner.GenderID); return(PartialView("_EditAccountPage", accountInfoVM)); }
// GET: Admin/Account public ActionResult ShowDetail(int siteownerID) { var siteowner = db.SiteOwners.Include(m => m.Account).Where(m => m.SiteOwnerID == siteownerID).SingleOrDefault(); var accountInfoVM = new AccountInfoVM() { AccountName = siteowner.Account.AccountName, GenderID = siteowner.GenderID, SiteOwnerAddress = siteowner.SiteOwnerAddress, Password = siteowner.Account.Password, SiteOwnerEmail = siteowner.SiteOwnerEmail, SiteOwnerID = siteowner.SiteOwnerID, SiteOwnerName = siteowner.SiteOwnerName, SiteOwnerPhoneNumber = siteowner.SiteOwnerPhoneNumber }; ViewBag.Gender = siteowner.Gender.GenderName; ViewBag.CreatedDate = siteowner.Account.CreatedDate.ToString("dd/MM/yyyy"); ViewBag.ModifiredDate = siteowner.Account.ModifiedDate.ToString("dd/MM/yyyy"); ViewBag.Role = siteowner.Account.Role.RoleName; return(PartialView("_DetailAccountPage", accountInfoVM)); }