移动系统liao
2024-10-15 94da0698c01915b1e340415e080aa03050700d97
CoreCms.Net.Web.WebApi/Controllers/UserController.cs
@@ -23,6 +23,7 @@
using CoreCms.Net.Caching.AutoMate.RedisCache;
using CoreCms.Net.Configuration;
using CoreCms.Net.IServices;
using CoreCms.Net.IServices.baifenbingfa;
using CoreCms.Net.Loging;
using CoreCms.Net.Model.Entities;
using CoreCms.Net.Model.Entities.Expression;
@@ -92,6 +93,7 @@
        private readonly IWeChatApiHttpClientFactory _weChatApiHttpClientFactory;
        private readonly WeChatOptions _weChatOptions;
        private readonly IRedisOperationRepository _redisOperationRepository;
        private readonly IDistributorDeliveryServices _distributorDeliveryServices;
        /// <summary>
        /// 构造函数
@@ -122,7 +124,14 @@
            , ICoreCmsSettingServices settingServices
            , ICoreCmsServicesServices servicesServices
            , IOptions<WeChatOptions> weChatOptions
            , ICoreCmsUserServicesOrderServices userServicesOrderServices, ICoreCmsUserServicesTicketServices userServicesTicketServices, ICoreCmsStoreServices storeServices, ICoreCmsCouponServices couponServices, ICoreCmsOrderServices orderServices, IWeChatApiHttpClientFactory weChatApiHttpClientFactory, IRedisOperationRepository redisOperationRepository)
            , ICoreCmsUserServicesOrderServices userServicesOrderServices
            , ICoreCmsUserServicesTicketServices userServicesTicketServices
            , ICoreCmsStoreServices storeServices
            , ICoreCmsCouponServices couponServices
            , ICoreCmsOrderServices orderServices
            , IWeChatApiHttpClientFactory weChatApiHttpClientFactory
            , IRedisOperationRepository redisOperationRepository
            , IDistributorDeliveryServices distributorDeliveryServices)
        {
            _user = user;
            _userWeChatInfoServices = userWeChatInfoServices;
@@ -156,6 +165,7 @@
            _weChatApiHttpClientFactory = weChatApiHttpClientFactory;
            _redisOperationRepository = redisOperationRepository;
            _weChatOptions = weChatOptions.Value;
            _distributorDeliveryServices = distributorDeliveryServices;
        }
@@ -402,7 +412,28 @@
            return jm;
        }
        #endregion
        /// <summary>
        /// 获取请求ID
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        [HttpGet]
        public async Task<WebApiCallBack> GeiIp([FromServices] IHttpContextAccessor request)
        {
            string clientIp = request.HttpContext.Connection.RemoteIpAddress.ToString();
            // 如果客户端通过代理访问,可能需要检查X-Forwarded-For头
            if (clientIp == "::1" || clientIp == "127.0.0.1")
            {
                clientIp = request.HttpContext.Request. Headers["X-Forwarded-For"].FirstOrDefault()
                    ?? request.HttpContext.Connection.RemoteIpAddress.ToString();
            }
            return new WebApiCallBack
            {
                code = 0,
                data = clientIp,
            };
        }
        #region 微信核验数据并获取用户详细资料=====================================================
        /// <summary>
        /// 核验数据并获取用户详细资料
@@ -985,7 +1016,10 @@
            {
                user.sex = (int)GlobalEnumVars.UserSexTypes.未知;
            }
            //未处理订单数量
            var DeliveryCount = await _distributorDeliveryServices.GetNoAcceptedDeliveryCount();
            var ShowDelivery = await _distributorDeliveryServices.GetShowDelivery();
            jm.data = new
            {
                user.id,
@@ -1003,12 +1037,16 @@
                user.status,
                user.parentId,
                user.passWord,
                user.IsBaifenPromotion,
                gradeName = userGrade != null ? userGrade.title : "",
                gradeKey= userGrade != null ? userGrade.valueKey:"",
                userCouponCount,
                orderCount,
                footPrintCount,
                collectionCount
                collectionCount,
                user.isplanorder,
                DeliveryCount,
                ShowDelivery
            };
            return jm;
        }
@@ -1560,7 +1598,7 @@
        #region 提现申请
        /// <summary>
        /// 提现申请
        /// 提现申请   type  银行线下转账 = 0,   企业付款到零钱 = 1, 企商家转账到零钱 = 3     企业付款到银行卡 = 2,
        /// </summary>
        /// <returns></returns>
        [HttpPost]
@@ -1568,7 +1606,8 @@
        public async Task<WebApiCallBack> Cash([FromBody] FMIntId entity)
        {
            var money = entity.data.ObjectToDecimal(0);
            var jm = await _userTocashServices.Tocash(_user.ID, money, entity.id);
            var Paytype = entity.data.ObjectToDecimal(0);
            var jm = await _userTocashServices.Tocash(_user.ID, money, entity.id,type: (GlobalEnumVars.UserTocashType)Paytype);
            return jm;
        }