public GetWorkOrderResponseDto GetWorkOrder() { var response = new GetWorkOrderResponseDto() { GetWorkOrderResponse = new List <GetWorkOrderResponse>() }; var responseDto = new GetWorkOrderResponse(); var model = workOrderTypeRepository.GetWorkOrder(); if (model != null) { responseDto = WorkOrderMapper((List <GetWorkOrderModel>)model.getWorkOrderModel, responseDto); } foreach (var workOrderMasterDetails in responseDto.getWorkOrderMasterDetailsResponse) { var getsingle = new GetWorkOrderResponse { getWorkOrderMasterDetailsResponse = new List <GetWorkOrderMasterDetailsResponse>() }; var getWorkOrderMasterDetailsResponse = new GetWorkOrderMasterDetailsResponse(); getWorkOrderMasterDetailsResponse.PartCode = workOrderMasterDetails.PartCode; getWorkOrderMasterDetailsResponse.WorkOrderNumber = workOrderMasterDetails.WorkOrderNumber; getWorkOrderMasterDetailsResponse.WorkOrderSerial = workOrderMasterDetails.WorkOrderSerial; getWorkOrderMasterDetailsResponse.DCNumber = workOrderMasterDetails.DCNumber; getWorkOrderMasterDetailsResponse.DCDate = workOrderMasterDetails.DCDate; getWorkOrderMasterDetailsResponse.DCSerial = workOrderMasterDetails.DCSerial; getWorkOrderMasterDetailsResponse.DrawingNo = workOrderMasterDetails.DrawingNo; getWorkOrderMasterDetailsResponse.DrawingRev = workOrderMasterDetails.DrawingRev; getWorkOrderMasterDetailsResponse.PartCode = workOrderMasterDetails.PartCode; getWorkOrderMasterDetailsResponse.WOQuantity = workOrderMasterDetails.WOQuantity; getWorkOrderMasterDetailsResponse.Rate = workOrderMasterDetails.Rate; getWorkOrderMasterDetailsResponse.DeliveryDate = workOrderMasterDetails.DeliveryDate; getWorkOrderMasterDetailsResponse.MaterialCode = workOrderMasterDetails.MaterialCode; getWorkOrderMasterDetailsResponse.ItemCode = workOrderMasterDetails.ItemCode; getWorkOrderMasterDetailsResponse.HeatNo = workOrderMasterDetails.HeatNo; getWorkOrderMasterDetailsResponse.PONumber = workOrderMasterDetails.PONumber; getWorkOrderMasterDetailsResponse.PODate = workOrderMasterDetails.PODate; getWorkOrderMasterDetailsResponse.POSerial = workOrderMasterDetails.POSerial; getWorkOrderMasterDetailsResponse.PartDescription = workOrderMasterDetails.PartDescription; getWorkOrderMasterDetailsResponse.MaterialDescription = workOrderMasterDetails.MaterialDescription; getWorkOrderMasterDetailsResponse.IsDeletable = workOrderMasterDetails.IsDeletable; getWorkOrderMasterDetailsResponse.IsNew = false; if (response.GetWorkOrderResponse.Count > 0) { var isExist = response.GetWorkOrderResponse.Any(woNumber => woNumber.WorkOrderNumber == workOrderMasterDetails.WorkOrderNumber); if (isExist) { var index = response.GetWorkOrderResponse.FindIndex(a => a.WorkOrderNumber == workOrderMasterDetails.WorkOrderNumber); response.GetWorkOrderResponse[index].getWorkOrderMasterDetailsResponse.Add(getWorkOrderMasterDetailsResponse); } else { getsingle.VendorCode = workOrderMasterDetails.VendorCode; getsingle.WorkOrderNumber = workOrderMasterDetails.WorkOrderNumber; getsingle.WorkOrderType = workOrderMasterDetails.WorkOrderType; getsingle.WorkOrderDate = workOrderMasterDetails.WorkOrderDate; getsingle.VendorName = workOrderMasterDetails.VendorName; getsingle.MaxSerial = workOrderMasterDetails.MaxSerial; getsingle.getWorkOrderMasterDetailsResponse.Add (getWorkOrderMasterDetailsResponse); response.GetWorkOrderResponse.Add(getsingle); } } else { getsingle.VendorCode = workOrderMasterDetails.VendorCode; getsingle.WorkOrderNumber = workOrderMasterDetails.WorkOrderNumber; getsingle.WorkOrderType = workOrderMasterDetails.WorkOrderType; getsingle.WorkOrderDate = workOrderMasterDetails.WorkOrderDate; getsingle.VendorName = workOrderMasterDetails.VendorName; getsingle.MaxSerial = workOrderMasterDetails.MaxSerial; getsingle.getWorkOrderMasterDetailsResponse.Add (getWorkOrderMasterDetailsResponse); response.GetWorkOrderResponse.Add(getsingle); } } return(response); }