Commit a0f2f35d authored by 黄奎's avatar 黄奎

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

parents 5365d0d3 45550da8
...@@ -42,10 +42,18 @@ namespace Edu.Model.Entity.Course ...@@ -42,10 +42,18 @@ namespace Edu.Model.Entity.Course
/// </summary> /// </summary>
public int Group_Id { get; set; } public int Group_Id { get; set; }
/// <summary>
/// 校区默认值
/// </summary>
private int defaultSId = -1;
/// <summary> /// <summary>
/// 学校编号 /// 学校编号
/// </summary> /// </summary>
public int School_Id { get; set; } public int School_Id {
get { return defaultSId; }
set { defaultSId = value; }
}
/// <summary> /// <summary>
/// 创建人 /// 创建人
......
...@@ -23,14 +23,14 @@ namespace Edu.Model.Entity.System ...@@ -23,14 +23,14 @@ namespace Edu.Model.Entity.System
/// <summary> /// <summary>
/// 节假日开始时间 /// 节假日开始时间
/// </summary> /// </summary>
public DateTime StartTime { get; set; } public DateTime? StartTime { get; set; }
/// <summary> /// <summary>
/// 节假日结束时间 /// 节假日结束时间
/// </summary> /// </summary>
public DateTime EndTime { get; set; } public DateTime? EndTime { get; set; }
/// <summary> /// <summary>
......
...@@ -3087,6 +3087,61 @@ namespace Edu.Module.Course ...@@ -3087,6 +3087,61 @@ namespace Edu.Module.Course
#region 教师-我的班级
/// <summary>
/// 获取班级分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <param name="isGetStepPrice">是否查询阶梯价格</param>
/// <returns></returns>
public List<RB_Class_ViewModel> GetTeacherClassPageList(int pageIndex, int pageSize, out long rowsCount, RB_Class_ViewModel query, bool isGetStepPrice = false)
{
var list = classRepository.GetClassPageListRepository(pageIndex, pageSize, out rowsCount, query);
if (list != null && list.Count > 0)
{
var classTimeList = new List<RB_Class_Time_ViewModel>();
// var classOrderList = new List<RB_Order_ViewModel>();
var stepPriceList = new List<RB_Class_StepPrice_ViewModel>();
var otherCourseList = new List<RB_Class_Course_Extend>();
var maxPlanDateList = new List<RB_Class_Plan_ViewModel>();
string ids = string.Join(",", list.Select(qitem => qitem.ClassId));
if (!string.IsNullOrEmpty(ids))
{
classTimeList = class_TimeRepository.GetClassTimeListRepository(ids);
// classOrderList = orderRepository.GetClassOrderPeopleNumRepository(ids);
otherCourseList = GetClassCourseListModule(new RB_Class_Course_Extend() { QClassIds = ids });
maxPlanDateList = class_PlanRepository.GetClassPlanMaxDataRepository(new RB_Class_Plan_ViewModel()
{
QClassIds = ids
});
}
if (isGetStepPrice)
{
stepPriceList = class_StepPriceRepository.GetClassStepPriceListRepository(new RB_Class_StepPrice_ViewModel() { QClassIds = ids })?.ToList() ?? new List<RB_Class_StepPrice_ViewModel>();
}
//课程计划上课日期
foreach (var item in list)
{
var finish = maxPlanDateList?.Where(qitem => qitem.ClassId == item.ClassId)?.FirstOrDefault()?.ClassDate;
item.FinishTimeStr = Common.ConvertHelper.FormatDate(finish);
item.NewPlanDateTime = classTimeList?.Where(qitem => qitem.ClassId == item.ClassId)?.FirstOrDefault()?.NewPlanDateTime;
if (isGetStepPrice)
{
item.ClassStepPriceList = stepPriceList?.Where(qitem => qitem.ClassId == item.ClassId)?.ToList() ?? new List<RB_Class_StepPrice_ViewModel>();
}
item.OtherCourseList = otherCourseList?.Where(qitem => qitem.ClassId == item.ClassId)?.ToList() ?? new List<RB_Class_Course_Extend>();
}
}
return list;
}
#endregion
#region 教师-学员管理 #region 教师-学员管理
/// <summary> /// <summary>
/// 获取分页列表 /// 获取分页列表
......
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using Edu.Common;
using Edu.Common.Enum.Finance; using Edu.Common.Enum.Finance;
using Edu.Common.Plugin; using Edu.Common.Plugin;
using Edu.Model.CacheModel; using Edu.Model.CacheModel;
...@@ -1281,12 +1282,52 @@ namespace Edu.Module.Finance ...@@ -1281,12 +1282,52 @@ namespace Edu.Module.Finance
{ {
string startTime = Year + "-" + month + "-01"; string startTime = Year + "-" + month + "-01";
string endTime = Convert.ToDateTime(Year + "-" + month + "-01").AddMonths(1).AddDays(-1).ToString("yyyy-MM-dd"); string endTime = Convert.ToDateTime(Year + "-" + month + "-01").AddMonths(1).AddDays(-1).ToString("yyyy-MM-dd");
#region 班级
#region 最新班级
List<int> ClassIdArr = new List<int>();
//首先根据签到表 查询出所有的班级 并分页 //首先根据签到表 查询出所有的班级 并分页
var list = class_CheckRepository.GetAllClassNowMonthStatistics(startTime, endTime, 0, "", branchitem.SId, GroupId); var list = class_CheckRepository.GetAllClassNowMonthStatistics(startTime, endTime, 0, "", branchitem.SId, GroupId);
if (list.Any()) if (list.Any())
{ {
string classIds = string.Join(",", list.Select(x => x.ClassId)); ClassIdArr.AddRange(list.Select(x => x.ClassId));
}
//查询时间范围内 除订单外 班级下其他订单 的其他收入 + 其他成本支出
string datebaseStr = Config.ReadConfigKey("EduDateBase");//教育数据库
var financeList = RB_FinanceRepository.GetListForReportClass(new RB_Finance_Extend() { RB_Group_Id = GroupId, RB_Branch_Id = branchitem.SId, TCID = -2, sAduitDate = Convert.ToDateTime(startTime), eAduitDate = Convert.ToDateTime(endTime), FinanceType = 2, OrderSource = OrderResourceEnum.Education }, datebaseStr);
if (financeList.Any())
{
ClassIdArr.AddRange(financeList.Select(x => x.TCID ?? 0));
}
string STime = Convert.ToDateTime(startTime).AddMonths(-1).ToString("yyyy-MM-dd");
string ETime = Convert.ToDateTime(endTime).AddMonths(-1).ToString("yyyy-MM-dd");
var teacherBonusList = teaching_BonusDetailRepository.GetTeacherBonusForDate(GroupId, branchitem.SId, "", STime, ETime);//查询所有班级需要发放
if (teacherBonusList.Any())
{
ClassIdArr.AddRange(teacherBonusList.Select(x => x.ClassId));
}
var meritsProfitList = teaching_PerfRepository.GetTeacherPerfForDate(GroupId, branchitem.SId, "", startTime, endTime);
if (meritsProfitList.Any())
{
ClassIdArr.AddRange(meritsProfitList.Select(x => x.ClassId));
}
var saleList = sell_Commission_DetailsRepository.GetSellCommissionForDate(GroupId, branchitem.SId, "", STime, ETime);
if (saleList.Any())
{
ClassIdArr.AddRange(saleList.Select(x => x.ClassId));
}
ClassIdArr = ClassIdArr.Distinct().ToList();
List<RB_Class_ViewModel> CAlllist = new List<RB_Class_ViewModel>();
if (ClassIdArr.Any())
{
//再次查询所有的班级
CAlllist = classRepository.GetClassListRepository(new RB_Class_ViewModel() { Group_Id = GroupId, Q_ClassIds = string.Join(",", ClassIdArr) });
}
if (CAlllist.Any())
{
string classIds = string.Join(",", CAlllist.Select(x => x.ClassId));
//查询时间范围内 所有班级的学生上课金额 //查询时间范围内 所有班级的学生上课金额
List<RB_Teaching_BonusDetail_ViewModel> StudentHoursList = new List<RB_Teaching_BonusDetail_ViewModel>(); List<RB_Teaching_BonusDetail_ViewModel> StudentHoursList = new List<RB_Teaching_BonusDetail_ViewModel>();
//根据学生签到表 查询 //根据学生签到表 查询
...@@ -1315,17 +1356,8 @@ namespace Edu.Module.Finance ...@@ -1315,17 +1356,8 @@ namespace Edu.Module.Finance
}); });
} }
} }
//查询时间范围内 所有班级的销售提成 , 老师课时费 , 老师绩效
string STime = Convert.ToDateTime(startTime).AddMonths(-1).ToString("yyyy-MM-dd");
string ETime = Convert.ToDateTime(endTime).AddMonths(-1).ToString("yyyy-MM-dd");
var teacherBonusList = teaching_BonusDetailRepository.GetTeacherBonusForDate(GroupId, classIds, STime, ETime);
var meritsProfitList = teaching_PerfRepository.GetTeacherPerfForDate(GroupId, classIds, startTime, endTime);
var saleList = sell_Commission_DetailsRepository.GetSellCommissionForDate(GroupId, classIds, STime, ETime);
//查询时间范围内 除订单外 班级下其他订单 的其他收入 + 其他成本支出 foreach (var item in CAlllist)
var financeList = RB_FinanceRepository.GetListForReport(new RB_Finance_Extend() { RB_Group_Id = GroupId, TCIDStr = classIds, sAduitDate = Convert.ToDateTime(startTime), eAduitDate = Convert.ToDateTime(endTime), FinanceType = 2, OrderSource = OrderResourceEnum.Education });
foreach (var item in list)
{ {
#region 学生课耗 #region 学生课耗
var slist = StudentHoursList.Where(x => x.ClassId == item.ClassId).ToList(); var slist = StudentHoursList.Where(x => x.ClassId == item.ClassId).ToList();
...@@ -1337,10 +1369,11 @@ namespace Edu.Module.Finance ...@@ -1337,10 +1369,11 @@ namespace Edu.Module.Finance
decimal SellMoney = saleList.Where(x => x.ClassId == item.ClassId).FirstOrDefault()?.CurrentPeriodMoney ?? 0;//销售提成 decimal SellMoney = saleList.Where(x => x.ClassId == item.ClassId).FirstOrDefault()?.CurrentPeriodMoney ?? 0;//销售提成
#endregion #endregion
#region 单据 #region 单据
decimal OtherIncome = financeList.Where(y => y.Type == WFTempLateClassEnum.IN && y.Is_Cashier == 1 && y.OrderID <= 0).Sum(x => x.Money ?? 0); var flist = financeList.Where(x => x.TCID == item.ClassId).ToList();
decimal Fee = financeList.Where(x => x.Type == WFTempLateClassEnum.IN && x.Is_Cashier == 1 && x.OrderID <= 0 && x.Fee > 0).GroupBy(x => new { x.FrID, x.Fee }).Sum(x => x.Key.Fee ?? 0); decimal OtherIncome = flist.Where(y => y.Type == WFTempLateClassEnum.IN && y.Is_Cashier == 1 && y.OrderID <= 0).Sum(x => x.Money ?? 0);
decimal Fee = flist.Where(x => x.Type == WFTempLateClassEnum.IN && x.Is_Cashier == 1 && x.OrderID <= 0 && x.Fee > 0).GroupBy(x => new { x.FrID, x.Fee }).Sum(x => x.Key.Fee ?? 0);
OtherIncome -= Fee; OtherIncome -= Fee;
decimal OtherCost = financeList.Where(y => y.Type == WFTempLateClassEnum.OUT && y.OrderID <= 0).Sum(x => x.Money ?? 0);//支出也要排除订单订单退款 decimal OtherCost = flist.Where(y => y.Type == WFTempLateClassEnum.OUT && y.OrderID <= 0).Sum(x => x.Money ?? 0);//支出也要排除订单订单退款
#endregion #endregion
UpdateClassReportDate(TotalReport, IncomeReport, OtherIncomeReport, BonusReport, PerfReport, SellReport, OtherCostReport, month, TStuMoney, BonusMoney, PerfMoney, SellMoney, OtherIncome, OtherCost); UpdateClassReportDate(TotalReport, IncomeReport, OtherIncomeReport, BonusReport, PerfReport, SellReport, OtherCostReport, month, TStuMoney, BonusMoney, PerfMoney, SellMoney, OtherIncome, OtherCost);
...@@ -1348,21 +1381,34 @@ namespace Edu.Module.Finance ...@@ -1348,21 +1381,34 @@ namespace Edu.Module.Finance
} }
#endregion #endregion
#region 留学 #region 最新留学
//查询留学的 //查询留学的
List<int> SourceIdArr = new List<int>();
var lxOrderList = orderRepository.GetListForReport(new RB_Order_ViewModel() { Group_Id = GroupId, School_Id = branchitem.SId, OrderType = Common.Enum.Sale.OrderTypeEnum.StudyabroadOrder, Q_OrderState = 1, ConfirmSTime = startTime, ConfirmETime = endTime }); var lxOrderList = orderRepository.GetListForReport(new RB_Order_ViewModel() { Group_Id = GroupId, School_Id = branchitem.SId, OrderType = Common.Enum.Sale.OrderTypeEnum.StudyabroadOrder, Q_OrderState = 1, ConfirmSTime = startTime, ConfirmETime = endTime });
List<RB_Finance_Extend> lxFinanceList = new List<RB_Finance_Extend>(); if (lxOrderList.Any())
{
SourceIdArr.AddRange(lxOrderList.Select(x => x.SourceId).Distinct());
}
//财务单据
var lxFinanceList = RB_FinanceRepository.GetListForReportClass(new RB_Finance_Extend() { RB_Group_Id = GroupId, RB_Branch_Id = branchitem.SId, TCID = -2, sAduitDate = Convert.ToDateTime(startTime), eAduitDate = Convert.ToDateTime(endTime), FinanceType = 2, OrderSource = OrderResourceEnum.EducationStudy }, datebaseStr);
if (lxFinanceList.Any())
{
SourceIdArr.AddRange(lxFinanceList.Select(x => x.TCID ?? 0));
}
List<RB_Order_Guest_ViewModel> lxGuestList = new List<RB_Order_Guest_ViewModel>();
List<Model.ViewModel.StudyAbroad.RB_StudyAbroad_ViewModel> saList = new List<Model.ViewModel.StudyAbroad.RB_StudyAbroad_ViewModel>(); List<Model.ViewModel.StudyAbroad.RB_StudyAbroad_ViewModel> saList = new List<Model.ViewModel.StudyAbroad.RB_StudyAbroad_ViewModel>();
if (SourceIdArr.Any())
{
if (lxOrderList.Any()) if (lxOrderList.Any())
{ {
string orderIds = string.Join(",", lxOrderList.Select(x => x.OrderId)); string orderIds = string.Join(",", lxOrderList.Select(x => x.OrderId));
//查询学生
lxGuestList = order_GuestRepository.GetOrderGuestListRepository(new RB_Order_Guest_ViewModel() { Group_Id = GroupId, OrderIds = orderIds });
}
string saIds = string.Join(",", lxOrderList.Select(x => x.SourceId).Distinct()); string saIds = string.Join(",", SourceIdArr.Distinct());
//查询留学产品 //查询留学产品
saList = studyAbroadRepository.GetStudyAbroadListExtRepository(new Model.ViewModel.StudyAbroad.RB_StudyAbroad_ViewModel() { Group_Id = GroupId, QIds = saIds }); saList = studyAbroadRepository.GetStudyAbroadListExtRepository(new Model.ViewModel.StudyAbroad.RB_StudyAbroad_ViewModel() { Group_Id = GroupId, QIds = saIds });
//查询班级下所有的财务单据
lxFinanceList = RB_FinanceRepository.GetListForReport(new RB_Finance_Extend() { RB_Group_Id = GroupId, TCIDStr = saIds, sAduitDate = Convert.ToDateTime(startTime), eAduitDate = Convert.ToDateTime(endTime), FinanceType = 2, OrderSource = OrderResourceEnum.EducationStudy });
} }
foreach (var item in saList) foreach (var item in saList)
...@@ -1372,9 +1418,9 @@ namespace Edu.Module.Finance ...@@ -1372,9 +1418,9 @@ namespace Edu.Module.Finance
decimal ShiShou = olist.Sum(item => item.Income - item.Refund + item.PlatformTax); decimal ShiShou = olist.Sum(item => item.Income - item.Refund + item.PlatformTax);
#endregion #endregion
#region 财务单据 #region 财务单据
var financeList = lxFinanceList.Where(x => x.TCID == item.Id).ToList(); var lxflist = lxFinanceList.Where(x => x.TCID == item.Id).ToList();
//排序订单单据 //排序订单单据
var cfinanceList = financeList.Where(x => x.OrderID == 0 && x.Type == WFTempLateClassEnum.IN).ToList(); var cfinanceList = lxflist.Where(x => x.OrderID == 0 && x.Type == WFTempLateClassEnum.IN).ToList();
decimal QTShouRu = cfinanceList.Where(y => y.Is_Cashier == 1).Sum(x => x.Money ?? 0); decimal QTShouRu = cfinanceList.Where(y => y.Is_Cashier == 1).Sum(x => x.Money ?? 0);
QTShouRu -= cfinanceList.Where(x => x.Is_Cashier == 1 && x.Fee > 0).GroupBy(x => new { x.FrID, x.Fee }).Sum(x => x.Key.Fee ?? 0); QTShouRu -= cfinanceList.Where(x => x.Is_Cashier == 1 && x.Fee > 0).GroupBy(x => new { x.FrID, x.Fee }).Sum(x => x.Key.Fee ?? 0);
//支出 //支出
...@@ -1382,7 +1428,7 @@ namespace Edu.Module.Finance ...@@ -1382,7 +1428,7 @@ namespace Edu.Module.Finance
decimal ClassFee = 0;//老师提成 -留学暂定 decimal ClassFee = 0;//老师提成 -留学暂定
decimal JiXiaoMoney = 0;//绩效提成 -留学暂定 decimal JiXiaoMoney = 0;//绩效提成 -留学暂定
var ofinanceList = financeList.Where(x => x.OrderID == 0 && x.Type == WFTempLateClassEnum.OUT).ToList();// 支出包括退款 var ofinanceList = lxflist.Where(x => x.OrderID == 0 && x.Type == WFTempLateClassEnum.OUT).ToList();
decimal QTZhiChu = ofinanceList.Sum(x => x.Money ?? 0); decimal QTZhiChu = ofinanceList.Sum(x => x.Money ?? 0);
#endregion #endregion
...@@ -1390,6 +1436,7 @@ namespace Edu.Module.Finance ...@@ -1390,6 +1436,7 @@ namespace Edu.Module.Finance
UpdateClassReportDate(TotalReport, IncomeReport, OtherIncomeReport, BonusReport, PerfReport, SellReport, OtherCostReport, month, ShiShou, ClassFee, JiXiaoMoney, TiCheng, QTShouRu, QTZhiChu); UpdateClassReportDate(TotalReport, IncomeReport, OtherIncomeReport, BonusReport, PerfReport, SellReport, OtherCostReport, month, ShiShou, ClassFee, JiXiaoMoney, TiCheng, QTShouRu, QTZhiChu);
} }
#endregion #endregion
} }
Console.WriteLine("班级OK"); Console.WriteLine("班级OK");
...@@ -4052,11 +4099,44 @@ namespace Edu.Module.Finance ...@@ -4052,11 +4099,44 @@ namespace Edu.Module.Finance
public object GetAllClassNowMonthStatistics(string startTime, string endTime, int classId, string classNo, int schoolId, UserInfo userInfo) public object GetAllClassNowMonthStatistics(string startTime, string endTime, int classId, string classNo, int schoolId, UserInfo userInfo)
{ {
List<object> RList = new List<object>(); List<object> RList = new List<object>();
List<int> ClassIdArr = new List<int>();
//首先根据签到表 查询出所有的班级 并分页 //首先根据签到表 查询出所有的班级 并分页
var list = class_CheckRepository.GetAllClassNowMonthStatistics(startTime, endTime, classId, classNo, schoolId, userInfo.Group_Id); var list = class_CheckRepository.GetAllClassNowMonthStatistics(startTime, endTime, classId, classNo, schoolId, userInfo.Group_Id);
if (list.Any()) if (list.Any()) {
ClassIdArr.AddRange(list.Select(x => x.ClassId));
}
//查询时间范围内 除订单外 班级下其他订单 的其他收入 + 其他成本支出
string datebaseStr = Config.ReadConfigKey("EduDateBase");//教育数据库
var financeList = RB_FinanceRepository.GetListForReportClass(new RB_Finance_Extend() { RB_Group_Id = userInfo.Group_Id, RB_Branch_Id = schoolId, TCID = -2, sAduitDate = Convert.ToDateTime(startTime), eAduitDate = Convert.ToDateTime(endTime), FinanceType = 2, OrderSource = OrderResourceEnum.Education }, datebaseStr);
if (financeList.Any()) {
ClassIdArr.AddRange(financeList.Select(x => x.TCID ?? 0));
}
string STime = Convert.ToDateTime(startTime).AddMonths(-1).ToString("yyyy-MM-dd");
string ETime = Convert.ToDateTime(endTime).AddMonths(-1).ToString("yyyy-MM-dd");
var teacherBonusList = teaching_BonusDetailRepository.GetTeacherBonusForDate(userInfo.Group_Id, schoolId, "", STime, ETime);//查询所有班级需要发放
if (teacherBonusList.Any()) {
ClassIdArr.AddRange(teacherBonusList.Select(x => x.ClassId));
}
var meritsProfitList = teaching_PerfRepository.GetTeacherPerfForDate(userInfo.Group_Id, schoolId, "", startTime, endTime);
if (meritsProfitList.Any()) {
ClassIdArr.AddRange(meritsProfitList.Select(x => x.ClassId));
}
var saleList = sell_Commission_DetailsRepository.GetSellCommissionForDate(userInfo.Group_Id, schoolId, "", STime, ETime);
if (saleList.Any()) {
ClassIdArr.AddRange(saleList.Select(x => x.ClassId));
}
ClassIdArr = ClassIdArr.Distinct().ToList();
List<RB_Class_ViewModel> CAlllist = new List<RB_Class_ViewModel>();
if (ClassIdArr.Any())
{
//再次查询所有的班级
CAlllist = classRepository.GetClassListRepository(new RB_Class_ViewModel() { Group_Id = userInfo.Group_Id, Q_ClassIds = string.Join(",", ClassIdArr) });
}
if (CAlllist.Any())
{ {
string classIds = string.Join(",", list.Select(x => x.ClassId)); string classIds = string.Join(",", CAlllist.Select(x => x.ClassId));
//查询时间范围内 所有班级的学生上课金额 //查询时间范围内 所有班级的学生上课金额
List<RB_Teaching_BonusDetail_ViewModel> StudentHoursList = new List<RB_Teaching_BonusDetail_ViewModel>(); List<RB_Teaching_BonusDetail_ViewModel> StudentHoursList = new List<RB_Teaching_BonusDetail_ViewModel>();
//根据学生签到表 查询 //根据学生签到表 查询
...@@ -4086,16 +4166,11 @@ namespace Edu.Module.Finance ...@@ -4086,16 +4166,11 @@ namespace Edu.Module.Finance
} }
} }
//查询时间范围内 所有班级的销售提成 , 老师课时费 , 老师绩效 //查询时间范围内 所有班级的销售提成 , 老师课时费 , 老师绩效
string STime = Convert.ToDateTime(startTime).AddMonths(-1).ToString("yyyy-MM-dd"); //var teacherBonusList = teaching_BonusDetailRepository.GetTeacherBonusForDate(userInfo.Group_Id, classIds, STime, ETime);
string ETime = Convert.ToDateTime(endTime).AddMonths(-1).ToString("yyyy-MM-dd"); //var meritsProfitList = teaching_PerfRepository.GetTeacherPerfForDate(userInfo.Group_Id, classIds, startTime, endTime);
var teacherBonusList = teaching_BonusDetailRepository.GetTeacherBonusForDate(userInfo.Group_Id, classIds, STime, ETime); //var saleList = sell_Commission_DetailsRepository.GetSellCommissionForDate(userInfo.Group_Id, classIds, STime, ETime);
var meritsProfitList = teaching_PerfRepository.GetTeacherPerfForDate(userInfo.Group_Id, classIds, startTime, endTime);
var saleList = sell_Commission_DetailsRepository.GetSellCommissionForDate(userInfo.Group_Id, classIds, STime, ETime);
//查询时间范围内 除订单外 班级下其他订单 的其他收入 + 其他成本支出 foreach (var item in CAlllist) {
var financeList = RB_FinanceRepository.GetListForReport(new RB_Finance_Extend() { RB_Group_Id = userInfo.Group_Id, TCIDStr = classIds, sAduitDate = Convert.ToDateTime(startTime), eAduitDate = Convert.ToDateTime(endTime), FinanceType = 2, OrderSource = OrderResourceEnum.Education });
foreach (var item in list) {
#region 学生课耗 #region 学生课耗
var slist = StudentHoursList.Where(x => x.ClassId == item.ClassId).ToList(); var slist = StudentHoursList.Where(x => x.ClassId == item.ClassId).ToList();
decimal TStuMoney = slist.Sum(x => x.Money);//上课总金额 decimal TStuMoney = slist.Sum(x => x.Money);//上课总金额
...@@ -4114,12 +4189,15 @@ namespace Edu.Module.Finance ...@@ -4114,12 +4189,15 @@ namespace Edu.Module.Finance
decimal SellMoney = saleList.Where(x => x.ClassId == item.ClassId).FirstOrDefault()?.CurrentPeriodMoney ?? 0;//销售提成 decimal SellMoney = saleList.Where(x => x.ClassId == item.ClassId).FirstOrDefault()?.CurrentPeriodMoney ?? 0;//销售提成
#endregion #endregion
#region 单据 #region 单据
decimal OtherIncome = financeList.Where(y => y.Type == WFTempLateClassEnum.IN && y.Is_Cashier == 1 && y.OrderID <= 0).Sum(x => x.Money ?? 0); var flist = financeList.Where(x => x.TCID == item.ClassId).ToList();
decimal Fee = financeList.Where(x => x.Type == WFTempLateClassEnum.IN && x.Is_Cashier == 1 && x.OrderID <= 0 && x.Fee > 0).GroupBy(x => new { x.FrID, x.Fee }).Sum(x => x.Key.Fee ?? 0); decimal OtherIncome = flist.Where(y => y.Type == WFTempLateClassEnum.IN && y.Is_Cashier == 1 && y.OrderID <= 0).Sum(x => x.Money ?? 0);
decimal Fee = flist.Where(x => x.Type == WFTempLateClassEnum.IN && x.Is_Cashier == 1 && x.OrderID <= 0 && x.Fee > 0).GroupBy(x => new { x.FrID, x.Fee }).Sum(x => x.Key.Fee ?? 0);
OtherIncome -= Fee; OtherIncome -= Fee;
decimal OtherCost = financeList.Where(y => y.Type == WFTempLateClassEnum.OUT && y.OrderID <= 0).Sum(x => x.Money ?? 0);//支出也要排除订单订单退款 decimal OtherCost = flist.Where(y => y.Type == WFTempLateClassEnum.OUT && y.OrderID <= 0).Sum(x => x.Money ?? 0);//支出也要排除订单订单退款
#endregion #endregion
decimal THoursNum = list.Where(x => x.ClassId == item.ClassId).FirstOrDefault()?.CurrentDeductionHours ?? 0;
object RModel = new object RModel = new
{ {
item.ClassId, item.ClassId,
...@@ -4127,7 +4205,7 @@ namespace Edu.Module.Finance ...@@ -4127,7 +4205,7 @@ namespace Edu.Module.Finance
OrderIds = "", OrderIds = "",
item.ClassName, item.ClassName,
ClassType = 1, ClassType = 1,
THoursNum = item.CurrentDeductionHours, THoursNum,
TStuNum, TStuNum,
TStuMoney, TStuMoney,
StuList, StuList,
...@@ -4141,22 +4219,33 @@ namespace Edu.Module.Finance ...@@ -4141,22 +4219,33 @@ namespace Edu.Module.Finance
} }
} }
//查询留学的 //查询留学的
var lxOrderList = orderRepository.GetListForReport(new RB_Order_ViewModel() { Group_Id = userInfo.Group_Id, OrderType = Common.Enum.Sale.OrderTypeEnum.StudyabroadOrder, Q_OrderState = 1, ConfirmSTime = startTime, ConfirmETime = endTime }); List<int> SourceIdArr = new List<int>();
List<RB_Finance_Extend> lxFinanceList = new List<RB_Finance_Extend>(); var lxOrderList = orderRepository.GetListForReport(new RB_Order_ViewModel() { Group_Id = userInfo.Group_Id, School_Id = schoolId, OrderType = Common.Enum.Sale.OrderTypeEnum.StudyabroadOrder, Q_OrderState = 1, ConfirmSTime = startTime, ConfirmETime = endTime });
if (lxOrderList.Any()) {
SourceIdArr.AddRange(lxOrderList.Select(x => x.SourceId).Distinct());
}
//财务单据
var lxFinanceList = RB_FinanceRepository.GetListForReportClass(new RB_Finance_Extend() { RB_Group_Id = userInfo.Group_Id, RB_Branch_Id = schoolId, TCID = -2, sAduitDate = Convert.ToDateTime(startTime), eAduitDate = Convert.ToDateTime(endTime), FinanceType = 2, OrderSource = OrderResourceEnum.EducationStudy }, datebaseStr);
if (lxFinanceList.Any())
{
SourceIdArr.AddRange(lxFinanceList.Select(x => x.TCID ?? 0));
}
List<RB_Order_Guest_ViewModel> lxGuestList = new List<RB_Order_Guest_ViewModel>(); List<RB_Order_Guest_ViewModel> lxGuestList = new List<RB_Order_Guest_ViewModel>();
List<Model.ViewModel.StudyAbroad.RB_StudyAbroad_ViewModel> saList = new List<Model.ViewModel.StudyAbroad.RB_StudyAbroad_ViewModel>(); List<Model.ViewModel.StudyAbroad.RB_StudyAbroad_ViewModel> saList = new List<Model.ViewModel.StudyAbroad.RB_StudyAbroad_ViewModel>();
if (SourceIdArr.Any())
{
if (lxOrderList.Any()) if (lxOrderList.Any())
{ {
string orderIds = string.Join(",", lxOrderList.Select(x => x.OrderId)); string orderIds = string.Join(",", lxOrderList.Select(x => x.OrderId));
//查询学生 //查询学生
lxGuestList = order_GuestRepository.GetOrderGuestListRepository(new RB_Order_Guest_ViewModel() { Group_Id = userInfo.Group_Id, OrderIds = orderIds }); lxGuestList = order_GuestRepository.GetOrderGuestListRepository(new RB_Order_Guest_ViewModel() { Group_Id = userInfo.Group_Id, OrderIds = orderIds });
}
string saIds = string.Join(",", lxOrderList.Select(x => x.SourceId).Distinct()); string saIds = string.Join(",", SourceIdArr.Distinct());
//查询留学产品 //查询留学产品
saList = studyAbroadRepository.GetStudyAbroadListExtRepository(new Model.ViewModel.StudyAbroad.RB_StudyAbroad_ViewModel() { Group_Id = userInfo.Group_Id, QIds = saIds }); saList = studyAbroadRepository.GetStudyAbroadListExtRepository(new Model.ViewModel.StudyAbroad.RB_StudyAbroad_ViewModel() { Group_Id = userInfo.Group_Id, QIds = saIds });
//查询班级下所有的财务单据
lxFinanceList = RB_FinanceRepository.GetListForReport(new RB_Finance_Extend() { RB_Group_Id = userInfo.Group_Id, TCIDStr = saIds, sAduitDate = Convert.ToDateTime(startTime), eAduitDate = Convert.ToDateTime(endTime), FinanceType = 2, OrderSource = OrderResourceEnum.EducationStudy });
} }
foreach (var item in saList) { foreach (var item in saList) {
...@@ -4171,9 +4260,9 @@ namespace Edu.Module.Finance ...@@ -4171,9 +4260,9 @@ namespace Edu.Module.Finance
}); });
#endregion #endregion
#region 财务单据 #region 财务单据
var financeList = lxFinanceList.Where(x => x.TCID == item.Id).ToList(); var lxflist = lxFinanceList.Where(x => x.TCID == item.Id).ToList();
//排序订单单据 //排序订单单据
var cfinanceList = financeList.Where(x => x.OrderID == 0 && x.Type == WFTempLateClassEnum.IN).ToList(); var cfinanceList = lxflist.Where(x => x.OrderID == 0 && x.Type == WFTempLateClassEnum.IN).ToList();
decimal QTShouRu = cfinanceList.Where(y => y.Is_Cashier == 1).Sum(x => x.Money ?? 0); decimal QTShouRu = cfinanceList.Where(y => y.Is_Cashier == 1).Sum(x => x.Money ?? 0);
QTShouRu -= cfinanceList.Where(x => x.Is_Cashier == 1 && x.Fee > 0).GroupBy(x => new { x.FrID, x.Fee }).Sum(x => x.Key.Fee ?? 0); QTShouRu -= cfinanceList.Where(x => x.Is_Cashier == 1 && x.Fee > 0).GroupBy(x => new { x.FrID, x.Fee }).Sum(x => x.Key.Fee ?? 0);
//支出 //支出
...@@ -4181,7 +4270,7 @@ namespace Edu.Module.Finance ...@@ -4181,7 +4270,7 @@ namespace Edu.Module.Finance
decimal ClassFee = 0;//老师提成 -留学暂定 decimal ClassFee = 0;//老师提成 -留学暂定
decimal JiXiaoMoney = 0;//绩效提成 -留学暂定 decimal JiXiaoMoney = 0;//绩效提成 -留学暂定
var ofinanceList = financeList.Where(x => x.OrderID == 0 && x.Type == WFTempLateClassEnum.OUT).ToList();// 支出包括退款 var ofinanceList = lxflist.Where(x => x.OrderID == 0 && x.Type == WFTempLateClassEnum.OUT).ToList();
decimal QTZhiChu = ofinanceList.Sum(x => x.Money ?? 0); decimal QTZhiChu = ofinanceList.Sum(x => x.Money ?? 0);
#endregion #endregion
......
...@@ -246,7 +246,7 @@ FROM rb_class_plan as a ...@@ -246,7 +246,7 @@ FROM rb_class_plan as a
LEFT JOIN rb_class c on a.ClassId = c.ClassId LEFT JOIN rb_class c on a.ClassId = c.ClassId
LEFT JOIN rb_teacher AS T ON a.TeacherId=T.TId LEFT JOIN rb_teacher AS T ON a.TeacherId=T.TId
LEFT JOIN rb_course as cou on cou.CourseId=c.CouseId LEFT JOIN rb_course as cou on cou.CourseId=c.CouseId
where a.`Status`=0 and c.ClassStatus=2 and c.`Status`=0"); where a.`Status`=0 and c.ClassStatus in(2,3) and c.`Status`=0");
if (query != null) if (query != null)
{ {
if (query.Group_Id > 0) if (query.Group_Id > 0)
......
...@@ -258,11 +258,21 @@ LEFT JOIN rb_sell_commission_periods AS p ON r.PeriodId = p.Id where {where} "; ...@@ -258,11 +258,21 @@ LEFT JOIN rb_sell_commission_periods AS p ON r.PeriodId = p.Id where {where} ";
/// <param name="startTime"></param> /// <param name="startTime"></param>
/// <param name="endTime"></param> /// <param name="endTime"></param>
/// <returns></returns> /// <returns></returns>
public List<RB_Sell_Commission_Details_ViewModel> GetSellCommissionForDate(int group_Id, string classIds, string startTime, string endTime) public List<RB_Sell_Commission_Details_ViewModel> GetSellCommissionForDate(int group_Id, int schoolId, string classIds, string startTime, string endTime)
{ {
string where = "";
if (!string.IsNullOrEmpty(classIds)) {
where += $@" and d.ClassId in ({classIds})";
}
if (schoolId >= 0)
{
where = $@" and c.School_Id ={schoolId}";
}
string sql = $@"SELECT d.ClassId,SUM(d.CurrentPeriodMoney + d.CurrentExtraMoney + d.DeductionMoney + d.DeductionExtraMoney) AS CurrentPeriodMoney FROM rb_sell_commission_details d string sql = $@"SELECT d.ClassId,SUM(d.CurrentPeriodMoney + d.CurrentExtraMoney + d.DeductionMoney + d.DeductionExtraMoney) AS CurrentPeriodMoney FROM rb_sell_commission_details d
INNER JOIN rb_sell_commission_periods p on d.PeriodId = p.Id INNER JOIN rb_sell_commission_periods p on d.PeriodId = p.Id
WHERE p.Group_Id ={group_Id} and d.ClassId in ({classIds}) and STR_TO_DATE(CONCAT(p.Periods,'-01'),'%Y-%m-%d') >='{startTime}' and STR_TO_DATE(CONCAT(p.Periods,'-01'),'%Y-%m-%d') <='{endTime} 23:59:59' left join rb_class c on d.ClassId = c.ClassId
WHERE p.Group_Id ={group_Id} {where} and STR_TO_DATE(CONCAT(p.Periods,'-01'),'%Y-%m-%d') >='{startTime}' and STR_TO_DATE(CONCAT(p.Periods,'-01'),'%Y-%m-%d') <='{endTime} 23:59:59'
GROUP BY d.ClassId"; GROUP BY d.ClassId";
return Get<RB_Sell_Commission_Details_ViewModel>(sql).ToList(); return Get<RB_Sell_Commission_Details_ViewModel>(sql).ToList();
} }
......
...@@ -353,11 +353,20 @@ where {where}"; ...@@ -353,11 +353,20 @@ where {where}";
/// <param name="startTime"></param> /// <param name="startTime"></param>
/// <param name="endTime"></param> /// <param name="endTime"></param>
/// <returns></returns> /// <returns></returns>
public List<RB_Teaching_BonusDetail_ViewModel> GetTeacherBonusForDate(int group_Id, string classIds, string startTime, string endTime) public List<RB_Teaching_BonusDetail_ViewModel> GetTeacherBonusForDate(int group_Id, int schoolId, string classIds, string startTime, string endTime)
{ {
string where = "";
if (!string.IsNullOrEmpty(classIds)) {
where = $@" and d.ClassId in ({classIds})";
}
if (schoolId >= 0) {
where = $@" and c.School_Id ={schoolId}";
}
string sql = $@"SELECT d.ClassId,SUM(d.Money) AS Money FROM rb_teaching_bonusdetail d string sql = $@"SELECT d.ClassId,SUM(d.Money) AS Money FROM rb_teaching_bonusdetail d
INNER JOIN rb_teaching_bonus p on d.BonusId = p.Id INNER JOIN rb_teaching_bonus p on d.BonusId = p.Id
WHERE p.Group_Id ={group_Id} and d.ClassId in ({classIds}) and STR_TO_DATE(CONCAT(p.`Month`,'-01'),'%Y-%m-%d') >='{startTime}' and STR_TO_DATE(CONCAT(p.`Month`,'-01'),'%Y-%m-%d') <='{endTime} 23:59:59' left join rb_class c on d.ClassId = c.ClassId
WHERE p.Group_Id ={group_Id} {where} and STR_TO_DATE(CONCAT(p.`Month`,'-01'),'%Y-%m-%d') >='{startTime}' and STR_TO_DATE(CONCAT(p.`Month`,'-01'),'%Y-%m-%d') <='{endTime} 23:59:59'
GROUP BY d.ClassId"; GROUP BY d.ClassId";
return Get<RB_Teaching_BonusDetail_ViewModel>(sql).ToList(); return Get<RB_Teaching_BonusDetail_ViewModel>(sql).ToList();
} }
......
...@@ -258,10 +258,20 @@ where {where}"; ...@@ -258,10 +258,20 @@ where {where}";
/// <param name="sTime"></param> /// <param name="sTime"></param>
/// <param name="eTime"></param> /// <param name="eTime"></param>
/// <returns></returns> /// <returns></returns>
public List<RB_Teaching_Perf_ViewModel> GetTeacherPerfForDate(int group_Id, string classIds, string sTime, string eTime) public List<RB_Teaching_Perf_ViewModel> GetTeacherPerfForDate(int group_Id,int schoolId, string classIds, string sTime, string eTime)
{ {
string where = "";
if (!string.IsNullOrEmpty(classIds)) {
where = $@" and d.ClassId in ({classIds})";
}
if (schoolId >= 0)
{
where = $@" and c.School_Id ={schoolId}";//left join rb_class c on d.ClassId = c.ClassId
}
string sql = $@"SELECT d.ClassId,SUM(d.Money) AS Money FROM rb_teaching_perf d string sql = $@"SELECT d.ClassId,SUM(d.Money) AS Money FROM rb_teaching_perf d
WHERE d.Group_Id ={group_Id} and d.ClassId in ({classIds}) and d.ConfirmDate >='{sTime}' and d.ConfirmDate <='{eTime} 23:59:59' left join rb_class c on d.ClassId = c.ClassId
WHERE d.Group_Id ={group_Id} {where} and d.ConfirmDate >='{sTime}' and d.ConfirmDate <='{eTime} 23:59:59'
GROUP BY d.ClassId"; GROUP BY d.ClassId";
return Get<RB_Teaching_Perf_ViewModel>(sql).ToList(); return Get<RB_Teaching_Perf_ViewModel>(sql).ToList();
} }
......
...@@ -235,6 +235,11 @@ WHERE {1} {2} ", TableName, where, " ORDER BY A.FrID DESC"); ...@@ -235,6 +235,11 @@ WHERE {1} {2} ", TableName, where, " ORDER BY A.FrID DESC");
{ {
where.Append(" and IFNULL(E.TCID,0)=0"); where.Append(" and IFNULL(E.TCID,0)=0");
} }
if (model.TCID == -2)
{
where.Append(" and IFNULL(E.TCID,0) >0");//班级上的单据
where.Append(" and IFNULL(b.OrderID,0) =0");
}
if (model.OrderSource.HasValue) if (model.OrderSource.HasValue)
{ {
where.Append(" and IFNULL(b.OrderSource,0) =" + (int)model.OrderSource); where.Append(" and IFNULL(b.OrderSource,0) =" + (int)model.OrderSource);
...@@ -252,6 +257,69 @@ LEFT JOIN rb_travel_finance_relation as E ON A.FinanceId=E.FinanceId where 1=1 " ...@@ -252,6 +257,69 @@ LEFT JOIN rb_travel_finance_relation as E ON A.FinanceId=E.FinanceId where 1=1 "
return Get<RB_Finance_Extend>(builder.ToString() + " ORDER BY b.FrID DESC ").ToList(); return Get<RB_Finance_Extend>(builder.ToString() + " ORDER BY b.FrID DESC ").ToList();
} }
/// <summary>
/// 班级专用查询
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public List<RB_Finance_Extend> GetListForReportClass(RB_Finance_Extend model, string datebaseStr)
{
StringBuilder where = new StringBuilder();
where.Append(" and b.Status in(1,2,5) and b.Is_Auto=0 ");
StringBuilder builder = new StringBuilder();
//老徐喊修改的 2019-05-11 收款用交易日期 付款用制单日期
if (model.sAduitDate.HasValue && model.eAduitDate.HasValue)
{
where.Append(" AND case when b.Type=2 then b.CreateDate>='" + model.sAduitDate.Value.ToString("yyyy-MM-dd") + "' and b.CreateDate<='" + model.eAduitDate.Value.ToString("yyyy-MM-dd") + " 23:59:59' else b.TradeDate>='" + model.sAduitDate.Value.ToString("yyyy-MM-dd") + "' and b." + nameof(RB_Finance.TradeDate) + "<='" + model.eAduitDate.Value.ToString("yyyy-MM-dd") + " 23:59:59' end");
}
else if (model.sAduitDate.HasValue)
{
where.Append(" AND case when b.Type=2 then b." + nameof(RB_Finance.CreateDate) + ">='" + model.sAduitDate.Value.ToString("yyyy-MM-dd") + "' else b." + nameof(RB_Finance.TradeDate) + ">='" + model.sAduitDate.Value.ToString("yyyy-MM-dd") + "' end");
}
else if (model.eAduitDate.HasValue)
{
where.Append(" AND case when b.Type=2 then b." + nameof(RB_Finance.CreateDate) + "<='" + model.eAduitDate.Value.ToString("yyyy-MM-dd") + " 23:59:59' else b." + nameof(RB_Finance.TradeDate) + "<='" + model.eAduitDate.Value.ToString("yyyy-MM-dd") + " 23:59:59' end");
}
if (model.RB_Group_Id > 0)
{
where.Append(" AND b." + nameof(RB_Finance.RB_Group_Id) + "=" + model.RB_Group_Id + "");
}
if (!string.IsNullOrEmpty(model.TCIDStr))
{
where.Append(" and E.TCID in(" + model.TCIDStr + ")");
}
if (model.TCID == -1)
{
where.Append(" and IFNULL(E.TCID,0)=0");
}
if (model.TCID == -2)
{
where.Append(" and IFNULL(E.TCID,0) >0");//班级上的单据
where.Append(" and IFNULL(b.OrderID,0) =0");
}
if (model.RB_Branch_Id >= 0)
{
where.Append(" AND c.School_Id =" + model.RB_Branch_Id);
}
if (model.OrderSource.HasValue)
{
where.Append(" and IFNULL(b.OrderSource,0) =" + (int)model.OrderSource);
}
if (model.FinanceType.HasValue && model.FinanceType > 0)
{
where.Append(" AND b." + nameof(RB_Finance.FinanceType) + "=" + model.FinanceType + "");
}
builder.AppendFormat($@"select distinct b.FrID,IFNULL(b.MatchMoney,0) as MatchMoney,IFNULL(E.TCID,0)TCID,D.Name,b.Status,b.TradeDate,b.CreateDate,b.RB_Branch_Id,a.ID,a.CostTypeId,IFNULL(b.Is_Cashier,0)Is_Cashier,a.Money,IFNULL(b.OrderID,0) OrderID,b.OrderSource,b.SourceID,IFNULL(b.PayMoney,0)PayMoney,IFNULL(b.Fee,0)Fee,b.Type
from rb_financedetail a INNER JOIN rb_finance as b on a.FinanceId=b.FrID and a.`Status`=0
INNER JOIN rb_costtype AS D ON D.ID=a.CostTypeId
LEFT JOIN rb_tradeway as td ON b.FrID=td.FinanceId
LEFT JOIN rb_travel_finance_relation as E ON A.FinanceId=E.FinanceId
left join {datebaseStr}.rb_class c on c.ClassId = E.TCID
where 1=1 " + where);
return Get<RB_Finance_Extend>(builder.ToString() + " ORDER BY b.FrID DESC ").ToList();
}
/// <summary> /// <summary>
/// 获取资金调拨 汇兑损益 /// 获取资金调拨 汇兑损益
/// </summary> /// </summary>
......
...@@ -34,6 +34,20 @@ namespace Edu.Repository.System ...@@ -34,6 +34,20 @@ namespace Edu.Repository.System
sb.AppendFormat(" AND A.{0}={1} ", nameof(RB_System_Holiday.HolidayId), model.HolidayId); sb.AppendFormat(" AND A.{0}={1} ", nameof(RB_System_Holiday.HolidayId), model.HolidayId);
} }
if (model.Group_Id > 0)
{
sb.AppendFormat(" AND A.{0}={1} ", nameof(RB_System_Holiday.Group_Id), model.Group_Id);
}
if (model.StartTime.HasValue)
{
sb.AppendFormat(" AND DATE_FORMAT(A.{0}, '%y/%m/%d') >= DATE_FORMAT('{1}', '%y/%m/%d') ", nameof(RB_System_Holiday.StartTime), model.StartTime.Value.ToString("yyyy-MM-dd"));
}
if (model.EndTime.HasValue)
{
sb.AppendFormat(" AND DATE_FORMAT(A.{0}, '%y/%m/%d') <= DATE_FORMAT('{1}', '%y/%m/%d') ", nameof(RB_System_Holiday.StartTime), model.EndTime.Value.ToString("yyyy-MM-dd"));
}
if (model.Group_Id > 0) if (model.Group_Id > 0)
{ {
sb.AppendFormat(" AND A.{0}={1} ", nameof(RB_System_Holiday.Group_Id), model.Group_Id); sb.AppendFormat(" AND A.{0}={1} ", nameof(RB_System_Holiday.Group_Id), model.Group_Id);
......
...@@ -71,20 +71,7 @@ namespace Edu.WebApi.Controllers.Public ...@@ -71,20 +71,7 @@ namespace Edu.WebApi.Controllers.Public
return ApiResult.Failed("节假日时间范围重合"); return ApiResult.Failed("节假日时间范围重合");
} }
if (dmodel.DayType == 1)//判断节假日是否有排课计划
{
var planList = classModule.GetClassPlanList_V3(new Model.ViewModel.Course.RB_Class_Plan_ViewModel
{
Group_Id = userInfo.Group_Id,
StartTime = dmodel.StartTime.ToString("yyyy-MM-dd 00:00:00"),
EndTime = dmodel.EndTime.ToString("yyyy-MM-dd 00:00:00")
});
if (planList != null && planList.Any())
{
return ApiResult.Failed("班级:" + string.Join(",", planList.Select(x => x.ClassName)) + "存在排课");
}
}
if (dmodel.HolidayId == 0) if (dmodel.HolidayId == 0)
{ {
...@@ -96,6 +83,22 @@ namespace Edu.WebApi.Controllers.Public ...@@ -96,6 +83,22 @@ namespace Edu.WebApi.Controllers.Public
bool flag = holidayModule.SetHoliday(dmodel); bool flag = holidayModule.SetHoliday(dmodel);
if (flag) if (flag)
{ {
if (dmodel.DayType == 1)//判断节假日是否有排课计划
{
var planList = classModule.GetClassPlanList_V3(new Model.ViewModel.Course.RB_Class_Plan_ViewModel
{
Group_Id = userInfo.Group_Id,
StartTime = dmodel.StartTime.HasValue ? dmodel.StartTime.Value.ToString("yyyy-MM-dd 00:00:00") : "",
EndTime = dmodel.EndTime.HasValue ? dmodel.EndTime.Value.ToString("yyyy-MM-dd 00:00:00") : ""
});
if (planList != null && planList.Any())
{
return ApiResult.Success("班级:" + string.Join(",", planList.Select(x => x.ClassName)) + "存在排课");
}
}
return ApiResult.Success(); return ApiResult.Success();
} }
else else
...@@ -138,10 +141,27 @@ namespace Edu.WebApi.Controllers.Public ...@@ -138,10 +141,27 @@ namespace Edu.WebApi.Controllers.Public
{ {
UserInfo userInfo = base.UserInfo; UserInfo userInfo = base.UserInfo;
ResultPageModel pmodel = JsonConvert.DeserializeObject<ResultPageModel>(RequestParm.Msg.ToString()); ResultPageModel pmodel = JsonConvert.DeserializeObject<ResultPageModel>(RequestParm.Msg.ToString());
var startDate = base.ParmJObj.GetStringValue("StartTime");
var endDate = base.ParmJObj.GetStringValue("EndTime");
RB_System_Holiday dmodel = new RB_System_Holiday RB_System_Holiday dmodel = new RB_System_Holiday
{ {
DayType = base.ParmJObj.GetInt("DayType", 0) DayType = base.ParmJObj.GetInt("DayType", 0)
}; };
try
{
if (!string.IsNullOrWhiteSpace(startDate))
{
dmodel.StartTime = Convert.ToDateTime(startDate);
}
if (!string.IsNullOrWhiteSpace(endDate))
{
dmodel.EndTime = Convert.ToDateTime(endDate);
}
}
catch (Exception ex)
{
}
List<RB_System_Holiday> list = holidayModule.GetPageList(pmodel.PageIndex, pmodel.PageSize, dmodel, out long count); List<RB_System_Holiday> list = holidayModule.GetPageList(pmodel.PageIndex, pmodel.PageSize, dmodel, out long count);
...@@ -149,8 +169,8 @@ namespace Edu.WebApi.Controllers.Public ...@@ -149,8 +169,8 @@ namespace Edu.WebApi.Controllers.Public
pmodel.PageData = list.Select(x => new pmodel.PageData = list.Select(x => new
{ {
x.HolidayId, x.HolidayId,
StartTime = x.StartTime.ToString("yyyy-MM-dd"), StartTime = x.StartTime.HasValue ? x.StartTime.Value.ToString("yyyy-MM-dd") : "",
EndTime = x.EndTime.ToString("yyyy-MM-dd"), EndTime = x.EndTime.HasValue ? x.EndTime.Value.ToString("yyyy-MM-dd") : "",
x.DayType x.DayType
}); });
return ApiResult.Success("", pmodel); return ApiResult.Success("", pmodel);
...@@ -175,8 +195,8 @@ namespace Edu.WebApi.Controllers.Public ...@@ -175,8 +195,8 @@ namespace Edu.WebApi.Controllers.Public
var obj = new var obj = new
{ {
model.HolidayId, model.HolidayId,
StartTime = model.StartTime.ToString("yyyy-MM-dd"), StartTime = model.StartTime.HasValue ? model.StartTime.Value.ToString("yyyy-MM-dd") : "",
EndTime = model.EndTime.ToString("yyyy-MM-dd"), EndTime = model.EndTime.HasValue ? model.EndTime.Value.ToString("yyyy-MM-dd") : "",
model.DayType model.DayType
}; };
return ApiResult.Success("请求成功!", obj); return ApiResult.Success("请求成功!", obj);
......
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