public async Task UpdateSelectRestReqScheItem(List <RestItemsListDto> input)
        {
            try
            {
                if (input.Count() > 0)
                {
                    for (int i = 0; i < input.Count(); i++)
                    {
                        RestRequestItem RestRequestItems = _RestRequestItemRepository.GetAll().Where(a => a.Id == input[i].RestRequestItemsId).FirstOrDefault();

                        if (RestRequestItems != null)
                        {
                            if (RestRequestItems.RestRequests.RestSchedulesId == 0)
                            {
                                RestRequestItems.RestRequests.RestSchedulesId = null;
                            }

                            RestRequestItems.Count = input[i].Count;
                            _RestRequestItemRepository.Update(RestRequestItems);

                            await CurrentUnitOfWork.SaveChangesAsync();
                        }
                    }
                }
            }
            catch (DbUpdateException e)
            {
                SqlException s = e.InnerException.InnerException as SqlException;
            }
            catch (Exception e)
            {
                throw e;
            }
        }
        public async Task SelectRestReqScheItem(List <RestItemsListDto> input, int RestRequestsId, int?RestSchedulesId, int?RestInfosID)
        {
            try
            {
                if (input.Count() > 0)
                {
                    for (int i = 0; i < input.Count(); i++)
                    {
                        if (input[i].Count > 0)
                        {
                            RestScheduleItem ScheduleItem = _RestScheduleItemRepository.GetAll().Where(a => a.RestItemsId == input[i].Id && a.RestSchedulesId == RestSchedulesId).FirstOrDefault();

                            if (ScheduleItem != null)
                            {
                                var reqitem = new RestRequestItem();

                                reqitem.RestScheduleItemsId = ScheduleItem.Id;
                                reqitem.RestRequestsId      = RestRequestsId;
                                reqitem.Count = input[i].Count;

                                await _RestRequestItemRepository.InsertAsync(reqitem);
                            }
                            else
                            {
                                RestNonSchItem RestNonSchItem = _RestNonSchItemRepository.GetAll().Where(a => a.RestItemId == input[i].Id && a.RestInfoID == RestInfosID).FirstOrDefault();


                                var reqitem = new RestRequestItem();

                                reqitem.RestNonSchItemId = RestNonSchItem.Id;
                                reqitem.RestRequestsId   = RestRequestsId;
                                reqitem.Count            = input[i].Count;

                                await _RestRequestItemRepository.InsertAsync(reqitem);
                            }
                        }
                        await CurrentUnitOfWork.SaveChangesAsync();
                    }
                }
            }
            catch (DbUpdateException e)
            {
                SqlException s = e.InnerException.InnerException as SqlException;
            }
            catch (Exception e)
            {
                throw e;
            }
        }