Commit 6028e5d4 authored by 吴春's avatar 吴春

Merge branch 'master' of http://gitlab.oytour.com/Kui2/education

parents f509fac7 99008da7
......@@ -41,15 +41,26 @@ namespace Edu.Common.Enum.Course
public enum ClassStatusEnum
{
/// <summary>
/// 未开班
/// </summary>
[EnumField("未开班")]
NonOpenClass =1,
/// <学习中>
/// 开课中
/// </summary>
[EnumField("开课中")]
OpenClass =1,
[EnumField("学习中")]
StudyIng =2,
/// <summary>
/// 结课
/// </summary>
[EnumField("结课")]
EndClass = 3,
/// <summary>
/// 节课
/// 取消
/// </summary>
[EnumField("节课")]
CloseClass = 2,
[EnumField("取消")]
CancelClass = 4,
}
}
......@@ -136,5 +136,20 @@ namespace Edu.Model.Entity.Course
/// 班级状态
/// </summary>
public ClassStatusEnum ClassStatus { get; set; }
/// <summary>
/// 对内备注
/// </summary>
public string InnerRemark { get; set; }
/// <summary>
/// 对外备注
/// </summary>
public string OutRemark { get; set; }
/// <summary>
/// 完成进度
/// </summary>
public string CompleteProgress { get; set; }
}
}
......@@ -35,5 +35,15 @@ namespace Edu.Model.Entity.Course
/// 教室编号
/// </summary>
public int ClassRoomId { get; set; }
/// <summary>
/// 集团编号
/// </summary>
public int Group_Id { get; set; }
/// <summary>
/// 学校编号
/// </summary>
public int School_Id { get; set; }
}
}
\ No newline at end of file
......@@ -20,7 +20,7 @@ namespace Edu.Model.Entity.Course
/// <summary>
/// 人数
/// </summary>
public int? PersionNum { get; set; }
public int PersionNum { get; set; }
/// <summary>
/// 价格
......@@ -31,5 +31,15 @@ namespace Edu.Model.Entity.Course
/// 课程编号
/// </summary>
public int ClassId { get; set; }
/// <summary>
/// 集团编号
/// </summary>
public int Group_Id { get; set; }
/// <summary>
/// 学校编号
/// </summary>
public int School_Id { get; set; }
}
}
......@@ -15,6 +15,11 @@ namespace Edu.Model.Entity.Course
/// </summary>
public int ClassTimeId { get; set; }
/// <summary>
/// 班级编号
/// </summary>
public int ClassId { get; set; }
/// <summary>
/// 上课计划编号
/// </summary>
......@@ -29,5 +34,15 @@ namespace Edu.Model.Entity.Course
/// 上课结束时间
/// </summary>
public string EndTime { get; set; }
/// <summary>
/// 集团编号
/// </summary>
public int Group_Id { get; set; }
/// <summary>
/// 学校编号
/// </summary>
public int School_Id { get; set; }
}
}
using Edu.Model.Entity.Course;
using System.Collections.Generic;
namespace Edu.Model.ViewModel.Course
{
......@@ -11,5 +12,10 @@ namespace Edu.Model.ViewModel.Course
/// 班级编号【查询使用,逗号分隔】
/// </summary>
public string QClassIds { get; set; }
/// <summary>
///班级计划上课日期的上课时间表
/// </summary>
public List<RB_Class_Time_ViewModel> PlanTimeList { get; set; }
}
}
......@@ -11,5 +11,10 @@ namespace Edu.Model.ViewModel.Course
/// 计划编号【查询使用,逗号分隔】
/// </summary>
public string QClassPlanIds { get; set; }
/// <summary>
/// 班级编号【查询使用,逗号分隔】
/// </summary>
public string QClassIds { get; set; }
}
}
\ No newline at end of file
......@@ -55,18 +55,23 @@ namespace Edu.Model.ViewModel.Course
public string TeacherHead { get; set; }
/// <summary>
/// 学员数量
/// 报名学员数量
/// </summary>
public int StudentCount { get; set; }
public int OrderStudentCount { get; set; }
/// <summary>
/// 作业数量
/// 学习名称
/// </summary>
public int JobCount { get; set; }
public string SchoolName { get; set; }
/// <summary>
/// 班级阶梯价列表
/// </summary>
public List<RB_Class_StepPrice_ViewModel> ClassStepPriceList { get; set; }
/// <summary>
/// 班级上课计划列表
/// </summary>
public List<RB_Class_Plan_ViewModel> ClassPlanList { get; set; }
}
}
\ No newline at end of file
......@@ -2,6 +2,7 @@
using Edu.Model.ViewModel.Course;
using Edu.Repository.Course;
using System.Collections.Generic;
using System.Linq;
using VT.FW.DB;
namespace Edu.Module.Course
......@@ -16,6 +17,21 @@ namespace Edu.Module.Course
/// </summary>
private readonly RB_ClassRepository classRepository = new RB_ClassRepository();
/// <summary>
/// 班级上课计划仓储层对象
/// </summary>
private readonly RB_Class_PlanRepository class_PlanRepository = new RB_Class_PlanRepository();
/// <summary>
/// 班级上课计划上课时间仓储层对象
/// </summary>
private readonly RB_Class_TimeRepository class_TimeRepository = new RB_Class_TimeRepository();
/// <summary>
/// 班级价格仓储层对象
/// </summary>
private readonly RB_Class_StepPriceRepository class_StepPriceRepository = new RB_Class_StepPriceRepository();
/// <summary>
/// 获取班级列表
/// </summary>
......@@ -36,7 +52,8 @@ namespace Edu.Module.Course
/// <returns></returns>
public List<RB_Class_ViewModel> GetClassPageListModule(int pageIndex, int pageSize, out long rowsCount, RB_Class_ViewModel query)
{
return classRepository.GetClassPageListRepository(pageIndex, pageSize, out rowsCount, query);
var list= classRepository.GetClassPageListRepository(pageIndex, pageSize, out rowsCount, query);
return list;
}
/// <summary>
......@@ -88,6 +105,9 @@ namespace Edu.Module.Course
{ nameof(RB_Class_ViewModel.ClassHours),model.ClassHours},
{ nameof(RB_Class_ViewModel.ClassStyle),model.ClassStyle},
{ nameof(RB_Class_ViewModel.ClassStatus),model.ClassStatus},
{ nameof(RB_Class_ViewModel.InnerRemark),model.InnerRemark},
{ nameof(RB_Class_ViewModel.OutRemark),model.OutRemark},
{ nameof(RB_Class_ViewModel.CompleteProgress),model.CompleteProgress},
};
flag= classRepository.Update(fileds, new WhereHelper(nameof(RB_Class_ViewModel.ClassId), model.ClassId));
}
......@@ -97,7 +117,44 @@ namespace Edu.Module.Course
model.ClassId = newId;
flag =newId > 0;
}
//删除班级计划
class_PlanRepository.DeleteClassPlanRepository(model.ClassId);
class_TimeRepository.DeleteClassTimeRepository(model.ClassId);
if (model.ClassPlanList != null && model.ClassPlanList.Count > 0)
{
foreach (var item in model.ClassPlanList)
{
item.ClassId = model.ClassId;
item.ClassPlanId = 0;
item.Group_Id = model.Group_Id;
item.School_Id = model.School_Id;
//添加班级上课计划
var newClassPlanId = class_PlanRepository.Insert(item);
if (item.PlanTimeList != null && item.PlanTimeList.Count > 0)
{
foreach (var subItem in item.PlanTimeList)
{
subItem.ClassTimeId = 0;
subItem.ClassId = model.ClassId;
subItem.ClassPlanId = newClassPlanId;
subItem.Group_Id = model.Group_Id;
subItem.School_Id = model.School_Id;
//添加班级上课计划的上课时间
class_TimeRepository.Insert(subItem);
}
}
}
}
class_StepPriceRepository.DeleteClassStepPriceRepository(model.ClassId);
if (model.ClassStepPriceList != null && model.ClassStepPriceList.Count > 0)
{
foreach (var item in model.ClassStepPriceList)
{
item.ClassStepPriceId = 0;
item.ClassId = model.ClassId;
class_StepPriceRepository.Insert(item);
}
}
return flag;
}
......@@ -108,7 +165,24 @@ namespace Edu.Module.Course
/// <returns></returns>
public RB_Class_ViewModel GetClassModule(object ClassId)
{
return classRepository.GetEntity<RB_Class_ViewModel>(ClassId);
var extModel= classRepository.GetEntity<RB_Class_ViewModel>(ClassId);
if (extModel != null && extModel.ClassId>0)
{
//课程梯度价格
extModel.ClassStepPriceList = class_StepPriceRepository.GetClassStepPriceListRepository(new RB_Class_StepPrice_ViewModel() { ClassId = extModel.ClassId })?.ToList() ?? new List<RB_Class_StepPrice_ViewModel>();
//课程计划上课日期
extModel.ClassPlanList = class_PlanRepository.GetClassPlanListRepository(new RB_Class_Plan_ViewModel() { ClassId = extModel.ClassId })?.ToList() ?? new List<RB_Class_Plan_ViewModel>();
//班级上课计划时间列表
var timeList = class_TimeRepository.GetClassTimeListRepository(new RB_Class_Time_ViewModel() { ClassId = extModel.ClassId })?.ToList() ?? new List<RB_Class_Time_ViewModel>();
if (extModel.ClassPlanList != null && extModel.ClassPlanList.Count > 0 && timeList != null && timeList.Count > 0)
{
foreach (var item in extModel.ClassPlanList)
{
item.PlanTimeList = timeList?.Where(qitem => qitem.ClassPlanId == item.ClassPlanId)?.ToList() ?? new List<RB_Class_Time_ViewModel>();
}
}
}
return extModel;
}
/// <summary>
......
......@@ -241,7 +241,7 @@ namespace Edu.Module.User
NoticeStateName = model.NoticeState.ToName(),
model.Is_Top,
model.UpdateBy,
UpdateTime = model.UpdateTime.HasValue ? model.UpdateTime.Value.ToString("yyyy-MM-dd") : ""
UpdateTime = model.UpdateTime.HasValue ? model.UpdateTime.Value.ToString("yyyy年MM月dd日") : ""
});
}
......
......@@ -51,17 +51,31 @@ WHERE 1=1
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.*,B.CourseName,C.AssistName,IFNULL(C.AssistIcon,'') AS AssistIcon,D.TeacherName,IFNULL(D.TeacherHead,'') AS TeacherHead
,E.SName AS SchoolName
FROM rb_class AS A LEFT JOIN rb_course AS B ON A.CouseId=B.CourseId
LEFT JOIN rb_assist AS C ON A.Assist_Id=C.AId
LEFT JOIN rb_teacher AS D ON A.Teacher_Id=D.TId
LEFT JOIN rb_school AS E ON A.School_Id=E.SId
WHERE 1=1
");
if (query != null)
{
if (query.Group_Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_ViewModel.Group_Id),query.Group_Id);
}
if (query.School_Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_ViewModel.School_Id), query.School_Id);
}
if (query.Status >=0 )
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_ViewModel.Status), (int)query.Status);
}
if (query.ClassStatus > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_ViewModel.ClassStatus), (int)query.ClassStatus);
}
if (!string.IsNullOrWhiteSpace(query.ClassName))
{
builder.AppendFormat(" AND A.{0} LIKE @ClassName ", nameof(RB_Class_ViewModel.ClassName));
......@@ -85,6 +99,5 @@ WHERE 1=1
}
return GetPage<RB_Class_ViewModel>(pageIndex,pageSize,out rowsCount,builder.ToString(),parameters).ToList();
}
}
}
......@@ -37,5 +37,15 @@ WHERE 1=1
}
return Get<RB_Class_Plan_ViewModel>(builder.ToString()).ToList();
}
/// <summary>
/// 根据班级编号删除班级上课计划
/// </summary>
/// <param name="ClassId"></param>
/// <returns></returns>
public bool DeleteClassPlanRepository(int ClassId)
{
return base.DeleteOne(new VT.FW.DB.WhereHelper(nameof(RB_Class_Plan_ViewModel.ClassId), ClassId));
}
}
}
......@@ -39,5 +39,15 @@ WHERE 1=1
}
return Get<RB_Class_StepPrice_ViewModel>(builder.ToString()).ToList();
}
/// <summary>
/// 根据班级编号删除班级阶梯价格
/// </summary>
/// <param name="ClassId">班级编号</param>
/// <returns></returns>
public bool DeleteClassStepPriceRepository(int ClassId)
{
return base.DeleteOne(new VT.FW.DB.WhereHelper(nameof(RB_Class_StepPrice_ViewModel.ClassId), ClassId));
}
}
}
......@@ -10,7 +10,7 @@ namespace Edu.Repository.Course
/// <summary>
/// 班级上课时间仓储层
/// </summary>
public class RB_Class_TimeRepository:BaseRepository<RB_Class_Time>
public class RB_Class_TimeRepository : BaseRepository<RB_Class_Time>
{
/// <summary>
/// 获取班级上课时间列表
......@@ -35,8 +35,26 @@ WHERE 1=1
{
builder.AppendFormat(" AND {0} IN({1}) ", nameof(RB_Class_Time_ViewModel.ClassPlanId), query.QClassPlanIds);
}
if (query.ClassId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Class_Time_ViewModel.ClassId), query.ClassId);
}
if (!string.IsNullOrEmpty(query.QClassIds))
{
builder.AppendFormat(" AND {0} IN({1}) ", nameof(RB_Class_Time_ViewModel.ClassId), query.QClassIds);
}
}
return Get<RB_Class_Time_ViewModel>(builder.ToString()).ToList();
}
/// <summary>
/// 根据班级编号删除班级上课时间
/// </summary>
/// <param name="ClassId">班级编号</param>
/// <returns></returns>
public bool DeleteClassTimeRepository(int ClassId)
{
return base.DeleteOne(new VT.FW.DB.WhereHelper(nameof(RB_Class_Time_ViewModel.ClassId), ClassId));
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using Edu.Cache.User;
using Edu.Common.API;
using Edu.Common.Enum.Course;
using Edu.Common.Plugin;
using Edu.Model.ViewModel.Course;
using Edu.Module.Course;
......@@ -19,7 +22,7 @@ namespace Edu.WebApi.Controllers.Course
/// <summary>
/// 班级处理类对象
/// </summary>
private readonly ClassModule classModule = new ClassModule();
private readonly ClassModule classModule = AOP.AOPHelper.CreateAOPObject<ClassModule>();
#region 班级管理
/// <summary>
......@@ -30,9 +33,17 @@ namespace Edu.WebApi.Controllers.Course
public ApiResult GetClassPageList()
{
var pageModel = Common.Plugin.JsonHelper.DeserializeObject<ResultPageModel>(RequestParm.Msg.ToString());
var query = Common.Plugin.JsonHelper.DeserializeObject<RB_Class_ViewModel>(RequestParm.Msg.ToString());
var query = new RB_Class_ViewModel()
{
ClassName=base.ParmJObj.GetStringValue("ClassName"),
ClassStatus=(ClassStatusEnum)base.ParmJObj.GetInt("ClassStatus"),
Teacher_Id=base.ParmJObj.GetInt("Teacher_Id"),
CouseId=base.ParmJObj.GetInt("CouseId"),
School_Id=base.ParmJObj.GetInt("School_Id")
};
query.Group_Id = base.UserInfo.Group_Id;
query.School_Id = base.UserInfo.School_Id;
//query.School_Id = base.UserInfo.School_Id;
List<object> result = new List<object>();
var list = classModule.GetClassPageListModule(pageModel.PageIndex, pageModel.PageSize, out long rowsCount, query);
foreach (var item in list)
{
......@@ -44,9 +55,22 @@ namespace Edu.WebApi.Controllers.Course
{
item.UpdateByName = UserReidsCache.GetUserLoginInfo(item.UpdateBy)?.AccountName ?? "";
}
result.Add(new
{
item.ClassId,
item.ClassName,
item.SchoolName,
item.CourseName,
item.TeacherName,
item.ClassPersion,
item.OrderStudentCount,
OpenTime= Common.ConvertHelper.FormatDate(item.OpenTime),
item.CompleteProgress,
ClassStatusStr=item.ClassStatus.ToName(),
});
}
pageModel.Count = rowsCount;
pageModel.PageData = list;
pageModel.PageData = result;
return ApiResult.Success(data: pageModel);
}
......
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