public GetGPReceivedDetailsResponseDto GetGPReceivedDetails()
        {
            var response = new GetGPReceivedDetailsResponseDto()
            {
                GPReceivedMasterDetails = new List <GPReceivedMasterDetails>()
            };

            var model = gatePassRepository.GetGPReceivedDetails();


            foreach (var responseModel in model.GetGPReceivedDetailsModel)
            {
                var getsingle = new GPReceivedMasterDetails
                {
                    GPReceivedDetails = new List <GPReceivedDetails>()
                };
                var getGPReceivingDetailsItems = new GPReceivedDetails();
                getGPReceivingDetailsItems.GPReceiptNumber = responseModel.GPReceiptNumber;
                getGPReceivingDetailsItems.GPNumber        = responseModel.GPNumber;
                getGPReceivingDetailsItems.GPSerialNo      = responseModel.GPSerialNo;
                getGPReceivingDetailsItems.ReceiptQuantity = responseModel.ReceiptQuantity;

                if (response.GPReceivedMasterDetails.Count > 0)
                {
                    var isExist = response.GPReceivedMasterDetails.Any(dcMaster => dcMaster.GPReceiptNumber == responseModel.GPReceiptNumber);
                    if (isExist)
                    {
                        var index = response.GPReceivedMasterDetails.FindIndex(a => a.GPReceiptNumber == responseModel.GPReceiptNumber);

                        response.GPReceivedMasterDetails[index].GPReceivedDetails.Add(getGPReceivingDetailsItems);
                    }
                    else
                    {
                        getsingle.GPReceiptNumber = responseModel.GPReceiptNumber;
                        getsingle.GPReceiptDate   = responseModel.GPReceiptDate;
                        getsingle.VendorName      = responseModel.VendorName;
                        getsingle.VendorCode      = responseModel.VendorCode;
                        getsingle.DocumentDate    = responseModel.DocumentDate;
                        getsingle.DocumentID      = responseModel.DocumentID;
                        getsingle.Remarks         = responseModel.Remarks;

                        getsingle.GPReceivedDetails.Add
                            (getGPReceivingDetailsItems);

                        response.GPReceivedMasterDetails.Add(getsingle);
                    }
                }
                else
                {
                    getsingle.GPReceiptNumber = responseModel.GPReceiptNumber;
                    getsingle.GPReceiptDate   = responseModel.GPReceiptDate;
                    getsingle.VendorName      = responseModel.VendorName;
                    getsingle.VendorCode      = responseModel.VendorCode;
                    getsingle.DocumentDate    = responseModel.DocumentDate;
                    getsingle.DocumentID      = responseModel.DocumentID;
                    getsingle.Remarks         = responseModel.Remarks;

                    getsingle.GPReceivedDetails.Add
                        (getGPReceivingDetailsItems);

                    response.GPReceivedMasterDetails.Add(getsingle);
                }
            }

            return(response);
        }