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
e36fc6a1
Commit
e36fc6a1
authored
Oct 13, 2020
by
lcx
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'v2020calculate' into v2020income
parents
99f87bfd
d37d7cda
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
81 additions
and
23 deletions
+81
-23
performance/Performance.Api/Controllers/SecondAllotController.cs
+13
-2
performance/Performance.Api/wwwroot/Performance.Api.xml
+6
-0
performance/Performance.Api/wwwroot/Performance.DtoModels.xml
+5
-0
performance/Performance.Api/wwwroot/Performance.EntityModels.xml
+10
-0
performance/Performance.DtoModels/Response/HospitalRequest.cs
+4
-0
performance/Performance.EntityModels/Entity/ag_secondallot.cs
+5
-0
performance/Performance.EntityModels/Entity/sys_hospital.cs
+5
-0
performance/Performance.Services/AllotCompute/ProcessComputService.cs
+0
-1
performance/Performance.Services/AllotService.cs
+1
-1
performance/Performance.Services/BudgetService.cs
+6
-6
performance/Performance.Services/ComputeService.cs
+2
-1
performance/Performance.Services/SecondAllotService.cs
+24
-12
No files found.
performance/Performance.Api/Controllers/SecondAllotController.cs
View file @
e36fc6a1
...
...
@@ -331,8 +331,7 @@ public ApiResponse SubmitAudit(SubmitAuditRequest request)
[
Route
(
"/api/second/audit/list"
)]
public
ApiResponse
<
List
<
ag_secondallot
>>
AuditList
([
FromBody
]
AllotDeptRequest
request
)
{
var
userid
=
claimService
.
GetUserId
();
var
list
=
secondAllotService
.
AuditList
(
userid
,
request
.
AllotId
);
var
list
=
secondAllotService
.
AuditList
(
request
.
AllotId
);
return
new
ApiResponse
<
List
<
ag_secondallot
>>(
ResponseType
.
OK
,
"审核列表"
,
list
);
}
...
...
@@ -355,6 +354,18 @@ public ApiResponse AuditResult([FromBody] SecondAuditRequest request)
/// <summary>
/// 护理部二次绩效审核列表
/// </summary>
/// <returns></returns>
[
HttpPost
]
[
Route
(
"/api/second/audit/nursingdept/list"
)]
public
ApiResponse
<
List
<
ag_secondallot
>>
NursingDeptlist
([
FromBody
]
AllotDeptRequest
request
)
{
var
list
=
secondAllotService
.
NursingDeptlist
(
request
.
AllotId
);
return
new
ApiResponse
<
List
<
ag_secondallot
>>(
ResponseType
.
OK
,
"审核列表"
,
list
);
}
/// <summary>
/// 护理部二次绩效审核结果;驳回、成功
/// </summary>
/// <returns></returns>
...
...
performance/Performance.Api/wwwroot/Performance.Api.xml
View file @
e36fc6a1
...
...
@@ -1168,6 +1168,12 @@
</summary>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.SecondAllotController.NursingDeptlist(Performance.DtoModels.AllotDeptRequest)"
>
<summary>
护理部二次绩效审核列表
</summary>
<returns></returns>
</member>
<member
name=
"M:Performance.Api.Controllers.SecondAllotController.NursingDeptAuditResult(Performance.DtoModels.SecondAuditRequest)"
>
<summary>
护理部二次绩效审核结果;驳回、成功
...
...
performance/Performance.Api/wwwroot/Performance.DtoModels.xml
View file @
e36fc6a1
...
...
@@ -2817,6 +2817,11 @@
是否开启科室CMI占比 1 启用 2 禁用
</summary>
</member>
<member
name=
"P:Performance.DtoModels.HospitalResponse.IsOpenNursingDeptAudit"
>
<summary>
是否开启护理部审核 1 启用 2 禁用
</summary>
</member>
<member
name=
"P:Performance.DtoModels.IncomeResponse.SheetNameKeyword"
>
<summary>
关键字匹配
...
...
performance/Performance.Api/wwwroot/Performance.EntityModels.xml
View file @
e36fc6a1
...
...
@@ -857,6 +857,11 @@
备注
</summary>
</member>
<member
name=
"P:Performance.EntityModels.ag_secondallot.NursingDeptStatus"
>
<summary>
护理部审核状态 2 等待审核 3 审核通过 4 驳回
</summary>
</member>
<member
name=
"P:Performance.EntityModels.ag_secondallot.NursingDeptAuditTime"
>
<summary>
护理部审核时间
...
...
@@ -5012,6 +5017,11 @@
是否开启科室CMI占比 1 启用 2 禁用
</summary>
</member>
<member
name=
"P:Performance.EntityModels.sys_hospital.IsOpenNursingDeptAudit"
>
<summary>
是否开启护理部审核 1 启用 2 禁用
</summary>
</member>
<member
name=
"T:Performance.EntityModels.sys_hospitalconfig"
>
<summary>
...
...
performance/Performance.DtoModels/Response/HospitalRequest.cs
View file @
e36fc6a1
...
...
@@ -23,5 +23,9 @@ public class HospitalResponse
/// 是否开启科室CMI占比 1 启用 2 禁用
/// </summary>
public
int
IsOpenCMIPercent
{
get
;
set
;
}
/// <summary>
/// 是否开启护理部审核 1 启用 2 禁用
/// </summary>
public
int
IsOpenNursingDeptAudit
{
get
;
set
;
}
}
}
performance/Performance.EntityModels/Entity/ag_secondallot.cs
View file @
e36fc6a1
...
...
@@ -87,6 +87,11 @@ public class ag_secondallot
public
string
Remark
{
get
;
set
;
}
/// <summary>
/// 护理部审核状态 2 等待审核 3 审核通过 4 驳回
/// </summary>
public
Nullable
<
int
>
NursingDeptStatus
{
get
;
set
;
}
/// <summary>
/// 护理部审核时间
/// </summary>
public
Nullable
<
DateTime
>
NursingDeptAuditTime
{
get
;
set
;
}
...
...
performance/Performance.EntityModels/Entity/sys_hospital.cs
View file @
e36fc6a1
...
...
@@ -90,5 +90,10 @@ public class sys_hospital
/// 是否开启科室CMI占比 1 启用 2 禁用
/// </summary>
public
Nullable
<
int
>
IsOpenCMIPercent
{
get
;
set
;
}
/// <summary>
/// 是否开启护理部审核 1 启用 2 禁用
/// </summary>
public
Nullable
<
int
>
IsOpenNursingDeptAudit
{
get
;
set
;
}
}
}
performance/Performance.Services/AllotCompute/ProcessComputService.cs
View file @
e36fc6a1
...
...
@@ -403,7 +403,6 @@ public IEnumerable<AccountUnitTotal> GetAccountExtra(PerExcel excel, SheetType s
assessList
=
(
isTotal
)
?
assessList
?.
Where
(
w
=>
w
.
IsTotal
==
1
)
:
assessList
?.
Where
(
w
=>
w
.
IsTotal
!=
1
);
return
assessList
?.
Select
(
t
=>
new
EmpolyeeTotal
{
UnitType
=
t
.
UnitType
,
...
...
performance/Performance.Services/AllotService.cs
View file @
e36fc6a1
...
...
@@ -352,7 +352,7 @@ public void Generate(per_allot allot, string mail)
// 科室奖罚汇总
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"科室奖罚汇总"
,
1
,
allot
.
ID
,
"ReceiveMessage"
,
true
);
var
accountExtras
=
processComputService
.
GetAccountExtra
(
excel
,
SheetType
.
AccountExtra
);
var
accountExtras
=
processComputService
.
GetAccountExtra
(
excel
,
SheetType
.
AccountExtra
,
true
);
// 科室药占比考核
logManageService
.
WriteMsg
(
"正在生成绩效"
,
"科室药占比考核"
,
1
,
allot
.
ID
,
"ReceiveMessage"
,
true
);
var
drugExtras
=
processComputService
.
GetAccountExtra
(
excel
,
SheetType
.
AccountDrugAssess
,
true
);
...
...
performance/Performance.Services/BudgetService.cs
View file @
e36fc6a1
...
...
@@ -350,12 +350,12 @@ public per_budget_result Collect(int hospitalid, int year, int month)
///绩效总金额
private
decimal
GetTheNewPerformance
(
int
hospitalid
,
int
year
,
int
month
)
{
string
sql
=
@"select
sum(realgivefee)
from (
select realgivefee from res_compute t1
string
sql
=
@"select
ifnull(sum(fee),0) as fee
from (
select realgivefee
as fee
from res_compute t1
join per_allot t2 on t1.allotid=t2.id
where hospitalid=@hospitalid and year=@year and month=@month and accounttype in ('护士长','科主任','行政中层','行政高层')
union all
select
realgivefee from ag_compute
t1
select
AssessLaterPerforTotal as fee from res_account
t1
join per_allot t2 on t1.allotid=t2.id
where hospitalid=@hospitalid and year=@year and month=@month
) tab"
;
...
...
@@ -364,13 +364,13 @@ union all
///医疗收入
private
decimal
GetMedicalIncome
(
int
hospitalid
,
int
year
,
int
month
)
{
string
sql
=
@"select
sum(cellvalue)
from report_original_income t1 where hospitalid=@hospitalid and year=@year and month=@month"
;
string
sql
=
@"select
ifnull(sum(cellvalue),0) as fee
from report_original_income t1 where hospitalid=@hospitalid and year=@year and month=@month"
;
return
perbudgetresultRepository
.
DapperQueryFirstOrDefault
<
decimal
>(
sql
,
new
{
hospitalid
,
year
,
month
});
}
///药品收入
private
decimal
GetMedicineProportion
(
int
hospitalid
,
int
year
,
int
month
)
{
string
sql
=
@"select
sum(CellValue)
string
sql
=
@"select
ifnull(sum(cellvalue),0) as fee
from report_original_income t1
join cof_drugtype t2 on t1.allotid = t2.allotid and t2.chargetype = '药费'
where hospitalid=@hospitalid and year=@year and month=@month"
;
...
...
@@ -379,7 +379,7 @@ private decimal GetMedicineProportion(int hospitalid, int year, int month)
///材料支出
private
decimal
GetMaterialCosts
(
int
hospitalid
,
int
year
,
int
month
)
{
string
sql
=
@"select
sum(CellValue)
string
sql
=
@"select
ifnull(sum(cellvalue),0) as fee
from report_original_income t1
join cof_drugtype t2 on t1.allotid = t2.allotid and t2.chargetype = '材料费'
where hospitalid=@hospitalid and year=@year and month=@month"
;
...
...
performance/Performance.Services/ComputeService.cs
View file @
e36fc6a1
...
...
@@ -714,7 +714,7 @@ public DeptDataDetails<DetailModuleExtend> DeptDetail(int accountId)
};
foreach
(
var
stype
in
sheetType
)
{
if
(
type
==
3
&&
stype
==
(
int
)
SheetType
.
Workload
)
type
=
1
;
//
if (type == 3 && stype == (int)SheetType.Workload) type = 1;
foreach
(
var
sheet
in
persheet
.
Where
(
t
=>
t
.
SheetType
==
stype
))
{
if
(
single
!=
""
&&
sheet
.
SheetName
.
Substring
(
0
,
3
)
!=
single
)
...
...
@@ -722,6 +722,7 @@ public DeptDataDetails<DetailModuleExtend> DeptDetail(int accountId)
single
=
sheet
.
SheetName
.
Substring
(
0
,
3
);
var
sheetName
=
reg
.
Replace
(
sheet
.
SheetName
,
""
,
5
).
Replace
(
"."
,
""
).
Replace
(
" "
,
""
);
//var nType = (stype == (int)SheetType.Workload) ? 1 : type;
var
sheetData
=
basicData
.
Where
(
t
=>
t
.
SheetID
==
sheet
.
ID
&&
t
.
UnitType
==
type
&&
t
.
IsTotal
!=
1
).
ToList
();
if
(
sheetData
==
null
||
!
sheetData
.
Any
())
continue
;
...
...
performance/Performance.Services/SecondAllotService.cs
View file @
e36fc6a1
...
...
@@ -1212,21 +1212,18 @@ public bool DeleteWorkType(WorkloadRequest request)
/// </summary>
/// <param name="userId">用户ID</param>
/// <returns></returns>
public
List
<
ag_secondallot
>
AuditList
(
int
userId
,
int
allotId
)
public
List
<
ag_secondallot
>
AuditList
(
int
allotId
)
{
//var hospital = perforUserhospitalRepository.GetEntities(t => t.UserID == userId);
//var allotList = perforPerallotRepository.GetEntities(t => hospital.Select(h => h.HospitalID).Contains(t.HospitalId));
//if (allotList != null && allotList.Count > 0)
//{
// var allotIds = allotList.Select(t => t.ID);
// return perforAgsecondallotRepository.GetEntities(t => allotIds.Contains(t.AllotId.Value) && t.Status == 2);
//}
//return null;
var
allot
=
perforPerallotRepository
.
GetEntity
(
t
=>
t
.
ID
==
allotId
);
if
(
allot
==
null
)
throw
new
PerformanceException
(
"所选绩效不存在!"
);
var
accountUnit
=
perforResaccountRepository
.
GetEntities
(
t
=>
t
.
AllotID
==
allotId
&&
!
new
int
[]
{
(
int
)
UnitType
.
行政高层
,
(
int
)
UnitType
.
行政中层
}.
Contains
(
t
.
UnitType
.
Value
));
return
SecondList
(
allot
,
accountUnit
);
}
private
List
<
ag_secondallot
>
SecondList
(
per_allot
allot
,
List
<
res_account
>
accountUnit
)
{
if
(
accountUnit
==
null
||
!
accountUnit
.
Any
())
return
new
List
<
ag_secondallot
>();
var
secondList
=
perforAgsecondallotRepository
.
GetEntities
(
t
=>
t
.
AllotId
==
allot
.
ID
&&
t
.
Year
==
allot
.
Year
&&
t
.
Month
==
allot
.
Month
);
...
...
@@ -1236,7 +1233,7 @@ public List<ag_secondallot> AuditList(int userId, int allotId)
if
(
second
!=
null
)
return
second
;
return
new
ag_secondallot
{
AllotId
=
allot
Id
,
AllotId
=
allot
.
ID
,
Year
=
allot
.
Year
,
Month
=
allot
.
Month
,
UnitType
=
((
UnitType
)
t
.
UnitType
).
ToString
(),
...
...
@@ -1253,6 +1250,21 @@ public List<ag_secondallot> AuditList(int userId, int allotId)
}
/// <summary>
/// 护理部二次绩效考核列表
/// </summary>
/// <param name="userId">用户ID</param>
/// <returns></returns>
public
List
<
ag_secondallot
>
NursingDeptlist
(
int
allotId
)
{
var
allot
=
perforPerallotRepository
.
GetEntity
(
t
=>
t
.
ID
==
allotId
);
if
(
allot
==
null
)
throw
new
PerformanceException
(
"所选绩效不存在!"
);
var
types
=
new
int
[]
{
(
int
)
UnitType
.
其他护理组
,
(
int
)
UnitType
.
护理组
};
var
accountUnit
=
perforResaccountRepository
.
GetEntities
(
t
=>
t
.
AllotID
==
allotId
&&
types
.
Contains
(
t
.
UnitType
.
Value
));
return
SecondList
(
allot
,
accountUnit
);
}
/// <summary>
/// 提交审核
/// </summary>
/// <param name="userId">用户ID</param>
...
...
@@ -1417,13 +1429,13 @@ public bool NursingDeptAudit(int userId, SecondAuditRequest request)
throw
new
PerformanceException
(
"二次分配绩效无效"
);
if
(
request
.
IsPass
==
1
)
{
second
.
Status
=
3
;
second
.
NursingDept
Status
=
3
;
second
.
NursingDeptRemark
=
$"护理部审核通过;
{
request
.
Remark
}
"
;
}
else
{
second
.
UseTempId
=
null
;
second
.
Status
=
4
;
second
.
NursingDept
Status
=
4
;
second
.
NursingDeptRemark
=
$"护理部驳回;驳回原因:
{
request
.
Remark
}
"
;
}
second
.
NursingDeptAuditUser
=
userId
;
...
...
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