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
1afb895e
Commit
1afb895e
authored
Nov 30, 2020
by
ruyun.zhang@suvalue.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
调节系数
parent
c4e34666
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
12 additions
and
6 deletions
+12
-6
performance/Performance.Services/AllotCompute/ProcessComputService.cs
+10
-4
performance/Performance.Services/AllotCompute/ResultComputeService.cs
+1
-1
performance/Performance.Services/AllotService.cs
+1
-1
No files found.
performance/Performance.Services/AllotCompute/ProcessComputService.cs
View file @
1afb895e
...
...
@@ -16,6 +16,7 @@ namespace Performance.Services.AllotCompute
/// </summary>
public
class
ProcessComputService
:
IAutoInjection
{
private
readonly
BudgetService
_budgetService
;
private
PerforCofincomeRepository
perforCofincomeRepository
;
private
PerforCofdrugpropRepository
perforCofdrugpropRepository
;
private
PerforPersheetRepository
perforPerSheetRepository
;
...
...
@@ -33,7 +34,9 @@ public class ProcessComputService : IAutoInjection
private
readonly
PerforHospitalRepository
hospitalRepository
;
private
readonly
PerforPerallotRepository
perallotRepository
;
public
ProcessComputService
(
PerforCofincomeRepository
perforCofincomeRepository
,
public
ProcessComputService
(
BudgetService
budgetService
,
PerforCofincomeRepository
perforCofincomeRepository
,
PerforCofdrugpropRepository
perforCofdrugpropRepository
,
PerforPersheetRepository
perforPerSheetRepository
,
PerforImdataRepository
perforImDataRepository
,
...
...
@@ -50,6 +53,7 @@ public class ProcessComputService : IAutoInjection
PerforHospitalRepository
hospitalRepository
,
PerforPerallotRepository
perallotRepository
)
{
_budgetService
=
budgetService
;
this
.
perforCofincomeRepository
=
perforCofincomeRepository
;
this
.
perforCofdrugpropRepository
=
perforCofdrugpropRepository
;
this
.
perforPerSheetRepository
=
perforPerSheetRepository
;
...
...
@@ -261,7 +265,7 @@ public void Save(List<PerSheet> perSheets, int allotId)
/// <param name="perSheet"></param>
/// <returns></returns>
///
public
List
<
PerSheet
>
Compute
(
PerExcel
excel
,
List
<
PerSheet
>
perSheet
)
public
List
<
PerSheet
>
Compute
(
PerExcel
excel
,
List
<
PerSheet
>
perSheet
,
per_allot
allot
)
{
var
accountList
=
excel
.
PerSheet
.
FirstOrDefault
(
t
=>
t
.
SheetType
==
SheetType
.
AccountBasic
)?.
PerData
?.
Select
(
t
=>
(
PerDataAccountBaisc
)
t
);
var
economicData
=
perSheet
.
FirstOrDefault
(
t
=>
t
.
SheetType
==
SheetType
.
ComputeEconomic
)?.
PerData
?.
Select
(
t
=>
(
PerData
)
t
);
...
...
@@ -275,6 +279,7 @@ public List<PerSheet> Compute(PerExcel excel, List<PerSheet> perSheet)
new
{
Name
=
"护理组临床科室单元核算表"
,
Data
=
nurseWorkloadData
,
SheetType
=
SheetType
.
ComputeNurseAccount
,
UnitTypes
=
new
List
<
UnitType
>
{
UnitType
.
护理组
,
UnitType
.
其他护理组
}
},
};
var
isBudget
=
_budgetService
.
GetAdjustAndGrant
(
allot
,
out
decimal
adjust
,
out
decimal
grant
);
List
<
PerSheet
>
result
=
new
List
<
PerSheet
>();
foreach
(
var
info
in
pairs
)
{
...
...
@@ -303,7 +308,7 @@ public List<PerSheet> Compute(PerExcel excel, List<PerSheet> perSheet)
dept
.
MedicineFactor
=
workDoctor
?.
MedicineFactor
;
//dept.ScoringAverage = scoreAverage.HasValue ? scoreAverage ?? 0 : dept.ScoringAverage;
dept
.
ScoringAverage
=
dept
.
ScoringAverage
;
dept
.
AdjustFactor
=
dept
.
AdjustFactor
==
0
m
?
0
:
dept
.
AdjustFactor
;
dept
.
AdjustFactor
=
(
isBudget
?
adjust
:
dept
?.
AdjustFactor
)
??
1
;
dept
.
Income
=
econDoctor
?.
CellValue
??
0
;
dept
.
WorkloadFee
=
workDoctor
?.
CellValue
??
0
;
dept
.
AssessBeforeOtherFee
=
dept
?.
AssessBeforeOtherFee
??
0
;
...
...
@@ -353,6 +358,7 @@ public void ComputeOffice(per_allot allot, PerExcel excel)
List
<
PerDataAccountBaisc
>
perDatas
=
new
List
<
PerDataAccountBaisc
>();
// 取出科室
var
dataList
=
empolyeeList
.
Select
(
w
=>
new
{
w
.
AccountType
,
w
.
AccountingUnit
}).
Distinct
();
var
isBudget
=
_budgetService
.
GetAdjustAndGrant
(
allot
,
out
decimal
adjust
,
out
decimal
grant
);
foreach
(
var
account
in
dataList
)
{
...
...
@@ -372,7 +378,7 @@ public void ComputeOffice(per_allot allot, PerExcel excel)
dept
.
AccountingUnit
=
account
.
AccountingUnit
;
dept
.
UnitType
=
account
.
AccountType
;
dept
.
ScoringAverage
=
resAccount
?.
ScoringAverage
==
null
?
0
:
resAccount
.
ScoringAverage
;
dept
.
AdjustFactor
=
resAccount
?.
AdjustFactor
==
null
?
0
:
resAccount
.
AdjustFactor
;
dept
.
AdjustFactor
=
(
isBudget
?
adjust
:
resAccount
?.
AdjustFactor
)
??
1
;
dept
.
Income
=
empolyees
.
Sum
(
w
=>
w
.
PerforTotal
??
0
);
//dept.Extra = (extra ?? 0);
//dept.MedicineExtra = 0;// (drugExtra ?? 0);
...
...
performance/Performance.Services/AllotCompute/ResultComputeService.cs
View file @
1afb895e
...
...
@@ -204,7 +204,7 @@ public void SpecialUnitCompute(PerExcel excel, per_allot allot, List<res_baiscno
MedicineExtra
=
dept
?.
MedicineExtra
??
0
,
MaterialsExtra
=
dept
?.
MaterialsExtra
??
0
,
Adjust
=
isBudget
?
adjust
:
(
dept
?.
AdjustFactor
??
1
)
,
Adjust
=
(
isBudget
?
adjust
:
dept
?.
AdjustFactor
)
??
1
,
AssessBeforeOtherFee
=
dept
?.
AssessBeforeOtherFee
??
0
,
AssessLaterOtherFee
=
dept
?.
AssessLaterOtherFee
??
0
,
...
...
performance/Performance.Services/AllotService.cs
View file @
1afb895e
...
...
@@ -381,7 +381,7 @@ public void Generate(per_allot allot, string mail)
//重新计算科室业绩(含所有提供保底金额)
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"计算科室业绩分"
,
1
,
allot
.
ID
,
"ReceiveMessage"
,
true
);
var
sheetLast
=
processComputService
.
Compute
(
excel
,
mergeSheets
);
var
sheetLast
=
processComputService
.
Compute
(
excel
,
mergeSheets
,
allot
);
//保存计算过程数据
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"保存科室业绩结果及计算过程中产生的数据"
,
1
,
allot
.
ID
,
"ReceiveMessage"
,
true
);
...
...
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