Commit 059b18d3 authored by 吴春's avatar 吴春

提交代码

parent ea636e7f
...@@ -42,14 +42,11 @@ namespace Edu.Model.Entity.EduTask ...@@ -42,14 +42,11 @@ namespace Edu.Model.Entity.EduTask
/// </summary> /// </summary>
public string OrderGuestIds { get; set; } public string OrderGuestIds { get; set; }
/// <summary>
/// 计划id
/// </summary>
public int ClassPlanId { get; set; }
/// <summary> /// <summary>
/// 计划时间id /// 计划时间id
/// </summary> /// </summary>
public int ClassTimeId { get; set; } public string ClassTimeIds { get; set; }
......
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Text; using System.Text;
using VT.FW.DB;
namespace Edu.Model.Entity.EduTask namespace Edu.Model.Entity.EduTask
{ {
/// <summary> /// <summary>
/// 临时上课邀请记录表 /// 临时上课邀请记录表
/// </summary> /// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Temporary_Invitation public class RB_Temporary_Invitation
{ {
/// <summary> /// <summary>
...@@ -48,7 +51,10 @@ namespace Edu.Model.Entity.EduTask ...@@ -48,7 +51,10 @@ namespace Edu.Model.Entity.EduTask
/// </summary> /// </summary>
public int OrderGuestId { get; set; } public int OrderGuestId { get; set; }
/// <summary>
/// 状态
/// </summary>
public int Status { get; set; }
/// <summary> /// <summary>
/// 创建人 /// 创建人
/// </summary> /// </summary>
......
...@@ -8,6 +8,11 @@ namespace Edu.Model.ViewModel.Course ...@@ -8,6 +8,11 @@ namespace Edu.Model.ViewModel.Course
/// </summary> /// </summary>
public class RB_Class_Plan_ViewModel : RB_Class_Plan public class RB_Class_Plan_ViewModel : RB_Class_Plan
{ {
/// <summary>
/// 排课日期【查询使用,逗号分隔】
/// </summary>
public string QClassPlanIds { get; set; }
/// <summary> /// <summary>
/// 班级编号【查询使用,逗号分隔】 /// 班级编号【查询使用,逗号分隔】
/// </summary> /// </summary>
......
...@@ -8,6 +8,11 @@ namespace Edu.Model.ViewModel.Course ...@@ -8,6 +8,11 @@ namespace Edu.Model.ViewModel.Course
/// </summary> /// </summary>
public class RB_Class_Time_ViewModel : RB_Class_Time public class RB_Class_Time_ViewModel : RB_Class_Time
{ {
/// <summary>
/// 计划时间编号【查询使用,逗号分隔】
/// </summary>
public string QClassTimeIds { get; set; }
/// <summary> /// <summary>
/// 计划编号【查询使用,逗号分隔】 /// 计划编号【查询使用,逗号分隔】
/// </summary> /// </summary>
......
...@@ -210,5 +210,14 @@ namespace Edu.Model.ViewModel.Course ...@@ -210,5 +210,14 @@ namespace Edu.Model.ViewModel.Course
/// 学校 /// 学校
/// </summary> /// </summary>
public string SchoolName { get; set; } public string SchoolName { get; set; }
/// <summary>
/// 上课时间id
/// </summary>
public int ClassTimeId { get; set; }
/// <summary>
/// 上课计划id
/// </summary>
public int ClassPlanId { get; set; }
} }
} }
\ No newline at end of file
...@@ -44,10 +44,26 @@ namespace Edu.Model.ViewModel.EduTask ...@@ -44,10 +44,26 @@ namespace Edu.Model.ViewModel.EduTask
/// </summary> /// </summary>
public string CourseName { get; set; } public string CourseName { get; set; }
/// <summary>
/// 学员信息
/// </summary>
public List<Course.RB_Order_Guest_ViewModel> OrderGuestList { get; set; }
/// <summary>
/// 上课信息
/// </summary>
public List<ClassPlanTime> ClassPlanTimeList { get; set; }
}
public class ClassPlanTime
{
/// <summary> /// <summary>
/// 上课日期 /// 上课日期
/// </summary> /// </summary>
public DateTime? ClassDate { get; set; } public string ClassDate { get; set; }
/// <summary> /// <summary>
/// 上课开始时间 /// 上课开始时间
...@@ -62,12 +78,7 @@ namespace Edu.Model.ViewModel.EduTask ...@@ -62,12 +78,7 @@ namespace Edu.Model.ViewModel.EduTask
/// <summary> /// <summary>
/// 上课课时 /// 上课课时
/// </summary> /// </summary>
public int TimeHour { get; set; } public decimal TimeHour { get; set; }
/// <summary>
/// 学员信息
/// </summary>
public List<Course.RB_Order_Guest_ViewModel> OrderGuestList { get; set; }
} }
} }
...@@ -10,6 +10,21 @@ namespace Edu.Model.ViewModel.EduTask ...@@ -10,6 +10,21 @@ namespace Edu.Model.ViewModel.EduTask
/// </summary> /// </summary>
public class RB_Temporary_Invitation_ViewModel : RB_Temporary_Invitation public class RB_Temporary_Invitation_ViewModel : RB_Temporary_Invitation
{ {
/// <summary>
/// 班级的ids
/// </summary>
public string ClassIds { get; set; }
/// <summary>
/// 上课时间ids
/// </summary>
public string ClassTimeIds { get; set; }
/// <summary>
/// 上课计划ids
/// </summary>
public string ClassPlanIds { get; set; }
} }
} }
This diff is collapsed.
...@@ -116,7 +116,8 @@ namespace Edu.Module.EduTask ...@@ -116,7 +116,8 @@ namespace Edu.Module.EduTask
//老师列表 //老师列表
List<RB_Teacher_ViewModel> teacherList = new List<RB_Teacher_ViewModel>(); List<RB_Teacher_ViewModel> teacherList = new List<RB_Teacher_ViewModel>();
//学生信息 //学生信息
List<RB_Order_Guest_ViewModel> orderGuestList = new List<RB_Order_Guest_ViewModel>(); List<RB_Order_Guest_ViewModel> orderGuestList = new List<RB_Order_Guest_ViewModel>(); //学生信息
List<RB_Order_Guest_ViewModel> orderGuestTempInvitationList = new List<RB_Order_Guest_ViewModel>();
//教室列表 //教室列表
List<RB_Class_Room_ViewModel> roomList = new List<RB_Class_Room_ViewModel>(); List<RB_Class_Room_ViewModel> roomList = new List<RB_Class_Room_ViewModel>();
//班级上课计划列表 //班级上课计划列表
...@@ -268,25 +269,34 @@ namespace Edu.Module.EduTask ...@@ -268,25 +269,34 @@ namespace Edu.Module.EduTask
if (studentTempInvitationClassList != null && studentTempInvitationClassList.Any()) if (studentTempInvitationClassList != null && studentTempInvitationClassList.Any())
{ {
string orderGuestIds = string.Join(",", studentTempInvitationClassList.Select(x => x.OrderGuestIds)); string orderGuestIds = string.Join(",", studentTempInvitationClassList.Select(x => x.OrderGuestIds));
orderGuestList = order_GuestRepository.GetStopingStudentPage(new RB_Order_Guest_ViewModel if (!string.IsNullOrWhiteSpace(orderGuestIds))
{ {
OrderGuestIds = orderGuestIds orderGuestTempInvitationList = order_GuestRepository.GetStopingStudentPage(new RB_Order_Guest_ViewModel
}); {
if (orderGuestList != null && orderGuestList.Any()) OrderGuestIds = orderGuestIds
});
if (orderGuestTempInvitationList != null && orderGuestTempInvitationList.Any())
{
orderGuestTempInvitationList.ForEach(x => x.EnterName = x.EnterID > 0 ? (UserReidsCache.GetUserLoginInfo(x.EnterID)?.AccountName ?? "") : "");
}
}
string classTimeIds = string.Join(",", studentTempInvitationClassList.Select(x => x.ClassTimeIds));
if (!string.IsNullOrWhiteSpace(classTimeIds))
{ {
orderGuestList.ForEach(x => x.EnterName = x.EnterID > 0 ? (UserReidsCache.GetUserLoginInfo(x.EnterID)?.AccountName ?? "") : ""); timeList = class_TimeRepository.GetClassTimeListRepository(new RB_Class_Time_ViewModel { QClassTimeIds = classTimeIds });
foreach (var item in studentTempInvitationClassList) if (timeList != null && timeList.Any())
{ {
item.OrderGuestList = new List<RB_Order_Guest_ViewModel>(); string classPlanIds = string.Join(",", timeList.Select(x => x.ClassPlanId));
foreach (var itemOrderGuestId in item.OrderGuestIds.Split(","))
if (!string.IsNullOrWhiteSpace(classPlanIds))
{ {
if (!string.IsNullOrWhiteSpace(itemOrderGuestId)) planList = class_PlanRepository.GetClassPlanListRepository(new RB_Class_Plan_ViewModel { QClassPlanIds = classPlanIds });
{
item.OrderGuestList.AddRange(orderGuestList.Where(x => x.Id == Convert.ToInt32(itemOrderGuestId)));
}
} }
} }
} }
} }
} }
...@@ -346,6 +356,43 @@ namespace Edu.Module.EduTask ...@@ -346,6 +356,43 @@ namespace Edu.Module.EduTask
{ {
DataObj = stopClassList?.Where(qitem => qitem.Id == item.RelationId)?.FirstOrDefault(); DataObj = stopClassList?.Where(qitem => qitem.Id == item.RelationId)?.FirstOrDefault();
} }
//临时上课邀请
if (item.ReceiptType == Common.Enum.Finance.ReceiptTypeEnum.InvitationClass)
{
var tempModel = studentTempInvitationClassList.Where(qitem => qitem.Id == item.RelationId)?.FirstOrDefault();
//tempModel.ClassDate = planList.Where(x => x.ClassPlanId == tempModel.ClassPlanId).FirstOrDefault()?.ClassDate.ToString("yyyy-MM-dd") ?? "";
//tempModel.StartTime = timeList.Where(x => x.ClassTimeId == tempModel.ClassTimeId).FirstOrDefault()?.StartTime ?? "";
//tempModel.EndTime = timeList.Where(x => x.ClassTimeId == tempModel.ClassTimeId).FirstOrDefault()?.EndTime ?? "";
//tempModel.TimeHour = timeList.Where(x => x.ClassTimeId == tempModel.ClassTimeId).FirstOrDefault()?.TimeHour ?? 0;
tempModel.ClassPlanTimeList = new List<ClassPlanTime>();
foreach (var itemClassTimeIds in tempModel.ClassTimeIds.Split(","))
{
if (!string.IsNullOrWhiteSpace(itemClassTimeIds))
{
var tempTimeModel = timeList.Where(x => x.ClassTimeId.ToString() == itemClassTimeIds).FirstOrDefault();
ClassPlanTime classPlanTimeModel = new ClassPlanTime()
{
StartTime = tempTimeModel?.StartTime ?? "",
EndTime = tempTimeModel?.EndTime ?? "",
TimeHour = tempTimeModel?.TimeHour ?? 0
};
classPlanTimeModel.ClassDate = planList.Where(x => x.ClassPlanId == tempTimeModel.ClassPlanId).FirstOrDefault()?.ClassDate.ToString("yyyy-MM-dd") ?? "";
tempModel.ClassPlanTimeList.Add(classPlanTimeModel);
}
}
tempModel.OrderGuestList = new List<RB_Order_Guest_ViewModel>();
foreach (var itemOrderGuestIds in tempModel.OrderGuestIds.Split(","))
{
if (!string.IsNullOrWhiteSpace(itemOrderGuestIds))
{
tempModel.OrderGuestList.AddRange(orderGuestTempInvitationList.Where(x => x.Id.ToString() == itemOrderGuestIds));
}
}
DataObj = tempModel;
}
//订单转班 //订单转班
if (item.ReceiptType == Common.Enum.Finance.ReceiptTypeEnum.OrderTransClass) if (item.ReceiptType == Common.Enum.Finance.ReceiptTypeEnum.OrderTransClass)
{ {
...@@ -1057,6 +1104,14 @@ namespace Edu.Module.EduTask ...@@ -1057,6 +1104,14 @@ namespace Edu.Module.EduTask
flag = student_StopClassRepository.UpdateStudentStopClass(receiptModel.Id, auditModel.AuditStatus); flag = student_StopClassRepository.UpdateStudentStopClass(receiptModel.Id, auditModel.AuditStatus);
} }
} }
//临时上课邀请
if (receiptModel.ReceiptType == Common.Enum.Finance.ReceiptTypeEnum.InvitationClass)
{
if (auditModel.AuditStatus == 2)
{
flag = student_TempInvitationRepository.UpdateStundetTempInvitation(receiptModel.Id);
}
}
return flag; return flag;
} }
...@@ -1223,5 +1278,16 @@ namespace Edu.Module.EduTask ...@@ -1223,5 +1278,16 @@ namespace Edu.Module.EduTask
auditRelevance.ToAuditId = string.Join(",", empIds); auditRelevance.ToAuditId = string.Join(",", empIds);
education_RelevanceRepository.Update(auditRelevance); education_RelevanceRepository.Update(auditRelevance);
} }
/// <summary>
/// 获取教务单据列表
/// </summary>
/// <param name="RelationIds"></param>
/// <returns></returns>
public List<RB_Education_Receipt_ViewModel> GetEducationReceiptList(string RelationIds)
{
return education_ReceiptRepository.GetEducationReceiptList(RelationIds);
}
} }
} }
...@@ -54,8 +54,7 @@ namespace Edu.Module.EduTask ...@@ -54,8 +54,7 @@ namespace Edu.Module.EduTask
{nameof(RB_Student_TempInvitation_ViewModel.OrderGuestIds),extModel.OrderGuestIds }, {nameof(RB_Student_TempInvitation_ViewModel.OrderGuestIds),extModel.OrderGuestIds },
{nameof(RB_Student_TempInvitation_ViewModel.ClassId),extModel.ClassId }, {nameof(RB_Student_TempInvitation_ViewModel.ClassId),extModel.ClassId },
{nameof(RB_Student_TempInvitation_ViewModel.CourseId),extModel.CourseId }, {nameof(RB_Student_TempInvitation_ViewModel.CourseId),extModel.CourseId },
{nameof(RB_Student_TempInvitation_ViewModel.ClassPlanId),extModel.ClassPlanId }, {nameof(RB_Student_TempInvitation_ViewModel.ClassTimeIds),extModel.ClassTimeIds },
{nameof(RB_Student_TempInvitation_ViewModel.ClassTimeId),extModel.ClassTimeId },
{nameof(RB_Student_TempInvitation_ViewModel.TeacherId),extModel.TeacherId }, {nameof(RB_Student_TempInvitation_ViewModel.TeacherId),extModel.TeacherId },
{nameof(RB_Student_TempInvitation_ViewModel.School_Id),extModel.School_Id}, {nameof(RB_Student_TempInvitation_ViewModel.School_Id),extModel.School_Id},
{nameof(RB_Student_TempInvitation_ViewModel.UpdateBy),extModel.UpdateBy }, {nameof(RB_Student_TempInvitation_ViewModel.UpdateBy),extModel.UpdateBy },
......
...@@ -48,6 +48,10 @@ WHERE 1=1 ...@@ -48,6 +48,10 @@ WHERE 1=1
{ {
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.School_Id), query.School_Id); builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.School_Id), query.School_Id);
} }
if (!string.IsNullOrEmpty(query.QClassPlanIds))
{
builder.AppendFormat(" AND A.{0} IN({1}) ", nameof(RB_Class_Plan_ViewModel.ClassPlanId), query.QClassPlanIds);
}
if (!string.IsNullOrEmpty(query.QClassIds)) if (!string.IsNullOrEmpty(query.QClassIds))
{ {
builder.AppendFormat(" AND A.{0} IN({1}) ", nameof(RB_Class_Plan_ViewModel.ClassId), query.QClassIds); builder.AppendFormat(" AND A.{0} IN({1}) ", nameof(RB_Class_Plan_ViewModel.ClassId), query.QClassIds);
......
...@@ -39,6 +39,10 @@ WHERE 1=1 ...@@ -39,6 +39,10 @@ WHERE 1=1
{ {
builder.AppendFormat(" AND {0} IN({1}) ", nameof(RB_Class_Time_ViewModel.ClassPlanId), query.QClassPlanIds); builder.AppendFormat(" AND {0} IN({1}) ", nameof(RB_Class_Time_ViewModel.ClassPlanId), query.QClassPlanIds);
} }
if (!string.IsNullOrEmpty(query.QClassTimeIds))
{
builder.AppendFormat(" AND {0} IN({1}) ", nameof(RB_Class_Time_ViewModel.ClassTimeId), query.QClassTimeIds);
}
if (query.ClassId > 0) if (query.ClassId > 0)
{ {
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Class_Time_ViewModel.ClassId), query.ClassId); builder.AppendFormat(" AND {0}={1} ", nameof(RB_Class_Time_ViewModel.ClassId), query.ClassId);
......
...@@ -466,7 +466,7 @@ WHERE 1=1 and A.Status=0 and class.Status=0 and b.OrderState<>3 and a.Guest ...@@ -466,7 +466,7 @@ WHERE 1=1 and A.Status=0 and class.Status=0 and b.OrderState<>3 and a.Guest
{ {
where += $@" and A.{nameof(RB_Order_Guest_ViewModel.Group_Id)} ={demodel.Group_Id}"; where += $@" and A.{nameof(RB_Order_Guest_ViewModel.Group_Id)} ={demodel.Group_Id}";
} }
if (demodel.Id > 0) if (demodel.Id > 0)
{ {
where += $@" and A.{nameof(RB_Order_Guest_ViewModel.Id)} ={demodel.Id}"; where += $@" and A.{nameof(RB_Order_Guest_ViewModel.Id)} ={demodel.Id}";
...@@ -510,5 +510,74 @@ WHERE {where}"; ...@@ -510,5 +510,74 @@ WHERE {where}";
return Get<RB_Order_Guest_ViewModel>(sql).ToList(); return Get<RB_Order_Guest_ViewModel>(sql).ToList();
} }
#region 临时上课邀请学生查询
/// <summary>
/// 获取列表
/// </summary>
/// <param name="demodel"></param>
/// <param name="orderIds"></param>
/// <returns></returns>
public List<RB_Order_Guest_ViewModel> GetTempInvitationGuest(Model.ViewModel.EduTask.RB_Temporary_Invitation_ViewModel demodel)
{
string where = $@" 1=1 and A.Status=0 and ti.Status=0 AND (B.IsChaBan=0 OR (B.IsChaBan=1 AND B.EffectStatus IN(1) ))";
if (demodel.Group_Id > 0)
{
where += $@" and A.{nameof(Model.ViewModel.EduTask.RB_Temporary_Invitation_ViewModel.Group_Id)} ={demodel.Group_Id}";
}
if (demodel.ClassId > 0)
{
where += $@" and ti.{nameof(Model.ViewModel.EduTask.RB_Temporary_Invitation_ViewModel.ClassId)} ={demodel.ClassId}";
}
if (demodel.School_Id > 0)
{
where += $@" and Ati.{nameof(Model.ViewModel.EduTask.RB_Temporary_Invitation_ViewModel.School_Id)} ={demodel.School_Id}";
}
if (demodel.CourseId > 0)
{
where += $@" and ti.{nameof(Model.ViewModel.EduTask.RB_Temporary_Invitation_ViewModel.CourseId)} ={demodel.CourseId}";
}
if (demodel.ClassTimeId > 0)
{
where += $@" and ti.{nameof(Model.ViewModel.EduTask.RB_Temporary_Invitation_ViewModel.ClassTimeId)} ={demodel.ClassTimeId}";
}
//if (!string.IsNullOrEmpty(demodel.OrderIds))
//{
// where += $@" and A.{nameof(RB_Order_Guest_ViewModel.OrderId)} in({demodel.OrderIds})";
//}
if (!string.IsNullOrEmpty(demodel.ClassIds))
{
where += $@" and ti.{nameof(Model.ViewModel.EduTask.RB_Temporary_Invitation_ViewModel.ClassId)} in({demodel.ClassIds})";
}
if (!string.IsNullOrEmpty(demodel.ClassTimeIds))
{
where += $@" and ti.{nameof(Model.ViewModel.EduTask.RB_Temporary_Invitation_ViewModel.ClassTimeId)} in({demodel.ClassTimeIds})";
}
if (!string.IsNullOrEmpty(demodel.ClassPlanIds))
{
where += $@" and ti.{nameof(Model.ViewModel.EduTask.RB_Temporary_Invitation_ViewModel.ClassPlanId)} in({demodel.ClassPlanIds})";
}
//if (!string.IsNullOrEmpty(demodel.GuestName))
//{
// where += $@" and A.{nameof(RB_Order_Guest_ViewModel.GuestName)} like '%{demodel.GuestName}%'";
//}
//if (demodel.GuestState > 0)
//{
// where += $@" and A.{nameof(RB_Order_Guest_ViewModel.GuestState)} ={demodel.GuestState}";
//}
string sql = $@"
SELECT A.Id,A.ContactMobile,a.GuestName,a.GuestState,a.Sex,a.Mobile,a.TotalHours,a.CompleteHours,a.MakeUpHours,a.ChangeEffectTime,a.ValidClassHours,ti.ClassId,IFNULL(B.IsChaBan,0) AS IsChaBan,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,ti.ClassTimeId,ti.ClassPlanId
FROM RB_Order_Guest AS A
INNER JOIN rb_temporary_invitation as ti on ti.OrderGuestId=a.Id
LEFT JOIN rb_order AS B ON A.OrderId=B.OrderId
LEFT JOIN rb_course AS C ON (B.CourseId=C.CourseId AND B.CourseId>0 AND B.OrderType=1)
WHERE {where}";
return Get<RB_Order_Guest_ViewModel>(sql).ToList();
}
#endregion
} }
} }
...@@ -435,5 +435,27 @@ WHERE 1=1 ...@@ -435,5 +435,27 @@ WHERE 1=1
} }
return result; return result;
} }
/// <summary>
/// 获取教务单据列表
/// </summary>
/// <param name="RelationIds"></param>
/// <returns></returns>
public List<RB_Education_Receipt_ViewModel> GetEducationReceiptList(string RelationIds)
{
var parameters = new DynamicParameters();
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@" SELECT A.* FROM RB_Education_Receipt AS A WHERE 1=1 ");
if (!string.IsNullOrEmpty(RelationIds))
{
builder.AppendFormat(@" AND A.{0} IN ({1}) ", nameof(RB_Education_Receipt_ViewModel.RelationId), RelationIds);
}
builder.AppendFormat(" ORDER BY A.{0} DESC ", nameof(RB_Education_Receipt_ViewModel.Id));
return Get<RB_Education_Receipt_ViewModel>(builder.ToString(), parameters).ToList();
}
} }
} }
...@@ -3,7 +3,9 @@ using System.Collections.Generic; ...@@ -3,7 +3,9 @@ using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using Edu.Model.Entity.EduTask; using Edu.Model.Entity.EduTask;
using Edu.Model.ViewModel.Course;
using Edu.Model.ViewModel.EduTask; using Edu.Model.ViewModel.EduTask;
using VT.FW.DB;
namespace Edu.Repository.EduTask namespace Edu.Repository.EduTask
{ {
...@@ -16,7 +18,27 @@ namespace Edu.Repository.EduTask ...@@ -16,7 +18,27 @@ namespace Edu.Repository.EduTask
/// 教务单据仓储层对象 /// 教务单据仓储层对象
/// </summary> /// </summary>
private readonly RB_Education_ReceiptRepository education_ReceiptRepository = new RB_Education_ReceiptRepository(); private readonly RB_Education_ReceiptRepository education_ReceiptRepository = new RB_Education_ReceiptRepository();
/// <summary>
/// 临时上课邀请记录
/// </summary>
private readonly RB_Temporary_InvitationRepository temporaryInvitationRepository = new RB_Temporary_InvitationRepository();
/// <summary>
/// 订单学员仓储层对象
/// </summary>
private readonly Course.RB_Order_GuestRepository order_GuestRepository = new Course.RB_Order_GuestRepository();
/// <summary>
/// 班级上课计划仓储层对象
/// </summary>
private readonly Course.RB_Class_PlanRepository class_PlanRepository = new Course.RB_Class_PlanRepository();
/// <summary>
/// 班级上课计划上课时间仓储层对象
/// </summary>
private readonly Course.RB_Class_TimeRepository class_TimeRepository = new Course.RB_Class_TimeRepository();
/// <summary> /// <summary>
/// 获取临时上课邀请申请列表 /// 获取临时上课邀请申请列表
...@@ -40,5 +62,94 @@ WHERE 1=1 ...@@ -40,5 +62,94 @@ WHERE 1=1
} }
return Get<RB_Student_TempInvitation_ViewModel>(builder.ToString()).ToList(); return Get<RB_Student_TempInvitation_ViewModel>(builder.ToString()).ToList();
} }
/// <summary>
/// 审核通过后更新临时上课记录表
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
public bool UpdateStundetTempInvitation(object Id)
{
//查询当前调课信息
bool flag = false;
var receiptModel = education_ReceiptRepository.GetEntity(Id);
if (receiptModel == null || receiptModel.Id == 0)
{
return false;
}
if (receiptModel.ReceiptType != Common.Enum.Finance.ReceiptTypeEnum.InvitationClass)
{
return false;
}
var model = GetEntity(receiptModel.RelationId);
if (model == null || model.Id == 0)
{
return false;
}
else //更新学生的信息
{
//学生信息
List<RB_Order_Guest_ViewModel> orderGuestList = new List<RB_Order_Guest_ViewModel>();
//班级上课计划列表
List<RB_Class_Plan_ViewModel> planList = new List<RB_Class_Plan_ViewModel>();
//班级上课时间列表
List<RB_Class_Time_ViewModel> timeList = new List<RB_Class_Time_ViewModel>();
string orderGuestIds = model.OrderGuestIds;
if (!string.IsNullOrWhiteSpace(orderGuestIds))
{
orderGuestList = order_GuestRepository.GetStopingStudentPage(new RB_Order_Guest_ViewModel
{
OrderGuestIds = orderGuestIds
});
}
string classTimeIds = model.ClassTimeIds;
if (!string.IsNullOrWhiteSpace(classTimeIds))
{
timeList = class_TimeRepository.GetClassTimeListRepository(new RB_Class_Time_ViewModel { QClassTimeIds = classTimeIds });
if (timeList != null && timeList.Any())
{
string classPlanIds = string.Join(",", timeList.Select(x => x.ClassPlanId));
if (!string.IsNullOrWhiteSpace(classPlanIds))
{
planList = class_PlanRepository.GetClassPlanListRepository(new RB_Class_Plan_ViewModel { QClassPlanIds = classPlanIds });
}
}
}
List<RB_Temporary_Invitation> tempInvitationList = new List<RB_Temporary_Invitation>();
foreach (var item in timeList)
{
foreach (var itemGuest in orderGuestList)
{
RB_Temporary_Invitation invitationModel = new RB_Temporary_Invitation()
{
Id = 0,
ClassId = model.ClassId,
Group_Id = model.Group_Id,
School_Id = model.School_Id,
CourseId = model.CourseId,
ClassPlanId = item.ClassPlanId,
ClassTimeId = item.ClassTimeId,
OrderGuestId = itemGuest.Id,
CreateBy = model.CreateBy,
CreateTime = DateTime.Now
};
tempInvitationList.Add(invitationModel);
}
}
if (tempInvitationList!=null&& tempInvitationList.Any())
{
flag = temporaryInvitationRepository.InsertBatch(tempInvitationList);
}
}
return flag;
}
} }
} }
...@@ -12,6 +12,40 @@ namespace Edu.Repository.EduTask ...@@ -12,6 +12,40 @@ namespace Edu.Repository.EduTask
/// </summary> /// </summary>
public class RB_Temporary_InvitationRepository : BaseRepository<RB_Temporary_Invitation> public class RB_Temporary_InvitationRepository : BaseRepository<RB_Temporary_Invitation>
{ {
/// <summary>
/// 获取班级上课学生列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Temporary_Invitation> GetTemporaryInvitationListRepository(RB_Temporary_Invitation query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@" SELECT * FROM RB_Temporary_Invitation WHERE 1=1 ");
if (query != null)
{
if (query.ClassPlanId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Temporary_Invitation.ClassPlanId), query.ClassPlanId);
}
if (query.ClassTimeId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Temporary_Invitation.ClassTimeId), query.ClassTimeId);
}
if (query.ClassId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Temporary_Invitation.ClassId), query.ClassId);
}
if (query.Group_Id > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Temporary_Invitation.Group_Id), query.Group_Id);
}
//if (query.School_Id > 0)
//{
// builder.AppendFormat(" AND {0}={1} ", nameof(RB_Temporary_Invitation.School_Id), query.School_Id);
//}
}
return Get<RB_Temporary_Invitation>(builder.ToString()).ToList();
}
} }
} }
...@@ -768,6 +768,10 @@ namespace Edu.WebApi.Controllers.Course ...@@ -768,6 +768,10 @@ namespace Edu.WebApi.Controllers.Course
EndDate = data.ClassDate.ToString("yyyy-MM-dd HH:mm:ss"), EndDate = data.ClassDate.ToString("yyyy-MM-dd HH:mm:ss"),
ClassTimeId = ClassTimeId, ClassTimeId = ClassTimeId,
}); });
//临时上课邀请学员查询
var tempGuestList = classModule.GetTempInvitationGuest(new Model.ViewModel.EduTask.RB_Temporary_Invitation_ViewModel { Group_Id = base.UserInfo.Group_Id, School_Id = 0, ClassId = data.ClassId, ClassTimeId = ClassTimeId });
List<object> guestList = new List<object>(); List<object> guestList = new List<object>();
foreach (var item in orderGuestList.Where(x => x.GuestState == 1 || x.GuestState == 6 || ((x.GuestState == 5 || x.GuestState == 7) && x.ChangeEffectTime.HasValue && Convert.ToDateTime(Common.ConvertHelper.FormatDate(x.ChangeEffectTime)) >= data.ClassDate))) foreach (var item in orderGuestList.Where(x => x.GuestState == 1 || x.GuestState == 6 || ((x.GuestState == 5 || x.GuestState == 7) && x.ChangeEffectTime.HasValue && Convert.ToDateTime(Common.ConvertHelper.FormatDate(x.ChangeEffectTime)) >= data.ClassDate)))
{ {
...@@ -794,10 +798,42 @@ namespace Edu.WebApi.Controllers.Course ...@@ -794,10 +798,42 @@ namespace Edu.WebApi.Controllers.Course
EffectTime = Common.ConvertHelper.FormatDate(item.EffectTime), EffectTime = Common.ConvertHelper.FormatDate(item.EffectTime),
item.UpOrderId, item.UpOrderId,
IsCheck = (checkLogList != null && checkLogList.Any()) ? checkLogList.Where(x => x.OrderGuestId == item.Id).FirstOrDefault()?.CheckStatus ?? -1 : -1, IsCheck = (checkLogList != null && checkLogList.Any()) ? checkLogList.Where(x => x.OrderGuestId == item.Id).FirstOrDefault()?.CheckStatus ?? -1 : -1,
StudyNum = (checkLogList != null && checkLogList.Any()) ? checkLogList.Where(x => x.OrderGuestId == item.Id).FirstOrDefault()?.StudyNum ?? 0 : 0 StudyNum = (checkLogList != null && checkLogList.Any()) ? checkLogList.Where(x => x.OrderGuestId == item.Id).FirstOrDefault()?.StudyNum ?? 0 : 0,
IsTemp=0,
});
}
}
foreach (var item in tempGuestList.Where(x => x.GuestState == 1 || x.GuestState == 6 || ((x.GuestState == 5 || x.GuestState == 7) && x.ChangeEffectTime.HasValue && Convert.ToDateTime(Common.ConvertHelper.FormatDate(x.ChangeEffectTime)) >= data.ClassDate)))
{
if (item.IsChaBan == 0 || (item.IsChaBan == 1 && data.ClassDate >= Convert.ToDateTime(Common.ConvertHelper.FormatDate(item.EffectTime))))
{
guestList.Add(new
{
UserIcon = "",
item.Id,
SexStr = item.Sex == 1 ? "男" : "女",
item.GuestName,
item.Age,
CreateTimeStr = Common.ConvertHelper.FormatTime(item.CreateTime),
item.Mobile,
item.OrderId,
item.CourseName,
item.CourseId,
item.TotalHours,
item.CompleteHours,
item.StartClassHours,
item.IsChaBan,
item.EffectStatus,
item.EffectStatusStr,
EffectTime = Common.ConvertHelper.FormatDate(item.EffectTime),
item.UpOrderId,
IsCheck = (checkLogList != null && checkLogList.Any()) ? checkLogList.Where(x => x.OrderGuestId == item.Id).FirstOrDefault()?.CheckStatus ?? -1 : -1,
StudyNum = (checkLogList != null && checkLogList.Any()) ? checkLogList.Where(x => x.OrderGuestId == item.Id).FirstOrDefault()?.StudyNum ?? 0 : 0,
IsTemp = 1,
}); });
} }
} }
var classMinutes = classModule.GetClassMinutesModule(classId); var classMinutes = classModule.GetClassMinutesModule(classId);
return ApiResult.Success(data: new return ApiResult.Success(data: new
{ {
......
...@@ -500,8 +500,19 @@ namespace Edu.WebApi.Controllers.Course ...@@ -500,8 +500,19 @@ namespace Edu.WebApi.Controllers.Course
var orderGuestList = classModule.GetOrderGuestListModule(new RB_Order_Guest_ViewModel { Group_Id = base.UserInfo.Group_Id, School_Id = 0, ClassId = classModel.ClassId }); var orderGuestList = classModule.GetOrderGuestListModule(new RB_Order_Guest_ViewModel { Group_Id = base.UserInfo.Group_Id, School_Id = 0, ClassId = classModel.ClassId });
var checkLogList = classModule.GetClassCheckList(new RB_Class_Check_ViewModel { Group_Id = base.UserInfo.Group_Id, School_Id = -1, ClassId = classModel.ClassId, StartDate = timeModel.NewPlanDateTime, EndDate = timeModel.NewPlanDateTime });
foreach (var item in orderGuestList.Where(x => x.GuestState == 1 || x.GuestState == 6 || ((x.GuestState == 5||x.GuestState==7) && x.ChangeEffectTime.HasValue && Convert.ToDateTime(Common.ConvertHelper.FormatDate(x.ChangeEffectTime)) >= Convert.ToDateTime(Common.ConvertHelper.FormatDate(timeModel.NewPlanDateTime))))) var tempOrderGuestList = classModule.GetTempInvitationGuest(new Model.ViewModel.EduTask.RB_Temporary_Invitation_ViewModel {ClassTimeId=ID ,ClassId=classModel.ClassId});
var allOrderGuestList = new List<RB_Order_Guest_ViewModel>();
allOrderGuestList.AddRange(orderGuestList.Where(x => x.GuestState == 1 || x.GuestState == 6 || ((x.GuestState == 5 || x.GuestState == 7) && x.ChangeEffectTime.HasValue && Convert.ToDateTime(Common.ConvertHelper.FormatDate(x.ChangeEffectTime)) >= Convert.ToDateTime(Common.ConvertHelper.FormatDate(timeModel.NewPlanDateTime)))));
var checkLogList = classModule.GetClassCheckList(new RB_Class_Check_ViewModel { ClassTimeId = ID, Group_Id = base.UserInfo.Group_Id, School_Id = -1, ClassId = classModel.ClassId });
if (tempOrderGuestList != null&& tempOrderGuestList.Any())
{
allOrderGuestList.AddRange(tempOrderGuestList.Where(x => x.GuestState == 1 || x.GuestState == 6 || ((x.GuestState == 5 || x.GuestState == 7) &&x.ClassTimeId==ID&&x.ClassId==classModel.ClassId && x.ChangeEffectTime.HasValue && Convert.ToDateTime(Common.ConvertHelper.FormatDate(x.ChangeEffectTime)) >= Convert.ToDateTime(Common.ConvertHelper.FormatDate(timeModel.NewPlanDateTime)))));
}
foreach (var item in allOrderGuestList)
{ {
item.IsCheck = (checkLogList != null && checkLogList.Any()) ? checkLogList.Where(y => y.OrderGuestId == item.Id).FirstOrDefault()?.CheckStatus ?? 2 : 2; item.IsCheck = (checkLogList != null && checkLogList.Any()) ? checkLogList.Where(y => y.OrderGuestId == item.Id).FirstOrDefault()?.CheckStatus ?? 2 : 2;
} }
...@@ -515,7 +526,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -515,7 +526,7 @@ namespace Edu.WebApi.Controllers.Course
ActualTime,//实际时间 ActualTime,//实际时间
AttendanceNum = (checkLogList != null && checkLogList.Any()) ? checkLogList.Where(x => x.CheckStatus == 0).Count() : 0,///出勤人数 AttendanceNum = (checkLogList != null && checkLogList.Any()) ? checkLogList.Where(x => x.CheckStatus == 0).Count() : 0,///出勤人数
timeModel.ClassStatus,//上课状态 timeModel.ClassStatus,//上课状态
GuestList = orderGuestList.OrderBy(x => x.IsCheck).Select(x => new GuestList = allOrderGuestList.OrderBy(x => x.IsCheck).Select(x => new
{ {
x.GuestName, x.GuestName,
x.Mobile, x.Mobile,
......
...@@ -33,6 +33,12 @@ namespace Edu.WebApi.Controllers.EduTask ...@@ -33,6 +33,12 @@ namespace Edu.WebApi.Controllers.EduTask
/// 班级处理类对象 /// 班级处理类对象
/// </summary> /// </summary>
private readonly ClassModule classModule = AOP.AOPHelper.CreateAOPObject<ClassModule>(); private readonly ClassModule classModule = AOP.AOPHelper.CreateAOPObject<ClassModule>();
///<summary>
/// 班级处理类对象
/// </summary>
private readonly EducationReceiptModule educationReceiptModule = AOP.AOPHelper.CreateAOPObject<EducationReceiptModule>();
/// <summary> /// <summary>
/// 新增修改班级调课 /// 新增修改班级调课
/// </summary> /// </summary>
...@@ -44,8 +50,7 @@ namespace Edu.WebApi.Controllers.EduTask ...@@ -44,8 +50,7 @@ namespace Edu.WebApi.Controllers.EduTask
{ {
Id = base.ParmJObj.GetInt("Id"), Id = base.ParmJObj.GetInt("Id"),
ClassId = base.ParmJObj.GetInt("ClassId"), ClassId = base.ParmJObj.GetInt("ClassId"),
ClassTimeId = base.ParmJObj.GetInt("ClassTimeId"), ClassTimeIds = base.ParmJObj.GetStringValue("ClassTimeIds"),
ClassPlanId = base.ParmJObj.GetInt("ClassPlanId"),
OrderGuestIds = base.ParmJObj.GetStringValue("OrderGuestIds"), OrderGuestIds = base.ParmJObj.GetStringValue("OrderGuestIds"),
Remarks = base.ParmJObj.GetStringValue("Remarks") Remarks = base.ParmJObj.GetStringValue("Remarks")
}; };
...@@ -59,10 +64,38 @@ namespace Edu.WebApi.Controllers.EduTask ...@@ -59,10 +64,38 @@ namespace Edu.WebApi.Controllers.EduTask
return ApiResult.Failed("请选择您要邀请上课的班级"); return ApiResult.Failed("请选择您要邀请上课的班级");
} }
if (model.ClassPlanId == 0 || model.ClassTimeId == 0) if (string.IsNullOrWhiteSpace(model.ClassTimeIds))
{ {
return ApiResult.Failed("请选择您要邀请的时间"); return ApiResult.Failed("请选择您要邀请的时间");
} }
//判断之前是否有申请过,没有才添加
var studentTempIvvitationList = tempInvitationClassModule.GetTemporaryInvitationListRepository(new RB_Student_TempInvitation_ViewModel { ClassId = model.ClassId });
if (studentTempIvvitationList != null && studentTempIvvitationList.Any())
{
var timeList = model.ClassTimeIds.Split(",");
var orderGuestList = model.OrderGuestIds.Split(",");
var receiptList = educationReceiptModule.GetEducationReceiptList(string.Join(",", studentTempIvvitationList.Select(x => x.Id)));
foreach (var item in studentTempIvvitationList)
{
var receiptModel = receiptList.Where(x => x.RelationId == item.Id).FirstOrDefault();
var tempTimeList = item.ClassTimeIds.Split(",");
var tempOrderGuestList = item.OrderGuestIds.Split(",");
if (tempTimeList.Intersect(timeList).Count() > 0)
{
if (tempOrderGuestList.Intersect(orderGuestList).Count() > 0)
{
if (receiptModel != null && receiptModel.Id > 0 && (receiptModel.VerifyStatus == Common.Enum.EduTask.EduTaskRrocessStatus.AuditIng || receiptModel.VerifyStatus == Common.Enum.EduTask.EduTaskRrocessStatus.AuditThrough || receiptModel.VerifyStatus == Common.Enum.EduTask.EduTaskRrocessStatus.NotAudit || receiptModel.VerifyStatus == Common.Enum.EduTask.EduTaskRrocessStatus.OtherHaveAudit))
{
return ApiResult.Failed("学员不能重复邀请");
}
}
}
}
}
var classModel = classModule.GetClassModule(model.ClassId); var classModel = classModule.GetClassModule(model.ClassId);
model.CourseId = classModel.CouseId; model.CourseId = classModel.CouseId;
model.TeacherId = classModel.Teacher_Id; model.TeacherId = classModel.Teacher_Id;
......
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