Commit f13b4d2e authored by liudong1993's avatar liudong1993

1

parent aadcc7cc
......@@ -136,5 +136,10 @@ namespace Edu.Model.Entity.Scroll
/// 备注
/// </summary>
public string Remark { get; set; }
/// <summary>
/// 类型 1 正常 2补课 3重上课
/// </summary>
public int AppointType { get; set; }
}
}
\ No newline at end of file
......@@ -37,6 +37,11 @@ namespace Edu.Model.Entity.Scroll
/// </summary>
public int ChapterNo { get; set; }
/// <summary>
/// 状态 1未补课 2已补课
/// </summary>
public int State { get; set; }
/// <summary>
/// 删除
/// </summary>
......
......@@ -19,6 +19,16 @@ namespace Edu.Model.ViewModel.Scroll
/// 开始的章节
/// </summary>
public int SChapterNo { get; set; }
/// <summary>
/// 学员
/// </summary>
public string StuName { get; set; }
/// <summary>
/// 订单ID
/// </summary>
public int OrderId { get; set; }
}
}
\ No newline at end of file
......@@ -3857,7 +3857,7 @@ namespace Edu.Module.Course
StartTime = STime,
EndTime = ETime,
CompleteProgress = -1,
GuestList = item.Select(qitem => new { GuestName = qitem.StuName }),
GuestList = item.Select(qitem => new { GuestName = qitem.StuName, qitem.AppointType }),
AppointState = item.Where(x => x.State == CourseAppointStateEnum.WaitSure).Any() ? 1 : 2,
item.FirstOrDefault().ScrollMinNum
});
......@@ -4378,7 +4378,7 @@ namespace Edu.Module.Course
EndTime = ETime,
CompleteProgress = -1,
FeedBackStatus = 0,
GuestList = item.Select(qitem => new { GuestName = qitem.StuName }),
GuestList = item.Select(qitem => new { GuestName = qitem.StuName, qitem.AppointType }),
AppointState = item.Where(x => x.State == CourseAppointStateEnum.WaitSure).Any() ? 1 : 2,
item.FirstOrDefault().ScrollMinNum
});
......@@ -4596,7 +4596,7 @@ namespace Edu.Module.Course
StartTime = STime,
EndTime = ETime,
CompleteProgress = -1,
GuestList = item.Select(qitem => new { GuestName = qitem.StuName, qitem.StuId, AppointmentId = qitem.Id }),
GuestList = item.Select(qitem => new { GuestName = qitem.StuName, qitem.StuId, AppointmentId = qitem.Id, qitem.AppointType }),
AppointState = item.Where(x => x.State == CourseAppointStateEnum.WaitSure).Any() ? 1 : 2,
item.Key.ShiftSort,
EnrollNum = item.Count(),
......
This diff is collapsed.
......@@ -56,6 +56,10 @@ namespace Edu.Repository.Scroll
{
where += $@" and r.{nameof(RB_Scroll_Appointment_ViewModel.StuId)} in({demodel.StuIds})";
}
if (demodel.AppointType > 0)
{
where += $@" and r.{nameof(RB_Scroll_Appointment_ViewModel.AppointType)} ={demodel.AppointType}";
}
string sql = $@"
SELECT r.*,c.AccountId as TeacherId,s.StuName,cou.CourseName,cou.ScrollMinNum,cou.ScrollMaxNum From RB_Scroll_Appointment r
......@@ -210,6 +214,10 @@ ORDER BY r.Id desc ";
{
where += $@" and r.{nameof(RB_Scroll_Appointment_ViewModel.ShiftSort)} ='{demodel.ShiftSort}'";
}
if (demodel.AppointType > 0)
{
where += $@" and r.{nameof(RB_Scroll_Appointment_ViewModel.AppointType)} ={demodel.AppointType}";
}
if (demodel.Q_AppointState > 0) {
if (demodel.Q_AppointState == 1)
{
......@@ -252,5 +260,22 @@ ORDER BY r.Id desc ";
}
Execute(sql);
}
/// <summary>
/// 获取可重复上课的学员
/// </summary>
/// <param name="stuName"></param>
/// <param name="chapterNo"></param>
/// <param name="courseGradeId"></param>
/// <param name="group_Id"></param>
/// <returns></returns>
public List<RB_Scroll_Appointment_ViewModel> GetCanAppointmentAgainList(string stuName, int chapterNo, int courseGradeId, int group_Id)
{
string sql = $@"SELECT a.Id,a.StuId,a.GuestId,a.OrderId,a.CourseId,s.StuName FROM rb_scroll_appointment a
LEFT JOIN rb_student s on a.StuId = s.StuId
WHERE a.Group_Id ={group_Id} and a.State =3 and a.AppointType =1 and a.ChapterNo ={chapterNo} and a.courseGradeId ={courseGradeId} and s.StuName LIKE '%{stuName}%'
ORDER BY a.OrderId DESC";
return Get<RB_Scroll_Appointment_ViewModel>(sql).ToList();
}
}
}
......@@ -40,10 +40,20 @@ namespace Edu.Repository.Scroll
{
where += $@" and r.{nameof(RB_Scroll_SkipCourse_ViewModel.CourseId)} ={demodel.CourseId}";
}
if (demodel.ChapterNo > 0)
{
where += $@" and r.{nameof(RB_Scroll_SkipCourse_ViewModel.ChapterNo)} ={demodel.ChapterNo}";
}
if (demodel.State > 0)
{
where += $@" and r.{nameof(RB_Scroll_SkipCourse_ViewModel.State)} ={demodel.State}";
}
string sql = $@"
SELECT * From RB_Scroll_SkipCourse r
SELECT r.*,s.StuName,g.OrderId From RB_Scroll_SkipCourse r
left join rb_student s on r.StuId = s.StuId
left join rb_order_guest g on r.GuestId = g.Id
WHERE {where}
ORDER BY r.Id asc ";
return Get<RB_Scroll_SkipCourse_ViewModel>(sql, parameters).ToList();
......
......@@ -122,7 +122,7 @@ namespace Edu.Repository.Sell
}
string sql = $@"
SELECT o.*,c.ClassName,t.TeacherName,t.TeacherIcon,IFNULL(course.CourseName,'') AS CourseName,c.OpenTime,IFNULL(course.ClassHours,0) AS ClassHours
SELECT o.*,c.ClassName,c.ClassScrollType,t.TeacherName,t.TeacherIcon,IFNULL(course.CourseName,'') AS CourseName,c.OpenTime,IFNULL(course.ClassHours,0) AS ClassHours
FROM RB_Order o
LEFT JOIN rb_class c on o.ClassId = c.ClassId
LEFT JOIN rb_teacher t on c.Teacher_Id = t.TId
......
......@@ -170,14 +170,15 @@ namespace Edu.WebApi.Controllers.Applet
var userInfo = base.AppletUserInfo;
var Robj = scrollClassModule.GetScrollAppointmentBaseInfo(userInfo, out string Rmsg);
if (Rmsg == "")
{
return ApiResult.Success("", Robj);
}
else
{
return ApiResult.Failed(Rmsg);
}
return ApiResult.Failed("此功能暂未开通使用");
//if (Rmsg == "")
//{
// return ApiResult.Success("", Robj);
//}
//else
//{
// return ApiResult.Failed(Rmsg);
//}
}
/// <summary>
......@@ -194,13 +195,14 @@ namespace Edu.WebApi.Controllers.Applet
}
Date = Convert.ToDateTime(Date).ToString("yyyy-MM-dd");
var Robj = scrollClassModule.GetScrollAppointmentTeacherList(userInfo, Date, SchoolId, out string Rmsg);
if (Rmsg == "")
{
return ApiResult.Success("", Robj);
}
else {
return ApiResult.Failed(Rmsg);
}
return ApiResult.Failed("此功能暂未开通使用");
//if (Rmsg == "")
//{
// return ApiResult.Success("", Robj);
//}
//else {
// return ApiResult.Failed(Rmsg);
//}
}
/// <summary>
......
......@@ -546,6 +546,188 @@ namespace Edu.WebApi.Controllers.Course
}
}
/// <summary>
/// 获取可补课的学生列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetCanMakeupStuList() {
var userInfo = base.UserInfo;
int ChapterNo = base.ParmJObj.GetInt("ChapterNo", 0);
if (ChapterNo <= 0) {
return ApiResult.ParamIsNull();
}
var list = scrollClassModule.GetCanMakeupStuList(ChapterNo, userInfo);
return ApiResult.Success("", list.Select(x => new
{
x.Id,
x.StuId,
x.StuName,
x.GuestId,
x.CourseId,
x.OrderId
}));
}
/// <summary>
/// 学生补课
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult SetAppointmentMakeup() {
var userInfo = base.UserInfo;
RB_Scroll_Appointment_ViewModel demodel = JsonHelper.DeserializeObject<RB_Scroll_Appointment_ViewModel>(base.RequestParm.Msg.ToString());
if (demodel.TeacherId <= 0)
{
return ApiResult.ParamIsNull("请传递老师编号ID");
}
if (demodel.Date <= DateTime.Now)
{
return ApiResult.ParamIsNull("预约日期有误");
}
if (string.IsNullOrEmpty(demodel.ShiftSort))
{
return ApiResult.ParamIsNull("请传递上课时段");
}
if (demodel.StuId <= 0)
{
return ApiResult.ParamIsNull("请传递学生ID");
}
if (demodel.GuestId <= 0)
{
return ApiResult.ParamIsNull("请传递学生ID");
}
if (demodel.ChapterNo <= 0)
{
return ApiResult.ParamIsNull("请传递上课章节");
}
#region 验证是否连续的时段
List<int> SortList = JsonHelper.DeserializeObject<List<int>>("[" + demodel.ShiftSort + "]");
int MinSort = SortList.Min(x => x);
string ShiftSort = "";
for (var i = 0; i < SortList.Count(); i++)
{
ShiftSort += (MinSort + i) + ",";
}
if (ShiftSort != demodel.ShiftSort + ",")
{
return ApiResult.ParamIsNull("需预约连续的时段");
}
#endregion
demodel.State = CourseAppointStateEnum.WaitSure;
demodel.Status = 0;
demodel.Group_Id = userInfo.Group_Id;
demodel.CreateBy = userInfo.Id;
demodel.CreateTime = DateTime.Now;
demodel.UpdateBy = userInfo.Id;
demodel.UpdateTime = DateTime.Now;
string msg = scrollClassModule.SetAppointmentMakeup(demodel, out int AppointId);
if (msg == "")
{
return ApiResult.Success("", AppointId);
}
else
{
return ApiResult.Failed(msg);
}
}
/// <summary>
/// 获取可重上课的学员
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetCanAppointmentAgainList() {
var userInfo = base.UserInfo;
string StuName = base.ParmJObj.GetStringValue("StuName");//学生名称 模糊查询
int ChapterNo = base.ParmJObj.GetInt("ChapterNo", 0);
int CourseGradeId = base.ParmJObj.GetInt("CourseGradeId", 0);
if (string.IsNullOrEmpty(StuName) || ChapterNo <= 0 || CourseGradeId <= 0) {
return ApiResult.ParamIsNull();
}
var list = scrollClassModule.GetCanAppointmentAgainList(StuName, ChapterNo, CourseGradeId, userInfo);
return ApiResult.Success("", list.Select(x => new
{
x.Id,
x.StuId,
x.StuName,
x.GuestId,
x.OrderId,
x.CourseId
}));
}
/// <summary>
/// 学生重上课
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult SetAppointmentAgain()
{
var userInfo = base.UserInfo;
RB_Scroll_Appointment_ViewModel demodel = JsonHelper.DeserializeObject<RB_Scroll_Appointment_ViewModel>(base.RequestParm.Msg.ToString());
if (demodel.TeacherId <= 0)
{
return ApiResult.ParamIsNull("请传递老师编号ID");
}
if (demodel.Date <= DateTime.Now)
{
return ApiResult.ParamIsNull("预约日期有误");
}
if (string.IsNullOrEmpty(demodel.ShiftSort))
{
return ApiResult.ParamIsNull("请传递上课时段");
}
if (demodel.StuId <= 0)
{
return ApiResult.ParamIsNull("请传递学生ID");
}
if (demodel.GuestId <= 0)
{
return ApiResult.ParamIsNull("请传递学生ID");
}
if (demodel.ChapterNo <= 0)
{
return ApiResult.ParamIsNull("请传递上课章节");
}
#region 验证是否连续的时段
List<int> SortList = JsonHelper.DeserializeObject<List<int>>("[" + demodel.ShiftSort + "]");
int MinSort = SortList.Min(x => x);
string ShiftSort = "";
for (var i = 0; i < SortList.Count(); i++)
{
ShiftSort += (MinSort + i) + ",";
}
if (ShiftSort != demodel.ShiftSort + ",")
{
return ApiResult.ParamIsNull("需预约连续的时段");
}
#endregion
demodel.State = CourseAppointStateEnum.WaitSure;
demodel.Status = 0;
demodel.Group_Id = userInfo.Group_Id;
demodel.CreateBy = userInfo.Id;
demodel.CreateTime = DateTime.Now;
demodel.UpdateBy = userInfo.Id;
demodel.UpdateTime = DateTime.Now;
string msg = scrollClassModule.SetAppointmentAgain(demodel, out int AppointId);
if (msg == "")
{
return ApiResult.Success("", AppointId);
}
else
{
return ApiResult.Failed(msg);
}
}
#endregion
#region 初始化约课数据
......@@ -606,6 +788,7 @@ namespace Edu.WebApi.Controllers.Course
demodel.CreateTime = DateTime.Now;
demodel.UpdateBy = userInfo.Id;
demodel.UpdateTime = DateTime.Now;
demodel.State = 1;
string msg = scrollClassModule.SetGuestStartChapter(demodel, ChapterNoList);
if (msg == "")
{
......@@ -617,5 +800,26 @@ namespace Edu.WebApi.Controllers.Course
}
#endregion
#region 学员上课
/// <summary>
/// 获取学员上课列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetStuLearnChapterList() {
var userInfo = base.UserInfo;
RB_Scroll_Appointment_ViewModel demodel = JsonHelper.DeserializeObject<RB_Scroll_Appointment_ViewModel>(base.RequestParm.Msg.ToString());
if (demodel.StuId <= 0) {
return ApiResult.ParamIsNull("请传递学生ID");
}
demodel.Group_Id = userInfo.Group_Id;
var list = scrollClassModule.GetStuLearnChapterList(demodel);
return ApiResult.Success("", list);
}
#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