Commit 9ee21fb0 by ruyun.zhang@suvalue.com

Merge branch '大屏稳定版0.1'

parents d505db1e 09075396
...@@ -615,6 +615,18 @@ ...@@ -615,6 +615,18 @@
<param name=""></param> <param name=""></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Performance.Api.Controllers.ConfigController.GetSecondaryAlias">
<summary>
获取二次分配别名配置
</summary>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.ConfigController.SaveSecondaryAlias(Performance.DtoModels.SaveCollectData)">
<summary>
保存二次分配别名配置
</summary>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.EmployeeController.GetEmployeeList(Performance.DtoModels.EmployeeRequest)"> <member name="M:Performance.Api.Controllers.EmployeeController.GetEmployeeList(Performance.DtoModels.EmployeeRequest)">
<summary> <summary>
获取人员列表 获取人员列表
...@@ -1199,6 +1211,36 @@ ...@@ -1199,6 +1211,36 @@
<param name="form"></param> <param name="form"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Performance.Api.Controllers.ReportGlobalController.ReportPersonTag(System.Int32)">
<summary>
获取人员标签配置
</summary>
<param name="hospitalId"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.ReportGlobalController.SaveReportPersonTag(System.Int32,Performance.DtoModels.SaveCollectData)">
<summary>
保存科室标签配置
</summary>
<param name="hospitalId"></param>
<param name="request"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.ReportGlobalController.ReportTag(System.Int32)">
<summary>
获取人员标签配置
</summary>
<param name="hospitalId"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.ReportGlobalController.SaveReportTag(System.Int32,Performance.DtoModels.SaveCollectData)">
<summary>
保存科室标签配置
</summary>
<param name="hospitalId"></param>
<param name="request"></param>
<returns></returns>
</member>
<member name="T:Performance.Api.Controllers.SecondAllotController"> <member name="T:Performance.Api.Controllers.SecondAllotController">
<summary> <summary>
二次绩效 二次绩效
......
...@@ -64,6 +64,9 @@ ...@@ -64,6 +64,9 @@
<member name="P:Performance.EntityModels.PerformanceDbContext.cof_again"> <member name="P:Performance.EntityModels.PerformanceDbContext.cof_again">
<summary> </summary> <summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.PerformanceDbContext.cof_alias">
<summary> </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.cof_check"> <member name="P:Performance.EntityModels.PerformanceDbContext.cof_check">
<summary> 上传excel文件校验配置 </summary> <summary> 上传excel文件校验配置 </summary>
</member> </member>
......
...@@ -29,7 +29,6 @@ public int DeleteData(int allotId) ...@@ -29,7 +29,6 @@ public int DeleteData(int allotId)
"im_header", "im_header",
"im_specialunit", "im_specialunit",
"log_check", "log_check",
"per_employee",
"per_sheet", "per_sheet",
"res_account", "res_account",
"res_accountdoctor", "res_accountdoctor",
......
...@@ -30,6 +30,21 @@ public bool UpdateAllotStates(int allotId, int states, string remark, int genera ...@@ -30,6 +30,21 @@ public bool UpdateAllotStates(int allotId, int states, string remark, int genera
} }
/// <summary> /// <summary>
/// 执行存储过程
/// </summary>
/// <param name="execsql"></param>
/// <param name="param"></param>
/// <returns></returns>
public bool ExecProc(string execsql, object param)
{
using (var connection = context.Database.GetDbConnection())
{
Execute(execsql, param);
}
return true;
}
/// <summary>
/// 只支持EXCEL抽取报表数据 /// 只支持EXCEL抽取报表数据
/// </summary> /// </summary>
/// <param name="import"></param> /// <param name="import"></param>
......
using AutoMapper; using AutoMapper;
using Microsoft.Extensions.Logging;
using Performance.DtoModels; using Performance.DtoModels;
using Performance.EntityModels; using Performance.EntityModels;
using Performance.Infrastructure; using Performance.Infrastructure;
...@@ -33,6 +34,7 @@ public class ResultComputeService : IAutoInjection ...@@ -33,6 +34,7 @@ public class ResultComputeService : IAutoInjection
private readonly LogManageService logManageService; private readonly LogManageService logManageService;
private readonly PerforImemployeeclinicRepository perforImemployeeclinicRepository; private readonly PerforImemployeeclinicRepository perforImemployeeclinicRepository;
private readonly PerforImemployeelogisticsRepository perforImemployeelogisticsRepository; private readonly PerforImemployeelogisticsRepository perforImemployeelogisticsRepository;
private readonly ILogger logger;
public ResultComputeService( public ResultComputeService(
PerforHospitalRepository hospitalRepository, PerforHospitalRepository hospitalRepository,
...@@ -50,7 +52,8 @@ public class ResultComputeService : IAutoInjection ...@@ -50,7 +52,8 @@ public class ResultComputeService : IAutoInjection
PerforAgsecondallotRepository perforAgsecondallotRepository, PerforAgsecondallotRepository perforAgsecondallotRepository,
PerforResreservedRepository perforresreservedRepository, PerforResreservedRepository perforresreservedRepository,
PerforImemployeeclinicRepository perforImemployeeclinicRepository, PerforImemployeeclinicRepository perforImemployeeclinicRepository,
PerforImemployeelogisticsRepository perforImemployeelogisticsRepository) PerforImemployeelogisticsRepository perforImemployeelogisticsRepository,
ILogger<ResultComputeService> logger)
{ {
this.baiscNormService = baiscNormService; this.baiscNormService = baiscNormService;
this.computeDirector = computeDirector; this.computeDirector = computeDirector;
...@@ -70,6 +73,7 @@ public class ResultComputeService : IAutoInjection ...@@ -70,6 +73,7 @@ public class ResultComputeService : IAutoInjection
this.perforresreservedRepository = perforresreservedRepository; this.perforresreservedRepository = perforresreservedRepository;
this.perforImemployeeclinicRepository = perforImemployeeclinicRepository; this.perforImemployeeclinicRepository = perforImemployeeclinicRepository;
this.perforImemployeelogisticsRepository = perforImemployeelogisticsRepository; this.perforImemployeelogisticsRepository = perforImemployeelogisticsRepository;
this.logger = logger;
} }
/// <summary> /// <summary>
...@@ -214,6 +218,7 @@ public void SpecialUnitCompute(PerExcel excel, per_allot allot, List<res_baiscno ...@@ -214,6 +218,7 @@ public void SpecialUnitCompute(PerExcel excel, per_allot allot, List<res_baiscno
AdjustLaterOtherFee = dept?.AdjustLaterOtherFee ?? 0, AdjustLaterOtherFee = dept?.AdjustLaterOtherFee ?? 0,
NightShiftWorkPerforFee = nightShift, NightShiftWorkPerforFee = nightShift,
}; };
logger.LogInformation($"特殊核算组-{group.AccountingUnit},sumValue:{sumValue},预算比例:{dept?.BasicFactor ?? -100}");
res.ResultsTotalFee = Math.Round((sumValue * (dept?.BasicFactor ?? 1m)) ?? 0); res.ResultsTotalFee = Math.Round((sumValue * (dept?.BasicFactor ?? 1m)) ?? 0);
res.PerforTotal = res.ResultsTotalFee + res.AssessBeforeOtherFee; res.PerforTotal = res.ResultsTotalFee + res.AssessBeforeOtherFee;
res.GiveFee = Math.Round((res.PerforTotal * res.ScoringAverage + res.MedicineExtra + res.MaterialsExtra + res.Punishment + res.AssessLaterOtherFee) ?? 0); res.GiveFee = Math.Round((res.PerforTotal * res.ScoringAverage + res.MedicineExtra + res.MaterialsExtra + res.Punishment + res.AssessLaterOtherFee) ?? 0);
......
...@@ -442,9 +442,11 @@ public void Generate(per_allot allot, string mail) ...@@ -442,9 +442,11 @@ public void Generate(per_allot allot, string mail)
perforCofdirectorRepository.SupplementaryData(allot.ID); perforCofdirectorRepository.SupplementaryData(allot.ID);
logManageService.WriteMsg("正在生成报表数据", "正在生成报表数据", 1, allot.ID, "ReceiveMessage", true); logManageService.WriteMsg("正在生成报表数据", "正在生成报表数据", 1, allot.ID, "ReceiveMessage", true);
var res = reportService.ImportData(allot); //var res = reportService.ImportData(allot);
var flag = reportService.UpdateData(allot); //var flag = reportService.UpdateData(allot);
logManageService.WriteMsg("正在生成报表数据", $"报表数据生成完成;受影响:{res}行", 1, allot.ID, "ReceiveMessage", true); //logManageService.WriteMsg("正在生成报表数据", $"报表数据生成完成;受影响:{res}行", 1, allot.ID, "ReceiveMessage", true);
//reportService.ExecProc("call proc_report_performance(@hospitalid, @year, @month);", new { allot.HospitalId, allot.Year, allot.Month });
////发送邮件 ////发送邮件
//logManageService.WriteMsg("正在发送邮件", "正在发送邮件", 1, allot.ID, "ReceiveMessage", true); //logManageService.WriteMsg("正在发送邮件", "正在发送邮件", 1, allot.ID, "ReceiveMessage", true);
......
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
using Performance.DtoModels; using Performance.DtoModels;
using Performance.EntityModels; using Performance.EntityModels;
using Performance.Infrastructure;
using Performance.Repository; using Performance.Repository;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
...@@ -384,5 +385,22 @@ public List<PerReport> MenuReport(ReportRequest request) ...@@ -384,5 +385,22 @@ public List<PerReport> MenuReport(ReportRequest request)
return report; return report;
} }
/// <summary>
/// 执行存储过程
/// </summary>
/// <param name="allot"></param>
/// <returns></returns>
public void ExecProc(string execsql, object param)
{
try
{
perforPerallotRepository.Execute(execsql, param);
}
catch (Exception ex)
{
logger.LogError($"执行存储过程时发生异常,sql:{execsql};参数:{JsonHelper.Serialize(param)};异常:{ex.Message};");
}
}
} }
} }
...@@ -1300,9 +1300,9 @@ bool method(decimal? submitDataAmount, decimal? realGiveFee) ...@@ -1300,9 +1300,9 @@ bool method(decimal? submitDataAmount, decimal? realGiveFee)
if (data == null || !data.Any()) if (data == null || !data.Any())
throw new PerformanceException("提交时未检测到数据!"); throw new PerformanceException("提交时未检测到数据!");
var total = data.Sum(t => t.RealAmount); //var total = data.Sum(t => t.RealAmount);
if (!method(total, second.RealGiveFee)) //if (!method(total, second.RealGiveFee))
throw new PerformanceException("总金额与考核后金额不一致!"); // throw new PerformanceException("总金额与考核后金额不一致!");
} }
else else
{ {
...@@ -1310,10 +1310,10 @@ bool method(decimal? submitDataAmount, decimal? realGiveFee) ...@@ -1310,10 +1310,10 @@ bool method(decimal? submitDataAmount, decimal? realGiveFee)
if (data == null || !data.Any()) if (data == null || !data.Any())
throw new PerformanceException("提交时未检测到数据!"); throw new PerformanceException("提交时未检测到数据!");
var total = data.Where(t => t.ItemName == "实发绩效工资金额" && t.RowNumber > -1).GroupBy(t => t.RowNumber) //var total = data.Where(t => t.ItemName == "实发绩效工资金额" && t.RowNumber > -1).GroupBy(t => t.RowNumber)
.Sum(t => ConvertHelper.To<decimal>(t.OrderByDescending(o => o.ID).FirstOrDefault().ItemValue)); // .Sum(t => ConvertHelper.To<decimal>(t.OrderByDescending(o => o.ID).FirstOrDefault().ItemValue));
if (!method(total, second.RealGiveFee)) //if (!method(total, second.RealGiveFee))
throw new PerformanceException("总金额与考核后金额不一致!"); // throw new PerformanceException("总金额与考核后金额不一致!");
} }
second.UseTempId = temp.UseTempId; second.UseTempId = temp.UseTempId;
second.Status = 2; second.Status = 2;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment