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
db51957b
Commit
db51957b
authored
Aug 14, 2019
by
李承祥
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
界面日志信息输出
parent
1c089166
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
170 additions
and
48 deletions
+170
-48
performance/Performance.Services/AllotCompute/CheckDataService.cs
+5
-1
performance/Performance.Services/AllotCompute/ImportDataService.cs
+16
-8
performance/Performance.Services/AllotCompute/ProcessComputService.cs
+14
-1
performance/Performance.Services/AllotCompute/ResultComputeService.cs
+8
-2
performance/Performance.Services/AllotService.cs
+28
-14
performance/Performance.Services/ConfigService.cs
+22
-14
performance/Performance.Services/Hubs/AllotLogHub.cs
+14
-3
performance/Performance.Services/LogManageService.cs
+37
-0
performance/Performance.Services/NewExtractService.cs
+26
-5
No files found.
performance/Performance.Services/AllotCompute/CheckDataService.cs
View file @
db51957b
...
...
@@ -15,16 +15,19 @@ public class CheckDataService : IAutoInjection
private
PerforCofcheckRepository
perforCofcheckRepository
;
private
PerforLogcheckRepository
perforLogcheckRepository
;
private
PerforCofdrugtypeRepository
perforCofdrugtypeRepository
;
private
LogManageService
logManageService
;
public
CheckDataService
(
PerSheetService
perSheetService
,
PerforCofcheckRepository
perforCofcheckRepository
,
PerforLogcheckRepository
perforLogcheckRepository
,
PerforCofdrugtypeRepository
perforCofdrugtypeRepository
PerforCofdrugtypeRepository
perforCofdrugtypeRepository
,
LogManageService
logManageService
)
{
this
.
perSheetService
=
perSheetService
;
this
.
perforCofcheckRepository
=
perforCofcheckRepository
;
this
.
perforLogcheckRepository
=
perforLogcheckRepository
;
this
.
perforCofdrugtypeRepository
=
perforCofdrugtypeRepository
;
this
.
logManageService
=
logManageService
;
}
internal
bool
Check
(
PerExcel
excel
,
per_allot
allot
)
{
...
...
@@ -232,6 +235,7 @@ public void InsertLog(int allotId, int type, int level, string title, string mes
Message
=
message
};
perforLogcheckRepository
.
Add
(
model
);
logManageService
.
WriteMsg
(
"绩效数据校验"
,
$"
{
title
}
-
{
message
}
"
,
allotId
,
"ReceiveMessage"
);
}
#
endregion
}
...
...
performance/Performance.Services/AllotCompute/ImportDataService.cs
View file @
db51957b
...
...
@@ -27,7 +27,8 @@ public class ImportDataService : IAutoInjection
private
PerforImemployeeRepository
perforImEmployeeRepository
;
private
PerforImaccountbasicRepository
perforImaccountbasicRepository
;
private
PerforImspecialunitRepository
perforImspecialunitRepository
;
private
PerforLogdbugRepository
logdbug
;
//private PerforLogdbugRepository logdbug;
private
readonly
LogManageService
logManageService
;
public
ImportDataService
(
PerSheetService
perSheetService
,
PerforPersheetRepository
perforPerSheetRepository
,
PerforPerallotRepository
perforPerallotRepository
,
...
...
@@ -36,7 +37,8 @@ public class ImportDataService : IAutoInjection
PerforImemployeeRepository
perforImEmployeeRepository
,
PerforImaccountbasicRepository
perforImaccountbasicRepository
,
PerforImspecialunitRepository
perforImspecialunitRepository
,
PerforLogdbugRepository
logdbug
)
//PerforLogdbugRepository logdbug
LogManageService
logManageService
)
{
this
.
perSheetService
=
perSheetService
;
this
.
perforPerSheetRepository
=
perforPerSheetRepository
;
...
...
@@ -46,7 +48,8 @@ public class ImportDataService : IAutoInjection
this
.
perforImEmployeeRepository
=
perforImEmployeeRepository
;
this
.
perforImaccountbasicRepository
=
perforImaccountbasicRepository
;
this
.
perforImspecialunitRepository
=
perforImspecialunitRepository
;
this
.
logdbug
=
logdbug
;
//this.logdbug = logdbug;
this
.
logManageService
=
logManageService
;
}
/// <summary>
...
...
@@ -86,7 +89,8 @@ private PerExcel Import(per_allot allot)
var
sheet
=
workbook
.
GetSheetAt
(
i
);
var
sheetType
=
perSheetService
.
GetSheetType
(
sheet
.
SheetName
);
logdbug
.
Add
(
allot
.
ID
,
"开始读取excel文件"
,
JsonHelper
.
Serialize
(
new
{
sheetType
,
Description
=
EnumHelper
.
GetDescription
(
sheetType
),
name
=
sheet
.
SheetName
}));
//logdbug.Add(allot.ID, "开始读取excel文件", JsonHelper.Serialize(new { sheetType, Description = EnumHelper.GetDescription(sheetType), name = sheet.SheetName }));
logManageService
.
WriteMsg
(
"开始读取excel文件"
,
JsonHelper
.
Serialize
(
new
{
sheetType
,
Description
=
EnumHelper
.
GetDescription
(
sheetType
),
name
=
sheet
.
SheetName
}),
allot
.
ID
,
"ReceiveMessage"
,
true
);
if
(
SheetType
.
Unidentifiable
!=
sheetType
)
{
var
st
=
perSheetService
.
Sheet
(
sheet
);
...
...
@@ -233,22 +237,26 @@ private bool Save(PerExcel excel, int allotId)
{
if
(
sheet
.
SheetType
==
SheetType
.
Employee
)
{
logdbug
.
Add
(
allotId
,
"开始保存人员数据数据"
,
sheet
.
SheetName
);
//logdbug.Add(allotId, "开始保存人员数据数据", sheet.SheetName);
logManageService
.
WriteMsg
(
"保存基础数据"
,
"开始保存人员数据数据"
,
allotId
,
"ReceiveMessage"
,
true
);
SaveEmployee
(
sheet
,
allotId
);
}
else
if
(
sheet
.
SheetType
==
SheetType
.
AccountBasic
)
{
logdbug
.
Add
(
allotId
,
"开始保存临床科室医护绩效测算基础数据"
,
sheet
.
SheetName
);
//logdbug.Add(allotId, "开始保存临床科室医护绩效测算基础数据", sheet.SheetName);
logManageService
.
WriteMsg
(
"保存基础数据"
,
"开始保存临床科室医护绩效测算基础数据"
,
allotId
,
"ReceiveMessage"
,
true
);
SaveAccountBasic
(
sheet
,
allotId
);
}
else
if
(
sheet
.
SheetType
==
SheetType
.
SpecialUnit
)
{
logdbug
.
Add
(
allotId
,
"开始保存特殊核算单元数据"
,
sheet
.
SheetName
);
//logdbug.Add(allotId, "开始保存特殊核算单元数据", sheet.SheetName);
logManageService
.
WriteMsg
(
"保存基础数据"
,
"开始保存特殊核算单元数据"
,
allotId
,
"ReceiveMessage"
,
true
);
SaveSpecialUnit
(
sheet
,
allotId
);
}
else
{
logdbug
.
Add
(
allotId
,
"开始保存统一格式数据"
,
sheet
.
SheetName
);
//logdbug.Add(allotId, "开始保存统一格式数据", sheet.SheetName);
logManageService
.
WriteMsg
(
"保存基础数据"
,
$"开始保存
{
sheet
.
SheetName
}
数据"
,
allotId
,
"ReceiveMessage"
,
true
);
SaveCommon
(
sheet
,
allotId
);
}
}
...
...
performance/Performance.Services/AllotCompute/ProcessComputService.cs
View file @
db51957b
...
...
@@ -25,6 +25,7 @@ public class ProcessComputService : IAutoInjection
private
PerforResaccountRepository
perforResaccountRepository
;
private
PerforResbaiscnormRepository
perforResbaiscnormRepository
;
private
PerforCofdrugtypeRepository
perforCofdrugtypeRepository
;
private
readonly
LogManageService
logManageService
;
public
ProcessComputService
(
PerforCofincomeRepository
perforCofincomeRepository
,
PerforCofdrugpropRepository
perforCofdrugpropRepository
,
PerforPersheetRepository
perforPerSheetRepository
,
...
...
@@ -33,7 +34,8 @@ public class ProcessComputService : IAutoInjection
PerforImemployeeRepository
perforImEmployeeRepository
,
PerforResaccountRepository
perforResaccountRepository
,
PerforResbaiscnormRepository
perforResbaiscnormRepository
,
PerforCofdrugtypeRepository
perforCofdrugtypeRepository
)
PerforCofdrugtypeRepository
perforCofdrugtypeRepository
,
LogManageService
logManageService
)
{
this
.
perforCofincomeRepository
=
perforCofincomeRepository
;
this
.
perforCofdrugpropRepository
=
perforCofdrugpropRepository
;
...
...
@@ -44,6 +46,7 @@ public class ProcessComputService : IAutoInjection
this
.
perforResaccountRepository
=
perforResaccountRepository
;
this
.
perforResbaiscnormRepository
=
perforResbaiscnormRepository
;
this
.
perforCofdrugtypeRepository
=
perforCofdrugtypeRepository
;
this
.
logManageService
=
logManageService
;
}
/// <summary>
...
...
@@ -160,6 +163,7 @@ private void Save(List<PerSheet> perSheets, int allotId)
{
foreach
(
var
sheet
in
perSheets
)
{
logManageService
.
WriteMsg
(
"正在生成绩效"
,
$"保存核算数据 -
{
sheet
.
SheetName
}
"
,
allotId
,
"ReceiveMessage"
);
if
(
sheet
.
SheetType
==
SheetType
.
ComputeDoctorAccount
)
{
SaveComputeDoctorAccount
(
sheet
,
allotId
);
...
...
@@ -187,25 +191,31 @@ private List<PerSheet> MergeCompute(PerExcel excel, int allotid)
//合并科室收入、支出
var
incomeconfs
=
perforCofincomeRepository
.
GetEntities
();
var
economicCompute
=
new
PerSheetDataComputeEconomic
();
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"计算科室经济核算汇总表"
,
allotid
,
"ReceiveMessage"
);
var
mergeResult
=
economicCompute
.
MergeCompute
(
excel
,
incomeconfs
);
//一次计算
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"计算科室经济核算汇总表 -- 第一次计算"
,
allotid
,
"ReceiveMessage"
);
var
onceEconomic
=
economicCompute
.
OnceCompute
(
mergeResult
);
//二次计算
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"计算科室经济核算汇总表 -- 第二次计算"
,
allotid
,
"ReceiveMessage"
);
var
twiceEconomicResult
=
economicCompute
.
TwiceCompute
(
onceEconomic
);
twiceEconomicResult
.
Sheet
.
SheetType
=
SheetType
.
ComputeEconomic
;
perSheet
.
Add
(
twiceEconomicResult
.
Sheet
);
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"计算科室经济核算汇总表 -- 计算完成"
,
allotid
,
"ReceiveMessage"
);
//工作量
var
workloadCompute
=
new
PerSheetDataComputeWorkload
();
var
workload1
=
excel
.
PerSheet
.
FirstOrDefault
(
t
=>
t
.
SheetType
==
SheetType
.
Workload
&&
t
.
SheetName
.
Contains
(
"医生组"
));
workload1
.
SheetName
=
"医生组工作量绩效测算表"
;
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"获取药品费用分割比例"
,
allotid
,
"ReceiveMessage"
);
var
confs
=
GetDrugConfig
(
excel
,
allotid
);
//医生组 一次计算
//var onceWorkload1 = workloadCompute.OnceCompute(workload1, confs);
//医生组 二次计算
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"医生组工作量计算"
,
allotid
,
"ReceiveMessage"
);
var
twiceWorkloadResult1
=
workloadCompute
.
TwiceCompute
(
workload1
);
twiceWorkloadResult1
.
Sheet
.
SheetType
=
SheetType
.
ComputeDoctorWorkload
;
...
...
@@ -216,6 +226,7 @@ private List<PerSheet> MergeCompute(PerExcel excel, int allotid)
//护理组 一次计算
//var onceWorkload2 = workloadCompute.OnceCompute(workload2);
//护理组 二次计算
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"护理组工作量计算"
,
allotid
,
"ReceiveMessage"
);
var
twiceWorkloadResult2
=
workloadCompute
.
TwiceCompute
(
workload2
);
twiceWorkloadResult2
.
Sheet
.
SheetType
=
SheetType
.
ComputeNurseWorkload
;
...
...
@@ -224,8 +235,10 @@ private List<PerSheet> MergeCompute(PerExcel excel, int allotid)
var
deptAccounting
=
excel
.
PerSheet
.
FirstOrDefault
(
t
=>
t
.
SheetType
==
SheetType
.
AccountBasic
);
var
dataList
=
deptAccounting
.
PerData
.
Select
(
t
=>
(
PerDataAccountBaisc
)
t
);
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"计算保底绩效参考标准"
,
allotid
,
"ReceiveMessage"
);
var
baiscnormList
=
ComputeMinimum
(
dataList
,
twiceEconomicResult
.
PerData
,
twiceWorkloadResult1
.
PerData
,
twiceWorkloadResult2
.
PerData
,
allotid
);
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"计算科室绩效"
,
allotid
,
"ReceiveMessage"
);
var
sheet
=
Compute
(
dataList
,
twiceEconomicResult
.
PerData
,
twiceWorkloadResult1
.
PerData
,
twiceWorkloadResult2
.
PerData
,
baiscnormList
);
perSheet
.
AddRange
(
sheet
);
...
...
performance/Performance.Services/AllotCompute/ResultComputeService.cs
View file @
db51957b
...
...
@@ -22,6 +22,7 @@ public class ResultComputeService : IAutoInjection
private
readonly
PerforResbaiscnormRepository
perforResbaiscnormRepository
;
private
readonly
PerforResspecialunitRepository
perforResspecialunitRepository
;
private
readonly
PerforImaccountbasicRepository
perforImaccountbasicRepository
;
private
readonly
LogManageService
logManageService
;
public
ResultComputeService
(
PerforImemployeeRepository
perforImEmployeeRepository
,
...
...
@@ -29,7 +30,8 @@ public class ResultComputeService : IAutoInjection
PerforResbaiscnormRepository
perforResbaiscnormRepository
,
PerforResspecialunitRepository
perforResspecialunitRepository
,
PerforImaccountbasicRepository
perforImaccountbasicRepository
,
BaiscNormService
baiscNormService
,
ComputeDirector
computeDirector
)
BaiscNormService
baiscNormService
,
ComputeDirector
computeDirector
,
LogManageService
logManageService
)
{
this
.
baiscNormService
=
baiscNormService
;
this
.
computeDirector
=
computeDirector
;
...
...
@@ -38,6 +40,7 @@ public class ResultComputeService : IAutoInjection
this
.
perforResbaiscnormRepository
=
perforResbaiscnormRepository
;
this
.
perforResspecialunitRepository
=
perforResspecialunitRepository
;
this
.
perforImaccountbasicRepository
=
perforImaccountbasicRepository
;
this
.
logManageService
=
logManageService
;
}
/// <summary>
...
...
@@ -51,13 +54,15 @@ public List<res_baiscnorm> Compute(per_allot allot, PerExcel excel, List<PerShee
var
accountbasicList
=
perforImaccountbasicRepository
.
GetEntities
(
t
=>
t
.
AllotID
==
allot
.
ID
);
List
<
ComputeEmployee
>
computeEmployees
=
Mapper
.
Map
<
List
<
ComputeEmployee
>>(
empolyeeList
);
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"临床科室主任、临床科室副主任、临床科室护士长 最终绩效数据计算"
,
allot
.
ID
,
"ReceiveMessage"
);
var
computResult
=
computeDirector
.
Compute
(
computeEmployees
,
accountbasicList
,
allot
);
//计算 绩效标准 基数(科主任、副主任、护士长 =>> 平均值)
List
<
res_baiscnorm
>
baiscnormList
=
new
List
<
res_baiscnorm
>();
baiscNormService
.
ComputeAvg
(
baiscnormList
,
accountbasicList
,
computResult
);
baiscNormService
.
DocterNurseBaiscnorm
(
baiscnormList
,
accountbasicList
,
perSheets
);
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"院领导、业务中层、工勤人员 最终绩效数据计算"
,
allot
.
ID
,
"ReceiveMessage"
);
var
computResult2
=
computeDirector
.
Compute
(
computeEmployees
,
allot
,
baiscnormList
);
//计算 行政人员 平均值
baiscNormService
.
ComputeOtherAvg
(
baiscnormList
,
computResult2
,
empolyeeList
);
...
...
@@ -68,6 +73,7 @@ public List<res_baiscnorm> Compute(per_allot allot, PerExcel excel, List<PerShee
perforRescomputeRepository
.
AddRange
(
computes
.
ToArray
());
baiscnormList
.
ForEach
(
t
=>
t
.
AllotID
=
allot
.
ID
);
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"保存最终绩效数据"
,
allot
.
ID
,
"ReceiveMessage"
);
perforResbaiscnormRepository
.
AddRange
(
baiscnormList
.
ToArray
());
return
baiscnormList
;
...
...
performance/Performance.Services/AllotService.cs
View file @
db51957b
...
...
@@ -24,7 +24,7 @@ public class AllotService : IAutoInjection
private
ImportDataService
importDataService
;
private
ProcessComputService
processComputService
;
private
ResultComputeService
resultComputeService
;
private
PerforLogdbugRepository
logdbug
;
//
private PerforLogdbugRepository logdbug;
private
ConfigService
configService
;
private
IHostingEnvironment
_evn
;
...
...
@@ -35,7 +35,8 @@ public class AllotService : IAutoInjection
private
PerforPeragainallotRepository
_againallotRepository
;
private
PerforLogcheckRepository
perforLogcheckRepository
;
private
readonly
PerforHospitalRepository
perforHospitalRepository
;
private
readonly
IHubContext
<
AllotLogHub
>
hubContext
;
//private readonly IHubContext<AllotLogHub> hubContext;
private
readonly
LogManageService
logManageService
;
public
AllotService
(
PerforPerallotRepository
allotRepository
,
BaiscNormService
baiscNormService
,
...
...
@@ -44,14 +45,15 @@ public class AllotService : IAutoInjection
ProcessComputService
processComputService
,
ResultComputeService
resultComputeService
,
ConfigService
configService
,
PerforLogdbugRepository
logdbug
,
//
PerforLogdbugRepository logdbug,
IHostingEnvironment
evn
,
ILogger
<
AllotService
>
logger
,
IEmailService
emailService
,
IOptions
<
Application
>
options
,
PerforPeragainallotRepository
againallotRepository
,
PerforLogcheckRepository
perforLogcheckRepository
,
PerforHospitalRepository
perforHospitalRepository
,
IHubContext
<
AllotLogHub
>
hubContext
)
//IHubContext<AllotLogHub> hubContext
LogManageService
logManageService
)
{
_allotRepository
=
allotRepository
;
_againallotRepository
=
againallotRepository
;
...
...
@@ -65,10 +67,11 @@ public class AllotService : IAutoInjection
this
.
emailService
=
emailService
;
this
.
options
=
options
;
this
.
configService
=
configService
;
this
.
logdbug
=
logdbug
;
//
this.logdbug = logdbug;
this
.
perforLogcheckRepository
=
perforLogcheckRepository
;
this
.
perforHospitalRepository
=
perforHospitalRepository
;
this
.
hubContext
=
hubContext
;
//this.hubContext = hubContext;
this
.
logManageService
=
logManageService
;
}
#
region
基础功能
...
...
@@ -212,41 +215,52 @@ public void Generate(per_allot allot, string mail)
DateTime
time
=
DateTime
.
Now
;
try
{
hubContext
.
Clients
.
Group
(
"aaaa"
).
SendAsync
(
"ReceiveMessage"
,
"绩效开始执行"
,
"绩效开始执行"
);
logdbug
.
Add
(
allot
.
ID
,
"绩效开始执行"
,
JsonHelper
.
Serialize
(
allot
));
//hubContext.Clients.Group("aaaa").SendAsync("ReceiveMessage", "绩效开始执行", "绩效开始执行");
//logdbug.Add(allot.ID, "绩效开始执行", JsonHelper.Serialize(allot));
logManageService
.
WriteMsg
(
"绩效开始执行"
,
JsonHelper
.
Serialize
(
allot
),
allot
.
ID
,
"ReceiveMessage"
,
true
);
configService
.
Clear
(
allot
.
ID
);
UpdateAllotStates
(
allot
.
ID
,
(
int
)
AllotStates
.
InCheckData
,
EnumHelper
.
GetDescription
(
AllotStates
.
InCheckData
));
// 导出数据
var
excel
=
importDataService
.
ReadDataAndSave
(
allot
);
UpdateAllotStates
(
allot
.
ID
,
(
int
)
AllotStates
.
InCheckData
,
EnumHelper
.
GetDescription
(
AllotStates
.
InCheckData
));
if
(!
checkDataService
.
Check
(
excel
,
allot
))
{
UpdateAllotStates
(
allot
.
ID
,
(
int
)
AllotStates
.
CheckFail
,
EnumHelper
.
GetDescription
(
AllotStates
.
CheckFail
));
SendEmail
(
allot
,
mail
,
3
,
time
);
logdbug
.
Add
(
allot
.
ID
,
"绩效数据校验失败"
,
JsonHelper
.
Serialize
(
allot
));
//logdbug.Add(allot.ID, "绩效数据校验失败", JsonHelper.Serialize(allot));
logManageService
.
WriteMsg
(
"绩效数据校验失败"
,
JsonHelper
.
Serialize
(
allot
),
allot
.
ID
,
"ReceiveMessage"
,
true
);
return
;
}
UpdateAllotStates
(
allot
.
ID
,
(
int
)
AllotStates
.
InGenerate
,
EnumHelper
.
GetDescription
(
AllotStates
.
InGenerate
));
// 计算合并数据
logdbug
.
Add
(
allot
.
ID
,
"计算合并数据"
,
JsonHelper
.
Serialize
(
allot
));
//logdbug.Add(allot.ID, "计算合并数据", JsonHelper.Serialize(allot));
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"计算合并数据"
,
allot
.
ID
,
"ReceiveMessage"
,
true
);
List
<
PerSheet
>
list
=
processComputService
.
MergeAndSave
(
excel
,
allot
);
//var baiscnorm = baiscNormService.NurseBaiscnorm(list);
//logdbug.Add(allot.ID, "护士平均绩效", JsonHelper.Serialize(baiscnorm));
// 计算最总数据
logdbug
.
Add
(
allot
.
ID
,
"绩效结果计算数据开始"
,
""
);
//logdbug.Add(allot.ID, "绩效结果计算数据开始", "");
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"计算最终绩效数据"
,
allot
.
ID
,
"ReceiveMessage"
,
true
);
var
baiscnormList
=
resultComputeService
.
Compute
(
allot
,
excel
,
list
);
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"计算最终特殊科室绩效数据"
,
allot
.
ID
,
"ReceiveMessage"
,
true
);
resultComputeService
.
SpecialUnitCompute
(
excel
,
allot
,
baiscnormList
);
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"保存最终特殊科室绩效数据"
,
allot
.
ID
,
"ReceiveMessage"
,
true
);
UpdateAllotStates
(
allot
.
ID
,
(
int
)
AllotStates
.
GenerateSucceed
,
EnumHelper
.
GetDescription
(
AllotStates
.
GenerateSucceed
));
//发送邮件
SendEmail
(
allot
,
mail
,
1
,
time
);
logdbug
.
Add
(
allot
.
ID
,
"绩效开始执行"
,
"绩效生成成功"
);
//logdbug.Add(allot.ID, "绩效开始执行", "绩效生成成功");
logManageService
.
WriteMsg
(
"绩效生成结束"
,
"绩效生成成功"
,
allot
.
ID
,
"ReceiveMessage"
,
true
);
}
catch
(
Exception
ex
)
{
UpdateAllotStates
(
allot
.
ID
,
(
int
)
AllotStates
.
GenerateFail
,
EnumHelper
.
GetDescription
(
AllotStates
.
GenerateFail
));
SendEmail
(
allot
,
mail
,
2
,
time
);
logdbug
.
Add
(
allot
.
ID
,
"绩效开始执行"
,
ex
.
ToString
());
//logdbug.Add(allot.ID, "绩效开始执行", ex.ToString());
logManageService
.
WriteMsg
(
"绩效生成失败"
,
ex
.
ToString
(),
allot
.
ID
,
"ReceiveMessage"
,
true
);
//throw ex;
}
}
...
...
performance/Performance.Services/ConfigService.cs
View file @
db51957b
...
...
@@ -13,6 +13,7 @@ namespace Performance.Services
{
public
class
ConfigService
:
IAutoInjection
{
#
region
private
PerforCofdirectorRepository
_directorRepository
;
private
PerforCofdrugpropRepository
_drugpropRepository
;
private
PerforCofincomeRepository
_incomeRepository
;
...
...
@@ -22,7 +23,8 @@ public class ConfigService : IAutoInjection
private
PerforPerallotRepository
perforPerAllotRepository
;
private
PerforPeragainallotRepository
perforPeragainallotRepository
;
private
PerforHospitalRepository
perforHospitalRepository
;
private
PerforLogdbugRepository
logdbug
;
//private PerforLogdbugRepository logdbug;
private
readonly
LogManageService
logManageService
;
public
ConfigService
(
PerforCofdirectorRepository
cofdirectorRepository
,
PerforCofdrugpropRepository
cofdrugpropRepository
,
PerforCofincomeRepository
cofincomeRepository
,
...
...
@@ -32,7 +34,8 @@ public class ConfigService : IAutoInjection
PerforPerallotRepository
perforPerAllotRepository
,
PerforPeragainallotRepository
perforPeragainallotRepository
,
PerforHospitalRepository
perforHospitalRepository
,
PerforLogdbugRepository
logdbug
)
//PerforLogdbugRepository logdbug
LogManageService
logManageService
)
{
this
.
_directorRepository
=
cofdirectorRepository
;
this
.
_drugpropRepository
=
cofdrugpropRepository
;
...
...
@@ -43,8 +46,10 @@ public class ConfigService : IAutoInjection
this
.
perforPerAllotRepository
=
perforPerAllotRepository
;
this
.
perforPeragainallotRepository
=
perforPeragainallotRepository
;
this
.
perforHospitalRepository
=
perforHospitalRepository
;
this
.
logdbug
=
logdbug
;
//this.logdbug = logdbug;
this
.
logManageService
=
logManageService
;
}
#
endregion
#
region
cof_director
规模
/
效率绩效配置
/// <summary>
...
...
@@ -343,16 +348,6 @@ public bool WorkDelete(WorkyearRequest request)
}
#
endregion
/// <summary>
/// 清楚无效数据
/// </summary>
/// <param name="allotId"></param>
public
void
Clear
(
int
allotId
)
{
var
count
=
_directorRepository
.
DeleteData
(
allotId
);
logdbug
.
Add
(
allotId
,
"清理无效数据"
,
$"受影响行数:
{
count
}
"
);
}
#
region
Copy
/// <summary>
/// 复制报表基础配置
...
...
@@ -486,6 +481,17 @@ public bool AgainDelete(CofAgainRequest request)
}
#
endregion
#
region
清楚无效数据
Clear
/// <summary>
/// 清楚无效数据
/// </summary>
/// <param name="allotId"></param>
public
void
Clear
(
int
allotId
)
{
var
count
=
_directorRepository
.
DeleteData
(
allotId
);
//logdbug.Add(allotId, "清理无效数据", $"受影响行数:{count}");
logManageService
.
WriteMsg
(
"清理无效数据"
,
$"清理无效数据,受影响行数:
{
count
}
"
,
0
,
""
,
true
);
}
/// <summary>
/// 清除二次绩效中无效数据
...
...
@@ -494,7 +500,9 @@ public bool AgainDelete(CofAgainRequest request)
public
void
ClearAgain
(
int
againId
)
{
var
count
=
_directorRepository
.
DelAgain
(
againId
);
logdbug
.
Add
(
againId
,
"清除二次绩效中无效数据"
,
$"受影响行数:
{
count
}
"
);
//logdbug.Add(againId, "清除二次绩效中无效数据", $"受影响行数:{count}");
logManageService
.
WriteMsg
(
"清理无效数据"
,
$"清除二次绩效中无效数据,受影响行数:
{
count
}
"
,
0
,
""
,
true
);
}
#
endregion
}
}
performance/Performance.Services/Hubs/AllotLogHub.cs
View file @
db51957b
...
...
@@ -19,6 +19,11 @@ public override Task OnDisconnectedAsync(Exception exception)
var
groupName
=
"aaaa"
;
//2 删除数据库中用户分组数据
if
(
RedisHelper
.
HExists
(
"MyGroup"
,
groupName
))
{
var
connectionId
=
Context
.
ConnectionId
;
RedisHelper
.
HDel
(
"MyGroup"
,
groupName
);
}
//3 分组中删除用户
Groups
.
RemoveFromGroupAsync
(
Context
.
ConnectionId
,
groupName
);
...
...
@@ -27,10 +32,16 @@ public override Task OnDisconnectedAsync(Exception exception)
public
async
Task
AddGroup
(
string
token
,
string
groupName
)
{
//1 向数据库中插入用户及分组信息
if
(!
RedisHelper
.
HExists
(
"MyGroup"
,
groupName
))
{
//1 向数据库中插入用户及分组信息
var
connectionId
=
Context
.
ConnectionId
;
RedisHelper
.
HSet
(
"MyGroup"
,
groupName
,
connectionId
);
//2 将用户插入分组
await
Groups
.
AddToGroupAsync
(
Context
.
ConnectionId
,
groupName
);
//2 将用户插入分组
await
Groups
.
AddToGroupAsync
(
Context
.
ConnectionId
,
groupName
);
}
}
}
}
performance/Performance.Services/LogManageService.cs
0 → 100644
View file @
db51957b
using
Microsoft.AspNetCore.Mvc.ViewFeatures
;
using
Microsoft.AspNetCore.SignalR
;
using
Performance.Repository
;
using
System
;
using
System.Collections.Generic
;
using
System.Text
;
namespace
Performance.Services
{
public
class
LogManageService
:
IAutoInjection
{
private
readonly
IHubContext
<
AllotLogHub
>
hubContext
;
private
PerforLogdbugRepository
logdbug
;
public
LogManageService
(
IHubContext
<
AllotLogHub
>
hubContext
,
PerforLogdbugRepository
logdbug
)
{
this
.
hubContext
=
hubContext
;
this
.
logdbug
=
logdbug
;
}
/// <summary>
///
/// </summary>
/// <param name="tag">标签</param>
/// <param name="message">内容</param>
/// <param name="allotId">绩效Id</param>
/// <param name="method">方法名称</param>
public
void
WriteMsg
(
string
tag
,
string
message
,
int
allotId
,
string
method
,
bool
isDebug
=
false
)
{
hubContext
.
Clients
.
Group
(
allotId
.
ToString
()).
SendAsync
(
method
,
tag
,
message
);
if
(
isDebug
)
{
logdbug
.
Add
(
allotId
,
tag
,
message
);
}
}
}
}
performance/Performance.Services/NewExtractService.cs
View file @
db51957b
This diff is collapsed.
Click to expand it.
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