Example #1
0
        public CheckoutDto GetCheckoutByDate(GetCheckoutByDateDto data, StaffMemberDto staffMemberDto)
        {
            DateTime       shiftDate      = Convert.ToDateTime(data.StringDate).Date;
            CheckoutEntity checkoutEntity = _repository.GetCheckOutForStaffMemberForSpecificDate(shiftDate, staffMemberDto.Id, data.LunchOrDinner);

            if (checkoutEntity == null)
            {
                throw new KeyNotFoundException("No checkout for the provided staffmember was found for the given parameters.");
            }

            CheckoutDto checkoutDto = Mapper.Map <CheckoutDto>(checkoutEntity);

            return(checkoutDto);
        }
        public IActionResult GetCheckoutByDate([FromBody] GetCheckoutByDateDto data)
        {
            try
            {
                StaffMemberDto staffDto = _staffCore.GetStaffMember(data.StaffMemberId);
                CheckoutDto    checkout = _checkoutsCore.GetCheckoutByDate(data, staffDto);
                return(Ok(checkout));
            }
            catch (Exception e)
            {
                _logger.LogError(e.Message);
                ModelState.AddModelError("Checkout by Date Error: ", e.Message);
                if (e.InnerException is KeyNotFoundException)
                {
                    return(BadRequest(ModelState));
                }

                return(StatusCode(500, ModelState));
            }
        }