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
e1b1c490
Commit
e1b1c490
authored
Sep 01, 2020
by
ruyun.zhang@suvalue.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
开启其他绩效
parent
16e726ae
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
33 additions
and
15 deletions
+33
-15
performance/Performance.Api/wwwroot/Performance.DtoModels.xml
+5
-0
performance/Performance.DtoModels/PerExcel/PerDataClinicEmployee.cs
+4
-4
performance/Performance.Services/AllotCompute/ResultComputeService.cs
+2
-2
performance/Performance.Services/PerExcelService/ComputeEmpolyee/ComputeDirector.cs
+2
-2
performance/Performance.Services/PerExcelService/SheetDataRead/PerSheetDataReadClinicEmployee.cs
+1
-1
performance/Performance.Services/PerExcelService/SheetDataRead/PerSheetDataReadSpecialUnit.cs
+19
-6
No files found.
performance/Performance.Api/wwwroot/Performance.DtoModels.xml
View file @
e1b1c490
...
...
@@ -937,6 +937,11 @@
其他管理绩效
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerDataClinicEmployee.OthePerfor"
>
<summary>
其他绩效
</summary>
</member>
<member
name=
"P:Performance.DtoModels.PerDataClinicEmployee.Adjust"
>
<summary>
调节系数
...
...
performance/Performance.DtoModels/PerExcel/PerDataClinicEmployee.cs
View file @
e1b1c490
...
...
@@ -86,10 +86,10 @@ public class PerDataClinicEmployee : IPerData
/// </summary>
public
Nullable
<
decimal
>
OtheManagementPerfor
{
get
;
set
;
}
///
//
<summary>
///
//
其他绩效
///
//
</summary>
//
public Nullable<decimal> OthePerfor { get; set; }
/// <summary>
/// 其他绩效
/// </summary>
public
Nullable
<
decimal
>
OthePerfor
{
get
;
set
;
}
///// <summary>
///// 医院奖罚
...
...
performance/Performance.Services/AllotCompute/ResultComputeService.cs
View file @
e1b1c490
...
...
@@ -115,7 +115,7 @@ public class ResultComputeService : IAutoInjection
if
(
specialUnit
==
null
||
specialUnit
.
PerData
.
Count
==
0
)
return
;
var
dataList
=
xxx
(
specialUnit
,
allot
,
baiscnormList
,
typeList
);
var
dataList
=
CalculateSpecialUnit
(
specialUnit
,
allot
,
baiscnormList
,
typeList
);
//取出科室
var
accountList
=
excel
.
PerSheet
.
FirstOrDefault
(
t
=>
t
.
SheetType
==
SheetType
.
AccountBasic
)?.
PerData
?.
Select
(
t
=>
(
PerDataAccountBaisc
)
t
);
...
...
@@ -238,7 +238,7 @@ public class ResultComputeService : IAutoInjection
perforResspecialunitRepository
.
AddRange
(
resDataList
.
ToArray
());
}
private
IEnumerable
<
PerDataSpecialUnit
>
xxx
(
PerSheet
specialUnit
,
per_allot
allot
,
List
<
res_baiscnorm
>
baiscnormList
,
List
<
EnumItem
>
typeList
)
private
IEnumerable
<
PerDataSpecialUnit
>
CalculateSpecialUnit
(
PerSheet
specialUnit
,
per_allot
allot
,
List
<
res_baiscnorm
>
baiscnormList
,
List
<
EnumItem
>
typeList
)
{
var
dataList
=
specialUnit
.
PerData
.
Select
(
t
=>
(
PerDataSpecialUnit
)
t
);
var
specialEmployee
=
perforImemployeeclinicRepository
.
GetEntities
(
t
=>
t
.
AllotID
==
allot
.
ID
);
...
...
performance/Performance.Services/PerExcelService/ComputeEmpolyee/ComputeDirector.cs
View file @
e1b1c490
...
...
@@ -375,7 +375,7 @@ public List<ComputeResult> Compute(List<ComputeEmployee> empolyeeList, List<PerS
JobNumber
=
empolyee
.
JobNumber
,
ScoreAverageRate
=
empolyee
.
ScoreAverageRate
,
//
OtherPerfor = empolyee.OtherPerfor,
OtherPerfor
=
empolyee
.
OtherPerfor
,
Number
=
resAccount
.
ManagerNumber
+
resAccount
.
Number
,
PerforTotal
=
resAccount
.
PerforTotal
,
...
...
@@ -403,7 +403,7 @@ public List<ComputeResult> Compute(List<ComputeEmployee> empolyeeList, List<PerS
compute
.
PerforSumFee
=
Math
.
Round
((
compute
.
Avg
*
(
empolyee
.
Basics
??
0
))
+
compute
.
ShouldGiveFee
??
0
);
//应发绩效
//compute.GiveFee = compute.PerforSumFee;
compute
.
GiveFee
=
Math
.
Round
(
compute
.
PerforSumFee
*
compute
.
ScoreAverageRate
*
(
compute
.
Attendance
??
0
)
+
(
extra
??
0
)
??
0
);
compute
.
GiveFee
=
Math
.
Round
(
compute
.
PerforSumFee
*
compute
.
ScoreAverageRate
*
(
compute
.
Attendance
??
0
)
+
(
extra
??
0
)
??
0
)
+
(
compute
.
OtherPerfor
??
0
)
;
//实发绩效
//compute.RealGiveFee = (compute.GiveFee * compute.ScoreAverageRate * (compute.Attendance ?? 0) + (compute.Punishment ?? 0) + (compute.OtherPerfor ?? 0)) * (compute.Adjust ?? 1m);
compute
.
RealGiveFee
=
Math
.
Round
(
compute
.
GiveFee
*
(
compute
.
Adjust
??
1
m
)
??
0
);
...
...
performance/Performance.Services/PerExcelService/SheetDataRead/PerSheetDataReadClinicEmployee.cs
View file @
e1b1c490
...
...
@@ -69,7 +69,7 @@ public List<IPerData> ReadData(ISheet sheet, List<PerHeader> perHeader)
clinicEmployee
.
Management
=
ConvertHelper
.
To
<
decimal
?>(
row
.
GetCell
(
perHeader
.
FirstOrDefault
(
p
=>
p
.
CellValue
==
"管理绩效发放系数"
).
PointCell
)?.
NumericCellValue
);
clinicEmployee
.
ScoreAverageRate
=
ConvertHelper
.
To
<
decimal
?>(
row
.
GetCell
(
perHeader
.
FirstOrDefault
(
p
=>
p
.
CellValue
==
"考核得分率"
).
PointCell
)?.
NumericCellValue
);
clinicEmployee
.
Attendance
=
ConvertHelper
.
To
<
decimal
?>(
row
.
GetCell
(
perHeader
.
FirstOrDefault
(
p
=>
p
.
CellValue
==
"出勤率"
).
PointCell
)?.
NumericCellValue
);
//
clinicEmployee.OthePerfor = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "其他绩效").PointCell)?.NumericCellValue);
clinicEmployee
.
OthePerfor
=
ConvertHelper
.
To
<
decimal
?>(
row
.
GetCell
(
perHeader
.
FirstOrDefault
(
p
=>
p
.
CellValue
==
"其他绩效"
).
PointCell
)?.
NumericCellValue
);
//clinicEmployee.Punishment = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "医院奖罚").PointCell)?.NumericCellValue);
clinicEmployee
.
OtheManagementPerfor
=
ConvertHelper
.
To
<
decimal
?>(
row
.
GetCell
(
perHeader
.
FirstOrDefault
(
p
=>
p
.
CellValue
==
"其他管理绩效"
).
PointCell
)?.
NumericCellValue
);
clinicEmployee
.
Adjust
=
ConvertHelper
.
To
<
decimal
?>(
row
.
GetCell
(
perHeader
.
FirstOrDefault
(
p
=>
p
.
CellValue
==
"调节系数"
).
PointCell
)?.
NumericCellValue
);
...
...
performance/Performance.Services/PerExcelService/SheetDataRead/PerSheetDataReadSpecialUnit.cs
View file @
e1b1c490
...
...
@@ -50,12 +50,24 @@ public List<IPerData> ReadData(ISheet sheet, List<PerHeader> perHeader)
PerDataSpecialUnit
specialUnit
=
new
PerDataSpecialUnit
{
RowNumber
=
r
,
//AccountingUnit = accountingUnit,
//Department = accountingUnit,
QuantitativeIndicators
=
row
.
GetCell
(
perHeader
.
FirstOrDefault
(
p
=>
p
.
CellValue
==
"量化指标"
).
PointCell
)?.
StringCellValue
,
Quantity
=
ConvertHelper
.
To
<
decimal
?>(
row
.
GetCell
(
perHeader
.
FirstOrDefault
(
p
=>
p
.
CellValue
==
"数量"
).
PointCell
)?.
ToString
()),
QuantitativeIndicatorsValue
=
ConvertHelper
.
To
<
decimal
?>(
row
.
GetCell
(
perHeader
.
FirstOrDefault
(
p
=>
p
.
CellValue
==
"量化指标绩效分值"
).
PointCell
)?.
NumericCellValue
),
};
//AccountingUnit = accountingUnit,
//Department = accountingUnit,
//specialUnit.QuantitativeIndicators = row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "量化指标").PointCell)?.StringCellValue;
//specialUnit.Quantity = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "数量").PointCell)?.ToString());
//specialUnit.QuantitativeIndicatorsValue = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "量化指标绩效分值").PointCell)?.NumericCellValue);
int
point
=
0
;
if
(
NopiSevice
.
TryGetPoint
(
perHeader
,
"量化指标"
,
out
point
))
specialUnit
.
QuantitativeIndicators
=
row
.
GetCell
(
point
).
GetValue
();
if
(
NopiSevice
.
TryGetPoint
(
perHeader
,
"数量"
,
out
point
))
specialUnit
.
Quantity
=
ConvertHelper
.
To
<
decimal
?>(
row
.
GetCell
(
point
).
GetValue
());
if
(
NopiSevice
.
TryGetPoint
(
perHeader
,
"量化指标绩效分值"
,
out
point
))
specialUnit
.
QuantitativeIndicatorsValue
=
ConvertHelper
.
To
<
decimal
?>(
row
.
GetCell
(
point
).
GetValue
());
if
(
NopiSevice
.
TryGetPoint
(
perHeader
,
"人数"
,
out
point
))
specialUnit
.
Number
=
ConvertHelper
.
To
<
decimal
?>(
row
.
GetCell
(
point
).
GetValue
());
var
cell
=
row
.
GetCell
(
perHeader
.
FirstOrDefault
(
p
=>
p
.
CellValue
==
"科室"
).
PointCell
);
//?.ToString();
var
accountingUnit
=
NopiSevice
.
GetCellStringValue
(
cell
);
if
(
cell
!=
null
&&
IsMergeCell
(
cell
,
out
Point
start
,
out
Point
end
)
&&
r
!=
start
.
X
)
...
...
@@ -72,7 +84,8 @@ public List<IPerData> ReadData(ISheet sheet, List<PerHeader> perHeader)
specialUnit
.
AccountingUnit
=
accountingUnit
;
specialUnit
.
Department
=
accountingUnit
;
specialUnit
.
Number
=
ConvertHelper
.
To
<
decimal
?>(
row
.
GetCell
(
perHeader
.
FirstOrDefault
(
p
=>
p
.
CellValue
==
"人数"
).
PointCell
)?.
NumericCellValue
);
//specialUnit.Number = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "人数").PointCell)?.NumericCellValue);
//specialUnit.ScoringAverage = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "考核得分率").PointCell)?.NumericCellValue);
//specialUnit.OtherPerfor = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "其他绩效").PointCell)?.NumericCellValue);
//specialUnit.Punishment = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "医院奖罚").PointCell)?.NumericCellValue);
...
...
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