Commit 5a1de4ab authored by liudong1993's avatar liudong1993

1

parent b0a58c6b
...@@ -71,5 +71,25 @@ namespace Edu.Model.ViewModel.Grade ...@@ -71,5 +71,25 @@ namespace Edu.Model.ViewModel.Grade
/// 0-正常,1-缺勤,2-未签到 /// 0-正常,1-缺勤,2-未签到
/// </summary> /// </summary>
public int IsCheck { get; set; } public int IsCheck { get; set; }
/// <summary>
/// 计划类型 1正常班 2滚动开班
/// </summary>
public int PlanType { get; set; }
/// <summary>
/// 约课课程ID
/// </summary>
public int CourseId { get; set; }
/// <summary>
/// 课程名称
/// </summary>
public string CourseName { get; set; }
/// <summary>
/// 上课老师
/// </summary>
public int TeacherId { get; set; }
} }
} }
\ No newline at end of file
...@@ -306,7 +306,18 @@ namespace Edu.Module.Course ...@@ -306,7 +306,18 @@ namespace Edu.Module.Course
/// <returns></returns> /// <returns></returns>
public List<RB_Class_Time_ViewModel> GetClassTimeList_V2(RB_Class_Time_ViewModel query) public List<RB_Class_Time_ViewModel> GetClassTimeList_V2(RB_Class_Time_ViewModel query)
{ {
return class_TimeRepository.GetClassTimeList_V2(query); var list = class_TimeRepository.GetClassTimeList_V2(query);
if (list.Any()) {
string tids = string.Join(",", list.Select(x => x.TeacherId).Distinct());
var teacherList = teacherRepository.GetTeacherListRepository(new RB_Teacher_ViewModel() { Group_Id = query.Group_Id, QTIds = tids });
string courseIds = string.Join(",", list.Select(x => x.CourseId).Distinct());
var courseList = courseRepository.GetCourseListRepository(new RB_Course_ViewModel() { Group_Id = query.Group_Id, QCourseIds = courseIds });
foreach (var item in list) {
item.TeacherName = teacherList.Where(x => x.TId == item.TeacherId).FirstOrDefault()?.TeacherName ?? "";
item.CourseName = courseList.Where(x => x.CourseId == item.CourseId).FirstOrDefault()?.CourseName ?? "";
}
}
return list;
} }
/// <summary> /// <summary>
...@@ -1911,6 +1922,26 @@ namespace Edu.Module.Course ...@@ -1911,6 +1922,26 @@ namespace Edu.Module.Course
return order_GuestRepository.GetOrderGuestListRepository(model); return order_GuestRepository.GetOrderGuestListRepository(model);
} }
/// <summary>
/// 根据上课id获取订单学员信息
/// </summary>
/// <param name="classId"></param>
/// <returns></returns>
public List<RB_Order_Guest_ViewModel> GetOrderGuestListModuleForYK(RB_Order_Guest_ViewModel model)
{
var list = order_GuestRepository.GetOrderGuestListForYK(model);
if (list.Any())
{
string courseIds = string.Join(",", list.Select(x => x.CourseId).Distinct());
var courseList = courseRepository.GetCourseListRepository(new RB_Course_ViewModel() { Group_Id = model.Group_Id, QCourseIds = courseIds });
foreach (var item in list)
{
item.CourseName = courseList.Where(x => x.CourseId == item.CourseId).FirstOrDefault()?.CourseName ?? "";
}
}
return list;
}
/// <summary> /// <summary>
/// 更新学生的退课信息 /// 更新学生的退课信息
......
...@@ -1806,7 +1806,7 @@ namespace Edu.Module.Course ...@@ -1806,7 +1806,7 @@ namespace Edu.Module.Course
string SchoolIds = string.Join(",", rulelist.Select(x => x.SchoolIds)); string SchoolIds = string.Join(",", rulelist.Select(x => x.SchoolIds));
//查询 班级订单 1.尾款收齐 //查询 班级订单 1.尾款收齐
string SDate = Config.NewAchievementsEnable; string SDate = Config.NewAchievementsEnable;
string EDate = Convert.ToDateTime(month + "-01").AddMonths(1).AddDays(-1).ToString("yyyy-MM-dd"); string EDate = Convert.ToDateTime(month + "-01").AddMonths(1).AddDays(-1).ToString("yyyy-MM-dd");
var orderList = orderRepository.GetAllAchievementsSendOrderList(userInfo.Group_Id, SDate, EDate, 1, "", SchoolIds);//查询所有的 var orderList = orderRepository.GetAllAchievementsSendOrderList(userInfo.Group_Id, SDate, EDate, 1, "", SchoolIds);//查询所有的
...@@ -1950,6 +1950,17 @@ namespace Edu.Module.Course ...@@ -1950,6 +1950,17 @@ namespace Edu.Module.Course
if (item.Type == 1) if (item.Type == 1)
{ {
var sellOrderList = orderList.Where(x => x.EnterID > 0 && ("," + item.EmpIds + ",").Contains("," + x.EnterID + ",") && ("," + item.SchoolIds + ",").Contains("," + x.ClassSchoolId + ",")).ToList(); var sellOrderList = orderList.Where(x => x.EnterID > 0 && ("," + item.EmpIds + ",").Contains("," + x.EnterID + ",") && ("," + item.SchoolIds + ",").Contains("," + x.ClassSchoolId + ",")).ToList();
if (!string.IsNullOrEmpty(item.CourseIds))
{
if (item.CourseType == 1)
{
sellOrderList = sellOrderList.Where(x => ("," + item.CourseIds + ",").Contains("," + x.CourseId + ",")).ToList();
}
else
{
sellOrderList = sellOrderList.Where(x => !("," + item.CourseIds + ",").Contains("," + x.CourseId + ",")).ToList();
}
}
if (sellOrderList.Any()) if (sellOrderList.Any())
{ {
//计算市场业绩 //计算市场业绩
...@@ -1995,6 +2006,17 @@ namespace Edu.Module.Course ...@@ -1995,6 +2006,17 @@ namespace Edu.Module.Course
else else
{ {
var consultantOrderList = orderList.Where(x => x.CourseConsultantId > 0 && ("," + item.EmpIds + ",").Contains("," + x.CourseConsultantId + ",") && ("," + item.SchoolIds + ",").Contains("," + x.ClassSchoolId + ",")).ToList(); var consultantOrderList = orderList.Where(x => x.CourseConsultantId > 0 && ("," + item.EmpIds + ",").Contains("," + x.CourseConsultantId + ",") && ("," + item.SchoolIds + ",").Contains("," + x.ClassSchoolId + ",")).ToList();
if (!string.IsNullOrEmpty(item.CourseIds))
{
if (item.CourseType == 1)
{
consultantOrderList = consultantOrderList.Where(x => ("," + item.CourseIds + ",").Contains("," + x.CourseId + ",")).ToList();
}
else
{
consultantOrderList = consultantOrderList.Where(x => !("," + item.CourseIds + ",").Contains("," + x.CourseId + ",")).ToList();
}
}
if (consultantOrderList.Any()) if (consultantOrderList.Any())
{ {
//课程顾问 //课程顾问
...@@ -2046,6 +2068,17 @@ namespace Edu.Module.Course ...@@ -2046,6 +2068,17 @@ namespace Edu.Module.Course
if (item.Type == 1) if (item.Type == 1)
{ {
var sellOrderList = orderList.Where(x => x.EnterID > 0 && ("," + item.ChildEmpIds + ",").Contains("," + x.EnterID + ",") && ("," + item.SchoolIds + ",").Contains("," + x.ClassSchoolId + ",")).ToList(); var sellOrderList = orderList.Where(x => x.EnterID > 0 && ("," + item.ChildEmpIds + ",").Contains("," + x.EnterID + ",") && ("," + item.SchoolIds + ",").Contains("," + x.ClassSchoolId + ",")).ToList();
if (!string.IsNullOrEmpty(item.CourseIds))
{
if (item.CourseType == 1)
{
sellOrderList = sellOrderList.Where(x => ("," + item.CourseIds + ",").Contains("," + x.CourseId + ",")).ToList();
}
else
{
sellOrderList = sellOrderList.Where(x => !("," + item.CourseIds + ",").Contains("," + x.CourseId + ",")).ToList();
}
}
if (sellOrderList.Any()) if (sellOrderList.Any())
{ {
//计算市场业绩 //计算市场业绩
...@@ -2093,6 +2126,17 @@ namespace Edu.Module.Course ...@@ -2093,6 +2126,17 @@ namespace Edu.Module.Course
else else
{ {
var consultantOrderList = orderList.Where(x => x.CourseConsultantId > 0 && ("," + item.ChildEmpIds + ",").Contains("," + x.CourseConsultantId + ",") && ("," + item.SchoolIds + ",").Contains("," + x.ClassSchoolId + ",")).ToList(); var consultantOrderList = orderList.Where(x => x.CourseConsultantId > 0 && ("," + item.ChildEmpIds + ",").Contains("," + x.CourseConsultantId + ",") && ("," + item.SchoolIds + ",").Contains("," + x.ClassSchoolId + ",")).ToList();
if (!string.IsNullOrEmpty(item.CourseIds))
{
if (item.CourseType == 1)
{
consultantOrderList = consultantOrderList.Where(x => ("," + item.CourseIds + ",").Contains("," + x.CourseId + ",")).ToList();
}
else
{
consultantOrderList = consultantOrderList.Where(x => !("," + item.CourseIds + ",").Contains("," + x.CourseId + ",")).ToList();
}
}
if (consultantOrderList.Any()) if (consultantOrderList.Any())
{ {
//课程顾问 //课程顾问
......
...@@ -80,7 +80,7 @@ WHERE 1=1 ...@@ -80,7 +80,7 @@ WHERE 1=1
{ {
StringBuilder builder = new StringBuilder(); StringBuilder builder = new StringBuilder();
builder.AppendFormat(@" builder.AppendFormat(@"
SELECT B.*,CONCAT( DATE_FORMAT(A.ClassDate,'%Y-%m-%d') ,' ',B.StartTime,':00') AS NewPlanDateTime, SELECT B.*,A.PlanType,A.CourseId,A.TeacherId,CONCAT( DATE_FORMAT(A.ClassDate,'%Y-%m-%d') ,' ',B.StartTime,':00') AS NewPlanDateTime,
CONCAT( DATE_FORMAT(A.ClassDate,'%Y-%m-%d') ,' ',B.EndTime,':00') AS NewEndPlanDateTime,TIMESTAMPDIFF(MINUTE,(DATE_FORMAT(CONCAT('2021-01-01 ',B.StartTime,':00'),'%Y-%m-%d %H:%i')),(DATE_FORMAT(CONCAT('2021-01-01 ',B.EndTime,':00'), '%Y-%m-%d %H:%i'))) AS TimeMinute CONCAT( DATE_FORMAT(A.ClassDate,'%Y-%m-%d') ,' ',B.EndTime,':00') AS NewEndPlanDateTime,TIMESTAMPDIFF(MINUTE,(DATE_FORMAT(CONCAT('2021-01-01 ',B.StartTime,':00'),'%Y-%m-%d %H:%i')),(DATE_FORMAT(CONCAT('2021-01-01 ',B.EndTime,':00'), '%Y-%m-%d %H:%i'))) AS TimeMinute
FROM rb_class_time AS B INNER JOIN rb_class_plan AS A ON A.ClassPlanId=B.ClassPlanId WHERE 1=1 FROM rb_class_time AS B INNER JOIN rb_class_plan AS A ON A.ClassPlanId=B.ClassPlanId WHERE 1=1
"); ");
......
...@@ -843,5 +843,19 @@ WHERE A.Id ={guestId} ...@@ -843,5 +843,19 @@ WHERE A.Id ={guestId}
return Get<RB_Order_Guest_Extend>(sql).FirstOrDefault(); return Get<RB_Order_Guest_Extend>(sql).FirstOrDefault();
} }
/// <summary>
/// 获取列表
/// </summary>
/// <param name="demodel"></param>
/// <returns></returns>
public List<RB_Order_Guest_ViewModel> GetOrderGuestListForYK(RB_Order_Guest_ViewModel demodel)
{
string sql = $@"select og.*,a.LearnCourseId as CourseId FROM rb_order_guest og
INNER JOIN rb_scroll_appointment a on og.Id = a.GuestId
INNER JOIN rb_class_time t on t.ClassPlanId = a.ClassPlanId
WHERE og.Group_Id ={demodel.Group_Id} and a.`Status` =0 and a.State <>5 and t.ClassTimeId ={demodel.ClassTimeId}";
return Get<RB_Order_Guest_ViewModel>(sql).ToList();
}
} }
} }
...@@ -476,16 +476,6 @@ namespace Edu.WebApi.Controllers.Course ...@@ -476,16 +476,6 @@ namespace Edu.WebApi.Controllers.Course
{ {
return ApiResult.Failed("班级上课时间信息不存在"); return ApiResult.Failed("班级上课时间信息不存在");
} }
var classModel = classModule.GetClassAndCourseListRepository(new RB_Class_ViewModel()
{
Group_Id = base.UserInfo.Group_Id,
School_Id = -1,
ClassId = timeModel.ClassId
}).FirstOrDefault();
if (classModel == null || classModel.ClassId == 0)
{
return ApiResult.Failed("班级信息不存在");
}
string ActualTime = string.Empty; string ActualTime = string.Empty;
if (timeModel.InClassTime.HasValue && timeModel.ClassOverTime.HasValue) if (timeModel.InClassTime.HasValue && timeModel.ClassOverTime.HasValue)
...@@ -500,19 +490,45 @@ namespace Edu.WebApi.Controllers.Course ...@@ -500,19 +490,45 @@ namespace Edu.WebApi.Controllers.Course
{ {
ActualTime = "-" + timeModel.ClassOverTime.Value.ToString("HH:mm"); ActualTime = "-" + timeModel.ClassOverTime.Value.ToString("HH:mm");
} }
var allOrderGuestList = new List<RB_Order_Guest_ViewModel>();
var checkLogList = new List<RB_Class_Check_ViewModel>();
string ClassName = "", TeacherName = "", CourseName = "";
if (timeModel.PlanType == 2)
{
ClassName = "预约课";
TeacherName = timeModel.TeacherName;
CourseName = timeModel.CourseName;
checkLogList = classModule.GetClassCheckList(new RB_Class_Check_ViewModel { ClassTimeId = ID, Group_Id = base.UserInfo.Group_Id, School_Id = -1 });
//获取
allOrderGuestList = classModule.GetOrderGuestListModuleForYK(new RB_Order_Guest_ViewModel { Group_Id = base.UserInfo.Group_Id, ClassTimeId = ID });
}
else
{
var classModel = classModule.GetClassAndCourseListRepository(new RB_Class_ViewModel()
{
Group_Id = base.UserInfo.Group_Id,
School_Id = -1,
ClassId = timeModel.ClassId
}).FirstOrDefault();
if (classModel == null || classModel.ClassId == 0)
{
return ApiResult.Failed("班级信息不存在");
}
var orderGuestList = classModule.GetOrderGuestListModule(new RB_Order_Guest_ViewModel { Group_Id = base.UserInfo.Group_Id, School_Id = -1, ClassId = classModel.ClassId });
var orderGuestList = classModule.GetOrderGuestListModule(new RB_Order_Guest_ViewModel { Group_Id = base.UserInfo.Group_Id, School_Id = 0, ClassId = classModel.ClassId }); var tempOrderGuestList = classModule.GetTempInvitationGuest(new Model.ViewModel.EduTask.RB_Temporary_Invitation_ViewModel { ClassTimeId = ID, ClassId = classModel.ClassId });
var tempOrderGuestList = classModule.GetTempInvitationGuest(new Model.ViewModel.EduTask.RB_Temporary_Invitation_ViewModel {ClassTimeId=ID ,ClassId=classModel.ClassId}); allOrderGuestList.AddRange(orderGuestList.Where(x => x.GuestState == GuestStateEnum.Normal || x.GuestState == GuestStateEnum.StopClassesApplyIng || ((x.GuestState == GuestStateEnum.StopClasses || x.GuestState == GuestStateEnum.Graduate) && x.ChangeEffectTime.HasValue && Convert.ToDateTime(Common.ConvertHelper.FormatDate(x.ChangeEffectTime)) >= Convert.ToDateTime(Common.ConvertHelper.FormatDate(timeModel.NewPlanDateTime)))));
var allOrderGuestList = new List<RB_Order_Guest_ViewModel>(); checkLogList = classModule.GetClassCheckList(new RB_Class_Check_ViewModel { ClassTimeId = ID, Group_Id = base.UserInfo.Group_Id, School_Id = -1, ClassId = classModel.ClassId });
allOrderGuestList.AddRange(orderGuestList.Where(x => x.GuestState ==GuestStateEnum.Normal || x.GuestState == GuestStateEnum.StopClassesApplyIng || ((x.GuestState == GuestStateEnum.StopClasses || x.GuestState == GuestStateEnum.Graduate) && x.ChangeEffectTime.HasValue && Convert.ToDateTime(Common.ConvertHelper.FormatDate(x.ChangeEffectTime)) >= Convert.ToDateTime(Common.ConvertHelper.FormatDate(timeModel.NewPlanDateTime))))); if (tempOrderGuestList != null && tempOrderGuestList.Any())
{
var checkLogList = classModule.GetClassCheckList(new RB_Class_Check_ViewModel { ClassTimeId = ID, Group_Id = base.UserInfo.Group_Id, School_Id = -1, ClassId = classModel.ClassId }); allOrderGuestList.AddRange(tempOrderGuestList.Where(x => x.GuestState == GuestStateEnum.Normal || x.GuestState == GuestStateEnum.StopClassesApplyIng || ((x.GuestState == GuestStateEnum.StopClasses || x.GuestState == GuestStateEnum.Graduate) && x.ClassTimeId == ID && x.ClassId == classModel.ClassId && x.ChangeEffectTime.HasValue && Convert.ToDateTime(Common.ConvertHelper.FormatDate(x.ChangeEffectTime)) >= Convert.ToDateTime(Common.ConvertHelper.FormatDate(timeModel.NewPlanDateTime)))));
if (tempOrderGuestList != null&& tempOrderGuestList.Any()) }
{ ClassName = classModel.ClassName;
allOrderGuestList.AddRange(tempOrderGuestList.Where(x => x.GuestState == GuestStateEnum.Normal || x.GuestState == GuestStateEnum.StopClassesApplyIng || ((x.GuestState == GuestStateEnum.StopClasses || x.GuestState == GuestStateEnum.Graduate) &&x.ClassTimeId==ID&&x.ClassId==classModel.ClassId && x.ChangeEffectTime.HasValue && Convert.ToDateTime(Common.ConvertHelper.FormatDate(x.ChangeEffectTime)) >= Convert.ToDateTime(Common.ConvertHelper.FormatDate(timeModel.NewPlanDateTime))))); TeacherName = classModel.TeacherName;
CourseName = classModel.CourseName;
} }
foreach (var item in allOrderGuestList) foreach (var item in allOrderGuestList)
...@@ -521,9 +537,9 @@ namespace Edu.WebApi.Controllers.Course ...@@ -521,9 +537,9 @@ namespace Edu.WebApi.Controllers.Course
} }
var result = new var result = new
{ {
classModel.ClassName, ClassName,
classModel.TeacherName, TeacherName,
classModel.CourseName, CourseName,
timeModel.VideoUrl,//课堂录像 timeModel.VideoUrl,//课堂录像
PlanTime = timeModel.StartTime + "-" + timeModel.EndTime,//计划时间 PlanTime = timeModel.StartTime + "-" + timeModel.EndTime,//计划时间
ActualTime,//实际时间 ActualTime,//实际时间
......
...@@ -344,17 +344,27 @@ namespace Edu.WebApi.Controllers.Course ...@@ -344,17 +344,27 @@ namespace Edu.WebApi.Controllers.Course
{ {
return ApiResult.Failed("班级上课时间信息不存在"); return ApiResult.Failed("班级上课时间信息不存在");
} }
var orderGuestList = classModule.GetOrderGuestListModule(new RB_Order_Guest_ViewModel { Group_Id = base.UserInfo.Group_Id, School_Id = 0, ClassId = timeModel.ClassId });
var tempOrderGuestList = classModule.GetTempInvitationGuest(new Model.ViewModel.EduTask.RB_Temporary_Invitation_ViewModel { ClassTimeId = ID, ClassId = timeModel.ClassId });
var allOrderGuestList = new List<RB_Order_Guest_ViewModel>(); var allOrderGuestList = new List<RB_Order_Guest_ViewModel>();
allOrderGuestList.AddRange(orderGuestList.Where(x => x.GuestState == GuestStateEnum.Normal || x.GuestState == GuestStateEnum.StopClassesApplyIng || ((x.GuestState == GuestStateEnum.StopClasses || x.GuestState == GuestStateEnum.Graduate) && x.ChangeEffectTime.HasValue && Convert.ToDateTime(Common.ConvertHelper.FormatDate(x.ChangeEffectTime)) >= Convert.ToDateTime(Common.ConvertHelper.FormatDate(timeModel.NewPlanDateTime))))); var feedBackList = new List<RB_Class_FeedBack_ViewModel>();
if (timeModel.PlanType == 2)
var feedBackList = classModule.GetClassFeedBackList(new RB_Class_FeedBack_ViewModel { ClassTimeId = ID, Group_Id = base.UserInfo.Group_Id, ClassId = timeModel.ClassId }); {
if (tempOrderGuestList != null && tempOrderGuestList.Any()) allOrderGuestList = classModule.GetOrderGuestListModuleForYK(new RB_Order_Guest_ViewModel { Group_Id = base.UserInfo.Group_Id, ClassTimeId = ID });
feedBackList = classModule.GetClassFeedBackList(new RB_Class_FeedBack_ViewModel { ClassTimeId = ID, Group_Id = base.UserInfo.Group_Id});
}
else
{ {
allOrderGuestList.AddRange(tempOrderGuestList.Where(x => x.GuestState == GuestStateEnum.Normal || x.GuestState == GuestStateEnum.StopClassesApplyIng || ((x.GuestState == GuestStateEnum.StopClasses || x.GuestState == GuestStateEnum.Graduate) && x.ClassTimeId == ID && x.ClassId == timeModel.ClassId && x.ChangeEffectTime.HasValue && Convert.ToDateTime(Common.ConvertHelper.FormatDate(x.ChangeEffectTime)) >= Convert.ToDateTime(Common.ConvertHelper.FormatDate(timeModel.NewPlanDateTime))))); var orderGuestList = classModule.GetOrderGuestListModule(new RB_Order_Guest_ViewModel { Group_Id = base.UserInfo.Group_Id, School_Id = -1, ClassId = timeModel.ClassId });
var tempOrderGuestList = classModule.GetTempInvitationGuest(new Model.ViewModel.EduTask.RB_Temporary_Invitation_ViewModel { ClassTimeId = ID, ClassId = timeModel.ClassId });
allOrderGuestList.AddRange(orderGuestList.Where(x => x.GuestState == GuestStateEnum.Normal || x.GuestState == GuestStateEnum.StopClassesApplyIng || ((x.GuestState == GuestStateEnum.StopClasses || x.GuestState == GuestStateEnum.Graduate) && x.ChangeEffectTime.HasValue && Convert.ToDateTime(Common.ConvertHelper.FormatDate(x.ChangeEffectTime)) >= Convert.ToDateTime(Common.ConvertHelper.FormatDate(timeModel.NewPlanDateTime)))));
feedBackList = classModule.GetClassFeedBackList(new RB_Class_FeedBack_ViewModel { ClassTimeId = ID, Group_Id = base.UserInfo.Group_Id, ClassId = timeModel.ClassId });
if (tempOrderGuestList != null && tempOrderGuestList.Any())
{
allOrderGuestList.AddRange(tempOrderGuestList.Where(x => x.GuestState == GuestStateEnum.Normal || x.GuestState == GuestStateEnum.StopClassesApplyIng || ((x.GuestState == GuestStateEnum.StopClasses || x.GuestState == GuestStateEnum.Graduate) && x.ClassTimeId == ID && x.ClassId == timeModel.ClassId && x.ChangeEffectTime.HasValue && Convert.ToDateTime(Common.ConvertHelper.FormatDate(x.ChangeEffectTime)) >= Convert.ToDateTime(Common.ConvertHelper.FormatDate(timeModel.NewPlanDateTime)))));
}
} }
List<object> result = new List<object>(); List<object> result = new List<object>();
foreach (var item in allOrderGuestList) foreach (var item in allOrderGuestList)
......
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