Commit 1bf38c90 authored by liudong1993's avatar liudong1993

1

parent b3b2ac97
...@@ -4876,11 +4876,20 @@ namespace Edu.Module.Course ...@@ -4876,11 +4876,20 @@ namespace Edu.Module.Course
/// <param name="day"></param> /// <param name="day"></param>
/// <param name="group_Id"></param> /// <param name="group_Id"></param>
/// <returns></returns> /// <returns></returns>
public object GetStudyCourseReview(int classId, int day, int group_Id) public object GetStudyCourseReview(int classId,int classScrollType, int stuId, int courseId, int day, int group_Id)
{ {
List<object> RList = new List<object>(); List<object> RList = new List<object>();
//先获取最近7天上课计划 //先获取最近7天上课计划
var planList = class_PlanRepository.GetStudyCourseReview(classId, day + 1, group_Id); var planList = new List<RB_Class_Plan_ViewModel>();
if (classScrollType == 2)
{
//约课模式
planList = class_PlanRepository.GetStudyCourseReviewForYK(stuId, courseId, day + 1, group_Id);
}
else
{
planList = class_PlanRepository.GetStudyCourseReview(classId, day + 1, group_Id);
}
if (planList.Any()) { if (planList.Any()) {
//获取上课时间 //获取上课时间
string planIds = string.Join(",", planList.Select(x => x.ClassPlanId)); string planIds = string.Join(",", planList.Select(x => x.ClassPlanId));
...@@ -4927,13 +4936,22 @@ namespace Edu.Module.Course ...@@ -4927,13 +4936,22 @@ namespace Edu.Module.Course
/// </summary> /// </summary>
/// <param name="classId"></param> /// <param name="classId"></param>
/// <returns></returns> /// <returns></returns>
public object GetIndexWords(int classId, int courseId, int groupId,int Stu_Account_Id=0) public object GetIndexWords(int classId, int courseId, int guestId, int classScrollType, int stuId, int groupId)
{ {
int NextCourseNo = 0, ReviewCourseNo = 0; int NextCourseNo = 0, ReviewCourseNo = 0;
var planModel = class_PlanRepository.GetToDayClassPlan(classId, groupId); RB_Class_Plan_ViewModel planModel = null;
if (classScrollType == 2)
{
//约课
planModel = class_PlanRepository.GetToDayClassPlanForYK(stuId, courseId, groupId);
}
else {
planModel = class_PlanRepository.GetToDayClassPlan(classId, groupId);
}
if (planModel != null) if (planModel != null)
{ {
int zj = planModel.LessonPlanNum + 1;//这次课的章节 var ogModel = order_GuestRepository.GetEntity(guestId);
int zj = ogModel.CourseChapterNo + 1;//这次课的章节
if (planModel.ClassDate.ToString("yyyy-MM-dd") == DateTime.Now.ToString("yyyy-MM-dd")) if (planModel.ClassDate.ToString("yyyy-MM-dd") == DateTime.Now.ToString("yyyy-MM-dd"))
{ {
//查询上课时间 看这节课到底上没有上 //查询上课时间 看这节课到底上没有上
......
...@@ -127,7 +127,7 @@ namespace Edu.Module.Course ...@@ -127,7 +127,7 @@ namespace Edu.Module.Course
{ {
if (orderModel.OrderType == Common.Enum.Sale.OrderTypeEnum.CourseOrder) if (orderModel.OrderType == Common.Enum.Sale.OrderTypeEnum.CourseOrder)
{ {
classModel = classRepository.GetClassAndCourseListRepository(new RB_Class_ViewModel() { ClassId = orderModel.ClassId })?.FirstOrDefault(); classModel = classRepository.GetClassAndCourseListRepository(new RB_Class_ViewModel() { ClassId = orderModel.ClassId, ClassScrollType = 0 })?.FirstOrDefault();
courseModel = courseRepository.GetEntity<RB_Course_ViewModel>(orderModel.CourseId); courseModel = courseRepository.GetEntity<RB_Course_ViewModel>(orderModel.CourseId);
} }
} }
...@@ -493,7 +493,7 @@ namespace Edu.Module.Course ...@@ -493,7 +493,7 @@ namespace Edu.Module.Course
var classModel = new RB_Class_ViewModel(); var classModel = new RB_Class_ViewModel();
if (orderModel != null && orderModel.ClassId > 0) if (orderModel != null && orderModel.ClassId > 0)
{ {
classModel = classRepository.GetClassAndCourseListRepository(new RB_Class_ViewModel() { ClassId = orderModel.ClassId })?.FirstOrDefault(); classModel = classRepository.GetClassAndCourseListRepository(new RB_Class_ViewModel() { ClassId = orderModel.ClassId, ClassScrollType = 0 })?.FirstOrDefault();
} }
model.School_Id = classModel?.School_Id ?? 0; model.School_Id = classModel?.School_Id ?? 0;
//生成合同编码 //生成合同编码
......
...@@ -1470,7 +1470,8 @@ namespace Edu.Module.Course ...@@ -1470,7 +1470,8 @@ namespace Edu.Module.Course
var queryNotifyManager = accountRepository.GetWorkUserIdByDictRepository("Push_NewOrder"); var queryNotifyManager = accountRepository.GetWorkUserIdByDictRepository("Push_NewOrder");
var param = new RB_Class_ViewModel() var param = new RB_Class_ViewModel()
{ {
ClassId = demodel.ClassId ClassId = demodel.ClassId,
ClassScrollType = 0
}; };
var classDetailModel = classRepository.GetClassAndCourseListRepository(param).FirstOrDefault(); var classDetailModel = classRepository.GetClassAndCourseListRepository(param).FirstOrDefault();
if (queryNotifyManager != null && queryNotifyManager.Count > 0) if (queryNotifyManager != null && queryNotifyManager.Count > 0)
......
...@@ -77,19 +77,19 @@ namespace Edu.Module.Course ...@@ -77,19 +77,19 @@ namespace Edu.Module.Course
} }
#region 生成班级号 #region 生成班级号
string ClassNo = "GD";int ClassLetterNum = 0; string ClassNo = "GD";int ClassLetterNum = 0;
//查询最大的字母 ////查询最大的字母
int CNum = classRepository.GetMaxClassNoPrefix(time + "-01"); //int CNum = classRepository.GetMaxClassNoPrefix(time + "-01");
if (CNum == 0) //if (CNum == 0)
{ //{
ClassNo += OpenTime + "A"; // ClassNo += OpenTime + "A";
ClassLetterNum = 1; // ClassLetterNum = 1;
} //}
else //else
{ //{
string ClassNoLetterStr = Edu.Common.Config.ClassNoLetterStr; // string ClassNoLetterStr = Edu.Common.Config.ClassNoLetterStr;
ClassNo += OpenTime + GetClassNo(ClassNoLetterStr, CNum); // ClassNo += OpenTime + GetClassNo(ClassNoLetterStr, CNum);
ClassLetterNum = CNum + 1; // ClassLetterNum = CNum + 1;
} //}
#endregion #endregion
RB_Class cmodel = new RB_Class() RB_Class cmodel = new RB_Class()
{ {
...@@ -103,7 +103,7 @@ namespace Edu.Module.Course ...@@ -103,7 +103,7 @@ namespace Edu.Module.Course
CreateBy = 0, CreateBy = 0,
UpdateBy = 0, UpdateBy = 0,
Status = 0, Status = 0,
ClassPersion = 0, ClassPersion = 9999,
OpenTime = Convert.ToDateTime(time + "-01"), OpenTime = Convert.ToDateTime(time + "-01"),
EndOrderTime = EndOrderTime, EndOrderTime = EndOrderTime,
OriginalPrice = 0, OriginalPrice = 0,
...@@ -216,7 +216,7 @@ namespace Edu.Module.Course ...@@ -216,7 +216,7 @@ namespace Edu.Module.Course
#endregion #endregion
//以老师为单位 遍历 //以老师为单位 遍历
AppointList.GroupBy(x => new { x.Date, x.AccountId, x.WorkUserId, x.TeacherName, x.CourseId, x.CourseName, x.ChapterNo, x.ShiftSort, x.CourseTimeId, x.RoomId, x.RoomName, x.RoomSchoolName, x.ScrollMinNum }).ToList().ForEach(item => AppointList.GroupBy(x => new { x.Date, x.AccountId, x.WorkUserId,x.TeacherId, x.TeacherName, x.CourseId, x.CourseName, x.ChapterNo, x.ShiftSort, x.CourseTimeId, x.RoomId, x.RoomName, x.RoomSchoolName, x.ScrollMinNum }).ToList().ForEach(item =>
{ {
var ctModel = CTList.Where(x => x.Id == item.Key.CourseTimeId).FirstOrDefault(); var ctModel = CTList.Where(x => x.Id == item.Key.CourseTimeId).FirstOrDefault();
var CourseTimeList = ctModel.TimeList.Where(x => ("," + item.Key.ShiftSort + ",").Contains("," + x.Sort + ",")).ToList(); var CourseTimeList = ctModel.TimeList.Where(x => ("," + item.Key.ShiftSort + ",").Contains("," + x.Sort + ",")).ToList();
...@@ -260,48 +260,51 @@ namespace Edu.Module.Course ...@@ -260,48 +260,51 @@ namespace Edu.Module.Course
} }
else else
{ {
//人数达标 写入计划课程 #region 写入class_plan 计划表
foreach (var qitem in item)
//先查询计划是否已存在
int planId = class_PlanRepository.Insert(new RB_Class_Plan()
{ {
#region 写入class_plan 计划表 ClassPlanId = 0,
int planId = class_PlanRepository.Insert(new RB_Class_Plan() ClassId = 0,
{ ClassDate = item.Key.Date,
ClassPlanId = 0, Status = 0,
ClassId = 0, ClassRoomId = item.Key.RoomId,
ClassDate = qitem.Date, Group_Id = groupId,
Status = 0, School_Id = 0,// 暂时 应该要赋值 订单上的预约校区
ClassRoomId = qitem.RoomId, TeacherId = item.Key.TeacherId,
Group_Id = groupId, BeiKeStatus = 0,
School_Id = 0,// 暂时 应该要赋值 订单上的预约校区 FanKuiStatus = 0,
TeacherId = qitem.TeacherId, ParentFanKuiStatus = 0,
BeiKeStatus = 0, RepeatPlanIds = "",
FanKuiStatus = 0, PlanType = 2,
ParentFanKuiStatus = 0, CourseId = item.Key.CourseId
RepeatPlanIds = "", });
PlanType = 2, if (planId > 0)
CourseId = qitem.CourseId {
}); //写入时间
if (planId > 0) foreach (var citem in CourseTimeList)
{ {
//写入时间 class_TimeRepository.Insert(new RB_Class_Time()
foreach (var citem in CourseTimeList)
{ {
class_TimeRepository.Insert(new RB_Class_Time() ClassTimeId = 0,
{ ClassId = 0,
ClassTimeId = 0, ClassPlanId = planId,
ClassId = 0, StartTime = citem.StartTime,
ClassPlanId = planId, EndTime = citem.EndTime,
StartTime = citem.StartTime, Group_Id = groupId,
EndTime = citem.EndTime, School_Id = 0,//暂时 应该要赋值 订单上的预约校区
Group_Id = groupId, ClassStatus = 0,
School_Id = 0,//暂时 应该要赋值 订单上的预约校区 SuiPai = "",
ClassStatus = 0, VideoUrl = "",
SuiPai = "", TimeHour = citem.ClassHours
VideoUrl = "", });
TimeHour = citem.ClassHours }
});
}
//人数达标 写入计划课程
foreach (var qitem in item)
{
Dictionary<string, object> keyValues = new Dictionary<string, object>() { Dictionary<string, object> keyValues = new Dictionary<string, object>() {
{ nameof(RB_Scroll_Appointment_ViewModel.State), Common.Enum.Course.CourseAppointStateEnum.WaitCourse}, { nameof(RB_Scroll_Appointment_ViewModel.State), Common.Enum.Course.CourseAppointStateEnum.WaitCourse},
{ nameof(RB_Scroll_Appointment_ViewModel.ClassPlanId), planId} { nameof(RB_Scroll_Appointment_ViewModel.ClassPlanId), planId}
...@@ -320,8 +323,9 @@ namespace Edu.Module.Course ...@@ -320,8 +323,9 @@ namespace Edu.Module.Course
SendAppointmentSusscessMsg(token, qitem.StuOpenId, qitem, StartTime); SendAppointmentSusscessMsg(token, qitem.StuOpenId, qitem, StartTime);
} }
} }
#endregion
} }
#endregion
//给老师推送课程 信息 //给老师推送课程 信息
if (!string.IsNullOrEmpty(item.Key.WorkUserId)) if (!string.IsNullOrEmpty(item.Key.WorkUserId))
......
...@@ -1267,6 +1267,40 @@ WHERE a.`Status`=0 "); ...@@ -1267,6 +1267,40 @@ WHERE a.`Status`=0 ");
return Get<RB_Class_Plan_ViewModel>(builder.ToString()).ToList(); return Get<RB_Class_Plan_ViewModel>(builder.ToString()).ToList();
} }
/// <summary>
/// 获取最近7天上课计划 (约课)
/// </summary>
/// <param name="stuId"></param>
/// <param name="courseId"></param>
/// <param name="day"></param>
/// <param name="group_Id"></param>
/// <returns></returns>
public List<RB_Class_Plan_ViewModel> GetStudyCourseReviewForYK(int stuId, int courseId, int day, int group_Id)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT a.*
FROM rb_class_plan as a
inner join rb_scroll_appointment sa on a.ClassPlanId = sa.ClassPlanId
WHERE a.`Status`=0 ");
if (group_Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.Group_Id), group_Id);
}
if (courseId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.CourseId), courseId);
}
if (stuId > 0) {
builder.AppendFormat(" AND sa.StuId ={0} ", stuId);
}
builder.AppendFormat(@$" and a.PlanType =2 And a.ClassDate <='{Common.ConvertHelper.FormatDate(DateTime.Now)} 23:59:59'");
builder.AppendFormat(@" ORDER BY ClassDate DESC limit " + day);
return Get<RB_Class_Plan_ViewModel>(builder.ToString()).ToList();
}
/// <summary> /// <summary>
/// 获取最近的上课计划 /// 获取最近的上课计划
/// </summary> /// </summary>
...@@ -1275,7 +1309,7 @@ WHERE a.`Status`=0 "); ...@@ -1275,7 +1309,7 @@ WHERE a.`Status`=0 ");
/// <returns></returns> /// <returns></returns>
public RB_Class_Plan_ViewModel GetToDayClassPlan(int classId, int groupId) public RB_Class_Plan_ViewModel GetToDayClassPlan(int classId, int groupId)
{ {
string sql = $@"SELECT a.*,(select count(0) from rb_class_plan p where p.`Status`=0 and p.Group_Id ={groupId} and p.ClassId ={classId} and p.ClassDate < a.ClassDate) as LessonPlanNum string sql = $@"SELECT a.*
FROM rb_class_plan as a FROM rb_class_plan as a
WHERE a.`Status`=0 and a.Group_Id ={groupId} and a.ClassId ={classId} WHERE a.`Status`=0 and a.Group_Id ={groupId} and a.ClassId ={classId}
and a.ClassDate <='{Common.ConvertHelper.FormatDate(DateTime.Now)} 23:59:59' and a.ClassDate <='{Common.ConvertHelper.FormatDate(DateTime.Now)} 23:59:59'
...@@ -1283,6 +1317,24 @@ order by a.ClassDate desc limit 1"; ...@@ -1283,6 +1317,24 @@ order by a.ClassDate desc limit 1";
return Get<RB_Class_Plan_ViewModel>(sql).FirstOrDefault(); return Get<RB_Class_Plan_ViewModel>(sql).FirstOrDefault();
} }
/// <summary>
/// 获取最近的上课计划
/// </summary>
/// <param name="stuId"></param>
/// <param name="courseId"></param>
/// <param name="groupId"></param>
/// <returns></returns>
public RB_Class_Plan_ViewModel GetToDayClassPlanForYK(int stuId, int courseId, int groupId)
{
string sql = $@"SELECT a.*
FROM rb_class_plan as a
inner join rb_scroll_appointment sa on a.ClassPlanId = sa.ClassPlanId
WHERE a.`Status`=0 and a.Group_Id ={groupId} and a.PlanType =2 and a.CourseId ={courseId} and sa.StuId ={stuId}
and a.ClassDate <='{Common.ConvertHelper.FormatDate(DateTime.Now)} 23:59:59'
order by a.ClassDate desc limit 1";
return Get<RB_Class_Plan_ViewModel>(sql).FirstOrDefault();
}
/// <summary> /// <summary>
/// 获取最近的上课计划 /// 获取最近的上课计划
/// </summary> /// </summary>
......
...@@ -314,7 +314,7 @@ namespace Edu.WebApi.Controllers.Applet ...@@ -314,7 +314,7 @@ namespace Edu.WebApi.Controllers.Applet
var Words = new object(); var Words = new object();
if (studentModel.ClassId > 0) if (studentModel.ClassId > 0)
{ {
Words = classModule.GetIndexWords(studentModel.ClassId, studentModel.CourseId, appletUserInfo.Group_Id); Words = classModule.GetIndexWords(studentModel.ClassId, studentModel.CourseId, studentModel.GuestId, studentModel.ClassScrollType, studentModel.StuId, appletUserInfo.Group_Id);
} }
else else
{ {
...@@ -415,7 +415,8 @@ namespace Edu.WebApi.Controllers.Applet ...@@ -415,7 +415,8 @@ namespace Edu.WebApi.Controllers.Applet
x.CourseName, x.CourseName,
x.TotalHours, x.TotalHours,
x.CompleteHours, x.CompleteHours,
SurplusHours = x.TotalHours - x.CompleteHours SurplusHours = x.TotalHours - x.CompleteHours,
x.ClassScrollType
})); }));
} }
...@@ -431,13 +432,19 @@ namespace Edu.WebApi.Controllers.Applet ...@@ -431,13 +432,19 @@ namespace Edu.WebApi.Controllers.Applet
int ClassId = parms.GetInt("ClassId", 0);//班级ID int ClassId = parms.GetInt("ClassId", 0);//班级ID
int CourseId = parms.GetInt("CourseId", 0);//课程ID int CourseId = parms.GetInt("CourseId", 0);//课程ID
int GuestId = parms.GetInt("GuestId", 0);//订单GuestId int GuestId = parms.GetInt("GuestId", 0);//订单GuestId
int ClassScrollType = parms.GetInt("ClassScrollType", 0);//学习类型 1跟班 2约课
int StuId = parms.GetInt("StuId", 0);//学生ID
if (ClassId <= 0) if (ClassId <= 0)
{ {
return ApiResult.ParamIsNull("请传递班级ID"); return ApiResult.ParamIsNull("请传递班级ID");
} }
if (ClassScrollType == 2 && StuId <= 0)
{
return ApiResult.ParamIsNull("请传递学生ID");
}
//获取课程回顾 //获取课程回顾
int Day = 7;//默认最近7次上课 int Day = 7;//默认最近7次上课
var Review = classModule.GetStudyCourseReview(ClassId, Day, appletUserInfo.Group_Id); var Review = classModule.GetStudyCourseReview(ClassId, ClassScrollType, StuId, CourseId, Day, appletUserInfo.Group_Id);
//获取考试试卷 //获取考试试卷
List<RB_Examination_Publish_ViewModel> examinationPublishList = new List<RB_Examination_Publish_ViewModel>(); List<RB_Examination_Publish_ViewModel> examinationPublishList = new List<RB_Examination_Publish_ViewModel>();
...@@ -480,7 +487,7 @@ namespace Edu.WebApi.Controllers.Applet ...@@ -480,7 +487,7 @@ namespace Edu.WebApi.Controllers.Applet
var Words = new object(); var Words = new object();
if (ClassId > 0 && CourseId > 0) if (ClassId > 0 && CourseId > 0)
{ {
Words = classModule.GetIndexWords(ClassId, CourseId, appletUserInfo.Group_Id,appletUserInfo.Id); Words = classModule.GetIndexWords(ClassId, CourseId, GuestId, ClassScrollType, StuId, appletUserInfo.Group_Id);
} }
else else
{ {
......
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