Commit e758d8c1 authored by 黄奎's avatar 黄奎

页面修改

parent d0fb315d
...@@ -167,7 +167,7 @@ namespace Edu.Module.Course ...@@ -167,7 +167,7 @@ namespace Edu.Module.Course
/// 日志仓储对象 /// 日志仓储对象
/// </summary> /// </summary>
private readonly RB_User_ChangeLogRepository user_ChangeLogRepository = new RB_User_ChangeLogRepository(); private readonly RB_User_ChangeLogRepository user_ChangeLogRepository = new RB_User_ChangeLogRepository();
/// <summary> /// <summary>
/// 商品规格 /// 商品规格
/// </summary> /// </summary>
...@@ -1007,6 +1007,53 @@ namespace Edu.Module.Course ...@@ -1007,6 +1007,53 @@ namespace Edu.Module.Course
return flag; return flag;
} }
/// <summary>
/// 获取班级学员树形结构
/// </summary>
/// <returns></returns>
public List<object> GetClassStudentTreeModule(RB_Order_Guest_ViewModel query)
{
List<object> list = new List<object>();
var dataList = order_GuestRepository.GetOrderGuestListRepository(query).Where(qitem => qitem.GuestState != 2 || qitem.GuestState != 5).ToList();
if (dataList != null && dataList.Count > 0)
{
var groupList= dataList?.GroupBy(qitem => new { qitem.ClassName, qitem.ClassId, qitem.ClassNo })?.Select(qitem => new { qitem.Key.ClassId, qitem.Key.ClassName, qitem.Key.ClassNo });
if (groupList != null && groupList.Count() > 0)
{
int Index = 1;
foreach (var item in groupList)
{
var subList = dataList?.Where(qitem => qitem.ClassId == item.ClassId)?.ToList();
if (subList != null && subList.Count > 0)
{
var obj = new
{
ClassId= item.ClassId,
Name = item.ClassName + "(" + item.ClassNo + ")",
OrderId = 0,
GuestId = 100000+Index,
CourseId = 0,
IsCheck = false,
SubList = subList?.Select(qitem => new
{
qitem.ClassId,
Name = qitem.GuestName,
qitem.OrderId,
GuestId = qitem.Id,
qitem.CourseId,
IsCheck = false,
})
};
list.Add(obj);
}
Index++;
}
}
}
return list;
}
/// <summary> /// <summary>
/// 更新班级完成进度 /// 更新班级完成进度
/// </summary> /// </summary>
...@@ -2790,7 +2837,7 @@ namespace Edu.Module.Course ...@@ -2790,7 +2837,7 @@ namespace Edu.Module.Course
/// <param name="model"></param> /// <param name="model"></param>
/// <returns></returns> /// <returns></returns>
[TransactionCallHandler] [TransactionCallHandler]
public bool SetClassLessPlan(Class_LessonPlan_ViewModel model,UserInfo user) public bool SetClassLessPlan(Class_LessonPlan_ViewModel model, UserInfo user)
{ {
bool flag = false; bool flag = false;
if (model.LessonPlanList != null && model.LessonPlanList.Any()) if (model.LessonPlanList != null && model.LessonPlanList.Any())
...@@ -2853,7 +2900,8 @@ namespace Edu.Module.Course ...@@ -2853,7 +2900,8 @@ namespace Edu.Module.Course
var notifyObjs = accountRepository.GetWorkUserIdByDictRepository("Push_TeachPreparing"); var notifyObjs = accountRepository.GetWorkUserIdByDictRepository("Push_TeachPreparing");
if (notifyObjs != null && notifyObjs.Any()) if (notifyObjs != null && notifyObjs.Any())
{ {
notifyObjs.ForEach(x => { notifyObjs.ForEach(x =>
{
var content = $"<font color='info'>修改备课通知</font> 有老师对备课内容进行了修改调整\n>**概要信息** \n>备课老师:<font color='comment'>{user.AccountName}</font>\n>备课标题:<font color='comment'>{item.LessonPlan}(第{item.CourseNum}课)</font>\n>目标班级:<font color='comment'>{classInfo.ClassName}</font> \n>上课日期:<font color='warning'>{item.ClassDate.Value.ToString("yyyy年MM月dd日")}</font>\n>请点击:[查看备课内容]({Config.ErpUrl}/autologin?loginId={x.Id}&target={recipientPath})"; var content = $"<font color='info'>修改备课通知</font> 有老师对备课内容进行了修改调整\n>**概要信息** \n>备课老师:<font color='comment'>{user.AccountName}</font>\n>备课标题:<font color='comment'>{item.LessonPlan}(第{item.CourseNum}课)</font>\n>目标班级:<font color='comment'>{classInfo.ClassName}</font> \n>上课日期:<font color='warning'>{item.ClassDate.Value.ToString("yyyy年MM月dd日")}</font>\n>请点击:[查看备课内容]({Config.ErpUrl}/autologin?loginId={x.Id}&target={recipientPath})";
PushWorkChatHelper.PushToWorkChat(content, x.WorkUserId, "修改备课通知"); PushWorkChatHelper.PushToWorkChat(content, x.WorkUserId, "修改备课通知");
}); });
...@@ -2872,7 +2920,8 @@ namespace Edu.Module.Course ...@@ -2872,7 +2920,8 @@ namespace Edu.Module.Course
var notifyObjs = accountRepository.GetWorkUserIdByDictRepository("Push_TeachPreparing"); var notifyObjs = accountRepository.GetWorkUserIdByDictRepository("Push_TeachPreparing");
if (notifyObjs != null && notifyObjs.Any()) if (notifyObjs != null && notifyObjs.Any())
{ {
notifyObjs.ForEach(x => { notifyObjs.ForEach(x =>
{
var content = $"<font color='info'>备课通知</font> 有老师完成了备课工作\n>**概要信息** \n>备课老师:<font color='comment'>{user.AccountName}</font>\n>备课标题:<font color='comment'>{item.LessonPlan}(第{item.CourseNum}课)</font>\n>目标班级:<font color='comment'>{classInfo.ClassName}</font> \n>上课日期:<font color='warning'>{item.ClassDate.Value.ToString("yyyy年MM月dd日")}</font>\n>请点击:[查看备课内容]({Config.ErpUrl}/autologin?loginId={x.Id}&target={recipientPath})"; var content = $"<font color='info'>备课通知</font> 有老师完成了备课工作\n>**概要信息** \n>备课老师:<font color='comment'>{user.AccountName}</font>\n>备课标题:<font color='comment'>{item.LessonPlan}(第{item.CourseNum}课)</font>\n>目标班级:<font color='comment'>{classInfo.ClassName}</font> \n>上课日期:<font color='warning'>{item.ClassDate.Value.ToString("yyyy年MM月dd日")}</font>\n>请点击:[查看备课内容]({Config.ErpUrl}/autologin?loginId={x.Id}&target={recipientPath})";
PushWorkChatHelper.PushToWorkChat(content, x.WorkUserId, "新增备课通知"); PushWorkChatHelper.PushToWorkChat(content, x.WorkUserId, "新增备课通知");
}); });
...@@ -2926,7 +2975,7 @@ namespace Edu.Module.Course ...@@ -2926,7 +2975,7 @@ namespace Edu.Module.Course
/// <param name="model"></param> /// <param name="model"></param>
/// <returns></returns> /// <returns></returns>
[TransactionCallHandler] [TransactionCallHandler]
public virtual bool UpdateClassLessPlan(Class_LessonPlan_ViewModel model,UserInfo user) public virtual bool UpdateClassLessPlan(Class_LessonPlan_ViewModel model, UserInfo user)
{ {
bool flag = true; bool flag = true;
if (model.LessonPlanList != null && model.LessonPlanList.Any()) if (model.LessonPlanList != null && model.LessonPlanList.Any())
...@@ -2945,7 +2994,7 @@ namespace Edu.Module.Course ...@@ -2945,7 +2994,7 @@ namespace Edu.Module.Course
} }
} }
} }
} }
return flag; return flag;
...@@ -2958,7 +3007,7 @@ namespace Edu.Module.Course ...@@ -2958,7 +3007,7 @@ namespace Edu.Module.Course
/// <param name="model"></param> /// <param name="model"></param>
/// <returns></returns> /// <returns></returns>
[TransactionCallHandler] [TransactionCallHandler]
public virtual bool GetUpdateClassLessPlanSummary(Class_LessonPlan_ViewModel model,UserInfo user) public virtual bool GetUpdateClassLessPlanSummary(Class_LessonPlan_ViewModel model, UserInfo user)
{ {
bool flag = true; bool flag = true;
if (model.LessonPlanList != null && model.LessonPlanList.Any()) if (model.LessonPlanList != null && model.LessonPlanList.Any())
...@@ -2982,7 +3031,8 @@ namespace Edu.Module.Course ...@@ -2982,7 +3031,8 @@ namespace Edu.Module.Course
var notifyObjs = accountRepository.GetWorkUserIdByDictRepository("Push_TeachPreparing"); var notifyObjs = accountRepository.GetWorkUserIdByDictRepository("Push_TeachPreparing");
if (notifyObjs != null && notifyObjs.Any()) if (notifyObjs != null && notifyObjs.Any())
{ {
notifyObjs.ForEach(x => { notifyObjs.ForEach(x =>
{
var content = $"<font color='info'>课后反馈通知</font> 有老师完成了课后反馈工作\n>**概要信息** \n>反馈老师:<font color='comment'>{user.AccountName}</font>\n>备课标题:<font color='comment'>{item.LessonPlan}(第{item.CourseNum}课)</font>\n>目标班级:<font color='comment'>{classInfo.ClassName}</font> \n>上课日期:<font color='warning'>{item.ClassDate.Value.ToString("yyyy年MM月dd日")}</font>\n>请点击:[查看反馈内容]({Config.ErpUrl}/autologin?loginId={x.Id}&target={recipientPath})"; var content = $"<font color='info'>课后反馈通知</font> 有老师完成了课后反馈工作\n>**概要信息** \n>反馈老师:<font color='comment'>{user.AccountName}</font>\n>备课标题:<font color='comment'>{item.LessonPlan}(第{item.CourseNum}课)</font>\n>目标班级:<font color='comment'>{classInfo.ClassName}</font> \n>上课日期:<font color='warning'>{item.ClassDate.Value.ToString("yyyy年MM月dd日")}</font>\n>请点击:[查看反馈内容]({Config.ErpUrl}/autologin?loginId={x.Id}&target={recipientPath})";
PushWorkChatHelper.PushToWorkChat(content, x.WorkUserId, "课后反馈通知"); PushWorkChatHelper.PushToWorkChat(content, x.WorkUserId, "课后反馈通知");
}); });
...@@ -3905,9 +3955,6 @@ namespace Edu.Module.Course ...@@ -3905,9 +3955,6 @@ namespace Edu.Module.Course
} }
/// <summary> /// <summary>
/// 教师-我的排课 /// 教师-我的排课
/// </summary> /// </summary>
...@@ -4177,15 +4224,18 @@ namespace Edu.Module.Course ...@@ -4177,15 +4224,18 @@ namespace Edu.Module.Course
model.ClassLetterNum = CNum + 1; model.ClassLetterNum = CNum + 1;
} }
#endregion #endregion
Dictionary<string, object> keyValues = new Dictionary<string, object>() { Dictionary<string, object> keyValues = new Dictionary<string, object>()
{
{ nameof(RB_Class_ViewModel.ClassNo),model.ClassNo}, { nameof(RB_Class_ViewModel.ClassNo),model.ClassNo},
{ nameof(RB_Class_ViewModel.ClassLetterNum),model.ClassLetterNum}, { nameof(RB_Class_ViewModel.ClassLetterNum),model.ClassLetterNum},
}; };
List<WhereHelper> wheres = new List<WhereHelper>() { List<WhereHelper> wheres = new List<WhereHelper>()
new WhereHelper(){ {
new WhereHelper()
{
FiledName=nameof(RB_Class_ViewModel.ClassId), FiledName=nameof(RB_Class_ViewModel.ClassId),
FiledValue=model.ClassId, FiledValue=model.ClassId,
OperatorEnum=OperatorEnum.Equal OperatorEnum=OperatorEnum.Equal
} }
}; };
classRepository.Update(keyValues, wheres); classRepository.Update(keyValues, wheres);
...@@ -4271,9 +4321,7 @@ namespace Edu.Module.Course ...@@ -4271,9 +4321,7 @@ namespace Edu.Module.Course
public List<RB_Order_Guest_ViewModel> GetTeacherStudentPage(int pageIndex, int pageSize, out long rowsCount, RB_Order_Guest_ViewModel demodel) public List<RB_Order_Guest_ViewModel> GetTeacherStudentPage(int pageIndex, int pageSize, out long rowsCount, RB_Order_Guest_ViewModel demodel)
{ {
var orderstudentList = order_GuestRepository.GetTeacherStudentPage(pageIndex, pageSize, out rowsCount, demodel); var orderstudentList = order_GuestRepository.GetTeacherStudentPage(pageIndex, pageSize, out rowsCount, demodel);
return orderstudentList; return orderstudentList;
} }
/// <summary> /// <summary>
...@@ -4284,17 +4332,11 @@ namespace Edu.Module.Course ...@@ -4284,17 +4332,11 @@ namespace Edu.Module.Course
public List<RB_Order_Guest_ViewModel> GetNotClassStudentList(RB_Order_Guest_ViewModel demodel) public List<RB_Order_Guest_ViewModel> GetNotClassStudentList(RB_Order_Guest_ViewModel demodel)
{ {
var orderstudentList = order_GuestRepository.GetNotClassStudentList(demodel); var orderstudentList = order_GuestRepository.GetNotClassStudentList(demodel);
return orderstudentList; return orderstudentList;
} }
#endregion #endregion
#region 财务轧账 #region 财务轧账
/// <summary> /// <summary>
/// 验证是否可以修改签到数据 /// 验证是否可以修改签到数据
...@@ -4318,7 +4360,6 @@ namespace Edu.Module.Course ...@@ -4318,7 +4360,6 @@ namespace Edu.Module.Course
#endregion #endregion
#region 临时上课邀请学生 #region 临时上课邀请学生
/// <summary> /// <summary>
/// 获取列表 /// 获取列表
...@@ -4332,8 +4373,6 @@ namespace Edu.Module.Course ...@@ -4332,8 +4373,6 @@ namespace Edu.Module.Course
#endregion #endregion
#region 甲鹤小程序商品信息 #region 甲鹤小程序商品信息
/// <summary> /// <summary>
/// 同步班级到甲鹤小程序 /// 同步班级到甲鹤小程序
...@@ -4502,12 +4541,6 @@ namespace Edu.Module.Course ...@@ -4502,12 +4541,6 @@ namespace Edu.Module.Course
} }
return flag; return flag;
} }
#endregion #endregion
#region 学生小程序获取我的课表 #region 学生小程序获取我的课表
...@@ -4551,7 +4584,7 @@ namespace Edu.Module.Course ...@@ -4551,7 +4584,7 @@ namespace Edu.Module.Course
Group_Id = model.Group_Id Group_Id = model.Group_Id
}); });
foreach (var item in planList.OrderBy(x => x.ClassDate)) foreach (var item in planList.OrderBy(x => x.ClassDate))
{ {
item.PlanTimeList = new List<RB_Class_Time_ViewModel>(); item.PlanTimeList = new List<RB_Class_Time_ViewModel>();
...@@ -4573,7 +4606,7 @@ namespace Edu.Module.Course ...@@ -4573,7 +4606,7 @@ namespace Edu.Module.Course
Id = sItem.Id, Id = sItem.Id,
GuestName = sItem.GuestName, GuestName = sItem.GuestName,
IsCheck = 0, IsCheck = 0,
StudentId= sItem.StudentId StudentId = sItem.StudentId
}); });
} }
...@@ -4599,7 +4632,7 @@ namespace Edu.Module.Course ...@@ -4599,7 +4632,7 @@ namespace Edu.Module.Course
/// <returns></returns> /// <returns></returns>
public List<RB_Class_Plan_ViewModel> GetStundentScheduleList(RB_Class_ViewModel model) public List<RB_Class_Plan_ViewModel> GetStundentScheduleList(RB_Class_ViewModel model)
{ {
var planList = class_PlanRepository.GetClassPlanStatisticalRepository(new RB_Class_Plan_ViewModel() { School_Id = model.School_Id, ClassId = model.ClassId, Group_Id = model.Group_Id, StartTime = model.StartTime, EndTime = model.EndTime }); var planList = class_PlanRepository.GetClassPlanStatisticalRepository(new RB_Class_Plan_ViewModel() { School_Id = model.School_Id, ClassId = model.ClassId, Group_Id = model.Group_Id, StartTime = model.StartTime, EndTime = model.EndTime });
return planList; return planList;
......
...@@ -65,7 +65,6 @@ namespace Edu.Repository.Sell ...@@ -65,7 +65,6 @@ namespace Edu.Repository.Sell
/// 获取列表 /// 获取列表
/// </summary> /// </summary>
/// <param name="demodel"></param> /// <param name="demodel"></param>
/// <param name="orderIds"></param>
/// <returns></returns> /// <returns></returns>
public List<RB_Order_Guest_ViewModel> GetCommonOrderGuestListRepository(RB_Order_Guest_ViewModel demodel) public List<RB_Order_Guest_ViewModel> GetCommonOrderGuestListRepository(RB_Order_Guest_ViewModel demodel)
{ {
...@@ -112,15 +111,16 @@ namespace Edu.Repository.Sell ...@@ -112,15 +111,16 @@ namespace Edu.Repository.Sell
} }
string sql = $@" string sql = $@"
SELECT sog.Student_Id as StudentId,A.*,IFNULL(B.JoinType,0) AS JoinType,IFNULL(B.TargetJoinType,0) AS TargetJoinType,IFNULL(B.StartClassHours,0) AS StartClassHours SELECT sog.Student_Id as StudentId,A.*,cs.ClassName,cs.ClassNo,IFNULL(B.JoinType,0) AS JoinType,IFNULL(B.TargetJoinType,0) AS TargetJoinType,IFNULL(B.StartClassHours,0) AS StartClassHours
,IFNULL(C.CourseName,'') AS CourseName,B.EffectStatus,B.EffectTime,B.UpOrderId,B.OrderType,B.CourseId,B.IsRenewOrder,B.RenewOrderId,B.EnterID ,IFNULL(C.CourseName,'') AS CourseName,B.EffectStatus,B.EffectTime,B.UpOrderId,B.OrderType,B.CourseId,B.IsRenewOrder,B.RenewOrderId,B.EnterID
,sc.StopClassEffectTime,B.SourceOrderId,B.TargetOrderId,IFNULL(D.FirstClassHours,0)+IFNULL(D.SecondClassHours,0)+IFNULL(D.ThirdClassHours,0) AS ContractTotalHours ,sc.StopClassEffectTime,B.SourceOrderId,B.TargetOrderId,IFNULL(D.FirstClassHours,0)+IFNULL(D.SecondClassHours,0)+IFNULL(D.ThirdClassHours,0) AS ContractTotalHours
FROM RB_Order_Guest AS A LEFT JOIN rb_order AS B ON A.OrderId=B.OrderId FROM RB_Order_Guest AS A LEFT JOIN rb_order AS B ON A.OrderId=B.OrderId
LEFT JOIN rb_student_orderguest as sog on sog.GuestId=a.Id LEFT JOIN rb_class AS cs ON B.ClassId=cs.ClassId
LEFT JOIN rb_student_orderguest as sog on sog.GuestId=a.Id
LEFT JOIN rb_course AS C ON (B.CourseId=C.CourseId AND B.CourseId>0 AND B.OrderType=1) LEFT JOIN rb_course AS C ON (B.CourseId=C.CourseId AND B.CourseId>0 AND B.OrderType=1)
LEFT JOIN (SELECT OrderGuestId,MAX(TakeEffectTime) as StopClassEffectTime from rb_student_stopclass where IsAuditThrough=1 GROUP BY OrderGuestId) as sc on sc.OrderGuestId=a.Id LEFT JOIN (SELECT OrderGuestId,MAX(TakeEffectTime) as StopClassEffectTime from rb_student_stopclass where IsAuditThrough=1 GROUP BY OrderGuestId) as sc on sc.OrderGuestId=a.Id
LEFT JOIN rb_education_contract AS D ON A.OrderId=D.OrderId AND A.Id=D.GuestId AND D.IsSystemUse=1 LEFT JOIN rb_education_contract AS D ON A.OrderId=D.OrderId AND A.Id=D.GuestId AND D.IsSystemUse=1
WHERE 1=1 and A.Status=0 {where}"; WHERE 1=1 and A.Status=0 {where}";
return Get<RB_Order_Guest_ViewModel>(sql).ToList(); return Get<RB_Order_Guest_ViewModel>(sql).ToList();
} }
...@@ -226,8 +226,6 @@ WHERE 1=1 AND A.Status=0 ...@@ -226,8 +226,6 @@ WHERE 1=1 AND A.Status=0
} }
} }
/// <summary> /// <summary>
/// 获取列表 /// 获取列表
/// </summary> /// </summary>
...@@ -359,11 +357,7 @@ WHERE 1=1 and A.Status=0 and class.Status=0 and b.OrderState<>3 ...@@ -359,11 +357,7 @@ WHERE 1=1 and A.Status=0 and class.Status=0 and b.OrderState<>3
/// <summary> /// <summary>
/// 获取分页列表 /// 获取分页列表
/// </summary> /// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="demodel"></param> /// <param name="demodel"></param>
/// <param name="orderIds"></param>
/// <returns></returns> /// <returns></returns>
public List<RB_Order_Guest_ViewModel> GetStopingStudentPage(RB_Order_Guest_ViewModel demodel) public List<RB_Order_Guest_ViewModel> GetStopingStudentPage(RB_Order_Guest_ViewModel demodel)
{ {
......
...@@ -1272,6 +1272,24 @@ namespace Edu.WebApi.Controllers.Course ...@@ -1272,6 +1272,24 @@ namespace Edu.WebApi.Controllers.Course
return result ? ApiResult.Success() : ApiResult.Failed("签到失败"); return result ? ApiResult.Success() : ApiResult.Failed("签到失败");
} }
/// <summary>
/// 获取班级学生树形列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetClassStudentTree()
{
var query = new RB_Order_Guest_ViewModel()
{
GuestName = base.ParmJObj.GetStringValue("GuestName"),
ClassName = base.ParmJObj.GetStringValue("ClassName"),
ClassNo = ParmJObj.GetStringValue("ClassNo"),
};
query.Group_Id = base.UserInfo.Group_Id;
var obj = classModule.GetClassStudentTreeModule(query);
return ApiResult.Success(data: obj);
}
/// <summary> /// <summary>
/// 签到 /// 签到
/// </summary> /// </summary>
......
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