示例#1
0
        public AttendanceTimeViewModel Init()
        {
            // 初期表示は、当月分のログインユーザーの出退勤時間を表示する
            DateTime today = DateTime.Now;

            AttendanceTimeViewModel viewModel = new AttendanceTimeViewModel();

            string targetUserId = this.UserInfoModel.UserId;
            int    targetYear   = today.Year;
            int    targetMonth  = today.Month;

            // 当月分のデータを検索する
            AttendanceTimeConditionModel condition = new AttendanceTimeConditionModel()
            {
                UserId    = targetUserId,
                WorkYear  = targetYear,
                WorkMonth = targetMonth
            };

            viewModel.AttendanceTimeList = this.SearchWithMakeAttendanceTime(condition, today);
            viewModel.WorkYear           = targetYear;
            viewModel.WorkMonth          = targetMonth;
            viewModel.UserId             = targetUserId;
            viewModel.UserName           = this.UserInfoModel.UserName;

            return(viewModel);
        }
示例#2
0
        public ActionResult SelectMonth(AttendanceTimeSelectMonthInputModel inputModel)
        {
            AttendanceTimeViewModel viewModel = null;

            if (!ModelState.IsValid)
            {
                // 通常の方法では入力エラーにならないため例外を発生させる
                throw new ArgumentException();
            }

            viewModel = this._ControllerSupport.InvokeServiceAndSetMessage(
                _AttendanceTimeService, m => m.SelectMonth(inputModel), _SessionManager.GetUserInfoModel(), string.Empty);

            if (ModelState.IsValid)
            {
                ModelState.Clear();
            }
            else
            {
                // 通常の方法では入力エラーにならないため例外を発生させる
                throw new ArgumentException();
            }

            return(View("AttendanceTime", viewModel));
        }
示例#3
0
        public ActionResult Index()
        {
            // リダイレクトされた場合でModelStateが引き渡された場合はModelStateをマージする。
            this._ControllerSupport.LoadMessageForRedirect();

            AttendanceTimeViewModel viewModel = this._ControllerSupport.InvokeServiceAndSetMessage(
                _AttendanceTimeService, m => m.Init(), _SessionManager.GetUserInfoModel(), string.Empty);

            return(View("AttendanceTime", viewModel));
        }
示例#4
0
        public AttendanceTimeViewModel SelectMonth(AttendanceTimeSelectMonthInputModel inputModel)
        {
            // 初期表示は、当月分のログインユーザーの出退勤時間を表示する
            DateTime today = DateTime.Now;

            AttendanceTimeViewModel viewModel = new AttendanceTimeViewModel();

            string targetUserId = inputModel.UserId;
            int    targetYear   = int.Parse(inputModel.WorkYear);
            int    targetMonth  = int.Parse(inputModel.WorkMonth);

            if (inputModel.MonthBtn == "1")
            {
                targetMonth -= 1;
                if (targetMonth == 0)
                {
                    targetMonth = 12;
                    targetYear -= 1;
                }
            }
            else
            {
                targetMonth += 1;
                if (targetMonth == 13)
                {
                    targetMonth = 1;
                    targetYear += 1;
                }
            }

            // 指定月分のデータを検索する
            AttendanceTimeConditionModel condition = new AttendanceTimeConditionModel()
            {
                UserId    = targetUserId,
                WorkYear  = targetYear,
                WorkMonth = targetMonth
            };

            viewModel.AttendanceTimeList = this.SearchWithMakeAttendanceTime(condition, today);
            viewModel.WorkYear           = targetYear;
            viewModel.WorkMonth          = targetMonth;
            viewModel.UserId             = targetUserId;
            viewModel.UserName           = this._UserInfoRepository.GetUserInfo(targetUserId).UserName;


            return(viewModel);
        }