// GET /expenses/getexpense/1 public ActionResult GetExpense(int id) { var expense = _context.Expenses.Include(e => e.ExpenseType).FirstOrDefault(e => e.Id == id); var expenseTypes = _context.ExpenseTypes.ToList(); var expenseForm = _context.ExpenseForms.FirstOrDefault(e => e.Id == expense.ExpenseFormId); if (expense == null) { return(Content("Expense is null")); } ViewBag.Title = "Expense - " + expense.ExpenseType.Name; var viewModel = new ExpenseViewModel { Id = expense.Id, ExpenseTypes = expenseTypes, ExpenseTypeId = expense.ExpenseTypeId, ExpenseType = expense.ExpenseType, ExpenseForm = expenseForm, ExpenseFormId = expense.ExpenseFormId, Date = expense.Date, Cost = expense.Cost }; return(View("ExpenseForm", viewModel)); }
public ActionResult LoadEditExpensePartial(int id, int expenseType) { var expense = _context.Expenses.Include(e => e.ExpenseType).FirstOrDefault(e => e.Id == id); if (expenseType == 1) { var mileageViewModel = new MileageFormViewModel(); return(PartialView("_MileageForm", mileageViewModel)); } else { var expenseViewModel = new ExpenseViewModel { Date = expense.Date.Value, DateTime = expense.DateTime, ExpenseTypeId = expense.ExpenseTypeId, ExpenseFormId = expense.ExpenseFormId, Cost = expense.Cost, Description = expense.Description, Id = expense.Id, ExpenseTypes = _context.ExpenseTypes.ToList() }; return(PartialView("_OtherExpenseForm", expenseViewModel)); } }
public ActionResult List() { List <ExpenseViewModel> expenseList = new List <ExpenseViewModel>(); string cmdText = "Select * from TblExpense"; SqlCommand sqlcommand = new SqlCommand(cmdText, sqlconnection); SqlDataAdapter sqlDataAdapter = new SqlDataAdapter(sqlcommand); DataTable dataTable = new DataTable(); sqlconnection.Open(); sqlDataAdapter.Fill(dataTable); sqlconnection.Close(); foreach (DataRow dataRow in dataTable.Rows) { ExpenseViewModel expense = new ExpenseViewModel(); expense.Id = Convert.ToInt32(dataRow["Id"]); expense.Name = dataRow["Name"].ToString(); expense.Amount = Convert.ToDecimal(dataRow["Amount"]); expense.Description = dataRow["Description"].ToString(); expense.ExpenseDate = Convert.ToDateTime(dataRow["ExpenseDate"]); expenseList.Add(expense); } return(View(expenseList)); }
public async Task <IActionResult> Create([FromBody] ExpenseViewModel expenseVm) { try { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var user = userService.GetUser(expenseVm.UserId); if (user == null) { return(BadRequest("user is not recognized")); } var amountValidationError = ValidateExpenseAmount(expenseVm.Amount); if (amountValidationError.Length > 0) { return(BadRequest(amountValidationError)); } var expenseRecord = await expenseService.SaveExpense(expenseVm); if (expenseRecord == null) { return(NoContent()); } return(Created($"expense/{expenseRecord.ExpenseId}", expenseRecord)); } catch (Exception exception) { return(StatusCode((int)HttpStatusCode.InternalServerError, exception)); } }
public async Task <IActionResult> Edit(int?id) { ExpenseViewModel model = new ExpenseViewModel { ExpensesType = _combosHelper.GetComboExpenses() }; if (id == null) { return(NotFound()); } ExpenseEntity expense = await _dataContext.Expenses .Include(et => et.ExpenseType) .FirstOrDefaultAsync(e => e.Id == id); model.Id = expense.Id; model.Details = expense.Details; model.PicturePath = expense.PicturePath; model.Value = expense.Value; model.ExpenseId = expense.ExpenseType.Id; model.LogoPath = expense.ExpenseType.LogoPath; if (model == null) { return(NotFound()); } return(View(model)); }
public async Task <Expense> SaveExpense(ExpenseViewModel expenseVm) { try { if (expenseVm == null) { throw new ArgumentException($"expense cannot be null"); } var expenseRecordExist = await expenseRepository.ExpenseExists( expenseVm.Title, expenseVm.ExpenseDate.HasValue? expenseVm.ExpenseDate.Value : DateTime.Now); if (expenseRecordExist) { return(null); } var expense = BuildExpenseRecordFromModel(expenseVm); expense.Amount = !expenseVm.Amount.Trim().EndsWith("EUR", StringComparison.InvariantCultureIgnoreCase) ? double.Parse(expenseVm.Amount) : await SetAmount(expenseVm.Amount); return(await expenseRepository.SaveExpense(expense)); } catch (Exception) { throw; } }
//test //List<Expense> expenses; public ExpensePage() { InitializeComponent(); BindingContext = viewModel = new ExpenseViewModel(); //expenses = new List<Expense>(); }
public ActionResult SaveExpense(int id, string userId) { // userId ya da id parametreleri yok kontrolü nasıl yapmalı?** //Control for authorization if (Convert.ToInt32(Session["UserRoleId"]) == (int)UserRoleEnum.Employee && Convert.ToInt32(Session["UserId"]) == Int32.Parse(userId)) { //To avoid editing an expense that was sent for approval int?currentStatusId = ExpenseActionHandlers.GetCurrentExpenseStatus(id).LastExpenseActionId; if ((currentStatusId == null && id == (int)StatusEnum.NotCreated) || currentStatusId == (int)StatusEnum.Ongoing || currentStatusId == (int)StatusEnum.Rejected) { var viewModel = new ExpenseViewModel { ID = id, UserId = Int32.Parse(userId) }; return(View(viewModel)); } return(RedirectToAction("Index", "Employee", new { id = Int32.Parse(userId) })); } return(RedirectToAction("Login", "Home")); }
// GET: Expenses public ActionResult Index() { var expenseVm = new ExpenseViewModel(); expenseVm.ListOfExpenses = _expenseRepository.GetWhereWithIncludes(e => e.Id > 0, x => x.BankAccount, x => x.SubCategory, x => x.Category).ToList(); return(View(expenseVm)); }
public async Task <IActionResult> Add([FromBody] ExpenseViewModel expenseViewModel) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } Expense newExpense = new Expense() { Sum = expenseViewModel.Sum, Note = expenseViewModel.Note, CategoryId = expenseViewModel.CategoryId, Date = expenseViewModel.Date, //TODO изменить userId UserId = "userid123123" }; if (await _repository.AddAsync(newExpense)) { return(StatusCode(201)); } else { return(StatusCode(500)); } }
/// <summary> /// Get Expense by id /// </summary> /// <param name="id">Expense id</param> /// <returns>Expense json view model</returns> public IHttpActionResult Get(int id) { try { // get log.Debug("_expenseService.GetExpense - expenseId: " + id + " "); var expense = new ExpenseViewModel(_expenseService.GetExpense(id)); log.Debug("_expenseService.GetExpense - " + ExpenseViewModel.FormatExpenseViewModel(expense)); log.Debug("result: 'success'"); //return Json(expense, JsonRequestBehavior.AllowGet); //return Content(JsonConvert.SerializeObject(expense), "application/json"); //return expense; //return JsonConvert.SerializeObject(expense); return(Ok(expense)); } catch (Exception e) { // error log.Error(e.ToString()); throw; } }
public ActionResult Edit(ExpenseViewModel CVM) { ExpenseClient client = new ExpenseClient(); client.Edit(CVM.Expense); return(RedirectToAction("Index")); }
public ActionResult Entry(ExpenseViewModel expense) { ExpenseModel data = new ExpenseModel(); #region Income Model data maping data.Amount = expense.Amount; data.BankId = expense.BankId; data.Date = expense.Date; data.Particular = expense.Particular; data.ChequeNo = expense.ChequeNo; if (expense.isCash == 1) { data.Cash = true; } else { data.Cheque = true; } #endregion bool isSaved = ExpenseManager.SaveExpense(data); if (isSaved) { ViewBag.Message = "Expense Saved"; } ViewBag.BankList = BankManager.LoadBank(); return(View()); }
public IActionResult AddExpense(int id) { ExpenseViewModel obj; if (id > 0) { Expense objuser = _context.Expenses.Where(m => m.ExpenseId == id).SingleOrDefault(); if (objuser != null) { obj = new ExpenseViewModel { ExpenseId = objuser.ExpenseId, UserId = objuser.UserId, Description = objuser.Description }; obj.ListUsers = _context.Users.Select(o => new SelectListItem { Value = o.UserId.ToString(), Text = o.UserName }).ToList(); return(View(obj)); } } obj = new ExpenseViewModel(); obj.ListUsers = _context.Users.Select(o => new SelectListItem { Value = o.UserId.ToString(), Text = o.UserName }).ToList(); return(View(obj)); }
public IActionResult EditExpense([FromBody] ExpenseViewModel viewModel) { var validation = ValidateData(viewModel); if (!string.IsNullOrWhiteSpace(validation)) { return(BadRequest(validation)); } var expense = FetchExpense(viewModel.Id); if (expense == null) { TempData["Error"] = "Something went wrong."; return(View("ExpenseForm", viewModel)); } TempData["Success"] = "Sėkmingai atnaujinta išlaida!"; UpdateExpense(expense, viewModel); var expenses = SelectUsersExpenses(); return(View("ExpenseList", new ExpenseListViewModel { Expenses = expenses })); }
public async Task <IActionResult> Add([FromBody] ExpenseViewModel expenseViewModel) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var userId = _userManager.GetUserId(User); if (userId == null) { return(StatusCode(401)); } Expense newExpense = new Expense() { Sum = expenseViewModel.Sum, Note = expenseViewModel.Note, CategoryId = expenseViewModel.CategoryId, Date = expenseViewModel.Date, UserId = userId }; if (await _repository.AddAsync(newExpense)) { return(StatusCode(201)); } else { return(StatusCode(500)); } }
public IHttpActionResult GetExpenseById(int ExpenseId) { try { ExpenseViewModel _ExpenseModel = db.EXPENSEs.Where(C => C.Id == ExpenseId).Select(Ex => new ExpenseViewModel { Id = Ex.Id, REFERENCEno = Ex.REFERENCEno, ACCOUNT_ID = Ex.ACCOUNT_ID, VENDOR_ID = Ex.VENDOR_ID, notes = Ex.notes, Vat21 = Ex.Vat21, Vat6 = Ex.Vat6, SUBTOTAL = Ex.SUBTOTAL, VAT_AMOUNT = Ex.VAT_AMOUNT, GRAND_TOTAL = Ex.GRAND_TOTAL, user_id = Ex.user_id, comapny_id = Ex.comapny_id, AddedDate = Ex.AddedDate, }).FirstOrDefault(); return(Ok(_ExpenseModel)); } catch (Exception) { throw; } }
public void NewExpense() { var person1 = new Person { ChangeSetN = 1, DisplayName = "Bobby", PersonId = 1, RowId = Guid.NewGuid() }; var person2 = new Person { ChangeSetN = 1, DisplayName = "Sophie", PersonId = 2, RowId = Guid.NewGuid() }; var person3 = new Person { ChangeSetN = 1, DisplayName = "Glenn", PersonId = 3, RowId = Guid.NewGuid() }; var viewModel = new ExpenseViewModel { Sender = person1, RecordDate = new DateTime(2010, 1, 3, 19, 25, 0), Amount = 150, DisplayName = "Expense Uno" }; viewModel.Receivers.Add(person2); viewModel.Receivers.Add(person3); viewModel.SaveToModel(); var model = viewModel.Model; Assert.IsNotNull(model); Assert.AreEqual(person1, model.Sender); Assert.AreEqual(2, model.Receivers.Count); Assert.IsTrue(model.Receivers.Contains(person2)); Assert.IsTrue(model.Receivers.Contains(person3)); Assert.AreEqual(150, model.Amount); Assert.AreEqual("Expense Uno", model.DisplayName); Assert.AreEqual(new DateTime(2010, 1, 3, 19, 25, 0), model.RecordDate); Assert.AreEqual(default(int), model.ChangeSetN); Assert.AreNotEqual(default(Guid), model.RowId); Assert.AreEqual(default(int), model.ExpenseId); }
private ExpenseDTO Create(ExpenseViewModel viewModel) { try { log.Debug(ExpenseViewModel.FormatExpenseViewModel(viewModel)); ExpenseDTO expense = new ExpenseDTO(); // copy values viewModel.UpdateDTO(expense, null); //RequestContext.Principal.Identity.GetUserId()); // audit expense.CreateBy = null; //RequestContext.Principal.Identity.GetUserId(); expense.CreateOn = DateTime.UtcNow; // add log.Debug("_expenseService.AddExpense - " + ExpenseDTO.FormatExpenseDTO(expense)); int id = _expenseService.AddExpense(expense); expense.ExpenseId = id; log.Debug("result: 'success', id: " + id); return(expense); } catch (Exception e) { // error log.Error(e.ToString()); throw; } }
public void SetUp() { ServiceContainer.Register <ISynchronizeInvoke> (() => new Mocks.MockSynchronizeInvoke()); ServiceContainer.Register <IAssignmentService> (() => new Mocks.MockAssignmentService()); viewModel = new ExpenseViewModel(); }
public ActionResult Index(string sort, DateTime?dateFrom, DateTime?dateTo, int?categoryId) { if (dateFrom != null && dateTo != null) { ViewBag.DateFrom = dateFrom; ViewBag.DateTo = dateTo; } ViewBag.Sort = "desc"; ViewBag.Sort = !String.IsNullOrEmpty(sort) && sort == "asc" ? "desc" : "asc"; ViewBag.ExpenseCategories = ExpenseRepository.Categories; IEnumerable <Expenses> expenses = expenseRepository.GetAllExpensesByUser(User.Identity.GetUserId(), dateFrom, dateTo, categoryId, sort); List <ExpenseViewModel> expenseViewModel = new List <ExpenseViewModel>(); foreach (var item in expenses) { var viewModelItem = new ExpenseViewModel { Id = item.Id, Category = expenseRepository.GetCategoryNameById(item.CategoryId), Date = item.Date, Name = item.Name, Value = item.Value }; expenseViewModel.Add(viewModelItem); } return(View(expenseViewModel)); }
public ActionResult AddMyExpense(ExpenseViewModel expenseViewModel) { if (ModelState.IsValid) { ExpenseMembers expenseMembers = new ExpenseMembers { Description = expenseViewModel.Description, BudgetCategory = expenseViewModel.SelectedBudget, SelectedGroupId = expenseViewModel.SelectedGroupId.ToList(), SpentAmount = expenseViewModel.SpentAmount.Value, SpentBy = expenseViewModel.SpentBy, SpentOn = expenseViewModel.FormattedSpentDate, IncludedUsers = expenseViewModel.IncludedUsers != null?expenseViewModel.IncludedUsers.ToList() : new List <string>(), ExcludedUsers = expenseViewModel.ExcludedUsers != null?expenseViewModel.ExcludedUsers.ToList() : new List <string>(), CreatedBy = SessionUserId }; expenseRepository.AddExpense(expenseMembers); return(RedirectToAction("AddMyExpense")); } else { DataSet expenseDetailsDataSet = expenseRepository.GetExpenseLookUp(); expenseViewModel.Users = expenseDetailsDataSet.Tables[0].LoadLookUps <string, int>(); expenseViewModel.UserGroups = expenseDetailsDataSet.Tables[1].LoadLookUps <string, int>(); expenseViewModel.BudgetCategories = expenseDetailsDataSet.Tables[2].LoadLookUps <string, int>(); expenseViewModel.SpentByUsers = expenseDetailsDataSet.Tables[0].LoadLookUps <string, string>(SessionUserId); ModelState.AddModelError("", "Error saving your expense."); return(View("AddMyExpense", expenseViewModel)); } }
public CommandBarPage() { this.InitializeComponent(); this.expenses = new ExpenseViewModel(); //NavigationCacheMode = NavigationCacheMode.Required; }
public async Task <IActionResult> Create( [Bind("BuildingId,PropertyId,Expense")] ExpenseViewModel expenseModel) { if (ModelState.IsValid) { await expensesService.AddAsync( new PropertyExpense() { Building = new Building() { Id = expenseModel.BuildingId }, Expense = new Expense() { Name = expenseModel.Expense, CreationDate = DateTime.Now }, Property = new Property() { Id = expenseModel.PropertyId }, }); return(RedirectToAction("Index")); } var allBuildings = buildingService.GetAllBuildings(); ViewBag.AllBuildings = allBuildings.Select( b => new IdNameViewModel() { Id = b.Id, Name = $"{b.City} {b.Street} {b.Number}" }); return(View(expenseModel)); }
public ActionResult Expense(ExpenseViewModel model) { string result = "no"; //Guid instanceGuid = WorkFlowHelper.Run(new Expense(), new Dictionary<string, object>() //{ // {"R2",model.Reason}, // {"M2",model.Money} //}); WFInstance instance = new WFInstance() { InstanceTitle = "报销--" + model.ExpenseTitle, Details = string.Format("事由:{0},金额:{1}元。", model.Reason, model.Money), InstanceGuid = "", InstanceState = (short)InstanceState.Approving, Remark = model.Remark, SubBy = UserLogin.UserId, SubTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") }; instance.WFStep.Add(new WFStep() { NextId = model.NextId, SubBy = UserLogin.UserId, SubTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") }); if (WFInstanceBll.Add(instance)) { result = "ok"; } return(Content(result)); }
public CommonResponseViewModel UpdateExpense(ExpenseViewModel expenseVM) { var responseVM = new CommonResponseViewModel(); try { bool isDuplicate = CheckIsDuplicate(expenseVM); if (isDuplicate) { responseVM.message = "Expense Name already exists"; return(responseVM); } using (_dbContext = new AccountdbContext()) { var expenseDBModel = _dbContext.Expenses.Where(e => e.ExpenseId.Equals(expenseVM.id)).FirstOrDefault(); if (expenseDBModel != null) { ConstructExpenseDBModel(expenseVM, ref expenseDBModel, true); _dbContext.Update(expenseDBModel); _dbContext.SaveChanges(); responseVM.isSuccess = true; } } } catch (Exception ex) { throw ex; } return(responseVM); }
public async Task <IActionResult> Update([FromBody] ExpenseViewModel expenseViewModel, int id) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (await _repository.GetByIdAsync(id) == null) { return(NotFound()); } Expense newExpense = new Expense() { Id = id, Sum = expenseViewModel.Sum, Note = expenseViewModel.Note, CategoryId = expenseViewModel.CategoryId, Date = expenseViewModel.Date, //TODO изменить userId UserId = "userid123123" }; if (await _repository.UpdateAsync(newExpense)) { return(Ok()); } else { return(StatusCode(500)); } }
public CommonResponseViewModel AddExpense(ExpenseViewModel expenseVM) { var responseVM = new CommonResponseViewModel(); try { var expenseDBModel = new EfDbContext.Expenses(); ConstructExpenseDBModel(expenseVM, ref expenseDBModel); bool isDuplicate = CheckIsDuplicate(expenseVM); if (isDuplicate) { responseVM.message = "Expense Name already exists"; return(responseVM); } using (_dbContext = new AccountdbContext()) { _dbContext.Expenses.Add(expenseDBModel); _dbContext.SaveChanges(); responseVM.isSuccess = true; responseVM.recordId = expenseDBModel.ExpenseId; } } catch (Exception ex) { throw ex; } return(responseVM); }
public AddExpenseFlyoutPanel() { this.InitializeComponent(); DataContext = expenseViewModel = ServiceContainer.Resolve <ExpenseViewModel> (); }
public void ExpenseService_ShouldCreateExpenseOnce_WhenCraetePostIsCalled() { // Arrange var expenseController = new ExpenseController(expenseServiceMock.Object, mappingServiceMock.Object, householdServiceMock.Object, webHelperMock.Object); var model = new ExpenseViewModel() { Name = "_", AssignedUser = "******", Category = new Guid().ToString(), ExpectedCost = 1M, Comment = "_" }; // Act expenseController.Create(model); // Assert this.expenseServiceMock.Verify(x => x.CreateExpense( It.IsAny <string>(), It.IsAny <string>(), It.IsAny <Guid>(), It.IsAny <Guid>(), It.IsAny <decimal>(), It.IsAny <DateTime>(), It.IsAny <string>(), It.IsAny <string>()), Times.Once); }
public IActionResult AddPost(ExpenseViewModel expenseViewModel) { var expensesList = _expense.GetExpenses(); ViewBag.expenses = expensesList; ViewBag.AccountTreeId = new SelectList(_Acctree.GetAccountTrees(), "Id", "DescriptionAr"); if (expenseViewModel.AccountTreeId == null) { ModelState.AddModelError("", "الرجاء تحدد رقم الحساب في الشجرة"); } if (expenseViewModel.Id == 0) { ModelState.Remove("Id"); ModelState.Remove("AccountTreeId"); if (ModelState.IsValid) { var expense = _mapper.Map <Expense>(expenseViewModel); _expense.AddExpense(expense); _toastNotification.AddSuccessToastMessage("تم أضافةالمصروف بنجاح"); return(RedirectToAction(nameof(Index))); } return(View(nameof(Index), expenseViewModel)); } else { if (ModelState.IsValid) { var expensedetail = _mapper.Map <Expense>(expenseViewModel); _expense.UpdateExpense(expenseViewModel.Id, expensedetail); _toastNotification.AddSuccessToastMessage("تم تعديل البنك بنجاح"); return(RedirectToAction(nameof(Index))); } return(View(nameof(Index), expenseViewModel)); } }
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e) { base.OnNavigatedTo(e); var key = int.Parse(NavigationContext.QueryString["id"]); this.ViewModel = new ExpenseViewModel { Model = (Expense)Repository.Instance[key], KnownPeople = Repository.Instance.All.Select(x => x.Value).OfType<Person>().ToList() }; this.ViewModel.LoadFromModel(); }
public void EditExpense() { var person1 = new Person { ChangeSetN = 1, DisplayName = "Bobby", PersonId = 1, RowId = Guid.NewGuid() }; var person2 = new Person { ChangeSetN = 1, DisplayName = "Sophie", PersonId = 2, RowId = Guid.NewGuid() }; var person3 = new Person { ChangeSetN = 1, DisplayName = "Glenn", PersonId = 3, RowId = Guid.NewGuid() }; var trip = new Trip { ChangeSetN = 1, DisplayName = "Paris 2011", RowId = Guid.NewGuid(), TripId = 1 }; var expense = new Expense { Amount = 100, ChangeSetN = 1, DisplayName = "Beers", ExpenseId = 1, Sender = person1, Receivers = new List<Person> { person1, person2 }, RecordDate = new DateTime(2011, 01, 02, 15, 30, 00), RowId = Guid.NewGuid(), Trip = trip }; var oldExpenseRowId = expense.RowId; var viewModel = new ExpenseViewModel { Model = expense }; viewModel.LoadFromModel(); // Switch the payer from person1 to person3 (and also receiver) viewModel.Sender = person3; viewModel.Receivers.Remove(person1); viewModel.Receivers.Add(person3); viewModel.SaveToModel(); Assert.AreEqual(100, expense.Amount); Assert.AreEqual(1, expense.ExpenseId); Assert.AreEqual(expense.Sender, person3); Assert.AreEqual(2, expense.Receivers.Count); Assert.IsTrue(expense.Receivers.Contains(person2)); Assert.IsTrue(expense.Receivers.Contains(person3)); Assert.AreEqual(new DateTime(2011, 01, 02, 15, 30, 00), expense.RecordDate); Assert.AreNotEqual(oldExpenseRowId, expense.RowId); Assert.AreEqual(expense.Trip, trip); }