Commit f4783ebd authored by 黄奎's avatar 黄奎

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

parents e617e0fa 7d2b8c13
......@@ -1324,7 +1324,7 @@ namespace Edu.Module.Course
{
ctModel.TimeList = JsonHelper.DeserializeObject<List<CourseTimeModel>>(ctModel.Content);
}
#region 组装数据
//查询班次
......@@ -1429,20 +1429,20 @@ namespace Edu.Module.Course
{
RList.Add(new
{
AccountId=0,
TeacherId=0,
TeacherHead="",
TeacherName="",
TeacherIntro="",
RoomId=0,
RoomName="",
SchoolName="",
CourseTimeList= ctModel.TimeList,
StartTime="",
EndTime=""
AccountId = 0,
TeacherId = 0,
TeacherHead = "",
TeacherName = "",
TeacherIntro = "",
RoomId = 0,
RoomName = "",
SchoolName = "",
CourseTimeList = ctModel.TimeList,
StartTime = "",
EndTime = ""
});
}
#endregion
return RList;
......@@ -2434,7 +2434,7 @@ namespace Edu.Module.Course
var timeList = planModel.CourseTimeList.Where(x => ("," + demodel.ShiftSort + ",").Contains("," + x.Sort + ",")).ToList();
if (timeList.Sum(x => x.Minutes) != NextAppointMinutes)
{
// return "预约时长不正确";
// return "预约时长不正确";
}
if (demodel.Id <= 0 && timeList.Where(x => x.State == 2).Any())
{
......@@ -2609,7 +2609,7 @@ namespace Edu.Module.Course
{
List<RB_Scroll_Appointment_ViewModel> list = new List<RB_Scroll_Appointment_ViewModel>();
list.Add(demodel);
class_CheckRepository.AppointStuCheckRepository(list,2);
class_CheckRepository.AppointStuCheckRepository(list, 2);
}
return flag ? "" : "出错了,请联系管理员";
#endregion
......@@ -2658,7 +2658,7 @@ namespace Edu.Module.Course
#endregion
foreach (var item in list)
{
Dictionary<string, object> keyValues = new Dictionary<string, object>()
Dictionary<string, object> keyValues = new Dictionary<string, object>()
{
{ nameof(RB_Scroll_Appointment_ViewModel.State), Common.Enum.Course.CourseAppointStateEnum.Cancel},
{ nameof(RB_Scroll_Appointment_ViewModel.Remark), item.Remark +";后台管理取消已确认的约课"},
......@@ -2683,11 +2683,11 @@ namespace Edu.Module.Course
if (item.AppointType == 2)
{
//更新补课
Dictionary<string, object> keyValues1 = new Dictionary<string, object>()
Dictionary<string, object> keyValues1 = new Dictionary<string, object>()
{
{ nameof(RB_Scroll_SkipCourse_ViewModel.State),1}
};
List<WhereHelper> wheres1 = new List<WhereHelper>()
List<WhereHelper> wheres1 = new List<WhereHelper>()
{
new WhereHelper()
{
......@@ -2792,7 +2792,7 @@ namespace Edu.Module.Course
{
bool flag = false;
//查询当日 所有的预约记录
var list = scroll_AppointmentRepository.GetAppointList(new RB_Scroll_Appointment_ViewModel() { Group_Id = userInfo.Group_Id, StartTime = date, EntTime = date, TeacherId = teacherId, AppointIds = AppointIds });
if (list.Where(x => x.State != Common.Enum.Course.CourseAppointStateEnum.WaitSure).Any()) { return "已确认预约,无法取消"; }
if (list.Select(x => x.ShiftSort).Distinct().Count() > 1) { return "只能单次约课取消"; }
......@@ -2821,7 +2821,7 @@ namespace Edu.Module.Course
#endregion
foreach (var item in list)
{
Dictionary<string, object> keyValues = new Dictionary<string, object>()
Dictionary<string, object> keyValues = new Dictionary<string, object>()
{
{ nameof(RB_Scroll_Appointment_ViewModel.State), Common.Enum.Course.CourseAppointStateEnum.Cancel},
{ nameof(RB_Scroll_Appointment_ViewModel.Remark), item.Remark +";后台管理取消"},
......@@ -2846,11 +2846,11 @@ namespace Edu.Module.Course
if (item.AppointType == 2)
{
//更新补课
Dictionary<string, object> keyValues1 = new Dictionary<string, object>()
Dictionary<string, object> keyValues1 = new Dictionary<string, object>()
{
{ nameof(RB_Scroll_SkipCourse_ViewModel.State),1}
};
List<WhereHelper> wheres1 = new List<WhereHelper>()
List<WhereHelper> wheres1 = new List<WhereHelper>()
{
new WhereHelper()
{
......@@ -2902,12 +2902,12 @@ namespace Edu.Module.Course
}
if (IsCancel)
{
Dictionary<string, object> keyValues1 = new Dictionary<string, object>()
Dictionary<string, object> keyValues1 = new Dictionary<string, object>()
{
{ nameof(RB_Scroll_Appointment_ViewModel.State), Common.Enum.Course.CourseAppointStateEnum.Cancel},
{ nameof(RB_Scroll_Appointment_ViewModel.UpdateTime), DateTime.Now},
};
List<WhereHelper> wheres1 = new List<WhereHelper>()
List<WhereHelper> wheres1 = new List<WhereHelper>()
{
new WhereHelper()
{
......@@ -2927,7 +2927,7 @@ namespace Edu.Module.Course
Dictionary<string, object> keyValues12 = new Dictionary<string, object>() {
{ nameof(RB_Scroll_SkipCourse_ViewModel.State),1}
};
List<WhereHelper> wheres12 = new List<WhereHelper>()
List<WhereHelper> wheres12 = new List<WhereHelper>()
{
new WhereHelper()
{
......@@ -3002,11 +3002,11 @@ namespace Edu.Module.Course
/// <param name="date"></param>
/// <param name="userInfo"></param>
/// <returns></returns>
public bool CancelSureAppointmentNewModule(CancelAppointmentModel model, UserInfo userInfo,out string message)
public bool CancelSureAppointmentNewModule(CancelAppointmentModel model, UserInfo userInfo, out string message)
{
message = "";
bool flag = false;
List<int> appointList = model.StuList.Select(qitem=>qitem.AppointId).ToList();
List<int> appointList = model.StuList.Select(qitem => qitem.AppointId).ToList();
//查询当日 所有的预约记录
var alllist = scroll_AppointmentRepository.GetAppointList(new RB_Scroll_Appointment_ViewModel() { Group_Id = userInfo.Group_Id, StartTime = model.Date, EntTime = model.Date, AccountId = model.AccountId, ShiftSort = model.ShiftSort });
var list = alllist.Where(x => appointList.Contains(x.Id)).ToList();
......@@ -3040,7 +3040,7 @@ namespace Edu.Module.Course
var tempList = list.Where(qitem => qitem.State != Common.Enum.Course.CourseAppointStateEnum.Cancel && qitem.State != Common.Enum.Course.CourseAppointStateEnum.Absent)?.ToList();
foreach (var item in tempList)
{
var currentStu= model.StuList.FirstOrDefault(qitem => qitem.AppointId == item.Id);
var currentStu = model.StuList.FirstOrDefault(qitem => qitem.AppointId == item.Id);
item.IsCalcStuCheck = currentStu.IsCalcStuCheck;
Dictionary<string, object> keyValues = new Dictionary<string, object>()
{
......@@ -3120,7 +3120,7 @@ namespace Edu.Module.Course
{
class_CheckRepository.Delete(qitem);
//更新学员完成课时
var oldCheckList =class_CheckRepository.GetClassCheckList(new RB_Class_Check_ViewModel() { QOrderGuestIds = item.GuestId.ToString() });
var oldCheckList = class_CheckRepository.GetClassCheckList(new RB_Class_Check_ViewModel() { QOrderGuestIds = item.GuestId.ToString() });
decimal finishHours = 0;
if (oldCheckList != null && oldCheckList.Count > 0)
{
......@@ -3133,6 +3133,14 @@ namespace Edu.Module.Course
};
order_GuestRepository.Update(guestFileds, new WhereHelper(nameof(RB_Order_Guest_Extend.Id), item.GuestId));
}
else if (item.IsCalcStuCheck == 1)
{
Dictionary<string, object> guestFileds = new Dictionary<string, object>()
{
{nameof(RB_Class_Check.IsCalcTeacFee), 0},
};
class_CheckRepository.Update(guestFileds, new WhereHelper(nameof(RB_Class_Check.ClassCheckId), qitem.ClassCheckId));
}
}
}
}
......@@ -3160,7 +3168,7 @@ namespace Edu.Module.Course
foreach (var qitem in tlist)
{
class_TimeRepository.Delete(qitem);
}
}
}
......@@ -3518,18 +3526,19 @@ namespace Edu.Module.Course
//根据课程Id 查询 上课课程
List<int> courseIdList = new List<int>();
courseIdList.Add(item.CourseId);
var tempCourseList = orderCourseList?.Where(qitem => qitem.OrderId == item.OrderId)?.Select(qitem=>qitem.CourseId)?.ToList()?.Distinct();
var tempCourseList = orderCourseList?.Where(qitem => qitem.OrderId == item.OrderId)?.Select(qitem => qitem.CourseId)?.ToList()?.Distinct();
if (tempCourseList != null && tempCourseList.Count() > 0)
{
courseIdList.AddRange(tempCourseList);
}
var cList = course_ChapterRepository.GetChapterListRepository(new RB_Course_Chapter_ViewModel() { Group_Id = demodel.Group_Id, CourseIds = string.Join(",", courseIdList.Distinct()),QOrderBy=1 })?.ToList();
var cList = course_ChapterRepository.GetChapterListRepository(new RB_Course_Chapter_ViewModel() { Group_Id = demodel.Group_Id, CourseIds = string.Join(",", courseIdList.Distinct()), QOrderBy = 1 })?.ToList();
if (item.ClassScrollType == 2)
{
var achildList = AppointList.Where(x => x.GuestId == ogModel.GuestId).ToList();//当前课程的
foreach (var sItem in cList)
{
var AppointModel = achildList.Where(y => y.CourseGradeId == sItem.CourseRate && y.CourseGradeNo==sItem.ChapterGradeNo).FirstOrDefault();
var AppointModel = achildList.Where(y => y.CourseGradeId == sItem.CourseRate && y.CourseGradeNo == sItem.ChapterGradeNo).FirstOrDefault();
//var SkipModel = SkipList.Where(y => y.ChapterNo == x.SortNum && y.CourseId == item.CourseId).FirstOrDefault();
int AgainNum = achildList.Where(y => y.CourseGradeId == sItem.CourseRate && y.CourseGradeNo == sItem.ChapterGradeNo && y.AppointType == 3).Count();
int State = 0;
......@@ -3592,7 +3601,7 @@ namespace Edu.Module.Course
ClassDate = ""
}));
}
if (item.ClassScrollType == 1)
{
TotalChapterNo = oguestModel?.TotalChapterNo ?? 0;
......
......@@ -158,7 +158,7 @@ namespace Edu.Module.Finance
/// <summary>
/// 收据
/// </summary>
private readonly RB_Receipt_InfoRepository receipt_InfoRepository = new RB_Receipt_InfoRepository();
private readonly RB_Receipt_InfoRepository receipt_InfoRepository = new RB_Receipt_InfoRepository();
/// <summary>
/// 试听班级
/// </summary>
......@@ -343,14 +343,15 @@ namespace Edu.Module.Finance
Type = 1,
StartDate = DateTime.Now
});
string STime = "";string ETime = "";
string STime = ""; string ETime = "";
if (IsUpdateHistory == true)
{
//历史 往后倒退一年
STime = Convert.ToDateTime(StartTime).AddYears(-1).ToString("yyyy-MM-dd");
ETime = StartTime;
}
else {
else
{
STime = StartTime;
ETime = DateTime.Now.AddYears(1).ToString("yyyy-MM-dd");
}
......@@ -393,7 +394,8 @@ namespace Edu.Module.Finance
edu_RevenueReportRepository.DeleteBatch(delList);
}
foreach (var item in classList) {
foreach (var item in classList)
{
try
{
Console.WriteLine("班级:" + item.ClassName + "|" + item.ClassId);
......@@ -402,7 +404,8 @@ namespace Edu.Module.Finance
if (!orderList.Any()) { continue; }
var financeList = FAllList.Where(x => x.TCID == item.ClassId).ToList();
var demodel = oldlist.Where(x => x.ClassId == item.ClassId).FirstOrDefault();
if (demodel == null) {
if (demodel == null)
{
IsNew = true;
//新增
demodel = new RB_Edu_RevenueReport_Extend()
......@@ -452,7 +455,8 @@ namespace Edu.Module.Finance
//支出
demodel.TiCheng = orderList.Where(x => x.IsCommissionGive == 1).Sum(x => x.CommissionMoney + x.ExtraCommissionMoney);//销售提成
var achList = AchDetailList.Where(x => orderList.Select(x => x.OrderId).Contains(x.OrderId)).ToList();
if (achList.Any()) {
if (achList.Any())
{
demodel.TiCheng += achList.Sum(x => x.GiveOutMoney);// 业绩提成
}
demodel.ClassFee = teacherBonusList.Where(x => x.ClassId == item.ClassId).Sum(x => x.Money);//老师提成
......@@ -486,7 +490,8 @@ namespace Edu.Module.Finance
{
edu_RevenueReportRepository.Insert(demodel);
}
else {
else
{
edu_RevenueReportRepository.Update(demodel);
}
}
......@@ -501,7 +506,8 @@ namespace Edu.Module.Finance
#region 留学就业
//查询日期范围内所有的留学就业项目
var saList = studyAbroadRepository.GetStudyAbroadListExtRepository(new Model.ViewModel.StudyAbroad.RB_StudyAbroad_ViewModel() { Group_Id = GroupId, School_Id = -1, SaleState = Common.Enum.Sale.SaleStateEnum.Sell, StartTime = STime, EndTime = ETime });
if (saList.Any()) {
if (saList.Any())
{
string saIds = string.Join(",", saList.Select(x => x.Id));
//根据班级查询所有的订单列表
orderAllList = orderRepository.GetOrderListRepository(new RB_Order_ViewModel() { Group_Id = GroupId, SourceIds = saIds, OrderType = Common.Enum.Sale.OrderTypeEnum.StudyabroadOrder, Q_OrderState = 1 });
......@@ -516,7 +522,8 @@ namespace Edu.Module.Finance
edu_RevenueReportRepository.DeleteBatch(delList);
}
foreach (var item in saList) {
foreach (var item in saList)
{
try
{
Console.WriteLine("留学就业:" + item.Name + "|" + item.Id);
......@@ -616,7 +623,8 @@ namespace Edu.Module.Finance
#region 试听课程
var rclist = reserve_ClassRepository.GetReserveClassListRepository(new Model.ViewModel.Reserve.RB_Reserve_Class_Extend() { Group_Id = GroupId, StartClassDate = STime, EndClassDate = ETime });
if (rclist.Any()) {
if (rclist.Any())
{
string rclassIds = string.Join(",", rclist.Select(x => x.ReserveClassId));
//查询班级下所有的财务单据
FAllList = RB_FinanceRepository.GetDataStatisticsListThree(new RB_Finance_Extend() { RB_Group_Id = GroupId, TCIDStr = rclassIds, OrderSource = OrderResourceEnum.ReserveClass });
......@@ -647,7 +655,8 @@ namespace Edu.Module.Finance
var list = edu_RevenueReportRepository.GetPageList(pageIndex, pageSize, out count, dmodel);
//统计
var Statistics = edu_RevenueReportRepository.GetRevenueReportStatistics(dmodel);
if (count > 0) {
if (count > 0)
{
Statistics.MaoLiRate = Math.Round(Statistics.MaoLiRate / count, 2, MidpointRounding.AwayFromZero);
Statistics.AverageIncome = Math.Round(Statistics.AverageIncome / count, 2, MidpointRounding.AwayFromZero);
Statistics.AverageCost = Math.Round(Statistics.AverageCost / count, 2, MidpointRounding.AwayFromZero);
......@@ -1369,7 +1378,7 @@ namespace Edu.Module.Finance
//查询课时费
decimal WBonusMoney = teacherBonusList.Sum(x => x.Money);
//查询业绩提成
decimal sellCommission = sell_Achievements_DetailsRepository.GetSellCommissionForDate(GroupId, branchitem.SId, STime, ETime);
decimal sellCommission = sell_Achievements_DetailsRepository.GetSellCommissionForDate(GroupId, branchitem.SId, STime, ETime);
decimal SellMoney = saleList.Sum(x => x.CurrentPeriodMoney);//销售提成
sellCommission += SellMoney;
......@@ -1493,7 +1502,8 @@ namespace Edu.Module.Finance
foreach (var gitem in FYList)
{
RB_SimpleReport groupReport = new RB_SimpleReport() { Year = Year, Abstract = gitem.Name + "小计", Rb_Group_Id = GroupId, Sort = 0, BranchId = branchitem.SId, CostTypeIds = string.Join(",", gitem.ChildList.Select(x => x.CostTypeId)) };
foreach (var qitem in gitem.ChildList.OrderBy(x=>x.Sort).ThenBy(x=>x.CostTypeId)) {
foreach (var qitem in gitem.ChildList.OrderBy(x => x.Sort).ThenBy(x => x.CostTypeId))
{
//子集具体费用
RB_SimpleReport fReport = new RB_SimpleReport() { Year = Year, Abstract = qitem.Name, Rb_Group_Id = GroupId, Sort = i, BranchId = branchitem.SId, CostTypeIds = qitem.CostTypeId.ToString() };
foreach (var month in shareList)
......@@ -1517,7 +1527,8 @@ namespace Edu.Module.Finance
{
FYMoney = ZhiChu - ShouRu;
}
else {
else
{
FYMoney = ShouRu - ZhiChu;
}
#endregion
......@@ -1552,10 +1563,11 @@ namespace Edu.Module.Finance
}
#endregion
switch (month) {
switch (month)
{
case "01":
fReport.January = FYMoney; groupReport.January += FYMoney; if (gitem.IncomeType == 1) fTotalReport.January += FYMoney; else fTotalReport.January -= FYMoney;
break;
break;
case "02":
fReport.February = FYMoney; groupReport.February += FYMoney; if (gitem.IncomeType == 1) fTotalReport.February += FYMoney; else fTotalReport.February -= FYMoney;
break;
......@@ -1676,40 +1688,40 @@ namespace Edu.Module.Finance
switch (month)
{
case "01":
fReport.January = FYMoney; groupReport.January += FYMoney;
fReport.January = FYMoney; groupReport.January += FYMoney;
break;
case "02":
fReport.February = FYMoney; groupReport.February += FYMoney;
fReport.February = FYMoney; groupReport.February += FYMoney;
break;
case "03":
fReport.March = FYMoney; groupReport.March += FYMoney;
break;
case "04":
fReport.April = FYMoney; groupReport.April += FYMoney;
fReport.April = FYMoney; groupReport.April += FYMoney;
break;
case "05":
fReport.May = FYMoney; groupReport.May += FYMoney;
fReport.May = FYMoney; groupReport.May += FYMoney;
break;
case "06":
fReport.June = FYMoney; groupReport.June += FYMoney;
fReport.June = FYMoney; groupReport.June += FYMoney;
break;
case "07":
fReport.July = FYMoney; groupReport.July += FYMoney;
fReport.July = FYMoney; groupReport.July += FYMoney;
break;
case "08":
fReport.August = FYMoney; groupReport.August += FYMoney;
fReport.August = FYMoney; groupReport.August += FYMoney;
break;
case "09":
fReport.September = FYMoney; groupReport.September += FYMoney;
break;
case "10":
fReport.October = FYMoney; groupReport.October += FYMoney;
fReport.October = FYMoney; groupReport.October += FYMoney;
break;
case "11":
fReport.November = FYMoney; groupReport.November += FYMoney;
fReport.November = FYMoney; groupReport.November += FYMoney;
break;
case "12":
fReport.December = FYMoney; groupReport.December += FYMoney;
fReport.December = FYMoney; groupReport.December += FYMoney;
break;
}
}
......@@ -1867,7 +1879,8 @@ namespace Edu.Module.Finance
#endregion
}
if (AllSchoolReportList.Any()) {
if (AllSchoolReportList.Any())
{
Console.WriteLine("开始汇总插入:" + AllSchoolReportList.Count());
//计算汇总
var HZList = AllSchoolReportList.GroupBy(x => new { x.Year, x.Abstract, x.Rb_Group_Id, x.Sort, x.CostTypeIds }).Select(x => new RB_SimpleReport_Extend()
......@@ -1902,13 +1915,15 @@ namespace Edu.Module.Finance
AllSchoolReportList.AddRange(HZList);
var OldList = edu_simpleReportRepository.GetList(new RB_SimpleReport_Extend() { Year = Year, Rb_Group_Id = GroupId, BranchId = -2 });//查询所有的
foreach (var item in AllSchoolReportList) {
foreach (var item in AllSchoolReportList)
{
var oldModel = OldList.Where(x => x.Year == item.Year && x.Abstract == item.Abstract && x.BranchId == item.BranchId).FirstOrDefault();
if (oldModel == null)
{
edu_simpleReportRepository.Insert(item);
}
else {
else
{
item.ID = oldModel.ID;
edu_simpleReportRepository.Update(item);
oldModel.IsUpdate = 1;
......@@ -3688,7 +3703,8 @@ namespace Edu.Module.Finance
public List<RB_RollingAccount_Extend> GetFinanceMonthStatementPageList(int pageIndex, int pageSize, out long count, RB_RollingAccount_Extend dmodel)
{
var list = rollingAccountRepository.GetPageList(pageIndex, pageSize, out count, dmodel);
if (list.Any()) {
if (list.Any())
{
//查询校区
List<int> SchoolIdList = JsonHelper.DeserializeObject<List<int>>("[" + string.Join(",", list.Select(x => x.SchoolIds)) + "]");
string SchoolIds = string.Join(",", SchoolIdList.Where(x => x >= 0).Distinct().ToList());
......@@ -3696,7 +3712,8 @@ namespace Edu.Module.Finance
//查询创建人
string userIds = string.Join(',', list.Select(x => x.UpdateBy).Distinct());
var userList = accountRepository.GetEmployeeListRepository(new Model.ViewModel.User.Employee_ViewModel() { Group_Id = dmodel.GroupId, QIds = userIds });
foreach (var item in list) {
foreach (var item in list)
{
item.UpdateByName = userList.Where(x => x.Id == item.UpdateBy).FirstOrDefault()?.EmployeeName ?? "";
item.SchoolList = new List<Model.ViewModel.User.RB_School_ViewModel>();
if (item.SchoolIds == "-1")
......@@ -3707,7 +3724,8 @@ namespace Edu.Module.Finance
SName = "全部"
});
}
else {
else
{
List<int> SchoolId2List = JsonHelper.DeserializeObject<List<int>>("[" + item.SchoolIds + "]");
var sList = schoolList.Where(x => SchoolId2List.Contains(x.SId)).ToList();
item.SchoolList = sList;
......@@ -3729,9 +3747,12 @@ namespace Edu.Module.Finance
//验证 除此之外 其他是否有包含
var list = rollingAccountRepository.GetList(new RB_RollingAccount_Extend() { GroupId = dmodel.GroupId, Month = dmodel.Month });
list = list.Where(x => x.Id != dmodel.Id).ToList();
if (list.Any()) {
foreach (var item in dmodel.SchoolList) {
if (list.Where(x => ("," + x.SchoolIds + ",").Contains("," + item.SId + ",")).Any()) {
if (list.Any())
{
foreach (var item in dmodel.SchoolList)
{
if (list.Where(x => ("," + x.SchoolIds + ",").Contains("," + item.SId + ",")).Any())
{
return item.SName + "已存在其他设置里,请核实后再试";
}
}
......@@ -3754,7 +3775,8 @@ namespace Edu.Module.Finance
bool flag = rollingAccountRepository.Update(keyValues, wheres);
return flag ? "" : "出错了,请联系管理员";
}
else {
else
{
var list = rollingAccountRepository.GetList(new RB_RollingAccount_Extend() { GroupId = dmodel.GroupId, Month = dmodel.Month });
if (list.Any())
{
......@@ -3767,7 +3789,7 @@ namespace Edu.Module.Finance
}
}
dmodel.SchoolIds = string.Join(",", dmodel.SchoolList.Select(x => x.SId));
bool flag = rollingAccountRepository.Insert(dmodel) >0;
bool flag = rollingAccountRepository.Insert(dmodel) > 0;
return flag ? "" : "出错了,请联系管理员";
}
}
......@@ -3799,7 +3821,8 @@ namespace Edu.Module.Finance
string userIds = string.Join(",", userList.Select(x => x.AccountId));
var tTimeList = class_CheckRepository.GetTeacherHoursList(groupId, userIds, startMonth, endMonth);
List<RB_Class_ViewModel> ClassList = new List<RB_Class_ViewModel>();
if (tTimeList.Any()) {
if (tTimeList.Any())
{
//查询班级信息
string classIds = string.Join(",", tTimeList.Select(x => x.ClassId).Distinct());
ClassList = classRepository.GetClassListRepository(new RB_Class_ViewModel() { Group_Id = groupId, Q_ClassIds = classIds });
......@@ -3821,7 +3844,8 @@ namespace Edu.Module.Finance
decimal ksNum = Math.Round(Convert.ToDecimal(TotalStudyNum) / configModel.BasicMinutes, 2, MidpointRounding.AwayFromZero); // 未达到一课时时间 算不算一课时
decimal Hours = Math.Round(Convert.ToDecimal(TotalStudyNum) / 60, 2, MidpointRounding.AwayFromZero);//小时
decimal KSMoney = 0;
foreach (var qitem in tlist) {
foreach (var qitem in tlist)
{
var classModel = ClassList.Where(x => x.ClassId == qitem.ClassId).FirstOrDefault();
var typeModel = cTypeList.Where(x => x.CTypeId == classModel.ClassType).FirstOrDefault();
//课时费 需要每个班级 单独计算 因为 班级有附加费用
......@@ -4262,18 +4286,21 @@ namespace Edu.Module.Finance
//根据学生签到表 查询
var list = class_CheckRepository.GetTeacherConsumptionHoursDetialPageList(pageIndex, pageSize, out count, teacherId, schoolId, classId, startMonth, endMonth, groupId);
var rclist = new List<Model.ViewModel.Reserve.RB_Reserve_Class_Extend>();
if (pageSize == 1000 || pageSize == 10000) {
if (pageSize == 1000 || pageSize == 10000)
{
//查询试听课 ld 2023-08-30 不查询试听课了,
//rclist = reserve_ClassRepository.GetTeacherHoursDetialList(teacherId > 0 ? teacherId.ToString() : "", schoolId, 0, startMonth, endMonth, groupId);
}
if (list.Any() || rclist.Any()) {
if (list.Any() || rclist.Any())
{
//班级类型查询
var cTypeList = class_TypeRepository.GetClassTypeListRepository(new RB_Class_Type_ViewModel() { Group_Id = groupId });
//基础配置
var configModel = class_ConfigRepository.GetClassConfigRepository(new RB_Class_Config_ViewModel() { Group_Id = groupId });
if (configModel == null || configModel.BasicHourFee <= 0 || configModel.BasicMinutes <= 0) { return RList; }
foreach (var item in list) {
foreach (var item in list)
{
decimal ClassHourMinute = configModel.BasicMinutes;//课时分钟数
//if (item.ClassHourMinute > 0) { ClassHourMinute = item.ClassHourMinute; }
//上课课时
......@@ -4557,7 +4584,8 @@ namespace Edu.Module.Finance
STime = STime.AddMonths(1);
}
foreach (var item in RList) {
foreach (var item in RList)
{
ExcelDataSource firstRow = new ExcelDataSource(30)
{
ExcelRows = new List<ExcelColumn>()
......@@ -4625,7 +4653,7 @@ namespace Edu.Module.Finance
/// <param name="contractNo"></param>
/// <param name="group_Id"></param>
/// <returns></returns>
public object GetStudentConsumptionHoursDetialPageList(int pageIndex, int pageSize, out long count, int teacherId, int schoolId, int classId, string startMonth, string endMonth, string studentName, int orderId, string contractNo, int groupId,int StudentId)
public object GetStudentConsumptionHoursDetialPageList(int pageIndex, int pageSize, out long count, int teacherId, int schoolId, int classId, string startMonth, string endMonth, string studentName, int orderId, string contractNo, int groupId, int StudentId)
{
List<object> RList = new List<object>();
//根据学生签到表 查询
......@@ -4672,7 +4700,8 @@ namespace Edu.Module.Finance
}
string SaleName = ulist.Where(x => x.Id == item.EnterID).FirstOrDefault()?.EmployeeName ?? "";
string HelpEnterName = "";
if (item.EnterID != item.HelpEnterId && item.HelpEnterId > 0) {
if (item.EnterID != item.HelpEnterId && item.HelpEnterId > 0)
{
HelpEnterName = teacherList.Where(x => x.Id == item.HelpEnterId).FirstOrDefault()?.EmployeeName ?? "";
}
decimal UnitPrice = Math.Round(item.UnitPrice, 6, MidpointRounding.AwayFromZero);
......@@ -4691,7 +4720,7 @@ namespace Edu.Module.Finance
item.CourseName,
item.OrderId,
item.ContractNo,
item.CurrentDeductionHours,
CurrentDeductionHours = item.IsCalcTeacFee == 0 ? "-" : item.CurrentDeductionHours.ToString("f2"),
UnitPrice,
XHMoney = Math.Round(item.UnitPrice * item.CurrentDeductionHours, 6, MidpointRounding.AwayFromZero),
SaleName,
......@@ -4838,10 +4867,12 @@ namespace Edu.Module.Finance
public List<RB_Order_ViewModel> GetSaleAchievementsRankStatistics(int pageIndex, int pageSize, out long count, int saleId, int schoolId, string startMonth, string endMonth, int group_Id)
{
var list = orderRepository.GetSaleAchievementsRankStatistics(pageIndex, pageSize, out count, saleId, schoolId, startMonth, endMonth, group_Id);
if (list.Any()) {
if (list.Any())
{
string userIds = string.Join(",", list.Select(x => x.EnterID).Distinct());
var ulist = accountRepository.GetEmployeeListRepository(new Model.ViewModel.User.Employee_ViewModel() { Group_Id = group_Id, QIds = userIds });
foreach (var item in list) {
foreach (var item in list)
{
item.EnterName = ulist.Where(x => x.Id == item.EnterID).FirstOrDefault()?.EmployeeName ?? "";
}
}
......@@ -4861,7 +4892,8 @@ namespace Edu.Module.Finance
List<int> empIdList = new List<int>();//业务员列表
//首先获取当月新增订单
var olist = orderRepository.GetNewOrderStatistics(startMonth, endMonth, group_Id);//业务员 应收 报名人数 订单数量
if (olist.Any()) {
if (olist.Any())
{
empIdList.AddRange(olist.Select(x => x.EnterID));
}
//查询当月已上课金额
......@@ -4880,17 +4912,20 @@ namespace Edu.Module.Finance
#region 财务单据收入
//直接查询关联订单的单据
var flist = RB_FinanceRepository.GetListForReport(new RB_Finance_Extend() { RB_Group_Id = group_Id, IsSelectOrder = 1, FinanceType = 2, sAduitDate = Convert.ToDateTime(startMonth), eAduitDate = Convert.ToDateTime(endMonth) });
if (flist.Any()) {
if (flist.Any())
{
empIdList.AddRange(flist.Select(x => x.CreateBy ?? 0));
}
#endregion
//查询人员
empIdList = empIdList.Where(x => x > 0).Distinct().ToList();
if (empIdList.Any()) {
if (empIdList.Any())
{
string userIds = string.Join(",", empIdList);
var ulist = accountRepository.GetEmployeeListRepository(new Model.ViewModel.User.Employee_ViewModel() { Group_Id = group_Id, QIds = userIds });
foreach (var umodel in ulist) {
foreach (var umodel in ulist)
{
var omodel = olist.Where(x => x.EnterID == umodel.Id).FirstOrDefault();
var ymodel = ylist.Where(x => x.EnterID == umodel.Id).FirstOrDefault();
var jmodel = jlist.Where(x => x.EnterID == umodel.Id).FirstOrDefault();
......@@ -5071,11 +5106,11 @@ namespace Edu.Module.Finance
}
TeacherHoursList = TeacherHoursList.Where(x => x.ClassId == classId).ToList();
}
#endregion
#region 班级下学生的课耗
List<RB_Teaching_BonusDetail_ViewModel> StudentHoursList = new List<RB_Teaching_BonusDetail_ViewModel>();
//根据学生签到表 查询
var stulist = class_CheckRepository.GetStudentConsumptionHoursDetialList(0, -1, classId, StartTime, EndTime, "", 0, "", userInfo.Group_Id);
if (stulist.Any())
......@@ -5120,14 +5155,15 @@ namespace Edu.Module.Finance
var teacherlist = TeacherHoursList.Where(x => x.Date >= STime && x.Date <= ETime).ToList();
var teacherIdList = teacherlist.Select(x => x.TeacherId).Distinct();
List<object> tRList = new List<object>();
foreach (var qitem in teacherIdList) {
foreach (var qitem in teacherIdList)
{
var tlist = teacherlist.Where(x => x.TeacherId == qitem).ToList();
tRList.Add(new
{
TeacherId = qitem,
TeacherName = tlist.FirstOrDefault()?.TeacherName ?? "",
HoursNum = tlist.Sum(x => x.KSNum),
BaseHoursNum = tlist.Sum(x=>x.DKNum),
BaseHoursNum = tlist.Sum(x => x.DKNum),
HoursMoney = tlist.Sum(x => x.Money)
});
}
......@@ -5138,7 +5174,8 @@ namespace Edu.Module.Finance
decimal StuSumHours = studlist.Sum(x => x.KSNum);
decimal StuSumMoney = studlist.Sum(x => x.Money);
List<object> sRList = new List<object>();
foreach (var qitem in studIdList) {
foreach (var qitem in studIdList)
{
var slist = studlist.Where(x => x.TeacherId == qitem).ToList();
sRList.Add(new
{
......@@ -5184,26 +5221,31 @@ namespace Edu.Module.Finance
List<int> ClassIdArr = new List<int>();
//首先根据签到表 查询出所有的班级 并分页
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));
}
//查询时间范围内 除订单外 班级下其他订单 的其他收入 + 其他成本支出
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 });
if (financeList.Any()) {
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()) {
if (teacherBonusList.Any())
{
ClassIdArr.AddRange(teacherBonusList.Select(x => x.ClassId));
}
var meritsProfitList = teaching_PerfRepository.GetTeacherPerfForDate(userInfo.Group_Id, schoolId, "", startTime, endTime);
if (meritsProfitList.Any()) {
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()) {
if (saleList.Any())
{
ClassIdArr.AddRange(saleList.Select(x => x.ClassId));
}
......@@ -5251,7 +5293,8 @@ namespace Edu.Module.Finance
//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) {
foreach (var item in CAlllist)
{
#region 学生课耗
var slist = StudentHoursList.Where(x => x.ClassId == item.ClassId).ToList();
decimal TStuMoney = slist.Sum(x => x.Money);//上课总金额
......@@ -5304,7 +5347,8 @@ namespace Edu.Module.Finance
//查询留学的
List<int> SourceIdArr = new List<int>();
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()) {
if (lxOrderList.Any())
{
SourceIdArr.AddRange(lxOrderList.Select(x => x.SourceId).Distinct());
}
//财务单据
......@@ -5329,7 +5373,8 @@ namespace Edu.Module.Finance
saList = studyAbroadRepository.GetStudyAbroadListExtRepository(new Model.ViewModel.StudyAbroad.RB_StudyAbroad_ViewModel() { Group_Id = userInfo.Group_Id, QIds = saIds });
}
foreach (var item in saList) {
foreach (var item in saList)
{
#region 订单
var olist = lxOrderList.Where(x => x.SourceId == item.Id).ToList();
decimal ShiShou = olist.Sum(item => item.Income - item.Refund + item.PlatformTax);
......@@ -5606,7 +5651,7 @@ namespace Edu.Module.Finance
/// </summary>
/// <param name="reserveClassId"></param>
/// <returns></returns>
public RB_Teaching_BonusDetail_ViewModel GetReserveClassHours(int reserveClassId,int groupId)
public RB_Teaching_BonusDetail_ViewModel GetReserveClassHours(int reserveClassId, int groupId)
{
return teaching_BonusDetailRepository.GetReserveClassHours(reserveClassId, groupId);
}
......@@ -5623,7 +5668,8 @@ namespace Edu.Module.Finance
public RB_Receipt_Config_ViewModel GetReceiptConfigInfo(UserInfo userInfo)
{
var model = receipt_ConfigRepository.GetList(new RB_Receipt_Config_ViewModel() { Group_Id = userInfo.Group_Id }).FirstOrDefault();
if (model != null) {
if (model != null)
{
//查询流程
var tempList = Finance_TemplateRepository.GetList(new Rb_Workflow_Template_Finance_Extend() { RB_GroupId = userInfo.Group_Id, TemplateIds = model.TempleteIds });
model.TempleteList = tempList.Select(x => x.Name).ToList();
......@@ -5636,7 +5682,8 @@ namespace Edu.Module.Finance
/// </summary>
/// <param name="demodel"></param>
/// <returns></returns>
public string SetReceiptConfingInfo(RB_Receipt_Config_ViewModel demodel) {
public string SetReceiptConfingInfo(RB_Receipt_Config_ViewModel demodel)
{
if (demodel.Id > 0)
{
Dictionary<string, object> keyValues = new Dictionary<string, object>() {
......@@ -5656,7 +5703,8 @@ namespace Edu.Module.Finance
bool flag = receipt_ConfigRepository.Update(keyValues, wheres);
return flag ? "" : "出错了,请联系管理员";
}
else {
else
{
bool flag = receipt_ConfigRepository.Insert(demodel) > 0;
return flag ? "" : "出错了,请联系管理员";
}
......@@ -5725,7 +5773,8 @@ namespace Edu.Module.Finance
bool flag = receipt_InfoRepository.Update(keyValues, wheres);
return flag ? "" : "出错了,请联系管理员";
}
else {
else
{
var list = receipt_InfoRepository.GetList(new RB_Receipt_Info_ViewModel() { Group_Id = demodel.Group_Id, FinanceId = demodel.FinanceId });
if (list.Any()) { return "该单据已生成收据,无法重复生成"; }
var fmodel = RB_FinanceRepository.GetEntity(demodel.FinanceId);
......@@ -5734,7 +5783,8 @@ namespace Edu.Module.Finance
#region 验证流程
var configModel = receipt_ConfigRepository.GetList(new RB_Receipt_Config_ViewModel() { Group_Id = demodel.Group_Id }).FirstOrDefault();
if (configModel == null || configModel.Enable != 1) { return "收据未启用,无法新增收据"; }
if (!("," + configModel.TempleteIds + ",").Contains("," + (fmodel.TemplateId ?? 0) + ",")) {
if (!("," + configModel.TempleteIds + ",").Contains("," + (fmodel.TemplateId ?? 0) + ","))
{
return "该单据流程未启用收据功能,无法新增收据";
}
#endregion
......@@ -5795,12 +5845,14 @@ namespace Edu.Module.Finance
public List<RB_Order_ViewModel> GetConsultantRankList(int empId, string startMonth, string endMonth, int group_Id)
{
var list = orderRepository.GetConsultantRankList(empId, startMonth, endMonth, group_Id);
if (list.Any()) {
if (list.Any())
{
//查询人员
string empIds = string.Join(",", list.Select(x => x.CourseConsultantId).Distinct());
var empList = accountRepository.GetEmployeeListRepository(new Model.ViewModel.User.Employee_ViewModel() { Group_Id = group_Id, QIds = empIds });
foreach (var item in list) {
foreach (var item in list)
{
item.HelpEnterName = empList.Where(x => x.Id == item.CourseConsultantId).FirstOrDefault()?.EmployeeName ?? "";
}
}
......
......@@ -534,7 +534,7 @@ SELECT tt.TeacherId,tt.OrderGuestId,tt.CurrentDeductionHours
,IFNULL(g.ClassUnitPrice,0) as ClassUnitPrice
FROM(
SELECT p.TeacherId,p.OrderGuestId,SUM(p.CurrentDeductionHours) as CurrentDeductionHours FROM rb_class_check p
WHERE p.`Status`=0 and p.Group_Id ={groupId} and p.TeacherId in ({userIds}) and p.ClassDate >= '{startMonth}' and p.ClassDate <='{endMonth} 23:59:59'
WHERE p.`Status`=0 and p.IsCalcTeacFee=1 and p.Group_Id ={groupId} and p.TeacherId in ({userIds}) and p.ClassDate >= '{startMonth}' and p.ClassDate <='{endMonth} 23:59:59'
GROUP BY p.TeacherId,p.OrderGuestId
)tt
left join rb_order_guest g on g.Id = tt.OrderGuestId
......@@ -573,10 +573,9 @@ GROUP BY tt.TeacherId,tt.OrderGuestId
{
where += $@" and p.ClassId ={classId}";
}
string sql = $@"
SELECT p.TeacherId,t2.TeacherName,t2.BaseHourFee,t2.BaseHoursEnabled,t2.EnableTime,t2.BaseHoursAdd,if(cp.PlanType=2,'预约课',c.ClassName) as ClassName,if(cp.PlanType=2,co2.CourseName,co.CourseName) as CourseName,p.ClassId,if(cp.PlanType=2,co2.AddHoursMoney,co.AddHoursMoney) as CourseAddHoursMoney,
c.ClassType,c.ClassNo,if(cp.PlanType=2,s2.SName,s.SName) as SName,c.ClassHourMinute,if(cp.PlanType=2,cp.CourseId,c.CouseId) as CouseId,p.ClassDate,p.ClassTimeId,t.StartTime as StartDate,t.EndTime as EndDate,Max(p.IsCalcTeacFee =1 then p.CurrentDeductionHours else 0 end) as CurrentDeductionHours
c.ClassType,c.ClassNo,if(cp.PlanType=2,s2.SName,s.SName) as SName,c.ClassHourMinute,if(cp.PlanType=2,cp.CourseId,c.CouseId) as CouseId,p.ClassDate,p.ClassTimeId,t.StartTime as StartDate,t.EndTime as EndDate,Max(CASE p.IsCalcTeacFee WHEN 1 THEN p.CurrentDeductionHours ELSE 0 END) as CurrentDeductionHours
FROM rb_class_check p
INNER JOIN rb_class_time t on p.ClassTimeId = t.ClassTimeId
inner join rb_class_plan cp on t.ClassPlanId = cp.ClassPlanId
......@@ -586,7 +585,7 @@ LEFT JOIN rb_course co on c.CouseId = co.CourseId
left join rb_course co2 on cp.CourseId = co2.CourseId
left join rb_school s on s.SId = c.School_Id
left join rb_school s2 on s2.SId = cp.School_Id
WHERE p.`Status`=0 and p.Group_Id ={group_Id} {where} and p.ClassDate >= '{startMonth}' and p.ClassDate <='{endMonth} 23:59:59'
WHERE p.`Status`=0 and p.IsCalcTeacFee=1 and p.Group_Id ={group_Id} {where} and p.ClassDate >= '{startMonth}' and p.ClassDate <='{endMonth} 23:59:59'
GROUP BY p.TeacherId,p.ClassId,p.ClassTimeId
ORDER BY p.ClassDate ASC
";
......@@ -605,7 +604,7 @@ ORDER BY p.ClassDate ASC
/// <returns></returns>
public List<RB_Class_Check_ViewModel> GetTeacherConsumptionHoursDetialList(string teacherIds, int schoolId, int classId, string startMonth, string endMonth, int group_Id)
{
string where = $@" ";
string where = $@" and p.IsCalcTeacFee=1 ";
if (!string.IsNullOrEmpty(teacherIds) && teacherIds != "-1" && teacherIds != "0")
{
where += $@" and p.TeacherId in({teacherIds})";
......@@ -620,7 +619,7 @@ ORDER BY p.ClassDate ASC
}
string sql = $@"
SELECT p.TeacherId,t2.TeacherName,t2.BaseHourFee,t2.BaseHoursEnabled,t2.EnableTime,if(cp.PlanType=2,'预约课',c.ClassName) as ClassName,if(cp.PlanType=2,co2.CourseName,co.CourseName) as CourseName,if(cp.PlanType=2,co2.AddHoursMoney,co.AddHoursMoney) as CourseAddHoursMoney,
SELECT p.TeacherId,t2.TeacherName,t2.BaseHourFee,p.IsCalcTeacFee,t2.BaseHoursEnabled,t2.EnableTime,if(cp.PlanType=2,'预约课',c.ClassName) as ClassName,if(cp.PlanType=2,co2.CourseName,co.CourseName) as CourseName,if(cp.PlanType=2,co2.AddHoursMoney,co.AddHoursMoney) as CourseAddHoursMoney,
p.ClassId,if(cp.PlanType=2,s2.SName,s.SName) as SName,c.ClassType,c.ClassNo,c.ClassHourMinute,if(cp.PlanType=2,cp.CourseId,c.CouseId) as CouseId,p.ClassDate,p.ClassTimeId,t.StartTime as StartDate,t.EndTime as EndDate,Max(case when p.IsCalcTeacFee =1 then p.CurrentDeductionHours else 0 end) as CurrentDeductionHours FROM rb_class_check p
INNER JOIN rb_class_time t on p.ClassTimeId = t.ClassTimeId
inner join rb_class_plan cp on t.ClassPlanId = cp.ClassPlanId
......@@ -630,7 +629,7 @@ LEFT JOIN rb_course co on c.CouseId = co.CourseId
left join rb_course co2 on cp.CourseId = co2.CourseId
left join rb_school s on s.SId = c.School_Id
left join rb_school s2 on s2.SId = cp.School_Id
WHERE p.`Status`=0 and p.Group_Id ={group_Id} {where} and p.ClassDate >= '{startMonth}' and p.ClassDate <='{endMonth} 23:59:59'
WHERE p.`Status`=0 and p.IsCalcTeacFee=1 and p.Group_Id ={group_Id} {where} and p.ClassDate >= '{startMonth}' and p.ClassDate <='{endMonth} 23:59:59'
GROUP BY p.TeacherId,p.ClassId,p.ClassTimeId
ORDER BY p.ClassDate ASC
";
......@@ -655,7 +654,7 @@ ORDER BY p.ClassDate ASC
/// <returns></returns>
public List<RB_Class_Check_ViewModel> GetStudentConsumptionHoursDetialPageList(int pageIndex, int pageSize, out long count, int teacherId, int schoolId, int classId, string startMonth, string endMonth, string studentName, int orderId, string contractNo, int groupId, int StudentId)
{
string where = $@" ";
string where = $@" and p.IsCalcTeacFee=1 ";
if (teacherId > 0)
{
where += $@" and p.TeacherId ={teacherId}";
......@@ -692,7 +691,7 @@ case when tt.ClassHours>0 and tt.TotalSub >0 then
(tt.CourseFee - tt.DiscountMoney) /tt.ClassHours
else 0 END END AS UnitPrice
FROM (
SELECT p.OrderGuestId,p.CurrentDeductionHours,t2.GuestName,p.TeacherId,t3.TeacherName,t2.OrderId,ec.ContractNo,if(cp.PlanType=2,'预约课',c.ClassName) as ClassName,c.ClassNo,if(cp.PlanType=2,co2.CourseName,co.CourseName) as CourseName,p.ClassId,if(cp.PlanType=2,cp.CourseId,c.CouseId) as CouseId
SELECT p.OrderGuestId,p.CurrentDeductionHours,p.IsCalcTeacFee,t2.GuestName,p.TeacherId,t3.TeacherName,t2.OrderId,ec.ContractNo,if(cp.PlanType=2,'预约课',c.ClassName) as ClassName,c.ClassNo,if(cp.PlanType=2,co2.CourseName,co.CourseName) as CourseName,p.ClassId,if(cp.PlanType=2,cp.CourseId,c.CouseId) as CouseId
,p.ClassDate,p.ClassTimeId,t.StartTime as StartDate,t.EndTime as EndDate,o.EnterID,o.HelpEnterId
,IFNULL(o.PreferPrice,0) -IFNULL(o.TextbookFee,0) -IFNULL(o.CoursewareFee,0) as CourseFee
,IFNULL(o.DiscountMoney,0) as DiscountMoney
......@@ -732,7 +731,7 @@ ORDER BY tt.ClassDate ASC
/// <returns></returns>
public List<RB_Class_Check_ViewModel> GetStudentConsumptionHoursDetialList(int teacherId, int schoolId, int classId, string startMonth, string endMonth, string studentName, int orderId, string contractNo, int groupId, string classIds = "", int StudentId = 0)
{
string where = $@" ";
string where = $@" and p.IsCalcTeacFee=1 ";
if (teacherId > 0)
{
where += $@" and p.TeacherId ={teacherId}";
......@@ -773,7 +772,7 @@ case when tt.ClassHours>0 and tt.TotalSub >0 then
(tt.CourseFee - tt.DiscountMoney) /tt.ClassHours
else 0 END END AS UnitPrice
FROM (
SELECT p.OrderGuestId,p.CurrentDeductionHours,t2.GuestName,p.TeacherId,t3.TeacherName,t2.OrderId,ec.ContractNo,if(cp.PlanType=2,'预约课',c.ClassName) as ClassName,c.ClassNo,if(cp.PlanType=2,co2.CourseName,co.CourseName) as CourseName,p.ClassId,if(cp.PlanType=2,cp.CourseId,c.CouseId) as CouseId
SELECT p.OrderGuestId,p.CurrentDeductionHours,p.IsCalcTeacFee,t2.GuestName,p.TeacherId,t3.TeacherName,t2.OrderId,ec.ContractNo,if(cp.PlanType=2,'预约课',c.ClassName) as ClassName,c.ClassNo,if(cp.PlanType=2,co2.CourseName,co.CourseName) as CourseName,p.ClassId,if(cp.PlanType=2,cp.CourseId,c.CouseId) as CouseId
,p.ClassDate,p.ClassTimeId,t.StartTime as StartDate,t.EndTime as EndDate,o.EnterID,o.HelpEnterId
,IFNULL(o.PreferPrice,0) -IFNULL(o.TextbookFee,0) -IFNULL(o.CoursewareFee,0) as CourseFee
,IFNULL(o.DiscountMoney,0) as DiscountMoney
......
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