public SkyPostalResponse CreateShipment(SkyPostalRequest skyPostalRequest, int ExpressId) { SkyPostalResponse respone = new SkyPostalResponse(); var logisticIntegration = UtilityRepository.getLogisticIntegration(UtilityRepository.GetOperationZone().OperationZoneId, AppSettings.ApplicationMode, FrayteIntegration.SKYPOSTAL); string result = string.Empty; #region SKYPOSTaL API Login skyPostalRequest.user_info.user_code = Convert.ToInt32(logisticIntegration.AppId); skyPostalRequest.user_info.app_key = logisticIntegration.InetgrationKey; skyPostalRequest.user_info.user_key = logisticIntegration.UserName; var skyPostalJson = Newtonsoft.Json.JsonConvert.SerializeObject(skyPostalRequest); result = SkyPostalWebApi(logisticIntegration, skyPostalJson); try { respone = Newtonsoft.Json.JsonConvert.DeserializeObject <SkyPostalResponse>(result); } catch (Exception ex) { ex.ToString(); } return(respone); }
// New API Integration public SkyPostalRequest MapExpressBookingDetailToShipmentRequestDto(ExpressShipmentModel ExpressBookingDetail) { SkyPostalRequest request = new SkyPostalRequest(); request.user_info = new UserInfo(); request.user_info.user_code = 441; request.user_info.user_key = "209ff2c85bc69dbdee8af67c244f8728"; request.user_info.app_key = "0zqZl26OtlLK4oFeWh6QO890yN9ltP"; request.shipment_info = new ShipmentInfo(); request.shipment_info.copa_id = 665; request.shipment_info.ssa_copa_id = 0; request.shipment_info.box_id = ExpressBookingDetail.Service.CourierAccountNo; // Merchant info request.shipment_info.merchant = new Merchant(); request.shipment_info.merchant.name = "FRAYTE LOGISTICS LTD"; request.shipment_info.merchant.email = ""; request.shipment_info.merchant.address = null; // Merchant Return Addrress request.shipment_info.merchant.return_address = null; // Merchant Phone request.shipment_info.merchant.phone = new List <MerchantPhone>(); MerchantPhone mp = new MerchantPhone(); mp.phone_type = 1; mp.phone_number = ExpressBookingDetail.ShipFrom.Phone; request.shipment_info.merchant.phone.Add(mp); //Shipper Info request.shipment_info.shipper = new Shipper(); request.shipment_info.shipper.name = ExpressBookingDetail.ShipFrom.FirstName + " " + ExpressBookingDetail.ShipFrom.LastName; request.shipment_info.shipper.email = ExpressBookingDetail.ShipFrom.Email; request.shipment_info.shipper.shipperaddress = new ShipperAddress(); request.shipment_info.shipper.shipperaddress.address_01 = ExpressBookingDetail.ShipFrom.Address; request.shipment_info.shipper.shipperaddress.address_02 = ExpressBookingDetail.ShipFrom.Address2; request.shipment_info.shipper.shipperaddress.address_03 = null; request.shipment_info.shipper.shipperaddress.city_code = 0; request.shipment_info.shipper.shipperaddress.city_name = ExpressBookingDetail.ShipFrom.City; request.shipment_info.shipper.shipperaddress.country_code = 0; request.shipment_info.shipper.shipperaddress.county_code = 0; request.shipment_info.shipper.shipperaddress.county_name = ExpressBookingDetail.ShipFrom.Country.Name; request.shipment_info.shipper.shipperaddress.state_code = 0; request.shipment_info.shipper.shipperaddress.zip_code = ExpressBookingDetail.ShipFrom.PostCode; request.shipment_info.shipper.shipperaddress.country_iso_code = ExpressBookingDetail.ShipFrom.Country.Code2; request.shipment_info.shipper.shipperaddress.country_name = ExpressBookingDetail.ShipFrom.Country.Name; request.shipment_info.shipper.shipperaddress.neighborhood = null; request.shipment_info.shipper.shipperaddress.state_name = ExpressBookingDetail.ShipFrom.State; // Shipper Return Address request.shipment_info.shipper.return_address = null; request.shipment_info.shipper.phone = new List <ShipperPhone>(); ShipperPhone sp = new ShipperPhone(); sp.phone_type = 1; sp.phone_number = ExpressBookingDetail.ShipFrom.Phone; request.shipment_info.shipper.phone.Add(sp); // Sender Address request.shipment_info.sender = new Sender(); request.shipment_info.sender.name = ExpressBookingDetail.ShipFrom.FirstName + " " + ExpressBookingDetail.ShipFrom.LastName; request.shipment_info.sender.email = ExpressBookingDetail.ShipFrom.Email; request.shipment_info.sender.SenderAddress = new SenderAddress(); request.shipment_info.sender.SenderAddress.address_01 = ExpressBookingDetail.ShipFrom.Address; request.shipment_info.sender.SenderAddress.address_02 = ExpressBookingDetail.ShipFrom.Address2; request.shipment_info.sender.SenderAddress.address_03 = null; request.shipment_info.sender.SenderAddress.city_code = 0; request.shipment_info.sender.SenderAddress.city_name = ExpressBookingDetail.ShipFrom.City; request.shipment_info.sender.SenderAddress.country_code = 0; request.shipment_info.sender.SenderAddress.county_code = 0; request.shipment_info.sender.SenderAddress.county_name = ExpressBookingDetail.ShipFrom.Country.Name; request.shipment_info.sender.SenderAddress.state_code = 0; request.shipment_info.sender.SenderAddress.zip_code = ExpressBookingDetail.ShipFrom.PostCode; request.shipment_info.sender.SenderAddress.country_iso_code = ExpressBookingDetail.ShipFrom.Country.Code2; request.shipment_info.sender.SenderAddress.country_name = ExpressBookingDetail.ShipFrom.Country.Name; request.shipment_info.sender.SenderAddress.neighborhood = null; request.shipment_info.sender.SenderAddress.state_name = ExpressBookingDetail.ShipFrom.State; // Shipper Return Address request.shipment_info.sender.return_address = new ReturnAddress(); request.shipment_info.sender.return_address = null; request.shipment_info.sender.phone = new List <ShipperPhone>(); ShipperPhone ph = new ShipperPhone(); ph.phone_type = 1; ph.phone_number = ExpressBookingDetail.ShipFrom.Phone; request.shipment_info.sender.phone.Add(ph); //Consignee Address request.shipment_info.consignee = new Consignee(); request.shipment_info.consignee.first_name = ExpressBookingDetail.ShipTo.FirstName; request.shipment_info.consignee.last_name = ExpressBookingDetail.ShipTo.LastName; request.shipment_info.consignee.email = ExpressBookingDetail.ShipTo.Email; request.shipment_info.consignee.id_number = ExpressBookingDetail.ExpressId.ToString(); //Consignee Address request.shipment_info.consignee.address = new ConsigneeAddress(); request.shipment_info.consignee.address.address_01 = ExpressBookingDetail.ShipTo.Address; request.shipment_info.consignee.address.address_02 = ExpressBookingDetail.ShipTo.Address2; request.shipment_info.consignee.address.address_03 = null; request.shipment_info.consignee.address.city_code = 0; request.shipment_info.consignee.address.city_name = ExpressBookingDetail.ShipTo.City; request.shipment_info.consignee.address.country_code = 0; request.shipment_info.consignee.address.country_iso_code = ExpressBookingDetail.ShipTo.Country.Code2; request.shipment_info.consignee.address.country_name = ExpressBookingDetail.ShipTo.Country.Name; request.shipment_info.consignee.address.county_code = 0; request.shipment_info.consignee.address.county_name = ExpressBookingDetail.ShipTo.Country.Name; request.shipment_info.consignee.address.neighborhood = null; request.shipment_info.consignee.address.state_code = 0; request.shipment_info.consignee.address.state_name = ExpressBookingDetail.ShipTo.State; request.shipment_info.consignee.address.zip_code = ExpressBookingDetail.ShipTo.PostCode; //Consignee Phone request.shipment_info.consignee.phone = new List <ConsigneePhone>(); ConsigneePhone phn = new ConsigneePhone(); phn.phone_type = 1; phn.phone_number = ExpressBookingDetail.ShipTo.Phone; request.shipment_info.consignee.phone.Add(phn); request.shipment_info.options = new Options(); request.shipment_info.options.generate_label_default = false; request.shipment_info.options.include_label_data = false; request.shipment_info.options.include_label_image = false; request.shipment_info.options.insurance_code = 0; request.shipment_info.options.manifest_type = "DDP"; request.shipment_info.options.rate_service_code = 0; request.shipment_info.options.zpl_encode_base64 = true; request.shipment_info.options.include_label_zpl = false; request.shipment_info.data = new Data(); request.shipment_info.data.currency_iso_code = ExpressBookingDetail.DeclaredCurrency.CurrencyCode; request.shipment_info.data.dimension_01 = ExpressBookingDetail.Packages[0].Length; request.shipment_info.data.dimension_02 = ExpressBookingDetail.Packages[0].Height; request.shipment_info.data.dimension_03 = ExpressBookingDetail.Packages[0].Width; request.shipment_info.data.dimension_unit = ExpressBookingDetail.PakageCalculatonType == "kgToCms" ? "CM" : "IN"; request.shipment_info.data.discount = 0; request.shipment_info.data.external_tracking = ExpressBookingDetail.AWBNumber.Replace(" ", "") + "-" + ExpressBookingDetail.ShipmentReference; request.shipment_info.data.freight = 0; request.shipment_info.data.insurance = 0; request.shipment_info.data.reference_date = DateTime.UtcNow.ToString("yyyy-MM-dd"); request.shipment_info.data.reference_number_01 = ""; request.shipment_info.data.reference_number_02 = ""; request.shipment_info.data.reference_number_03 = ""; request.shipment_info.data.tax = 0; request.shipment_info.data.weight = ExpressBookingDetail.Service.ActualWeight; request.shipment_info.data.weight_unit = ExpressBookingDetail.PakageCalculatonType == "kgToCms" ? "KG" : "LB"; request.shipment_info.data.value = ExpressBookingDetail.DeclaredValue; request.shipment_info.data.items = new List <Item>(); Item my = new Item(); my.description = ExpressBookingDetail.Packages[0].Content; my.family_product = ""; my.hs_code = ""; my.imei_number = ""; my.quantity = ExpressBookingDetail.Packages[0].CartonValue; my.serial_number = ""; my.tax = 0; my.value = ExpressBookingDetail.Packages[0].Value; my.weight = ExpressBookingDetail.Packages[0].Weight; request.shipment_info.data.items.Add(my); return(request); }