Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
E
Education
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
黄奎
Education
Commits
a40a3979
Commit
a40a3979
authored
Aug 02, 2021
by
吴春
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
提交代码
parent
82707095
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
232 additions
and
2 deletions
+232
-2
ClassModule.cs
Edu.Module.Course/ClassModule.cs
+232
-2
No files found.
Edu.Module.Course/ClassModule.cs
View file @
a40a3979
...
...
@@ -8,7 +8,7 @@ using Edu.Model.CacheModel;
using
Edu.Model.Entity.Course
;
using
Edu.Model.Entity.Mall
;
using
Edu.Model.ViewModel.Course
;
using
Edu.Model.ViewModel.Mall
;
//
using Edu.Model.ViewModel.Mall;
using
Edu.Model.ViewModel.Reserve
;
using
Edu.Model.ViewModel.User
;
using
Edu.Repository.Course
;
...
...
@@ -581,6 +581,12 @@ namespace Edu.Module.Course
List
<
RB_Class_Plan_ViewModel
>
classPlanList
=
CreateClassPlanList
(
model
,
defaultPlanTimeList
,
BasicMinutes
);
model
.
ClassPlanList
=
classPlanList
;
#
region
同步班级到甲鹤小程序
Add
by
:
W
2021
-
08
-
02
09
:
49
// SetGoodsSpecificationValue(model);
#
endregion
return
flag
;
}
...
...
@@ -1056,10 +1062,214 @@ namespace Edu.Module.Course
});
//已经完成的上课计划
var
finishClassHours
=
oldPlanList
?.
Sum
(
qitem
=>
qitem
.
TimeHour
)
??
0
;
List
<
RB_Class_Plan_ViewModel
>
classPlanList
=
class_PlanRepository
.
CreateClassPlanRepository
(
model
,
defaultPlanTimeList
,
finishClassHours
,
BasicMinutes
);
List
<
RB_Class_Plan_ViewModel
>
classPlanList
=
new
List
<
RB_Class_Plan_ViewModel
>();
if
(
model
.
ClassHours
>
0
&&
defaultPlanTimeList
!=
null
&&
defaultPlanTimeList
.
Count
>
0
)
{
var
srartDate
=
model
.
OpenTime
;
if
(
model
.
OpenTime
<
DateTime
.
Now
)
{
srartDate
=
DateTime
.
Now
;
}
//按周排课和按月排课
if
(
model
.
ClassStyle
==
ClassStyleEnum
.
Week
||
model
.
ClassStyle
==
ClassStyleEnum
.
Month
)
{
int
i
=
0
;
double
totalHours
=
Convert
.
ToDouble
(
finishClassHours
);
while
(
model
.
ClassHours
>
totalHours
)
{
var
newDate
=
srartDate
.
AddDays
(
i
);
foreach
(
var
item
in
model
.
WeekDayList
)
{
var
planModel
=
new
RB_Class_Plan_ViewModel
()
{
ClassId
=
model
.
ClassId
,
ClassPlanId
=
0
,
ClassRoomId
=
model
.
ClassRoomId
,
Group_Id
=
model
.
Group_Id
,
School_Id
=
model
.
School_Id
,
PlanTimeList
=
new
List
<
RB_Class_Time_ViewModel
>(),
TeacherId
=
model
.
Teacher_Id
,
ClassDate
=
newDate
};
if
(
model
.
ClassStyle
==
ClassStyleEnum
.
Week
)
{
switch
(
item
)
{
case
"1"
:
if
(
newDate
.
DayOfWeek
==
DayOfWeek
.
Monday
)
{
var
timeList
=
defaultPlanTimeList
.
Where
(
qitem
=>
qitem
.
DateList
.
Contains
(
item
))?.
FirstOrDefault
()?.
TimeList
;
if
(
timeList
!=
null
&&
timeList
.
Count
>
0
)
{
var
dayHours
=
CalcDayClassHoursModule
(
timeList
,
planModel
.
PlanTimeList
,
model
,
BasicMinutes
);
totalHours
+=
dayHours
;
classPlanList
.
Add
(
planModel
);
}
}
break
;
case
"2"
:
if
(
newDate
.
DayOfWeek
==
DayOfWeek
.
Tuesday
)
{
var
timeList
=
defaultPlanTimeList
.
Where
(
qitem
=>
qitem
.
DateList
.
Contains
(
item
))?.
FirstOrDefault
()?.
TimeList
;
if
(
timeList
!=
null
&&
timeList
.
Count
>
0
)
{
var
dayHours
=
CalcDayClassHoursModule
(
timeList
,
planModel
.
PlanTimeList
,
model
,
BasicMinutes
);
totalHours
+=
dayHours
;
classPlanList
.
Add
(
planModel
);
}
}
break
;
case
"3"
:
if
(
newDate
.
DayOfWeek
==
DayOfWeek
.
Wednesday
)
{
var
timeList
=
defaultPlanTimeList
.
Where
(
qitem
=>
qitem
.
DateList
.
Contains
(
item
))?.
FirstOrDefault
()?.
TimeList
;
if
(
timeList
!=
null
&&
timeList
.
Count
>
0
)
{
var
dayHours
=
CalcDayClassHoursModule
(
timeList
,
planModel
.
PlanTimeList
,
model
,
BasicMinutes
);
totalHours
+=
dayHours
;
classPlanList
.
Add
(
planModel
);
}
}
break
;
case
"4"
:
if
(
newDate
.
DayOfWeek
==
DayOfWeek
.
Thursday
)
{
var
timeList
=
defaultPlanTimeList
.
Where
(
qitem
=>
qitem
.
DateList
.
Contains
(
item
))?.
FirstOrDefault
()?.
TimeList
;
if
(
timeList
!=
null
&&
timeList
.
Count
>
0
)
{
var
dayHours
=
CalcDayClassHoursModule
(
timeList
,
planModel
.
PlanTimeList
,
model
,
BasicMinutes
);
totalHours
+=
dayHours
;
classPlanList
.
Add
(
planModel
);
}
}
break
;
case
"5"
:
if
(
newDate
.
DayOfWeek
==
DayOfWeek
.
Friday
)
{
var
timeList
=
defaultPlanTimeList
.
Where
(
qitem
=>
qitem
.
DateList
.
Contains
(
item
))?.
FirstOrDefault
()?.
TimeList
;
if
(
timeList
!=
null
&&
timeList
.
Count
>
0
)
{
var
dayHours
=
CalcDayClassHoursModule
(
timeList
,
planModel
.
PlanTimeList
,
model
,
BasicMinutes
);
totalHours
+=
dayHours
;
classPlanList
.
Add
(
planModel
);
}
}
break
;
case
"6"
:
if
(
newDate
.
DayOfWeek
==
DayOfWeek
.
Saturday
)
{
var
timeList
=
defaultPlanTimeList
.
Where
(
qitem
=>
qitem
.
DateList
.
Contains
(
item
))?.
FirstOrDefault
()?.
TimeList
;
if
(
timeList
!=
null
&&
timeList
.
Count
>
0
)
{
var
dayHours
=
CalcDayClassHoursModule
(
timeList
,
planModel
.
PlanTimeList
,
model
,
BasicMinutes
);
totalHours
+=
dayHours
;
classPlanList
.
Add
(
planModel
);
}
}
break
;
case
"7"
:
if
(
newDate
.
DayOfWeek
==
DayOfWeek
.
Sunday
)
{
var
timeList
=
defaultPlanTimeList
.
Where
(
qitem
=>
qitem
.
DateList
.
Contains
(
item
))?.
FirstOrDefault
()?.
TimeList
;
if
(
timeList
!=
null
&&
timeList
.
Count
>
0
)
{
var
dayHours
=
CalcDayClassHoursModule
(
timeList
,
planModel
.
PlanTimeList
,
model
,
BasicMinutes
);
totalHours
+=
dayHours
;
classPlanList
.
Add
(
planModel
);
}
}
break
;
}
}
else
if
(
model
.
ClassStyle
==
ClassStyleEnum
.
Month
)
{
if
(
newDate
.
Day
==
Convert
.
ToInt32
(
item
))
{
var
timeList
=
defaultPlanTimeList
.
Where
(
qitem
=>
qitem
.
DateList
.
Contains
(
item
))?.
FirstOrDefault
()?.
TimeList
;
if
(
timeList
!=
null
&&
timeList
.
Count
>
0
)
{
var
dayHours
=
CalcDayClassHoursModule
(
timeList
,
planModel
.
PlanTimeList
,
model
,
BasicMinutes
);
totalHours
+=
dayHours
;
classPlanList
.
Add
(
planModel
);
}
}
}
}
i
++;
}
}
//固定日期
else
if
(
model
.
ClassStyle
==
ClassStyleEnum
.
FixedDate
)
{
foreach
(
var
item
in
model
.
WeekDayList
)
{
var
planModel
=
new
RB_Class_Plan_ViewModel
()
{
ClassId
=
model
.
ClassId
,
ClassPlanId
=
0
,
ClassRoomId
=
model
.
ClassRoomId
,
Group_Id
=
model
.
Group_Id
,
School_Id
=
model
.
School_Id
,
PlanTimeList
=
new
List
<
RB_Class_Time_ViewModel
>(),
TeacherId
=
model
.
Teacher_Id
,
ClassDate
=
Convert
.
ToDateTime
(
item
)
};
var
timeList
=
defaultPlanTimeList
.
Where
(
qitem
=>
qitem
.
DateList
.
Contains
(
item
))?.
FirstOrDefault
()?.
TimeList
;
if
(
timeList
!=
null
&&
timeList
.
Count
>
0
)
{
CalcDayClassHoursModule
(
timeList
,
planModel
.
PlanTimeList
,
model
,
BasicMinutes
);
classPlanList
.
Add
(
planModel
);
}
}
}
//约课
else
{
}
}
return
classPlanList
;
}
/// <summary>
/// 计算每天课时
/// </summary>
/// <param name="timeList"></param>
/// <param name="classTimeList"></param>
/// <param name="model"></param>
/// <returns></returns>
private
double
CalcDayClassHoursModule
(
List
<
TimeItem
>
timeList
,
List
<
RB_Class_Time_ViewModel
>
classTimeList
,
RB_Class_ViewModel
model
,
int
BasicMinutes
)
{
double
dayClassHours
=
0
;
double
dayMinutes
=
0
;
foreach
(
var
sItem
in
timeList
)
{
var
timeModel
=
new
RB_Class_Time_ViewModel
()
{
StartTime
=
sItem
.
StartTime
,
EndTime
=
sItem
.
EndTime
,
TimeHour
=
sItem
.
TimeHour
,
};
classTimeList
.
Add
(
timeModel
);
var
startDate
=
Convert
.
ToDateTime
(
DateTime
.
Now
.
ToString
(
"yyyy-MM-dd"
)
+
" "
+
sItem
.
StartTime
+
":00"
);
var
endDate
=
Convert
.
ToDateTime
(
DateTime
.
Now
.
ToString
(
"yyyy-MM-dd"
)
+
" "
+
sItem
.
EndTime
+
":00"
);
TimeSpan
span
=
endDate
.
Subtract
(
startDate
);
if
(
span
.
TotalMinutes
>
0
)
{
dayMinutes
+=
span
.
TotalMinutes
;
}
}
if
(
model
.
ClassHourMinute
>
0
)
{
dayClassHours
=
dayMinutes
/
model
.
ClassHourMinute
;
}
else
{
dayClassHours
=
dayMinutes
/
BasicMinutes
;
}
return
dayClassHours
;
}
/// <summary>
/// 根据班级编号获取班级详细信息
/// </summary>
...
...
@@ -3651,6 +3861,11 @@ namespace Edu.Module.Course
#
region
甲鹤小程序商品信息
/// <summary>
/// 同步班级到甲鹤小程序
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
//public bool SetGoodsSpecificationValue(RB_Class_ViewModel model)
//{
// bool flag = false;
...
...
@@ -3784,6 +3999,21 @@ namespace Edu.Module.Course
// #endregion
// }
// }
// return flag;
//}
/// <summary>
///
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
//public bool UpdateGoodsSpecificationValue(RB_Class_ViewModel model)
//{
// bool flag = false;
// return flag;
//}
#
endregion
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment