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
Apr 14, 2022
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
,
}
}
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
;
}
}
}
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
;
//历史提成数据
...
...
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
...
...
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
();
}
...
...
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
}
}
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