public static QuincusResponse GetGeoCodeReponseFromQuincus(QuincusGeoCodeDataRequest quincusGeoCodeDataRequest) { QuincusResponse quincusReponse = QuincusProxy.GetQuincusResponse(quincusGeoCodeDataRequest); return(quincusReponse); }
public static QuincusTranslatedAddressResponse GetTranslationAddress(IQuincusAddressTranslationRequest quincusAddressTranslationRequest, QuincusParams quincusParams) { QuincusTranslatedAddressResponse quincusTranslatedAddressResponse = QuincusProxy.GetTranslatedAddressResponse(quincusAddressTranslationRequest, quincusParams); return(quincusTranslatedAddressResponse); }
public static QuincusResponse GetGeoCodeReponseFromQuincus(QuincusGeoCodeDataRequest quincusGeoCodeDataRequest, decimal shipmentsCount = 30) { QuincusResponse quincusReponse = QuincusProxy.GetQuincusResponse(quincusGeoCodeDataRequest, shipmentsCount); return(quincusReponse); }
public static QuincusTokenDataResponse GetToken(QuincusParams quincusParams) { QuincusTokenDataResponse quincusTokenDataResponse = QuincusProxy.GetToken(quincusParams); return(quincusTokenDataResponse); }
public async Task <ActionResult> GetTranslationAddress([FromBody] List <ShipmentWorkFlowRequest> shipmentWorkFlowRequest) { int wid = 0; decimal requestCount = 0m; if (shipmentWorkFlowRequest.Any()) { wid = shipmentWorkFlowRequest.FirstOrDefault().wfL_ID; } QuincusTranslatedAddressResponse quincusTranslatedAddressResponse = new QuincusTranslatedAddressResponse(); QuincusTokenDataResponse quincusTokenDataResponse = QuincusService.GetToken(new UPS.Quincus.APP.Configuration.QuincusParams() { endpoint = configuration["Quincus:TokenEndPoint"], password = configuration["Quincus:Password"], username = configuration["Quincus:UserName"], }); if (quincusTokenDataResponse.ResponseStatus) { //quincusTranslatedAddressResponse = QuincusService.GetTranslationAddress(new UPS.Quincus.APP.Request.QuincusAddressTranslationRequest() //{ // endpoint = configuration["Quincus:GeoCodeEndPoint"], // shipmentWorkFlowRequests = shipmentWorkFlowRequest, // token = quincusTokenDataResponse.quincusTokenData.token //}); this._quincusAddressTranslationRequest.shipmentWorkFlowRequests = shipmentWorkFlowRequest; this._quincusAddressTranslationRequest.token = quincusTokenDataResponse.quincusTokenData.token; List <List <ShipmentWorkFlowRequest> > shipmentWorkFlowRequests = new List <List <ShipmentWorkFlowRequest> >(); shipmentWorkFlowRequests = QuincusProxy.ChunkBy(shipmentWorkFlowRequest, 20); foreach (List <ShipmentWorkFlowRequest> requests in shipmentWorkFlowRequests) { requestCount = requests.Count(); quincusTranslatedAddressResponse = QuincusService.GetTranslationAddress(this._quincusAddressTranslationRequest); if (quincusTranslatedAddressResponse.Response) { //return Ok(quincusTranslatedAddressResponse.ResponseData); var getAddressTranslation = quincusTranslatedAddressResponse.ResponseData; var QuincusResponse = QuincusService.GetGeoCodeReponseFromQuincus(new UPS.Quincus.APP.Request.QuincusGeoCodeDataRequest() { endpoint = configuration["Quincus:GeoCodeEndPoint"], id = quincusTranslatedAddressResponse.ResponseData.batch_id, quincusTokenData = quincusTokenDataResponse.quincusTokenData }, requestCount); if (QuincusResponse.ResponseStatus) { ShipmentDataRequest shipment = new ShipmentDataRequest(); List <Geocode> geocodes = (List <Geocode>)((QuincusReponseData)QuincusResponse.QuincusReponseData).geocode; List <ShipmentDataRequest> shipmentsDataRequest = new List <ShipmentDataRequest>(geocodes.Count); for (int i = 0; i < geocodes.Count; i++) { ShipmentDataRequest shipmentDataRequest = new ShipmentDataRequest(); shipmentDataRequest.ID = Convert.ToInt32(geocodes[i].id); shipmentDataRequest.WFL_ID = wid; shipmentDataRequest.SHP_ADR_TR_TE = geocodes[i].translated_adddress; shipmentDataRequest.ACY_TE = geocodes[i].accuracy; shipmentDataRequest.CON_NR = geocodes[i].confidence; if ( !string.IsNullOrEmpty(geocodes[i].translated_adddress) //&& geocodes[i].translated_adddress != "NA" //&& !string.Equals(shipmentWorkFlowRequest.Where(s => s.id == shipmentDataRequest.ID).FirstOrDefault().rcV_ADR_TE.Trim(), // geocodes[i].translated_adddress.Trim()) ) { shipmentDataRequest.SMT_STA_NR = ((int)Enums.ATStatus.Translated); shipmentDataRequest.SMT_STA_TE = "Translated"; } else { shipmentDataRequest.SMT_STA_NR = Convert.ToInt32(shipmentWorkFlowRequest.Where(s => s.id == shipmentDataRequest.ID).FirstOrDefault().smT_STA_NR); shipmentDataRequest.SMT_STA_TE = Convert.ToString(shipmentWorkFlowRequest.Where(s => s.id == shipmentDataRequest.ID).FirstOrDefault().smT_STA_TE); } shipmentsDataRequest.Add(shipmentDataRequest); } ShipmentService shipmentService = new ShipmentService(); shipmentService.UpdateShipmentAddressByIds(shipmentsDataRequest); _workflowID = shipmentsDataRequest.FirstOrDefault().WFL_ID; //we need to update the workflow status int?workflowstatus = shipmentService.SelectShipmentTotalStatusByWorkflowId(_workflowID); WorkflowDataRequest workflowDataRequest = new WorkflowDataRequest(); workflowDataRequest.ID = _workflowID; workflowDataRequest.WFL_STA_TE = workflowstatus; workflowService.UpdateWorkflowStatusById(workflowDataRequest); } else { if (QuincusResponse.Exception == null) { AuditEventEntry.WriteEntry(new Exception("Translation failed...")); } else { AuditEventEntry.WriteEntry(new Exception(QuincusResponse.Exception.ToString())); } return(Ok(QuincusResponse?.Exception)); } } else { if (quincusTranslatedAddressResponse.exception == null) { AuditEventEntry.WriteEntry(new Exception("Translation failed...")); } else { AuditEventEntry.WriteEntry(new Exception(quincusTranslatedAddressResponse.exception.ToString())); } return(Ok(quincusTranslatedAddressResponse?.exception)); } } return(Ok(quincusTranslatedAddressResponse.ResponseData)); } else { if (quincusTokenDataResponse.exception == null) { AuditEventEntry.WriteEntry(new Exception("Translation failed...")); } else { AuditEventEntry.WriteEntry(new Exception(quincusTokenDataResponse.exception.ToString())); } return(Ok(quincusTokenDataResponse?.exception)); } }