Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
performance
Overview
Overview
Details
Activity
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
zry
performance
Commits
91ced9f1
Commit
91ced9f1
authored
Aug 19, 2021
by
钟博
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'feature/个人绩效查询' into feature/个人账号登陆查询绩效
parents
87d8d98c
3cb09656
Hide whitespace changes
Inline
Side-by-side
Showing
25 changed files
with
1176 additions
and
1141 deletions
+1176
-1141
performance/Performance.Api/Controllers/AllotController.cs
+14
-63
performance/Performance.Api/Controllers/SecondAllotController.cs
+4
-4
performance/Performance.Api/wwwroot/Performance.Api.xml
+6
-0
performance/Performance.Api/wwwroot/Performance.DtoModels.xml
+115
-0
performance/Performance.Api/wwwroot/Performance.EntityModels.xml
+35
-384
performance/Performance.DtoModels/AutoMapper/AutoMapperConfigs.cs
+3
-0
performance/Performance.DtoModels/Enum.cs
+16
-0
performance/Performance.DtoModels/Response/EmployeeReservedDto.cs
+105
-0
performance/Performance.DtoModels/Response/OwnerPerformanceDto.cs
+27
-0
performance/Performance.EntityModels/Context/PerformanceDbContext.cs
+6
-6
performance/Performance.EntityModels/Entity/res_accountdoctor.cs
+124
-124
performance/Performance.EntityModels/Entity/res_accountnurse.cs
+119
-119
performance/Performance.EntityModels/Entity/res_reserved.cs
+174
-174
performance/Performance.EntityModels/Other/view_allot_result.cs
+46
-0
performance/Performance.Repository/PerforReportRepository .cs
+19
-0
performance/Performance.Repository/Repository/PerforResaccountdoctorRepository.cs
+18
-18
performance/Performance.Repository/Repository/PerforResaccountnurseRepository.cs
+18
-18
performance/Performance.Repository/Repository/PerforresreservedRepository.cs
+18
-18
performance/Performance.Services/AllotCompute/ResultComputeService.cs
+166
-169
performance/Performance.Services/AllotService.cs
+124
-40
performance/Performance.Services/ConfigService.cs
+1
-1
performance/Performance.Services/PerExcelService/PerSheetService.cs
+2
-2
performance/Performance.Services/SecondAllotService.cs
+1
-1
performance/Performance.Services/UnitTypeUtil.cs
+7
-0
performance/Performance.Services/UserService.cs
+8
-0
No files found.
performance/Performance.Api/Controllers/AllotController.cs
View file @
91ced9f1
...
@@ -458,70 +458,8 @@ public ApiResponse Reserved([FromBody] ReservedRequest request)
...
@@ -458,70 +458,8 @@ public ApiResponse Reserved([FromBody] ReservedRequest request)
return
new
ApiResponse
(
ResponseType
.
ParameterError
,
"绩效信息无效"
);
return
new
ApiResponse
(
ResponseType
.
ParameterError
,
"绩效信息无效"
);
var
userid
=
_claim
.
GetUserId
();
var
userid
=
_claim
.
GetUserId
();
var
reserveds
=
_allotService
.
GetReserved
(
request
.
HospitalId
,
request
.
Year
,
userid
);
var
reserveds
=
_allotService
.
GetReserved
(
request
.
HospitalId
,
request
.
Year
,
userid
);
return
new
ApiResponse
(
ResponseType
.
OK
,
reserveds
);
#
region
格式转换
var
result
=
reserveds
?.
Select
(
w
=>
new
{
w
.
HospitalId
,
w
.
Year
,
w
.
UnitType
,
w
.
AccountingUnit
,
w
.
EmployeeName
,
w
.
JobNumber
,
JanReseFee
=
w
.
JanFee
*
w
.
JanRatio
,
JanGiveFee
=
w
.
JanFee
*
(
1
-
w
.
JanRatio
),
FebReseFee
=
w
.
FebFee
*
w
.
FebRatio
,
FebGiveFee
=
w
.
FebFee
*
(
1
-
w
.
FebRatio
),
MarReseFee
=
w
.
MarFee
*
w
.
MarRatio
,
MarGiveFee
=
w
.
MarFee
*
(
1
-
w
.
MarRatio
),
AprReseFee
=
w
.
AprFee
*
w
.
AprRatio
,
AprGiveFee
=
w
.
AprFee
*
(
1
-
w
.
AprRatio
),
MayReseFee
=
w
.
MayFee
*
w
.
MayRatio
,
MayGiveFee
=
w
.
MayFee
*
(
1
-
w
.
MayRatio
),
JunReseFee
=
w
.
JunFee
*
w
.
JunRatio
,
JunGiveFee
=
w
.
JunFee
*
(
1
-
w
.
JunRatio
),
JulReseFee
=
w
.
JulFee
*
w
.
JulRatio
,
JulGiveFee
=
w
.
JulFee
*
(
1
-
w
.
JulRatio
),
AugReseFee
=
w
.
AugFee
*
w
.
AugRatio
,
AugGiveFee
=
w
.
AugFee
*
(
1
-
w
.
AugRatio
),
SepReseFee
=
w
.
SepFee
*
w
.
SepRatio
,
SepGiveFee
=
w
.
SepFee
*
(
1
-
w
.
SepRatio
),
OctReseFee
=
w
.
OctFee
*
w
.
OctRatio
,
OctGiveFee
=
w
.
OctFee
*
(
1
-
w
.
OctRatio
),
NovReseFee
=
w
.
NovFee
*
w
.
NovRatio
,
NovGiveFee
=
w
.
NovFee
*
(
1
-
w
.
NovRatio
),
DecReseFee
=
w
.
DecFee
*
w
.
DecRatio
,
DecGiveFee
=
w
.
DecFee
*
(
1
-
w
.
DecRatio
),
TotalReseFee
=
(
w
.
JanFee
*
w
.
JanRatio
??
0
)
+
(
w
.
FebFee
*
w
.
FebRatio
??
0
)
+
(
w
.
MarFee
*
w
.
MarRatio
??
0
)
+
(
w
.
AprFee
*
w
.
AprRatio
??
0
)
+
(
w
.
MayFee
*
w
.
MayRatio
??
0
)
+
(
w
.
JunFee
*
w
.
JunRatio
??
0
)
+
(
w
.
JulFee
*
w
.
JulRatio
??
0
)
+
(
w
.
AugFee
*
w
.
AugRatio
??
0
)
+
(
w
.
SepFee
*
w
.
SepRatio
??
0
)
+
(
w
.
OctFee
*
w
.
OctRatio
??
0
)
+
(
w
.
NovFee
*
w
.
NovRatio
??
0
)
+
(
w
.
DecFee
*
w
.
DecRatio
??
0
),
TotalGiveFee
=
(
w
.
JanFee
*
(
1
-
w
.
JanRatio
)
??
0
)
+
(
w
.
FebFee
*
(
1
-
w
.
FebRatio
)
??
0
)
+
(
w
.
MarFee
*
(
1
-
w
.
MarRatio
)
??
0
)
+
(
w
.
AprFee
*
(
1
-
w
.
AprRatio
)
??
0
)
+
(
w
.
MayFee
*
(
1
-
w
.
MayRatio
)
??
0
)
+
(
w
.
JunFee
*
(
1
-
w
.
JunRatio
)
??
0
)
+
(
w
.
JulFee
*
(
1
-
w
.
JulRatio
)
??
0
)
+
(
w
.
AugFee
*
(
1
-
w
.
AugRatio
)
??
0
)
+
(
w
.
SepFee
*
(
1
-
w
.
SepRatio
)
??
0
)
+
(
w
.
OctFee
*
(
1
-
w
.
OctRatio
)
??
0
)
+
(
w
.
NovFee
*
(
1
-
w
.
NovRatio
)
??
0
)
+
(
w
.
DecFee
*
(
1
-
w
.
DecRatio
)
??
0
),
});
#
endregion
格式转换
return
new
ApiResponse
(
ResponseType
.
OK
,
result
);
}
}
/// <summary>
/// <summary>
...
@@ -555,5 +493,18 @@ public IActionResult DownloadCurrentCalculationTable(int allotid)
...
@@ -555,5 +493,18 @@ public IActionResult DownloadCurrentCalculationTable(int allotid)
var
memi
=
provider
.
Mappings
[
".xlsx"
];
var
memi
=
provider
.
Mappings
[
".xlsx"
];
return
File
(
memoryStream
,
memi
,
Path
.
GetFileName
(
fileInfo
.
Name
));
return
File
(
memoryStream
,
memi
,
Path
.
GetFileName
(
fileInfo
.
Name
));
}
}
/// <summary>
/// 查询个人绩效
/// </summary>
/// <returns></returns>
[
Route
(
"owner/query"
)]
[
HttpGet
]
public
ApiResponse
GetOwnerPerformance
()
{
var
userid
=
_claim
.
GetUserId
();
var
res
=
_allotService
.
GetOwnerPerformance
(
userid
);
return
new
ApiResponse
(
ResponseType
.
OK
,
res
);
}
}
}
}
}
performance/Performance.Api/Controllers/SecondAllotController.cs
View file @
91ced9f1
...
@@ -384,10 +384,10 @@ public ApiResponse AuditResult([FromBody] SecondAuditRequest request)
...
@@ -384,10 +384,10 @@ public ApiResponse AuditResult([FromBody] SecondAuditRequest request)
{
{
var
userid
=
claimService
.
GetUserId
();
var
userid
=
claimService
.
GetUserId
();
var
result
=
secondAllotService
.
ConfirmAudit
(
userid
,
request
);
var
result
=
secondAllotService
.
ConfirmAudit
(
userid
,
request
);
if
(
request
.
IsPass
==
1
)
//
if (request.IsPass == 1)
{
//
{
resultComputeService
.
SaveSecondReserved
(
request
.
SecondId
);
//
resultComputeService.SaveSecondReserved(request.SecondId);
}
//
}
return
result
?
new
ApiResponse
(
ResponseType
.
OK
,
"操作成功"
)
:
new
ApiResponse
(
ResponseType
.
Fail
,
"操作失败"
);
return
result
?
new
ApiResponse
(
ResponseType
.
OK
,
"操作成功"
)
:
new
ApiResponse
(
ResponseType
.
Fail
,
"操作失败"
);
}
}
...
...
performance/Performance.Api/wwwroot/Performance.Api.xml
View file @
91ced9f1
...
@@ -308,6 +308,12 @@
...
@@ -308,6 +308,12 @@
<param
name=
"allotid"
></param>
<param
name=
"allotid"
></param>
<returns></returns>
<returns></returns>
</member>
</member>
<member
name=
"M:Performance.Api.Controllers.AllotController.GetOwnerPerformance"
>
<summary>
查询个人绩效
</summary>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.BudgetController.Query(Performance.DtoModels.Request.BudgetRequest)"
>
<member
name=
"M:Performance.Api.Controllers.BudgetController.Query(Performance.DtoModels.Request.BudgetRequest)"
>
<summary>
<summary>
预算管理查询(包含金额、占比)
预算管理查询(包含金额、占比)
...
...
performance/Performance.Api/wwwroot/Performance.DtoModels.xml
View file @
91ced9f1
...
@@ -3294,6 +3294,101 @@
...
@@ -3294,6 +3294,101 @@
药占比对应系数
药占比对应系数
</summary>
</summary>
</member>
</member>
<member
name=
"P:Performance.DtoModels.EmployeeReservedDto.HospitalId"
>
<summary>
</summary>
</member>
<member
name=
"P:Performance.DtoModels.EmployeeReservedDto.Year"
>
<summary>
</summary>
</member>
<member
name=
"P:Performance.DtoModels.EmployeeReservedDto.UnitType"
>
<summary>
</summary>
</member>
<member
name=
"P:Performance.DtoModels.EmployeeReservedDto.AccountingUnit"
>
<summary>
核算单元
</summary>
</member>
<member
name=
"P:Performance.DtoModels.EmployeeReservedDto.EmployeeName"
>
<summary>
人员姓名
</summary>
</member>
<member
name=
"P:Performance.DtoModels.EmployeeReservedDto.JobNumber"
>
<summary>
工号
</summary>
</member>
<member
name=
"P:Performance.DtoModels.EmployeeReservedDto.JanReseFee"
>
<summary>
1月
</summary>
</member>
<member
name=
"P:Performance.DtoModels.EmployeeReservedDto.FebReseFee"
>
<summary>
2月
</summary>
</member>
<member
name=
"P:Performance.DtoModels.EmployeeReservedDto.MarReseFee"
>
<summary>
3月
</summary>
</member>
<member
name=
"P:Performance.DtoModels.EmployeeReservedDto.AprReseFee"
>
<summary>
4月
</summary>
</member>
<member
name=
"P:Performance.DtoModels.EmployeeReservedDto.MayReseFee"
>
<summary>
5月
</summary>
</member>
<member
name=
"P:Performance.DtoModels.EmployeeReservedDto.JunReseFee"
>
<summary>
6月
</summary>
</member>
<member
name=
"P:Performance.DtoModels.EmployeeReservedDto.JulReseFee"
>
<summary>
7月
</summary>
</member>
<member
name=
"P:Performance.DtoModels.EmployeeReservedDto.AugReseFee"
>
<summary>
8月
</summary>
</member>
<member
name=
"P:Performance.DtoModels.EmployeeReservedDto.SepReseFee"
>
<summary>
9月
</summary>
</member>
<member
name=
"P:Performance.DtoModels.EmployeeReservedDto.OctReseFee"
>
<summary>
10月
</summary>
</member>
<member
name=
"P:Performance.DtoModels.EmployeeReservedDto.NovReseFee"
>
<summary>
11月
</summary>
</member>
<member
name=
"P:Performance.DtoModels.EmployeeReservedDto.DecReseFee"
>
<summary>
12月
</summary>
</member>
<member
name=
"P:Performance.DtoModels.EmployeeReservedDto.TotalReseFee"
>
<summary>
汇总
</summary>
</member>
<member
name=
"P:Performance.DtoModels.GuaranteeResponse.AllotId"
>
<member
name=
"P:Performance.DtoModels.GuaranteeResponse.AllotId"
>
<summary>
<summary>
...
@@ -3379,6 +3474,26 @@
...
@@ -3379,6 +3474,26 @@
菜单状态 1 启用 2禁用
菜单状态 1 启用 2禁用
</summary>
</summary>
</member>
</member>
<member
name=
"P:Performance.DtoModels.OwnerPerformanceDto.ShouldGiveFee"
>
<summary>
应发绩效
</summary>
</member>
<member
name=
"P:Performance.DtoModels.OwnerPerformanceDto.ReservedRatio"
>
<summary>
预留比例
</summary>
</member>
<member
name=
"P:Performance.DtoModels.OwnerPerformanceDto.ReservedRatioFee"
>
<summary>
预留金额
</summary>
</member>
<member
name=
"P:Performance.DtoModels.OwnerPerformanceDto.RealGiveFee"
>
<summary>
实发绩效
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerEmployeeResponse.WorkTime"
>
<member
name=
"P:Performance.DtoModels.PerEmployeeResponse.WorkTime"
>
<summary>
<summary>
参加工作时间
参加工作时间
...
...
performance/Performance.Api/wwwroot/Performance.EntityModels.xml
View file @
91ced9f1
...
@@ -295,21 +295,12 @@
...
@@ -295,21 +295,12 @@
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.res_account"
>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.res_account"
>
<summary>
科室核算结果
</summary>
<summary>
科室核算结果
</summary>
</member>
</member>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.res_accountdoctor"
>
<summary>
医生科室核算结果
</summary>
</member>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.res_accountnurse"
>
<summary>
护理科室核算结果
</summary>
</member>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.res_baiscnorm"
>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.res_baiscnorm"
>
<summary>
核算基础标准
</summary>
<summary>
核算基础标准
</summary>
</member>
</member>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.res_compute"
>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.res_compute"
>
<summary>
</summary>
<summary>
</summary>
</member>
</member>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.res_reserved"
>
<summary>
</summary>
</member>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.res_specialunit"
>
<member
name=
"P:Performance.EntityModels.PerformanceDbContext.res_specialunit"
>
<summary>
</summary>
<summary>
</summary>
</member>
</member>
...
@@ -6376,221 +6367,6 @@
...
@@ -6376,221 +6367,6 @@
夜班绩效
夜班绩效
</summary>
</summary>
</member>
</member>
<member
name=
"T:Performance.EntityModels.res_accountdoctor"
>
<summary>
医生科室核算结果
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountdoctor.ID"
>
<summary>
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountdoctor.AllotID"
>
<summary>
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountdoctor.SheetID"
>
<summary>
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountdoctor.AccountingUnit"
>
<summary>
核算单元
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountdoctor.Department"
>
<summary>
科室
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountdoctor.ManagerNumber"
>
<summary>
科主任/护士长数量
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountdoctor.Number"
>
<summary>
核算单元医生数量
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountdoctor.BasicFactor"
>
<summary>
医生基础系数
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountdoctor.SlopeFactor"
>
<summary>
倾斜系数
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountdoctor.OtherPerfor1"
>
<summary>
其他绩效1
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountdoctor.OtherPerfor2"
>
<summary>
其他绩效2
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountdoctor.Extra"
>
<summary>
医院奖罚
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountdoctor.ScoringAverage"
>
<summary>
考核对分率
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountdoctor.AdjustFactor"
>
<summary>
调节系数
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountdoctor.Income"
>
<summary>
科室业绩
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountdoctor.PerforFee"
>
<summary>
业绩绩效
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountdoctor.WorkloadFee"
>
<summary>
工作量绩效
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountdoctor.PerforTotal"
>
<summary>
绩效合计
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountdoctor.Avg"
>
<summary>
人均绩效
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountdoctor.RealGiveFee"
>
<summary>
实发绩效
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountdoctor.ChangeLog"
>
<summary>
变更日志
</summary>
</member>
<member
name=
"T:Performance.EntityModels.res_accountnurse"
>
<summary>
护理科室核算结果
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountnurse.ID"
>
<summary>
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountnurse.AllotID"
>
<summary>
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountnurse.SheetID"
>
<summary>
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountnurse.AccountingUnit"
>
<summary>
核算单元
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountnurse.Department"
>
<summary>
科室
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountnurse.ManagerNumber"
>
<summary>
科主任/护士长数量
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountnurse.Number"
>
<summary>
护士人数
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountnurse.BasicFactor"
>
<summary>
护理基础系数
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountnurse.SlopeFactor"
>
<summary>
倾斜系数
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountnurse.OtherPerfor1"
>
<summary>
其他绩效1
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountnurse.OtherPerfor2"
>
<summary>
其他绩效2
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountnurse.Extra"
>
<summary>
医院奖罚
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountnurse.ScoringAverage"
>
<summary>
考核对分率
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountnurse.AdjustFactor"
>
<summary>
调节系数
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountnurse.Income"
>
<summary>
科室业绩
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountnurse.PerforFee"
>
<summary>
业绩绩效
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountnurse.WorkloadFee"
>
<summary>
工作量绩效
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountnurse.PerforTotal"
>
<summary>
绩效合计
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountnurse.Avg"
>
<summary>
人均绩效
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_accountnurse.RealGiveFee"
>
<summary>
实发绩效
</summary>
</member>
<member
name=
"T:Performance.EntityModels.res_baiscnorm"
>
<member
name=
"T:Performance.EntityModels.res_baiscnorm"
>
<summary>
<summary>
核算基础标准
核算基础标准
...
@@ -6876,166 +6652,6 @@
...
@@ -6876,166 +6652,6 @@
考核后管理绩效
考核后管理绩效
</summary>
</summary>
</member>
</member>
<member
name=
"T:Performance.EntityModels.res_reserved"
>
<summary>
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.Id"
>
<summary>
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.HospitalId"
>
<summary>
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.Year"
>
<summary>
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.UnitType"
>
<summary>
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.AccountingUnit"
>
<summary>
核算单元
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.EmployeeName"
>
<summary>
人员姓名
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.JobNumber"
>
<summary>
工号
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.JanFee"
>
<summary>
一月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.JanRatio"
>
<summary>
一月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.FebFee"
>
<summary>
二月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.FebRatio"
>
<summary>
二月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.MarFee"
>
<summary>
三月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.MarRatio"
>
<summary>
三月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.AprFee"
>
<summary>
四月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.AprRatio"
>
<summary>
四月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.MayFee"
>
<summary>
五月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.MayRatio"
>
<summary>
五月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.JunFee"
>
<summary>
六月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.JunRatio"
>
<summary>
六月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.JulFee"
>
<summary>
七月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.JulRatio"
>
<summary>
七月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.AugFee"
>
<summary>
八月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.AugRatio"
>
<summary>
八月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.SepFee"
>
<summary>
九月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.SepRatio"
>
<summary>
九月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.OctFee"
>
<summary>
十月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.OctRatio"
>
<summary>
十月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.NovFee"
>
<summary>
十一月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.NovRatio"
>
<summary>
十一月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.DecFee"
>
<summary>
十二月
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_reserved.DecRatio"
>
<summary>
十二月
</summary>
</member>
<member
name=
"T:Performance.EntityModels.res_specialunit"
>
<member
name=
"T:Performance.EntityModels.res_specialunit"
>
<summary>
<summary>
...
@@ -7796,5 +7412,40 @@
...
@@ -7796,5 +7412,40 @@
统计的HIS的原始科室名称
统计的HIS的原始科室名称
</summary>
</summary>
</member>
</member>
<member
name=
"P:Performance.DtoModels.view_allot_result.Source"
>
<summary>
来源
</summary>
</member>
<member
name=
"P:Performance.DtoModels.view_allot_result.PerforSumFee"
>
<summary>
业绩绩效
</summary>
</member>
<member
name=
"P:Performance.DtoModels.view_allot_result.PerforManagementFee"
>
<summary>
管理绩效
</summary>
</member>
<member
name=
"P:Performance.DtoModels.view_allot_result.NightWorkPerfor"
>
<summary>
夜班绩效
</summary>
</member>
<member
name=
"P:Performance.DtoModels.view_allot_result.AdjustLaterOtherFee"
>
<summary>
调节后其他绩效
</summary>
</member>
<member
name=
"P:Performance.DtoModels.view_allot_result.OtherPerfor"
>
<summary>
医院其他绩效
</summary>
</member>
<member
name=
"P:Performance.DtoModels.view_allot_result.HideOtherPerfor"
>
<summary>
不公示其他绩效
</summary>
</member>
</members>
</members>
</doc>
</doc>
performance/Performance.DtoModels/AutoMapper/AutoMapperConfigs.cs
View file @
91ced9f1
...
@@ -244,6 +244,9 @@ public AutoMapperConfigs()
...
@@ -244,6 +244,9 @@ public AutoMapperConfigs()
CreateMap
<
ag_headsource
,
SecPrintHeaderResponse
>()
CreateMap
<
ag_headsource
,
SecPrintHeaderResponse
>()
.
ForMember
(
dest
=>
dest
.
TheTotalAllocationOfPerformanceResults
,
opt
=>
opt
.
MapFrom
(
src
=>
src
.
TotalDeptReward
))
.
ForMember
(
dest
=>
dest
.
TheTotalAllocationOfPerformanceResults
,
opt
=>
opt
.
MapFrom
(
src
=>
src
.
TotalDeptReward
))
.
ReverseMap
();
.
ReverseMap
();
CreateMap
<
view_allot_result
,
OwnerPerformanceDto
>()
.
ReverseMap
();
}
}
}
}
}
}
performance/Performance.DtoModels/Enum.cs
View file @
91ced9f1
...
@@ -114,4 +114,20 @@ public enum DataFormat
...
@@ -114,4 +114,20 @@ public enum DataFormat
/// <summary> 日期 </summary>
/// <summary> 日期 </summary>
日期
日期
}
}
public
enum
Role
{
绩效管理员
=
1
,
医院管理员
=
2
,
护士长
=
3
,
科主任
=
4
,
绩效核算办
=
5
,
院领导
=
6
,
财务科
=
7
,
人事科
=
8
,
特殊科室
=
9
,
行政科室
=
10
,
数据收集
=
11
,
绩效查询
=
12
,
}
}
}
performance/Performance.DtoModels/Response/EmployeeReservedDto.cs
0 → 100644
View file @
91ced9f1
using
System
;
using
System.Collections.Generic
;
using
System.Text
;
namespace
Performance.DtoModels
{
public
class
EmployeeReservedDto
{
/// <summary>
///
/// </summary>
public
int
HospitalId
{
get
;
set
;
}
/// <summary>
///
/// </summary>
public
int
Year
{
get
;
set
;
}
/// <summary>
///
/// </summary>
public
string
UnitType
{
get
;
set
;
}
/// <summary>
/// 核算单元
/// </summary>
public
string
AccountingUnit
{
get
;
set
;
}
/// <summary>
/// 人员姓名
/// </summary>
public
string
EmployeeName
{
get
;
set
;
}
/// <summary>
/// 工号
/// </summary>
public
string
JobNumber
{
get
;
set
;
}
/// <summary>
/// 1月
/// </summary>
public
Nullable
<
decimal
>
JanReseFee
{
get
;
set
;
}
public
Nullable
<
decimal
>
JanGiveFee
{
get
;
set
;
}
/// <summary>
/// 2月
/// </summary>
public
Nullable
<
decimal
>
FebReseFee
{
get
;
set
;
}
public
Nullable
<
decimal
>
FebGiveFee
{
get
;
set
;
}
/// <summary>
/// 3月
/// </summary>
public
Nullable
<
decimal
>
MarReseFee
{
get
;
set
;
}
public
Nullable
<
decimal
>
MarGiveFee
{
get
;
set
;
}
/// <summary>
/// 4月
/// </summary>
public
Nullable
<
decimal
>
AprReseFee
{
get
;
set
;
}
public
Nullable
<
decimal
>
AprGiveFee
{
get
;
set
;
}
/// <summary>
/// 5月
/// </summary>
public
Nullable
<
decimal
>
MayReseFee
{
get
;
set
;
}
public
Nullable
<
decimal
>
MayGiveFee
{
get
;
set
;
}
/// <summary>
/// 6月
/// </summary>
public
Nullable
<
decimal
>
JunReseFee
{
get
;
set
;
}
public
Nullable
<
decimal
>
JunGiveFee
{
get
;
set
;
}
/// <summary>
/// 7月
/// </summary>
public
Nullable
<
decimal
>
JulReseFee
{
get
;
set
;
}
public
Nullable
<
decimal
>
JulGiveFee
{
get
;
set
;
}
/// <summary>
/// 8月
/// </summary>
public
Nullable
<
decimal
>
AugReseFee
{
get
;
set
;
}
public
Nullable
<
decimal
>
AugGiveFee
{
get
;
set
;
}
/// <summary>
/// 9月
/// </summary>
public
Nullable
<
decimal
>
SepReseFee
{
get
;
set
;
}
public
Nullable
<
decimal
>
SepGiveFee
{
get
;
set
;
}
/// <summary>
/// 10月
/// </summary>
public
Nullable
<
decimal
>
OctReseFee
{
get
;
set
;
}
public
Nullable
<
decimal
>
OctGiveFee
{
get
;
set
;
}
/// <summary>
/// 11月
/// </summary>
public
Nullable
<
decimal
>
NovReseFee
{
get
;
set
;
}
public
Nullable
<
decimal
>
NovGiveFee
{
get
;
set
;
}
/// <summary>
/// 12月
/// </summary>
public
Nullable
<
decimal
>
DecReseFee
{
get
;
set
;
}
public
Nullable
<
decimal
>
DecGiveFee
{
get
;
set
;
}
/// <summary>
/// 汇总
/// </summary>
public
Nullable
<
decimal
>
TotalReseFee
{
get
;
set
;
}
public
Nullable
<
decimal
>
TotalGiveFee
{
get
;
set
;
}
}
}
performance/Performance.DtoModels/Response/OwnerPerformanceDto.cs
0 → 100644
View file @
91ced9f1
using
System
;
using
System.Collections.Generic
;
using
System.Text
;
namespace
Performance.DtoModels
{
public
class
OwnerPerformanceDto
:
view_allot_result
{
public
IEnumerable
<
OwnerPerformanceDto
>
Detail
{
get
;
set
;
}
/// <summary>
/// 应发绩效
/// </summary>
public
decimal
?
ShouldGiveFee
{
get
;
set
;
}
/// <summary>
/// 预留比例
/// </summary>
public
decimal
?
ReservedRatio
{
get
;
set
;
}
/// <summary>
/// 预留金额
/// </summary>
public
decimal
?
ReservedRatioFee
{
get
;
set
;
}
/// <summary>
/// 实发绩效
/// </summary>
public
decimal
RealGiveFee
{
get
;
set
;
}
}
}
performance/Performance.EntityModels/Context/PerformanceDbContext.cs
View file @
91ced9f1
...
@@ -205,16 +205,16 @@ public PerformanceDbContext(DbContextOptions<PerformanceDbContext> options)
...
@@ -205,16 +205,16 @@ public PerformanceDbContext(DbContextOptions<PerformanceDbContext> options)
public
virtual
DbSet
<
report_performance_tags
>
report_performance_tags
{
get
;
set
;
}
public
virtual
DbSet
<
report_performance_tags
>
report_performance_tags
{
get
;
set
;
}
/// <summary> 科室核算结果 </summary>
/// <summary> 科室核算结果 </summary>
public
virtual
DbSet
<
res_account
>
res_account
{
get
;
set
;
}
public
virtual
DbSet
<
res_account
>
res_account
{
get
;
set
;
}
/// <summary> 医生科室核算结果 </summary>
///
//
<summary> 医生科室核算结果 </summary>
public
virtual
DbSet
<
res_accountdoctor
>
res_accountdoctor
{
get
;
set
;
}
//
public virtual DbSet<res_accountdoctor> res_accountdoctor { get; set; }
/// <summary> 护理科室核算结果 </summary>
///
//
<summary> 护理科室核算结果 </summary>
public
virtual
DbSet
<
res_accountnurse
>
res_accountnurse
{
get
;
set
;
}
//
public virtual DbSet<res_accountnurse> res_accountnurse { get; set; }
/// <summary> 核算基础标准 </summary>
/// <summary> 核算基础标准 </summary>
public
virtual
DbSet
<
res_baiscnorm
>
res_baiscnorm
{
get
;
set
;
}
public
virtual
DbSet
<
res_baiscnorm
>
res_baiscnorm
{
get
;
set
;
}
/// <summary> </summary>
/// <summary> </summary>
public
virtual
DbSet
<
res_compute
>
res_compute
{
get
;
set
;
}
public
virtual
DbSet
<
res_compute
>
res_compute
{
get
;
set
;
}
/// <summary> </summary>
///
//
<summary> </summary>
public
virtual
DbSet
<
res_reserved
>
res_reserved
{
get
;
set
;
}
//
public virtual DbSet<res_reserved> res_reserved { get; set; }
/// <summary> </summary>
/// <summary> </summary>
public
virtual
DbSet
<
res_specialunit
>
res_specialunit
{
get
;
set
;
}
public
virtual
DbSet
<
res_specialunit
>
res_specialunit
{
get
;
set
;
}
/// <summary> 医院数据提取脚本 </summary>
/// <summary> 医院数据提取脚本 </summary>
...
...
performance/Performance.EntityModels/Entity/res_accountdoctor.cs
View file @
91ced9f1
//-----------------------------------------------------------------------
//
//
-----------------------------------------------------------------------
// <copyright file=" res_accountdoctor.cs">
//
//
<copyright file=" res_accountdoctor.cs">
// * FileName: 医生科室核算结果.cs
//
//
* FileName: 医生科室核算结果.cs
// </copyright>
//
//
</copyright>
//-----------------------------------------------------------------------
//
//
-----------------------------------------------------------------------
using
System
;
//
using System;
using
System.ComponentModel.DataAnnotations
;
//
using System.ComponentModel.DataAnnotations;
using
System.ComponentModel.DataAnnotations.Schema
;
//
using System.ComponentModel.DataAnnotations.Schema;
namespace
Performance.EntityModels
//
namespace Performance.EntityModels
{
//
{
/// <summary>
//
/// <summary>
/// 医生科室核算结果
//
/// 医生科室核算结果
/// </summary>
//
/// </summary>
[
Table
(
"res_accountdoctor"
)]
//
[Table("res_accountdoctor")]
public
class
res_accountdoctor
//
public class res_accountdoctor
{
//
{
/// <summary>
//
/// <summary>
///
//
///
/// </summary>
//
/// </summary>
[
Key
]
//
[Key]
public
int
ID
{
get
;
set
;
}
//
public int ID { get; set; }
/// <summary>
//
/// <summary>
///
//
///
/// </summary>
//
/// </summary>
public
Nullable
<
int
>
AllotID
{
get
;
set
;
}
//
public Nullable<int> AllotID { get; set; }
/// <summary>
//
/// <summary>
///
//
///
/// </summary>
//
/// </summary>
public
Nullable
<
int
>
SheetID
{
get
;
set
;
}
//
public Nullable<int> SheetID { get; set; }
/// <summary>
//
/// <summary>
/// 核算单元
//
/// 核算单元
/// </summary>
//
/// </summary>
public
string
AccountingUnit
{
get
;
set
;
}
//
public string AccountingUnit { get; set; }
/// <summary>
//
/// <summary>
/// 科室
//
/// 科室
/// </summary>
//
/// </summary>
public
string
Department
{
get
;
set
;
}
//
public string Department { get; set; }
/// <summary>
//
/// <summary>
/// 科主任/护士长数量
//
/// 科主任/护士长数量
/// </summary>
//
/// </summary>
public
Nullable
<
int
>
ManagerNumber
{
get
;
set
;
}
//
public Nullable<int> ManagerNumber { get; set; }
/// <summary>
//
/// <summary>
/// 核算单元医生数量
//
/// 核算单元医生数量
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
Number
{
get
;
set
;
}
//
public Nullable<decimal> Number { get; set; }
/// <summary>
//
/// <summary>
/// 医生基础系数
//
/// 医生基础系数
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
BasicFactor
{
get
;
set
;
}
//
public Nullable<decimal> BasicFactor { get; set; }
/// <summary>
//
/// <summary>
/// 倾斜系数
//
/// 倾斜系数
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
SlopeFactor
{
get
;
set
;
}
//
public Nullable<decimal> SlopeFactor { get; set; }
/// <summary>
//
/// <summary>
/// 其他绩效1
//
/// 其他绩效1
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
OtherPerfor1
{
get
;
set
;
}
//
public Nullable<decimal> OtherPerfor1 { get; set; }
/// <summary>
//
/// <summary>
/// 其他绩效2
//
/// 其他绩效2
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
OtherPerfor2
{
get
;
set
;
}
//
public Nullable<decimal> OtherPerfor2 { get; set; }
/// <summary>
//
/// <summary>
/// 医院奖罚
//
/// 医院奖罚
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
Extra
{
get
;
set
;
}
//
public Nullable<decimal> Extra { get; set; }
/// <summary>
//
/// <summary>
/// 考核对分率
//
/// 考核对分率
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
ScoringAverage
{
get
;
set
;
}
//
public Nullable<decimal> ScoringAverage { get; set; }
/// <summary>
//
/// <summary>
/// 调节系数
//
/// 调节系数
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
AdjustFactor
{
get
;
set
;
}
//
public Nullable<decimal> AdjustFactor { get; set; }
/// <summary>
//
/// <summary>
/// 科室业绩
//
/// 科室业绩
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
Income
{
get
;
set
;
}
//
public Nullable<decimal> Income { get; set; }
/// <summary>
//
/// <summary>
/// 业绩绩效
//
/// 业绩绩效
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
PerforFee
{
get
;
set
;
}
//
public Nullable<decimal> PerforFee { get; set; }
/// <summary>
//
/// <summary>
/// 工作量绩效
//
/// 工作量绩效
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
WorkloadFee
{
get
;
set
;
}
//
public Nullable<decimal> WorkloadFee { get; set; }
/// <summary>
//
/// <summary>
/// 绩效合计
//
/// 绩效合计
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
PerforTotal
{
get
;
set
;
}
//
public Nullable<decimal> PerforTotal { get; set; }
/// <summary>
//
/// <summary>
/// 人均绩效
//
/// 人均绩效
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
Avg
{
get
;
set
;
}
//
public Nullable<decimal> Avg { get; set; }
/// <summary>
//
/// <summary>
/// 实发绩效
//
/// 实发绩效
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
RealGiveFee
{
get
;
set
;
}
//
public Nullable<decimal> RealGiveFee { get; set; }
/// <summary>
//
/// <summary>
/// 变更日志
//
/// 变更日志
/// </summary>
//
/// </summary>
public
string
ChangeLog
{
get
;
set
;
}
//
public string ChangeLog { get; set; }
}
//
}
}
//
}
performance/Performance.EntityModels/Entity/res_accountnurse.cs
View file @
91ced9f1
//-----------------------------------------------------------------------
//
//
-----------------------------------------------------------------------
// <copyright file=" res_accountnurse.cs">
//
//
<copyright file=" res_accountnurse.cs">
// * FileName: 护理科室核算结果.cs
//
//
* FileName: 护理科室核算结果.cs
// </copyright>
//
//
</copyright>
//-----------------------------------------------------------------------
//
//
-----------------------------------------------------------------------
using
System
;
//
using System;
using
System.ComponentModel.DataAnnotations
;
//
using System.ComponentModel.DataAnnotations;
using
System.ComponentModel.DataAnnotations.Schema
;
//
using System.ComponentModel.DataAnnotations.Schema;
namespace
Performance.EntityModels
//
namespace Performance.EntityModels
{
//
{
/// <summary>
//
/// <summary>
/// 护理科室核算结果
//
/// 护理科室核算结果
/// </summary>
//
/// </summary>
[
Table
(
"res_accountnurse"
)]
//
[Table("res_accountnurse")]
public
class
res_accountnurse
//
public class res_accountnurse
{
//
{
/// <summary>
//
/// <summary>
///
//
///
/// </summary>
//
/// </summary>
[
Key
]
//
[Key]
public
int
ID
{
get
;
set
;
}
//
public int ID { get; set; }
/// <summary>
//
/// <summary>
///
//
///
/// </summary>
//
/// </summary>
public
Nullable
<
int
>
AllotID
{
get
;
set
;
}
//
public Nullable<int> AllotID { get; set; }
/// <summary>
//
/// <summary>
///
//
///
/// </summary>
//
/// </summary>
public
Nullable
<
int
>
SheetID
{
get
;
set
;
}
//
public Nullable<int> SheetID { get; set; }
/// <summary>
//
/// <summary>
/// 核算单元
//
/// 核算单元
/// </summary>
//
/// </summary>
public
string
AccountingUnit
{
get
;
set
;
}
//
public string AccountingUnit { get; set; }
/// <summary>
//
/// <summary>
/// 科室
//
/// 科室
/// </summary>
//
/// </summary>
public
string
Department
{
get
;
set
;
}
//
public string Department { get; set; }
/// <summary>
//
/// <summary>
/// 科主任/护士长数量
//
/// 科主任/护士长数量
/// </summary>
//
/// </summary>
public
Nullable
<
int
>
ManagerNumber
{
get
;
set
;
}
//
public Nullable<int> ManagerNumber { get; set; }
/// <summary>
//
/// <summary>
/// 护士人数
//
/// 护士人数
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
Number
{
get
;
set
;
}
//
public Nullable<decimal> Number { get; set; }
/// <summary>
//
/// <summary>
/// 护理基础系数
//
/// 护理基础系数
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
BasicFactor
{
get
;
set
;
}
//
public Nullable<decimal> BasicFactor { get; set; }
/// <summary>
//
/// <summary>
/// 倾斜系数
//
/// 倾斜系数
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
SlopeFactor
{
get
;
set
;
}
//
public Nullable<decimal> SlopeFactor { get; set; }
/// <summary>
//
/// <summary>
/// 其他绩效1
//
/// 其他绩效1
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
OtherPerfor1
{
get
;
set
;
}
//
public Nullable<decimal> OtherPerfor1 { get; set; }
/// <summary>
//
/// <summary>
/// 其他绩效2
//
/// 其他绩效2
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
OtherPerfor2
{
get
;
set
;
}
//
public Nullable<decimal> OtherPerfor2 { get; set; }
/// <summary>
//
/// <summary>
/// 医院奖罚
//
/// 医院奖罚
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
Extra
{
get
;
set
;
}
//
public Nullable<decimal> Extra { get; set; }
/// <summary>
//
/// <summary>
/// 考核对分率
//
/// 考核对分率
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
ScoringAverage
{
get
;
set
;
}
//
public Nullable<decimal> ScoringAverage { get; set; }
/// <summary>
//
/// <summary>
/// 调节系数
//
/// 调节系数
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
AdjustFactor
{
get
;
set
;
}
//
public Nullable<decimal> AdjustFactor { get; set; }
/// <summary>
//
/// <summary>
/// 科室业绩
//
/// 科室业绩
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
Income
{
get
;
set
;
}
//
public Nullable<decimal> Income { get; set; }
/// <summary>
//
/// <summary>
/// 业绩绩效
//
/// 业绩绩效
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
PerforFee
{
get
;
set
;
}
//
public Nullable<decimal> PerforFee { get; set; }
/// <summary>
//
/// <summary>
/// 工作量绩效
//
/// 工作量绩效
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
WorkloadFee
{
get
;
set
;
}
//
public Nullable<decimal> WorkloadFee { get; set; }
/// <summary>
//
/// <summary>
/// 绩效合计
//
/// 绩效合计
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
PerforTotal
{
get
;
set
;
}
//
public Nullable<decimal> PerforTotal { get; set; }
/// <summary>
//
/// <summary>
/// 人均绩效
//
/// 人均绩效
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
Avg
{
get
;
set
;
}
//
public Nullable<decimal> Avg { get; set; }
/// <summary>
//
/// <summary>
/// 实发绩效
//
/// 实发绩效
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
RealGiveFee
{
get
;
set
;
}
//
public Nullable<decimal> RealGiveFee { get; set; }
}
//
}
}
//
}
performance/Performance.EntityModels/Entity/res_reserved.cs
View file @
91ced9f1
//-----------------------------------------------------------------------
//
//
-----------------------------------------------------------------------
// <copyright file=" res_reserved.cs">
//
//
<copyright file=" res_reserved.cs">
// * FileName: .cs
//
//
* FileName: .cs
// </copyright>
//
//
</copyright>
//-----------------------------------------------------------------------
//
//
-----------------------------------------------------------------------
using
System
;
//
using System;
using
System.ComponentModel.DataAnnotations
;
//
using System.ComponentModel.DataAnnotations;
using
System.ComponentModel.DataAnnotations.Schema
;
//
using System.ComponentModel.DataAnnotations.Schema;
namespace
Performance.EntityModels
//
namespace Performance.EntityModels
{
//
{
/// <summary>
//
/// <summary>
///
//
///
/// </summary>
//
/// </summary>
[
Table
(
"res_reserved"
)]
//
[Table("res_reserved")]
public
class
res_reserved
//
public class res_reserved
{
//
{
/// <summary>
//
/// <summary>
///
//
///
/// </summary>
//
/// </summary>
[
Key
]
//
[Key]
public
int
Id
{
get
;
set
;
}
//
public int Id { get; set; }
/// <summary>
//
/// <summary>
///
//
///
/// </summary>
//
/// </summary>
public
int
HospitalId
{
get
;
set
;
}
//
public int HospitalId { get; set; }
/// <summary>
//
/// <summary>
///
//
///
/// </summary>
//
/// </summary>
public
int
Year
{
get
;
set
;
}
//
public int Year { get; set; }
/// <summary>
//
/// <summary>
///
//
///
/// </summary>
//
/// </summary>
public
string
UnitType
{
get
;
set
;
}
//
public string UnitType { get; set; }
/// <summary>
//
/// <summary>
/// 核算单元
//
/// 核算单元
/// </summary>
//
/// </summary>
public
string
AccountingUnit
{
get
;
set
;
}
//
public string AccountingUnit { get; set; }
/// <summary>
//
/// <summary>
/// 人员姓名
//
/// 人员姓名
/// </summary>
//
/// </summary>
public
string
EmployeeName
{
get
;
set
;
}
//
public string EmployeeName { get; set; }
/// <summary>
//
/// <summary>
/// 工号
//
/// 工号
/// </summary>
//
/// </summary>
public
string
JobNumber
{
get
;
set
;
}
//
public string JobNumber { get; set; }
/// <summary>
//
/// <summary>
/// 一月
//
/// 一月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
JanFee
{
get
;
set
;
}
//
public Nullable<decimal> JanFee { get; set; }
/// <summary>
//
/// <summary>
/// 一月
//
/// 一月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
JanRatio
{
get
;
set
;
}
//
public Nullable<decimal> JanRatio { get; set; }
/// <summary>
//
/// <summary>
/// 二月
//
/// 二月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
FebFee
{
get
;
set
;
}
//
public Nullable<decimal> FebFee { get; set; }
/// <summary>
//
/// <summary>
/// 二月
//
/// 二月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
FebRatio
{
get
;
set
;
}
//
public Nullable<decimal> FebRatio { get; set; }
/// <summary>
//
/// <summary>
/// 三月
//
/// 三月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
MarFee
{
get
;
set
;
}
//
public Nullable<decimal> MarFee { get; set; }
/// <summary>
//
/// <summary>
/// 三月
//
/// 三月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
MarRatio
{
get
;
set
;
}
//
public Nullable<decimal> MarRatio { get; set; }
/// <summary>
//
/// <summary>
/// 四月
//
/// 四月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
AprFee
{
get
;
set
;
}
//
public Nullable<decimal> AprFee { get; set; }
/// <summary>
//
/// <summary>
/// 四月
//
/// 四月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
AprRatio
{
get
;
set
;
}
//
public Nullable<decimal> AprRatio { get; set; }
/// <summary>
//
/// <summary>
/// 五月
//
/// 五月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
MayFee
{
get
;
set
;
}
//
public Nullable<decimal> MayFee { get; set; }
/// <summary>
//
/// <summary>
/// 五月
//
/// 五月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
MayRatio
{
get
;
set
;
}
//
public Nullable<decimal> MayRatio { get; set; }
/// <summary>
//
/// <summary>
/// 六月
//
/// 六月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
JunFee
{
get
;
set
;
}
//
public Nullable<decimal> JunFee { get; set; }
/// <summary>
//
/// <summary>
/// 六月
//
/// 六月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
JunRatio
{
get
;
set
;
}
//
public Nullable<decimal> JunRatio { get; set; }
/// <summary>
//
/// <summary>
/// 七月
//
/// 七月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
JulFee
{
get
;
set
;
}
//
public Nullable<decimal> JulFee { get; set; }
/// <summary>
//
/// <summary>
/// 七月
//
/// 七月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
JulRatio
{
get
;
set
;
}
//
public Nullable<decimal> JulRatio { get; set; }
/// <summary>
//
/// <summary>
/// 八月
//
/// 八月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
AugFee
{
get
;
set
;
}
//
public Nullable<decimal> AugFee { get; set; }
/// <summary>
//
/// <summary>
/// 八月
//
/// 八月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
AugRatio
{
get
;
set
;
}
//
public Nullable<decimal> AugRatio { get; set; }
/// <summary>
//
/// <summary>
/// 九月
//
/// 九月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
SepFee
{
get
;
set
;
}
//
public Nullable<decimal> SepFee { get; set; }
/// <summary>
//
/// <summary>
/// 九月
//
/// 九月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
SepRatio
{
get
;
set
;
}
//
public Nullable<decimal> SepRatio { get; set; }
/// <summary>
//
/// <summary>
/// 十月
//
/// 十月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
OctFee
{
get
;
set
;
}
//
public Nullable<decimal> OctFee { get; set; }
/// <summary>
//
/// <summary>
/// 十月
//
/// 十月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
OctRatio
{
get
;
set
;
}
//
public Nullable<decimal> OctRatio { get; set; }
/// <summary>
//
/// <summary>
/// 十一月
//
/// 十一月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
NovFee
{
get
;
set
;
}
//
public Nullable<decimal> NovFee { get; set; }
/// <summary>
//
/// <summary>
/// 十一月
//
/// 十一月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
NovRatio
{
get
;
set
;
}
//
public Nullable<decimal> NovRatio { get; set; }
/// <summary>
//
/// <summary>
/// 十二月
//
/// 十二月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
DecFee
{
get
;
set
;
}
//
public Nullable<decimal> DecFee { get; set; }
/// <summary>
//
/// <summary>
/// 十二月
//
/// 十二月
/// </summary>
//
/// </summary>
public
Nullable
<
decimal
>
DecRatio
{
get
;
set
;
}
//
public Nullable<decimal> DecRatio { get; set; }
}
//
}
}
//
}
performance/Performance.EntityModels/Other/view_allot_result.cs
0 → 100644
View file @
91ced9f1
namespace
Performance.DtoModels
{
public
class
view_allot_result
{
public
int
HospitalID
{
get
;
set
;
}
public
int
Year
{
get
;
set
;
}
public
int
Month
{
get
;
set
;
}
/// <summary>
/// 来源
/// </summary>
public
string
Source
{
get
;
set
;
}
public
int
AllotId
{
get
;
set
;
}
public
int
?
SecondId
{
get
;
set
;
}
public
string
UnitType
{
get
;
set
;
}
public
string
AccountingUnit
{
get
;
set
;
}
public
int
?
IsShowManage
{
get
;
set
;
}
public
string
EmployeeName
{
get
;
set
;
}
public
string
JobNumber
{
get
;
set
;
}
public
string
JobTitle
{
get
;
set
;
}
/// <summary>
/// 业绩绩效
/// </summary>
public
decimal
?
PerforSumFee
{
get
;
set
;
}
/// <summary>
/// 管理绩效
/// </summary>
public
decimal
?
PerforManagementFee
{
get
;
set
;
}
/// <summary>
/// 夜班绩效
/// </summary>
public
decimal
?
NightWorkPerfor
{
get
;
set
;
}
/// <summary>
/// 调节后其他绩效
/// </summary>
public
decimal
?
AdjustLaterOtherFee
{
get
;
set
;
}
/// <summary>
/// 医院其他绩效
/// </summary>
public
decimal
?
OtherPerfor
{
get
;
set
;
}
/// <summary>
/// 不公示其他绩效
/// </summary>
public
decimal
?
HideOtherPerfor
{
get
;
set
;
}
public
decimal
?
RealPerformance
{
get
;
set
;
}
}
}
performance/Performance.Repository/PerforReportRepository .cs
View file @
91ced9f1
using
Performance.DtoModels
;
using
Performance.DtoModels
;
using
Performance.EntityModels
;
using
Performance.EntityModels
;
using
System
;
using
System.Collections.Generic
;
using
System.Collections.Generic
;
using
System.Linq
;
using
System.Linq
;
...
@@ -370,5 +371,23 @@ public List<PerReport> NurseAvg(ReportRequest request)
...
@@ -370,5 +371,23 @@ public List<PerReport> NurseAvg(ReportRequest request)
return
DapperQuery
(
sql
,
new
{
hospitalId
=
request
.
HospitalId
}).
ToList
();
return
DapperQuery
(
sql
,
new
{
hospitalId
=
request
.
HospitalId
}).
ToList
();
}
}
#
endregion
#
endregion
/// <summary>
/// 获取医院预留绩效
/// </summary>
/// <param name="hospitalId"></param>
/// <param name="year"></param>
/// <returns></returns>
public
List
<
EmployeeReservedDto
>
GetEmployeeReserved
(
int
hospitalId
,
int
year
)
{
string
sql
=
"SELECT * FROM view_allot_result_report WHERE HospitalID=@HospitalID AND Year=@Year"
;
return
DapperQuery
<
EmployeeReservedDto
>(
sql
,
new
{
HospitalID
=
hospitalId
,
Year
=
year
})?.
ToList
();
}
public
List
<
view_allot_result
>
GetOwnerPerformance
(
List
<
int
>
hospitalId
,
string
jobNumber
)
{
string
sql
=
"SELECT * FROM view_allot_result WHERE HospitalID IN @HospitalID AND JobNumber=@JobNumber"
;
return
DapperQuery
<
view_allot_result
>(
sql
,
new
{
HospitalID
=
hospitalId
,
JobNumber
=
jobNumber
})?.
ToList
();
}
}
}
}
}
performance/Performance.Repository/Repository/PerforResaccountdoctorRepository.cs
View file @
91ced9f1
//-----------------------------------------------------------------------
//
//
-----------------------------------------------------------------------
// <copyright file=" res_accountdoctor.cs">
//
//
<copyright file=" res_accountdoctor.cs">
// * FileName: res_accountdoctor.cs
//
//
* FileName: res_accountdoctor.cs
// </copyright>
//
//
</copyright>
//-----------------------------------------------------------------------
//
//
-----------------------------------------------------------------------
using
Performance.EntityModels
;
//
using Performance.EntityModels;
namespace
Performance.Repository
//
namespace Performance.Repository
{
//
{
/// <summary>
//
/// <summary>
/// res_accountdoctor Repository
//
/// res_accountdoctor Repository
/// </summary>
//
/// </summary>
public
partial
class
PerforResaccountdoctorRepository
:
PerforRepository
<
res_accountdoctor
>
//
public partial class PerforResaccountdoctorRepository : PerforRepository<res_accountdoctor>
{
//
{
public
PerforResaccountdoctorRepository
(
PerformanceDbContext
context
)
:
base
(
context
)
//
public PerforResaccountdoctorRepository(PerformanceDbContext context) : base(context)
{
//
{
}
//
}
}
//
}
}
//
}
performance/Performance.Repository/Repository/PerforResaccountnurseRepository.cs
View file @
91ced9f1
//-----------------------------------------------------------------------
//
//
-----------------------------------------------------------------------
// <copyright file=" res_accountnurse.cs">
//
//
<copyright file=" res_accountnurse.cs">
// * FileName: res_accountnurse.cs
//
//
* FileName: res_accountnurse.cs
// </copyright>
//
//
</copyright>
//-----------------------------------------------------------------------
//
//
-----------------------------------------------------------------------
using
Performance.EntityModels
;
//
using Performance.EntityModels;
namespace
Performance.Repository
//
namespace Performance.Repository
{
//
{
/// <summary>
//
/// <summary>
/// res_accountnurse Repository
//
/// res_accountnurse Repository
/// </summary>
//
/// </summary>
public
partial
class
PerforResaccountnurseRepository
:
PerforRepository
<
res_accountnurse
>
//
public partial class PerforResaccountnurseRepository : PerforRepository<res_accountnurse>
{
//
{
public
PerforResaccountnurseRepository
(
PerformanceDbContext
context
)
:
base
(
context
)
//
public PerforResaccountnurseRepository(PerformanceDbContext context) : base(context)
{
//
{
}
//
}
}
//
}
}
//
}
performance/Performance.Repository/Repository/PerforresreservedRepository.cs
View file @
91ced9f1
//-----------------------------------------------------------------------
//
//
-----------------------------------------------------------------------
// <copyright file=" res_reserved.cs">
//
//
<copyright file=" res_reserved.cs">
// * FileName: res_reserved.cs
//
//
* FileName: res_reserved.cs
// </copyright>
//
//
</copyright>
//-----------------------------------------------------------------------
//
//
-----------------------------------------------------------------------
using
Performance.EntityModels
;
//
using Performance.EntityModels;
namespace
Performance.Repository
//
namespace Performance.Repository
{
//
{
/// <summary>
//
/// <summary>
/// res_reserved Repository
//
/// res_reserved Repository
/// </summary>
//
/// </summary>
public
partial
class
PerforResreservedRepository
:
PerforRepository
<
res_reserved
>
//
public partial class PerforResreservedRepository : PerforRepository<res_reserved>
{
//
{
public
PerforResreservedRepository
(
PerformanceDbContext
context
)
:
base
(
context
)
//
public PerforResreservedRepository(PerformanceDbContext context) : base(context)
{
//
{
}
//
}
}
//
}
}
//
}
performance/Performance.Services/AllotCompute/ResultComputeService.cs
View file @
91ced9f1
...
@@ -23,7 +23,6 @@ public class ResultComputeService : IAutoInjection
...
@@ -23,7 +23,6 @@ public class ResultComputeService : IAutoInjection
private
readonly
PerforPerallotRepository
perforPerallotRepository
;
private
readonly
PerforPerallotRepository
perforPerallotRepository
;
private
readonly
PerforAgcomputeRepository
perforAgcomputeRepository
;
private
readonly
PerforAgcomputeRepository
perforAgcomputeRepository
;
private
readonly
PerforAgsecondallotRepository
perforAgsecondallotRepository
;
private
readonly
PerforAgsecondallotRepository
perforAgsecondallotRepository
;
private
readonly
PerforResreservedRepository
perforresreservedRepository
;
private
readonly
PerforHospitalRepository
hospitalRepository
;
private
readonly
PerforHospitalRepository
hospitalRepository
;
private
readonly
PerforImemployeeRepository
perforImEmployeeRepository
;
private
readonly
PerforImemployeeRepository
perforImEmployeeRepository
;
private
readonly
PerforRescomputeRepository
perforRescomputeRepository
;
private
readonly
PerforRescomputeRepository
perforRescomputeRepository
;
...
@@ -50,7 +49,6 @@ public class ResultComputeService : IAutoInjection
...
@@ -50,7 +49,6 @@ public class ResultComputeService : IAutoInjection
PerforPerallotRepository
perforPerallotRepository
,
PerforPerallotRepository
perforPerallotRepository
,
PerforAgcomputeRepository
perforAgcomputeRepository
,
PerforAgcomputeRepository
perforAgcomputeRepository
,
PerforAgsecondallotRepository
perforAgsecondallotRepository
,
PerforAgsecondallotRepository
perforAgsecondallotRepository
,
PerforResreservedRepository
perforresreservedRepository
,
PerforImemployeeclinicRepository
perforImemployeeclinicRepository
,
PerforImemployeeclinicRepository
perforImemployeeclinicRepository
,
PerforImemployeelogisticsRepository
perforImemployeelogisticsRepository
,
PerforImemployeelogisticsRepository
perforImemployeelogisticsRepository
,
ILogger
<
ResultComputeService
>
logger
)
ILogger
<
ResultComputeService
>
logger
)
...
@@ -70,7 +68,6 @@ public class ResultComputeService : IAutoInjection
...
@@ -70,7 +68,6 @@ public class ResultComputeService : IAutoInjection
this
.
perforPerallotRepository
=
perforPerallotRepository
;
this
.
perforPerallotRepository
=
perforPerallotRepository
;
this
.
perforAgcomputeRepository
=
perforAgcomputeRepository
;
this
.
perforAgcomputeRepository
=
perforAgcomputeRepository
;
this
.
perforAgsecondallotRepository
=
perforAgsecondallotRepository
;
this
.
perforAgsecondallotRepository
=
perforAgsecondallotRepository
;
this
.
perforresreservedRepository
=
perforresreservedRepository
;
this
.
perforImemployeeclinicRepository
=
perforImemployeeclinicRepository
;
this
.
perforImemployeeclinicRepository
=
perforImemployeeclinicRepository
;
this
.
perforImemployeelogisticsRepository
=
perforImemployeelogisticsRepository
;
this
.
perforImemployeelogisticsRepository
=
perforImemployeelogisticsRepository
;
this
.
logger
=
logger
;
this
.
logger
=
logger
;
...
@@ -351,172 +348,172 @@ private IEnumerable<PerDataSpecialUnit> CalculateSpecialUnit(PerSheet specialUni
...
@@ -351,172 +348,172 @@ private IEnumerable<PerDataSpecialUnit> CalculateSpecialUnit(PerSheet specialUni
#
region
预留金额
#
region
预留金额
/// <summary>
///
//
<summary>
/// 二次绩效审核通过后修改绩效预留金额
///
//
二次绩效审核通过后修改绩效预留金额
/// </summary>
///
//
</summary>
/// <param name="secondId"></param>
///
//
<param name="secondId"></param>
public
void
SaveSecondReserved
(
int
secondId
)
//
public void SaveSecondReserved(int secondId)
{
//
{
var
second
=
perforAgsecondallotRepository
.
GetEntity
(
t
=>
t
.
Id
==
secondId
);
//
var second = perforAgsecondallotRepository.GetEntity(t => t.Id == secondId);
if
(
second
==
null
)
//
if (second == null)
throw
new
PerformanceException
(
"参数信息无效"
);
//
throw new PerformanceException("参数信息无效");
var
allot
=
perforPerallotRepository
.
GetEntity
(
t
=>
t
.
ID
==
second
.
AllotId
);
//
var allot = perforPerallotRepository.GetEntity(t => t.ID == second.AllotId);
if
(
allot
==
null
)
//
if (allot == null)
throw
new
PerformanceException
(
"参数信息无效"
);
//
throw new PerformanceException("参数信息无效");
var
again
=
perforAgcomputeRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
allot
.
ID
);
//
var again = perforAgcomputeRepository.GetEntities(t => t.AllotId == allot.ID);
if
(
again
!=
null
&&
again
.
Any
())
//
if (again != null && again.Any())
{
//
{
var
empDic
=
perforPeremployeeRepository
.
GetEntities
(
w
=>
w
.
AllotId
==
allot
.
ID
);
//
var empDic = perforPeremployeeRepository.GetEntities(w => w.AllotId == allot.ID);
var
group
=
again
.
GroupBy
(
t
=>
new
{
t
.
Department
,
t
.
JobNumber
,
t
.
PersonName
})
//
var group = again.GroupBy(t => new { t.Department, t.JobNumber, t.PersonName })
.
Select
(
t
=>
new
ComputeResponse
//
.Select(t => new ComputeResponse
{
//
{
UnitType
=
second
.
UnitType
,
//
UnitType = second.UnitType,
AccountingUnit
=
t
.
Key
.
Department
,
//
AccountingUnit = t.Key.Department,
JobNumber
=
t
.
Key
.
JobNumber
,
//
JobNumber = t.Key.JobNumber,
EmployeeName
=
t
.
Key
.
PersonName
,
//
EmployeeName = t.Key.PersonName,
RealGiveFee
=
t
.
Sum
(
g
=>
g
.
RealGiveFee
)
//
RealGiveFee = t.Sum(g => g.RealGiveFee)
});
//
});
AddOrUpdate
(
allot
,
empDic
,
group
);
//
AddOrUpdate(allot, empDic, group);
}
//
}
}
//
}
/// <summary>
///
//
<summary>
/// 绩效生成完成后修改绩效预留金额
///
//
绩效生成完成后修改绩效预留金额
/// </summary>
///
//
</summary>
/// <param name="allot"></param>
///
//
<param name="allot"></param>
public
void
SaveReserved
(
per_allot
allot
,
int
hospitalId
)
//
public void SaveReserved(per_allot allot, int hospitalId)
{
//
{
var
mTypes
=
new
List
<
string
>
{
AccountUnitType
.
行政中层
.
ToString
(),
AccountUnitType
.
行政高层
.
ToString
(),
AccountUnitType
.
行政工勤
.
ToString
()
};
//
var mTypes = new List<string> { AccountUnitType.行政中层.ToString(), AccountUnitType.行政高层.ToString(), AccountUnitType.行政工勤.ToString() };
var
hospital
=
hospitalRepository
.
GetEntity
(
w
=>
w
.
ID
==
hospitalId
);
//
var hospital = hospitalRepository.GetEntity(w => w.ID == hospitalId);
if
(
hospital
?.
IsShowManage
==
1
)
//
if (hospital?.IsShowManage == 1)
mTypes
.
AddRange
(
new
List
<
string
>
{
AccountUnitType
.
护士长
.
ToString
(),
AccountUnitType
.
科主任
.
ToString
()
});
//
mTypes.AddRange(new List<string> { AccountUnitType.护士长.ToString(), AccountUnitType.科主任.ToString() });
var
resComputes
=
perforRescomputeRepository
//
var resComputes = perforRescomputeRepository
.
GetEntities
(
t
=>
t
.
AllotID
==
allot
.
ID
&&
mTypes
.
Contains
(
t
.
AccountType
)
&&
(
string
.
IsNullOrEmpty
(
t
.
NeedSecondAllot
)
||
t
.
NeedSecondAllot
==
"否"
))
//
.GetEntities(t => t.AllotID == allot.ID && mTypes.Contains(t.AccountType) && (string.IsNullOrEmpty(t.NeedSecondAllot) || t.NeedSecondAllot == "否"))
?.
OrderByDescending
(
t
=>
t
.
AccountingUnit
);
//
?.OrderByDescending(t => t.AccountingUnit);
if
(
resComputes
!=
null
&&
resComputes
.
Any
())
//
if (resComputes != null && resComputes.Any())
{
//
{
var
empDic
=
perforPeremployeeRepository
.
GetEntities
(
w
=>
w
.
AllotId
==
allot
.
ID
);
//
var empDic = perforPeremployeeRepository.GetEntities(w => w.AllotId == allot.ID);
var
group
=
resComputes
.
GroupBy
(
t
=>
new
{
t
.
UnitType
,
t
.
AccountingUnit
,
t
.
EmployeeName
,
t
.
JobNumber
})
//
var group = resComputes.GroupBy(t => new { t.UnitType, t.AccountingUnit, t.EmployeeName, t.JobNumber })
.
Select
(
t
=>
new
ComputeResponse
//
.Select(t => new ComputeResponse
{
//
{
UnitType
=
t
.
Key
.
UnitType
,
//
UnitType = t.Key.UnitType,
AccountingUnit
=
t
.
Key
.
AccountingUnit
,
//
AccountingUnit = t.Key.AccountingUnit,
EmployeeName
=
t
.
Key
.
EmployeeName
,
//
EmployeeName = t.Key.EmployeeName,
JobNumber
=
t
.
Key
.
JobNumber
,
//
JobNumber = t.Key.JobNumber,
RealGiveFee
=
t
.
Sum
(
g
=>
g
.
RealGiveFee
)
//
RealGiveFee = t.Sum(g => g.RealGiveFee)
});
//
});
AddOrUpdate
(
allot
,
empDic
,
group
);
//
AddOrUpdate(allot, empDic, group);
}
//
}
}
//
}
private
void
AddOrUpdate
(
per_allot
allot
,
List
<
per_employee
>
empDic
,
IEnumerable
<
ComputeResponse
>
group
)
//
private void AddOrUpdate(per_allot allot, List<per_employee> empDic, IEnumerable<ComputeResponse> group)
{
//
{
var
reserveds
=
perforresreservedRepository
.
GetEntities
(
w
=>
w
.
HospitalId
==
allot
.
HospitalId
&&
w
.
Year
==
allot
.
Year
);
//
var reserveds = perforresreservedRepository.GetEntities(w => w.HospitalId == allot.HospitalId && w.Year == allot.Year);
List
<
res_reserved
>
updates
=
new
List
<
res_reserved
>(),
inserts
=
new
List
<
res_reserved
>();
//
List<res_reserved> updates = new List<res_reserved>(), inserts = new List<res_reserved>();
foreach
(
var
item
in
group
)
//
foreach (var item in group)
{
//
{
var
ratio
=
empDic
?.
FirstOrDefault
(
w
=>
w
.
PersonnelNumber
==
item
.
JobNumber
)?.
ReservedRatio
??
0
;
//
var ratio = empDic?.FirstOrDefault(w => w.PersonnelNumber == item.JobNumber)?.ReservedRatio ?? 0;
var
reserved
=
reserveds
?.
FirstOrDefault
(
w
=>
w
.
AccountingUnit
==
item
.
AccountingUnit
&&
w
.
JobNumber
==
item
.
JobNumber
);
//
var reserved = reserveds?.FirstOrDefault(w => w.AccountingUnit == item.AccountingUnit && w.JobNumber == item.JobNumber);
if
(
reserved
==
null
)
//
if (reserved == null)
{
//
{
reserved
=
new
res_reserved
//
reserved = new res_reserved
{
//
{
UnitType
=
item
.
UnitType
,
//
UnitType = item.UnitType,
HospitalId
=
allot
.
HospitalId
,
//
HospitalId = allot.HospitalId,
Year
=
allot
.
Year
,
//
Year = allot.Year,
AccountingUnit
=
item
.
AccountingUnit
,
//
AccountingUnit = item.AccountingUnit,
JobNumber
=
item
.
JobNumber
,
//
JobNumber = item.JobNumber,
EmployeeName
=
item
.
EmployeeName
,
//
EmployeeName = item.EmployeeName,
};
//
};
inserts
.
Add
(
reserved
);
//
inserts.Add(reserved);
}
//
}
else
//
else
updates
.
Add
(
reserved
);
//
updates.Add(reserved);
ChangeRealGiveFee
(
reserved
,
allot
,
item
.
RealGiveFee
??
0
,
ratio
);
//
ChangeRealGiveFee(reserved, allot, item.RealGiveFee ?? 0, ratio);
}
//
}
perforresreservedRepository
.
AddRange
(
inserts
.
ToArray
());
//
perforresreservedRepository.AddRange(inserts.ToArray());
perforresreservedRepository
.
UpdateRange
(
updates
.
ToArray
());
//
perforresreservedRepository.UpdateRange(updates.ToArray());
}
//
}
/// <summary>
///
//
<summary>
/// 修改绩效金额
///
//
修改绩效金额
/// </summary>
///
//
</summary>
/// <param name="reserved"></param>
///
//
<param name="reserved"></param>
/// <param name="allot"></param>
///
//
<param name="allot"></param>
/// <param name="realGiveFee"></param>
///
//
<param name="realGiveFee"></param>
/// <param name="ratio"></param>
///
//
<param name="ratio"></param>
private
void
ChangeRealGiveFee
(
res_reserved
reserved
,
per_allot
allot
,
decimal
realGiveFee
,
decimal
ratio
)
//
private void ChangeRealGiveFee(res_reserved reserved, per_allot allot, decimal realGiveFee, decimal ratio)
{
//
{
if
(
allot
.
Month
==
1
)
//
if (allot.Month == 1)
{
//
{
reserved
.
JanFee
=
realGiveFee
;
//
reserved.JanFee = realGiveFee;
reserved
.
JanRatio
=
ratio
;
//
reserved.JanRatio = ratio;
}
//
}
else
if
(
allot
.
Month
==
2
)
//
else if (allot.Month == 2)
{
//
{
reserved
.
FebFee
=
realGiveFee
;
//
reserved.FebFee = realGiveFee;
reserved
.
FebRatio
=
ratio
;
//
reserved.FebRatio = ratio;
}
//
}
else
if
(
allot
.
Month
==
3
)
//
else if (allot.Month == 3)
{
//
{
reserved
.
MarFee
=
realGiveFee
;
//
reserved.MarFee = realGiveFee;
reserved
.
MarRatio
=
ratio
;
//
reserved.MarRatio = ratio;
}
//
}
else
if
(
allot
.
Month
==
4
)
//
else if (allot.Month == 4)
{
//
{
reserved
.
AprFee
=
realGiveFee
;
//
reserved.AprFee = realGiveFee;
reserved
.
AprRatio
=
ratio
;
//
reserved.AprRatio = ratio;
}
//
}
else
if
(
allot
.
Month
==
5
)
//
else if (allot.Month == 5)
{
//
{
reserved
.
MayFee
=
realGiveFee
;
//
reserved.MayFee = realGiveFee;
reserved
.
MayRatio
=
ratio
;
//
reserved.MayRatio = ratio;
}
//
}
else
if
(
allot
.
Month
==
6
)
//
else if (allot.Month == 6)
{
//
{
reserved
.
JunFee
=
realGiveFee
;
//
reserved.JunFee = realGiveFee;
reserved
.
JunRatio
=
ratio
;
//
reserved.JunRatio = ratio;
}
//
}
else
if
(
allot
.
Month
==
7
)
//
else if (allot.Month == 7)
{
//
{
reserved
.
JulFee
=
realGiveFee
;
//
reserved.JulFee = realGiveFee;
reserved
.
JulRatio
=
ratio
;
//
reserved.JulRatio = ratio;
}
//
}
else
if
(
allot
.
Month
==
8
)
//
else if (allot.Month == 8)
{
//
{
reserved
.
AugFee
=
realGiveFee
;
//
reserved.AugFee = realGiveFee;
reserved
.
AugRatio
=
ratio
;
//
reserved.AugRatio = ratio;
}
//
}
else
if
(
allot
.
Month
==
9
)
//
else if (allot.Month == 9)
{
//
{
reserved
.
SepFee
=
realGiveFee
;
//
reserved.SepFee = realGiveFee;
reserved
.
SepRatio
=
ratio
;
//
reserved.SepRatio = ratio;
}
//
}
else
if
(
allot
.
Month
==
10
)
//
else if (allot.Month == 10)
{
//
{
reserved
.
OctFee
=
realGiveFee
;
//
reserved.OctFee = realGiveFee;
reserved
.
OctRatio
=
ratio
;
//
reserved.OctRatio = ratio;
}
//
}
else
if
(
allot
.
Month
==
11
)
//
else if (allot.Month == 11)
{
//
{
reserved
.
NovFee
=
realGiveFee
;
//
reserved.NovFee = realGiveFee;
reserved
.
NovRatio
=
ratio
;
//
reserved.NovRatio = ratio;
}
//
}
else
if
(
allot
.
Month
==
12
)
//
else if (allot.Month == 12)
{
//
{
reserved
.
DecFee
=
realGiveFee
;
//
reserved.DecFee = realGiveFee;
reserved
.
DecRatio
=
ratio
;
//
reserved.DecRatio = ratio;
}
//
}
}
//
}
#
endregion
预留金额
#
endregion
预留金额
...
...
performance/Performance.Services/AllotService.cs
View file @
91ced9f1
...
@@ -26,7 +26,6 @@ public class AllotService : IAutoInjection
...
@@ -26,7 +26,6 @@ public class AllotService : IAutoInjection
private
ProcessComputService
processComputService
;
private
ProcessComputService
processComputService
;
private
ResultComputeService
resultComputeService
;
private
ResultComputeService
resultComputeService
;
private
PerforLogdbugRepository
logdbug
;
private
PerforLogdbugRepository
logdbug
;
private
readonly
PerforResreservedRepository
perforresreservedRepository
;
private
ConfigService
configService
;
private
ConfigService
configService
;
private
IHostingEnvironment
_evn
;
private
IHostingEnvironment
_evn
;
private
ILogger
<
AllotService
>
_logger
;
private
ILogger
<
AllotService
>
_logger
;
...
@@ -44,6 +43,8 @@ public class AllotService : IAutoInjection
...
@@ -44,6 +43,8 @@ public class AllotService : IAutoInjection
private
readonly
RoleService
roleService
;
private
readonly
RoleService
roleService
;
private
readonly
UserService
userService
;
private
readonly
UserService
userService
;
private
PerforCofdirectorRepository
perforCofdirectorRepository
;
private
PerforCofdirectorRepository
perforCofdirectorRepository
;
private
readonly
PerforReportRepository
_reportRepository
;
private
readonly
PerforPeremployeeRepository
_perforPeremployeeRepository
;
//private readonly IHubContext<AllotLogHub> hubContext;
//private readonly IHubContext<AllotLogHub> hubContext;
private
readonly
LogManageService
logManageService
;
private
readonly
LogManageService
logManageService
;
...
@@ -51,33 +52,35 @@ public class AllotService : IAutoInjection
...
@@ -51,33 +52,35 @@ public class AllotService : IAutoInjection
private
readonly
ReportService
reportService
;
private
readonly
ReportService
reportService
;
private
readonly
QueryDataService
queryDataService
;
private
readonly
QueryDataService
queryDataService
;
public
AllotService
(
PerforPerallotRepository
allotRepository
,
public
AllotService
(
BaiscNormService
baiscNormService
,
PerforPerallotRepository
allotRepository
,
CheckDataService
checkDataService
,
BaiscNormService
baiscNormService
,
ImportDataService
importDataService
,
CheckDataService
checkDataService
,
ProcessComputService
processComputService
,
ImportDataService
importDataService
,
ResultComputeService
resultComputeService
,
ProcessComputService
processComputService
,
ConfigService
configService
,
ResultComputeService
resultComputeService
,
PerforLogdbugRepository
logdbug
,
ConfigService
configService
,
PerforResreservedRepository
perforresreservedRepository
,
PerforLogdbugRepository
logdbug
,
IHostingEnvironment
evn
,
ILogger
<
AllotService
>
logger
,
IHostingEnvironment
evn
,
ILogger
<
AllotService
>
logger
,
IEmailService
emailService
,
IEmailService
emailService
,
IOptions
<
Application
>
options
,
IOptions
<
Application
>
options
,
ComputeDirector
computeDirector
,
ComputeDirector
computeDirector
,
PerforRescomputeRepository
perforRescomputeRepository
,
PerforRescomputeRepository
perforRescomputeRepository
,
PerforImemployeeRepository
perforImEmployeeRepository
,
PerforImemployeeRepository
perforImEmployeeRepository
,
PerforPeragainallotRepository
againallotRepository
,
PerforPeragainallotRepository
againallotRepository
,
PerforLogcheckRepository
perforLogcheckRepository
,
PerforLogcheckRepository
perforLogcheckRepository
,
PerforHospitalRepository
perforHospitalRepository
,
PerforHospitalRepository
perforHospitalRepository
,
PerforResbaiscnormRepository
perforResbaiscnormRepository
,
PerforResbaiscnormRepository
perforResbaiscnormRepository
,
PerforHospitalconfigRepository
perforHospitalconfigRepository
,
PerforHospitalconfigRepository
perforHospitalconfigRepository
,
//IHubContext<AllotLogHub> hubContext
//IHubContext<AllotLogHub> hubContext
RoleService
roleService
,
RoleService
roleService
,
UserService
userService
,
UserService
userService
,
LogManageService
logManageService
,
LogManageService
logManageService
,
ReportService
reportService
,
ReportService
reportService
,
PerforCofdirectorRepository
perforCofdirectorRepository
,
PerforCofdirectorRepository
perforCofdirectorRepository
,
QueryDataService
queryDataService
)
PerforReportRepository
reportRepository
,
PerforPeremployeeRepository
perforPeremployeeRepository
,
QueryDataService
queryDataService
)
{
{
_allotRepository
=
allotRepository
;
_allotRepository
=
allotRepository
;
_againallotRepository
=
againallotRepository
;
_againallotRepository
=
againallotRepository
;
...
@@ -95,7 +98,6 @@ public class AllotService : IAutoInjection
...
@@ -95,7 +98,6 @@ public class AllotService : IAutoInjection
_perforImEmployeeRepository
=
perforImEmployeeRepository
;
_perforImEmployeeRepository
=
perforImEmployeeRepository
;
this
.
configService
=
configService
;
this
.
configService
=
configService
;
this
.
logdbug
=
logdbug
;
this
.
logdbug
=
logdbug
;
this
.
perforresreservedRepository
=
perforresreservedRepository
;
this
.
perforLogcheckRepository
=
perforLogcheckRepository
;
this
.
perforLogcheckRepository
=
perforLogcheckRepository
;
this
.
perforHospitalRepository
=
perforHospitalRepository
;
this
.
perforHospitalRepository
=
perforHospitalRepository
;
this
.
perforResbaiscnormRepository
=
perforResbaiscnormRepository
;
this
.
perforResbaiscnormRepository
=
perforResbaiscnormRepository
;
...
@@ -106,6 +108,8 @@ public class AllotService : IAutoInjection
...
@@ -106,6 +108,8 @@ public class AllotService : IAutoInjection
this
.
logManageService
=
logManageService
;
this
.
logManageService
=
logManageService
;
this
.
reportService
=
reportService
;
this
.
reportService
=
reportService
;
this
.
perforCofdirectorRepository
=
perforCofdirectorRepository
;
this
.
perforCofdirectorRepository
=
perforCofdirectorRepository
;
_reportRepository
=
reportRepository
;
_perforPeremployeeRepository
=
perforPeremployeeRepository
;
this
.
queryDataService
=
queryDataService
;
this
.
queryDataService
=
queryDataService
;
}
}
...
@@ -431,9 +435,9 @@ public void Generate(per_allot allot)
...
@@ -431,9 +435,9 @@ public void Generate(per_allot allot)
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"保存绩效人均参考标准"
,
1
,
allot
.
ID
,
"ReceiveMessage"
,
true
);
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"保存绩效人均参考标准"
,
1
,
allot
.
ID
,
"ReceiveMessage"
,
true
);
perforResbaiscnormRepository
.
AddRange
(
baiscnormList
.
ToArray
());
perforResbaiscnormRepository
.
AddRange
(
baiscnormList
.
ToArray
());
// 保存预留绩效
//
//
保存预留绩效
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"保存预留绩效金额"
,
1
,
allot
.
ID
,
"ReceiveMessage"
,
true
);
//
logManageService.WriteMsg("正在生成绩效", "保存预留绩效金额", 1, allot.ID, "ReceiveMessage", true);
resultComputeService
.
SaveReserved
(
allot
,
allot
.
HospitalId
);
//
resultComputeService.SaveReserved(allot, allot.HospitalId);
// 科室下发
// 科室下发
resultComputeService
.
GenerateSecondAllot
(
allot
);
resultComputeService
.
GenerateSecondAllot
(
allot
);
...
@@ -625,7 +629,14 @@ public List<log_dbug> AllotLog(per_allot allot, int type)
...
@@ -625,7 +629,14 @@ public List<log_dbug> AllotLog(per_allot allot, int type)
return
list
;
return
list
;
}
}
public
List
<
res_reserved
>
GetReserved
(
int
hospitalId
,
int
year
,
int
userid
)
/// <summary>
/// 获取医院预留绩效
/// </summary>
/// <param name="hospitalId"></param>
/// <param name="year"></param>
/// <param name="userid"></param>
/// <returns></returns>
public
List
<
EmployeeReservedDto
>
GetReserved
(
int
hospitalId
,
int
year
,
int
userid
)
{
{
var
user
=
userService
.
GetUser
(
userid
);
var
user
=
userService
.
GetUser
(
userid
);
if
(
user
==
null
)
if
(
user
==
null
)
...
@@ -635,23 +646,96 @@ public List<res_reserved> GetReserved(int hospitalId, int year, int userid)
...
@@ -635,23 +646,96 @@ public List<res_reserved> GetReserved(int hospitalId, int year, int userid)
if
(!
role
.
HasValue
)
if
(!
role
.
HasValue
)
throw
new
PerformanceException
(
"用户信息错误"
);
throw
new
PerformanceException
(
"用户信息错误"
);
var
roleTypes
=
new
[]
{
options
.
Value
.
NurseRole
,
options
.
Value
.
DirectorRole
,
options
.
Value
.
SpecialRole
,
options
.
Value
.
OfficeRole
};
var
reserveds
=
_reportRepository
.
GetEmployeeReserved
(
hospitalId
,
year
);
var
reserveds
=
perforresreservedRepository
.
GetEntities
(
w
=>
w
.
HospitalId
==
hospitalId
&&
w
.
Year
==
year
);
if
(
reserveds
!=
null
&&
reserveds
.
Any
())
if
(
reserveds
!=
null
&&
reserveds
.
Any
())
{
{
if
(
role
.
Value
==
options
.
Value
.
NurseRole
)
if
(
role
.
Value
==
options
.
Value
.
NurseRole
)
reserveds
=
reserveds
.
Where
(
w
=>
!
string
.
IsNullOrEmpty
(
w
.
UnitType
)
&&
w
.
UnitType
.
Contains
(
UnitType
.
护理组
.
ToString
()
)
&&
w
.
AccountingUnit
==
user
.
Department
)?.
ToList
();
reserveds
=
reserveds
.
Where
(
w
=>
UnitTypeUtil
.
Is
(
w
.
UnitType
,
UnitType
.
护理组
,
UnitType
.
其他护理组
)
&&
w
.
AccountingUnit
==
user
.
Department
)?.
ToList
();
else
if
(
role
.
Value
==
options
.
Value
.
DirectorRole
)
else
if
(
role
.
Value
==
options
.
Value
.
DirectorRole
)
reserveds
=
reserveds
.
Where
(
w
=>
!
string
.
IsNullOrEmpty
(
w
.
UnitType
)
&&
(
w
.
UnitType
.
Contains
(
UnitType
.
医生组
.
ToString
())
||
w
.
UnitType
.
Contains
(
UnitType
.
医技组
.
ToString
())
)
&&
w
.
AccountingUnit
==
user
.
Department
)?.
ToList
();
reserveds
=
reserveds
.
Where
(
w
=>
UnitTypeUtil
.
Is
(
w
.
UnitType
,
UnitType
.
医生组
,
UnitType
.
其他医生组
,
UnitType
.
医技组
,
UnitType
.
其他医技组
)
&&
w
.
AccountingUnit
==
user
.
Department
)?.
ToList
();
else
if
(
role
.
Value
==
options
.
Value
.
SpecialRole
)
else
if
(
role
.
Value
==
options
.
Value
.
SpecialRole
)
reserveds
=
reserveds
.
Where
(
w
=>
!
string
.
IsNullOrEmpty
(
w
.
UnitType
)
&&
w
.
UnitType
.
Contains
(
UnitType
.
特殊核算组
.
ToString
()
)
&&
w
.
AccountingUnit
==
user
.
Department
)?.
ToList
();
reserveds
=
reserveds
.
Where
(
w
=>
UnitTypeUtil
.
Is
(
w
.
UnitType
,
UnitType
.
特殊核算组
)
&&
w
.
AccountingUnit
==
user
.
Department
)?.
ToList
();
else
if
(
role
.
Value
==
options
.
Value
.
OfficeRole
)
else
if
(
role
.
Value
==
options
.
Value
.
OfficeRole
)
reserveds
=
reserveds
.
Where
(
w
=>
!
string
.
IsNullOrEmpty
(
w
.
UnitType
)
&&
(
w
.
UnitType
.
Contains
(
UnitType
.
行政中层
.
ToString
())
||
w
.
UnitType
.
Contains
(
UnitType
.
行政后勤
.
ToString
())
)
&&
w
.
AccountingUnit
==
user
.
Department
)?.
ToList
();
reserveds
=
reserveds
.
Where
(
w
=>
UnitTypeUtil
.
Is
(
w
.
UnitType
,
UnitType
.
行政中层
,
UnitType
.
行政后勤
)
&&
w
.
AccountingUnit
==
user
.
Department
)?.
ToList
();
}
}
return
reserveds
;
return
reserveds
;
}
}
/// <summary>
/// 查询个人绩效
/// </summary>
/// <param name="userid"></param>
/// <returns></returns>
public
List
<
OwnerPerformanceDto
>
GetOwnerPerformance
(
int
userid
)
{
var
user
=
userService
.
GetUser
(
userid
);
if
(
user
==
null
)
throw
new
PerformanceException
(
"用户信息错误"
);
var
roleType
=
roleService
.
GetUserRole
(
userid
)?.
FirstOrDefault
()?.
Type
;
if
(!
roleType
.
HasValue
)
throw
new
PerformanceException
(
"用户信息错误"
);
if
(
roleType
!=
(
int
)
Role
.
绩效查询
)
throw
new
PerformanceException
(
"当前用户暂不支持绩效查询"
);
var
hospitals
=
userService
.
GetUserHospital
(
userid
);
string
jobNumber
=
user
.
Login
;
var
owner
=
_reportRepository
.
GetOwnerPerformance
(
hospitals
,
jobNumber
);
if
(
owner
==
null
||
!
owner
.
Any
())
return
new
List
<
OwnerPerformanceDto
>();
var
employees
=
_perforPeremployeeRepository
.
GetEntities
(
w
=>
w
.
PersonnelNumber
==
jobNumber
);
var
res
=
owner
.
GroupBy
(
w
=>
new
{
w
.
AllotId
,
w
.
Year
,
w
.
Month
,
w
.
JobNumber
})
.
Select
(
w
=>
new
OwnerPerformanceDto
{
AllotId
=
w
.
Key
.
AllotId
,
Year
=
w
.
Key
.
Year
,
Month
=
w
.
Key
.
Month
,
JobNumber
=
w
.
Key
.
JobNumber
,
PerforSumFee
=
Math
.
Round
(
w
.
Sum
(
p
=>
p
.
PerforSumFee
)
??
0
,
2
,
MidpointRounding
.
AwayFromZero
),
// 业绩绩效
PerforManagementFee
=
Math
.
Round
(
w
.
Sum
(
p
=>
p
.
PerforManagementFee
)
??
0
,
2
,
MidpointRounding
.
AwayFromZero
),
// 管理绩效
NightWorkPerfor
=
Math
.
Round
(
w
.
Sum
(
p
=>
p
.
NightWorkPerfor
)
??
0
,
2
,
MidpointRounding
.
AwayFromZero
),
// 夜班绩效
AdjustLaterOtherFee
=
Math
.
Round
(
w
.
Sum
(
p
=>
p
.
AdjustLaterOtherFee
)
??
0
,
2
,
MidpointRounding
.
AwayFromZero
),
// 调节后其他绩效
OtherPerfor
=
Math
.
Round
(
w
.
Sum
(
p
=>
p
.
OtherPerfor
)
??
0
,
2
,
MidpointRounding
.
AwayFromZero
),
// 医院其他绩效
HideOtherPerfor
=
Math
.
Round
(
w
.
Sum
(
p
=>
p
.
HideOtherPerfor
)
??
0
,
2
,
MidpointRounding
.
AwayFromZero
),
// 不公示其他绩效
RealPerformance
=
Math
.
Round
(
w
.
Sum
(
p
=>
p
.
RealPerformance
)
??
0
,
2
,
MidpointRounding
.
AwayFromZero
),
// 中转使用: 业绩绩效+管理绩效+调节后其他绩效
Detail
=
w
.
Where
(
p
=>
p
.
Year
==
w
.
Key
.
Year
&&
p
.
Month
==
w
.
Key
.
Month
&&
p
.
JobNumber
==
w
.
Key
.
JobNumber
)
.
Select
(
detial
=>
{
var
dto
=
Mapper
.
Map
<
OwnerPerformanceDto
>(
detial
);
// 应发绩效
dto
.
ShouldGiveFee
=
Math
.
Round
((
dto
.
RealPerformance
??
0
)
+
(
dto
.
OtherPerfor
??
0
)
+
(
dto
.
HideOtherPerfor
??
0
)
+
(
dto
.
NightWorkPerfor
??
0
),
2
,
MidpointRounding
.
AwayFromZero
);
dto
.
ReservedRatio
=
employees
?.
FirstOrDefault
(
emp
=>
emp
.
AllotId
==
dto
.
AllotId
&&
emp
.
PersonnelNumber
==
jobNumber
)?.
ReservedRatio
??
0
;
// 预留比例
dto
.
ReservedRatioFee
=
Math
.
Round
((
dto
.
RealPerformance
??
0
)
*
(
dto
.
ReservedRatio
??
0
),
2
,
MidpointRounding
.
AwayFromZero
);
// 预留绩效
dto
.
RealGiveFee
=
Math
.
Round
(
dto
.
ShouldGiveFee
-
(
dto
.
ReservedRatioFee
??
0
)
??
0
,
2
,
MidpointRounding
.
AwayFromZero
);
// 实发绩效
return
dto
;
}),
})
.
ToList
();
foreach
(
var
item
in
res
)
{
item
.
UnitType
=
employees
?.
FirstOrDefault
(
w
=>
w
.
AllotId
==
item
.
AllotId
&&
w
.
PersonnelNumber
==
jobNumber
)?.
UnitType
??
""
;
item
.
AccountingUnit
=
employees
?.
FirstOrDefault
(
w
=>
w
.
AllotId
==
item
.
AllotId
&&
w
.
PersonnelNumber
==
jobNumber
)?.
AccountingUnit
??
""
;
item
.
EmployeeName
=
employees
?.
FirstOrDefault
(
w
=>
w
.
AllotId
==
item
.
AllotId
&&
w
.
PersonnelNumber
==
jobNumber
)?.
DoctorName
??
""
;
// 全部是0的记录不显示
item
.
Detail
=
item
.
Detail
.
Where
(
w
=>
!(
w
.
PerforSumFee
==
0
&&
w
.
PerforManagementFee
==
0
&&
w
.
ShouldGiveFee
==
0
&&
w
.
OtherPerfor
==
0
&&
w
.
HideOtherPerfor
==
0
&&
w
.
RealGiveFee
==
0
));
// 为了保证总额一致
item
.
ShouldGiveFee
=
Math
.
Round
(
item
.
Detail
?.
Sum
(
w
=>
w
.
ShouldGiveFee
)
??
0
,
2
,
MidpointRounding
.
AwayFromZero
);
// 应发绩效
item
.
ReservedRatio
=
employees
?.
FirstOrDefault
(
w
=>
w
.
AllotId
==
item
.
AllotId
&&
w
.
PersonnelNumber
==
jobNumber
)?.
ReservedRatio
??
0
;
// 预留比例
item
.
ReservedRatioFee
=
Math
.
Round
(
item
.
Detail
?.
Sum
(
w
=>
w
.
ReservedRatioFee
)
??
0
,
2
,
MidpointRounding
.
AwayFromZero
);
// 预留绩效
item
.
RealGiveFee
=
Math
.
Round
(
item
.
Detail
?.
Sum
(
w
=>
w
.
RealGiveFee
)
??
0
,
2
,
MidpointRounding
.
AwayFromZero
);
// 实发绩效
}
return
res
?.
OrderByDescending
(
w
=>
w
.
Year
).
ThenByDescending
(
w
=>
w
.
Month
).
ToList
();
}
}
}
}
}
performance/Performance.Services/ConfigService.cs
View file @
91ced9f1
...
@@ -898,7 +898,7 @@ public void Copy(per_allot allot)
...
@@ -898,7 +898,7 @@ public void Copy(per_allot allot)
var
index
=
list
.
IndexOf
(
list
.
First
(
t
=>
t
.
ID
==
allot
.
ID
));
var
index
=
list
.
IndexOf
(
list
.
First
(
t
=>
t
.
ID
==
allot
.
ID
));
// 先取上一个月的绩效Id,若没有取最后一个月的绩效Id,若都不存在则获取allotId为-1的数据
// 先取上一个月的绩效Id,若没有取最后一个月的绩效Id,若都不存在则获取allotId为-1的数据
int
allotId
=
index
==
list
.
Count
-
1
?
list
.
First
().
ID
:
list
[
index
-
1
]
.
ID
;
int
allotId
=
index
+
1
<
list
.
Count
?
list
[
index
+
1
].
ID
:
list
.
First
()
.
ID
;
if
(
allotId
==
allot
.
ID
)
allotId
=
-
1
;
if
(
allotId
==
allot
.
ID
)
allotId
=
-
1
;
#
region
弃用
#
region
弃用
...
...
performance/Performance.Services/PerExcelService/PerSheetService.cs
View file @
91ced9f1
...
@@ -17,7 +17,7 @@ public class PerSheetService : IAutoInjection
...
@@ -17,7 +17,7 @@ public class PerSheetService : IAutoInjection
//private PerforCofdrugpropRepository _perforCofdrugpropRepository;
//private PerforCofdrugpropRepository _perforCofdrugpropRepository;
private
PerforCofdrugtypeRepository
_perforCofdrugtypeRepository
;
private
PerforCofdrugtypeRepository
_perforCofdrugtypeRepository
;
public
PerSheetService
(
PerHeaderService
perHeader
,
public
PerSheetService
(
PerHeaderService
perHeader
,
//PerforCofdrugpropRepository perforCofdrugpropRepository,
//PerforCofdrugpropRepository perforCofdrugpropRepository,
PerforCofdrugtypeRepository
perforCofdrugtypeRepository
)
PerforCofdrugtypeRepository
perforCofdrugtypeRepository
)
{
{
_perHeader
=
perHeader
;
_perHeader
=
perHeader
;
...
@@ -83,7 +83,7 @@ public SheetType GetSheetType(string sheetName)
...
@@ -83,7 +83,7 @@ public SheetType GetSheetType(string sheetName)
return
SheetType
.
Employee
;
return
SheetType
.
Employee
;
else
if
(
sheetName
.
StartsWith
(
"业务中层"
))
else
if
(
sheetName
.
StartsWith
(
"业务中层"
))
return
SheetType
.
ClinicEmployee
;
return
SheetType
.
ClinicEmployee
;
else
if
(
sheetName
.
StartsWith
(
"行政后勤"
))
else
if
(
sheetName
.
StartsWith
(
"行政后勤"
)
||
sheetName
.
StartsWith
(
"行政后勤-"
)
)
return
SheetType
.
LogisticsEmployee
;
return
SheetType
.
LogisticsEmployee
;
else
if
(
sheetName
.
StartsWith
(
"1.0"
))
else
if
(
sheetName
.
StartsWith
(
"1.0"
))
return
SheetType
.
OtherIncome
;
return
SheetType
.
OtherIncome
;
...
...
performance/Performance.Services/SecondAllotService.cs
View file @
91ced9f1
...
@@ -1615,7 +1615,7 @@ public bool AuditSubmit(ag_secondallot second, int userId)
...
@@ -1615,7 +1615,7 @@ public bool AuditSubmit(ag_secondallot second, int userId)
bool
VerifySubmissioAmount
(
decimal
?
leftAmount
,
decimal
?
rightAmount
)
bool
VerifySubmissioAmount
(
decimal
?
leftAmount
,
decimal
?
rightAmount
)
{
{
decimal
floatValue
=
0
.1
m
;
decimal
floatValue
=
0
m
;
return
Math
.
Abs
((
rightAmount
??
0
)
-
(
leftAmount
??
0
))
<=
floatValue
;
return
Math
.
Abs
((
rightAmount
??
0
)
-
(
leftAmount
??
0
))
<=
floatValue
;
}
}
...
...
performance/Performance.Services/UnitTypeUtil.cs
View file @
91ced9f1
using
Performance.DtoModels
;
using
Performance.DtoModels
;
using
System
;
using
System
;
using
System.Collections.Generic
;
using
System.Collections.Generic
;
using
System.Linq
;
using
System.Text
;
using
System.Text
;
namespace
Performance.Services
namespace
Performance.Services
...
@@ -30,10 +31,16 @@ public static bool IsOffice(string unit)
...
@@ -30,10 +31,16 @@ public static bool IsOffice(string unit)
/// 核算单元类型是否相同
/// 核算单元类型是否相同
/// </summary>
/// </summary>
/// <param name="left"></param>
/// <param name="left"></param>
/// <param name="right"></param>
/// <returns></returns>
/// <returns></returns>
public
static
bool
IsEqualsUnitType
(
string
left
,
string
right
)
public
static
bool
IsEqualsUnitType
(
string
left
,
string
right
)
{
{
return
left
?.
Replace
(
"行政后勤"
,
"行政工勤"
)
==
right
?.
Replace
(
"行政后勤"
,
"行政工勤"
);
return
left
?.
Replace
(
"行政后勤"
,
"行政工勤"
)
==
right
?.
Replace
(
"行政后勤"
,
"行政工勤"
);
}
}
public
static
bool
Is
(
string
unit
,
params
UnitType
[]
types
)
{
return
!
string
.
IsNullOrEmpty
(
unit
)
&&
types
.
Any
(
w
=>
IsEqualsUnitType
(
w
.
ToString
(),
unit
));
}
}
}
}
}
performance/Performance.Services/UserService.cs
View file @
91ced9f1
...
@@ -129,6 +129,14 @@ public sys_role GetUserFirstRole(int userId)
...
@@ -129,6 +129,14 @@ public sys_role GetUserFirstRole(int userId)
return
role
;
return
role
;
}
}
public
List
<
int
>
GetUserHospital
(
int
userId
)
{
var
userHospital
=
_userhospitalRepository
.
GetEntities
(
t
=>
t
.
UserID
==
userId
);
if
(
userHospital
!=
null
&&
userHospital
.
Any
(
w
=>
w
.
HospitalID
.
HasValue
))
return
userHospital
.
Where
(
w
=>
w
.
HospitalID
.
HasValue
).
Select
(
w
=>
w
.
HospitalID
.
Value
).
ToList
();
return
new
List
<
int
>();
}
/// <summary>
/// <summary>
/// 查询用户列表
/// 查询用户列表
/// </summary>
/// </summary>
...
...
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