# 2022-02-11

### 1.3.5 开源社区版(会员专业版同步修改):
无
### 0.1.6 会员专业版:
【新增】后台【平台设置-订单管理】增加【佣金计算通道】功能,分为【仅代理】【仅分销】【先代理后分销】【先分销后代理】四种自选模式。
【新增】增加【CoreCmsAgentOrderDetails】表,实现代理佣金订单详情列表功能,精确到具体商品明细。
【新增】增加【CoreCmsDistributionOrderDetails】表,实现三级佣金订单详情列表功能,精确到具体商品明细。
【修复】修复代理商商铺开启按钮错用三级分销商店铺开关功能,增加代理商商铺开启开关。
【修复】修复代理商佣金明细日期选择范围错乱问题。
【优化】uniapp自带progress进度条更换为uview2.x进度条。
【优化】敏感词过滤组件启用废弃的【WordsMatch】方法,启用【StringSearch】方法替代。
This commit is contained in:
JianWeie
2022-02-11 05:28:04 +08:00
parent 05df55d7ec
commit 8f64209d27
45 changed files with 16751 additions and 607 deletions

View File

@@ -4,6 +4,7 @@ using CoreCms.Net.Configuration;
using CoreCms.Net.IServices;
using CoreCms.Net.Loging;
using CoreCms.Net.Model.Entities;
using CoreCms.Net.Model.ViewModels.UI;
using CoreCms.Net.Utility.Extensions;
using CoreCms.Net.Utility.Helper;
using Essensoft.Paylink.WeChatPay.V2;
@@ -53,21 +54,24 @@ namespace CoreCms.Net.RedisMQ.Subscribe
var order = JsonConvert.DeserializeObject<CoreCmsOrder>(msg);
if (order != null)
{
var jm = await _agentOrderServices.AddData(order);
var allConfigs = await _settingServices.GetConfigDictionaries();
//判断是走代理还是走分销
if (jm.status == true)
var commissionChannel = CommonHelper.GetConfigDictionary(allConfigs, SystemSettingConstVars.CommissionChannel).ObjectToInt(1);
if (commissionChannel == (int)GlobalEnumVars.CommissionChannel.)
{
NLogUtil.WriteAll(NLog.LogLevel.Info, LogType.RedisMessageQueue, "订单完结后走代理结佣", JsonConvert.SerializeObject(jm));
var jm = await _agentOrderServices.AddData(order);
jm.status = true;
jm.msg = "分销成功";
NLogUtil.WriteAll(NLog.LogLevel.Info, LogType.RedisMessageQueue, "订单完结后走代理结佣-仅代理", JsonConvert.SerializeObject(jm));
return;
}
else
else if (commissionChannel == (int)GlobalEnumVars.CommissionChannel.)
{
await _distributionOrderServices.AddData(order); //添加分享关联订单日志
var jm = await _distributionOrderServices.AddData(order); //添加分享关联订单日志
//判断是否可以成为分销商
//先判断是否已经是经销商了。
bool check = await _distributionServices.ExistsAsync(p => p.userId == order.userId);
var allConfigs = await _settingServices.GetConfigDictionaries();
var distributionType = CommonHelper.GetConfigDictionary(allConfigs, SystemSettingConstVars.DistributionType).ObjectToInt(0);
if (distributionType == 3) //无需审核,但是要满足提交
{
@@ -96,11 +100,107 @@ namespace CoreCms.Net.RedisMQ.Subscribe
{
await _distributionServices.CheckUpdate(order.userId);
}
jm.status = true;
jm.msg = "分销成功";
NLogUtil.WriteAll(NLog.LogLevel.Info, LogType.RedisMessageQueue, "订单完结后走分销结佣", JsonConvert.SerializeObject(jm));
NLogUtil.WriteAll(NLog.LogLevel.Info, LogType.RedisMessageQueue, "订单完结后走分销结佣-仅分销", JsonConvert.SerializeObject(jm));
return;
}
else if (commissionChannel == (int)GlobalEnumVars.CommissionChannel.)
{
var jm = await _agentOrderServices.AddData(order);
//判断是走代理还是走分销
if (jm.status == true)
{
NLogUtil.WriteAll(NLog.LogLevel.Info, LogType.RedisMessageQueue, "订单完结后走代理结佣-先代理后分销", JsonConvert.SerializeObject(jm));
return;
}
else
{
await _distributionOrderServices.AddData(order); //添加分享关联订单日志
//判断是否可以成为分销商
//先判断是否已经是经销商了。
bool check = await _distributionServices.ExistsAsync(p => p.userId == order.userId);
var distributionType = CommonHelper.GetConfigDictionary(allConfigs, SystemSettingConstVars.DistributionType).ObjectToInt(0);
if (distributionType == 3) //无需审核,但是要满足提交
{
var info = new CoreCmsDistribution();
//判断是否分销商
if (check == false)
{
await _distributionServices.CheckCondition(allConfigs, info, order.userId);
if (info.ConditionStatus == true && info.ConditionProgress == 100)
{
//添加用户
var user = await _userServices.QueryByClauseAsync(p => p.id == order.userId);
var iData = new CoreCmsDistribution();
iData.userId = order.userId;
iData.mobile = user.mobile;
iData.name = !string.IsNullOrEmpty(user.nickName) ? user.nickName : user.mobile;
iData.verifyStatus = (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes;
iData.verifyTime = DateTime.Now;
await _distributionServices.AddData(iData, order.userId);
}
}
}
//已经是经销商的判断是否可以升级
if (check)
{
await _distributionServices.CheckUpdate(order.userId);
}
jm.status = true;
jm.msg = "分销成功";
NLogUtil.WriteAll(NLog.LogLevel.Info, LogType.RedisMessageQueue, "订单完结后走分销结佣-先代理后分销", JsonConvert.SerializeObject(jm));
return;
}
}
else if (commissionChannel == (int)GlobalEnumVars.CommissionChannel.)
{
var jm = await _distributionOrderServices.AddData(order);
if (jm.status)
{
bool check = await _distributionServices.ExistsAsync(p => p.userId == order.userId);
var distributionType = CommonHelper.GetConfigDictionary(allConfigs, SystemSettingConstVars.DistributionType).ObjectToInt(0);
if (distributionType == 3) //无需审核,但是要满足提交
{
var info = new CoreCmsDistribution();
//判断是否分销商
if (check == false)
{
await _distributionServices.CheckCondition(allConfigs, info, order.userId);
if (info.ConditionStatus && info.ConditionProgress == 100)
{
//添加用户
var user = await _userServices.QueryByClauseAsync(p => p.id == order.userId);
var iData = new CoreCmsDistribution();
iData.userId = order.userId;
iData.mobile = user.mobile;
iData.name = !string.IsNullOrEmpty(user.nickName) ? user.nickName : user.mobile;
iData.verifyStatus = (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes;
iData.verifyTime = DateTime.Now;
await _distributionServices.AddData(iData, order.userId);
}
}
}
//已经是经销商的判断是否可以升级
if (check)
{
await _distributionServices.CheckUpdate(order.userId);
}
jm.status = true;
jm.msg = "分销成功";
NLogUtil.WriteAll(NLog.LogLevel.Info, LogType.RedisMessageQueue, "订单完结后走分销结佣-先分销后代理", JsonConvert.SerializeObject(jm));
return;
}
else
{
jm = await _agentOrderServices.AddData(order);
NLogUtil.WriteAll(NLog.LogLevel.Info, LogType.RedisMessageQueue, "订单完结后走代理结佣-先分销后代理", JsonConvert.SerializeObject(jm));
return;
}
}
}
else
{
@@ -116,5 +216,7 @@ namespace CoreCms.Net.RedisMQ.Subscribe
}
}
}