Commit 39e248db authored by 黄奎's avatar 黄奎

新增实体类

parent 4ecc2726
using Edu.Common.Plugin;
using System;
using System.Collections.Generic;
using System.Text;
namespace Edu.Common.Enum.Finance
{
/// <summary>
/// 单据类型
/// </summary>
public enum ReceiptTypeEnum
{
/// <summary>
/// 调课
/// </summary>
[EnumField("调课")]
ChangeClass = 1,
}
}
using System;
using System.Collections.Generic;
using System.Text;
namespace Edu.Model.Entity.EduTask
{
/// <summary>
/// 上课计划调整实体类
/// </summary>
public class RB_Change_ClassPlan
{
/// <summary>
/// 主键(调课编号)
/// </summary>
public int Id { get; set; }
/// <summary>
/// 班级编号
/// </summary>
public int ClassId { get; set; }
/// <summary>
/// 课程编号
/// </summary>
public int CourseId { get; set; }
/// <summary>
/// 调动类型(1-课程,2-老师,3-教室)
/// </summary>
public int ChangeType { get; set; }
/// <summary>
/// 调动选项(1-固定日期,2-全局调整)
/// </summary>
public int MoveType { get; set; }
/// <summary>
/// 集团编号
/// </summary>
public int Group_Id { get; set; }
/// <summary>
/// 学校编号
/// </summary>
public int School_Id { get; set; }
/// <summary>
/// 创建人
/// </summary>
public int CreateBy { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime CreateTime { get; set; }
/// <summary>
/// 修改人
/// </summary>
public int UpdateBy { get; set; }
/// <summary>
/// 更新时间
/// </summary>
public DateTime UpdateTime { get; set; }
/// <summary>
/// 原数据
/// </summary>
public string SourceData { get; set; }
/// <summary>
/// 目标数据
/// </summary>
public string TargetData { get; set; }
}
}
using Edu.Common.Enum.Finance;
using System;
using System.Collections.Generic;
using System.Text;
using VT.FW.DB;
namespace Edu.Model.Entity.EduTask
{
/// <summary>
/// 教务单据实体类
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Education_Receipt
{
/// <summary>
/// 主键(教务单据编号)
/// </summary>
public int Id { get; set; }
/// <summary>
/// 单据标题
/// </summary>
public string Title { get; set; }
/// <summary>
/// 单据类型
/// </summary>
public ReceiptTypeEnum ReceiptType { get; set; }
/// <summary>
/// 关联编号(根据单据类型匹配)
/// </summary>
public int RelationId { get; set; }
/// <summary>
/// 集团编号
/// </summary>
public int Group_Id { get; set; }
/// <summary>
/// 学校编号
/// </summary>
public int School_Id { get; set; }
/// <summary>
/// 创建人
/// </summary>
public int CreateBy { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime CreateTime { get; set; }
/// <summary>
/// 修改人
/// </summary>
public int UpdateBy { get; set; }
/// <summary>
/// 更新时间
/// </summary>
public DateTime UpdateTime { get; set; }
/// <summary>
/// 审核状态(见枚举)
/// </summary>
public WFRrocessStatus VerifyStatus { get; set; }
}
}
......@@ -226,6 +226,10 @@ namespace Edu.Model.ViewModel.Course
/// </summary>
public int UsePlanNum { get; set; }
/// <summary>
/// 是否查询剩余的上课计划
/// </summary>
public int IsQuerySurplusPlan { get; set; }
}
/// <summary>
......
using System;
using System.Collections.Generic;
using System.Text;
namespace Edu.Model.ViewModel.EduTask
{
/// <summary>
/// 教务单据查询实体类
/// </summary>
public class EducationReceiptQuery
{
/// <summary>
/// 主键(教务单据编号)
/// </summary>
public string QIds { get; set; }
/// <summary>
/// 单据标题
/// </summary>
public string Title { get; set; }
/// <summary>
/// 单据类型
/// </summary>
public int ReceiptType { get; set; }
/// <summary>
/// 集团编号
/// </summary>
public int Group_Id { get; set; }
/// <summary>
/// 学校编号
/// </summary>
public int School_Id { get; set; }
/// <summary>
/// 创建人
/// </summary>
public int CreateBy { get; set; }
/// <summary>
/// 审核状态(见枚举)
/// </summary>
public int VerifyStatus { get; set; }
/// <summary>
/// 开始时间
/// </summary>
public string StartTime { get; set; }
/// <summary>
/// 结束时间
/// </summary>
public string EndTime { get; set; }
}
}
using Edu.Model.Entity.EduTask;
using System;
using System.Collections.Generic;
using System.Text;
namespace Edu.Model.ViewModel.EduTask
{
/// <summary>
/// 上课计划调整视图实体类
/// </summary>
public class RB_Change_ClassPlan_ViewModel : RB_Change_ClassPlan
{
}
public class ChangePlanItem
{
/// <summary>
/// 上课计划编号
/// </summary>
public int ClassPlanId { get; set; }
/// <summary>
/// 上课时间
/// </summary>
public DateTime ClassDate { get; set; }
/// <summary>
/// 老师编号
/// </summary>
public int TeacherId { get; set; }
/// <summary>
/// 教室编号
/// </summary>
public int ClassRoomId { get; set; }
}
}
using Edu.Model.Entity.EduTask;
using System;
using System.Collections.Generic;
using System.Text;
namespace Edu.Model.ViewModel.EduTask
{
/// <summary>
/// 教务单据视图实体类
/// </summary>
public class RB_Education_Receipt_ViewModel : RB_Education_Receipt
{
}
}
......@@ -150,7 +150,45 @@ namespace Edu.Module.Course
/// <returns></returns>
public List<RB_Class_ViewModel> GetClassListModule(RB_Class_ViewModel query)
{
return classRepository.GetClassListRepository(query);
var list= classRepository.GetClassListRepository(query);
if (list != null && list.Count > 0)
{
string classIds = string.Join(",", list.Select(qitem => qitem.ClassId));
List<RB_Class_Plan_ViewModel> planList = new List<RB_Class_Plan_ViewModel>();
List<RB_Class_Time_ViewModel> timeList = new List<RB_Class_Time_ViewModel>();
//查询剩余的上课计划
if (query.IsQuerySurplusPlan == 1)
{
planList = class_PlanRepository.GetClassPlanListRepository(new RB_Class_Plan_ViewModel()
{
QClassIds = classIds,
StartTime = Common.ConvertHelper.FormatDate(DateTime.Now)
});
}
if (planList != null && planList.Count > 0)
{
string planIds = string.Join(",", planList.Select(qitem => qitem.ClassPlanId));
timeList = class_TimeRepository.GetClassTimeListRepository(new RB_Class_Time_ViewModel()
{
QClassIds = classIds,
QClassPlanIds = planIds,
});
}
foreach (var item in list)
{
var tempPlanList = planList?.Where(qitem => qitem.ClassId == item.ClassId)?.OrderBy(qitem => qitem.ClassDate)?.ToList();
if (tempPlanList != null && tempPlanList.Count > 0)
{
foreach (var sItem in tempPlanList)
{
sItem.PlanTimeList=timeList?.Where(qitem => qitem.ClassId == item.ClassId && qitem.ClassPlanId == sItem.ClassPlanId)?.OrderBy(qitem => qitem.StartTime)?.ToList()??new List<RB_Class_Time_ViewModel> ();
}
}
item.ClassPlanList = tempPlanList ?? new List<RB_Class_Plan_ViewModel>();
}
}
return list;
}
/// <summary>
......
using Edu.Model.ViewModel.EduTask;
using Edu.Repository.EduTask;
using System;
using System.Collections.Generic;
using System.Text;
using VT.FW.DB;
namespace Edu.Module.EduTask
{
/// <summary>
/// 调课计划处理类
/// </summary>
public class ChangeClassPlanModule
{
/// <summary>
/// 调课计划仓储层对象
/// </summary>
private readonly RB_Change_ClassPlanRepository change_ClassPlanRepository = new RB_Change_ClassPlanRepository();
/// <summary>
/// 获取调课计划列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Change_ClassPlan_ViewModel> GetChangeClassPlanListModule(RB_Change_ClassPlan_ViewModel query)
{
return change_ClassPlanRepository.GetChangeClassPlanListRepository(query);
}
/// <summary>
/// 新增修改调课计划
/// </summary>
/// <returns></returns>
public bool SetChangeClassPlanModule(RB_Change_ClassPlan_ViewModel extModel)
{
bool flag = false;
if (extModel.Id > 0)
{
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{nameof(RB_Change_ClassPlan_ViewModel.ChangeType),extModel.ChangeType },
{nameof(RB_Change_ClassPlan_ViewModel.MoveType),extModel.MoveType },
{nameof(RB_Change_ClassPlan_ViewModel.SourceData),extModel.SourceData },
{nameof(RB_Change_ClassPlan_ViewModel.TargetData),extModel.TargetData },
{nameof(RB_Change_ClassPlan_ViewModel.UpdateBy),extModel.UpdateBy },
{nameof(RB_Change_ClassPlan_ViewModel.UpdateTime),extModel.UpdateTime },
};
flag = change_ClassPlanRepository.Update(fileds, new WhereHelper(nameof(RB_Change_ClassPlan_ViewModel.Id), extModel.Id));
}
else
{
var newId = change_ClassPlanRepository.Insert(extModel);
extModel.Id = newId;
flag = newId > 0;
}
return flag;
}
}
}
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp3.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\Edu.Repository\Edu.Repository.csproj" />
</ItemGroup>
</Project>
using Edu.Model.ViewModel.EduTask;
using Edu.Repository.EduTask;
using System;
using System.Collections.Generic;
using System.Text;
namespace Edu.Module.EduTask
{
/// <summary>
/// 教务单据处理类
/// </summary>
public class EducationReceiptModule
{
/// <summary>
/// 教务单据仓储层
/// </summary>
private readonly RB_Education_ReceiptRepository education_ReceiptRepository = new RB_Education_ReceiptRepository();
/// <summary>
/// 获取教务单据分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public object GetEducationReceiptPageModule(int pageIndex, int pageSize, out long rowsCount, EducationReceiptQuery query)
{
var list = education_ReceiptRepository.GetEducationReceiptPageRepository(pageIndex, pageSize, out rowsCount, query);
return list;
}
}
}
\ No newline at end of file
......@@ -53,6 +53,10 @@ WHERE 1=1
{
builder.AppendFormat(" AND A.{0}>IFNULL(C.GuestNum,0) ",nameof(RB_Class_ViewModel.ClassPersion));
}
if (query.Teacher_Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_ViewModel.Teacher_Id), query.Teacher_Id);
}
}
return Get<RB_Class_ViewModel>(builder.ToString()).ToList();
}
......
using Edu.Model.Entity.EduTask;
using Edu.Model.ViewModel.EduTask;
using System;
using System.Collections.Generic;
using System.Text;
using System.Linq;
namespace Edu.Repository.EduTask
{
/// <summary>
/// 上课计划调整仓储层
/// </summary>
public class RB_Change_ClassPlanRepository : BaseRepository<RB_Change_ClassPlan>
{
/// <summary>
/// 获取调课计划列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Change_ClassPlan_ViewModel> GetChangeClassPlanListRepository(RB_Change_ClassPlan_ViewModel query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.*
FROM RB_Change_ClassPlan AS A
WHERE 1=1
");
if (query != null)
{
}
return Get<RB_Change_ClassPlan_ViewModel>(builder.ToString()).ToList();
}
}
}
using Edu.Model.Entity.EduTask;
using Edu.Model.ViewModel.EduTask;
using System;
using System.Collections.Generic;
using System.Text;
using System.Linq;
using VT.FW.DB.Dapper;
namespace Edu.Repository.EduTask
{
/// <summary>
/// 教务单据仓储层
/// </summary>
public class RB_Education_ReceiptRepository : BaseRepository<RB_Education_Receipt>
{
/// <summary>
/// 获取教务单据分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Education_Receipt_ViewModel> GetEducationReceiptPageRepository(int pageIndex, int pageSize, out long rowsCount, EducationReceiptQuery query)
{
var parameters = new DynamicParameters();
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.*
FROM RB_Education_Receipt
WHERE 1=1
");
if (query != null)
{
if (query.Group_Id > 0)
{
builder.AppendFormat(@" AND A.{0}={1} ", nameof(RB_Education_Receipt_ViewModel.Group_Id), query.Group_Id);
}
if (!string.IsNullOrEmpty(query.Title))
{
builder.AppendFormat(@" AND A.{0} LIKE @Title ", nameof(RB_Education_Receipt_ViewModel.Title));
parameters.Add("Title", "%" + query.Title.Trim() + "%");
}
}
return GetPage<RB_Education_Receipt_ViewModel>(pageIndex, pageSize, out rowsCount, builder.ToString(), parameters).ToList();
}
}
}
......@@ -126,30 +126,46 @@ namespace Edu.WebApi.Controllers.Course
{
CouseId = base.ParmJObj.GetInt("CourseId"),
IsQuerySurplus = base.ParmJObj.GetInt("IsQuerySurplus"),
Teacher_Id=base.ParmJObj.GetInt("Teacher_Id"),
IsQuerySurplusPlan=base.ParmJObj.GetInt("IsQuerySurplusPlan"),
};
query.Group_Id = base.UserInfo.Group_Id;
query.School_Id = base.UserInfo.School_Id;
var list = classModule.GetClassListModule(query);
if (list == null)
{
list = new List<RB_Class_ViewModel>();
}
if (IsAddDefault == 1)
List<object> result = new List<object>();
foreach (var item in list)
{
list.Insert(0, new RB_Class_ViewModel()
List<object> planList = new List<object>();
if (item.ClassPlanList != null && item.ClassPlanList.Count > 0)
{
ClassId = 0,
ClassName = "请选择"
});
foreach (var subItem in item.ClassPlanList)
{
var subObj = new
{
subItem.ClassPlanId,
ClassDate = Common.ConvertHelper.FormatDate(subItem.ClassDate),
subItem.ClassRoomId,
subItem.RoomName,
subItem.TeacherId,
subItem.TeacherName,
TimeList = subItem?.PlanTimeList?.Select(qitem => new { qitem.StartTime, qitem.EndTime, qitem.TimeHour })
};
planList.Add(subObj);
}
}
var obj = new
{
item.ClassId,
item.ClassName,
item.CouseId,
item.CourseName,
OpenTime = Common.ConvertHelper.FormatDate(item.OpenTime),
PlanList = planList
};
result.Add(obj);
}
return ApiResult.Success(data: list.Select(qitem => new
{
qitem.ClassId,
qitem.ClassName,
qitem.ClassHours,
qitem.CourseName,
OpenTime = Common.ConvertHelper.FormatDate(qitem.OpenTime)
}));
return ApiResult.Success(data: result);
}
/// <summary>
......
......@@ -62,7 +62,9 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Edu.Module.Web", "Edu.Modul
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Edu.Module.Duty", "Edu.Module.Duty\Edu.Module.Duty.csproj", "{3C354B2B-8706-49A6-A12A-5A64F28E7CDC}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Edu.Module.Advertising", "Edu.Module.Advertising\Edu.Module.Advertising.csproj", "{43408243-8E36-4F9E-84C0-998CE383EC53}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Edu.Module.Advertising", "Edu.Module.Advertising\Edu.Module.Advertising.csproj", "{43408243-8E36-4F9E-84C0-998CE383EC53}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Edu.Module.EduTask", "Edu.Module.EduTask\Edu.Module.EduTask.csproj", "{FEDB8D19-2C7E-4393-8D91-332256EC89CC}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
......@@ -154,6 +156,10 @@ Global
{43408243-8E36-4F9E-84C0-998CE383EC53}.Debug|Any CPU.Build.0 = Debug|Any CPU
{43408243-8E36-4F9E-84C0-998CE383EC53}.Release|Any CPU.ActiveCfg = Release|Any CPU
{43408243-8E36-4F9E-84C0-998CE383EC53}.Release|Any CPU.Build.0 = Release|Any CPU
{FEDB8D19-2C7E-4393-8D91-332256EC89CC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{FEDB8D19-2C7E-4393-8D91-332256EC89CC}.Debug|Any CPU.Build.0 = Debug|Any CPU
{FEDB8D19-2C7E-4393-8D91-332256EC89CC}.Release|Any CPU.ActiveCfg = Release|Any CPU
{FEDB8D19-2C7E-4393-8D91-332256EC89CC}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
......@@ -178,6 +184,7 @@ Global
{380ACD87-3D6C-474C-A0ED-A91BD8E26081} = {7AC0A4EC-3215-4FF2-96DC-DE8325ED6915}
{3C354B2B-8706-49A6-A12A-5A64F28E7CDC} = {7AC0A4EC-3215-4FF2-96DC-DE8325ED6915}
{43408243-8E36-4F9E-84C0-998CE383EC53} = {7AC0A4EC-3215-4FF2-96DC-DE8325ED6915}
{FEDB8D19-2C7E-4393-8D91-332256EC89CC} = {7AC0A4EC-3215-4FF2-96DC-DE8325ED6915}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {8763B446-FAB1-46BF-9743-F2628533241B}
......
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