コード例 #1
0
        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"));
            }
        }
コード例 #2
0
        // 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;
            }
        }
コード例 #3
0
        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));
            }
        }