Ejemplo n.º 1
0
        public async Task <CheckOutOutput> Execute(CheckOutInput input)
        {
            CheckOutOutput output = new CheckOutOutput();

            foreach (var item in input.Items)
            {
                var partInstance = await this._partInstanceRepository.GetEntityAsync(e => e.Id == item.PartInstanceId);

                var location = await this._locationProvider.GetEntityAsync(e => e.Id == item.LocationId);

                if (partInstance != null && location != null)
                {
                    if (item.IsBubbler)
                    {
                        var data = await this.ExecuteBubbler(partInstance, location, item);

                        output.OutputList.Add(data);
                    }
                    else
                    {
                        var data = await this.ExecuteStandard(partInstance, location, item);

                        output.OutputList.Add(data);
                    }
                }
                else
                {
                    output.OutputList.Add(new CheckOutOutputData(null, false, "PartInstance or Location Not Found"));
                }
            }
            return(output);
        }
Ejemplo n.º 2
0
        public ActionResult <CheckOutOutput> CheckOut([FromBody] CheckOutInput input)
        {
            CheckOutOutput rzlt    = new CheckOutOutput();
            BookRecords    bookEnt = _baseService.GetBook(input.ReservationNumber);

            if (bookEnt != null)
            {
                bookEnt.EndDate = input.CheakOutDate;
                var testDays = (bookEnt.EndDate - bookEnt.StartDate).TotalDays;
                rzlt.Price = (float)testDays * _baseService.GetBaseDayFee() * bookEnt.AType.Price;
            }
            else
            {
                rzlt = null;
            }

            return(rzlt);
        }