public async Task <ActionResult> Edit(ScheduleMultipleViewModel param) { if (ModelState.IsValid) { controllerName = this.ControllerContext.RouteData.Values["controller"].ToString(); string strUrl = APIProvider.APIGenerator(controllerName, APIConstant.ACTION_UPDATE); var model = param.CreateScheduleViewModel; model.Start = DateTime.Parse(model.StartDate.Split('T')[0] + " " + model.StartTime); model.End = DateTime.Parse(model.StartDate.Split('T')[0] + " " + model.EndTime); model.Color = string.Empty; var result = await APIProvider.Authorize_DynamicTransaction <CreateScheduleViewModel, int>(model, _userSession.BearerToken, strUrl, APIConstant.API_Resource_CORE, ARS.IgnoredARS); if (result > 0) { TempData["Alert"] = ApplicationGenerator.RenderResult(ApplicationGenerator.TypeResult.SUCCESS, ApplicationGenerator.GeneralActionMessage(APIConstant.ACTION_UPDATE, ApplicationGenerator.TypeResult.SUCCESS)); } else { TempData["Alert"] = ApplicationGenerator.RenderResult(ApplicationGenerator.TypeResult.FAIL, ApplicationGenerator.GeneralActionMessage(APIConstant.ACTION_UPDATE, ApplicationGenerator.TypeResult.FAIL)); } return(RedirectToAction("Index")); } else { TempData["Alert"] = ApplicationGenerator.RenderResult(ApplicationGenerator.TypeResult.FAIL, ApplicationGenerator.GeneralActionMessage(APIConstant.ACTION_UPDATE, ApplicationGenerator.TypeResult.FAIL)); return(View("Index")); } }
// GET: Schedule public async Task <ActionResult> Index(ScheduleMultipleViewModel data) { try { byte type = (byte)EnumUserConstants.UserType.ISDOCTOR; string search = ""; string apiUrl = APIProvider.APIGenerator(controllerUser, new List <string> { nameof(search), nameof(type) }, true, search, type); var doctorList = await APIProvider.Authorize_Get <List <UserViewModel> >(_userSession.BearerToken, apiUrl, APIConstant.API_Resource_CORE, ARS.Get); if (doctorList == null) { doctorList = ApplicationGenerator.GetObject <List <UserViewModel> >(); } ViewBag.Users = doctorList; if (data.ScheduleFilter == null) { data.ScheduleFilter = new ScheduleFilter(); } var param = data.ScheduleFilter; //Call API Provider if (param.Start == DateTime.MinValue && param.End == DateTime.MinValue) { param.Start = DateTime.Now; param.End = DateTime.Now; } controllerName = this.ControllerContext.RouteData.Values["controller"].ToString(); string apiUrlSchedule = APIProvider.APIGenerator(controllerName, new List <string> { nameof(param.UserId), nameof(param.Start), nameof(param.End) }, true, param.UserId, param.Start.ToString("yyyy-MM-dd"), param.End.ToString("yyyy-MM-dd")); var schedule = await APIProvider.Authorize_Get <List <ScheduleViewModel> >(_userSession.BearerToken, apiUrlSchedule, APIConstant.API_Resource_CORE, ARS.Get); if (schedule.Count == 0) { schedule = new List <ScheduleViewModel>(); } ViewBag.Schedule = schedule; var schedules = new ScheduleMultipleViewModel(); var model = schedules.ScheduleFilter; return(View(model)); } catch (HttpException ex) { Logger.LogError(ex); int statusCode = ex.GetHttpCode(); if (statusCode == 401) { TempData["Alert"] = ApplicationGenerator.RenderResult(FuntionType.Department, APIConstant.ACTION_ACCESS); return(new HttpUnauthorizedResult()); } throw ex; } }
public async Task <ActionResult> Create(ScheduleMultipleViewModel param) { if (ModelState.IsValid) { controllerName = this.ControllerContext.RouteData.Values["controller"].ToString(); string strUrl = APIProvider.APIGenerator(controllerName, APIConstant.ACTION_INSERT); var model = param.CreateScheduleViewModel; model.Start = DateTime.Parse(model.StartDate + " " + model.StartTime); model.End = DateTime.Parse(model.StartDate + " " + model.EndTime); model.Color = string.Empty; if (param.CreateScheduleViewModel.UserId == null) { TempData["Alert"] = ApplicationGenerator.RenderResult(ApplicationGenerator.TypeResult.ERROR, ApplicationGenerator.GeneralActionMessage(APIConstant.ACTION_INSERT, ApplicationGenerator.TypeResult.FAIL)); return(RedirectToAction("Index")); } var result = await APIProvider.Authorize_DynamicTransaction <CreateScheduleViewModel, int>(model, _userSession.BearerToken, strUrl, APIConstant.API_Resource_CORE, ARS.Insert); if (result > 0) { TempData["Alert"] = ApplicationGenerator.RenderResult(ApplicationGenerator.TypeResult.SUCCESS, ApplicationGenerator.GeneralActionMessage(APIConstant.ACTION_INSERT, ApplicationGenerator.TypeResult.SUCCESS)); } else { TempData["Alert"] = ApplicationGenerator.RenderResult(ApplicationGenerator.TypeResult.FAIL, ApplicationGenerator.GeneralActionMessage(APIConstant.ACTION_INSERT, ApplicationGenerator.TypeResult.FAIL)); } return(RedirectToAction("Index")); } else { TempData["Alert"] = ApplicationGenerator.RenderResult(ApplicationGenerator.TypeResult.FAIL, ApplicationGenerator.GeneralActionMessage(APIConstant.ACTION_INSERT, ApplicationGenerator.TypeResult.FAIL)); byte type = (byte)EnumUserConstants.UserType.ISDOCTOR; string search = ""; string apiUrl = APIProvider.APIGenerator(controllerUser, new List <string> { nameof(search), nameof(type) }, true, search, type); var doctorList = await APIProvider.Authorize_Get <List <UserViewModel> >(_userSession.BearerToken, apiUrl, APIConstant.API_Resource_CORE, ARS.Get); if (doctorList == null) { doctorList = ApplicationGenerator.GetObject <List <UserViewModel> >(); } ViewBag.Users = doctorList; return(View("Index", param)); } }