Commit 936a73e0 authored by liudong1993's avatar liudong1993

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

parents 71cd7556 ba8102c8
using Edu.Model.Entity.Bonus;
using Edu.Common.Plugin;
using Edu.Model.Entity.Bonus;
using System;
using System.Collections.Generic;
using System.Text;
......@@ -14,5 +15,10 @@ namespace Edu.Model.ViewModel.Bonus
/// 奖励主表编号【查询使用】
/// </summary>
public string QBonusIds { get; set; }
/// <summary>
/// 订单状态字符串
/// </summary>
public string OrderStateName { get { return this.OrderState.ToName(); } }
}
}
......@@ -39,6 +39,11 @@ namespace Edu.Model.ViewModel.Bonus
/// 期数编号【查询使用】
/// </summary>
public string QPeriodIds { get; set; }
/// <summary>
/// 员工姓名
/// </summary>
public string EmployeeName { get; set; }
}
/// <summary>
......
......@@ -10,5 +10,9 @@ namespace Edu.Model.ViewModel.Bonus
/// </summary>
public class RB_Personnel_Period_Extend : RB_Personnel_Period
{
/// <summary>
/// 提成数据
/// </summary>
public List<RB_Personnel_Bonus_Extend> BonusList { get; set; }
}
}
......@@ -103,5 +103,15 @@ namespace Edu.Model.ViewModel.Customer
/// 查询创建人
/// </summary>
public int QCreateBy { get; set; }
/// <summary>
/// 查询日期
/// </summary>
public string QDate { get; set; }
/// <summary>
/// 同行数量
/// </summary>
public int CustomerCount { get; set; }
}
}
......@@ -10,5 +10,14 @@ namespace Edu.Model.ViewModel.Customer
/// </summary>
public class RB_Student_Appointment_Extend: RB_Student_Appointment
{
/// <summary>
/// 查询日期
/// </summary>
public string QueryDate { get; set; }
/// <summary>
/// 约访次数
/// </summary>
public int AppointmentCount { get; set; }
}
}
......@@ -155,5 +155,10 @@ namespace Edu.Model.ViewModel.Reserve
/// 试听次数
/// </summary>
public int TrialLessonCount { get; set; }
/// <summary>
/// 查询日期
/// </summary>
public string QDate { get; set; }
}
}
......@@ -273,5 +273,16 @@ namespace Edu.Model.ViewModel.Sell
/// 学习目的
/// </summary>
public string LearningGoalsName { get; set; }
/// <summary>
/// QQ号码
/// </summary>
public string QQ { get; set; }
/// <summary>
/// 微信号
/// </summary>
public string WeChatNo { get; set; }
}
}
\ No newline at end of file
......@@ -12,6 +12,9 @@ using VT.FW.DB;
using Edu.Repository.User;
using Edu.Model.CacheModel;
using Edu.AOP.CustomerAttribute;
using Edu.Model.ViewModel.User;
using Edu.Repository.Finance;
using Edu.Model.ViewModel.Finance;
namespace Edu.Module.Course
{
......@@ -60,6 +63,16 @@ namespace Edu.Module.Course
/// </summary>
private readonly RB_Personnel_PeriodRepository personnel_PeriodRepository = new RB_Personnel_PeriodRepository();
/// <summary>
/// 人员账号仓储层对象
/// </summary>
private readonly RB_AccountRepository accountRepository = new RB_AccountRepository();
/// <summary>
/// 财务单据
/// </summary>
private readonly RB_FinanceRepository financeRepository = new RB_FinanceRepository();
/// <summary>
/// 获取人头奖金期数分页列表
......@@ -79,10 +92,34 @@ namespace Edu.Module.Course
{
QPeriodIds = ids
});
List<Employee_ViewModel> empList = new List<Employee_ViewModel>();
if (bonusList != null && bonusList.Count > 0)
{
string empIds = string.Join(",", bonusList.Select(qitem => qitem.EmployeeId));
empList = accountRepository.GetEmployeeListRepository(new Employee_ViewModel()
{
QIds = empIds
});
}
string periodsIds = string.Join(",", list.Select(x => x.Id));
var financeList = financeRepository.GetListSingle(new RB_Finance_Extend() { RB_Group_Id = query.Group_Id, FinanceType = 2, OtherType = 51, ReFinanceIds = ids, IsSelectNormal = 1 });
foreach (var item in list)
{
item.SumPrice = bonusList?.Where(qitem => qitem.PeriodId == item.Id)
?.Sum(qitem => qitem.CurRewardMoney+qitem.ClueNumSalary+qitem.OpenBonus-qitem.BeforeMoney)??0;
var flist = financeList.Where(x => x.ReFinanceId == item.Id).Select(x => x.FrID);
if (flist.Any())
{
item.Financials = string.Join(",", flist);
}
var tempList = bonusList?.Where(qitem => qitem.PeriodId == item.Id)?.ToList();
if (tempList != null && tempList.Count > 0)
{
foreach (var subItem in tempList)
{
subItem.EmployeeName = empList?.Where(qitem => qitem.Id == subItem.EmployeeId)?.FirstOrDefault()?.EmployeeName ?? "";
}
}
item.SumPrice = tempList?.Sum(qitem => qitem.CurRewardMoney + qitem.ClueNumSalary + qitem.OpenBonus - qitem.BeforeMoney) ?? 0;
item.BonusList = tempList;
}
}
return list;
......@@ -99,10 +136,10 @@ namespace Edu.Module.Course
public List<RB_Personnel_Bonus_Extend> GetPersonnelBonusPageModule(int pageIndex, int pageSize, out long rowsCount, RB_Personnel_Bonus_Extend query)
{
var list = personnel_BonusRepository.GetPersonnelBonusPageRepository(pageIndex, pageSize, out rowsCount, query);
if (list != null&&list.Count>0)
if (list != null && list.Count > 0)
{
string Ids = string.Join(",", list.Select(qitem => qitem.Id));
var detailList= personnel_BonusDetailRepository.GetPersonnelBonusDetailListRepository(new RB_Personnel_BonusDetail_Extend()
var detailList = personnel_BonusDetailRepository.GetPersonnelBonusDetailListRepository(new RB_Personnel_BonusDetail_Extend()
{
QBonusIds = Ids
});
......@@ -366,9 +403,9 @@ namespace Edu.Module.Course
});
}
pModel.HisBonusData = Common.Plugin.JsonHelper.Serialize(CurrentMonthBonusData);
//当月总业绩
var totalMoney = (pModel.CurRewardMoney + pModel.OpenBonus + pModel.ClueNumSalary);
var totalMoney = (pModel.CurRewardMoney + pModel.OpenBonus + pModel.ClueNumSalary);
if (totalMoney >= chaE)
{
pModel.BeforeMoney = chaE;
......@@ -408,7 +445,7 @@ namespace Edu.Module.Course
personnel_BonusLogRepository.AddPersonnelBonusLogRepository(sItem.Id, 1, 0, logContent);
//添加本月的日志
string logContent2= "抵扣"+sItem.YearNum + "年" + sItem.MonthNum + "月, 人头奖励" + sItem.DeductionMoney;
string logContent2 = "抵扣" + sItem.YearNum + "年" + sItem.MonthNum + "月, 人头奖励" + sItem.DeductionMoney;
personnel_BonusLogRepository.AddPersonnelBonusLogRepository(pModel.Id, 1, 0, logContent2);
tempChaE -= sItem.DeductionMoney;
}
......@@ -439,7 +476,7 @@ namespace Edu.Module.Course
}
}
}
foreach (var oItem in allOrderList)
{
var detailModel = new RB_Personnel_BonusDetail()
......@@ -526,6 +563,134 @@ namespace Edu.Module.Course
}
return list;
}
/// <summary>
/// 获取首页员工人头奖励统计
/// </summary>
/// <param name="EmpId">员工编号</param>
/// <param name="Type">1-月度统计,2-年度统计</param>
/// <param name="Year">年份</param>
/// <param name="Month">月份</param>
/// <returns></returns>
public EmpStaticItem GetEmpBonusStaticModule(UserInfo user, int Type, int Year, int Month)
{
EmpStaticItem empItem = new EmpStaticItem();
int CurrentYear = DateTime.Now.Year;
int CurrentMonth = DateTime.Now.Month;
//月度统计
if (Type == 1)
{
//当月
if (Year == CurrentYear && Month == CurrentMonth)
{
DateTime d1 = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1);
string startDate = Common.ConvertHelper.FormatDate(d1);
DateTime endTime = d1.AddMonths(1).AddDays(-1);
//人头配置列表
var planList = bonus_PlanRepository.GetBounsPlanListRepository(new RB_Bonus_PlanExtend()
{
Group_Id = user.Group_Id
}, isGetDetail: true);
if (planList != null && planList.Count > 0)
{
foreach (var item in planList)
{
var saleList = Common.ConvertHelper.StringToList(item.SaleIds);
foreach (var saleId in saleList)
{
if (saleId == user.Id)
{
string endDate = Common.ConvertHelper.FormatDate(endTime);
var orderList = GetSaleOrderList(item, user.Group_Id, endDate, saleId, out List<RB_Order_ViewModel> allOrderList);
empItem.GuestNum = orderList?.Sum(qitem => qitem.GuestNum) ?? 0;
empItem.OrderCount = allOrderList?.Count() ?? 0;
empItem.ReachCount = item.MonthGoalMoney > (orderList?.Sum(qitem => qitem.OrderMoney) ?? 0) ? 1 : 0;
}
}
}
}
}
else
{
var list = personnel_BonusRepository.GetPersonnelBonusListRepository(new RB_Personnel_Bonus_Extend()
{
EmployeeId = user.Id,
YearNum = Year,
MonthNum = Month
}, isGetDetail: true);
empItem.BonusMoney = list?.Sum(qitem => qitem.CurRewardMoney + qitem.ClueNumSalary + qitem.OpenBonus - qitem.BeforeMoney) ?? 0;
empItem.GuestNum = list?.Sum(qitem => qitem.CurGuestNum) ?? 0;
empItem.OrderCount = list?.Sum(qitem => qitem?.DeductionList?.Count) ?? 0;
empItem.ReachCount = list?.FirstOrDefault()?.IsReach ?? 0;
if (list != null && list.Count > 0)
{
//历史人头提成方案
var hisModel = Common.Plugin.JsonHelper.DeserializeObject<CurrentMonthBonusData>(list?.FirstOrDefault()?.HisBonusData);
empItem.NextGoal = "";
empItem.NextBonus = 0;
}
}
}
//年度统计
else
{
var list = personnel_BonusRepository.GetPersonnelBonusListRepository(new RB_Personnel_Bonus_Extend()
{
EmployeeId = user.Id,
YearNum = Year,
}, isGetDetail: true);
empItem.BonusMoney = list?.Sum(qitem => qitem.CurRewardMoney + qitem.ClueNumSalary + qitem.OpenBonus - qitem.BeforeMoney) ?? 0;
empItem.GuestNum = list?.Sum(qitem => qitem.CurGuestNum) ?? 0;
empItem.OrderCount = list?.Sum(qitem => qitem?.DeductionList?.Count) ?? 0;
empItem.ReachCount = list?.Where(qitem => qitem.IsReach == 1)?.Count() ?? 0;
}
return empItem;
}
/// <summary>
/// 获取下一个目标
/// </summary>
public void GetNextGoal()
{
}
}
/// <summary>
/// 员工人头奖励统计
/// </summary>
public class EmpStaticItem
{
/// <summary>
/// 奖金
/// </summary>
public decimal BonusMoney { get; set; }
/// <summary>
/// 开单数量
/// </summary>
public int OrderCount { get; set; }
/// <summary>
/// 名单人数
/// </summary>
public int GuestNum { get; set; }
/// <summary>
/// 是否达到月度业绩目标
/// </summary>
public int ReachCount { get; set; }
/// <summary>
/// 下一个目标字符串
/// </summary>
public string NextGoal { get; set; }
/// <summary>
/// 下一个目标奖励
/// </summary>
public decimal NextBonus { get; set; }
}
/// <summary>
......
......@@ -1107,7 +1107,9 @@ namespace Edu.Module.Course
MakeUpHours = 0,
StuIcon = item.StuIcon,
TotalHours = Convert.ToInt32(courseModel.ClassHours),
RenewState = item.IsRenewGuest == 1 ? 2 : 1
RenewState = item.IsRenewGuest == 1 ? 2 : 1,
QQ=item.QQ,
WeChatNo=item.WeChatNo,
};
SetOrderGuestInfo(guestModel, out string Nmessage);
......@@ -2472,14 +2474,37 @@ namespace Edu.Module.Course
}
#region 新增修改学员账号
if (flag &&!string.IsNullOrEmpty(dmodel.Mobile))
if (flag )
{
//学员表
var stuModel = studentRepository.GetStuByTelRepository(new RB_Student_ViewModel()
RB_Student_ViewModel stuModel = null;
if (!string.IsNullOrEmpty(dmodel.Mobile))
{
Group_Id = dmodel.Group_Id,
StuTel = dmodel.Mobile
});
//学员表
stuModel = studentRepository.GetStuByTelRepository(new RB_Student_ViewModel()
{
Group_Id = dmodel.Group_Id,
StuTel = dmodel.Mobile
});
}
if (stuModel == null && !string.IsNullOrEmpty(dmodel.QQ))
{
//学员表
stuModel = studentRepository.GetStuByTelRepository(new RB_Student_ViewModel()
{
Group_Id = dmodel.Group_Id,
QQ = dmodel.QQ
});
}
if (stuModel == null && !string.IsNullOrEmpty(dmodel.WeChatNo))
{
//学员表
stuModel = studentRepository.GetStuByTelRepository(new RB_Student_ViewModel()
{
Group_Id = dmodel.Group_Id,
WeChatNo = dmodel.WeChatNo
});
}
//不存在存在学员基本信息
if (stuModel == null)
{
......
......@@ -101,7 +101,8 @@ namespace Edu.Module.Customer
{nameof(RB_Customer_Extend.WeChatNo),model.WeChatNo },
};
flag = customerRepository.Update(fileds, new WhereHelper(nameof(RB_Customer_Extend.CustomerId), model.CustomerId));
if (flag) {
if (flag)
{
#region 操作记录
string LogContent = "后台修改同业信息:";
if (oldModel.CustomerName != model.CustomerName)
......@@ -112,6 +113,19 @@ namespace Edu.Module.Customer
{
LogContent += "电话由'" + oldModel.ContactNumber + "'修改为'" + model.ContactNumber + "';";
}
if (oldModel.Fax != model.Fax)
{
LogContent += "传真由'" + oldModel.Fax + "'修改为'" + model.Fax + "';";
}
if (oldModel.QQ != model.QQ)
{
LogContent += "QQ由'" + oldModel.QQ + "'修改为'" + model.QQ + "';";
}
if (oldModel.Email != model.Email)
{
LogContent += "邮箱由'" + oldModel.Email + "'修改为'" + model.Email + "';";
}
if (oldModel.Address != model.Address)
{
LogContent += "地址由'" + oldModel.Address + "'修改为'" + model.Address + "';";
......@@ -128,7 +142,10 @@ namespace Edu.Module.Customer
{
LogContent += "类型由'" + (oldModel.CustomerType == 1 ? "企业" : "学校") + "'修改为'" + (model.CustomerType == 1 ? "企业" : "学校") + "';";
}
if (oldModel.WeChatNo != model.WeChatNo)
{
LogContent += "微信号由'" + oldModel.WeChatNo + "'修改为'" + model.WeChatNo + "';";
}
//记录操作日志
changeLogRepository.Insert(new Model.Entity.Log.RB_User_ChangeLog()
{
......
......@@ -43,8 +43,6 @@ namespace Edu.Module.User
/// </summary>
private readonly AccountModule accountModule = new AccountModule();
/// <summary>
/// 小程序用户仓储层对象 add by:W 2021-09-15
/// </summary>
......@@ -101,6 +99,12 @@ namespace Edu.Module.User
/// </summary>
private readonly RB_NeedsRepository needsRepository = new RB_NeedsRepository();
/// <summary>
/// 学员约访仓储层对象
/// </summary>
private readonly RB_Student_AppointmentRepository student_AppointmentRepository = new RB_Student_AppointmentRepository();
/// <summary>
/// 获取学生列表
/// </summary>
......@@ -592,20 +596,20 @@ namespace Edu.Module.User
var assistList = GetStuAssistListModule(model.StuId);
var customerModel = customerRepository.GetEntity(model.CustomerId);
string searchContent = model.StuTel;
string searchContent = model.StuTel + "(学员电话)";
if (type == 2)
{
searchContent = model.QQ;
searchContent = model.QQ + "(学员电话)";
}
if (type == 3)
{
searchContent = model.WeChatNo;
searchContent = model.WeChatNo + "(学员微信)";
}
string createByName = accountModule.GetAccountListExtModule(new RB_Account_ViewModel()
{
Id = model.CreateBy
})?.FirstOrDefault()?.AccountName ?? "";
string markdownContent = $"`同业查重通知` \n>**概要信息** \n>同业名称:{customerModel?.CustomerName ?? ""}({customerModel?.ContactNumber ?? ""})\n>查询内容:{searchContent} \n>关联学员:{model.StuName}\n>关联学员电话:{model.StuTel}\n>";
string markdownContent = $"`同业查重通知` \n>**概要信息** \n>同业名称:{customerModel?.CustomerName ?? ""}({customerModel?.ContactNumber ?? ""})\n>查询内容:{searchContent} \n>关联学员:{model.StuName}\n>";
markdownContent += $"关联同事:{ createByName}\n> ";
Common.Message.PushMessageModel modelWork = new Common.Message.PushMessageModel()
{
......@@ -647,6 +651,57 @@ namespace Edu.Module.User
{
return member_UserRepository.GetMemberUserEntityRepository(query);
}
#endregion
#endregion
/// <summary>
/// 今日新名单
/// </summary>
/// <returns></returns>
public object GetStudentTodayStaticModule(int createBy)
{
var today = Common.ConvertHelper.FormatDate(DateTime.Now);
//今日新增名单
int todayAdd = studentRepository.GetStudentStaticRepository(createBy.ToString(), today, today)?.FirstOrDefault()?.ClueCount ?? 0;
//今日到访
int todayVisit = student_VisitRepository.GetStudentVisitStaticRepository(new RB_Student_Visit_Extend() { CreateBy = createBy, QueryDate = today })?.Count() ?? 0;
//今日预约
int appointmentCount = student_AppointmentRepository.GetStudentVisitStaticRepository(new RB_Student_Appointment_Extend()
{
CreateBy = createBy,
QueryDate = today
})?.FirstOrDefault()?.AppointmentCount ?? 0;
//今日新增同行
var customerCount = customerRepository.GetCustomerStaticRepository(new RB_Customer_Extend()
{
CreateBy = createBy,
QDate = today
})?.FirstOrDefault()?.CustomerCount ?? 0;
//今日试听
var trialLessonCount = visitor_ReserveRepository.GetVisitorReserveStaticRepository(new Model.ViewModel.Reserve.RB_Visitor_Reserve_Extend()
{
CreateBy = createBy,
QDate = today
})?.FirstOrDefault()?.TrialLessonCount ?? 0;
//未沟通人数
var notCommunicateCount = studentRepository.GetStudentListRepository(new RB_Student_ViewModel()
{
CreateBy = createBy,
StuStage = 1
})?.Count();
object obj = new
{
todayAdd,
todayVisit,
appointmentCount,
customerCount,
trialLessonCount,
notCommunicateCount
};
return obj;
}
}
}
......@@ -181,5 +181,39 @@ WHERE s.`Status`=0 and s.Group_Id ={group_Id} and s.CustomerId in({customerIds})
WHERE o.OrderState in(1,2) and o.Group_Id ={group_Id} and o.CustomerId in({customerIds}) GROUP BY o.CustomerId";
return Get<RB_Customer_Extend>(sql).ToList();
}
/// <summary>
/// 同行统计
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Customer_Extend> GetCustomerStaticRepository(RB_Customer_Extend query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.CreateBy,COUNT(1) AS CustomerCount
FROM RB_Customer AS A
WHERE 1=1
");
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Customer_Extend.Status), (int)DateStateEnum.Normal);
if (query != null)
{
if (query.Group_Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Customer_Extend.Group_Id), query.Group_Id);
}
if (query.CreateBy > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Customer_Extend.CreateBy), query.CreateBy);
}
if (!string.IsNullOrEmpty(query.QDate))
{
//指定日期新增同行数量
builder.AppendFormat(" AND DATE_FORMAT(A.{0},'%y/%m/%d')= DATE_FORMAT('{1}','%y/%m/%d') ", nameof(RB_Customer_Extend.CreateTime), query.QDate);
}
}
builder.AppendFormat(@" GROUP BY A.CreateBy ");
return Get<RB_Customer_Extend>(builder.ToString()).ToList();
}
}
}
......@@ -45,5 +45,45 @@ WHERE 1=1
return GetPage<RB_Student_Appointment_Extend>(pageIndex, pageSize, out rowsCount, builder.ToString()).ToList();
}
/// <summary>
/// 获取约访统计列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Student_Appointment_Extend> GetStudentVisitStaticRepository(RB_Student_Appointment_Extend query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.CreateBy,Count(1) AS AppointmentCount
FROM RB_Student_Appointment AS A INNER JOIN rb_student AS B ON A.StuId=B.StuId
WHERE 1=1
");
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Student_Appointment_Extend.Status), (int)DateStateEnum.Normal);
if (query != null)
{
if (query.Group_Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Student_Appointment_Extend.Group_Id), query.Group_Id);
}
if (query.StuId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Student_Appointment_Extend.StuId), query.StuId);
}
if (query.CreateBy > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Student_Appointment_Extend.CreateBy), query.CreateBy);
}
if (!string.IsNullOrEmpty(query.QueryDate))
{
//指定日期的约访统计
builder.AppendFormat(" AND DATE_FORMAT(A.{0},'%y/%m/%d')= DATE_FORMAT('{1}','%y/%m/%d') ", nameof(RB_Student_Visit_Extend.CreateTime), Common.ConvertHelper.FormatDate(query.QueryDate));
}
}
builder.AppendFormat(" GROUP BY A.CreateBy ");
return Get<RB_Student_Appointment_Extend>(builder.ToString()).ToList();
}
}
}
......@@ -108,6 +108,10 @@ WHERE 1=1
{
builder.AppendFormat(" AND A.{0} IN({1}) ", nameof(RB_Student_Visit_Extend.StuId), query.QStuIds);
}
if (query.CreateBy > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Student_Visit_Extend.CreateBy), query.CreateBy);
}
if (!string.IsNullOrEmpty(query.QueryDate))
{
//今日到访
......
......@@ -254,5 +254,39 @@ WHERE 1=1
return Get<RB_Visitor_Reserve_Extend>(builder.ToString(), parameters).ToList();
}
/// <summary>
/// 试听课统计
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Visitor_Reserve_Extend> GetVisitorReserveStaticRepository(RB_Visitor_Reserve_Extend query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.CreateBy,COUNT(1) AS TrialLessonCount
FROM RB_Visitor_Reserve AS A
WHERE 1=1
");
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Visitor_Reserve_Extend.Status), (int)DateStateEnum.Normal);
if (query != null)
{
if (query.Group_Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Visitor_Reserve_Extend.Group_Id), query.Group_Id);
}
if (query.CreateBy > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Visitor_Reserve_Extend.CreateBy), query.CreateBy);
}
if (!string.IsNullOrEmpty(query.QDate))
{
//指定日期的试听课数量
builder.AppendFormat(" AND DATE_FORMAT(A.{0},'%y/%m/%d')= DATE_FORMAT('{1}','%y/%m/%d') ", nameof(RB_Visitor_Reserve_Extend.CreateTime), query.QDate);
}
}
builder.AppendFormat(@" GROUP BY A.CreateBy ");
return Get<RB_Visitor_Reserve_Extend>(builder.ToString()).ToList();
}
}
}
......@@ -115,6 +115,14 @@ WHERE 1=1
{
builder.AppendFormat(" AND t.{0} in({1}) ", nameof(RB_Student_ViewModel.StuId), query.StuIds);
}
if (query.StuStage > 0)
{
builder.AppendFormat(" AND t.{0}={1} ", nameof(RB_Student_ViewModel.StuStage), (int)query.StuStage);
}
if (query.CreateBy > 0)
{
builder.AppendFormat(" AND t.{0}={1} ", nameof(RB_Student_ViewModel.CreateBy), query.CreateBy);
}
}
return Get<RB_Student_ViewModel>(builder.ToString(), parameters).ToList();
}
......@@ -723,12 +731,12 @@ WHERE 1=1
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);
builder.AppendFormat(" GROUP BY CreateBy ");
var list = Get<RB_Student_ViewModel>(builder.ToString()).ToList();
return list;
}
......
......@@ -214,6 +214,7 @@ namespace Edu.WebApi.Controllers.Bonus
CreateByName,
item.Financials,
CreateTime = Common.ConvertHelper.FormatTime(item.CreateTime),
item.BonusList,
});
}
pageModel.Count = rowsCount;
......
......@@ -14,6 +14,7 @@ using Edu.Common.Plugin;
using Edu.Model.CacheModel;
using Edu.Model.Public;
using Edu.Model.ViewModel.User;
using Edu.Module.Course;
using Edu.Module.User;
using Edu.WebApi.Filter;
using Microsoft.AspNetCore.Authorization;
......@@ -57,6 +58,16 @@ namespace Edu.WebApi.Controllers.User
/// </summary>
private readonly AccountModule accountModule = new AccountModule();
/// <summary>
/// 学员处理类对象
/// </summary>
private readonly StudentModule studentModule = new StudentModule();
/// <summary>
/// 员工人头奖励处理类对象
/// </summary>
private readonly EmployeeBonusModule employeeBonusModule = new EmployeeBonusModule();
#region 字典管理
/// <summary>
......@@ -2474,5 +2485,34 @@ namespace Edu.WebApi.Controllers.User
return ApiResult.Success("获取成功", data: result);
}
#endregion
#region 用户中心 学员和奖金统计
/// <summary>
/// 人员统计
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult PersonnelStatic()
{
var obj = studentModule.GetStudentTodayStaticModule(base.UserInfo.Id);
return ApiResult.Success(data: obj);
}
/// <summary>
/// 人员奖励统计
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult PersonnelBonusStatic()
{
int Type = base.ParmJObj.GetInt("Type");
int Year = base.ParmJObj.GetInt("Year");
int Month = base.ParmJObj.GetInt("Month");
var obj = employeeBonusModule.GetEmpBonusStaticModule(base.UserInfo, Type,Year, Month);
return ApiResult.Success(data: obj);
}
#endregion
}
}
\ No newline at end of file
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