Commit 4bddd649 authored by liudong1993's avatar liudong1993

1

parent 2a575a28
......@@ -288,14 +288,14 @@ ORDER BY {(Type == 1 ? "og.Id asc" : "og.Id desc")} LIMIT 1";
/// <param name="accountId"></param>
/// <param name="group_Id"></param>
/// <returns></returns>
public RB_Student_OrderGuest_ViewModel GetStudentLearningCourse(int accountId, int group_Id)
public RB_Student_OrderGuest_ViewModel GetStudentLearningCourse(int accountId, int group_Id, int guestId =0)
{
string sql = $@"SELECT og.*,o.CourseId,g.CourseChapterNo,c.ClassScrollType
string sql = $@"SELECT og.*,o.CourseId,g.CourseChapterNo,c.ClassScrollType,o.ScrollSchoolId
FROM rb_student_orderguest og
INNER JOIN rb_order_guest g on og.GuestId = g.Id
INNER JOIN rb_order o on og.OrderId = o.OrderId
INNER JOIN rb_class c on o.ClassId = c.ClassId
WHERE og.Status =0 and g.`Status` =0 and o.Group_Id ={group_Id} and o.OrderState <>3 and o.OrderType =1 and g.TotalHours > g.CompleteHours and og.Student_Id ={accountId}
WHERE og.Status =0 and g.`Status` =0 and o.Group_Id ={group_Id} and o.OrderState <>3 and o.OrderType =1 and g.TotalHours > g.CompleteHours and og.Student_Id ={accountId} {(guestId > 0 ? "and og.GuestId =" + guestId : "")}
ORDER BY og.Id asc LIMIT 1";
return Get<RB_Student_OrderGuest_ViewModel>(sql).FirstOrDefault();
}
......@@ -774,6 +774,43 @@ LEFT JOIN rb_channel ch on s.StuChannel = ch.Id";
GROUP BY s.StuId order by s.StuId desc";
return GetPage<RB_Student_ViewModel>(pageIndex, pageSize, out count, sql, parameters).ToList();
}
#endregion
#region 预约管理
/// <summary>
/// 获取可约课的学生列表
/// </summary>
/// <param name="courseId"></param>
/// <param name="group_Id"></param>
/// <returns></returns>
public List<RB_Student_OrderGuest_ViewModel> GetCanAppointmentStuList(int courseId, int NextChapterNo, int SchoolId, int group_Id)
{
string sql = $@"SELECT sog.Student_Id,sog.GuestId,s.StuName as GuestName,og.CourseChapterNo,DATE_FORMAT(sa.Date,'%Y-%m-%d') as AppointDate,sa.AppointNum FROM rb_student_orderguest sog
INNER JOIN rb_order_guest og on sog.GuestId = og.Id
INNER JOIN rb_order o on sog.OrderId = o.OrderId
INNER JOIN rb_student s on sog.Student_Id = s.StuId
INNER JOIN rb_class c on o.ClassId = c.ClassId
LEFT JOIN (
SELECT StuId,MAX(Date) AS Date, COUNT(0) as AppointNum FROM rb_scroll_appointment
WHERE `Status` =0 and State <>5 and CourseEndTime >=NOW() and Group_Id ={group_Id} GROUP BY StuId
) sa on sog.Student_Id = sa.StuId
WHERE o.Group_Id ={group_Id} and sog.`Status` =0 and og.GuestState <>2 and o.OrderState <>3 and c.ClassScrollType =2
and og.TotalChapterNo > og.CourseChapterNo ";
if (courseId > 0) {
sql += $@" and o.CourseId ={courseId}";
}
if (NextChapterNo > 0) {
sql += $@" and (og.CourseChapterNo + 1 + IFNULL(sa.AppointNum,0)) ={NextChapterNo}";
}
if (SchoolId >= 0) {
sql += $@" and o.ScrollSchoolId ={SchoolId}";
}
return Get<RB_Student_OrderGuest_ViewModel>(sql).ToList();
}
#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