public ValueObject Execute(TransactionContext trxContext, ValueObject vo) { DateTimeVo outVo = new DateTimeVo(); outVo.CurrentDateTime = trxContext.ProcessingDBDateTime; return(outVo); }
public int CalcByDateTime(DateTimeVo dt) { var weekday = dt.Time.IsLate() ? weekdayNightFee : weekdayFee; var holiday = dt.Time.IsLate() ? holidayNightFee : holidayFee; var notMovieDay = dt.DayOfWeek.IsWeekendDays() ? holiday : weekday; // 映画の日が通常料金より高くなる場合は安い方を出力 return(dt.Date.IsMovieDay() ? Math.Min(moviesDayFee, notMovieDay) : notMovieDay); }
public void ValueTest() { var dt = new DateTime(2020, 2, 28, 12, 59, 59); var vo = new DateTimeVo(dt); Assert.That(vo.Date.Year, Is.EqualTo(2020)); Assert.That(vo.Date.Month, Is.EqualTo(2)); Assert.That(vo.Date.Day, Is.EqualTo(28)); Assert.That(vo.DayOfWeek.Value, Is.EqualTo(5)); // fri Assert.That(vo.Time.Hour, Is.EqualTo(12)); }
public int Calculate(DateTimeVo dateTime) => calculator.CalcByDateTime(dateTime);
public int Calculate(DateTimeVo dateTime) { // 常に無料 return(0); }
public static DateTimeVo SetHour(this DateTimeVo dt, int hour) { return(new DateTimeVo(new DateTime(dt.Date.Year, dt.Date.Month, dt.Date.Day, hour, 0, 0))); }