Commit 04bc5f8f authored by liudong1993's avatar liudong1993

Merge branch 'master' of http://gitlab.oytour.com/Kui2/education

parents f90464e3 38ee00de
...@@ -17,10 +17,15 @@ namespace Edu.Model.Entity.Bonus ...@@ -17,10 +17,15 @@ namespace Edu.Model.Entity.Bonus
/// </summary> /// </summary>
public int Id { get; set; } public int Id { get; set; }
/// <summary>
/// 关联方案编号
/// </summary>
public int PlanId { get; set; }
/// <summary> /// <summary>
/// 类型(1-市场人员,2-课程顾问) /// 类型(1-市场人员,2-课程顾问)
/// </summary> /// </summary>
public int RewardType { get; set; } public int PlanType { get; set; }
/// <summary> /// <summary>
/// 年份 /// 年份
...@@ -52,15 +57,17 @@ namespace Edu.Model.Entity.Bonus ...@@ -52,15 +57,17 @@ namespace Edu.Model.Entity.Bonus
/// </summary> /// </summary>
public decimal CurOrderMoney { get; set; } public decimal CurOrderMoney { get; set; }
/// <summary> /// <summary>
/// 抵扣人数 /// 待抵扣金额
/// </summary> /// </summary>
public int DeductionNum { get; set; } public decimal DeductionMoney { get; set; }
/// <summary> /// <summary>
/// 抵扣金额 /// 已完成抵扣金额
/// </summary> /// </summary>
public decimal DeductionMoney { get; set; } public decimal FinishDeductionMoney { get; set; }
/// <summary> /// <summary>
/// 创建人 /// 创建人
...@@ -96,5 +103,30 @@ namespace Edu.Model.Entity.Bonus ...@@ -96,5 +103,30 @@ namespace Edu.Model.Entity.Bonus
/// 是否达成本月目标(1-是) /// 是否达成本月目标(1-是)
/// </summary> /// </summary>
public int IsReach { get; set; } public int IsReach { get; set; }
/// <summary>
/// 基本工资
/// </summary>
public decimal BasicSalary { get; set; }
/// <summary>
/// 开单奖金
/// </summary>
public decimal OpenBonus { get; set; }
/// <summary>
/// 工龄工资
/// </summary>
public decimal WorkAgeSalary { get; set; }
/// <summary>
/// 每5条线索奖金
/// </summary>
public decimal ClueNumSalary { get; set; }
/// <summary>
/// 以前月份的冲抵金额
/// </summary>
public decimal BeforeMoney { get; set; }
} }
} }
...@@ -14,5 +14,10 @@ namespace Edu.Model.ViewModel.Bonus ...@@ -14,5 +14,10 @@ namespace Edu.Model.ViewModel.Bonus
/// 人头奖励详情列表 /// 人头奖励详情列表
/// </summary> /// </summary>
public List<RB_Personnel_BonusDetail_Extend> DetailList { get; set; } public List<RB_Personnel_BonusDetail_Extend> DetailList { get; set; }
/// <summary>
/// 是否查询未平账
/// </summary>
public int IsNoBalance { get; set; }
} }
} }
...@@ -211,5 +211,6 @@ namespace Edu.Model.ViewModel.User ...@@ -211,5 +211,6 @@ namespace Edu.Model.ViewModel.User
/// 用户角色(1-市场人员,2-课程顾问) /// 用户角色(1-市场人员,2-课程顾问)
/// </summary> /// </summary>
public UserRoleEnum UserRole { get; set; } public UserRoleEnum UserRole { get; set; }
} }
} }
...@@ -254,5 +254,10 @@ namespace Edu.Model.ViewModel.User ...@@ -254,5 +254,10 @@ namespace Edu.Model.ViewModel.User
/// 客户需求名称 /// 客户需求名称
/// </summary> /// </summary>
public string StuNeedsName { get; set; } public string StuNeedsName { get; set; }
/// <summary>
/// 线索条数
/// </summary>
public int ClueCount { get; set; }
} }
} }
\ No newline at end of file
...@@ -9,6 +9,7 @@ using Edu.Model.Entity.Bonus; ...@@ -9,6 +9,7 @@ using Edu.Model.Entity.Bonus;
using Edu.Model.ViewModel.Bonus; using Edu.Model.ViewModel.Bonus;
using Edu.Common.Plugin; using Edu.Common.Plugin;
using VT.FW.DB; using VT.FW.DB;
using Edu.Repository.User;
namespace Edu.Module.Course namespace Edu.Module.Course
{ {
...@@ -47,26 +48,30 @@ namespace Edu.Module.Course ...@@ -47,26 +48,30 @@ namespace Edu.Module.Course
/// </summary> /// </summary>
private readonly RB_OrderRepository orderRepository = new RB_OrderRepository(); private readonly RB_OrderRepository orderRepository = new RB_OrderRepository();
/// <summary>
/// 学员仓储层对象
/// </summary>
private readonly RB_StudentRepository studentRepository = new RB_StudentRepository();
/// <summary> /// <summary>
/// 生成业绩 /// 生成业绩
/// </summary> /// </summary>
public void CreateEmployeeBonusModule(int GroupId,string startDate="") public void CreateEmployeeBonusModule(int GroupId,string sDate="")
{ {
DateTime d1 = DateTime.Now; DateTime d1 = DateTime.Now;
if (!string.IsNullOrEmpty(startDate)) if (!string.IsNullOrEmpty(sDate))
{ {
var tempDate = Convert.ToDateTime(startDate); var tempDate = Convert.ToDateTime(sDate);
d1 = new DateTime(tempDate.Year, tempDate.Month, 1); d1 = new DateTime(tempDate.Year, tempDate.Month, 1);
} }
else else
{ {
d1 = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1); d1 = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1);
} }
string startDate = Common.ConvertHelper.FormatDate(d1);
DateTime endTime = d1.AddMonths(1).AddDays(-1); DateTime endTime = d1.AddMonths(1).AddDays(-1);
int CurrentYear = endTime.Year;
int CurrentMonth = endTime.Month;
string endDate = Common.ConvertHelper.FormatDate(endTime); string endDate = Common.ConvertHelper.FormatDate(endTime);
//人头配置列表 //人头配置列表
var planList = bonus_PlanRepository.GetBounsPlanListRepository(new RB_Bonus_PlanExtend() var planList = bonus_PlanRepository.GetBounsPlanListRepository(new RB_Bonus_PlanExtend()
{ {
...@@ -78,71 +83,115 @@ namespace Edu.Module.Course ...@@ -78,71 +83,115 @@ namespace Edu.Module.Course
var saleList = Common.ConvertHelper.StringToList(item.SaleIds); var saleList = Common.ConvertHelper.StringToList(item.SaleIds);
foreach (var saleId in saleList) foreach (var saleId in saleList)
{ {
CalcPersionBonusModule(item, GroupId, endDate, saleId, CurrentYear, CurrentMonth); CalcPersionBonusModule(item, GroupId, startDate, endDate, saleId);
} }
} }
} }
/// <summary> /// <summary>
/// 计算人员业绩 /// 订单退款变更
/// </summary> /// </summary>
/// <param name="item"></param> public void ChangeEmployeeBonusModule(int orderId)
/// <param name="GroupId"></param> {
/// <param name="endDate"></param> //待冲抵金额
/// <param name="saleId"></param> decimal deductionMoney = 0;
/// <param name="CurrentYear"></param> var orderModel = orderRepository.GetEntity(orderId);
/// <param name="CurrentMonth"></param> if (orderModel != null)
/// <param name="isCalcReduce">true-计算抵扣,false-不计算</param>
private void CalcPersionBonusModule(RB_Bonus_PlanExtend item, int GroupId, string endDate, int saleId,int CurrentYear, int CurrentMonth, bool isCalcReduce = false)
{ {
var orderList = GetSaleOrderList(item, GroupId, endDate, saleId, out List<RB_Order_ViewModel> allOrderList);
var curNum = orderList?.Where(qitem => qitem.Year == CurrentYear && qitem.Month == CurrentMonth)?.Sum(qitem => qitem.GuestNum) ?? 0;
var curOrderMoney = orderList?.Where(qitem => qitem.Year == CurrentYear && qitem.Month == CurrentMonth)?.Sum(qitem => qitem.OrderMoney) ?? 0;
int DeductionNum = 0;
decimal DeductionMoney = 0;
//查询销售已发放的奖励 //查询销售已发放的奖励
var saleBonusList = personnel_BonusRepository.GetPersonnelBonusListRepository(new RB_Personnel_Bonus_Extend() var saleBonusList = personnel_BonusRepository.GetPersonnelBonusListRepository(new RB_Personnel_Bonus_Extend()
{ {
EmployeeId = saleId, EmployeeId = orderModel.EnterID,
RewardType=item.PlanType, YearNum=orderModel.CreateTime.Year,
MonthNum=orderModel.CreateTime.Month,
}); });
if (saleBonusList != null && saleBonusList.Count > 0)
{
//人头配置列表
var planList = bonus_PlanRepository.GetBounsPlanListRepository(new RB_Bonus_PlanExtend()
{
Group_Id = orderModel.Group_Id
}, isGetDetail: true);
//计算抵扣 foreach (var sItem in saleBonusList)
foreach (var bItem in saleBonusList)
{ {
//查询此月份的订单列表 var planModel = planList?.Where(qitem => qitem.Id == sItem.PlanId)?.FirstOrDefault();
var curMonthOrderList = allOrderList?.Where(qitem => qitem.CreateTime.Year == bItem.YearNum && qitem.CreateTime.Month == bItem.MonthNum)?.ToList(); foreach (var dItem in sItem.DetailList)
foreach (var dItem in bItem.DetailList)
{ {
Dictionary<string, object> detailFileds = new Dictionary<string, object>(); Dictionary<string, object> detailFileds = new Dictionary<string, object>();
detailFileds.Clear(); detailFileds.Clear();
var tempCurMonthOrder = curMonthOrderList?.FirstOrDefault(qitem => qitem.OrderId == dItem.OrderId); var tempCurMonthOrder = orderModel;
if (dItem.OrderState != (tempCurMonthOrder?.OrderState)) if (dItem.OrderState != (tempCurMonthOrder?.OrderState))
{ {
var newMoney = tempCurMonthOrder.Income - tempCurMonthOrder.Refund - tempCurMonthOrder.PlatformTax; var newMoney = tempCurMonthOrder.Income - tempCurMonthOrder.Refund - tempCurMonthOrder.PlatformTax;
dItem.OrderGuestNum = 0;
dItem.OrderMoney = newMoney;
detailFileds.Add(nameof(RB_Personnel_BonusDetail_Extend.OrderGuestNum), 0); detailFileds.Add(nameof(RB_Personnel_BonusDetail_Extend.OrderGuestNum), 0);
detailFileds.Add(nameof(RB_Personnel_BonusDetail_Extend.OrderMoney), newMoney); detailFileds.Add(nameof(RB_Personnel_BonusDetail_Extend.OrderMoney), newMoney);
string _log1 = $"订单号【{dItem.OrderId}】的订单状态由:{dItem.OrderState.ToName()}=>{tempCurMonthOrder?.OrderState.ToName()}" + string _log1 = $"订单号【{dItem.OrderId}】的订单状态由:{dItem.OrderState.ToName()}=>{tempCurMonthOrder?.OrderState.ToName()}" +
$"订单人数由:{dItem.OrderGuestNum}=>0,订单金额由:{dItem.OrderMoney}=>{newMoney}" $"订单人数由:{dItem.OrderGuestNum}=>0,订单金额由:{dItem.OrderMoney}=>{newMoney}"
; ;
personnel_BonusLogRepository.AddPersonnelBonusLogRepository(bItem.Id, 1, dItem.OrderId, _log1); personnel_BonusLogRepository.AddPersonnelBonusLogRepository(sItem.Id, 1, dItem.OrderId, _log1);
} }
if (detailFileds != null && detailFileds.Count > 0) if (detailFileds != null && detailFileds.Count > 0)
{ {
personnel_BonusDetailRepository.Update(detailFileds, new WhereHelper(nameof(RB_Personnel_BonusDetail_Extend.Id), dItem.Id)); personnel_BonusDetailRepository.Update(detailFileds, new WhereHelper(nameof(RB_Personnel_BonusDetail_Extend.Id), dItem.Id));
} }
} }
var sumNum = sItem?.DetailList?.Sum(qitem => qitem.OrderGuestNum) ?? 0;
var sumOrderMoney = sItem?.DetailList?.Sum(qitem => qitem.OrderMoney);
var curRewardMoney = GetStepAwardAmount(planModel, sumNum);
deductionMoney = sItem.CurRewardMoney - curRewardMoney;
//修改已发放
string _bonusLog = $"订单号变更: 由:{sItem.CurGuestNum}=>{sumNum},订单完成金额由:{sItem.CurOrderMoney}=>{sumOrderMoney}"
+ $"奖励金额由:{sItem.CurRewardMoney}=>{curRewardMoney}"
;
Dictionary<string, object> bonusFileds = new Dictionary<string, object>()
{
{nameof(RB_Personnel_Bonus.CurGuestNum),sumNum },
{nameof(RB_Personnel_Bonus.CurOrderMoney),sumOrderMoney },
{nameof(RB_Personnel_Bonus.DeductionMoney),deductionMoney },
{nameof(RB_Personnel_Bonus.IsReach),(sumOrderMoney>planModel.MonthGoalMoney?1:0) },
};
personnel_BonusRepository.Update(bonusFileds, new WhereHelper(nameof(RB_Personnel_Bonus.Id), sItem.Id));
personnel_BonusLogRepository.AddPersonnelBonusLogRepository(sItem.Id, 1, 0, _bonusLog);
}
}
}
} }
/// <summary>
/// 计算人员业绩
/// </summary>
/// <param name="item"></param>
/// <param name="GroupId"></param>
/// <param name="endDate"></param>
/// <param name="saleId"></param>
private void CalcPersionBonusModule(RB_Bonus_PlanExtend item, int GroupId,string startDate,string endDate, int saleId)
{
var orderList = GetSaleOrderList(item, GroupId, endDate, saleId, out List<RB_Order_ViewModel> allOrderList);
var curNum = orderList?.Sum(qitem => qitem.GuestNum) ?? 0;
var curOrderMoney = orderList?.Sum(qitem => qitem.OrderMoney) ?? 0;
//查询未平账的人员
var saleBonusList = personnel_BonusRepository.GetPersonnelBonusListRepository(new RB_Personnel_Bonus_Extend()
{
EmployeeId = saleId,
PlanType=item.PlanType,
IsNoBalance=1,
});
var chaE = saleBonusList?.Sum(qitem => qitem.DeductionMoney - qitem.FinishDeductionMoney) ?? 0;
decimal DeductionMoney = 0;
var stuModel= studentRepository.GetStudentStaticRepository(saleId.ToString(), startDate, endDate)?.FirstOrDefault();
//新增当月的人头奖励 //新增当月的人头奖励
var pModel = new RB_Personnel_Bonus() var pModel = new RB_Personnel_Bonus()
{ {
Id = 0, Id = 0,
RewardType = item.PlanType, PlanId = item.Id,
YearNum = CurrentYear, PlanType = item.PlanType,
MonthNum = CurrentMonth, YearNum = Convert.ToDateTime(startDate).Year,
MonthNum = Convert.ToDateTime(startDate).Month,
EmployeeId = saleId, EmployeeId = saleId,
CurGuestNum = curNum, CurGuestNum = curNum,
CurOrderMoney = curOrderMoney, CurOrderMoney = curOrderMoney,
...@@ -152,14 +201,30 @@ namespace Edu.Module.Course ...@@ -152,14 +201,30 @@ namespace Edu.Module.Course
CreateTime = DateTime.Now, CreateTime = DateTime.Now,
UpdateBy = 1, UpdateBy = 1,
UpdateTime = DateTime.Now, UpdateTime = DateTime.Now,
DeductionNum= DeductionNum, DeductionMoney = DeductionMoney,
DeductionMoney= DeductionMoney, BasicSalary = item.BasicSalary,
OpenBonus = curNum > 0 ? item.OpenBonus : 0,
WorkAgeSalary = item.WorkAgeSalary,
ClueNumSalary = stuModel?.ClueCount > 5 ? item.ClueNumSalary : 0
}; };
pModel.IsReach = pModel.CurOrderMoney > item.MonthGoalMoney ? 1 : 0; pModel.IsReach = pModel.CurOrderMoney > item.MonthGoalMoney ? 1 : 0;
var totalMoney = (pModel.BasicSalary + pModel.OpenBonus + pModel.WorkAgeSalary + pModel.ClueNumSalary);
if (totalMoney >= chaE)
{
pModel.BeforeMoney = chaE;
}
else
{
pModel.BeforeMoney = totalMoney;
}
//写抵扣记录表信息
if (pModel.BeforeMoney > 0)
{
}
var newId = personnel_BonusRepository.Insert(pModel); var newId = personnel_BonusRepository.Insert(pModel);
pModel.Id = newId; pModel.Id = newId;
foreach (var oItem in allOrderList.Where(qitem=>qitem.CreateTime.Year==CurrentYear&&qitem.CreateTime.Month==CurrentMonth)) foreach (var oItem in allOrderList)
{ {
var detailModel = new RB_Personnel_BonusDetail() var detailModel = new RB_Personnel_BonusDetail()
{ {
...@@ -211,7 +276,7 @@ namespace Edu.Module.Course ...@@ -211,7 +276,7 @@ namespace Edu.Module.Course
{ {
List<PersionOrderItem> list = new List<PersionOrderItem>(); List<PersionOrderItem> list = new List<PersionOrderItem>();
//所有当前人员订单列表 //所有当前人员订单列表
orderList = orderRepository.GetAllBonusOrderListRepository(GroupId, endDate, SaleId); orderList = orderRepository.GetAllBonusOrderListRepository(GroupId, endDate, item.PlanType, SaleId);
//适用课程 //适用课程
if (!string.IsNullOrEmpty(item.UseCourseIds)) if (!string.IsNullOrEmpty(item.UseCourseIds))
{ {
......
using Edu.Cache.User; using Edu.Cache.User;
using Edu.Common.Enum; using Edu.Common.Enum;
using Edu.Common.Enum.Customer;
using Edu.Common.Plugin; using Edu.Common.Plugin;
using Edu.Model.CacheModel; using Edu.Model.CacheModel;
using Edu.Model.ViewModel.Customer; using Edu.Model.ViewModel.Customer;
...@@ -146,6 +147,9 @@ namespace Edu.Module.Customer ...@@ -146,6 +147,9 @@ namespace Edu.Module.Customer
else else
{ {
model.CustomerState = Common.Enum.Customer.CustomerStateEnum.Normal; model.CustomerState = Common.Enum.Customer.CustomerStateEnum.Normal;
model.ApproveState = 1;
model.ApproveId = 1;
model.ApproveTime = DateTime.Now;
model.Password = Common.DES.Encrypt(Common.Config.DefaultPwd); model.Password = Common.DES.Encrypt(Common.Config.DefaultPwd);
var newId = customerRepository.Insert(model); var newId = customerRepository.Insert(model);
model.CustomerId = newId; model.CustomerId = newId;
...@@ -216,6 +220,7 @@ namespace Edu.Module.Customer ...@@ -216,6 +220,7 @@ namespace Edu.Module.Customer
{nameof(RB_Customer_Extend.ApproveContent),model.ApproveContent}, {nameof(RB_Customer_Extend.ApproveContent),model.ApproveContent},
{nameof(RB_Customer_Extend.ApproveId),model.ApproveId}, {nameof(RB_Customer_Extend.ApproveId),model.ApproveId},
{nameof(RB_Customer_Extend.ApproveTime),model.ApproveTime}, {nameof(RB_Customer_Extend.ApproveTime),model.ApproveTime},
{nameof(RB_Customer_Extend.CustomerState),(int)CustomerStateEnum.Normal},
}; };
var flag = customerRepository.Update(fileds, new WhereHelper(nameof(RB_Customer_Extend.CustomerId), model.CustomerId)); var flag = customerRepository.Update(fileds, new WhereHelper(nameof(RB_Customer_Extend.CustomerId), model.CustomerId));
return flag; return flag;
......
...@@ -85,9 +85,13 @@ WHERE 1=1 ...@@ -85,9 +85,13 @@ WHERE 1=1
{ {
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Personnel_Bonus_Extend.EmployeeId), query.EmployeeId); builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Personnel_Bonus_Extend.EmployeeId), query.EmployeeId);
} }
if (query.RewardType > 0) if (query.PlanType > 0)
{ {
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Personnel_Bonus_Extend.RewardType), query.RewardType); builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Personnel_Bonus_Extend.PlanType), query.PlanType);
}
if (query.IsNoBalance == 1)
{
builder.AppendFormat(" AND A.DeductionMoney<>A.FinishDeductionMoney ");
} }
} }
var list= Get<RB_Personnel_Bonus_Extend>(builder.ToString()).ToList(); var list= Get<RB_Personnel_Bonus_Extend>(builder.ToString()).ToList();
......
...@@ -1182,7 +1182,7 @@ group by o.OrderId ...@@ -1182,7 +1182,7 @@ group by o.OrderId
/// <param name="group_Id">集团编号</param> /// <param name="group_Id">集团编号</param>
/// <param name="eDate">结束日期</param> /// <param name="eDate">结束日期</param>
/// <returns></returns> /// <returns></returns>
public List<RB_Order_ViewModel> GetAllBonusOrderListRepository(int group_Id, string eDate,int SaleId) public List<RB_Order_ViewModel> GetAllBonusOrderListRepository(int group_Id, string eDate,int PlanType,int SaleId)
{ {
StringBuilder builder = new StringBuilder(); StringBuilder builder = new StringBuilder();
builder.AppendFormat(@" builder.AppendFormat(@"
...@@ -1193,6 +1193,7 @@ WHERE 1=1 ...@@ -1193,6 +1193,7 @@ WHERE 1=1
builder.AppendFormat(" AND o.OrderState IN({0},{1}) ", (int)OrderStateEnum.Normal, (int)OrderStateEnum.DropOut); builder.AppendFormat(" AND o.OrderState IN({0},{1}) ", (int)OrderStateEnum.Normal, (int)OrderStateEnum.DropOut);
builder.AppendFormat(" AND o.{0}={1} ", nameof(RB_Order_ViewModel.OrderType), (int)OrderTypeEnum.CourseOrder); builder.AppendFormat(" AND o.{0}={1} ", nameof(RB_Order_ViewModel.OrderType), (int)OrderTypeEnum.CourseOrder);
builder.AppendFormat(" AND o.CreateTime >= '2021-11-01' "); builder.AppendFormat(" AND o.CreateTime >= '2021-11-01' ");
builder.AppendFormat(" AND o.OrderId NOT IN(SELECT B.OrderId FROM rb_personnel_bonus AS A INNER JOIN rb_personnel_bonusdetail AS B ON A.Id=B.BonusId WHERE A.PlanType={0} AND A.EmployeeId ={1}) ", PlanType, SaleId);
//帐平 //帐平
builder.AppendFormat(" AND o.PreferPrice = (o.Income - o.Refund + o.DiscountMoney + o.PlatformTax) "); builder.AppendFormat(" AND o.PreferPrice = (o.Income - o.Refund + o.DiscountMoney + o.PlatformTax) ");
if (group_Id > 0) if (group_Id > 0)
......
...@@ -469,7 +469,7 @@ FROM ...@@ -469,7 +469,7 @@ FROM
StringBuilder builder = new StringBuilder(); StringBuilder builder = new StringBuilder();
builder.AppendFormat(@" builder.AppendFormat(@"
SELECT ar.AccountRemark,A.Id,A.Account,A.AccountId,A.WorkUserId,A.Group_Id,A.School_Id,A.EmployeeName,A.UserIcon,A.IDCard,A.Sex,A.Education,A.EntryTime,A.Address,A.BirthDate SELECT ar.AccountRemark,A.Id,A.Account,A.Password,A.AccountId,A.WorkUserId,A.Group_Id,A.School_Id,A.EmployeeName,A.UserIcon,A.IDCard,A.Sex,A.Education,A.EntryTime,A.Address,A.BirthDate
,A.LeaveStatus,A.LeaveTime,A.EmployeeTel,A.AccountType,A.Email,A.BaseHourFee,A.BaseHoursEnabled,A.EnableTime,IFNULL(A.DirectSupervisor,0) AS DirectSupervisor ,A.LeaveStatus,A.LeaveTime,A.EmployeeTel,A.AccountType,A.Email,A.BaseHourFee,A.BaseHoursEnabled,A.EnableTime,IFNULL(A.DirectSupervisor,0) AS DirectSupervisor
,IFNULL(G.GroupName,'') AS GroupName,IFNULL(s.SName,'') AS SchoolName ,IFNULL(G.GroupName,'') AS GroupName,IFNULL(s.SName,'') AS SchoolName
,IFNULL(d.DeptId,0) AS Dept_Id,IFNULL(d.DeptName,'') AS DeptName,IFNULL(p.PostId,0) AS Post_Id, IFNULL(p.PostName,'') AS PostName ,IFNULL(d.DeptId,0) AS Dept_Id,IFNULL(d.DeptName,'') AS DeptName,IFNULL(p.PostId,0) AS Post_Id, IFNULL(p.PostName,'') AS PostName
......
...@@ -715,5 +715,22 @@ WHERE 1=1 ...@@ -715,5 +715,22 @@ WHERE 1=1
} }
return Get<RB_Student_ViewModel>(builder.ToString(), parameters)?.FirstOrDefault(); return Get<RB_Student_ViewModel>(builder.ToString(), parameters)?.FirstOrDefault();
} }
/// <summary>
/// 线索统计
/// </summary>
/// <returns></returns>
public List<RB_Student_ViewModel> GetStudentStaticRepository(string createByIds,string startDate,string endDate)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT CreateBy,Count(1) AS ClueCount
FROM RB_Student
WHERE Status=0 AND CreateBy IN({0}) and CreateTime>='{1}' and CreateTime<='{2} 23:59:59'
", createByIds, startDate, endDate);
var list = Get<RB_Student_ViewModel>(builder.ToString()).ToList();
return list;
}
} }
} }
\ No newline at end of file
...@@ -34,6 +34,11 @@ namespace Edu.WebApi.Controllers.Third ...@@ -34,6 +34,11 @@ namespace Edu.WebApi.Controllers.Third
/// </summary> /// </summary>
private readonly SellAchievementsModule sellAchievementsModule = new SellAchievementsModule(); private readonly SellAchievementsModule sellAchievementsModule = new SellAchievementsModule();
/// <summary>
/// 员工人头奖励处理类
/// </summary>
private readonly EmployeeBonusModule employeeBonusModule = new EmployeeBonusModule();
/// <summary> /// <summary>
/// 根部部门层级获取部门主管 /// 根部部门层级获取部门主管
/// </summary> /// </summary>
...@@ -162,6 +167,7 @@ namespace Edu.WebApi.Controllers.Third ...@@ -162,6 +167,7 @@ namespace Edu.WebApi.Controllers.Third
if (Refund > 0) { if (Refund > 0) {
//是退款 检验订单是否会影响 业绩提成 //是退款 检验订单是否会影响 业绩提成
System.Threading.Tasks.Task.Run(() => sellAchievementsModule.ValidataAchievements(OrderId)); System.Threading.Tasks.Task.Run(() => sellAchievementsModule.ValidataAchievements(OrderId));
System.Threading.Tasks.Task.Run(() => employeeBonusModule.ChangeEmployeeBonusModule(OrderId));
} }
return ApiResult.Success(); return ApiResult.Success();
} }
......
...@@ -64,6 +64,17 @@ namespace Edu.WebApi.Controllers.User ...@@ -64,6 +64,17 @@ namespace Edu.WebApi.Controllers.User
return ApiResult.Success(); return ApiResult.Success();
} }
[HttpGet]
[HttpPost]
[AllowAnonymous]
public ApiResult ChenageOrder()
{
var OrderId = base.ParmJObj.GetInt("OrderId");
employeeBonusModule.ChangeEmployeeBonusModule(OrderId);
return ApiResult.Success();
}
/// <summary> /// <summary>
/// 用户登录 /// 用户登录
/// </summary> /// </summary>
......
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