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
19535867
Commit
19535867
authored
Oct 15, 2020
by
ruyun.zhang@suvalue.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
改了一半
parent
c87e8db5
Hide whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
108 additions
and
62 deletions
+108
-62
performance/Performance.Api/wwwroot/Performance.DtoModels.xml
+15
-10
performance/Performance.Api/wwwroot/Performance.EntityModels.xml
+0
-10
performance/Performance.DtoModels/AutoMapper/AutoMapperConfigs.cs
+1
-1
performance/Performance.DtoModels/PerExcel/ComputeResult.cs
+4
-4
performance/Performance.DtoModels/PerExcel/ExcelEnum.cs
+17
-0
performance/Performance.DtoModels/PerExcel/PerDataAccountBaisc.cs
+4
-4
performance/Performance.EntityModels/Entity/im_accountbasic.cs
+4
-4
performance/Performance.EntityModels/Entity/res_account.cs
+4
-4
performance/Performance.Services/AllotCompute/BaiscNormService.cs
+3
-3
performance/Performance.Services/AllotCompute/ProcessComputService.cs
+4
-3
performance/Performance.Services/AllotCompute/ResultComputeService.cs
+4
-4
performance/Performance.Services/AllotService.cs
+2
-2
performance/Performance.Services/OriginalService.cs
+1
-1
performance/Performance.Services/PerExcelService/ComputeEmpolyee/ComputeDirector.cs
+4
-4
performance/Performance.Services/PerExcelService/ExcelReadConfig.cs
+1
-1
performance/Performance.Services/PerExcelService/PerSheetDataFactory.cs
+23
-4
performance/Performance.Services/PerExcelService/PerSheetService.cs
+15
-1
performance/Performance.Services/SheetSevice.cs
+2
-2
No files found.
performance/Performance.Api/wwwroot/Performance.DtoModels.xml
View file @
19535867
...
...
@@ -653,11 +653,6 @@
工号
</summary>
</member>
<member
name=
"P:Performance.DtoModels.ComputeResult.ManagerNumber"
>
<summary>
科主任/护士长人数
</summary>
</member>
<member
name=
"P:Performance.DtoModels.ComputeResult.MedicalNumber"
>
<summary>
核算单元人员数量
...
...
@@ -751,6 +746,21 @@
<member
name=
"F:Performance.DtoModels.SheetType.OtherWorkload"
>
<summary>
其他工作量(不参与核算)
</summary>
</member>
<member
name=
"F:Performance.DtoModels.SheetType.BudgetRatio"
>
<summary>
预算比例
</summary>
</member>
<member
name=
"F:Performance.DtoModels.SheetType.AssessBeforeOtherFee"
>
<summary>
科室考核前其他绩效
</summary>
</member>
<member
name=
"F:Performance.DtoModels.SheetType.PersonOtherManagePerforFee"
>
<summary>
其他管理绩效
</summary>
</member>
<member
name=
"F:Performance.DtoModels.SheetType.PersonAdjustLaterOtherManagePerforFee"
>
<summary>
调节后其他管理绩效
</summary>
</member>
<member
name=
"F:Performance.DtoModels.SheetType.PersonPostCoefficient"
>
<summary>
个人岗位系数
</summary>
</member>
<member
name=
"T:Performance.DtoModels.AccountUnitType"
>
<summary>
核算单元类型
...
...
@@ -879,11 +889,6 @@
核算单元
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerDataAccountBaisc.ManagerNumber"
>
<summary>
科主任/护士长数量
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerDataAccountBaisc.Number"
>
<summary>
核算单元医生数量
...
...
performance/Performance.Api/wwwroot/Performance.EntityModels.xml
View file @
19535867
...
...
@@ -1912,11 +1912,6 @@
定科人数
</summary>
</member>
<member
name=
"P:Performance.EntityModels.im_accountbasic.DoctorDirectorNumber"
>
<summary>
科主任数量
</summary>
</member>
<member
name=
"P:Performance.EntityModels.im_accountbasic.DoctorNumber"
>
<summary>
核算单元医生数量
...
...
@@ -4167,11 +4162,6 @@
是否带入平均计算 是 否
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_account.ManagerNumber"
>
<summary>
科主任/护士长数量
</summary>
</member>
<member
name=
"P:Performance.EntityModels.res_account.Number"
>
<summary>
核算单元医生数量
...
...
performance/Performance.DtoModels/AutoMapper/AutoMapperConfigs.cs
View file @
19535867
...
...
@@ -111,7 +111,7 @@ public AutoMapperConfigs()
.
ForMember
(
dest
=>
dest
.
UnitType
,
opt
=>
opt
.
MapFrom
(
src
=>
EnumHelper
.
GetItems
<
UnitType
>().
First
(
t
=>
t
.
Name
==
src
.
UnitType
.
Replace
(
"行政工勤"
,
"行政后勤"
)).
Value
))
.
ForMember
(
dest
=>
dest
.
DoctorAccountingUnit
,
opt
=>
opt
.
MapFrom
(
src
=>
src
.
AccountingUnit
))
//.ForMember(dest => dest.Department, opt => opt.MapFrom(src => src.Department))
.
ForMember
(
dest
=>
dest
.
DoctorDirectorNumber
,
opt
=>
opt
.
MapFrom
(
src
=>
src
.
ManagerNumber
))
//
.ForMember(dest => dest.DoctorDirectorNumber, opt => opt.MapFrom(src => src.ManagerNumber))
.
ForMember
(
dest
=>
dest
.
DoctorNumber
,
opt
=>
opt
.
MapFrom
(
src
=>
src
.
Number
))
.
ForMember
(
dest
=>
dest
.
DoctorBasicFactor
,
opt
=>
opt
.
MapFrom
(
src
=>
src
.
BasicFactor
))
//.ForMember(dest => dest.DoctorSlopeFactor, opt => opt.MapFrom(src => src.SlopeFactor))
...
...
performance/Performance.DtoModels/PerExcel/ComputeResult.cs
View file @
19535867
...
...
@@ -174,10 +174,10 @@ public class ComputeResult
///// </summary>
//public decimal? Workload { get; set; }
/// <summary>
/// 科主任/护士长人数
/// </summary>
public
Nullable
<
decimal
>
ManagerNumber
{
get
;
set
;
}
///
//
<summary>
///
//
科主任/护士长人数
///
//
</summary>
//
public Nullable<decimal> ManagerNumber { get; set; }
/// <summary>
/// 核算单元人员数量
...
...
performance/Performance.DtoModels/PerExcel/ExcelEnum.cs
View file @
19535867
...
...
@@ -131,6 +131,23 @@ public enum SheetType
/// <summary> 其他工作量(不参与核算) </summary>
[
Description
(
"其他工作量"
)]
OtherWorkload
=
28
,
/// <summary> 预算比例 </summary>
[
Description
(
"预算比例"
)]
BudgetRatio
=
30
,
/// <summary> 科室考核前其他绩效 </summary>
[
Description
(
"科室考核前其他绩效"
)]
AssessBeforeOtherFee
=
31
,
/// <summary> 其他管理绩效 </summary>
[
Description
(
"其他管理绩效"
)]
PersonOtherManagePerforFee
=
32
,
/// <summary> 调节后其他管理绩效 </summary>
[
Description
(
"调节后其他管理绩效"
)]
PersonAdjustLaterOtherManagePerforFee
=
33
,
/// <summary> 个人岗位系数 </summary>
[
Description
(
"个人岗位系数"
)]
PersonPostCoefficient
=
34
,
}
/// <summary>
...
...
performance/Performance.DtoModels/PerExcel/PerDataAccountBaisc.cs
View file @
19535867
...
...
@@ -38,10 +38,10 @@ public class PerDataAccountBaisc : IPerData
///// </summary>
//public decimal PermanentStaff { get; set; }
/// <summary>
/// 科主任/护士长数量
/// </summary>
public
decimal
ManagerNumber
{
get
;
set
;
}
///
//
<summary>
///
//
科主任/护士长数量
///
//
</summary>
//
public decimal ManagerNumber { get; set; }
/// <summary>
/// 核算单元医生数量
...
...
performance/Performance.EntityModels/Entity/im_accountbasic.cs
View file @
19535867
...
...
@@ -61,10 +61,10 @@ public class im_accountbasic
/// </summary>
public
Nullable
<
decimal
>
PermanentStaff
{
get
;
set
;
}
/// <summary>
/// 科主任数量
/// </summary>
public
Nullable
<
decimal
>
DoctorDirectorNumber
{
get
;
set
;
}
///
//
<summary>
///
//
科主任数量
///
//
</summary>
//
public Nullable<decimal> DoctorDirectorNumber { get; set; }
/// <summary>
/// 核算单元医生数量
...
...
performance/Performance.EntityModels/Entity/res_account.cs
View file @
19535867
...
...
@@ -56,10 +56,10 @@ public class res_account
///// </summary>
//public Nullable<decimal> PermanentStaff { get; set; }
/// <summary>
/// 科主任/护士长数量
/// </summary>
public
Nullable
<
decimal
>
ManagerNumber
{
get
;
set
;
}
///
//
<summary>
///
//
科主任/护士长数量
///
//
</summary>
//
public Nullable<decimal> ManagerNumber { get; set; }
/// <summary>
/// 核算单元医生数量
...
...
performance/Performance.Services/AllotCompute/BaiscNormService.cs
View file @
19535867
...
...
@@ -19,7 +19,7 @@ public class BaiscNormService : IAutoInjection
/// </summary>
/// <param name="computes"></param>
/// <returns></returns>
public
List
<
res_baiscnorm
>
ComputeAvg
(
List
<
res_baiscnorm
>
baiscnormList
,
List
<
im_accountbasic
>
accountbasicList
,
List
<
ComputeResult
>
computes
)
public
List
<
res_baiscnorm
>
ComputeAvg
(
List
<
res_baiscnorm
>
baiscnormList
,
List
<
ComputeEmployee
>
computeEmployees
,
List
<
ComputeResult
>
computes
)
{
var
keyList
=
new
[]
{
...
...
@@ -30,7 +30,7 @@ public List<res_baiscnorm> ComputeAvg(List<res_baiscnorm> baiscnormList, List<im
};
foreach
(
var
item
in
keyList
)
{
var
count
=
accountbasicList
.
Where
(
t
=>
t
.
UnitType
==
(
int
)
item
.
UnitType
).
Sum
(
t
=>
t
.
DoctorDirectorNumber
);
var
count
=
computeEmployees
.
Where
(
t
=>
t
.
UnitType
==
item
.
UnitType
.
ToString
()).
Sum
(
t
=>
t
.
Basics
);
var
dataList
=
computes
.
Where
(
t
=>
t
.
UnitType
==
item
.
UnitType
.
ToString
());
var
baiscnorm
=
new
res_baiscnorm
{
...
...
@@ -163,7 +163,7 @@ public List<res_baiscnorm> DocterNurseBaiscnorm(List<res_baiscnorm> baiscnormLis
//剔除不同科室相同核算单元
var
groupData
=
perData
.
Where
(
t
=>
t
.
UnitType
==
info
.
UnitType
.
ToString
())
.
GroupBy
(
t
=>
t
.
AccountingUnit
)
.
Select
(
t
=>
new
{
AccountingUnit
=
t
.
Key
,
Number
=
t
.
Sum
(
p
=>
p
.
ManagerNumber
+
p
.
Number
),
PerforTotal
=
t
.
Sum
(
p
=>
p
.
PerforTotal
)
});
.
Select
(
t
=>
new
{
AccountingUnit
=
t
.
Key
,
Number
=
t
.
Sum
(
p
=>
p
.
Number
),
PerforTotal
=
t
.
Sum
(
p
=>
p
.
PerforTotal
)
});
var
baiscnorm
=
new
res_baiscnorm
{
...
...
performance/Performance.Services/AllotCompute/ProcessComputService.cs
View file @
19535867
...
...
@@ -260,7 +260,7 @@ public void Save(List<PerSheet> perSheets, int allotId)
/// <param name="perSheet"></param>
/// <returns></returns>
public
List
<
PerSheet
>
Compute
(
PerExcel
excel
,
List
<
PerSheet
>
perSheet
,
IEnumerable
<
AccountUnitTotal
>
extras
,
IEnumerable
<
AccountUnitTotal
>
drugExtras
,
IEnumerable
<
AccountUnitTotal
>
materialsExtras
,
IEnumerable
<
AccountUnitTotal
>
accountScoreAverages
)
IEnumerable
<
AccountUnitTotal
>
drugExtras
,
IEnumerable
<
AccountUnitTotal
>
materialsExtras
)
{
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
);
...
...
@@ -287,7 +287,7 @@ public void Save(List<PerSheet> perSheets, int allotId)
var
extra
=
extras
?.
FirstOrDefault
(
w
=>
w
.
UnitType
==
unitType
.
ToString
()
&&
w
.
AccountingUnit
==
dept
.
AccountingUnit
)?.
TotelValue
;
var
drugExtra
=
drugExtras
?.
FirstOrDefault
(
w
=>
w
.
UnitType
==
unitType
.
ToString
()
&&
w
.
AccountingUnit
==
dept
.
AccountingUnit
)?.
TotelValue
;
var
materialsExtra
=
materialsExtras
?.
FirstOrDefault
(
w
=>
w
.
UnitType
==
unitType
.
ToString
()
&&
w
.
AccountingUnit
==
dept
.
AccountingUnit
)?.
TotelValue
;
var
scoreAverage
=
accountScoreAverages
?.
FirstOrDefault
(
w
=>
w
.
UnitType
==
unitType
.
ToString
()
&&
w
.
AccountingUnit
==
dept
.
AccountingUnit
)?.
TotelValue
;
//
var scoreAverage = accountScoreAverages?.FirstOrDefault(w => w.UnitType == unitType.ToString() && w.AccountingUnit == dept.AccountingUnit)?.TotelValue;
var
econDoctor
=
economicData
.
FirstOrDefault
(
t
=>
t
.
UnitType
==
unitType
.
ToString
()
&&
t
.
AccountingUnit
==
dept
.
AccountingUnit
);
var
workDoctor
=
info
.
Data
.
FirstOrDefault
(
t
=>
t
.
UnitType
==
unitType
.
ToString
()
&&
t
.
AccountingUnit
==
dept
.
AccountingUnit
);
...
...
@@ -315,7 +315,8 @@ public void Save(List<PerSheet> perSheets, int allotId)
dept
.
PerforTotal
=
Math
.
Round
((
dept
.
PerforFee
+
dept
.
WorkloadFee
+
dept
.
OtherPerfor1
+
dept
.
AssessBeforeOtherFee
)
??
0
);
dept
.
AssessLaterPerforTotal
=
Math
.
Round
((
dept
.
PerforTotal
*
dept
.
ScoringAverage
+
dept
.
MedicineExtra
+
dept
.
MaterialsExtra
+
dept
.
Extra
+
dept
.
AssessLaterOtherFee
)
??
0
);
dept
.
RealGiveFee
=
Math
.
Round
((
dept
.
AssessLaterPerforTotal
*
dept
.
AdjustFactor
+
dept
.
AdjustLaterOtherFee
)
??
0
);
dept
.
Avg
=
dept
.
ManagerNumber
+
dept
.
Number
==
0
?
0
:
dept
.
PerforTotal
/
(
dept
.
ManagerNumber
+
dept
.
Number
);
//dept.Avg = dept.ManagerNumber + dept.Number == 0 ? 0 : dept.PerforTotal / (dept.ManagerNumber + dept.Number);
dept
.
Avg
=
dept
.
Number
==
0
?
0
:
dept
.
PerforTotal
/
dept
.
Number
;
}
sheet
.
PerData
.
AddRange
(
atDataList
);
...
...
performance/Performance.Services/AllotCompute/ResultComputeService.cs
View file @
19535867
...
...
@@ -86,7 +86,7 @@ public class ResultComputeService : IAutoInjection
var
computResult
=
computeDirector
.
Compute
(
computeEmployees
,
accountSheet
,
allot
,
employeeExtra
);
//计算 绩效标准 基数(科主任、副主任、护士长 =>> 平均值)
List
<
res_baiscnorm
>
baiscnormList
=
new
List
<
res_baiscnorm
>();
baiscNormService
.
ComputeAvg
(
baiscnormList
,
accountbasicList
,
computResult
);
baiscNormService
.
ComputeAvg
(
baiscnormList
,
computeEmployees
,
computResult
);
baiscNormService
.
DocterNurseBaiscnorm
(
baiscnormList
,
accountbasicList
,
accountSheet
);
var
empolyeeList2
=
perforImEmployeeRepository
.
GetEntities
(
t
=>
t
.
AllotID
==
allot
.
ID
);
...
...
@@ -122,9 +122,9 @@ public class ResultComputeService : IAutoInjection
/// </summary>
/// <param name="excel"></param>
/// <param name="allot"></param>
public
void
SpecialUnitCompute
(
PerExcel
excel
,
per_allot
allot
,
List
<
PerSheet
>
sheetLast
,
List
<
res_baiscnorm
>
baiscnormList
,
public
void
SpecialUnitCompute
(
PerExcel
excel
,
per_allot
allot
,
List
<
res_baiscnorm
>
baiscnormList
,
IEnumerable
<
AccountUnitTotal
>
accountExtras
,
IEnumerable
<
AccountUnitTotal
>
drugExtras
,
IEnumerable
<
AccountUnitTotal
>
materialsExtras
,
IEnumerable
<
EmpolyeeTotal
>
employeeExtra
,
IEnumerable
<
AccountUnitTotal
>
accountScoreAverages
)
IEnumerable
<
EmpolyeeTotal
>
employeeExtra
)
{
var
isBudget
=
budgetService
.
GetAdjustAndGrant
(
allot
,
out
decimal
adjust
,
out
decimal
grant
);
var
typeList
=
EnumHelper
.
GetItems
<
PerforType
>();
...
...
@@ -173,7 +173,7 @@ public class ResultComputeService : IAutoInjection
var
extra
=
accountExtras
?.
FirstOrDefault
(
w
=>
w
.
UnitType
==
UnitType
.
特殊核算组
.
ToString
()
&&
w
.
AccountingUnit
==
dept
?.
AccountingUnit
)?.
TotelValue
;
var
drugExtra
=
drugExtras
?.
FirstOrDefault
(
w
=>
w
.
UnitType
==
UnitType
.
特殊核算组
.
ToString
()
&&
w
.
AccountingUnit
==
dept
?.
AccountingUnit
)?.
TotelValue
;
var
materialsExtra
=
materialsExtras
?.
FirstOrDefault
(
w
=>
w
.
UnitType
==
UnitType
.
特殊核算组
.
ToString
()
&&
w
.
AccountingUnit
==
dept
?.
AccountingUnit
)?.
TotelValue
;
var
scoreAverage
=
accountScoreAverages
?.
FirstOrDefault
(
w
=>
w
.
UnitType
==
UnitType
.
特殊核算组
.
ToString
()
&&
w
.
AccountingUnit
==
dept
?.
AccountingUnit
)?.
TotelValue
;
//
var scoreAverage = accountScoreAverages?.FirstOrDefault(w => w.UnitType == UnitType.特殊核算组.ToString() && w.AccountingUnit == dept?.AccountingUnit)?.TotelValue;
decimal
?
headcount
=
null
;
if
(
typeList
.
Any
(
o
=>
o
.
Description
==
item
.
QuantitativeIndicators
))
...
...
performance/Performance.Services/AllotService.cs
View file @
19535867
...
...
@@ -373,7 +373,7 @@ public void Generate(per_allot allot, string mail)
//重新计算科室业绩(含所有提供保底金额)
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"计算科室业绩分"
,
1
,
allot
.
ID
,
"ReceiveMessage"
,
true
);
var
sheetLast
=
processComputService
.
Compute
(
excel
,
mergeSheets
,
accountExtras
,
drugExtras
,
materialsExtras
,
accountScoreAverages
);
var
sheetLast
=
processComputService
.
Compute
(
excel
,
mergeSheets
,
accountExtras
,
drugExtras
,
materialsExtras
);
//保存计算过程数据
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"保存科室业绩结果及计算过程中产生的数据"
,
1
,
allot
.
ID
,
"ReceiveMessage"
,
true
);
...
...
@@ -392,7 +392,7 @@ public void Generate(per_allot allot, string mail)
// 计算特殊科室
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"计算最终特殊科室绩效数据"
,
1
,
allot
.
ID
,
"ReceiveMessage"
,
true
);
resultComputeService
.
SpecialUnitCompute
(
excel
,
allot
,
sheetLast
,
baiscnormList
,
accountExtras
,
drugExtras
,
materialsExtras
,
employeeExtra
,
accountScoreAverages
);
resultComputeService
.
SpecialUnitCompute
(
excel
,
allot
,
baiscnormList
,
accountExtras
,
drugExtras
,
materialsExtras
,
employeeExtra
);
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"保存最终特殊科室绩效数据"
,
1
,
allot
.
ID
,
"ReceiveMessage"
,
true
);
//保存 绩效人均参考标准
...
...
performance/Performance.Services/OriginalService.cs
View file @
19535867
...
...
@@ -179,7 +179,7 @@ private bool EditAccountBasic(int userId, OriginalRequest request)
{
"核算单元"
,
nameof
(
im_accountbasic
.
DoctorAccountingUnit
)
},
//{ "科室名称", nameof(im_accountbasic.Department) },
{
"效率绩效人数"
,
nameof
(
im_accountbasic
.
PermanentStaff
)
},
{
"科主任/护士长人数"
,
nameof
(
im_accountbasic
.
DoctorDirectorNumber
)
},
//
{ "科主任/护士长人数", nameof(im_accountbasic.DoctorDirectorNumber) },
{
"核算单元人员数量"
,
nameof
(
im_accountbasic
.
DoctorNumber
)
},
{
"预算比例"
,
nameof
(
im_accountbasic
.
DoctorBasicFactor
)
},
//{ "倾斜系数", nameof(im_accountbasic.DoctorSlopeFactor) },
...
...
performance/Performance.Services/PerExcelService/ComputeEmpolyee/ComputeDirector.cs
View file @
19535867
...
...
@@ -361,7 +361,7 @@ public List<ComputeResult> Compute(List<ComputeEmployee> empolyeeList, List<PerS
// 优先取 实际人均绩效
var
avg
=
(
empolyee
.
FitPeopleValue
.
HasValue
&&
empolyee
.
FitPeopleValue
>
0
)
?
empolyee
.
FitPeopleValue
:
(
resAccount
.
ManagerNumber
+
resAccount
.
Number
)
==
0
?
0
:
resAccount
.
PerforTotal
/
(
resAccount
.
ManagerNumber
+
resAccount
.
Number
)
;
:
resAccount
.
Number
==
0
?
0
:
resAccount
.
PerforTotal
/
resAccount
.
Number
;
var
effAvg
=
empolyee
.
PermanentStaff
==
0
?
0
:
resAccount
.
PerforTotal
/
empolyee
.
PermanentStaff
;
//var efficiency = avg * (empolyee.Efficiency ?? 1);
...
...
@@ -385,15 +385,15 @@ public List<ComputeResult> Compute(List<ComputeEmployee> empolyeeList, List<PerS
AdjustLaterOtherFee
=
empolyee
.
AdjustLaterOtherFee
??
0
,
OtherPerfor
=
empolyee
.
OtherPerfor
??
0
,
OtherManagePerfor
=
empolyee
.
OtherManagePerfor
??
0
,
Number
=
resAccount
.
ManagerNumber
+
resAccount
.
Number
,
Number
=
resAccount
.
Number
,
PerforTotal
=
resAccount
.
PerforTotal
,
Avg
=
avg
,
Efficiency
=
effAvg
*
(
empolyee
.
Efficiency
??
0
),
Scale
=
resAccount
.
PerforTotal
*
(
empolyee
.
Scale
??
0
),
Adjust
=
(
isBudget
?
adjust
:
empolyee
.
Adjust
)
??
1
m
,
Remark
=
empolyees
.
Count
()
>
1
?
"
特殊科室主任,共用核算单元
"
:
""
,
Remark
=
empolyees
.
Count
()
>
1
?
"
核算单元共用科主任/护士长
"
:
""
,
Grant
=
(
isBudget
?
grant
:
empolyee
.
Management
)
??
0
,
ManagerNumber
=
resAccount
.
ManagerNumber
,
//
ManagerNumber = resAccount.ManagerNumber,
MedicalNumber
=
resAccount
.
Number
,
PermanentStaff
=
empolyee
.
PermanentStaff
,
Attendance
=
empolyee
.
Attendance
??
0
,
...
...
performance/Performance.Services/PerExcelService/ExcelReadConfig.cs
View file @
19535867
...
...
@@ -75,7 +75,7 @@ public class ExcelReadConfig
{
new
ColumnInfo
(
nameof
(
PerDataAccountBaisc
.
UnitType
),
"核算单元类型"
),
new
ColumnInfo
(
nameof
(
PerDataAccountBaisc
.
AccountingUnit
),
"核算单元"
),
new
ColumnInfo
(
nameof
(
PerDataAccountBaisc
.
ManagerNumber
),
"科主任/护士长人数"
,
true
),
//
new ColumnInfo(nameof(PerDataAccountBaisc.ManagerNumber), "科主任/护士长人数", true),
new
ColumnInfo
(
nameof
(
PerDataAccountBaisc
.
Number
),
"核算单元人员数量"
,
true
),
new
ColumnInfo
(
nameof
(
PerDataAccountBaisc
.
BasicFactor
),
"预算比例"
,
true
),
new
ColumnInfo
(
nameof
(
PerDataAccountBaisc
.
OtherPerfor1
),
"其他绩效1"
,
true
),
...
...
performance/Performance.Services/PerExcelService/PerSheetDataFactory.cs
View file @
19535867
...
...
@@ -75,13 +75,32 @@ public static IPerSheetDataRead GetDataRead(SheetType sheetType, bool isnew = fa
case
SheetType
.
AccountScoreAverage
:
dataread
=
new
PerSheetDataReadAccountExtra
();
break
;
case
SheetType
.
AccountAdjustLaterOtherFee
:
//dataread = new PerSheetDataReadPersonExtra(); // 科室调节后其他绩效
dataread
=
new
PerSheetDataReadAccountExtra
();
break
;
//
case SheetType.AccountAdjustLaterOtherFee:
//
//dataread = new PerSheetDataReadPersonExtra(); // 科室调节后其他绩效
//
dataread = new PerSheetDataReadAccountExtra();
//
break;
case
SheetType
.
PersonAdjustLaterOtherFee
:
dataread
=
new
PerSheetDataReadPersonExtra
();
// 业务中层行政中高层调节后其他绩效
break
;
case
SheetType
.
BudgetRatio
:
dataread
=
new
PerSheetDataReadAccountExtra
();
// 预算比例
break
;
case
SheetType
.
AssessBeforeOtherFee
:
dataread
=
new
PerSheetDataReadAccountExtra
();
// 科室考核前其他绩效
break
;
case
SheetType
.
AccountAdjustLaterOtherFee
:
dataread
=
new
PerSheetDataReadAccountExtra
();
// 科室调节后其他绩效
break
;
case
SheetType
.
PersonOtherManagePerforFee
:
dataread
=
new
PerSheetDataReadPersonExtra
();
// 其他管理绩效
break
;
case
SheetType
.
PersonAdjustLaterOtherManagePerforFee
:
dataread
=
new
PerSheetDataReadPersonExtra
();
// 调节后其他管理绩效
break
;
case
SheetType
.
PersonPostCoefficient
:
dataread
=
new
PerSheetDataReadPersonExtra
();
// 个人岗位系数
break
;
}
return
dataread
;
}
...
...
performance/Performance.Services/PerExcelService/PerSheetService.cs
View file @
19535867
...
...
@@ -107,9 +107,23 @@ public SheetType GetSheetType(string sheetName)
else
if
(
sheetName
.
StartsWith
(
"6.1"
))
return
SheetType
.
AccountScoreAverage
;
else
if
(
sheetName
.
StartsWith
(
"6.2"
))
return
SheetType
.
AccountAdjustLaterOtherFee
;
return
SheetType
.
AccountAdjustLaterOtherFee
;
// 与6.8相同
else
if
(
sheetName
.
StartsWith
(
"6.3"
))
return
SheetType
.
PersonAdjustLaterOtherFee
;
else
if
(
sheetName
.
StartsWith
(
"6.6"
))
// 预算比例
return
SheetType
.
BudgetRatio
;
else
if
(
sheetName
.
StartsWith
(
"6.7"
))
// 科室考核前其他绩效
return
SheetType
.
AssessBeforeOtherFee
;
else
if
(
sheetName
.
StartsWith
(
"6.8"
))
// 科室调节后其他绩效
return
SheetType
.
AccountAdjustLaterOtherFee
;
else
if
(
sheetName
.
StartsWith
(
"6.9"
))
// 其他管理绩效
return
SheetType
.
PersonOtherManagePerforFee
;
else
if
(
sheetName
.
StartsWith
(
"6.10"
))
// 调节后其他管理绩效
return
SheetType
.
PersonAdjustLaterOtherManagePerforFee
;
else
if
(
sheetName
.
StartsWith
(
"6.11"
))
// 个人岗位系数
return
SheetType
.
PersonPostCoefficient
;
return
SheetType
.
Unidentifiable
;
}
}
...
...
performance/Performance.Services/SheetSevice.cs
View file @
19535867
...
...
@@ -313,7 +313,7 @@ private void AccountNurseExport(int sheetID, SheetExportResponse response)
new
List
<(
string
,
Func
<
res_account
,
object
>,
int
,
int
,
bool
,
bool
)>
{
(
"核算单元"
,
(
t
)
=>
t
.
AccountingUnit
,
1
,
1
,
false
,
false
),
(
"护士长人数"
,
(
t
)
=>
t
.
ManagerNumber
,
1
,
1
,
false
,
false
),
//
("护士长人数", (t) => t.ManagerNumber, 1, 1, false, false),
(
"核算单元护士数量"
,
(
t
)
=>
t
.
Number
,
1
,
1
,
false
,
false
),
(
"医生基础系数"
,
(
t
)
=>
t
.
BasicFactor
,
1
,
1
,
false
,
false
),
(
"倾斜系数"
,
(
t
)
=>
t
.
SlopeFactor
,
1
,
1
,
false
,
true
),
...
...
@@ -366,7 +366,7 @@ private void AccountDoctorExport(int sheetID, SheetExportResponse response)
new
List
<(
string
,
Func
<
res_account
,
object
>,
int
,
int
,
bool
,
bool
)>
{
(
"核算单元"
,
(
t
)
=>
t
.
AccountingUnit
,
1
,
1
,
false
,
false
),
(
"科主任人数"
,
(
t
)
=>
t
.
ManagerNumber
,
1
,
1
,
false
,
false
),
//
("科主任人数", (t) => t.ManagerNumber, 1, 1, false, false),
(
"核算单元医生数量"
,
(
t
)
=>
t
.
Number
,
1
,
1
,
false
,
false
),
(
"医生基础系数"
,
(
t
)
=>
t
.
BasicFactor
,
1
,
1
,
false
,
false
),
(
"倾斜系数"
,
(
t
)
=>
t
.
SlopeFactor
,
1
,
1
,
false
,
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