Пример #1
0
        /// <summary>
        /// 快递包装
        /// </summary>
        /// <returns></returns>
        public ActionResult Expresspackage(long?CustomerID, string WareHouseName, long?WareHouseID)
        {
            ExpressPackageModel vm = new ExpressPackageModel();

            //string ViewType = "0";
            //var CustomerListAll = ApplicationConfigHelper.GetProjectUserCustomers(Convert.ToInt64(Session["ProjectID"].ToString()), Convert.ToInt64(Session["ID"].ToString())).Where(t => t.StoreType == 2 || t.StoreType == 3);
            //var CustomerList = CustomerListAll.Select(c => new SelectListItem() { Value = c.CustomerID.ToString(), Text = c.CustomerName });
            ViewBag.CustomerList = CustomerID;

            //IEnumerable<SelectListItem> WarehouseList = null;
            //WarehouseList = ApplicationConfigHelper.GetCacheInfo().Where(c => (c.CustomerID == Convert.ToInt64(Session["CustomerID"].ToString()) && c.UserID == int.Parse(Session["ID"].ToString()))).Select(t => new { WarehouseID = t.WarehouseID, WarehouseName = t.WarehouseName }).Distinct()
            //    .Select(c => new SelectListItem() { Value = c.WarehouseID.ToString(), Text = c.WarehouseName });
            ViewBag.WarehouseList = WareHouseID;

            vm.CustomerIDs     = CustomerID;
            vm.WarehouseIDs    = WareHouseID;
            vm.Warehouses      = WareHouseName;
            vm.SupplieTypeList = getSupplieTypeList();
            return(View(vm));
        }
Пример #2
0
        public ExpressShipmentModel MappingFrayteRequestToExpressBookingDetail(ExpressShipmentRequest frayteShipmentRequest)
        {
            ExpressShipmentModel expressBookingDetail = new ExpressShipmentModel();

            try
            {
                var customerfrom = GetCustomerDetail(frayteShipmentRequest.Security.AccountNumber);
                var country      = GetCountry(frayteShipmentRequest.ShipFrom.Address.CountryCode);

                CheckServiceCode(frayteShipmentRequest);



                //Entry in DB for AwbNumber(Shipment PickedUp)
                expressBookingDetail.AWBNumber    = GetAWBNumber(expressBookingDetail, frayteShipmentRequest);
                expressBookingDetail.ActualWeight = frayteShipmentRequest.Package.Sum(a => a.Weight);


                expressBookingDetail.ShipFrom = new ExpressAddressModel()
                {
                    CompanyName = frayteShipmentRequest.ShipFrom.CompanyName,
                    Address     = frayteShipmentRequest.ShipFrom.Address.Address1,
                    Address2    = frayteShipmentRequest.ShipFrom.Address.Address2,
                    City        = frayteShipmentRequest.ShipFrom.Address.City,
                    Email       = frayteShipmentRequest.ShipFrom.Email,
                    PostCode    = frayteShipmentRequest.ShipFrom.Address.Postcode,
                    State       = frayteShipmentRequest.ShipFrom.Address.State,
                    Area        = frayteShipmentRequest.ShipFrom.Address.Area,
                    Phone       = frayteShipmentRequest.ShipFrom.Phone,
                    Country     = new FrayteCountryCode()
                    {
                        Code           = country.CountryCode,
                        Code2          = country.CountryCode2,
                        CountryId      = country.CountryId,
                        Name           = country.CountryName,
                        TimeZoneDetail = null
                    },
                    CustomerId = customerfrom.CustomerId,
                    FirstName  = frayteShipmentRequest.ShipFrom.FirstName,
                    LastName   = frayteShipmentRequest.ShipFrom.LastName,
                    IsMailSend = false,
                };
                var country1 = GetCountry(frayteShipmentRequest.ShipTo.Address.CountryCode);
                expressBookingDetail.ShipTo = new ExpressAddressModel()
                {
                    CompanyName = frayteShipmentRequest.ShipTo.CompanyName,
                    Address     = frayteShipmentRequest.ShipTo.Address.Address1,
                    Address2    = frayteShipmentRequest.ShipTo.Address.Address2,
                    City        = frayteShipmentRequest.ShipTo.Address.City,
                    Email       = frayteShipmentRequest.ShipTo.Email,
                    PostCode    = frayteShipmentRequest.ShipTo.Address.Postcode,
                    State       = frayteShipmentRequest.ShipTo.Address.State,
                    Area        = frayteShipmentRequest.ShipTo.Address.Area,
                    Phone       = frayteShipmentRequest.ShipTo.Phone,
                    Country     = new FrayteCountryCode()
                    {
                        Code           = country1.CountryCode,
                        Code2          = country1.CountryCode2,
                        CountryId      = country1.CountryId,
                        Name           = country1.CountryName,
                        TimeZoneDetail = null
                    },
                    CustomerId = customerfrom.CustomerId,
                    FirstName  = frayteShipmentRequest.ShipTo.FirstName,
                    LastName   = frayteShipmentRequest.ShipTo.LastName,
                    IsMailSend = false,
                };
                expressBookingDetail.DeclaredCurrency = new CurrencyType()
                {
                    CurrencyCode        = customerfrom.CurrencyCode,
                    CurrencyDescription = "",
                };
                expressBookingDetail.Packages = new List <ExpressPackageModel>();
                foreach (var package in frayteShipmentRequest.Package)
                {
                    var item = new ExpressPackageModel()
                    {
                        CartonValue = package.CartoonValue,
                        Height      = Frayte.Services.CommonConversion.ConvertToDecimal(package.Height),
                        Length      = Frayte.Services.CommonConversion.ConvertToDecimal(package.Length),
                        Width       = Frayte.Services.CommonConversion.ConvertToDecimal(package.Width),
                        Content     = package.ShipmentContents,
                        Weight      = package.Weight,
                        Value       = package.DeclaredValue
                    };
                    expressBookingDetail.Packages.Add(item);
                }
                ;
                //expressBookingDetail.ParcelType = frayteShipmentRequest.par;
                if (frayteShipmentRequest.CustomInformation != null)
                {
                    expressBookingDetail.CustomInformation = new ExpressCustomInformationModel()
                    {
                        ContentsType        = frayteShipmentRequest.CustomInformation.ContentsType,
                        RestrictionType     = frayteShipmentRequest.CustomInformation.RestrictionType,
                        ContentsExplanation = frayteShipmentRequest.CustomInformation.ContentsExplanation,
                        RestrictionComments = frayteShipmentRequest.CustomInformation.RestrictionComments,
                        CustomsCertify      = true,
                        CustomsSigner       = frayteShipmentRequest.CustomInformation.CustomsSigner,
                        NonDeliveryOption   = frayteShipmentRequest.CustomInformation.NonDeliveryOption,
                    };
                }
                expressBookingDetail.Service = new HubService();
                expressBookingDetail.Service = frayteShipmentRequest.Service;
                expressBookingDetail.PakageCalculatonType = frayteShipmentRequest.PackageCalculationType;
                expressBookingDetail.CustomerId           = customerfrom.CustomerId;
                expressBookingDetail.PayTaxAndDuties      = frayteShipmentRequest.PaymentPartyTaxAndDuties;
                expressBookingDetail.CreatedBy            = customerfrom.CustomerId;
                expressBookingDetail.DeclaredValue        = expressBookingDetail.Packages.Sum(a => a.Value);
                //expressBookingDetail = new ReferenceDetail();
                // expressBookingDetail.ReferenceDetail.CollectionDate = Convert.ToDateTime(frayteShipmentRequest.RequestedPickupDate);
                //expressBookingDetail.ReferenceDetail.CollectionTime = frayteShipmentRequest.RequestedPickupDate.HasValue ? frayteShipmentRequest.RequestedPickupDate.Value.ToString("HHmm") : "";
                expressBookingDetail.ShipmentReference   = frayteShipmentRequest.ShipmentReference;
                expressBookingDetail.ShipmentDescription = frayteShipmentRequest.ShipmentReference;
                //expressBookingDetail.Service = GetExpressService(frayteShipmentRequest.ServiceCode);
                //directBookingDetail.CustomerId = user != null && user.RoleId == (int)FrayteUserRole.UserCustomer ? user.CustomerId : customerfrom.CustomerId;
                //directBookingDetail.CreatedBy = user != null && user.RoleId == (int)FrayteUserRole.UserCustomer ? user.CreatedBy : customerfrom.CustomerId;
                //directBookingDetail.ShipmentStatusId = 12;
                //directBookingDetail.BookingStatusType = "Darft";
                //directBookingDetail.PakageCalculatonType = frayteShipmentRequest.PackageCalculationType;
                //directBookingDetail.AddressType = frayteShipmentRequest.AddressType;
                return(expressBookingDetail);
            }
            catch (Exception ex)
            {
                throw (new FrayteApiException("MappingRequestError", ex));
            }
        }