Commit 5a1de4ab authored by liudong1993's avatar liudong1993

1

parent b0a58c6b
......@@ -71,5 +71,25 @@ namespace Edu.Model.ViewModel.Grade
/// 0-正常,1-缺勤,2-未签到
/// </summary>
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
/// <returns></returns>
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>
......@@ -1911,6 +1922,26 @@ namespace Edu.Module.Course
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>
/// 更新学生的退课信息
......
......@@ -1806,7 +1806,7 @@ namespace Edu.Module.Course
string SchoolIds = string.Join(",", rulelist.Select(x => x.SchoolIds));
//查询 班级订单 1.尾款收齐
//查询 班级订单 1.尾款收齐
string SDate = Config.NewAchievementsEnable;
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);//查询所有的
......@@ -1950,6 +1950,17 @@ namespace Edu.Module.Course
if (item.Type == 1)
{
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())
{
//计算市场业绩
......@@ -1995,6 +2006,17 @@ namespace Edu.Module.Course
else
{
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())
{
//课程顾问
......@@ -2046,6 +2068,17 @@ namespace Edu.Module.Course
if (item.Type == 1)
{
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())
{
//计算市场业绩
......@@ -2093,6 +2126,17 @@ namespace Edu.Module.Course
else
{
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())
{
//课程顾问
......
......@@ -80,7 +80,7 @@ WHERE 1=1
{
StringBuilder builder = new StringBuilder();
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
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}
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
{
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;
if (timeModel.InClassTime.HasValue && timeModel.ClassOverTime.HasValue)
......@@ -500,19 +490,45 @@ namespace Edu.WebApi.Controllers.Course
{
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>();
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 checkLogList = classModule.GetClassCheckList(new RB_Class_Check_ViewModel { ClassTimeId = ID, Group_Id = base.UserInfo.Group_Id, School_Id = -1, ClassId = classModel.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==classModel.ClassId && x.ChangeEffectTime.HasValue && Convert.ToDateTime(Common.ConvertHelper.FormatDate(x.ChangeEffectTime)) >= Convert.ToDateTime(Common.ConvertHelper.FormatDate(timeModel.NewPlanDateTime)))));
checkLogList = classModule.GetClassCheckList(new RB_Class_Check_ViewModel { ClassTimeId = ID, Group_Id = base.UserInfo.Group_Id, School_Id = -1, ClassId = classModel.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 == classModel.ClassId && x.ChangeEffectTime.HasValue && Convert.ToDateTime(Common.ConvertHelper.FormatDate(x.ChangeEffectTime)) >= Convert.ToDateTime(Common.ConvertHelper.FormatDate(timeModel.NewPlanDateTime)))));
}
ClassName = classModel.ClassName;
TeacherName = classModel.TeacherName;
CourseName = classModel.CourseName;
}
foreach (var item in allOrderGuestList)
......@@ -521,9 +537,9 @@ namespace Edu.WebApi.Controllers.Course
}
var result = new
{
classModel.ClassName,
classModel.TeacherName,
classModel.CourseName,
ClassName,
TeacherName,
CourseName,
timeModel.VideoUrl,//课堂录像
PlanTime = timeModel.StartTime + "-" + timeModel.EndTime,//计划时间
ActualTime,//实际时间
......
......@@ -344,17 +344,27 @@ namespace Edu.WebApi.Controllers.Course
{
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>();
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 = classModule.GetClassFeedBackList(new RB_Class_FeedBack_ViewModel { ClassTimeId = ID, Group_Id = base.UserInfo.Group_Id, ClassId = timeModel.ClassId });
if (tempOrderGuestList != null && tempOrderGuestList.Any())
var feedBackList = new List<RB_Class_FeedBack_ViewModel>();
if (timeModel.PlanType == 2)
{
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>();
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