public ActionResult LimitMgmt(Guid id) { using (var fact = Wcf <UserAccountService>()) { var channel = fact.CreateChannel(); TB_UserInfo userInfo = channel.QuerySingle(new TB_UserInfoQueryObject { QueryCondition = t => t.UserUid == id }).Cast <TB_UserInfo>(); TB_UserAuthenCodes userAuthenCodes = channel.QuerySingle(new TB_UserAuthenCodesQueryObject { QueryCondition = t => t.UserUid == id }).Cast <TB_UserAuthenCodes>(); UserViewModel userViewModel = new UserViewModel(); userViewModel.UserUid = id; userViewModel.LoginId = userInfo?.LoginId; userViewModel.Name = userInfo?.NickName; userViewModel.LimitCode = userAuthenCodes?.UserLimitCodes; userViewModel.DisplayCode = userAuthenCodes?.UserDisplayCodes; LimitViewModel limitViewModel = new LimitViewModel(); limitViewModel.UserViewModel = userViewModel; limitViewModel.LimitCodeList = channel.QueryAll(new TB_LimitCodeQueryObject()).Cast <List <TB_LimitCode> >(); limitViewModel.DisplayCodeList = channel.QueryAll(new TB_DisplayCodeQueryObject()).Cast <List <TB_DisplayCode> >(); return(View(limitViewModel)); } }
public (int, double) StoreLimit(LimitViewModel viewModel) { Limit limit; if (viewModel.Id.HasValue && viewModel.Id != 0) { limit = repository.Limits.FirstOrDefault(x => x.Id == viewModel.Id); } else { limit = new Limit(); repository.Add(limit); } limit.LimitAmount = viewModel.Limit; limit.Category = repository.Categories.FirstOrDefault(x => x.Id == viewModel.CategoryId); repository.SaveChanges(); var sum = repository.Expenses.Where(x => x.Category == limit.Category).Sum(x => x.Amount); return(limit.Id, sum); }
public ActionResult SubmitLimit([FromBody] LimitViewModel viewModel) { var response = StoreLimit(viewModel); return(Ok(new { Id = response.Item1, ActualAmount = response.Item2 })); }