【新增】增加用户注册后自动升级为分销商的功能,后台增加开启项,注册后自动创建分销数据。

This commit is contained in:
jianweie code
2023-08-28 01:00:37 +08:00
parent 686c8d66c9
commit af81c34aba
4 changed files with 37 additions and 7 deletions

View File

@@ -2457,6 +2457,11 @@ namespace CoreCms.Net.Configuration
/// </summary> /// </summary>
[Description("无需审核")] [Description("无需审核")]
NoReview = 3, NoReview = 3,
/// <summary>
/// 注册自动开通
/// </summary>
[Description("注册自动开通")]
RegOpen = 4,
} }
#endregion #endregion

View File

@@ -151,7 +151,7 @@ namespace CoreCms.Net.Configuration
/// </summary> /// </summary>
public const string DistributionLevel = "distributionLevel"; public const string DistributionLevel = "distributionLevel";
/// <summary> /// <summary>
/// 成为分销商条件1无条件(需要审核),2申请(需要审核),3无条件 /// 成为分销商条件1无条件(需要审核),2申请(需要审核),3无条件,4注册账号自动开通
/// </summary> /// </summary>
public const string DistributionType = "distributionType"; public const string DistributionType = "distributionType";
/// <summary> /// <summary>

View File

@@ -56,7 +56,8 @@ public class CoreCmsUserServices : BaseServices<CoreCmsUser>, ICoreCmsUserServic
private readonly PermissionRequirement _permissionRequirement; private readonly PermissionRequirement _permissionRequirement;
private readonly IHttpContextAccessor _httpContextAccessor; private readonly IHttpContextAccessor _httpContextAccessor;
private readonly ICoreCmsBillPaymentsServices _billPaymentsServices; private readonly ICoreCmsBillPaymentsServices _billPaymentsServices;
private readonly ICoreCmsDistributionGradeRepository _distributionGradeRepository;
private readonly ICoreCmsDistributionRepository _distributionRepository;
public CoreCmsUserServices(IUnitOfWork unitOfWork public CoreCmsUserServices(IUnitOfWork unitOfWork
, ICoreCmsUserRepository dal , ICoreCmsUserRepository dal
@@ -66,7 +67,7 @@ public class CoreCmsUserServices : BaseServices<CoreCmsUser>, ICoreCmsUserServic
ICoreCmsUserWeChatInfoServices userWeChatInfoServices, ICoreCmsUserGradeServices userGradeServices, ICoreCmsUserWeChatInfoServices userWeChatInfoServices, ICoreCmsUserGradeServices userGradeServices,
PermissionRequirement permissionRequirement, IHttpContextAccessor httpContextAccessor, PermissionRequirement permissionRequirement, IHttpContextAccessor httpContextAccessor,
ICoreCmsUserLogServices userLogServices, IServiceProvider serviceProvider, ICoreCmsUserLogServices userLogServices, IServiceProvider serviceProvider,
ICoreCmsBillPaymentsServices billPaymentsServices) ICoreCmsBillPaymentsServices billPaymentsServices, ICoreCmsDistributionGradeRepository distributionGradeRepository, ICoreCmsDistributionRepository distributionRepository)
{ {
_dal = dal; _dal = dal;
BaseDal = dal; BaseDal = dal;
@@ -82,6 +83,8 @@ public class CoreCmsUserServices : BaseServices<CoreCmsUser>, ICoreCmsUserServic
_userLogServices = userLogServices; _userLogServices = userLogServices;
_serviceProvider = serviceProvider; _serviceProvider = serviceProvider;
_billPaymentsServices = billPaymentsServices; _billPaymentsServices = billPaymentsServices;
_distributionGradeRepository = distributionGradeRepository;
_distributionRepository = distributionRepository;
} }
@@ -692,6 +695,27 @@ public class CoreCmsUserServices : BaseServices<CoreCmsUser>, ICoreCmsUserServic
if (inviterUserIntegral > 0) if (inviterUserIntegral > 0)
await _userPointLogServices.SetPoint(userInfo.parentId, inviterUserIntegral, await _userPointLogServices.SetPoint(userInfo.parentId, inviterUserIntegral,
(int)GlobalEnumVars.UserPointSourceTypes.PointTypeInviterUser, "发展用户:" + userId + "赠送积分"); (int)GlobalEnumVars.UserPointSourceTypes.PointTypeInviterUser, "发展用户:" + userId + "赠送积分");
//是否默认注册分销商
var distributionType = CommonHelper.GetConfigDictionary(allConfigs, SystemSettingConstVars.DistributionType).ObjectToInt(); //是否默认注册分销商
if (distributionType == (int)GlobalEnumVars.DistributionConditionType.RegOpen)
{
var iData = new CoreCmsDistribution();
iData.userId = userId;
var disGradeModel = await _distributionGradeRepository.QueryByClauseAsync(p => p.isDefault == true);
iData.gradeId = disGradeModel?.id ?? 0;
iData.mobile = entity.mobile;
iData.name = userInfo.nickName;
iData.weixin = "";
iData.qq = "";
iData.verifyStatus = (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes;
iData.isDelete = false;
iData.createTime = DateTime.Now;
await _distributionRepository.InsertAsync(iData);
}
} }
userInfo = await _dal.QueryByIdAsync(userId); userInfo = await _dal.QueryByIdAsync(userId);

View File

@@ -70,9 +70,10 @@
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">{{d.data.configs['distributionType']['sKey']}}</label> <label class="layui-form-label">{{d.data.configs['distributionType']['sKey']}}</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input type="radio" lay-filter="distributionType" name="distributionType" value="1" title="无条件(需要审核)" {{d.data.configs['distributionType']['sValue']==="1" ? 'checked':''}}> <input type="radio" lay-filter="distributionType" name="distributionType" value="1" title="无条件(需要申请和审核)" {{d.data.configs['distributionType']['sValue']==="1" ? 'checked':''}}>
<input type="radio" lay-filter="distributionType" name="distributionType" value="2" title="申请(需要审核)" {{d.data.configs['distributionType']['sValue']==="2" ? 'checked':''}}> <input type="radio" lay-filter="distributionType" name="distributionType" value="2" title="申请(需要申请审核)" {{d.data.configs['distributionType']['sValue']==="2" ? 'checked':''}}>
<input type="radio" lay-filter="distributionType" name="distributionType" value="3" title="无需审核" {{d.data.configs['distributionType']['sValue']==="3" ? 'checked':''}}> <input type="radio" lay-filter="distributionType" name="distributionType" value="3" title="无需审核(需要申请自动审核)" {{d.data.configs['distributionType']['sValue']==="3" ? 'checked':''}}>
<input type="radio" lay-filter="distributionType" name="distributionType" value="4" title="注册自动开通(无需申请,注册账号自动开通)" {{d.data.configs['distributionType']['sValue']==="4" ? 'checked':''}}>
</div> </div>
</div> </div>
@@ -105,7 +106,7 @@
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">&nbsp;</label> <label class="layui-form-label">&nbsp;</label>
<div class="layui-input-block"> <div class="layui-input-block">