private void UpdateSAPResponse(ContractAmendmentRequest contractAmendmentRequest, AddRemoveRequestSAPResponse addRemoveRequestSAPResponse) { if (addRemoveRequestSAPResponse.RequestResponseStatus == AddRemoveRequestResponseStatus.Failure || addRemoveRequestSAPResponse.RequestResponseStatus == AddRemoveRequestResponseStatus.RFCFailure) { contractAmendmentRequest.Status = (int)AddRemoveRequestStatus.Failure; } else if (addRemoveRequestSAPResponse.RequestResponseStatus == AddRemoveRequestResponseStatus.Success) { contractAmendmentRequest.Status = (int)AddRemoveRequestStatus.Success; } else if (addRemoveRequestSAPResponse.RequestResponseStatus == AddRemoveRequestResponseStatus.SuccessWithWarnings) { contractAmendmentRequest.Status = (int)AddRemoveRequestStatus.Success; } foreach (ContractAmendmentRequestARDetails contractContractAmendmentRequestARDetails in contractAmendmentRequest.ContractAmendmentRequestARDetails) { AddRemoveProductSAPResponse addRemoveProductSAPResponse = addRemoveRequestSAPResponse.ProductSAPResponse.Where( c => c.LicensableID == contractContractAmendmentRequestARDetails.LicensableID && Convert.ToInt64(c.ProductID) == contractContractAmendmentRequestARDetails.ProductID).First(); contractContractAmendmentRequestARDetails.Status = (short)addRemoveProductSAPResponse.Status; } }
private AddRemoveRequestSAPResponse ProcessSAPResponse(Z_V_Osw_R_Add_Rem_Contract_RFCReturn RFCStrOutput) { try { AddRemoveRequestSAPResponse addremoveSAPResponse = new AddRemoveRequestSAPResponse(); addremoveSAPResponse.ProductSAPResponse = new List <AddRemoveProductSAPResponse>(); bool isAtLeastOneProductActionFailed = false; foreach (ZLW_OUT_GENERAL_DATA outGeneralData in RFCStrOutput.Out_General_Data) { AddRemoveProductSAPResponse LstSAPResponse = new AddRemoveProductSAPResponse(); addremoveSAPResponse.AgreementNumber = outGeneralData.OUT_IDENTIFIER; LstSAPResponse.LicensableID = outGeneralData.OUT_MATERIAL; if (outGeneralData.OUT_RETURN_VALUE == "00") { LstSAPResponse.Status = AddRemoveRequestDetailStatus.Success; } else if (outGeneralData.OUT_RETURN_VALUE == "02") { LstSAPResponse.Status = AddRemoveRequestDetailStatus.Warning; } else { LstSAPResponse.Status = AddRemoveRequestDetailStatus.Failure; isAtLeastOneProductActionFailed = true; } LstSAPResponse.Message = outGeneralData.OUT_RETURN_MSG; ContractAmendmentRequestARDetailsDTO obj = _addremoveRequest.ContractAddRemoveRequestDetails.Where(c => c.LicensableID == LstSAPResponse.LicensableID).First(); LstSAPResponse.ProductID = obj.ProductID.ToString(); LstSAPResponse.ProductName = obj.ProductName; LstSAPResponse.Action = (AddRemoveRequestDetailAction)obj.Action; addremoveSAPResponse.ProductSAPResponse.Add(LstSAPResponse); } if (isAtLeastOneProductActionFailed) { addremoveSAPResponse.RequestResponseStatus = AddRemoveRequestResponseStatus.Failure; } else { addremoveSAPResponse.RequestResponseStatus = AddRemoveRequestResponseStatus.Success; } return(addremoveSAPResponse); } catch (Exception ex) { throw ex; } }
private AddRemoveRequestSAPResponse CreateFailureSAPResponse(List <ContractAmendmentRequestARDetailsDTO> contractAmendmentRequestARDetailsDTOList, string agreementNumber) { AddRemoveRequestSAPResponse addRemoveRequestSAPResponse = new AddRemoveRequestSAPResponse(); addRemoveRequestSAPResponse.RequestResponseStatus = AddRemoveRequestResponseStatus.RFCFailure; addRemoveRequestSAPResponse.AgreementNumber = agreementNumber; addRemoveRequestSAPResponse.UniqueIdentifier = contractAmendmentRequestARDetailsDTOList[0].ContractAmendmentRequestID.ToString(); foreach (ContractAmendmentRequestARDetailsDTO contractAddRemoveRequestDetailsDTO in contractAmendmentRequestARDetailsDTOList) { AddRemoveProductSAPResponse objProdResponse = new AddRemoveProductSAPResponse(); objProdResponse.LicensableID = contractAddRemoveRequestDetailsDTO.LicensableID; objProdResponse.ProductID = contractAddRemoveRequestDetailsDTO.ProductID.ToString(); objProdResponse.ProductName = contractAddRemoveRequestDetailsDTO.ProductName; objProdResponse.Status = AddRemoveRequestDetailStatus.Failure; objProdResponse.Action = (AddRemoveRequestDetailAction)contractAddRemoveRequestDetailsDTO.Action; addRemoveRequestSAPResponse.ProductSAPResponse.Add(objProdResponse); } return(addRemoveRequestSAPResponse); }