示例#1
0
        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);
        }
示例#2
0
        // 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);
        }