/// <summary> /// 出退勤画面入力画面表示 /// </summary> /// <param name="keyModel">キー情報</param> /// <returns>ビューモデル</returns> public AttendanceTimeDetailViewModel InitDetail(AttendanceTimeKeyInputModel keyModel) { AttendanceTimeDetailViewModel model = new AttendanceTimeDetailViewModel(); AttendanceTimeModel detailModel = this.GetDetail(keyModel); // コピー ModelUtil.CopyModelToModel(detailModel, model); // リストボックス用のデータを取得する // 勤務区分 model.OptionWorkKind = new List <SelectListItem>(); // 空行追加 model.OptionWorkKind.Add(new SelectListItem()); List <M201CodeMst> workKindList = this._M201CodeMstRepository.GetCodeMstList(M201CodeMstRepository.CD_KIND_WORK_KIND); foreach (var dbItem in workKindList) { SelectListItem item = new SelectListItem() { Value = dbItem.Cd, Text = dbItem.Name }; model.OptionWorkKind.Add(item); } // 休日区分 model.OptionHolidayKind = new List <SelectListItem>(); List <M201CodeMst> holidayKindList = this._M201CodeMstRepository.GetCodeMstList(M201CodeMstRepository.CD_KIND_HOLIDAY_KIND); foreach (var dbItem in holidayKindList) { SelectListItem item = new SelectListItem() { Value = dbItem.Cd, Text = dbItem.Name }; model.OptionHolidayKind.Add(item); } return(model); }
public ActionResult DetailInputIndex(AttendanceTimeKeyInputModel inputModel) { AttendanceTimeDetailViewModel viewModel = null; if (!ModelState.IsValid) { // 通常の方法では入力エラーにならないため例外を発生させる throw new ArgumentException(); } ModelState.Clear(); // リダイレクトされた場合でModelStateが引き渡された場合はModelStateをマージする。 this._ControllerSupport.LoadMessageForRedirect(); viewModel = this._ControllerSupport.InvokeServiceAndSetMessage( _AttendanceTimeService, m => m.InitDetail(inputModel), _SessionManager.GetUserInfoModel(), string.Empty); return(PartialView("DetailInput", viewModel)); }