public void 利用期間が30日より先だと予約ができない() { var かいし = new 開始年月日時分(2021, 10, 20, 10, 0); var しゅうりょう = new 終了年月日時分(2021, 10, 20, 10, 15); // TODO:DateTime.Nowはかなり怪しい。けど、頭がふやふやなので、いまはこれでいく。 Assert.Throws <ArgumentException>(() => new 利用期間(かいし, しゅうりょう, DateTime.Now)); }
public void 利用期間が30日より先だと予約ができない() { var かいし = new 開始年月日時分(2021, 10, 20, 10, 0); var しゅうりょう = new 終了年月日時分(2021, 10, 20, 10, 15); var 起点日 = new DateTime(2020, 10, 19); var 利用期間 = new 利用期間(かいし, しゅうりょう); Assert.Throws <ルール違反Exception>(() => 予約.Create(new 予約Id("0"), new 予約者Id(), 利用期間, new 会議室Id(), new 会議参加予定者(), new 予約申請受付日(起点日)) ); }
public async Task <ActionResult> Post(Reserve reserve) { // var repository = new InMemory予約Repository(); // var factory = new 予約IdFactory(); // var useCase = new UseCase(_repository, factory); var request = new 予約Request(); var かいし = new 開始年月日時分(reserve.start_datetime.Year, reserve.start_datetime.Month, reserve.start_datetime.Day, reserve.start_datetime.Hour, reserve.start_datetime.Minute); var しゅうりょう = new 終了年月日時分(reserve.end_datetime.Year, reserve.end_datetime.Month, reserve.end_datetime.Day, reserve.end_datetime.Hour, reserve.end_datetime.Minute); var 起点日 = DateTime.Now; request.りようきかん = new 利用期間(かいし, しゅうりょう); // Todo: パラメータ無視している request.かいぎさんかよていしゃ = new 会議参加予定者(); request.よやくしゃ = new 予約者Id(); request.かいぎしつ = new 会議室Id(); try { await _useCase.会議室予約するAsync(request, new 予約申請受付日(起点日)); } catch (Exception e) { var resp = new HttpResponseMessage(HttpStatusCode.Conflict) { //Content = new StringContent(e.InnerException.Message), ReasonPhrase = e.InnerException.Message }; //throw new System.Web.Http.HttpResponseException(resp); return(new JsonResult(resp)); } return(new JsonResult(reserve)); }
public async Task 予約する() { var repository = new InMemory予約Repository(); var factory = new 連番予約IdFactory(); var useCase = new UseCase(repository, factory); var request = new 予約Request(); request.よやくしゃ = new 予約者Id(); var かいし = new 開始年月日時分(2021, 1, 20, 10, 0); var しゅうりょう = new 終了年月日時分(2021, 1, 20, 11, 0); var 起点日 = new DateTime(2020, 12, 29); request.りようきかん = new 利用期間(かいし, しゅうりょう); request.かいぎさんかよていしゃ = new 会議参加予定者(); request.かいぎしつ = new 会議室Id(); await useCase.会議室予約するAsync(request, new 予約申請受付日(起点日)); var result = repository.Get(new 予約Id("0")); result.IsNotNull(); }
public bool IsContains(開始年月日時分 開始年月日時分) { return((_開始日 <= 開始年月日時分.日付) && (開始年月日時分.日付 <= _終了日)); }