// GET: Accounts public ActionResult List(int page = 1) { ProjectAccountViewModel viewModel = new ProjectAccountViewModel(); try { viewModel.PagingInfo = new PagingInfo { TotalRecordsCount = accountsService.TotalRecordsCount(), RecordsPerPage = RecordsPerPage, CurentPageNo = page }; if (viewModel.PagingInfo.TotalRecordsCount > 0) { viewModel.ProjectAccounts = GetAllAccounts(page); } else { DisplayWarningMessage("There are no Accounts to display"); } } catch (Exception exp) { DisplayLoadErrorMessage(exp); } return(View(viewModel)); }
public bool Save(ProjectAccountViewModel viewModel) { var isSucceed = false; if (viewModel.Account == null) { throw new Exception("Account对象为空,无法保存"); } var accountModel = viewModel.Account; if (viewModel.Id > 0) // update { var productAccount = ProjectAccountRepository.Entities.FirstOrDefault(o => o.Id == viewModel.Id); if (productAccount == null) { throw new Exception($"不存在Id为:{viewModel.Id}的ProjectAccount"); } var oldEntity = AccountRepository.Entities.FirstOrDefault(o => o.Id == productAccount.AccountID); var entity = AutoMapper.Mapper.Map <AccountViewModel, Account>(accountModel); entity.CreatedTime = oldEntity.CreatedTime; entity.CouponID = oldEntity.CouponID; entity.Id = oldEntity.Id; isSucceed = AccountRepository.Update(entity) > 0; } else // add { var entity = AutoMapper.Mapper.Map <AccountViewModel, Account>(accountModel); entity.CreatedTime = DateTime.Now; if (entity.CouponID <= 0) { entity.CouponID = null; } try { AccountRepository.UnitOfWork.TransactionEnabled = true; AccountRepository.Insert(entity); var projectAccount = new ProjectAccount { ProjectID = viewModel.ProjectID, AccountID = entity.Id, }; ProjectAccountRepository.Insert(projectAccount); AccountRepository.UnitOfWork.SaveChanges(); AccountRepository.UnitOfWork.TransactionEnabled = false; isSucceed = true; } catch (Exception e) { throw e; } } ClearCache(); return(isSucceed); }
public bool Save(ProjectAccountViewModel model) { return(ProjectAccountService.Save(model)); }