Commit 3e710ea2 authored by liudong1993's avatar liudong1993

1

parent dd39843c
......@@ -85,5 +85,15 @@ namespace Edu.Model.Entity.Reserve
/// 试听课程编号
/// </summary>
public int TrialLessonId { get; set; }
/// <summary>
/// 类型 0正常 1跟班
/// </summary>
public int ReserveType { get; set; }
/// <summary>
/// 跟班关联的 上课计划ID
/// </summary>
public int ClassPlanId { get; set; }
}
}
......@@ -194,5 +194,10 @@ namespace Edu.Model.ViewModel.Grade
/// 约课Ids
/// </summary>
public string AppointIds { get; set; }
/// <summary>
/// 类型 0正常 1跟班
/// </summary>
public int ReserveType { get; set; }
}
}
......@@ -185,5 +185,15 @@ namespace Edu.Model.ViewModel.Reserve
/// 创建人
/// </summary>
public string QCreateByIds { get; set; }
/// <summary>
/// 类型 1跟班
/// </summary>
public int ReserveType { get; set; }
/// <summary>
/// 跟班计划ID
/// </summary>
public int ClassPlanId { get; set; }
}
}
......@@ -3864,6 +3864,8 @@ namespace Edu.Module.Course
StartTime = subItem.ClassTime,
subItem.EndTime,
CompleteProgress = -1,
subItem.ReserveType,
subItem.ClassPlanId,
GuestList = visitorList?.Where(qitem => qitem.ReserveClassId == subItem.ReserveClassId)?.Select(qitem => new { GuestName = qitem.VisitorName })
});
}
......@@ -4381,6 +4383,8 @@ namespace Edu.Module.Course
subItem.EndTime,
CompleteProgress = -1,
FeedBackStatus = 0,
subItem.ReserveType,
subItem.ClassPlanId,
GuestList = visitorList?.Where(qitem => qitem.ReserveClassId == subItem.ReserveClassId)?.Select(qitem => new { GuestName = qitem.VisitorName }),
});
......@@ -4603,6 +4607,8 @@ namespace Edu.Module.Course
StartTime = subItem.ClassTime,
subItem.EndTime,
CompleteProgress = -1,
subItem.ReserveType,
subItem.ClassPlanId,
GuestList = visitorList?.Where(qitem => qitem.ReserveClassId == subItem.ReserveClassId)?.Select(qitem => new { GuestName = qitem.VisitorName })
});
}
......@@ -4655,6 +4661,124 @@ namespace Edu.Module.Course
return RList;
}
/// <summary>
/// 预约课管理
/// </summary>
/// <param name="StartDate"></param>
/// <param name="EndDate"></param>
/// <param name="teacherId"></param>
/// <param name="classRoomId"></param>
/// <param name="group_Id"></param>
/// <returns></returns>
public object GetToDayCoursePlanList(string StartDate, string EndDate, int teacherId, int classRoomId, int group_Id)
{
//正常上课计划列表
var list = new List<RB_Class_Plan_ViewModel>();
//约课列表
var appointList = new List<RB_Scroll_Appointment_ViewModel>();
RB_Class_Plan_ViewModel query = new RB_Class_Plan_ViewModel()
{
StartTime = StartDate,
EndTime = EndDate,
TeacherId = teacherId,
ClassRoomId = classRoomId,
Group_Id = group_Id,
School_Id = -1
};
RB_Scroll_Appointment_ViewModel AppointQuery = new RB_Scroll_Appointment_ViewModel()
{
Group_Id = query.Group_Id,
StartTime = query.StartTime,
EntTime = query.EndTime,
TeacherId = query.TeacherId,
RoomId = query.ClassRoomId,
Q_AppointState = 2
};
list = class_PlanRepository.GetClassPlanStatisticalRepository(query);
appointList = scroll_AppointmentRepository.GetAppointList(AppointQuery);
List<object> RList = new List<object>();
if (list != null || appointList != null)
{
var timeList = new List<RB_Class_Time_ViewModel>();
var guestList = new List<RB_Order_Guest_ViewModel>();
var tempGuestList = new List<RB_Order_Guest_ViewModel>();//2021-07-20 Add By:W临时上课邀请
if (list != null && list.Count > 0)
{
string classIds = string.Join(",", list.Select(qitem => qitem.ClassId));
string planIds = string.Join(",", list.Select(qitem => qitem.ClassPlanId));
timeList = class_TimeRepository.GetClassTimeListRepository(new RB_Class_Time_ViewModel() { QClassIds = classIds, QClassPlanIds = planIds });
guestList = order_GuestRepository.GetOrderGuestListRepository(new RB_Order_Guest_ViewModel() { ClassIds = classIds });
tempGuestList = order_GuestRepository.GetTempInvitationGuest(new Model.ViewModel.EduTask.RB_Temporary_Invitation_ViewModel { ClassIds = classIds, ClassPlanIds = planIds });
}
var tempList = list.OrderBy(x => x.ClassDate).ThenBy(qitem => qitem.StartTime);
foreach (var subItem in tempList)
{
var tempTimeList = timeList?.Where(qitem => qitem.ClassPlanId == subItem.ClassPlanId)?.ToList()?.OrderBy(qitem => qitem.StartTime);
var tempTimeGuestList = new List<RB_Order_Guest_ViewModel>();
tempTimeGuestList.AddRange(guestList.Where(qitem => qitem.ClassId == subItem.ClassId && (qitem.GuestState == GuestStateEnum.Normal || qitem.GuestState == GuestStateEnum.StopClassesApplyIng || ((qitem.GuestState == GuestStateEnum.StopClasses || qitem.GuestState == GuestStateEnum.Graduate) && qitem.ChangeEffectTime.HasValue && Convert.ToDateTime(Common.ConvertHelper.FormatDate(qitem.ChangeEffectTime)) >= subItem.ClassDate))));
if (tempGuestList != null && tempGuestList.Any())
{
tempTimeGuestList.AddRange(tempGuestList.Where(qitem => qitem.ClassId == subItem.ClassId && subItem.ClassPlanId == qitem.ClassPlanId && (qitem.GuestState == GuestStateEnum.Normal || qitem.GuestState == GuestStateEnum.StopClassesApplyIng || ((qitem.GuestState == GuestStateEnum.StopClasses || qitem.GuestState == GuestStateEnum.Graduate) && qitem.ChangeEffectTime.HasValue && Convert.ToDateTime(Common.ConvertHelper.FormatDate(qitem.ChangeEffectTime)) >= subItem.ClassDate))));
}
int CompleteProgress = 0;
if (subItem.TotalPlanNum > 0)
{
CompleteProgress = (int)((Convert.ToDecimal(subItem.FinishNum) / Convert.ToDecimal(subItem.TotalPlanNum)) * 100);
}
RList.Add(new
{
subItem.ClassPlanId,
ClassType = 1,
ClassDate = subItem.ClassDate.ToString("yyyy-MM-dd"),
subItem.ClassId,
subItem.ClassName,
subItem.CourseId,
subItem.CourseName,
subItem.ClassRoomId,
subItem.RoomName,
subItem.TeacherId,
subItem.TeacherName,
CompleteProgress,
subItem.Ranks,
subItem.TotalPlanNum,
StartTime = tempTimeList?.FirstOrDefault()?.StartTime ?? "",
EndTime = tempTimeList?.LastOrDefault()?.EndTime ?? "",
GuestList = tempTimeGuestList?.Select(qitem => new { qitem.GuestName })
});
}
appointList.GroupBy(x => new { x.Date, x.TeacherId, x.TeacherName, x.RoomId, x.RoomName, x.CourseId, x.CourseName, x.CourseGradeId, x.ChapterNo, x.ShiftSort, x.CourseSTime }).OrderBy(x => x.Key.Date).ThenBy(x => x.Key.CourseSTime).ToList().ForEach(item =>
{
//上课时段
string STime = item.FirstOrDefault().CourseSTime ?? "", ETime = item.FirstOrDefault().CourseETime ?? "";
RList.Add(new
{
item.FirstOrDefault().ClassPlanId,
ClassType = 3,
ClassDate = item.Key.Date.ToString("yyyy-MM-dd"),
ClassId = 0,
ClassName = "预约课",
item.Key.CourseId,
item.Key.CourseName,
ClassRoomId = item.Key.RoomId,
item.Key.RoomName,
item.Key.TeacherName,
Ranks = item.Key.ChapterNo,
TotalPlanNum = item.FirstOrDefault().TotalChapterNo,
StartTime = STime,
EndTime = ETime,
CompleteProgress = -1,
GuestList = item.Select(qitem => new { GuestName = qitem.StuName, qitem.StuId, AppointmentId = qitem.Id, qitem.AppointType })
});
});
}
return RList;
}
/// <summary>
/// 获取班级上课记录
/// </summary>
......@@ -4746,6 +4870,8 @@ namespace Edu.Module.Course
EndTime = item?.EndTime ?? "",
FeedBackStatus = feedBackStatus,
GuestList = grList,
item.ClassPlanId,
item.ReserveType
});
}
}
......
......@@ -123,23 +123,46 @@ namespace Edu.Module.Duty
TeacherId = model.TeacherId,
UpdateBy = model.UpdateBy,
UpdateTime = model.UpdateTime,
EndTime=model.EndTime,
TrialLessonId=model.TrialLessonId
EndTime = model.EndTime,
TrialLessonId = model.TrialLessonId,
ClassPlanId = model.ClassPlanId,
ReserveType = model.ReserveType
};
if (model.ReserveClassId <= 0)
{
var newFlag = SetReserveClassModule(reserveClass, out string newMsg);
if (!newFlag)
if (model.ReserveType == 1)
{
message = newMsg;
return false;
//跟班 先查询该计划是否已有试听班级
var remodel = reserve_ClassRepository.GetReserveClassListRepository(new RB_Reserve_Class_Extend() { Group_Id = model.Group_Id, ReserveType = 1, ClassPlanId = model.ClassPlanId }).FirstOrDefault();
if (remodel != null)
{
model.ReserveClassId = remodel.ReserveClassId;
}
else {
var newFlag = SetReserveClassModule(reserveClass, out string newMsg);
if (!newFlag)
{
message = newMsg;
return false;
}
model.ReserveClassId = reserveClass.ReserveClassId;
}
}
model.ReserveClassId = reserveClass.ReserveClassId;
else
{
var newFlag = SetReserveClassModule(reserveClass, out string newMsg);
if (!newFlag)
{
message = newMsg;
return false;
}
model.ReserveClassId = reserveClass.ReserveClassId;
}
}
if (visitor_ReserveRepository.ExistsVisitorReserveRepository(model))
{
//message = string.Format("已存在此访客的预约试听课信息,请重新选择!");
//return false;
message = string.Format("已存在此访客的预约试听课信息,请重新选择!");
return false;
}
if (model.Id > 0)
{
......@@ -331,31 +354,34 @@ namespace Edu.Module.Duty
var chooseDateTime = Convert.ToDateTime(Common.ConvertHelper.FormatDate(model.ClassDate) + " " + model.ClassTime);
var chooseEndTime = Convert.ToDateTime(Common.ConvertHelper.FormatDate(model.ClassDate) + " " + model.EndTime);
#region 教师验证
if (CheckClassTeacherModule(chooseDateTime, chooseEndTime, model, out string newMsg))
if (model.ReserveType != 1)
{
message = newMsg;
return false;
}
#endregion
#region 教师验证
if (CheckClassTeacherModule(chooseDateTime, chooseEndTime, model, out string newMsg))
{
message = newMsg;
return false;
}
#endregion
#region 验证教室
if (CheckClassRoomModule(chooseDateTime, chooseEndTime, model,out string roomMessage))
{
message = roomMessage;
return false;
}
#endregion
#region 验证教室
if (CheckClassRoomModule(chooseDateTime, chooseEndTime, model, out string roomMessage))
{
message = roomMessage;
return false;
}
#endregion
#region 验证预约课
#region 验证预约课
if (CheckAppointmentModule(chooseDateTime, chooseEndTime, model, out string appointMessage))
{
message = appointMessage;
return false;
}
if (CheckAppointmentModule(chooseDateTime, chooseEndTime, model, out string appointMessage))
{
message = appointMessage;
return false;
}
#endregion
#endregion
}
if (model.ReserveClassId > 0)
{
......
......@@ -775,7 +775,7 @@ GROUP BY A.ClassPlanId,A.StuId,A.CourseId ,A.ClassDate,A.ClassRoomId
builderAppoint.AppendFormat(@"
SELECT 3 as ClassType,IFNULL(t1.ClassTimeId,0) as ClassTimeId,a.CourseSTime as NewPlanDateTime,a.CourseSTime as StartTime,a.CourseETime as EndTime, IFNULL(t1.ClassPlanId,0) as ClassPlanId, 0 as ClassId, a.Date as ClassDate, a.RoomId as ClassRoomId,'预约课' as ClassName, c.CourseName
,ac.AccountId as Teacher_Id,t.TeacherName,r.RoomName,r.SeatNum as RoomNum, og.TotalChapterNo as TotalPlanNum, GROUP_CONCAT(a.Id) AS AppointIds,a.ChapterNo
,ac.AccountId as Teacher_Id,t.TeacherName,r.RoomName,r.SeatNum as RoomNum, og.TotalChapterNo as TotalPlanNum, GROUP_CONCAT(a.Id) AS AppointIds,a.ChapterNo,0 as ReserveType
FROM rb_scroll_appointment a
INNER JOIN rb_course c on a.CourseId = c.CourseId
INNER JOIN rb_account ac on a.AccountId = ac.Id
......@@ -786,9 +786,9 @@ LEFT JOIN rb_class_time t1 on t1.ClassPlanId = a.ClassPlanId
WHERE 1=1 {0} GROUP BY a.CourseSTime,a.CourseETime,a.RoomId,a.Date ", whereAppoint.ToString());
builderReserveClass.AppendFormat(@"
SELECT 2 as ClassType,A.ReserveClassId as ClassTimeId,a.ClassTime AS NewPlanDateTime ,a.ClassTime as StartTime,a.EndTime,0 as ClassPlanId,0 as ClassId,a.ClassDate,a.ClassRoomId,'试听课' as ClassName,a.ClassContent as CourseName,
SELECT 2 as ClassType,A.ReserveClassId as ClassTimeId,a.ClassTime AS NewPlanDateTime ,a.ClassTime as StartTime,a.EndTime,A.ClassPlanId,0 as ClassId,a.ClassDate,a.ClassRoomId,'试听课' as ClassName,a.ClassContent as CourseName,
a.TeacherId as Teacher_Id,IFNULL(D.TeacherName,'') AS TeacherName,IFNULL(E.RoomName,'') AS RoomName,
IFNULL(E.SeatNum,0) AS RoomNum,0 as TotalPlanNum,'' as AppointIds,0 as ChapterNo
IFNULL(E.SeatNum,0) AS RoomNum,0 as TotalPlanNum,'' as AppointIds,0 as ChapterNo,A.ReserveType
FROM RB_Reserve_Class AS A LEFT JOIN rb_teacher AS D ON A.TeacherId=D.TId
LEFT JOIN rb_class_room AS E ON A.ClassRoomId=E.RoomId
WHERE 1=1 {0} ", whereReserve.ToString());
......@@ -796,7 +796,7 @@ WHERE 1=1 {0} ", whereReserve.ToString());
builderClass.AppendFormat(@"
SELECT 1 as ClassType,F.ClassTimeId,CONCAT( DATE_FORMAT(A.ClassDate,'%Y-%m-%d') ,' ',f.StartTime,':00') AS NewPlanDateTime,F.StartTime,f.EndTime,A.ClassPlanId, A.ClassId,A.ClassDate,A.ClassRoomId,B.ClassName,C.CourseName,
B.Teacher_Id,IFNULL(D.TeacherName,'') AS TeacherName,E.RoomName,IFNULL(E.SeatNum,0) AS RoomNum,plan.TotalPlanNum , '' as AppointIds,0 as ChapterNo
B.Teacher_Id,IFNULL(D.TeacherName,'') AS TeacherName,E.RoomName,IFNULL(E.SeatNum,0) AS RoomNum,plan.TotalPlanNum , '' as AppointIds,0 as ChapterNo,0 as ReserveType
FROM rb_class_time as F INNER JOIN
rb_class_plan AS A on F.ClassPlanId=a.ClassPlanId
INNER JOIN rb_class AS B ON A.ClassId=B.ClassId
......@@ -809,27 +809,27 @@ WHERE 1=1 AND A.`Status`=0 {0}
if (query.ClassType == 1)
{
builder.AppendFormat(@"SELECT A.ClassType,A.ClassTimeId,A.Teacher_Id,A.TeacherName,A.RoomName, a.RoomNum,A.StartTime,A.EndTime,A.ClassPlanId,A.ClassId,A.ClassDate,A.ClassRoomId,A.ClassName,A.CourseName,a.TotalPlanNum,
builder.AppendFormat(@"SELECT A.ClassType,A.ClassTimeId,A.Teacher_Id,A.TeacherName,A.RoomName, a.RoomNum,A.StartTime,A.EndTime,A.ClassPlanId,A.ClassId,A.ClassDate,A.ClassRoomId,A.ClassName,A.CourseName,a.TotalPlanNum,A.ReserveType,
(SELECT COUNT(*) from rb_class_plan where `Status`=0 and DATE_FORMAT(ClassDate,'%Y-%m-%d') <=DATE_FORMAT(a.ClassDate,'%Y-%m-%d') and ClassId=a.ClassId) as Ranks
FROM ( {0} ) AS A
GROUP BY a.ClassType,A.ClassTimeId,A.ClassPlanId,A.ClassId ,A.ClassDate,A.ClassRoomId ORDER BY {1}", builderClass.ToString(), orderby);
}
else if (query.ClassType == 2)
{
builder.AppendFormat(@"SELECT A.ClassType,A.ClassTimeId,A.Teacher_Id,A.TeacherName,A.RoomName, a.RoomNum,A.StartTime,A.EndTime,A.ClassPlanId,A.ClassId,A.ClassDate,A.ClassRoomId,A.ClassName,A.CourseName,a.TotalPlanNum,
builder.AppendFormat(@"SELECT A.ClassType,A.ClassTimeId,A.Teacher_Id,A.TeacherName,A.RoomName, a.RoomNum,A.StartTime,A.EndTime,A.ClassPlanId,A.ClassId,A.ClassDate,A.ClassRoomId,A.ClassName,A.CourseName,a.TotalPlanNum,A.ReserveType,
(SELECT COUNT(*) from rb_class_plan where `Status`=0 and DATE_FORMAT(ClassDate,'%Y-%m-%d') <=DATE_FORMAT(a.ClassDate,'%Y-%m-%d') and ClassId=a.ClassId) as Ranks
FROM ( {0} ) AS A
GROUP BY a.ClassType,A.ClassTimeId,A.ClassPlanId,A.ClassId ,A.ClassDate,A.ClassRoomId ORDER BY {1} ", builderReserveClass.ToString(), orderby);
}
else if (query.ClassType == 3) {
builder.AppendFormat(@"SELECT A.ClassType,A.ClassTimeId,A.Teacher_Id,A.TeacherName,A.RoomName, a.RoomNum,A.StartTime,A.EndTime,A.ClassPlanId,A.ClassId,A.ClassDate,A.ClassRoomId,A.ClassName,A.CourseName,a.TotalPlanNum,A.AppointIds,
builder.AppendFormat(@"SELECT A.ClassType,A.ClassTimeId,A.Teacher_Id,A.TeacherName,A.RoomName, a.RoomNum,A.StartTime,A.EndTime,A.ClassPlanId,A.ClassId,A.ClassDate,A.ClassRoomId,A.ClassName,A.CourseName,a.TotalPlanNum,A.AppointIds,A.ReserveType,
A.ChapterNo as Ranks
FROM ( {0} ) AS A
GROUP BY a.ClassType,A.ClassTimeId,A.ClassPlanId,A.ClassId ,A.ClassDate,A.ClassRoomId,A.StartTime ORDER BY {1}", builderAppoint.ToString(), orderby);
}
else
{
builder.AppendFormat(@"SELECT A.ClassType,A.ClassTimeId,A.Teacher_Id,A.TeacherName,A.RoomName, a.RoomNum,A.StartTime,A.EndTime,A.ClassPlanId,A.ClassId,A.ClassDate,A.ClassRoomId,A.ClassName,A.CourseName,a.TotalPlanNum,A.AppointIds,
builder.AppendFormat(@"SELECT A.ClassType,A.ClassTimeId,A.Teacher_Id,A.TeacherName,A.RoomName, a.RoomNum,A.StartTime,A.EndTime,A.ClassPlanId,A.ClassId,A.ClassDate,A.ClassRoomId,A.ClassName,A.CourseName,a.TotalPlanNum,A.AppointIds,A.ReserveType,
case when A.ClassType =3 then A.ChapterNo else (SELECT COUNT(*) from rb_class_plan where `Status`=0 and DATE_FORMAT(ClassDate,'%Y-%m-%d') <=DATE_FORMAT(a.ClassDate,'%Y-%m-%d') and ClassId=a.ClassId) end as Ranks
FROM ( {0} UNION all {1} UNION all {3} ) AS A
GROUP BY a.ClassType,A.ClassTimeId,A.ClassPlanId,A.ClassId ,A.ClassDate,A.ClassRoomId,A.StartTime ORDER BY {2} ", builderClass.ToString(), builderReserveClass.ToString(), orderby, builderAppoint.ToString());
......
......@@ -62,6 +62,10 @@ WHERE 1=1
builder.AppendFormat(" AND F.{0} LIKE @LessonName ", nameof(RB_Reserve_Class_Extend.LessonName));
parameters.Add("LessonName", "%" + query.LessonName.Trim() + "%");
}
if (query.ReserveType == 1)
{
builder.AppendFormat(" AND A.{0}=0 ", nameof(RB_Reserve_Class_Extend.ReserveType));//查询正常的试听
}
}
builder.AppendFormat(" ORDER BY A.{0} ASC ", nameof(RB_Reserve_Class_Extend.ClassDate));
return GetPage<RB_Reserve_Class_Extend>(pageIndex,pageSize,out rowsCount, builder.ToString(),parameters).ToList();
......@@ -115,6 +119,14 @@ WHERE 1=1
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Reserve_Class_Extend.ReserveClassId), query.ReserveClassId);
}
if (query.ReserveType > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Reserve_Class_Extend.ReserveType), query.ReserveType);
}
if (query.ClassPlanId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Reserve_Class_Extend.ClassPlanId), query.ClassPlanId);
}
}
return Get<RB_Reserve_Class_Extend>(builder.ToString(),parameters).ToList();
}
......@@ -162,7 +174,7 @@ WHERE 1=1 AND c.Status=0 AND NOT(CONCAT(substring(C.ClassDate,1,10),' ',C.ClassT
/// <returns></returns>
public List<RB_Reserve_Class_Extend> GetClassReserveList(RB_Reserve_Class_Extend dmodel)
{
string where = " 1=1 and c.Status =0 and c.TrialLessonId >0 and t.CalculateType =2";
string where = " 1=1 and c.Status =0 and c.TrialLessonId >0 and t.CalculateType =2 and c.ReserveType =0";
if (dmodel.Group_Id > 0)
{
where += $@" and c.{nameof(RB_Reserve_Class_Extend.Group_Id)} ={dmodel.Group_Id}";
......@@ -199,7 +211,7 @@ where {where}";
/// <returns></returns>
public List<RB_Reserve_Class_Extend> GetTeacherHoursDetialList(string userIds, int schoolId, int classId, string startMonth, string endMonth, int groupId)
{
string where = " 1=1 and c.Status =0 and c.TrialLessonId >0 and t.CalculateType =2";
string where = " 1=1 and c.Status =0 and c.TrialLessonId >0 and t.CalculateType =2 and c.ReserveType =0";
if (groupId > 0)
{
where += $@" and c.{nameof(RB_Reserve_Class_Extend.Group_Id)} ={groupId}";
......
......@@ -30,7 +30,7 @@ namespace Edu.Repository.Reserve
var parameters = new DynamicParameters();
builder.Append(@"
SELECT A.*,IFNULL(B.StuName,'') AS VisitorName,C.ClassDate,C.ClassTime,C.EndTime,C.ClassContent,IFNULL(D.TeacherName,'') AS TeacherName,IFNULL(E.RoomName,'') AS RoomName
,IFNULL(B.StuTel,'') AS StuTel,IFNULL(F.LessonName,'') AS LessonName,IFNULL(B.QQ,'') AS QQ,IFNULL(B.WeChatNo,'') AS WeChatNo
,IFNULL(B.StuTel,'') AS StuTel,IFNULL(F.LessonName,'') AS LessonName,IFNULL(B.QQ,'') AS QQ,IFNULL(B.WeChatNo,'') AS WeChatNo,C.ReserveType,C.ClassPlanId
FROM RB_Visitor_Reserve AS A LEFT JOIN rb_student AS B ON A.Visitor_Id=B.StuId
LEFT JOIN rb_reserve_class AS C ON A.ReserveClassId=C.ReserveClassId
LEFT JOIN rb_teacher AS D ON C.TeacherId=D.TId
......
......@@ -502,6 +502,27 @@ namespace Edu.WebApi.Controllers.Course
return ApiResult.Success(data: obj);
}
/// <summary>
/// 获取当日所有的课程
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetToDayCoursePlanList() {
var StartDate = base.ParmJObj.GetStringValue("StartDate");
var EndDate = base.ParmJObj.GetStringValue("EndDate");
int TeacherId = base.ParmJObj.GetInt("TeacherId");
int ClassRoomId = base.ParmJObj.GetInt("ClassRoomId");
if (string.IsNullOrEmpty(StartDate) || string.IsNullOrEmpty(EndDate))
{
return ApiResult.ParamIsNull();
}
var obj = classModule.GetToDayCoursePlanList(StartDate, EndDate, TeacherId, ClassRoomId, base.UserInfo.Group_Id);
return ApiResult.Success(data: obj);
}
#endregion
}
}
......@@ -101,18 +101,25 @@ namespace Edu.WebApi.Controllers.Duty
Visitor_Id = base.ParmJObj.GetInt("Visitor_Id"),
Remark = base.ParmJObj.GetStringValue("Remark"),
ReserveClassId = base.ParmJObj.GetInt("ReserveClassId"),
ClassDate=base.ParmJObj.GetDateTime("ClassDate"),
ClassDate = base.ParmJObj.GetDateTime("ClassDate"),
ClassTime = base.ParmJObj.GetStringValue("ClassTime"),
TeacherId=base.ParmJObj.GetInt("TeacherId"),
ClassRoomId=base.ParmJObj.GetInt("ClassRoomId"),
TeacherId = base.ParmJObj.GetInt("TeacherId"),
ClassRoomId = base.ParmJObj.GetInt("ClassRoomId"),
ClassContent = base.ParmJObj.GetStringValue("ClassContent"),
EndTime=base.ParmJObj.GetStringValue("EndTime"),
TrialLessonId=base.ParmJObj.GetInt("TrialLessonId"),
EndTime = base.ParmJObj.GetStringValue("EndTime"),
TrialLessonId = base.ParmJObj.GetInt("TrialLessonId"),
ReserveType = base.ParmJObj.GetInt("ReserveType", 0),
ClassPlanId = base.ParmJObj.GetInt("ClassPlanId", 0)
};
if (string.IsNullOrEmpty(model.ClassTime))
{
return ApiResult.ParamIsNull("请选择预约时间段!");
}
if (model.ReserveType == 1 && model.ClassPlanId <= 0)
{
return ApiResult.ParamIsNull("请传递选择的跟班计划");
}
model.ReserveStatus = 0;
model.Group_Id = base.UserInfo.Group_Id;
model.School_Id = base.UserInfo.School_Id;
......@@ -183,6 +190,7 @@ namespace Edu.WebApi.Controllers.Duty
TeacherId=base.ParmJObj.GetInt("TeacherId"),
ClassRoomId=base.ParmJObj.GetInt("ClassRoomId"),
LessonName=base.ParmJObj.GetStringValue("LessonName"),
ReserveType = base.ParmJObj.GetInt("ReserveType")
};
var list = visitorReserveModule.GetReserveClassPageModule(pageModel.PageIndex, pageModel.PageSize, out long rowsCount, query);
foreach (var item in list)
......@@ -275,5 +283,44 @@ namespace Edu.WebApi.Controllers.Duty
return flag ? ApiResult.Success() : ApiResult.Failed(message: message);
}
#endregion
#region 跟班试听
/// <summary>
/// 添加跟班试听
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult SetReserveJoinClass()
{
var model = new RB_Reserve_Class_Extend()
{
ReserveClassId = base.ParmJObj.GetInt("ReserveClassId"),
TeacherId = base.ParmJObj.GetInt("TeacherId"),
ClassDate = base.ParmJObj.GetDateTime("ClassDate"),
ClassTime = base.ParmJObj.GetStringValue("ClassTime"),
ClassRoomId = base.ParmJObj.GetInt("ClassRoomId"),
ClassContent = base.ParmJObj.GetStringValue("ClassContent"),
EndTime = base.ParmJObj.GetStringValue("EndTime"),
TrialLessonId = base.ParmJObj.GetInt("TrialLessonId"),
};
if (string.IsNullOrEmpty(model.ClassTime))
{
return ApiResult.ParamIsNull("请选择预约时间!");
}
model.Group_Id = base.UserInfo.Group_Id;
model.School_Id = base.UserInfo.School_Id;
model.CreateBy = base.UserInfo.Id;
model.CreateTime = System.DateTime.Now;
model.UpdateBy = base.UserInfo.Id;
model.UpdateTime = System.DateTime.Now;
model.Status = Common.Enum.DateStateEnum.Normal;
bool retult = visitorReserveModule.SetReserveClassModule(model, out string message);
return retult ? ApiResult.Success() : ApiResult.Failed(message: message);
}
#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