/// <summary>
        /// 新增收货地址(微信地址)
        /// </summary>
        /// <param name="value"></param>
        /// <returns></returns>
        public JsonResult <Result <long> > PostAddWXAddress(ShippingAddressOperaAddressPModel value)
        {
            CheckUserLogin();
            try
            {
                if (string.IsNullOrWhiteSpace(value.address))
                {
                    throw new HimallException("请填写详细地址");
                }
                if (value.regionId <= 0 && (string.IsNullOrWhiteSpace(value.city) || string.IsNullOrWhiteSpace(value.county)))
                {
                    throw new HimallException("参数错误");
                }
                if (value.regionId <= 0)
                {
                    var _region = ServiceProvider.Instance <IRegionService> .Create.GetRegionByName(value.county, Region.RegionLevel.County);

                    if (_region != null)
                    {
                        value.regionId = _region.Id;
                    }
                }
                if (value.regionId <= 0)
                {
                    throw new HimallException("错误的地区信息");
                }
            }
            catch (Exception ex)
            {
                return(Json(ErrorResult <long>(ex.Message)));
            }

            #region 如果存在相同地址就返回
            var shoppingAddress = ServiceProvider.Instance <IShippingAddressService> .Create.GetUserShippingAddressByUserId(CurrentUser.Id);

            var _tmp = shoppingAddress.FirstOrDefault(d => d.RegionId == value.regionId && d.Address == value.address);
            if (_tmp != null)
            {
                return(JsonResult(_tmp.Id));
            }
            #endregion

            Entities.ShippingAddressInfo shippingAddr = new Entities.ShippingAddressInfo();
            shippingAddr.UserId        = CurrentUser.Id;
            shippingAddr.RegionId      = value.regionId;
            shippingAddr.Address       = value.address;
            shippingAddr.Phone         = value.cellphone;
            shippingAddr.ShipTo        = value.shipTo;
            shippingAddr.Latitude      = value.lat;
            shippingAddr.Longitude     = value.lng;
            shippingAddr.AddressDetail = value.addressDetail;
            try
            {
                ServiceProvider.Instance <IShippingAddressService> .Create.AddShippingAddress(shippingAddr);

                if (value.isDefault)
                {
                    ServiceProvider.Instance <IShippingAddressService> .Create.SetDefaultShippingAddress(shippingAddr.Id, CurrentUserId);
                }
            }
            catch (Exception ex)
            {
                return(Json(ErrorResult <long>(ex.Message)));
            }
            return(JsonResult(shippingAddr.Id));
        }