Commit 6d2c0ba9 authored by liudong1993's avatar liudong1993

活动提成

parent c450e290
...@@ -19,5 +19,15 @@ namespace Mall.Model.Extend.Education ...@@ -19,5 +19,15 @@ namespace Mall.Model.Extend.Education
/// 订单ids /// 订单ids
/// </summary> /// </summary>
public string OrderIds { get; set; } public string OrderIds { get; set; }
/// <summary>
/// 电商用户ids
/// </summary>
public string DSUserIds { get; set; }
/// <summary>
/// 是否已参加过活动 1是
/// </summary>
public bool IsJoin { get; set; }
} }
} }
This diff is collapsed.
...@@ -50,11 +50,28 @@ namespace Mall.Repository.Education ...@@ -50,11 +50,28 @@ namespace Mall.Repository.Education
{ {
where += $@" and r.{nameof(RB_Activity_PeriodsDetail_ViewModel.OrderId)} in({demodel.OrderIds})"; where += $@" and r.{nameof(RB_Activity_PeriodsDetail_ViewModel.OrderId)} in({demodel.OrderIds})";
} }
if (!string.IsNullOrEmpty(demodel.DSUserIds))
{
where += $@" and r.{nameof(RB_Activity_PeriodsDetail_ViewModel.DSUserId)} in({demodel.DSUserIds})";
}
string sql = $@" select r.* from RB_Activity_PeriodsDetail r where {where} order by r.Id asc"; string sql = $@" select r.* from RB_Activity_PeriodsDetail r where {where} order by r.Id asc";
return Get<RB_Activity_PeriodsDetail_ViewModel>(sql).ToList(); return Get<RB_Activity_PeriodsDetail_ViewModel>(sql).ToList();
} }
/// <summary>
/// 获取活动累计发放提成
/// </summary>
/// <param name="activityId"></param>
/// <param name="groupId"></param>
/// <returns></returns>
public decimal GetActivityCommission(int activityId, int groupId)
{
string sql = $@"SELECT SUM(CommissionMoney) AS CommissionMoney FROM rb_activity_periodsdetail WHERE ActivityId ={activityId} and Group_Id ={groupId}";
var obj = ExecuteScalar(sql);
return obj == null ? 0 : Convert.ToInt32(obj);
}
} }
} }
...@@ -671,7 +671,7 @@ WHERE 1=1 ...@@ -671,7 +671,7 @@ WHERE 1=1
{ {
string sql = $@"SELECT c.*,a.ActivityName,a.StartTime,a.EndTime FROM rb_education_consult c string sql = $@"SELECT c.*,a.ActivityName,a.StartTime,a.EndTime FROM rb_education_consult c
INNER JOIN rb_education_activity a on c.ActivityId = a.Id INNER JOIN rb_education_activity a on c.ActivityId = a.Id
WHERE c.`Status`=0 and a.`Status`=0 and c.MallBaseId ={mallBaseId} and a.EndTime <='{month} 23:59:59' and c.OrderStatus =1 and c.UserId >0 WHERE c.`Status`=0 and a.`Status`=0 and c.MallBaseId ={mallBaseId} and a.StartTime <='{month} 23:59:59' and a.EndTime <='{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}' and c.OrderStatus =1 and c.UserId >0 and c.EduUserId >0
and c.IsRollCall =2 and c.IsCommission <>2 and (c.Income + c.PlatformTax - c.RefundPrice) =c.Money"; and c.IsRollCall =2 and c.IsCommission <>2 and (c.Income + c.PlatformTax - c.RefundPrice) =c.Money";
return Get<RB_Education_Consult_Extend>(sql).ToList(); return Get<RB_Education_Consult_Extend>(sql).ToList();
......
...@@ -21,6 +21,7 @@ using Mall.Model.Extend.Finance; ...@@ -21,6 +21,7 @@ using Mall.Model.Extend.Finance;
using Mall.Common.Enum.Finance; using Mall.Common.Enum.Finance;
using Mall.Common; using Mall.Common;
using Mall.Common.Enum.Education; using Mall.Common.Enum.Education;
using Microsoft.AspNetCore.Authorization;
namespace Mall.WebApi.Controllers.Education namespace Mall.WebApi.Controllers.Education
{ {
...@@ -2344,6 +2345,8 @@ namespace Mall.WebApi.Controllers.Education ...@@ -2344,6 +2345,8 @@ namespace Mall.WebApi.Controllers.Education
x.CoverImg, x.CoverImg,
x.Income, x.Income,
x.RefundPrice, x.RefundPrice,
x.IsCommission,
x.CommissionPrice,
PlatformTax = x.PlatformTax,//(x.PaymentWay == OrderPaymentTypeEnum.OnlinePayment ? ((x.Status == 0 && x.OrderStatus == 1) ? (Math.Round((Convert.ToDecimal(Config.SettlementRate) / 100) * (Convert.ToDecimal(x.Money)), 2, MidpointRounding.AwayFromZero)) : 0) : x.PlatformTax), PlatformTax = x.PlatformTax,//(x.PaymentWay == OrderPaymentTypeEnum.OnlinePayment ? ((x.Status == 0 && x.OrderStatus == 1) ? (Math.Round((Convert.ToDecimal(Config.SettlementRate) / 100) * (Convert.ToDecimal(x.Money)), 2, MidpointRounding.AwayFromZero)) : 0) : x.PlatformTax),
DueInMoney = x.Money - x.Income - x.PlatformTax - x.RefundPrice, DueInMoney = x.Money - x.Income - x.PlatformTax - x.RefundPrice,
PaymentWay = x.PaymentWay.HasValue ? (int)x.PaymentWay : 0, PaymentWay = x.PaymentWay.HasValue ? (int)x.PaymentWay : 0,
...@@ -2422,6 +2425,8 @@ namespace Mall.WebApi.Controllers.Education ...@@ -2422,6 +2425,8 @@ namespace Mall.WebApi.Controllers.Education
x.OrderStatus, x.OrderStatus,
x.EduSellName, x.EduSellName,
x.EduUserId, x.EduUserId,
x.IsCommission,
x.CommissionPrice,
PaymentTime = x.PaymentTime.HasValue ? x.PaymentTime.Value.ToString("yyyy-MM-dd HH:mm:ss") : "", PaymentTime = x.PaymentTime.HasValue ? x.PaymentTime.Value.ToString("yyyy-MM-dd HH:mm:ss") : "",
CreateTime = x.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"), CreateTime = x.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"),
x.OrderNo, x.OrderNo,
...@@ -2964,12 +2969,15 @@ namespace Mall.WebApi.Controllers.Education ...@@ -2964,12 +2969,15 @@ namespace Mall.WebApi.Controllers.Education
OtherPayActual = (financeList != null && financeList.Any()) ? financeList.Where(x => x.Type == WFTempLateClassEnum.OUT && x.ReFinanceId2 <= 0).Sum(x => x.PayMoney ?? 0) : 0; OtherPayActual = (financeList != null && financeList.Any()) ? financeList.Where(x => x.Type == WFTempLateClassEnum.OUT && x.ReFinanceId2 <= 0).Sum(x => x.PayMoney ?? 0) : 0;
//活动提成
decimal ActivityCommission = activityModule.GetActivityCommission(activityId: Id, groupId: 100000);
//利润 //利润
decimal ProfitActual = 0;//实际利润 decimal ProfitActual = 0;//实际利润
decimal ProfitNow = 0;//当前利润 decimal ProfitNow = 0;//当前利润
ProfitActual = (IncomeActual + OtherIncomeActual) - PayReceive - OtherPayReceive; ProfitActual = (IncomeActual + OtherIncomeActual) - PayReceive - OtherPayReceive - ActivityCommission;
ProfitNow = (IncomeActual + OtherIncomeActual) - PayActual - OtherPayActual; ProfitNow = (IncomeActual + OtherIncomeActual) - PayActual - OtherPayActual - ActivityCommission;
//提成 //提成
//decimal SaleCommission = (orderList != null && orderList.Any()) ? orderList.Where(x => x.IsCommissionGive == 1).Sum(x => x.CommissionMoney) : 0; ;//销售提成 //decimal SaleCommission = (orderList != null && orderList.Any()) ? orderList.Where(x => x.IsCommissionGive == 1).Sum(x => x.CommissionMoney) : 0; ;//销售提成
...@@ -3026,6 +3034,7 @@ namespace Mall.WebApi.Controllers.Education ...@@ -3026,6 +3034,7 @@ namespace Mall.WebApi.Controllers.Education
PayActual, PayActual,
ProfitActual, ProfitActual,
ProfitNow, ProfitNow,
ActivityCommission,
FiniceReciveList = recultFiniceList.Where(t => t.Type == WFTempLateClassEnum.IN && t.ReFinanceId2 > 0),//活动报名收入 FiniceReciveList = recultFiniceList.Where(t => t.Type == WFTempLateClassEnum.IN && t.ReFinanceId2 > 0),//活动报名收入
FinicePayList = recultFiniceList.Where(t => t.Type == WFTempLateClassEnum.OUT && t.ReFinanceId2 > 0),//活动报名支出 FinicePayList = recultFiniceList.Where(t => t.Type == WFTempLateClassEnum.OUT && t.ReFinanceId2 > 0),//活动报名支出
OtherFiniceReciveList = recultFiniceList.Where(t => t.Type == WFTempLateClassEnum.IN && t.ReFinanceId2 <= 0),//其他收入 OtherFiniceReciveList = recultFiniceList.Where(t => t.Type == WFTempLateClassEnum.IN && t.ReFinanceId2 <= 0),//其他收入
...@@ -3613,15 +3622,22 @@ namespace Mall.WebApi.Controllers.Education ...@@ -3613,15 +3622,22 @@ namespace Mall.WebApi.Controllers.Education
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
[AllowAnonymous]
public ApiResult SetActivityCommissionInfo() public ApiResult SetActivityCommissionInfo()
{ {
var userInfo = base.UserInfo; var userInfo = base.UserInfo;
userInfo.MallBaseId = RequestParm.MallBaseId;
JObject parms = JObject.Parse(RequestParm.msg.ToString()); JObject parms = JObject.Parse(RequestParm.msg.ToString());
string Month = parms.GetStringValue("Month");//月份 string Month = parms.GetStringValue("Month");//月份
int CreateBy = parms.GetInt("CreateBy", 0);//创建人
if (string.IsNullOrEmpty(Month)) if (string.IsNullOrEmpty(Month))
{ {
return ApiResult.ParamIsNull(); return ApiResult.ParamIsNull();
} }
if (CreateBy <= 0)
{
return ApiResult.ParamIsNull("请传递创建人");
}
try try
{ {
Month = Convert.ToDateTime(Month + "-01").ToString("yyyy-MM"); Month = Convert.ToDateTime(Month + "-01").ToString("yyyy-MM");
...@@ -3631,7 +3647,7 @@ namespace Mall.WebApi.Controllers.Education ...@@ -3631,7 +3647,7 @@ namespace Mall.WebApi.Controllers.Education
return ApiResult.Failed("日期格式有误"); return ApiResult.Failed("日期格式有误");
} }
string msg = activityModule.SetActivityCommissionInfo(Month, userInfo); string msg = activityModule.SetActivityCommissionInfo(Month, CreateBy, userInfo);
if (msg == "") if (msg == "")
{ {
return ApiResult.Success(); return ApiResult.Success();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment