Commit 12bf3462 authored by 黄奎's avatar 黄奎

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

parents a9acfb97 8c920f07
...@@ -25,6 +25,20 @@ namespace Edu.Model.ViewModel.Course ...@@ -25,6 +25,20 @@ namespace Edu.Model.ViewModel.Course
/// </summary> /// </summary>
public int EnterID { get; set; } public int EnterID { get; set; }
/// <summary>
/// 业务员
/// </summary>
public string EnterName { get; set; }
/// <summary>
/// 班级名称
/// </summary>
public string ClassName { get; set; }
/// <summary>
/// 老师id
/// </summary>
public int Teacher_Id { get; set; }
/// <summary> /// <summary>
/// rb_student表的id /// rb_student表的id
/// </summary> /// </summary>
...@@ -153,6 +167,14 @@ namespace Edu.Model.ViewModel.Course ...@@ -153,6 +167,14 @@ namespace Edu.Model.ViewModel.Course
public int UpOrderId { get; set; } public int UpOrderId { get; set; }
/// <summary> /// <summary>
/// 总上课次数
/// </summary>
public int TotalPlanNum { get; set; }
/// <summary>
/// 已上课次数
/// </summary>
public int Ranks { get; set; }
/// 是否续班订单 /// 是否续班订单
/// </summary> /// </summary>
public int IsRenewOrder { get; set; } public int IsRenewOrder { get; set; }
......
...@@ -3006,5 +3006,24 @@ namespace Edu.Module.Course ...@@ -3006,5 +3006,24 @@ namespace Edu.Module.Course
#endregion #endregion
} #region 教师-学员管理
/// <summary>
/// 获取分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="demodel"></param>
/// <param name="orderIds"></param>
/// <returns></returns>
public List<RB_Order_Guest_ViewModel> GetTeacherStudentPage(int pageIndex, int pageSize, out long rowsCount, RB_Order_Guest_ViewModel demodel)
{
var orderstudentList = order_GuestRepository.GetTeacherStudentPage( pageIndex, pageSize, out rowsCount, demodel);
return orderstudentList;
}
#endregion
}
} }
This diff is collapsed.
...@@ -468,7 +468,7 @@ ORDER BY p.ClassDate ASC ...@@ -468,7 +468,7 @@ ORDER BY p.ClassDate ASC
/// <param name="contractNo"></param> /// <param name="contractNo"></param>
/// <param name="groupId"></param> /// <param name="groupId"></param>
/// <returns></returns> /// <returns></returns>
public List<RB_Class_Check_ViewModel> GetStudentConsumptionHoursDetialPageList(int pageIndex, int pageSize, out long count, int teacherId, int schoolId, int classId, string startMonth, string endMonth, string studentName, int orderId, string contractNo, int groupId) public List<RB_Class_Check_ViewModel> GetStudentConsumptionHoursDetialPageList(int pageIndex, int pageSize, out long count, int teacherId, int schoolId, int classId, string startMonth, string endMonth, string studentName, int orderId, string contractNo, int groupId,int StudentId)
{ {
string where = $@" "; string where = $@" ";
if (teacherId > 0) if (teacherId > 0)
...@@ -491,6 +491,10 @@ ORDER BY p.ClassDate ASC ...@@ -491,6 +491,10 @@ ORDER BY p.ClassDate ASC
{ {
where += $@" and t2.OrderId ={orderId}"; where += $@" and t2.OrderId ={orderId}";
} }
if (StudentId > 0)
{
where += $@" and t2.StudentId ={StudentId}";
}
if (!string.IsNullOrEmpty(contractNo)) if (!string.IsNullOrEmpty(contractNo))
{ {
where += $@" and ec.ContractNo ='{contractNo}'"; where += $@" and ec.ContractNo ='{contractNo}'";
......
...@@ -72,7 +72,7 @@ WHERE {where}"; ...@@ -72,7 +72,7 @@ WHERE {where}";
return Get<RB_Order_Guest_ViewModel>(sql).ToList(); return Get<RB_Order_Guest_ViewModel>(sql).ToList();
} }
/// <summary> /// <summary>
/// 获取分页列表 /// 获取分页列表
...@@ -237,5 +237,68 @@ FROM RB_Order_Guest AS A LEFT JOIN rb_order AS B ON A.OrderId=B.OrderId ...@@ -237,5 +237,68 @@ FROM RB_Order_Guest AS A LEFT JOIN rb_order AS B ON A.OrderId=B.OrderId
WHERE {where}"; WHERE {where}";
return Get<RB_Order_Guest_ViewModel>(sql).ToList(); return Get<RB_Order_Guest_ViewModel>(sql).ToList();
} }
/// <summary>
/// 获取分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="demodel"></param>
/// <param name="orderIds"></param>
/// <returns></returns>
public List<RB_Order_Guest_ViewModel> GetTeacherStudentPage(int pageIndex, int pageSize, out long rowsCount, RB_Order_Guest_ViewModel demodel)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.*,IFNULL(B.IsChaBan,0) AS IsChaBan,IFNULL(B.StartClassHours,0) AS StartClassHours,IFNULL(C.CourseName,'') AS CourseName,class.ClassId,class.ClassName,b.EnterID
,plan.TotalPlanNum,planr.Ranks ,B.EffectStatus,B.EffectTime,B.UpOrderId,B.OrderType,B.CourseId
FROM RB_Order_Guest AS A LEFT JOIN rb_order AS B ON A.OrderId=B.OrderId
LEFT JOIN rb_class as class on class.ClassId=a.ClassId
LEFT JOIN rb_course AS C ON (B.CourseId=C.CourseId AND B.CourseId>0 AND B.OrderType=1)
LEFT JOIN (SELECT ClassId,COUNT(*) TotalPlanNum from rb_class_plan where `Status`=0 GROUP BY ClassId) as plan on plan.ClassId=class.ClassId
LEFT JOIN (SELECT ClassId,COUNT(*) Ranks from rb_class_plan where `Status`=0 and DATE_FORMAT(ClassDate,'%Y-%m-%d') <=DATE_FORMAT(NOW(),'%Y-%m-%d') GROUP BY ClassId) as planr on planr.ClassId=class.ClassId
WHERE 1=1 and A.Status=0 and b.OrderState<>3
");
if (demodel.Group_Id > 0)
{
builder.AppendFormat($@" AND A.{nameof(RB_Order_Guest_ViewModel.Group_Id)} ={demodel.Group_Id}");
}
if (demodel.School_Id > 0)
{
builder.AppendFormat($@" AND A.{nameof(RB_Order_Guest_ViewModel.School_Id)} ={demodel.School_Id}");
}
if (demodel.OrderId > 0)
{
builder.AppendFormat($@" AND A.{nameof(RB_Order_Guest_ViewModel.OrderId)} ={demodel.OrderId}");
}
if (!string.IsNullOrEmpty(demodel.GuestName))
{
builder.AppendFormat($@" AND A.{nameof(RB_Order_Guest_ViewModel.GuestName)} like '%{demodel.GuestName}%'");
}
if (demodel.ClassId > 0)
{
builder.AppendFormat($@" AND A.{nameof(RB_Order_Guest_ViewModel.ClassId)} ={demodel.ClassId}");
}
if (demodel.CourseId > 0)
{
builder.AppendFormat($@" AND B.{nameof(RB_Order_Guest_ViewModel.CourseId)} ={demodel.CourseId}");
}
if (demodel.EnterID > 0)
{
builder.AppendFormat($@" AND B.{nameof(RB_Order_Guest_ViewModel.EnterID)} ={demodel.EnterID}");
}
if (demodel.SourceId > 0)
{
builder.AppendFormat($@" AND A.{nameof(RB_Order_Guest_ViewModel.SourceId)} ={demodel.SourceId}");
}
if (demodel.GuestState > 0)
{
builder.AppendFormat($@" AND A.{nameof(RB_Order_Guest_ViewModel.GuestState)} ={demodel.GuestState}");
}
return GetPage<RB_Order_Guest_ViewModel>(pageIndex, pageSize, out rowsCount, builder.ToString()).ToList();
}
} }
} }
...@@ -8,6 +8,7 @@ using Edu.Common.Enum.Course; ...@@ -8,6 +8,7 @@ using Edu.Common.Enum.Course;
using Edu.Common.Plugin; using Edu.Common.Plugin;
using Edu.Model.ViewModel.Course; using Edu.Model.ViewModel.Course;
using Edu.Module.Course; using Edu.Module.Course;
using Edu.Module.Finance;
using Edu.WebApi.Filter; using Edu.WebApi.Filter;
using Microsoft.AspNetCore.Cors; using Microsoft.AspNetCore.Cors;
using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Http;
...@@ -26,7 +27,10 @@ namespace Edu.WebApi.Controllers.Course ...@@ -26,7 +27,10 @@ namespace Edu.WebApi.Controllers.Course
/// </summary> /// </summary>
private readonly ClassModule classModule = AOP.AOPHelper.CreateAOPObject<ClassModule>(); private readonly ClassModule classModule = AOP.AOPHelper.CreateAOPObject<ClassModule>();
/// <summary>
/// 财务处理类对象
/// </summary>
private readonly FinanceModule financeModule = AOP.AOPHelper.CreateAOPObject<FinanceModule>();
#region 班级管理 #region 班级管理
/// <summary> /// <summary>
/// 获取班级页列表 /// 获取班级页列表
...@@ -132,5 +136,77 @@ namespace Edu.WebApi.Controllers.Course ...@@ -132,5 +136,77 @@ namespace Edu.WebApi.Controllers.Course
return ApiResult.Success(data: obj); return ApiResult.Success(data: obj);
} }
#endregion #endregion
#region 月度耗课
/// <summary>
/// 班级月度课耗统计
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetClassMonthStatistics()
{
var userInfo = base.UserInfo;
int classId = base.ParmJObj.GetInt("ClassId", 0);
var list = financeModule.GetTeacherClassMonthStatistics(classId, userInfo);
return ApiResult.Success("", list);
}
#endregion
#region 学员管理
/// <summary>
/// 获取学员列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetClassStudent()
{
var pageModel = Common.Plugin.JsonHelper.DeserializeObject<ResultPageModel>(RequestParm.Msg.ToString());
var model = new RB_Order_Guest_ViewModel
{
Teacher_Id = base.ParmJObj.GetInt("Teacher_Id", 0),
GuestName = base.ParmJObj.GetStringValue("GuestName"),
ClassId = base.ParmJObj.GetInt("ClassId", 0),
CourseId = base.ParmJObj.GetInt("CourseId", 0),
EnterID = base.ParmJObj.GetInt("EnterID", 0),
};
model.Group_Id = base.UserInfo.Group_Id;
var list = classModule.GetTeacherStudentPage(pageModel.PageIndex, pageModel.PageSize, out long rowsCount, model);
List<object> result = new List<object>();
foreach (var item in list)
{
if (item.EnterID > 0)
{
item.EnterName = UserReidsCache.GetUserLoginInfo(item.CreateBy)?.AccountName ?? "";
}
result.Add(new
{
item.Id,
item.GuestName,
item.Mobile,
item.ClassId,
item.ClassName,
item.CourseId,
item.CourseName,
item.GuestState,
item.GuestStateStr,
item.School_Id,
item.Teacher_Id,
item.TotalPlanNum,
item.Ranks,
item.EnterName,
item.EnterID
});
}
pageModel.Count = rowsCount;
pageModel.PageData = result;
return ApiResult.Success(data: pageModel);
}
#endregion
} }
} }
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