예제 #1
0
        public void TestCreateBookingAsync()
        {
            ContextSeeders.Seed();
            var crbo  = new ClientRecordBusinessObject();
            var bbo   = new BookingBusinessObject();
            var pbo   = new PersonBusinessObject();
            var rbo   = new RestaurantBusinessObject();
            var lhubo = new LennyouseUserBusinessObject();

            var _lennyouseUser = new LennyouseUser(Guid.NewGuid());
            var newP           = new Person(11111, 11111, "ok", "ok", DateTime.UtcNow, _lennyouseUser.Id);
            var newR           = new Restaurant("ok", "ok", "ok", "ok", "ok", 5);



            var cr      = new ClientRecord(DateTime.UtcNow, newP.Id, newR.Id);
            var booking = new Booking(cr.Id, DateTime.UtcNow);



            crbo.Create(cr);
            pbo.Create(newP);
            rbo.Create(newR);
            lhubo.Create(_lennyouseUser);

            var resCreate = bbo.CreateAsync(booking).Result;
            var resGet    = bbo.ReadAsync(booking.Id).Result;

            Assert.IsTrue(resCreate.Success && resGet.Success && resGet.Result != null);
        }
        public async Task <IActionResult> CreateAsync([FromBody] BookingViewModel vm)
        {
            var newItem = vm.ToModel();
            var result  = await _bo.CreateAsync(newItem);

            if (!result.Success)
            {
                return(InternalServerError(result.Exception));
            }
            return(Created(Request.Path.Value, null));
        }
        public void TestCreateAndReadBookingAsync()
        {
            RestaurantSeeder.SeedCountries();
            var bo        = new BookingBusinessObject();
            var boForeign = new ClientRecordBusinessObject();

            var booking = new Booking(DateTime.Parse("2015/04/04"), boForeign.List().Result.First().Id);

            var resCreate = bo.CreateAsync(booking).Result;
            var resGet    = bo.ReadAsync(booking.Id).Result;

            Assert.IsTrue(resCreate.Success && resGet.Success && resGet.Result != null);
        }
예제 #4
0
        public void TestCreateAndListBookingAsync()
        {
            RestaurantSeeder.Seed();
            var cbo = new ClientRecordBusinessObject();
            var bbo = new BookingBusinessObject();

            var c = cbo.ListAsync().Result.Result.First();

            var dr        = new Booking(DateTime.Now, c.Id);
            var resCreate = bbo.CreateAsync(dr).Result;
            var resGet    = bbo.ReadAsync(dr.Id).Result;

            Assert.IsTrue(resCreate.Success && resGet.Success && resGet.Result != null);
        }
예제 #5
0
        public async Task <IActionResult> Create(BookingViewModel vm)
        {
            if (ModelState.IsValid)
            {
                var model           = vm.ToModel();
                var createOperation = await _bo.CreateAsync(model);

                if (!createOperation.Success)
                {
                    return(View("Error", new ErrorViewModel()
                    {
                        RequestId = createOperation.Exception.Message
                    }));
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(vm));
        }