Commit 12d721e2 authored by 黄奎's avatar 黄奎

新增统计

parent 64d4ce23
using System;
using System.Collections.Generic;
using System.Text;
namespace Edu.Model.ViewModel.Course
{
/// <summary>
/// 教师班级统计
/// </summary>
public class TeacherClassStatic_ViewModel
{
/// <summary>
/// 教师编号
/// </summary>
public int Teacher_Id { get; set; }
/// <summary>
/// 带班数量
/// </summary>
public int ClassCount { get; set; }
}
}
...@@ -4,8 +4,10 @@ using Edu.Common.Enum; ...@@ -4,8 +4,10 @@ using Edu.Common.Enum;
using Edu.Common.Enum.User; using Edu.Common.Enum.User;
using Edu.Common.Plugin; using Edu.Common.Plugin;
using Edu.Model.CacheModel; using Edu.Model.CacheModel;
using Edu.Model.ViewModel.Course;
using Edu.Model.ViewModel.User; using Edu.Model.ViewModel.User;
using Edu.Module.Log; using Edu.Module.Log;
using Edu.Repository.Course;
using Edu.Repository.User; using Edu.Repository.User;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
...@@ -44,6 +46,11 @@ namespace Edu.Module.User ...@@ -44,6 +46,11 @@ namespace Edu.Module.User
/// </summary> /// </summary>
private readonly UserChangeLogModule userChangeLogModule = new UserChangeLogModule(); private readonly UserChangeLogModule userChangeLogModule = new UserChangeLogModule();
/// <summary>
/// 班级仓储层对象
/// </summary>
private readonly RB_ClassRepository classRepository = new RB_ClassRepository();
/// <summary> /// <summary>
/// 获取讲师列表 /// 获取讲师列表
/// </summary> /// </summary>
...@@ -70,8 +77,10 @@ namespace Edu.Module.User ...@@ -70,8 +77,10 @@ namespace Edu.Module.User
{ {
string postIds = string.Join(",", list.Where(qitem => qitem.Post_Id > 0).Select(qitem => qitem.Post_Id)); string postIds = string.Join(",", list.Where(qitem => qitem.Post_Id > 0).Select(qitem => qitem.Post_Id));
string deptIds = string.Join(",", list.Where(qitem => qitem.Dept_Id > 0).Select(qitem => qitem.Dept_Id)); string deptIds = string.Join(",", list.Where(qitem => qitem.Dept_Id > 0).Select(qitem => qitem.Dept_Id));
string ids = string.Join(",", list.Where(qitem => qitem.TId > 0).Select(qitem => qitem.TId));
List<RB_Post_ViewModel> postList = new List<RB_Post_ViewModel>(); List<RB_Post_ViewModel> postList = new List<RB_Post_ViewModel>();
List<RB_Department_ViewModel> deptList = new List<RB_Department_ViewModel>(); List<RB_Department_ViewModel> deptList = new List<RB_Department_ViewModel>();
List<TeacherClassStatic_ViewModel> teacherClassList = new List<TeacherClassStatic_ViewModel>();
if (!string.IsNullOrEmpty(postIds)) if (!string.IsNullOrEmpty(postIds))
{ {
postList = postRepository.GetPostListRepository(new RB_Post_ViewModel() { QPostIds = postIds }); postList = postRepository.GetPostListRepository(new RB_Post_ViewModel() { QPostIds = postIds });
...@@ -80,10 +89,15 @@ namespace Edu.Module.User ...@@ -80,10 +89,15 @@ namespace Edu.Module.User
{ {
deptList = departmentRepository.GetDepartmentListRepository(new RB_Department_ViewModel() { QDeptIds = deptIds }); deptList = departmentRepository.GetDepartmentListRepository(new RB_Department_ViewModel() { QDeptIds = deptIds });
} }
if (!string.IsNullOrEmpty(ids))
{
teacherClassList=classRepository.GetTeacherClassCountRepository(ids);
}
foreach (var item in list) foreach (var item in list)
{ {
item.DeptName = deptList?.Where(qitem => qitem.DeptId == item.Dept_Id)?.FirstOrDefault()?.DeptName ?? ""; item.DeptName = deptList?.Where(qitem => qitem.DeptId == item.Dept_Id)?.FirstOrDefault()?.DeptName ?? "";
item.PostName = postList?.Where(qitem => qitem.PostId == item.Post_Id)?.FirstOrDefault()?.PostName ?? ""; item.PostName = postList?.Where(qitem => qitem.PostId == item.Post_Id)?.FirstOrDefault()?.PostName ?? "";
item.CourseCount = teacherClassList?.Where(qitem => qitem.Teacher_Id == item.TId)?.FirstOrDefault()?.ClassCount ?? 0;
} }
} }
return list; return list;
......
...@@ -312,5 +312,22 @@ WHERE c.`Status`=0 and c.Group_Id ={GroupId} and c.ClassStatus =3 and c.EndClass ...@@ -312,5 +312,22 @@ WHERE c.`Status`=0 and c.Group_Id ={GroupId} and c.ClassStatus =3 and c.EndClass
return Get<RB_Class_ViewModel>(sql).ToList(); return Get<RB_Class_ViewModel>(sql).ToList();
} }
/// <summary>
/// 统计教师带班数量
/// </summary>
/// <param name="teacherIds"></param>
/// <returns></returns>
public List<TeacherClassStatic_ViewModel> GetTeacherClassCountRepository(string teacherIds)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT Teacher_Id,COUNT(1) AS ClassCount
FROM rb_class
WHERE status=0 AND ClassStatus<>4 AND Teacher_Id IN({0})
GROUP BY Teacher_Id
",teacherIds);
return Get<TeacherClassStatic_ViewModel>(builder.ToString()).ToList();
}
} }
} }
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