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
b9d4b561
Commit
b9d4b561
authored
3 years ago
by
liudong1993
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/Kui2/education
parents
f4a0ece5
6e952f44
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
231 additions
and
19 deletions
+231
-19
CheckTypeEnum.cs
Edu.Common/Enum/User/CheckTypeEnum.cs
+25
-0
RB_Teacher_Assessment_Details.cs
...el/Entity/DataStatistics/RB_Teacher_Assessment_Details.cs
+8
-2
EmployeeBonusModule.cs
Edu.Module.Course/EmployeeBonusModule.cs
+4
-1
TeacherAssessmentModule.cs
Edu.Module.User/TeacherAssessmentModule.cs
+103
-10
RB_Teacher_Assessment_DetailsRepository.cs
...DataStatistics/RB_Teacher_Assessment_DetailsRepository.cs
+8
-0
TeacherAssessmentController.cs
...pi/Controllers/DataService/TeacherAssessmentController.cs
+83
-6
No files found.
Edu.Common/Enum/User/CheckTypeEnum.cs
0 → 100644
View file @
b9d4b561
using
Edu.Common.Plugin
;
using
System
;
using
System.Collections.Generic
;
using
System.Text
;
namespace
Edu.Common.Enum.User
{
/// <summary>
/// 打分类型
/// </summary>
public
enum
CheckTypeEnum
{
/// <summary>
/// 教学主管
/// </summary>
[
EnumField
(
"教学主管"
)]
JiaoXueManager
=
1
,
/// <summary>
/// 教务主管
/// </summary>
[
EnumField
(
"教务主管"
)]
JiaoWuManager
=
2
,
}
}
This diff is collapsed.
Click to expand it.
Edu.Model/Entity/DataStatistics/RB_Teacher_Assessment_Details.cs
View file @
b9d4b561
using
System
;
using
Edu.Common.Enum.User
;
using
System
;
using
System.Collections.Generic
;
using
System.Text
;
using
VT.FW.DB
;
...
...
@@ -40,7 +41,7 @@ namespace Edu.Model.Entity.DataStatistics
/// <summary>
/// 考核类型(1-教学主管,2-教务主管)
/// </summary>
public
int
CheckType
{
get
;
set
;
}
public
CheckTypeEnum
CheckType
{
get
;
set
;
}
/// <summary>
/// 得分
...
...
@@ -52,5 +53,10 @@ namespace Edu.Model.Entity.DataStatistics
/// </summary>
public
DateTime
CreateTime
{
get
;
set
;
}
/// <summary>
/// 创建人
/// </summary>
public
int
CreateBy
{
get
;
set
;
}
}
}
This diff is collapsed.
Click to expand it.
Edu.Module.Course/EmployeeBonusModule.cs
View file @
b9d4b561
...
...
@@ -393,7 +393,7 @@ namespace Edu.Module.Course
CurGuestNum
=
curNum
,
CurOrderMoney
=
curOrderMoney
,
Group_Id
=
GroupId
,
CurRewardMoney
=
GetStepAwardAmount
(
item
,
curNum
),
CreateBy
=
1
,
CreateTime
=
DateTime
.
Now
,
UpdateBy
=
1
,
...
...
@@ -405,6 +405,9 @@ namespace Edu.Module.Course
//ClueNumSalary = ClueCount > 5 ? item.ClueNumSalary : 0,
IsIssue
=
0
};
//HK 2022-04-14去掉
//pModel.CurRewardMoney = GetStepAwardAmount(item, curNum);
pModel
.
CurRewardMoney
=
0
;
pModel
.
IsReach
=
pModel
.
CurOrderMoney
>
item
.
MonthGoalMoney
?
1
:
0
;
//历史提成数据
...
...
This diff is collapsed.
Click to expand it.
Edu.Module.User/TeacherAssessmentModule.cs
View file @
b9d4b561
using
Edu.Common.Enum
;
using
Edu.AOP.CustomerAttribute
;
using
Edu.Common.Enum
;
using
Edu.Common.Enum.User
;
using
Edu.Model.CacheModel
;
using
Edu.Model.ViewModel.DataStatistics
;
using
Edu.Model.ViewModel.User
;
using
Edu.Repository.DataStatistics
;
...
...
@@ -39,6 +42,11 @@ namespace Edu.Module.User
/// </summary>
private
readonly
RB_AccountRepository
accountRepository
=
new
RB_AccountRepository
();
/// <summary>
/// 字典仓储层对象
/// </summary>
private
readonly
Rb_dictvalueRepository
dictvalueRepository
=
new
Rb_dictvalueRepository
();
#
region
基础配置
/// <summary>
...
...
@@ -236,14 +244,44 @@ namespace Edu.Module.User
return
list
;
}
/// <summary>
/// 获取字典
/// </summary>
/// <param name="group_Id"></param>
/// <param name="key"></param>
/// <returns></returns>
public
List
<
RB_Dictvalue_Extend
>
GetDictValueListModule
(
int
group_Id
,
string
key
)
{
return
dictvalueRepository
.
GetList
(
new
RB_Dictvalue_Extend
()
{
RB_Group_id
=
group_Id
,
DictKey
=
key
});
}
/// <summary>
/// 获取老师考核数据
/// </summary>
/// <param name="TeacherAccountId"></param>
/// <param name="YearStr"></param>
/// <param name="MonthStr"></param>
/// <param name="UserInfo"></param>
/// <returns></returns>
public
object
GetTeacherAssessmentModule
(
int
TeacherAccountId
,
int
YearStr
=
2022
,
int
MonthStr
=
4
)
public
object
GetTeacherAssessmentModule
(
int
TeacherAccountId
,
int
YearStr
,
int
MonthStr
,
UserInfo
userInfo
)
{
object
result
=
new
object
();
CheckTypeEnum
CheckType
=
0
;
//获取字典配置的教学主管和教务主管
var
dicModel
=
GetDictValueListModule
(
userInfo
.
Group_Id
,
"TEACHER_ASSESSMENT"
).
FirstOrDefault
();
if
(
dicModel
!=
null
)
{
//教学主管
if
(
dicModel
.
Code
.
Equals
(
userInfo
.
Id
.
ToString
()))
{
CheckType
=
CheckTypeEnum
.
JiaoXueManager
;
}
//教务主管
if
(
dicModel
.
Content
.
Equals
(
userInfo
.
Id
.
ToString
()))
{
CheckType
=
CheckTypeEnum
.
JiaoWuManager
;
}
}
var
extModel
=
teacher_AssessmentRepository
.
GetTeacherAssessmentEntityRepository
(
new
RB_Teacher_Assessment_Extend
()
{
YearStr
=
YearStr
,
...
...
@@ -252,7 +290,9 @@ namespace Edu.Module.User
});
var
detailsList
=
teacher_Assessment_DetailsRepository
.
GetTeacherAssessmentDetailsListRepository
(
new
RB_Teacher_Assessment_Details_Extend
()
{
TeacherAssessmentId
=
(
extModel
?.
Id
??
0
)
TeacherAssessmentId
=
(
extModel
?.
Id
??
0
),
CreateBy
=
userInfo
.
Id
,
CheckType
=
CheckType
});
var
typeList
=
GetAssessmentTypeListModule
(
new
RB_Assessment_Type_Extend
()
{
});
List
<
object
>
list
=
new
List
<
object
>();
...
...
@@ -261,31 +301,39 @@ namespace Edu.Module.User
List
<
object
>
subList
=
new
List
<
object
>();
foreach
(
var
subItem
in
item
.
SubtypeList
)
{
var
tempDetail
=
detailsList
.
Where
(
qitem
=>
qitem
.
AssessmentTypeId
==
item
.
Id
&&
qitem
.
AssessmentSubTypeId
==
subItem
.
Id
&&
qitem
.
CheckType
==
CheckType
)?.
FirstOrDefault
();
List
<
object
>
optionList
=
new
List
<
object
>();
foreach
(
var
tItem
in
subItem
.
OptionList
)
{
bool
IsCheck
=
false
;
if
((
tempDetail
?.
CheckId
??
0
)
==
tItem
.
LevelId
)
{
IsCheck
=
true
;
}
optionList
.
Add
(
new
{
tItem
.
LevelId
,
tItem
.
LevelTitle
,
tItem
.
LevelDesc
,
tItem
.
IsCheck
,
IsCheck
,
tItem
.
LevelScore
,
});
}
var
sObj
=
new
{
CheckId
=
0
,
CheckScore
=
0
,
subItem
.
AssessmentTypeId
,
Id
=
tempDetail
?.
Id
??
0
,
CheckId
=
tempDetail
?.
CheckId
??
0
,
CheckScore
=
tempDetail
?.
CheckScore
??
0
,
AssessmentSubtypeId
=
subItem
.
Id
,
subItem
.
SubTypeName
,
OptionList
=
optionList
,
OptionList
=
optionList
,
};
subList
.
Add
(
sObj
);
}
var
obj
=
new
{
item
.
TypeName
,
AssessmentTypeId
=
item
.
Id
,
SubtypeList
=
subList
};
list
.
Add
(
obj
);
...
...
@@ -309,7 +357,8 @@ namespace Edu.Module.User
Other
=
extModel
?.
Other
??
""
,
TeacherSignDate
=
Common
.
ConvertHelper
.
FormatTime
(
extModel
?.
TeacherSignDate
),
AuditStatus
=
extModel
?.
AuditStatus
??
0
,
DetailsList
=
list
DetailsList
=
list
,
CheckType
,
};
return
result
;
}
...
...
@@ -317,10 +366,54 @@ namespace Edu.Module.User
/// <summary>
/// 保存老师业绩考核
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public
bool
SaveTeacherAssessmentModule
()
[
TransactionCallHandler
]
public
virtual
bool
SaveTeacherAssessmentModule
(
RB_Teacher_Assessment_Extend
model
)
{
bool
flag
=
false
;
if
(
model
.
Id
>
0
)
{
Dictionary
<
string
,
object
>
fileds
=
new
Dictionary
<
string
,
object
>()
{
{
nameof
(
RB_Teacher_Assessment_Extend
.
TeacherScore
),
model
.
TeacherScore
},
{
nameof
(
RB_Teacher_Assessment_Extend
.
JiaoWuScore
),
model
.
JiaoWuScore
},
{
nameof
(
RB_Teacher_Assessment_Extend
.
TotalScore
),
model
.
TotalScore
},
};
flag
=
teacher_AssessmentRepository
.
Update
(
fileds
,
new
WhereHelper
(
nameof
(
RB_Teacher_Assessment_Extend
.
Id
),
model
.
Id
));
}
else
{
var
newId
=
teacher_AssessmentRepository
.
Insert
(
model
);
model
.
Id
=
newId
;
flag
=
newId
>
0
;
}
if
(
flag
&&
model
.
DetailsList
!=
null
&&
model
.
DetailsList
.
Count
>
0
)
{
foreach
(
var
item
in
model
.
DetailsList
)
{
item
.
TeacherAssessmentId
=
model
.
Id
;
if
(
flag
)
{
if
(
item
.
Id
>
0
)
{
Dictionary
<
string
,
object
>
subFileds
=
new
Dictionary
<
string
,
object
>()
{
{
nameof
(
RB_Teacher_Assessment_Details_Extend
.
CheckId
),
item
.
CheckId
},
{
nameof
(
RB_Teacher_Assessment_Details_Extend
.
CheckScore
),
item
.
CheckScore
},
{
nameof
(
RB_Teacher_Assessment_Details_Extend
.
CheckType
),
item
.
CheckType
},
};
flag
=
teacher_Assessment_DetailsRepository
.
Update
(
subFileds
,
new
WhereHelper
(
nameof
(
RB_Teacher_Assessment_Details_Extend
.
Id
),
item
.
Id
));
}
else
{
var
newDetailId
=
teacher_Assessment_DetailsRepository
.
Insert
(
item
);
item
.
Id
=
newDetailId
;
flag
=
newDetailId
>
0
;
}
}
}
}
return
flag
;
}
#
endregion
...
...
This diff is collapsed.
Click to expand it.
Edu.Repository/DataStatistics/RB_Teacher_Assessment_DetailsRepository.cs
View file @
b9d4b561
...
...
@@ -35,6 +35,14 @@ WHERE 1=1
{
builder
.
AppendFormat
(
@" AND A.{0} IN({1}) "
,
nameof
(
RB_Teacher_Assessment_Details_Extend
.
TeacherAssessmentId
),
query
.
QTeacherAssessmentIds
);
}
if
(
query
.
CreateBy
>
0
)
{
builder
.
AppendFormat
(
@" AND A.{0} IN({1}) "
,
nameof
(
RB_Teacher_Assessment_Details_Extend
.
CreateBy
),
query
.
CreateBy
);
}
if
(
query
.
CheckType
>
0
)
{
builder
.
AppendFormat
(
@" AND A.{0} IN({1}) "
,
nameof
(
RB_Teacher_Assessment_Details_Extend
.
CheckType
),
(
int
)
query
.
CheckType
);
}
}
return
Get
<
RB_Teacher_Assessment_Details_Extend
>(
builder
.
ToString
()).
ToList
();
}
...
...
This diff is collapsed.
Click to expand it.
Edu.WebApi/Controllers/DataService/TeacherAssessmentController.cs
View file @
b9d4b561
using
Edu.Cache.User
;
using
Edu.Common.API
;
using
Edu.Common.Enum.User
;
using
Edu.Common.Plugin
;
using
Edu.Model.ViewModel.DataStatistics
;
using
Edu.Module.User
;
...
...
@@ -24,7 +25,7 @@ namespace Edu.WebApi.Controllers.DataService
/// <summary>
/// 老师考评类型配置处理类对象
/// </summary>
private
readonly
TeacherAssessmentModule
teacherAssessmentModule
=
new
TeacherAssessmentModule
();
private
readonly
TeacherAssessmentModule
teacherAssessmentModule
=
AOP
.
AOPHelper
.
CreateAOPObject
<
TeacherAssessmentModule
>
();
#
region
基础配置
...
...
@@ -85,7 +86,7 @@ namespace Edu.WebApi.Controllers.DataService
JObject
sObj
=
JObject
.
Parse
(
subItem
.
ToString
());
subModel
.
OptionList
.
Add
(
new
SubtypeItem
()
{
LevelId
=
LevelId
,
LevelId
=
LevelId
,
LevelTitle
=
sObj
.
GetStringValue
(
"LevelTitle"
),
LevelDesc
=
sObj
.
GetStringValue
(
"LevelDesc"
),
LevelScore
=
sObj
.
GetDecimal
(
"LevelScore"
),
...
...
@@ -199,10 +200,17 @@ namespace Edu.WebApi.Controllers.DataService
public
ApiResult
GetTeacherAssessmentInfo
()
{
int
TeacherAccountId
=
base
.
ParmJObj
.
GetInt
(
"TeacherAccountId"
);
var
obj
=
teacherAssessmentModule
.
GetTeacherAssessmentModule
(
TeacherAccountId
);
int
YearStr
=
base
.
ParmJObj
.
GetInt
(
"YearStr"
);
int
MonthStr
=
base
.
ParmJObj
.
GetInt
(
"MonthStr"
);
var
obj
=
teacherAssessmentModule
.
GetTeacherAssessmentModule
(
TeacherAccountId
,
YearStr
,
MonthStr
,
base
.
UserInfo
);
return
ApiResult
.
Success
(
data
:
obj
);
}
public
ApiResult
GetTeacherAssessmentDetail
()
{
return
ApiResult
.
Failed
();
}
/// <summary>
/// 保存教师考核信息
/// </summary>
...
...
@@ -210,11 +218,80 @@ namespace Edu.WebApi.Controllers.DataService
[
HttpPost
]
public
ApiResult
SaveTeacherAssessmentInfo
()
{
var
flag
=
teacherAssessmentModule
.
SaveTeacherAssessmentModule
();
return
flag
?
ApiResult
.
Success
()
:
ApiResult
.
Failed
();
}
var
model
=
new
RB_Teacher_Assessment_Extend
()
{
Id
=
base
.
ParmJObj
.
GetInt
(
"Id"
),
YearStr
=
base
.
ParmJObj
.
GetInt
(
"YearStr"
),
MonthStr
=
base
.
ParmJObj
.
GetInt
(
"MonthStr"
),
TeacherAccountId
=
base
.
ParmJObj
.
GetInt
(
"TeacherAccountId"
),
TeacherScore
=
base
.
ParmJObj
.
GetDecimal
(
"TeacherScore"
),
JiaoWuScore
=
base
.
ParmJObj
.
GetDecimal
(
"JiaoWuScore"
),
};
if
(
model
.
YearStr
<=
0
||
model
.
MonthStr
<=
0
)
{
return
ApiResult
.
Failed
(
message
:
"请选择时间!"
);
}
if
(
model
.
TeacherAccountId
<=
0
)
{
return
ApiResult
.
Failed
(
message
:
"请选择老师!"
);
}
CheckTypeEnum
CheckType
=
(
CheckTypeEnum
)
base
.
ParmJObj
.
GetInt
(
"CheckType"
);
model
.
DetailsList
=
new
List
<
RB_Teacher_Assessment_Details_Extend
>();
var
detailsLists
=
base
.
ParmJObj
.
GetStringValue
(
"DetailsList"
);
if
(!
string
.
IsNullOrEmpty
(
detailsLists
))
{
JArray
dArray
=
JArray
.
Parse
(
detailsLists
);
if
(
dArray
!=
null
&&
dArray
.
Count
>
0
)
{
foreach
(
var
item
in
dArray
)
{
JObject
sObj
=
JObject
.
Parse
(
item
.
ToString
());
string
subtypeListStr
=
sObj
.
GetStringValue
(
"SubtypeList"
);
if
(!
string
.
IsNullOrEmpty
(
subtypeListStr
))
{
JArray
subArray
=
JArray
.
Parse
(
subtypeListStr
);
if
(
subArray
!=
null
&&
subArray
.
Count
>
0
)
{
foreach
(
var
subItem
in
subArray
)
{
JObject
tObj
=
JObject
.
Parse
(
subItem
.
ToString
());
var
dModel
=
new
RB_Teacher_Assessment_Details_Extend
()
{
Id
=
sObj
.
GetInt
(
"Id"
),
AssessmentTypeId
=
sObj
.
GetInt
(
"AssessmentTypeId"
),
AssessmentSubTypeId
=
tObj
.
GetInt
(
"AssessmentSubtypeId"
),
CheckId
=
tObj
.
GetInt
(
"CheckId"
),
CheckScore
=
tObj
.
GetDecimal
(
"CheckScore"
),
CheckType
=
CheckType
,
CreateTime
=
DateTime
.
Now
,
CreateBy
=
base
.
UserInfo
.
Id
,
};
model
.
DetailsList
.
Add
(
dModel
);
}
}
}
}
}
}
if
(
CheckType
==
CheckTypeEnum
.
JiaoXueManager
)
{
model
.
TeacherScore
=
model
.
DetailsList
.
Where
(
qitem
=>
qitem
.
CheckType
==
CheckTypeEnum
.
JiaoXueManager
).
Sum
(
qitem
=>
qitem
.
CheckScore
);
}
else
if
(
CheckType
==
CheckTypeEnum
.
JiaoWuManager
)
{
model
.
JiaoWuScore
=
model
.
DetailsList
.
Where
(
qitem
=>
qitem
.
CheckType
==
CheckTypeEnum
.
JiaoWuManager
).
Sum
(
qitem
=>
qitem
.
CheckScore
);
}
//总分=(教學主管考核*30%+教务主管考核*70%)
model
.
TotalScore
=
model
.
TeacherScore
*
Convert
.
ToDecimal
(
0.3
)
+
model
.
JiaoWuScore
*
Convert
.
ToDecimal
(
0.7
);
model
.
Group_Id
=
base
.
UserInfo
.
Group_Id
;
model
.
School_Id
=
base
.
UserInfo
.
School_Id
;
model
.
CreateBy
=
base
.
UserInfo
.
Id
;
model
.
CreateTime
=
DateTime
.
Now
;
var
flag
=
teacherAssessmentModule
.
SaveTeacherAssessmentModule
(
model
);
return
flag
?
ApiResult
.
Success
()
:
ApiResult
.
Failed
();
}
#
endregion
}
}
This diff is collapsed.
Click to expand it.
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