public GetGPSendingResponseDto GetGPSendingMasterAndDetails()
        {
            var response = new GetGPSendingResponseDto()
            {
                GetGPSendingResponse = new List <GetGPSendingResponse>()
            };
            var responseDto = new GetGPSendingResponse();

            var model = gatePassRepository.GetGPSendingMasterAndDetails();

            //if (model != null)
            //{
            //    responseDto = GetGPSendingMapper((List<GetGPSendingModel>)model.getGPSendingModel, responseDto);
            //}

            foreach (var gpSendingDetails in model.getGPSendingModel)
            {
                var getsingle = new GetGPSendingResponse
                {
                    GetGPSendingDetailsist = new List <GetGPSendingDetails>()
                };
                var getGPSendingDetailsResponse = new GetGPSendingDetails();
                getGPSendingDetailsResponse.GPNumber         = gpSendingDetails.GPNumber;
                getGPSendingDetailsResponse.GPSerialNo       = gpSendingDetails.GPSerialNo;
                getGPSendingDetailsResponse.Description      = gpSendingDetails.Description;
                getGPSendingDetailsResponse.Units            = gpSendingDetails.Units;
                getGPSendingDetailsResponse.UnitsDescription = gpSendingDetails.UnitsDescription;
                getGPSendingDetailsResponse.SentQuantity     = gpSendingDetails.SentQuantity;
                getGPSendingDetailsResponse.ReceivedQuantity = gpSendingDetails.ReceivedQuantity;
                getGPSendingDetailsResponse.IsDeletable      = gpSendingDetails.IsDeletable;

                //getWorkOrderMasterDetailsResponse.IsDeletable = workOrderMasterDetails.IsDeletable;
                //getWorkOrderMasterDetailsResponse.IsNew = false;

                if (response.GetGPSendingResponse.Count > 0)
                {
                    var isExist = response.GetGPSendingResponse.Any(gpNumber => gpNumber.GPNumber == gpSendingDetails.GPNumber);
                    if (isExist)
                    {
                        var index = response.GetGPSendingResponse.FindIndex(a => a.GPNumber == gpSendingDetails.GPNumber);

                        response.GetGPSendingResponse[index].GetGPSendingDetailsist.Add(getGPSendingDetailsResponse);
                    }
                    else
                    {
                        getsingle.GPType        = gpSendingDetails.GPType;
                        getsingle.GPDescription = gpSendingDetails.GPDescription;
                        getsingle.GPNumber      = gpSendingDetails.GPNumber;
                        getsingle.GPDate        = gpSendingDetails.GPDate;
                        getsingle.VendorCode    = gpSendingDetails.VendorCode;
                        getsingle.VendorName    = gpSendingDetails.VendorName;
                        getsingle.RequestedBy   = gpSendingDetails.RequestedBy;
                        getsingle.RequestedName = gpSendingDetails.RequestedName;
                        getsingle.Remarks       = gpSendingDetails.Remarks;
                        getsingle.IsDeletable   = gpSendingDetails.IsDeletable;
                        getsingle.GetGPSendingDetailsist.Add
                            (getGPSendingDetailsResponse);

                        response.GetGPSendingResponse.Add(getsingle);
                    }
                }
                else
                {
                    getsingle.GPType        = gpSendingDetails.GPType;
                    getsingle.GPDescription = gpSendingDetails.GPDescription;
                    getsingle.GPNumber      = gpSendingDetails.GPNumber;
                    getsingle.GPDate        = gpSendingDetails.GPDate;
                    getsingle.VendorCode    = gpSendingDetails.VendorCode;
                    getsingle.VendorName    = gpSendingDetails.VendorName;
                    getsingle.RequestedBy   = gpSendingDetails.RequestedBy;
                    getsingle.RequestedName = gpSendingDetails.RequestedName;
                    getsingle.Remarks       = gpSendingDetails.Remarks;
                    getsingle.IsDeletable   = gpSendingDetails.IsDeletable;
                    getsingle.GetGPSendingDetailsist.Add
                        (getGPSendingDetailsResponse);

                    response.GetGPSendingResponse.Add(getsingle);
                }
            }

            return(response);
        }