public ActionResult Menu(int?clientId) { var model = new ClientMenuModel(); model.BasicDetailsUrl = Url.Action("BasicDetails"); model.PassportUrl = Url.Action("Passport"); model.ContactsUrl = Url.Action("Contacts"); model.EmploymentUrl = Url.Action("Employment"); model.ObligationsUrl = Url.Action("Obligations"); model.PropertyUrl = Url.Action("Property"); model.CreditsUrl = Url.Action("Index"); int id = this.ResolveClientId(clientId); string clientSubStr = @"?clientId=" + id; model.IsClient = _userContext.IsClient; if (id != _userContext.User.Id) { model.BasicDetailsUrl += clientSubStr; model.PassportUrl += clientSubStr; model.ContactsUrl += clientSubStr; model.EmploymentUrl += clientSubStr; model.ObligationsUrl += clientSubStr; model.PropertyUrl += clientSubStr; model.CreditsUrl += clientSubStr; model.IsClient = true; } return(this.View(model)); }
//User synchronize home menu meals public async Task <List <ClientMenuModel> > SynchronizeMenusAsync(UserModel user) { if (user.Position == (int)UserPosition.HasNotHome) { CustomException errors = new CustomException((int)HttpStatusCode.BadRequest); errors.AddError("Home Not Exist", "User is not member of a home"); errors.Throw(); } user = await _userRepository.GetByIdAsync(user.Id, true); List <MenuModel> homeMenus = await _menuRepository.GetAllHomeMenusAsync(user.Home.Id); List <ClientMenuModel> clientMenus = new List <ClientMenuModel>(); foreach (var menu in homeMenus) { ClientMenuModel clientMenu = new ClientMenuModel(); clientMenu.Menu = menu; List <MenuMealModel> menuMeals = await _menuMealRepository.GetAllMenuMealsByMenuIdAsync(menu.Id, true); foreach (var menuMeal in menuMeals) { clientMenu.MealIds.Add(menuMeal.Meal.Id); } clientMenus.Add(clientMenu); } return(clientMenus); }
public async Task <IActionResult> UpdateMenu([FromBody] ClientMenuModel clientMenu) { string token = Request.Headers["Authorization"].ToString().Substring("Bearer ".Length).Trim(); UserModel user = await _jwtTokenService.GetUserFromTokenStrAsync(token); MenuModel menu = clientMenu.Menu; List <int> mealIds = clientMenu.MealIds; await _menuService.UpdateMenuAsync(user, menu, mealIds); return(Ok()); }
public JsonResult Manage(ClientMenuModel model, GridManagingModel manageModel) { if (ModelState.IsValid || manageModel.Operation == GridOperationEnums.Del) { return(Json(_clientMenuServices.ManageClientMenu(manageModel.Operation, model))); } return(Json(new ResponseModel { Success = false, Message = GetFirstValidationResults(ModelState).Message })); }
/// <summary> /// Manage ClientMenu /// </summary> /// <param name="operation"></param> /// <param name="model"></param> /// <returns></returns> public ResponseModel ManageClientMenu(GridOperationEnums operation, ClientMenuModel model) { Mapper.CreateMap <ClientMenuModel, ClientMenu>(); ClientMenu clientMenu; ResponseModel response; switch (operation) { case GridOperationEnums.Edit: clientMenu = GetById(model.Id); clientMenu.Name = model.Name; clientMenu.Url = model.Url; clientMenu.ParentId = model.ParentId; clientMenu.RecordActive = model.RecordActive; clientMenu.RecordOrder = model.RecordOrder; clientMenu.ParentId = model.ParentName.ToNullableInt(); response = HierarchyUpdate(clientMenu); return(response.SetMessage(response.Success ? _localizedResourceServices.T("AdminModule:::ClientMenus:::Messages:::UpdateSuccessfully:::Update client menu successfully.") : _localizedResourceServices.T("AdminModule:::ClientMenus:::Messages:::UpdateFailure:::Update client menu failed. Please try again later."))); case GridOperationEnums.Add: clientMenu = Mapper.Map <ClientMenuModel, ClientMenu>(model); clientMenu.ParentId = model.ParentName.ToNullableInt(); response = HierarchyInsert(clientMenu); return(response.SetMessage(response.Success ? _localizedResourceServices.T("AdminModule:::ClientMenus:::Messages:::CreateSuccessfully:::Create client menu successfully.") : _localizedResourceServices.T("AdminModule:::ClientMenus:::Messages:::CreateFailure:::Create client menu failed. Please try again later."))); case GridOperationEnums.Del: response = Delete(model.Id); return(response.SetMessage(response.Success ? _localizedResourceServices.T("AdminModule:::ClientMenus:::Messages:::DeleteSuccessfully:::Delete client menu successfully.") : _localizedResourceServices.T("AdminModule:::ClientMenus:::Messages:::DeleteFailure:::Delete client menu failed. Please try again later."))); } return(new ResponseModel { Success = false, Message = _localizedResourceServices.T("AdminModule:::ClientMenus:::Messages::ObjectNotFounded:::Client menu is not founded.") }); }