Commit 20d8c6d1 authored by 吴春's avatar 吴春

提交代码

parent edf0d7d6
...@@ -26,6 +26,22 @@ namespace Edu.Model.Entity.Course ...@@ -26,6 +26,22 @@ namespace Edu.Model.Entity.Course
public string RoomPic { get; set; } public string RoomPic { get; set; }
/// <summary>
/// 开始时间
/// </summary>
public string StartTime { get; set; }
/// <summary>
/// 结束时间
/// </summary>
public string EndTime { get; set; }
/// <summary>
/// 总小时数
/// </summary>
public decimal TotalHour { get; set; }
/// <summary> /// <summary>
/// 集团编号 /// 集团编号
/// </summary> /// </summary>
......
using Edu.Common.Enum;
using System;
using VT.FW.DB;
namespace Edu.Model.Entity.Course
{
/// <summary>
/// 教室异常管理实体类
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Class_RoomUseLog
{
/// <summary>
/// 错误编号
/// </summary>
public int RoomErrorId { get; set; }
/// <summary>
/// 教室编号
/// </summary>
public int RoomId { get; set; }
/// <summary>
/// 标题
/// </summary>
public string ErrorTitle { get; set; }
/// <summary>
/// 异常内容
/// </summary>
public string ErrorContent { get; set; }
/// <summary>
/// 图片
/// </summary>
public string LogPic { get; set; }
/// <summary>
/// 0-正常,1-异常
/// </summary>
public int ErrorType { get; set; }
/// <summary>
/// 集团编号
/// </summary>
public int Group_Id { get; set; }
/// <summary>
/// 所属校区
/// </summary>
public int School_Id { get; set; }
/// <summary>
/// 状态
/// </summary>
public DateStateEnum Status { get; set; }
/// <summary>
/// 创建人
/// </summary>
public int CreateBy { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime CreateTime { get; set; }
/// <summary>
/// 结束时间
/// </summary>
public DateTime? UpdateTime { get; set; }
/// <summary>
/// 姓名
/// </summary>
public string ManageName { get; set; }
/// <summary>
/// 参与人员
/// </summary>
public string Participants { get; set; }
}
}
...@@ -50,6 +50,16 @@ namespace Edu.Model.Entity.Course ...@@ -50,6 +50,16 @@ namespace Edu.Model.Entity.Course
/// </summary> /// </summary>
public int ClassStatus { get; set; } public int ClassStatus { get; set; }
/// <summary>
/// 实际上课开始时间
/// </summary>
public DateTime? InClassTime { get; set; }
/// <summary>
/// 实际下课时间
/// </summary>
public DateTime? ClassOverTime { get; set; }
/// <summary> /// <summary>
/// 课堂随拍图片 /// 课堂随拍图片
/// </summary> /// </summary>
......
using System;
using System.Collections.Generic;
using System.Text;
using Edu.Model.Entity.Course;
namespace Edu.Model.ViewModel.Course
{
/// <summary>
/// 教室异常管理扩展类
/// </summary>
public class RB_Class_RoomUseLog_ViewModel : RB_Class_RoomUseLog
{
/// <summary>
/// 教室ids
/// </summary>
public string QRoomIds { get; set; }
/// <summary>
/// 教室名称
/// </summary>
public string RommName { get; set; }
/// <summary>
/// 参与人员照片
/// </summary>
public List<string> ParticipantsList { get; set; }
/// <summary>
/// 照片
/// </summary>
public List<string> LogPicList { get; set; }
#region 查询
/// <summary>
/// 开始时间
/// </summary>
public string StartTime { get; set; }
/// <summary>
/// 结束时间
/// </summary>
public string EndTime { get; set; }
#endregion
}
}
...@@ -33,5 +33,16 @@ namespace Edu.Model.ViewModel.Course ...@@ -33,5 +33,16 @@ namespace Edu.Model.ViewModel.Course
/// 随拍list /// 随拍list
/// </summary> /// </summary>
public List<string> SuiPaiList { get; set; } public List<string> SuiPaiList { get; set; }
/// <summary>
/// 班级名称
/// </summary>
public string ClassName { get; set; }
/// <summary>
/// 教室id
/// </summary>
public int ClassRoomId { get; set; }
} }
} }
\ No newline at end of file
...@@ -24,6 +24,16 @@ namespace Edu.Model.ViewModel.Course ...@@ -24,6 +24,16 @@ namespace Edu.Model.ViewModel.Course
/// </summary> /// </summary>
public int StudentId { get; set; } public int StudentId { get; set; }
/// <summary>
/// 课程名称
/// </summary>
public string CourseName { get; set; }
/// <summary>
/// 出勤
/// </summary>
public int IsCheck { get; set; }
/// <summary> /// <summary>
/// 生日 /// 生日
/// </summary> /// </summary>
...@@ -34,10 +44,12 @@ namespace Edu.Model.ViewModel.Course ...@@ -34,10 +44,12 @@ namespace Edu.Model.ViewModel.Course
/// </summary> /// </summary>
public string GuestStateStr public string GuestStateStr
{ {
get { string str = ""; get
{
string str = "";
switch (this.GuestState) switch (this.GuestState)
{ {
case 1: str = "正常";break; case 1: str = "正常"; break;
case 2: str = "退学"; break; case 2: str = "退学"; break;
case 3: str = "申请退学中"; break; case 3: str = "申请退学中"; break;
case 4: str = "驳回申请"; break; case 4: str = "驳回申请"; break;
...@@ -67,7 +79,7 @@ namespace Edu.Model.ViewModel.Course ...@@ -67,7 +79,7 @@ namespace Edu.Model.ViewModel.Course
/// </summary> /// </summary>
public string ContractStatusStr public string ContractStatusStr
{ {
get;set; get; set;
} }
} }
} }
\ No newline at end of file
using System;
using System.Collections.Generic;
using System.Text;
namespace Edu.Model.ViewModel.Question
{
public class RB_Question_RoomUseLog_ViewModel
{
public int Id { get; set; }
/// <summary>
/// 标题
/// </summary>
public string Title { get; set; }
/// <summary>
/// 内容
/// </summary>
public string Content { get; set; }
/// <summary>
/// 开始时间
/// </summary>
public string StartTime { get; set; }
public DateTime InfoTime { get; set; }
/// <summary>
/// 结束时间
/// </summary>
public string EndTime { get; set; }
/// <summary>
/// 0-班级,1-使用记录,2-异常记录
/// </summary>
public int Type { get; set; }
/// <summary>
/// 班级状态
/// </summary>
public int ClassStatus { get; set; }
}
}
...@@ -150,6 +150,29 @@ namespace Edu.Module.Course ...@@ -150,6 +150,29 @@ namespace Edu.Module.Course
return class_TimeRepository.GetClassTimeListRepository(query); return class_TimeRepository.GetClassTimeListRepository(query);
} }
/// <summary>
/// 获取班级上课时间列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Class_Time_ViewModel> GetClassTimeList_V2(RB_Class_Time_ViewModel query)
{
return class_TimeRepository.GetClassTimeList_V2(query);
}
/// <summary>
/// 获取班级上课时间列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Class_Time_ViewModel> GetClassTimeList(RB_Class_Time_ViewModel query)
{
return class_TimeRepository.GetClassTimeList(query);
}
/// <summary> /// <summary>
/// 获取班级分页列表 /// 获取班级分页列表
/// </summary> /// </summary>
...@@ -631,7 +654,7 @@ namespace Edu.Module.Course ...@@ -631,7 +654,7 @@ namespace Edu.Module.Course
var timeList = defaultPlanTimeList.Where(qitem => qitem.DateList.Contains(item))?.FirstOrDefault()?.TimeList; var timeList = defaultPlanTimeList.Where(qitem => qitem.DateList.Contains(item))?.FirstOrDefault()?.TimeList;
if (timeList != null && timeList.Count > 0) if (timeList != null && timeList.Count > 0)
{ {
CalcDayClassHoursModule(timeList,planModel.PlanTimeList); CalcDayClassHoursModule(timeList, planModel.PlanTimeList);
classPlanList.Add(planModel); classPlanList.Add(planModel);
} }
} }
...@@ -651,7 +674,7 @@ namespace Edu.Module.Course ...@@ -651,7 +674,7 @@ namespace Edu.Module.Course
/// </summary> /// </summary>
/// <param name="timeList"></param> /// <param name="timeList"></param>
/// <returns></returns> /// <returns></returns>
private double CalcDayClassHoursModule(List<TimeItem> timeList,List<RB_Class_Time_ViewModel> classTimeList) private double CalcDayClassHoursModule(List<TimeItem> timeList, List<RB_Class_Time_ViewModel> classTimeList)
{ {
double dayMinutes = 0; double dayMinutes = 0;
foreach (var sItem in timeList) foreach (var sItem in timeList)
...@@ -957,7 +980,7 @@ namespace Edu.Module.Course ...@@ -957,7 +980,7 @@ namespace Edu.Module.Course
/// </summary> /// </summary>
/// <param name="classId">班级编号</param> /// <param name="classId">班级编号</param>
/// <returns></returns> /// <returns></returns>
public object GetClassStudentListModule(int classId, int school_Id, int group_Id) public object GetClassStudentListModule(int classId, int school_Id, int group_Id, string ClassDate)
{ {
List<object> list = new List<object>(); List<object> list = new List<object>();
var orderStudentList = order_GuestRepository.GetList(new RB_Order_Guest_ViewModel() var orderStudentList = order_GuestRepository.GetList(new RB_Order_Guest_ViewModel()
...@@ -968,10 +991,20 @@ namespace Edu.Module.Course ...@@ -968,10 +991,20 @@ namespace Edu.Module.Course
}).Where(x => x.GuestState == 1).ToList(); }).Where(x => x.GuestState == 1).ToList();
var classModel = GetClassModule(classId); var classModel = GetClassModule(classId);
var courseModel = courseRepository.GetEntity((classModel?.CouseId ?? 0)); var courseModel = courseRepository.GetEntity((classModel?.CouseId ?? 0));
List<RB_Class_Check_ViewModel> checkList = new List<RB_Class_Check_ViewModel>();
if (!string.IsNullOrWhiteSpace(ClassDate))
{
checkList = GetClassCheckList(new RB_Class_Check_ViewModel { Group_Id = group_Id, ClassId = classId, StartDate = ClassDate, EndDate = ClassDate });
}
if (orderStudentList != null && orderStudentList.Count > 0) if (orderStudentList != null && orderStudentList.Count > 0)
{ {
foreach (var item in orderStudentList) foreach (var item in orderStudentList)
{ {
int checkStatus = -1;
if (!string.IsNullOrWhiteSpace(ClassDate) && checkList != null && checkList.Any())
{
checkStatus = checkList?.Where(qitem => qitem.ClassDate.ToString("yyyy-MM-dd") == Convert.ToDateTime(ClassDate).ToString("yyyy-MM-dd") && qitem.ClassId == item.ClassId && qitem.OrderGuestId == item.Id)?.FirstOrDefault()?.CheckStatus ?? -1;
}
list.Add(new list.Add(new
{ {
UserIcon = item.StuIcon, UserIcon = item.StuIcon,
...@@ -983,7 +1016,8 @@ namespace Edu.Module.Course ...@@ -983,7 +1016,8 @@ namespace Edu.Module.Course
item.Mobile, item.Mobile,
item.OrderId, item.OrderId,
ClassHours = classModel?.ClassHours ?? 0, ClassHours = classModel?.ClassHours ?? 0,
IsRenew = courseModel?.IsRenew ?? 0 IsRenew = courseModel?.IsRenew ?? 0,
CheckStatus = checkStatus,
}); });
} }
} }
...@@ -1001,6 +1035,18 @@ namespace Edu.Module.Course ...@@ -1001,6 +1035,18 @@ namespace Edu.Module.Course
return order_GuestRepository.GetList(model); return order_GuestRepository.GetList(model);
} }
/// <summary>
/// 获取列表
/// </summary>
/// <param name="demodel"></param>
/// <param name="orderIds"></param>
/// <returns></returns>
public List<RB_Order_Guest_ViewModel> GetList_V2(RB_Order_Guest_ViewModel demodel)
{
return order_GuestRepository.GetList_V2(demodel);
}
/// <summary> /// <summary>
/// 更新学生的退课信息 /// 更新学生的退课信息
/// </summary> /// </summary>
...@@ -1300,6 +1346,17 @@ namespace Edu.Module.Course ...@@ -1300,6 +1346,17 @@ namespace Edu.Module.Course
return class_PlanRepository.GetClassPlanListRepository(query); return class_PlanRepository.GetClassPlanListRepository(query);
} }
/// <summary>
/// 获取上课计划
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Class_Plan_ViewModel> GetClassPlanList_V2(RB_Class_Plan_ViewModel query)
{
return class_PlanRepository.GetClassPlanList_V2(query);
}
/// <summary> /// <summary>
/// 获取学生列表 /// 获取学生列表
/// </summary> /// </summary>
...@@ -1768,6 +1825,23 @@ namespace Edu.Module.Course ...@@ -1768,6 +1825,23 @@ namespace Edu.Module.Course
{ {
{ nameof(RB_Class_Time_ViewModel.ClassStatus),classStatus}, { nameof(RB_Class_Time_ViewModel.ClassStatus),classStatus},
}; };
if (classStatus == 1)
{
fileds = new Dictionary<string, object>()
{
{ nameof(RB_Class_Time_ViewModel.ClassStatus),classStatus},
{ nameof(RB_Class_Time_ViewModel.InClassTime),System.DateTime.Now},
};
}
else if (classStatus == 2)
{
fileds = new Dictionary<string, object>()
{
{ nameof(RB_Class_Time_ViewModel.ClassOverTime),System.DateTime.Now},
{ nameof(RB_Class_Time_ViewModel.ClassStatus),classStatus},
};
}
return class_TimeRepository.Update(fileds, new WhereHelper(nameof(RB_Class_Time_ViewModel.ClassTimeId), Id)); return class_TimeRepository.Update(fileds, new WhereHelper(nameof(RB_Class_Time_ViewModel.ClassTimeId), Id));
} }
......
...@@ -17,6 +17,12 @@ namespace Edu.Module.Course ...@@ -17,6 +17,12 @@ namespace Edu.Module.Course
/// 教室管理仓储层对象 /// 教室管理仓储层对象
/// </summary> /// </summary>
private readonly RB_Class_RoomRepository class_RoomRepository = new RB_Class_RoomRepository(); private readonly RB_Class_RoomRepository class_RoomRepository = new RB_Class_RoomRepository();
/// <summary>
/// 教室异常仓储对象
/// </summary>
private readonly RB_Class_RoomUseLogRepository class_RoomUseLogRepository = new RB_Class_RoomUseLogRepository();
#region 教室管理
/// <summary> /// <summary>
/// 获取教室分页列表 /// 获取教室分页列表
...@@ -41,6 +47,19 @@ namespace Edu.Module.Course ...@@ -41,6 +47,19 @@ namespace Edu.Module.Course
return class_RoomRepository.GetClassRoomListRepository(query); return class_RoomRepository.GetClassRoomListRepository(query);
} }
/// <summary>
/// 获取教室列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Class_Room_ViewModel> GetClassRoomList(RB_Class_Room_ViewModel query)
{
return class_RoomRepository.GetClassRoomList(query);
}
/// <summary> /// <summary>
/// 新增修改教室 /// 新增修改教室
/// </summary> /// </summary>
...@@ -59,6 +78,9 @@ namespace Edu.Module.Course ...@@ -59,6 +78,9 @@ namespace Edu.Module.Course
{nameof(RB_Class_Room_ViewModel.School_Id),extModel.School_Id }, {nameof(RB_Class_Room_ViewModel.School_Id),extModel.School_Id },
{nameof(RB_Class_Room_ViewModel.SeatNum),extModel.SeatNum }, {nameof(RB_Class_Room_ViewModel.SeatNum),extModel.SeatNum },
{nameof(RB_Class_Room_ViewModel.RoomPic),extModel.RoomPic }, {nameof(RB_Class_Room_ViewModel.RoomPic),extModel.RoomPic },
{nameof(RB_Class_Room_ViewModel.StartTime),extModel.StartTime },
{nameof(RB_Class_Room_ViewModel.EndTime),extModel.EndTime },
{nameof(RB_Class_Room_ViewModel.TotalHour),extModel.TotalHour },
}; };
flag = class_RoomRepository.Update(fileds, new WhereHelper(nameof(RB_Class_Room_ViewModel.RoomId), extModel.RoomId)); flag = class_RoomRepository.Update(fileds, new WhereHelper(nameof(RB_Class_Room_ViewModel.RoomId), extModel.RoomId));
} }
...@@ -88,7 +110,7 @@ namespace Edu.Module.Course ...@@ -88,7 +110,7 @@ namespace Edu.Module.Course
/// <param name="RoomId"></param> /// <param name="RoomId"></param>
/// <param name="Status">状态</param> /// <param name="Status">状态</param>
/// <returns></returns> /// <returns></returns>
public bool RemoveClassRoomModule(object RoomId,int Status) public bool RemoveClassRoomModule(object RoomId, int Status)
{ {
Dictionary<string, object> fileds = new Dictionary<string, object>() Dictionary<string, object> fileds = new Dictionary<string, object>()
{ {
...@@ -96,5 +118,89 @@ namespace Edu.Module.Course ...@@ -96,5 +118,89 @@ namespace Edu.Module.Course
}; };
return class_RoomRepository.Update(fileds, new WhereHelper(nameof(RB_Class_Room_ViewModel.RoomId), RoomId)); return class_RoomRepository.Update(fileds, new WhereHelper(nameof(RB_Class_Room_ViewModel.RoomId), RoomId));
} }
#endregion
#region 教室异常
/// <summary>
/// 获取教异常分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Class_RoomUseLog_ViewModel> GetClassRoomUseLogPageListRepository(int pageIndex, int pageSize, out long rowsCount, RB_Class_RoomUseLog_ViewModel query)
{
return class_RoomUseLogRepository.GetClassRoomUseLogPageListRepository(pageIndex, pageSize, out rowsCount, query);
}
/// <summary>
/// 获取教室异常列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Class_RoomUseLog_ViewModel> GetClassRoomUseLogListRepository(RB_Class_RoomUseLog_ViewModel query)
{
return class_RoomUseLogRepository.GetClassRoomUseLogListRepository(query);
}
/// <summary>
/// 获取实体信息
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
public Model.Entity.Course.RB_Class_RoomUseLog GetRoomUseLogEntity(object Id)
{
return class_RoomUseLogRepository.GetEntity(Id);
}
/// <summary>
/// 新增/修改教室异常
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public int SetRoomUseLog(RB_Class_RoomUseLog_ViewModel model)
{
if (model.RoomErrorId == 0)
{
return class_RoomUseLogRepository.Insert(model);
}
else
{
Dictionary<string, object> fileds = new Dictionary<string, object>() ;
if (model.UpdateTime.HasValue)
{
fileds = new Dictionary<string, object>()
{
{nameof(RB_Class_RoomUseLog_ViewModel.UpdateTime),model.UpdateTime },
{nameof(RB_Class_RoomUseLog_ViewModel.Participants),model.Participants }
};
}
else {
fileds = new Dictionary<string, object>()
{
{nameof(RB_Class_RoomUseLog_ViewModel.Participants),model.Participants }
};
}
bool flag = class_RoomUseLogRepository.Update(fileds, new WhereHelper(nameof(RB_Class_RoomUseLog_ViewModel.RoomErrorId), model.RoomErrorId));
if (flag)
{
return model.RoomErrorId;
}
else
{
return 0;
}
}
}
#endregion
} }
} }
...@@ -72,7 +72,7 @@ WHERE 1=1 AND A.Status=0 "); ...@@ -72,7 +72,7 @@ WHERE 1=1 AND A.Status=0 ");
/// <param name="rowsCount"></param> /// <param name="rowsCount"></param>
/// <param name="query"></param> /// <param name="query"></param>
/// <returns></returns> /// <returns></returns>
public List<RB_Class_Check_ViewModel> GetClassCheckPageRepository(int pageIndex,int pageSize,out long rowsCount, RB_Class_Check_ViewModel query) public List<RB_Class_Check_ViewModel> GetClassCheckPageRepository(int pageIndex, int pageSize, out long rowsCount, RB_Class_Check_ViewModel query)
{ {
var parameters = new DynamicParameters(); var parameters = new DynamicParameters();
StringBuilder builder = new StringBuilder(); StringBuilder builder = new StringBuilder();
...@@ -155,7 +155,7 @@ WHERE 1=1 AND A.Status=0 "); ...@@ -155,7 +155,7 @@ WHERE 1=1 AND A.Status=0 ");
} }
} }
builder.AppendFormat(" ORDER BY A.{0} DESC ", nameof(RB_Class_Check_ViewModel.ClassDate)); builder.AppendFormat(" ORDER BY A.{0} DESC ", nameof(RB_Class_Check_ViewModel.ClassDate));
return GetPage<RB_Class_Check_ViewModel>(pageIndex, pageSize, out rowsCount, builder.ToString(),parameters).ToList(); return GetPage<RB_Class_Check_ViewModel>(pageIndex, pageSize, out rowsCount, builder.ToString(), parameters).ToList();
} }
/// <summary> /// <summary>
...@@ -263,13 +263,13 @@ GROUP BY B.OrderGuestId ...@@ -263,13 +263,13 @@ GROUP BY B.OrderGuestId
/// </summary> /// </summary>
/// <param name="query"></param> /// <param name="query"></param>
/// <returns></returns> /// <returns></returns>
public int CalcPlanMinutesRepository(RB_Class_Plan_ViewModel query ) public int CalcPlanMinutesRepository(RB_Class_Plan_ViewModel query)
{ {
int result = 0; int result = 0;
string where = ""; string where = "";
if (query.ClassId > 0) if (query.ClassId > 0)
{ {
where+=string.Format(" AND B.ClassId={0} ", query.ClassId); where += string.Format(" AND B.ClassId={0} ", query.ClassId);
} }
if (query.ClassDate != null) if (query.ClassDate != null)
{ {
...@@ -347,6 +347,10 @@ GROUP BY A.ClassId ...@@ -347,6 +347,10 @@ GROUP BY A.ClassId
{ {
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Check_ViewModel.ClassId), query.ClassId); builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Check_ViewModel.ClassId), query.ClassId);
} }
if (query.OrderGuestId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Check_ViewModel.OrderGuestId), query.OrderGuestId);
}
if (!string.IsNullOrEmpty(query.Q_ClassIds)) if (!string.IsNullOrEmpty(query.Q_ClassIds))
{ {
builder.AppendFormat(" AND A.{0} in({1}) ", nameof(RB_Class_Check_ViewModel.ClassId), query.Q_ClassIds); builder.AppendFormat(" AND A.{0} in({1}) ", nameof(RB_Class_Check_ViewModel.ClassId), query.Q_ClassIds);
...@@ -370,7 +374,7 @@ GROUP BY A.ClassId ...@@ -370,7 +374,7 @@ GROUP BY A.ClassId
/// <param name="groupId"></param> /// <param name="groupId"></param>
/// <param name="guestIds"></param> /// <param name="guestIds"></param>
/// <returns></returns> /// <returns></returns>
public List<RB_Class_Check_ViewModel> GetClassGuestStudentTimeList(int groupId,string guestIds) public List<RB_Class_Check_ViewModel> GetClassGuestStudentTimeList(int groupId, string guestIds)
{ {
string sql = $@"SELECT OrderGuestId, SUM(StudyNum) as MinutesNum FROM rb_class_check where `Status`=0 and Group_Id ={groupId} and CheckStatus =0 and OrderGuestId in ({guestIds}) group by OrderGuestId"; string sql = $@"SELECT OrderGuestId, SUM(StudyNum) as MinutesNum FROM rb_class_check where `Status`=0 and Group_Id ={groupId} and CheckStatus =0 and OrderGuestId in ({guestIds}) group by OrderGuestId";
return Get<RB_Class_Check_ViewModel>(sql).ToList(); return Get<RB_Class_Check_ViewModel>(sql).ToList();
......
...@@ -133,6 +133,14 @@ LEFT JOIN rb_teacher AS T ON a.TeacherId=T.TId ...@@ -133,6 +133,14 @@ LEFT JOIN rb_teacher AS T ON a.TeacherId=T.TId
{ {
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.ClassId), query.ClassId); builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.ClassId), query.ClassId);
} }
if (query.ClassRoomId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.ClassRoomId), query.ClassRoomId);
}
if (query.ClassPlanId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.ClassPlanId), query.ClassPlanId);
}
if (query.TeacherId > 0) if (query.TeacherId > 0)
{ {
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.TeacherId), query.TeacherId); builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.TeacherId), query.TeacherId);
......
using Edu.Model.Entity.Course; using Edu.Common.Enum;
using Edu.Model.Entity.Course;
using Edu.Model.ViewModel.Course; using Edu.Model.ViewModel.Course;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
...@@ -30,6 +31,7 @@ SELECT A.*,B.SName AS SchoolName ...@@ -30,6 +31,7 @@ SELECT A.*,B.SName AS SchoolName
FROM RB_Class_Room AS A LEFT JOIN rb_school AS B ON A.School_Id=B.SId FROM RB_Class_Room AS A LEFT JOIN rb_school AS B ON A.School_Id=B.SId
WHERE 1=1 WHERE 1=1
"); ");
builder.AppendFormat(" AND A.{0}<>{1} ", nameof(RB_Class_Room_ViewModel.Status), (int)(DateStateEnum.Delete));
if (query != null) if (query != null)
{ {
if (query.Group_Id > 0) if (query.Group_Id > 0)
...@@ -40,10 +42,10 @@ WHERE 1=1 ...@@ -40,10 +42,10 @@ WHERE 1=1
{ {
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Room_ViewModel.School_Id), query.School_Id); builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Room_ViewModel.School_Id), query.School_Id);
} }
if (query.Status >=0) //if (query.Status >=0)
{ //{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Room_ViewModel.Status), (int)query.Status); // builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Room_ViewModel.Status), (int)query.Status);
} //}
if (!string.IsNullOrEmpty(query.RoomName)) if (!string.IsNullOrEmpty(query.RoomName))
{ {
builder.AppendFormat(" AND A.{0} LIKE @RoomName ", nameof(RB_Class_Room_ViewModel.RoomName)); builder.AppendFormat(" AND A.{0} LIKE @RoomName ", nameof(RB_Class_Room_ViewModel.RoomName));
...@@ -89,5 +91,45 @@ WHERE 1=1 ...@@ -89,5 +91,45 @@ WHERE 1=1
} }
return Get<RB_Class_Room_ViewModel>(builder.ToString(), parameters).ToList(); return Get<RB_Class_Room_ViewModel>(builder.ToString(), parameters).ToList();
} }
/// <summary>
/// 获取教室列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Class_Room_ViewModel> GetClassRoomList(RB_Class_Room_ViewModel query)
{
var parameters = new DynamicParameters();
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.*,B.SName AS SchoolName
FROM RB_Class_Room AS A LEFT JOIN rb_school AS B ON A.School_Id=B.SId
WHERE 1=1 ");
builder.AppendFormat(" AND A.{0}<>{1} ", nameof(RB_Class_Room_ViewModel.Status), (int)(DateStateEnum.Delete));
if (query != null)
{
if (query.Group_Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Room_ViewModel.Group_Id), query.Group_Id);
}
if (query.School_Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Room_ViewModel.School_Id), query.School_Id);
}
if (!string.IsNullOrEmpty(query.RoomName))
{
builder.AppendFormat(" AND A.{0} LIKE @RoomName ", nameof(RB_Class_Room_ViewModel.RoomName));
parameters.Add("RoomName", "%" + query.RoomName.Trim() + "%");
}
if (!string.IsNullOrEmpty(query.QRoomIds))
{
builder.AppendFormat(" AND A.{0} IN({1}) ", nameof(RB_Class_Room_ViewModel.RoomId), query.QRoomIds);
}
}
return Get<RB_Class_Room_ViewModel>(builder.ToString(), parameters).ToList();
}
} }
} }
\ No newline at end of file
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Edu.Common.Enum;
using Edu.Model.Entity.Course;
using Edu.Model.ViewModel.Course;
using VT.FW.DB.Dapper;
namespace Edu.Repository.Course
{
public class RB_Class_RoomUseLogRepository : BaseRepository<RB_Class_RoomUseLog>
{
/// <summary>
/// 获取教异常分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Class_RoomUseLog_ViewModel> GetClassRoomUseLogPageListRepository(int pageIndex, int pageSize, out long rowsCount, RB_Class_RoomUseLog_ViewModel query)
{
var parameters = new DynamicParameters();
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.*,B.RoomName
FROM RB_Class_RoomUseLog AS A LEFT JOIN rb_class_room AS B ON A.RoomId=B.RoomId
WHERE 1=1 ");
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_RoomUseLog_ViewModel.Status), (int)(DateStateEnum.Normal));
if (query != null)
{
if (query.Group_Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_RoomUseLog_ViewModel.Group_Id), query.Group_Id);
}
if (query.School_Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_RoomUseLog_ViewModel.School_Id), query.School_Id);
}
if (query.RoomId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_RoomUseLog_ViewModel.RoomId), query.RoomId);
}
}
return GetPage<RB_Class_RoomUseLog_ViewModel>(pageIndex, pageSize, out rowsCount, builder.ToString(), parameters).ToList();
}
/// <summary>
/// 获取教室异常列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Class_RoomUseLog_ViewModel> GetClassRoomUseLogListRepository(RB_Class_RoomUseLog_ViewModel query)
{
var parameters = new DynamicParameters();
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.*,B.RoomName
FROM RB_Class_RoomUseLog AS A LEFT JOIN rb_class_room AS B ON A.RoomId=B.RoomId
WHERE 1=1 ");
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_RoomUseLog_ViewModel.Status), (int)(DateStateEnum.Normal));
if (query != null)
{
if (query.Group_Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_RoomUseLog_ViewModel.Group_Id), query.Group_Id);
}
if (query.School_Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_RoomUseLog_ViewModel.School_Id), query.School_Id);
}
if (query.RoomId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_RoomUseLog_ViewModel.RoomId), query.RoomId);
}
if (!string.IsNullOrWhiteSpace(query.StartTime))
{
builder.AppendFormat($" and DATE_FORMAT(a.CreateTime,'%Y-%m-%d')>=DATE_FORMAT('{query.StartTime}','%Y-%m-%d')");
}
if (!string.IsNullOrWhiteSpace(query.EndTime))
{
builder.AppendFormat($" and DATE_FORMAT(a.CreateTime,'%Y-%m-%d')<=DATE_FORMAT('{query.EndTime}','%Y-%m-%d')");
}
if (!string.IsNullOrEmpty(query.QRoomIds))
{
builder.AppendFormat(" AND A.{0} IN({1}) ", nameof(RB_Class_RoomUseLog_ViewModel.RoomId), query.QRoomIds);
}
}
return Get<RB_Class_RoomUseLog_ViewModel>(builder.ToString(), parameters).ToList();
}
}
}
...@@ -59,6 +59,58 @@ WHERE 1=1 ...@@ -59,6 +59,58 @@ WHERE 1=1
return Get<RB_Class_Time_ViewModel>(builder.ToString()).ToList(); return Get<RB_Class_Time_ViewModel>(builder.ToString()).ToList();
} }
/// <summary>
/// 获取班级上课时间列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Class_Time_ViewModel> GetClassTimeList_V2(RB_Class_Time_ViewModel query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT B.*,CONCAT( DATE_FORMAT(A.ClassDate,'%Y-%m-%d') ,' ',B.StartTime,':00') AS NewPlanDateTime,
CONCAT( DATE_FORMAT(A.ClassDate,'%Y-%m-%d') ,' ',B.EndTime,':00') AS NewEndPlanDateTime
FROM rb_class_time AS B INNER JOIN rb_class_plan AS A ON A.ClassPlanId=B.ClassPlanId WHERE 1=1
");
if (query != null)
{
if (query.ClassPlanId > 0)
{
builder.AppendFormat(" AND B.{0}={1} ", nameof(RB_Class_Time_ViewModel.ClassPlanId), query.ClassPlanId);
}
if (query.ClassTimeId > 0)
{
builder.AppendFormat(" AND B.{0}={1} ", nameof(RB_Class_Time_ViewModel.ClassTimeId), query.ClassTimeId);
}
if (!string.IsNullOrEmpty(query.QClassPlanIds))
{
builder.AppendFormat(" AND B.{0} IN({1}) ", nameof(RB_Class_Time_ViewModel.ClassPlanId), query.QClassPlanIds);
}
if (query.ClassId > 0)
{
builder.AppendFormat(" AND B.{0}={1} ", nameof(RB_Class_Time_ViewModel.ClassId), query.ClassId);
}
if (!string.IsNullOrEmpty(query.QClassIds))
{
builder.AppendFormat(" AND B.{0} IN({1}) ", nameof(RB_Class_Time_ViewModel.ClassId), query.QClassIds);
}
if (query.Group_Id > 0)
{
builder.AppendFormat(" AND B.{0}={1} ", nameof(RB_Class_Plan_ViewModel.Group_Id), query.Group_Id);
}
if (query.School_Id > 0)
{
builder.AppendFormat(" AND B.{0}={1} ", nameof(RB_Class_Plan_ViewModel.School_Id), query.School_Id);
}
}
return Get<RB_Class_Time_ViewModel>(builder.ToString()).ToList();
}
/// <summary> /// <summary>
/// 根据班级编号删除班级上课时间 /// 根据班级编号删除班级上课时间
/// </summary> /// </summary>
...@@ -106,6 +158,55 @@ WHERE 1=1 ...@@ -106,6 +158,55 @@ WHERE 1=1
return Get<RB_Class_Time_ViewModel>(builder.ToString()).ToList(); return Get<RB_Class_Time_ViewModel>(builder.ToString()).ToList();
} }
/// <summary>
/// 获取班级上课时间列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Class_Time_ViewModel> GetClassTimeList(RB_Class_Time_ViewModel query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@" SELECT a.*,c.ClassName,b.ClassRoomId from rb_class_time as a LEFT JOIN rb_class_plan as b on a.ClassPlanId=b.ClassPlanId
LEFT JOIN rb_class as c on a.ClassId=c.ClassId
where b.`Status`=0 and DATE_FORMAT(b.ClassDate,'%y/%m/%d')=DATE_FORMAT(NOW(),'%y/%m/%d') and b.`Status`=0 and c.`Status`=0 and c.ClassStatus=2 ");
if (query != null)
{
if (query.ClassPlanId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Time_ViewModel.ClassPlanId), query.ClassPlanId);
}
if (query.ClassTimeId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Time_ViewModel.ClassTimeId), query.ClassTimeId);
}
if (!string.IsNullOrEmpty(query.QClassPlanIds))
{
builder.AppendFormat(" AND A.{0} IN({1}) ", nameof(RB_Class_Time_ViewModel.ClassPlanId), query.QClassPlanIds);
}
if (query.ClassId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Time_ViewModel.ClassId), query.ClassId);
}
if (!string.IsNullOrEmpty(query.QClassIds))
{
builder.AppendFormat(" AND A.{0} IN({1}) ", nameof(RB_Class_Time_ViewModel.ClassId), query.QClassIds);
}
if (query.Group_Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.Group_Id), query.Group_Id);
}
if (query.School_Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.School_Id), query.School_Id);
}
}
return Get<RB_Class_Time_ViewModel>(builder.ToString()).ToList();
}
#region 教师上课挂件查询 #region 教师上课挂件查询
/// <summary> /// <summary>
...@@ -113,7 +214,7 @@ WHERE 1=1 ...@@ -113,7 +214,7 @@ WHERE 1=1
/// </summary> /// </summary>
/// <param name="classIds"></param> /// <param name="classIds"></param>
/// <returns></returns> /// <returns></returns>
public List<RB_Class_Time_Extend> GetClassTimeByRoomId(int RoomId,int Group_Id) public List<RB_Class_Time_Extend> GetClassTimeByRoomId(int RoomId, int Group_Id)
{ {
StringBuilder builder = new StringBuilder(); StringBuilder builder = new StringBuilder();
builder.AppendFormat($@"SELECT t.TeacherName,t.TeacherHead,c.ClassHours,c.ClassName,cou.CourseName,lp.LessonPlanId,A.ClassPlanId,A.ClassId,A.`Status`,A.ClassRoomId,A.Group_Id,A.School_Id,A.TeacherId,B.ClassTimeId,CONCAT( DATE_FORMAT(A.ClassDate,'%Y-%m-%d') ,' ',B.StartTime,':00') AS NewPlanDateTime, builder.AppendFormat($@"SELECT t.TeacherName,t.TeacherHead,c.ClassHours,c.ClassName,cou.CourseName,lp.LessonPlanId,A.ClassPlanId,A.ClassId,A.`Status`,A.ClassRoomId,A.Group_Id,A.School_Id,A.TeacherId,B.ClassTimeId,CONCAT( DATE_FORMAT(A.ClassDate,'%Y-%m-%d') ,' ',B.StartTime,':00') AS NewPlanDateTime,
......
...@@ -63,6 +63,58 @@ namespace Edu.Repository.Course ...@@ -63,6 +63,58 @@ namespace Edu.Repository.Course
return Get<RB_Order_Guest_ViewModel>(sql).ToList(); return Get<RB_Order_Guest_ViewModel>(sql).ToList();
} }
/// <summary>
/// 获取列表
/// </summary>
/// <param name="demodel"></param>
/// <param name="orderIds"></param>
/// <returns></returns>
public List<RB_Order_Guest_ViewModel> GetList_V2(RB_Order_Guest_ViewModel demodel)
{
string where = $@" 1=1 and Status=0";
if (demodel.Group_Id > 0)
{
where += $@" and {nameof(RB_Order_Guest_ViewModel.Group_Id)} ={demodel.Group_Id}";
}
if (demodel.School_Id > 0)
{
where += $@" and {nameof(RB_Order_Guest_ViewModel.School_Id)} ={demodel.School_Id}";
}
if (demodel.Id > 0)
{
where += $@" and {nameof(RB_Order_Guest_ViewModel.Id)} ={demodel.Id}";
}
if (demodel.OrderId > 0)
{
where += $@" and {nameof(RB_Order_Guest_ViewModel.OrderId)} ={demodel.OrderId}";
}
if (demodel.ClassId > 0)
{
where += $@" and {nameof(RB_Order_Guest_ViewModel.ClassId)} ={demodel.ClassId}";
}
if (!string.IsNullOrEmpty(demodel.OrderIds))
{
where += $@" and {nameof(RB_Order_Guest_ViewModel.OrderId)} in({demodel.OrderIds})";
}
if (!string.IsNullOrEmpty(demodel.ClassIds))
{
where += $@" and {nameof(RB_Order_Guest_ViewModel.ClassId)} in({demodel.ClassIds})";
}
if (!string.IsNullOrEmpty(demodel.GuestName))
{
where += $@" and {nameof(RB_Order_Guest_ViewModel.GuestName)} like '%{demodel.GuestName}%'";
}
if (demodel.GuestState > 0)
{
where += $@" and {nameof(RB_Order_Guest_ViewModel.GuestState)} ={demodel.GuestState}";
}
string sql = $@" select * from RB_Order_Guest where {where}";
return Get<RB_Order_Guest_ViewModel>(sql).ToList();
}
/// <summary> /// <summary>
/// 获取分页列表 /// 获取分页列表
/// </summary> /// </summary>
......
...@@ -299,7 +299,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -299,7 +299,7 @@ namespace Edu.WebApi.Controllers.Course
} }
} }
} }
var tempList =dayList.GroupBy(qitem => new { qitem }).Where(g => g.Count() > 1).Select(qitem => new { qitem.Key.qitem }); var tempList = dayList.GroupBy(qitem => new { qitem }).Where(g => g.Count() > 1).Select(qitem => new { qitem.Key.qitem });
string message2 = ""; string message2 = "";
foreach (var sItem in tempList) foreach (var sItem in tempList)
{ {
...@@ -320,7 +320,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -320,7 +320,7 @@ namespace Edu.WebApi.Controllers.Course
{ {
tempStr = "固定日期"; tempStr = "固定日期";
} }
return ApiResult.ParamIsNull(message:"学习时间段"+(tempStr)+ message2.TrimStart(',')+"重复!"); return ApiResult.ParamIsNull(message: "学习时间段" + (tempStr) + message2.TrimStart(',') + "重复!");
} }
extModel.DefaultTimeJson = Common.Plugin.JsonHelper.Serialize(extModel.DefaultTimeList); extModel.DefaultTimeJson = Common.Plugin.JsonHelper.Serialize(extModel.DefaultTimeList);
} }
...@@ -586,7 +586,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -586,7 +586,7 @@ namespace Edu.WebApi.Controllers.Course
var classId = base.ParmJObj.GetInt("ClassId"); var classId = base.ParmJObj.GetInt("ClassId");
var schoolId = 0; var schoolId = 0;
//var schoolId = base.ParmJObj.GetInt("School_Id"); //var schoolId = base.ParmJObj.GetInt("School_Id");
var data = classModule.GetClassStudentListModule(classId, schoolId, base.UserInfo.Group_Id); var data = classModule.GetClassStudentListModule(classId, schoolId, base.UserInfo.Group_Id, "");
return ApiResult.Success(data: data); return ApiResult.Success(data: data);
} }
...@@ -833,6 +833,79 @@ namespace Edu.WebApi.Controllers.Course ...@@ -833,6 +833,79 @@ namespace Edu.WebApi.Controllers.Course
} }
/// <summary>
/// 签到
/// </summary>
/// <returns></returns>
public ApiResult AddClassCheckOne()
{
List<RB_Class_Check_ViewModel> list = new List<RB_Class_Check_ViewModel>();
var exModel = new RB_Class_Check_ViewModel()
{
CheckStatus = base.ParmJObj.GetInt("CheckStatus"),
ClassDate = base.ParmJObj.GetDateTime("ClassDate"),
ClassRoomId = base.ParmJObj.GetInt("ClassRoomId"),
OrderGuestId = base.ParmJObj.GetInt("OrderGuestId"),
School_Id = base.ParmJObj.GetInt("School_Id"),
StudyNum = base.ParmJObj.GetInt("StudyNum"),
TeacherId = base.ParmJObj.GetInt("TeacherId"),
ClassId = base.ParmJObj.GetInt("classId"),
};
list.Add(exModel);
if (list == null || !list.Any())
{
return ApiResult.ParamIsNull("");
}
//获取班级的学员信息
var orderGuestList = classModule.GetOrderGuest(new RB_Order_Guest_ViewModel { Group_Id = base.UserInfo.Group_Id, ClassId = exModel.ClassId });
//判断今天有课没有
var planList = classModule.GetClassPlanModelRepository(new RB_Class_Plan_ViewModel
{
Group_Id = base.UserInfo.Group_Id,
ClassId = exModel.ClassId,
QClassDateStr = Common.ConvertHelper.FormatDate(exModel.ClassDate),
});
if (planList == null || !planList.Any())
{
return ApiResult.Failed("今日无课程,无须签到");
}
//判断当天是否有已签到数据
var checkLogList = classModule.GetClassCheckList(new RB_Class_Check_ViewModel { Group_Id = base.UserInfo.Group_Id, ClassId = list.FirstOrDefault().ClassId, StartDate = exModel.ClassDate.ToString("yyyy-MM-dd HH:mm:ss"), EndDate = exModel.ClassDate.ToString("yyyy-MM-dd HH:mm:ss") });
foreach (var item in list)
{
var signModel = checkLogList?.Where(qitem => qitem.ClassDate == item.ClassDate && qitem.ClassId == item.ClassId && qitem.OrderGuestId == item.OrderGuestId)?.FirstOrDefault();
if (signModel != null && signModel.ClassCheckId > 0)
{
item.ClassCheckId = signModel.ClassCheckId;
item.Group_Id = signModel.Group_Id;
item.CreateTime = signModel.CreateTime;
item.CreateBy = base.UserInfo.Id;
item.Status = 0;
}
else
{
item.Group_Id = base.UserInfo.Group_Id;
item.CreateTime = System.DateTime.Now;
item.CreateBy = base.UserInfo.Id;
item.Status = 0;
}
}
bool result = classModule.AddClassCheckModule(list);
if (result)
{
classModule.SetClassProcessModule(exModel.ClassId);
}
return result ? ApiResult.Success() : ApiResult.Failed("签到失败");
}
/// <summary> /// <summary>
/// 获取缺课分页列表 /// 获取缺课分页列表
...@@ -847,12 +920,12 @@ namespace Edu.WebApi.Controllers.Course ...@@ -847,12 +920,12 @@ namespace Edu.WebApi.Controllers.Course
CheckStatus = 1, CheckStatus = 1,
IsAbsentHours = 1, IsAbsentHours = 1,
MakeUpStatus = base.ParmJObj.GetInt("MakeUpStatus"), MakeUpStatus = base.ParmJObj.GetInt("MakeUpStatus"),
GuestName=base.ParmJObj.GetStringValue("GuestName"), GuestName = base.ParmJObj.GetStringValue("GuestName"),
ClassName= base.ParmJObj.GetStringValue("ClassName"), ClassName = base.ParmJObj.GetStringValue("ClassName"),
CourseName = base.ParmJObj.GetStringValue("CourseName"), CourseName = base.ParmJObj.GetStringValue("CourseName"),
TeacherName = base.ParmJObj.GetStringValue("TeacherName"), TeacherName = base.ParmJObj.GetStringValue("TeacherName"),
RoomName = base.ParmJObj.GetStringValue("RoomName"), RoomName = base.ParmJObj.GetStringValue("RoomName"),
StartDate=base.ParmJObj.GetStringValue("StartDate"), StartDate = base.ParmJObj.GetStringValue("StartDate"),
EndDate = base.ParmJObj.GetStringValue("EndDate"), EndDate = base.ParmJObj.GetStringValue("EndDate"),
}; };
query.Group_Id = base.UserInfo.Group_Id; query.Group_Id = base.UserInfo.Group_Id;
...@@ -875,7 +948,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -875,7 +948,7 @@ namespace Edu.WebApi.Controllers.Course
item.TeacherName, item.TeacherName,
item.ClassRoomId, item.ClassRoomId,
item.RoomName, item.RoomName,
ClassDate=Common.ConvertHelper.FormatDate(item.ClassDate), ClassDate = Common.ConvertHelper.FormatDate(item.ClassDate),
item.MakeUpStatus, item.MakeUpStatus,
item.MakeUpStatusStr item.MakeUpStatusStr
}); });
...@@ -894,7 +967,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -894,7 +967,7 @@ namespace Edu.WebApi.Controllers.Course
int MakeUpStatus = base.ParmJObj.GetInt("MakeUpStatus"); int MakeUpStatus = base.ParmJObj.GetInt("MakeUpStatus");
int ClassCheckId = base.ParmJObj.GetInt("ClassCheckId"); int ClassCheckId = base.ParmJObj.GetInt("ClassCheckId");
int GuestId = base.ParmJObj.GetInt("GuestId"); int GuestId = base.ParmJObj.GetInt("GuestId");
bool flag= classModule.SetMakeUpStatusModule(MakeUpStatus, ClassCheckId, GuestId); bool flag = classModule.SetMakeUpStatusModule(MakeUpStatus, ClassCheckId, GuestId);
return flag ? ApiResult.Success() : ApiResult.Failed(); return flag ? ApiResult.Success() : ApiResult.Failed();
} }
...@@ -1462,7 +1535,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -1462,7 +1535,7 @@ namespace Edu.WebApi.Controllers.Course
{ {
DayStr = item.Key, DayStr = item.Key,
result = newClassPlanList.OrderBy(x=>x.NewPlanDateTime).Where(x => x.NewPlanDateTime.Value.ToString("yyyy-MM-dd") == item.Key).Select(x => new result = newClassPlanList.OrderBy(x => x.NewPlanDateTime).Where(x => x.NewPlanDateTime.Value.ToString("yyyy-MM-dd") == item.Key).Select(x => new
{ {
TeacherName = x.TeacherName ?? "", TeacherName = x.TeacherName ?? "",
TeacherIcon = x.TeacherHead ?? "", TeacherIcon = x.TeacherHead ?? "",
...@@ -1619,7 +1692,23 @@ namespace Edu.WebApi.Controllers.Course ...@@ -1619,7 +1692,23 @@ namespace Edu.WebApi.Controllers.Course
var classId = base.ParmJObj.GetInt("ClassId"); var classId = base.ParmJObj.GetInt("ClassId");
var schoolId = 0; var schoolId = 0;
var Group_Id = base.ParmJObj.GetInt("Group_Id", 100000); var Group_Id = base.ParmJObj.GetInt("Group_Id", 100000);
var data = classModule.GetClassStudentListModule(classId, schoolId, Group_Id); var data = classModule.GetClassStudentListModule(classId, schoolId, Group_Id, "");
return ApiResult.Success(data: data);
}
/// <summary>
/// 获取学员列表以及签到状态
/// </summary>
/// <returns></returns>
[HttpPost]
[Microsoft.AspNetCore.Authorization.AllowAnonymous]
public ApiResult GetStudentCheckByClassId()
{
var classId = base.ParmJObj.GetInt("ClassId");
var ClassDate = base.ParmJObj.GetStringValue("ClassDate");
var schoolId = 0;
var Group_Id = base.ParmJObj.GetInt("Group_Id", 100000);
var data = classModule.GetClassStudentListModule(classId, schoolId, Group_Id, ClassDate);
return ApiResult.Success(data: data); return ApiResult.Success(data: data);
} }
#endregion #endregion
......
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Edu.Common.API;
using Edu.WebApi.Filter;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Cors;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json.Linq;
using Edu.Common.Plugin;
using Aliyun.Acs.vod.Model.V20170321;
using Aliyun.Net.SDK.Core;
using Aliyun.Acs.Core.Profile;
namespace Edu.WebApi.Controllers.Video
{
[Route("api/[controller]/[action]")]
[ApiExceptionFilter]
[ApiController]
[EnableCors("AllowCors")]
public class VideoController : BaseController
{
/// <summary>
/// 获取视频播放凭证
/// </summary>
/// <returns></returns>
[HttpPost]
[AllowAnonymous]
public ApiResult GetVideoPlayAuth()
{
JObject jobj = JObject.Parse(RequestParm.Msg.ToString());
string VideoId = jobj.GetStringValue("strVid");
try
{
string regionId = "cn-shanghai";
IClientProfile profile = DefaultProfile.GetProfile(regionId, "LTAI5tBoku6yPFSkacA3sbAT", "zcjzTpMGyPwchaKAyUFeKNEBcqAxvL");
var acsClient = new Aliyun.Acs.Core.DefaultAcsClient(profile);
if (string.IsNullOrEmpty(VideoId))
{
return ApiResult.Failed("获取失败");
}
GetVideoPlayAuthRequest request = new GetVideoPlayAuthRequest();
request.VideoId = VideoId;
request.AuthInfoTimeout = 30000;
// 初始化客户端
// DefaultAcsClient client = InitVodClient();
// 发起请求,并得到 response
GetVideoPlayAuthResponse response = acsClient.GetAcsResponse(request);
GetVideoPlayAuthResponse.GetVideoPlayAuth_VideoMeta VideoMetaModel = response.VideoMeta;
string RequestId = response.RequestId;
string PlayAuth = response.PlayAuth;
if (response != null && !string.IsNullOrWhiteSpace(response.RequestId))
{
return ApiResult.Success("", new { RequestId, PlayAuth, VideoMeta= VideoMetaModel });
}
else
{
return ApiResult.Failed("获取失败");
}
}
catch (Exception)
{
return ApiResult.Failed("获取失败");
}
}
}
}
...@@ -19,6 +19,8 @@ ...@@ -19,6 +19,8 @@
<None Include="..\.editorconfig" Link=".editorconfig" /> <None Include="..\.editorconfig" Link=".editorconfig" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="aliyun-net-sdk-core" Version="1.5.10" />
<PackageReference Include="aliyun-net-sdk-vod" Version="2.15.12" />
<PackageReference Include="AspNetCoreRateLimit" Version="3.2.2" /> <PackageReference Include="AspNetCoreRateLimit" Version="3.2.2" />
<PackageReference Include="JWT" Version="5.3.1" /> <PackageReference Include="JWT" Version="5.3.1" />
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="3.0.0" /> <PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="3.0.0" />
...@@ -44,5 +46,8 @@ ...@@ -44,5 +46,8 @@
<ProjectReference Include="..\Edu.Repository\Edu.Repository.csproj" /> <ProjectReference Include="..\Edu.Repository\Edu.Repository.csproj" />
<ProjectReference Include="..\Edu.ThirdCore\Edu.ThirdCore.csproj" /> <ProjectReference Include="..\Edu.ThirdCore\Edu.ThirdCore.csproj" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<Folder Include="App_Code\" />
</ItemGroup>
</Project> </Project>
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