Commit 6aeb04eb by ruyun.zhang@suvalue.com

合并“梧州分支”

parents 7e394be4 ae375ac7
...@@ -501,8 +501,9 @@ public ApiResponse UpdateAllotShowFormula([FromBody] AllotRequest request) ...@@ -501,8 +501,9 @@ public ApiResponse UpdateAllotShowFormula([FromBody] AllotRequest request)
} }
/// <summary> /// <summary>
/// 获取 /// 获取预留金额
/// </summary> /// </summary>
/// <param name="request"></param>
/// <returns></returns> /// <returns></returns>
[Route("reserved")] [Route("reserved")]
[HttpPost] [HttpPost]
...@@ -512,7 +513,7 @@ public ApiResponse Reserved([FromBody] ReservedRequest request) ...@@ -512,7 +513,7 @@ public ApiResponse Reserved([FromBody] ReservedRequest request)
return new ApiResponse(ResponseType.ParameterError, "绩效信息无效"); return new ApiResponse(ResponseType.ParameterError, "绩效信息无效");
var userid = _claim.GetUserId(); var userid = _claim.GetUserId();
var reserveds = _allotService.GetReserved(request.HospitalId, request.Year, userid); var reserveds = _allotService.GetReserved(request, userid);
return new ApiResponse(ResponseType.OK, reserveds); return new ApiResponse(ResponseType.OK, reserveds);
} }
......
...@@ -249,8 +249,9 @@ ...@@ -249,8 +249,9 @@
</member> </member>
<member name="M:Performance.Api.Controllers.AllotController.Reserved(Performance.DtoModels.ReservedRequest)"> <member name="M:Performance.Api.Controllers.AllotController.Reserved(Performance.DtoModels.ReservedRequest)">
<summary> <summary>
获取 获取预留金额
</summary> </summary>
<param name="request"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Performance.Api.Controllers.AllotController.DownloadCurrentCalculationTable(System.Int32)"> <member name="M:Performance.Api.Controllers.AllotController.DownloadCurrentCalculationTable(System.Int32)">
......
...@@ -8565,11 +8565,6 @@ ...@@ -8565,11 +8565,6 @@
是否开启定时抽取任务 1 是 2 否 是否开启定时抽取任务 1 是 2 否
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.sys_hospital.IsSingleProject">
<summary>
抽取项目是否在同一环境 1 是 2 否
</summary>
</member>
<member name="P:Performance.EntityModels.sys_hospital.IsShowManageButton"> <member name="P:Performance.EntityModels.sys_hospital.IsShowManageButton">
<summary> <summary>
行政后勤是否显示管理绩效按钮 1 是 2 否 行政后勤是否显示管理绩效按钮 1 是 2 否
......
...@@ -8,5 +8,6 @@ public class ReservedRequest ...@@ -8,5 +8,6 @@ public class ReservedRequest
{ {
public int HospitalId { get; set; } public int HospitalId { get; set; }
public int Year { get; set; } public int Year { get; set; }
public int Source { get; set; }
} }
} }
...@@ -111,10 +111,10 @@ public class sys_hospital ...@@ -111,10 +111,10 @@ public class sys_hospital
/// </summary> /// </summary>
public Nullable<int> IsOpenTimedTasks { get; set; } public Nullable<int> IsOpenTimedTasks { get; set; }
/// <summary> ///// <summary>
/// 抽取项目是否在同一环境 1 是 2 否 ///// 抽取项目是否在同一环境 1 是 2 否
/// </summary> ///// </summary>
public Nullable<int> IsSingleProject { get; set; } //public Nullable<int> IsSingleProject { get; set; }
/// <summary> /// <summary>
/// 行政后勤是否显示管理绩效按钮 1 是 2 否 /// 行政后勤是否显示管理绩效按钮 1 是 2 否
......
...@@ -275,7 +275,7 @@ public IEnumerable<view_second_workload_result> GetSecondWorkload(int allotid, s ...@@ -275,7 +275,7 @@ public IEnumerable<view_second_workload_result> GetSecondWorkload(int allotid, s
string query = $@" string query = $@"
SELECT TAB1.HospitalId,AllotId,TAB1.UnitType,AccountingUnit,HISDeptName,ItemId,ItemName,FactorValue,DoctorName,PersonnelNumber,Category,SUM(Fee) Value SELECT TAB1.HospitalId,AllotId,TAB1.UnitType,AccountingUnit,HISDeptName,ItemId,ItemName,FactorValue,DoctorName,PersonnelNumber,Category,SUM(Fee) Value
FROM view_second_workload TAB1 FROM view_second_workload TAB1
JOIN view_second_workload_his TAB2 ON TAB1.HospitalId = TAB2.HospitalId AND (TAB1.UnitType = TAB2.UnitType ) AND TAB1.HISDeptName = TAB2.Department AND TAB1.SourceCategory = TAB2.Category JOIN view_second_workload_his TAB2 ON TAB1.HospitalId = TAB2.HospitalId AND (TAB1.UnitType = TAB2.UnitType OR TAB2.UnitType = '通用工作量') AND TAB1.HISDeptName = TAB2.Department AND TAB1.SourceCategory = TAB2.Category
WHERE AllotId = @allotid AND TAB1.UnitType = @unittype AND AccountingUnit = @accountingunit WHERE AllotId = @allotid AND TAB1.UnitType = @unittype AND AccountingUnit = @accountingunit
GROUP BY TAB1.HospitalId,AllotId,TAB1.UnitType,AccountingUnit,HISDeptName,ItemId,ItemName,FactorValue,DoctorName,PersonnelNumber,Category"; GROUP BY TAB1.HospitalId,AllotId,TAB1.UnitType,AccountingUnit,HISDeptName,ItemId,ItemName,FactorValue,DoctorName,PersonnelNumber,Category";
return connection.Query<view_second_workload_result>(query, new { allotid, unittype, accountingunit }, commandTimeout: 60 * 60); return connection.Query<view_second_workload_result>(query, new { allotid, unittype, accountingunit }, commandTimeout: 60 * 60);
......
...@@ -385,10 +385,12 @@ public List<PerReport> NurseAvg(ReportRequest request) ...@@ -385,10 +385,12 @@ public List<PerReport> NurseAvg(ReportRequest request)
/// <param name="hospitalId"></param> /// <param name="hospitalId"></param>
/// <param name="year"></param> /// <param name="year"></param>
/// <returns></returns> /// <returns></returns>
public List<EmployeeReservedDto> GetEmployeeReserved(int hospitalId, int year) public List<EmployeeReservedDto> GetEmployeeReserved(ReservedRequest request)
{ {
string sql = "SELECT * FROM view_allot_result_report WHERE HospitalID=@HospitalID AND Year=@Year"; string view = request.Source == 1 ? "view_allot_result_report_emp" : request.Source == 2 ? "view_allot_result_report_issue": request.Source == 3 ? "view_allot_result_report":"";
return DapperQuery<EmployeeReservedDto>(sql, new { HospitalID = hospitalId, Year = year })?.ToList();
string sql = $"SELECT * FROM {view} WHERE HospitalID=@HospitalID AND Year=@Year";
return DapperQuery<EmployeeReservedDto>(sql, new { HospitalID = request.HospitalId, Year = request.Year })?.ToList();
} }
/// <summary> /// <summary>
......
...@@ -648,26 +648,31 @@ public List<log_dbug> AllotLog(per_allot allot, int type) ...@@ -648,26 +648,31 @@ public List<log_dbug> AllotLog(per_allot allot, int type)
} }
/// <summary> /// <summary>
/// 获取医院预留绩效 ///
/// </summary> /// </summary>
/// <param name="hospitalId"></param> /// <param name="request"></param>
/// <param name="year"></param>
/// <param name="userid"></param> /// <param name="userid"></param>
/// <returns></returns> /// <returns></returns>
public List<EmployeeReservedDto> GetReserved(int hospitalId, int year, int userid) public List<EmployeeReservedDto> GetReserved(ReservedRequest request, int userid)
{ {
var userInfo = _userRepository.GetUser(userid); var userInfo = _userRepository.GetUser(userid);
if (userInfo?.User == null) throw new NotImplementedException("当前用户不存在"); if (userInfo?.User == null) throw new NotImplementedException("当前用户不存在");
if (userInfo?.URole == null) throw new NotImplementedException("当前用户暂未分配角色"); if (userInfo?.URole == null) throw new NotImplementedException("当前用户暂未分配角色");
if (userInfo.IsSecondAdmin) var role = roleService.GetUserRole(userid)?.FirstOrDefault()?.Type;
if (!role.HasValue)
throw new PerformanceException("用户信息错误");
var reserveds = _reportRepository.GetEmployeeReserved(request);
if (reserveds != null && reserveds.Any())
{ {
var unitTpes = UnitTypeUtil.GetMaps(userInfo?.URole.Type); var unitTpes = UnitTypeUtil.GetMaps(userInfo?.URole.Type);
return _reportRepository.GetEmployeeReserved(hospitalId, year, unitTpes, userInfo.User.Department); return _reportRepository.GetEmployeeReserved(request.HospitalId, request.Year, unitTpes, userInfo.User.Department);
} }
else else
{ {
return _reportRepository.GetEmployeeReserved(hospitalId, year); return _reportRepository.GetEmployeeReserved(request);
} }
} }
/// <summary> /// <summary>
......
...@@ -368,7 +368,7 @@ public bool QueryHosConfigs(int moduleId, ref bool isSingle, out int sheetType) ...@@ -368,7 +368,7 @@ public bool QueryHosConfigs(int moduleId, ref bool isSingle, out int sheetType)
var hospital = hospitalRepository.GetEntity(t => t.ID == module.HospitalId); var hospital = hospitalRepository.GetEntity(t => t.ID == module.HospitalId);
if (hospital == null) throw new PerformanceException("医院信息错误!"); if (hospital == null) throw new PerformanceException("医院信息错误!");
isSingle = hospital.IsSingleProject == 1; isSingle = true;// hospital.IsSingleProject == 1;
var hospitalConfigs = hospitalconfigRepository.GetEntities(t => t.HospitalId == module.HospitalId); var hospitalConfigs = hospitalconfigRepository.GetEntities(t => t.HospitalId == module.HospitalId);
if (hospitalConfigs != null && hospitalConfigs.Any()) if (hospitalConfigs != null && hospitalConfigs.Any())
...@@ -645,7 +645,7 @@ public string Judge(int allotId, int hospitalId, int useTemplate, ref bool isSin ...@@ -645,7 +645,7 @@ public string Judge(int allotId, int hospitalId, int useTemplate, ref bool isSin
var hospital = hospitalRepository.GetEntity(t => t.ID == hospitalId); var hospital = hospitalRepository.GetEntity(t => t.ID == hospitalId);
if (hospital == null) if (hospital == null)
throw new PerformanceException("医院ID错误"); throw new PerformanceException("医院ID错误");
isSingle = (hospital.IsSingleProject ?? 2) == 1; isSingle = true; // (hospital.IsSingleProject ?? 2) == 1;
// 获取医院配置信息 // 获取医院配置信息
var hospitalConfigList = hospitalconfigRepository.GetEntities(t => t.HospitalId == hospitalId); var hospitalConfigList = hospitalconfigRepository.GetEntities(t => t.HospitalId == hospitalId);
if (hospitalConfigList == null || hospitalConfigList.Count == 0) if (hospitalConfigList == null || hospitalConfigList.Count == 0)
......
...@@ -30,6 +30,20 @@ public static ICell GetOrCreate(this IRow row, int index) ...@@ -30,6 +30,20 @@ public static ICell GetOrCreate(this IRow row, int index)
return cell; return cell;
} }
/// <summary>
/// 删除重建
/// </summary>
/// <param name="row"></param>
/// <param name="index"></param>
/// <returns></returns>
public static ICell GetOrRecreate(this IRow row, int index)
{
var cell = row.GetCell(index);
if (cell != null)
row.RemoveCell(cell);
return row.CreateCell(index);
}
public static void SetRowStyle(this IRow row, ICellStyle cellStyle) public static void SetRowStyle(this IRow row, ICellStyle cellStyle)
{ {
......
...@@ -116,6 +116,28 @@ private static void WriteFactor(IRow row, int cellIndex, decimal? value, ICellSt ...@@ -116,6 +116,28 @@ private static void WriteFactor(IRow row, int cellIndex, decimal? value, ICellSt
cell.CellStyle = style; cell.CellStyle = style;
} }
public static void ClearSheetFormula(ISheet sheet, PerSheetPoint point, SheetType sheetType, ExcelStyle style, List<string> headers, List<ExtractTransDto> data)
{
headers = headers.Select(t => t.NoBlank()).ToList();
int dataFirstCellNum = point.DataFirstCellNum.Value;
var columnHeader = sheet.GetOrCreate(point.HeaderFirstRowNum.Value);
for (int cellIndex = dataFirstCellNum; cellIndex < columnHeader.LastCellNum; cellIndex++)
{
for (int rowIndex = point.DataFirstRowNum.Value; rowIndex < sheet.LastRowNum + 1; rowIndex++)
{
var row = sheet.GetRow(rowIndex);
if (row == null) continue;
var column = columnHeader.GetOrCreate(cellIndex).GetDecodeEscapes();
if (headers.Any(w => w == column))
{
row.GetOrRecreate(cellIndex);
}
}
}
}
#region ExtractData #region ExtractData
public static void WriteSheetData(ISheet sheet, PerSheetPoint point, SheetType sheetType, ExcelStyle style, List<string> headers, List<ExtractTransDto> data) public static void WriteSheetData(ISheet sheet, PerSheetPoint point, SheetType sheetType, ExcelStyle style, List<string> headers, List<ExtractTransDto> data)
...@@ -157,12 +179,15 @@ public static void WriteSheetData(ISheet sheet, PerSheetPoint point, SheetType s ...@@ -157,12 +179,15 @@ public static void WriteSheetData(ISheet sheet, PerSheetPoint point, SheetType s
if (row == null) continue; if (row == null) continue;
string department = row.GetOrCreate(dataFirstCellNum - 1).GetDecodeEscapes(); string department = row.GetOrCreate(dataFirstCellNum - 1).GetDecodeEscapes();
if (string.IsNullOrEmpty(department)) continue;
if (rowIndex >= dataFirstRowNum) dataFirstRowNum = rowIndex + 1;
if (rowIndex > dataFirstRowNum) dataFirstRowNum = rowIndex + 1; var deptData = data.Where(t => t.Department.NoBlank() == department);
if (deptData == null || !deptData.Any(t => t.Value.HasValue && t.Value != 0)) continue;
#region 写入数据 #region 写入数据
if (sheetType == SheetType.Income && !string.IsNullOrEmpty(department)) if (sheetType == SheetType.Income)
{ {
if (!incomes.Any(t => t.Department == department)) if (!incomes.Any(t => t.Department == department))
incomes.Add(GetIncomeRowMessage(row, dataFirstCellNum, department, rowIndex)); incomes.Add(GetIncomeRowMessage(row, dataFirstCellNum, department, rowIndex));
...@@ -175,15 +200,7 @@ public static void WriteSheetData(ISheet sheet, PerSheetPoint point, SheetType s ...@@ -175,15 +200,7 @@ public static void WriteSheetData(ISheet sheet, PerSheetPoint point, SheetType s
var cell = row.GetOrCreate(cellIndex); var cell = row.GetOrCreate(cellIndex);
if (string.IsNullOrEmpty(column)) continue; if (string.IsNullOrEmpty(column)) continue;
var value = deptData.FirstOrDefault(t => t.Category.NoBlank() == column)?.Value;
decimal? value = 0m;
if (!string.IsNullOrEmpty(department))
{
var deptData = data.Where(t => t.Department.NoBlank() == department);
if (deptData != null && deptData.Any(t => t.Value.HasValue && t.Value != 0))
value = deptData.FirstOrDefault(t => t.Category.NoBlank() == column)?.Value;
}
//数据为空,且单元格值不为空,不写入数据(保留原始值) //数据为空,且单元格值不为空,不写入数据(保留原始值)
// 22.3.29 ry 只要是提取的列头全部覆盖数据 // 22.3.29 ry 只要是提取的列头全部覆盖数据
if (headers != null && headers.Contains(column) && value.HasValue && value != 0) if (headers != null && headers.Contains(column) && value.HasValue && value != 0)
...@@ -196,10 +213,10 @@ public static void WriteSheetData(ISheet sheet, PerSheetPoint point, SheetType s ...@@ -196,10 +213,10 @@ public static void WriteSheetData(ISheet sheet, PerSheetPoint point, SheetType s
#endregion #endregion
data.RemoveAll(t => t.Department == department); data.RemoveAll(t => t.Department == department);
}
//if (point.DataFirstRowNum.Value < dataFirstRowNum) dataFirstRowNum += 1; //if (point.DataFirstRowNum.Value < dataFirstRowNum) dataFirstRowNum += 1;
} }
}
private static void WriteSheetDataNonexistent(ISheet sheet, IRow columnHeader, PerSheetPoint point, SheetType sheetType, ExcelStyle style, private static void WriteSheetDataNonexistent(ISheet sheet, IRow columnHeader, PerSheetPoint point, SheetType sheetType, ExcelStyle style,
List<string> headers, List<ExtractTransDto> data, int dataFirstRowNum) List<string> headers, List<ExtractTransDto> data, int dataFirstRowNum)
...@@ -233,17 +250,19 @@ public static void WriteSheetData(ISheet sheet, PerSheetPoint point, SheetType s ...@@ -233,17 +250,19 @@ public static void WriteSheetData(ISheet sheet, PerSheetPoint point, SheetType s
{ {
var row = sheet.GetOrCreate(dataFirstRowNum); var row = sheet.GetOrCreate(dataFirstRowNum);
for (int cellIndex = point.HeaderFirstCellNum.Value; cellIndex < columnHeader.LastCellNum; cellIndex++) for (int cellIndex = point.HeaderFirstCellNum.Value; cellIndex < columnHeader.LastCellNum; cellIndex++)
{ {
var column = columnHeader.GetCell(cellIndex).GetDecodeEscapes(); var column = columnHeader.GetCell(cellIndex).GetDecodeEscapes();
List<string> uts = new List<string> { "核算单元(医技组)", "核算单元(医生组)", "核算单元(护理组)" }; List<string> uts = new List<string> { "核算单元(医技组)", "核算单元(医生组)", "核算单元(护理组)" };
if (uts.Contains(column)) if (uts.Contains(column))
column = column?.Replace("(", "(").Replace(")", ")"); column = column?.Replace("(", "(").Replace(")", ")");
var cell = row.CreateCell(cellIndex); var cell = row.GetOrCreate(cellIndex);
if (filed.ContainsKey(column)) if (filed.ContainsKey(column))
{ {
var value = filed[column]?.Invoke(deptData.First()); var value = filed[column]?.Invoke(deptData.First());
cell.SetCellOValue(value); cell.SetCellOValue(value);
cell.CellStyle = cellStyle; cell.CellStyle = cellStyle;
} }
...@@ -297,8 +316,6 @@ public static void WriteSheetData(ISheet sheet, PerSheetPoint point, SheetType s ...@@ -297,8 +316,6 @@ public static void WriteSheetData(ISheet sheet, PerSheetPoint point, SheetType s
cell.CellStyle = cellStyle; cell.CellStyle = cellStyle;
} }
for (int cellIndex = dataFirstCellNum; cellIndex < columnHeader.LastCellNum; cellIndex++) for (int cellIndex = dataFirstCellNum; cellIndex < columnHeader.LastCellNum; cellIndex++)
{ {
var column = columnHeader.GetOrCreate(cellIndex).GetDecodeEscapes(); var column = columnHeader.GetOrCreate(cellIndex).GetDecodeEscapes();
...@@ -487,7 +504,7 @@ public static void WriteCollectData(ISheet sheet, PerSheetPoint point, SheetType ...@@ -487,7 +504,7 @@ public static void WriteCollectData(ISheet sheet, PerSheetPoint point, SheetType
for (int cellIndex = point.HeaderFirstCellNum.Value; cellIndex < columnHeader.LastCellNum; cellIndex++) for (int cellIndex = point.HeaderFirstCellNum.Value; cellIndex < columnHeader.LastCellNum; cellIndex++)
{ {
var column = columnHeader.GetCell(cellIndex).GetDecodeEscapes()?.Replace("(", "(").Replace(")", ")"); var column = columnHeader.GetCell(cellIndex).GetDecodeEscapes()?.Replace("(", "(").Replace(")", ")");
var cell = row.CreateCell(cellIndex); var cell = row.GetOrCreate(cellIndex);
if (filed.ContainsKey(column)) if (filed.ContainsKey(column))
{ {
......
...@@ -81,7 +81,7 @@ public void Execute() ...@@ -81,7 +81,7 @@ public void Execute()
var dict = new Dictionary<ExDataDict, object>(); var dict = new Dictionary<ExDataDict, object>();
var scripts = new List<ex_script>(); var scripts = new List<ex_script>();
var isSingle = hospital.IsSingleProject == 1; var isSingle = true;// hospital.IsSingleProject == 1;
dictionaryService.Handler(hospital.ID, allot, "", isSingle); dictionaryService.Handler(hospital.ID, allot, "", isSingle);
var data = queryService.Handler(hospital.ID, allot, "", isSingle, ref dict, ref scripts); var data = queryService.Handler(hospital.ID, allot, "", isSingle, ref dict, ref scripts);
} }
...@@ -125,7 +125,7 @@ public void ExportFile() ...@@ -125,7 +125,7 @@ public void ExportFile()
var dict = new Dictionary<ExDataDict, object>(); var dict = new Dictionary<ExDataDict, object>();
var isSingle = hospital.IsSingleProject == 1; var isSingle = true;// hospital.IsSingleProject == 1;
var prevAllot = allots?.Where(t => t.HospitalId == hospital.ID && new int[] { 6, 8 }.Contains(t.States)).OrderByDescending(t => t.Year).ThenByDescending(t => t.Month).First(); var prevAllot = allots?.Where(t => t.HospitalId == hospital.ID && new int[] { 6, 8 }.Contains(t.States)).OrderByDescending(t => t.Year).ThenByDescending(t => t.Month).First();
string filePath = prevAllot?.Path ?? ""; string filePath = prevAllot?.Path ?? "";
string extractFilePath = extractService.Main(allot.ID, allot.HospitalId, "", "User" + userId, filePath, isSingle); string extractFilePath = extractService.Main(allot.ID, allot.HospitalId, "", "User" + userId, filePath, isSingle);
......
...@@ -58,6 +58,7 @@ public void WriteSheetData(ISheet sheet, PerSheetPoint point, SheetType sheetTyp ...@@ -58,6 +58,7 @@ public void WriteSheetData(ISheet sheet, PerSheetPoint point, SheetType sheetTyp
if (data is List<ExtractTransDto> extractDto && extractDto.Any()) if (data is List<ExtractTransDto> extractDto && extractDto.Any())
{ {
var columns = headers.Select(t => t.ColumnName).ToList(); var columns = headers.Select(t => t.ColumnName).ToList();
WriteDataHelper.ClearSheetFormula(sheet, point, sheetType, style, columns, extractDto);
WriteDataHelper.WriteSheetData(sheet, point, sheetType, style, columns, extractDto); WriteDataHelper.WriteSheetData(sheet, point, sheetType, style, columns, extractDto);
} }
} }
......
...@@ -56,6 +56,7 @@ public void WriteSheetData(ISheet sheet, PerSheetPoint point, SheetType sheetTyp ...@@ -56,6 +56,7 @@ public void WriteSheetData(ISheet sheet, PerSheetPoint point, SheetType sheetTyp
if (data is List<ExtractTransDto> extractDto && extractDto.Any()) if (data is List<ExtractTransDto> extractDto && extractDto.Any())
{ {
var columns = headers.Select(t => t.ColumnName).Intersect(extractDto.Select(t => t.Category))?.ToList(); var columns = headers.Select(t => t.ColumnName).Intersect(extractDto.Select(t => t.Category))?.ToList();
WriteDataHelper.ClearSheetFormula(sheet, point, sheetType, style, columns, extractDto);
WriteDataHelper.WriteSheetData(sheet, point, sheetType, style, columns, extractDto); WriteDataHelper.WriteSheetData(sheet, point, sheetType, style, columns, extractDto);
} }
} }
......
...@@ -399,14 +399,14 @@ public void RowsExpand(per_allot allot, List<SecondColumnDictionary> dic, List<D ...@@ -399,14 +399,14 @@ public void RowsExpand(per_allot allot, List<SecondColumnDictionary> dic, List<D
/* 如果是已保存数据,则加载原始数据,否则加载工作量自动带出 */ /* 如果是已保存数据,则加载原始数据,否则加载工作量自动带出 */
value = isSave value = isSave
? bodyDynamic?.FirstOrDefault(w => w.BodyId == employee.Id && w.WorkloadId == workitem.Id)?.Value ? bodyDynamic?.FirstOrDefault(w => w.BodyId == employee.Id && w.WorkloadId == workitem.Id)?.Value
: secondWorkload.FirstOrDefault(w => w.PersonnelNumber == employee.WorkNumber && w.DoctorName == employee.Name && workitem.ItemId.EqualsIgnoreCase(w.ItemId))?.Value; : secondWorkload.FirstOrDefault(w => w.PersonnelNumber == employee.WorkNumber && workitem.ItemId.EqualsIgnoreCase(w.ItemId))?.Value;
} }
else else
{ {
/* 如果是已保存数据,则加载原始数据,否则加载工作量自动带出 */ /* 如果是已保存数据,则加载原始数据,否则加载工作量自动带出 */
value = isSave && overrideMode != EmployeeSource.Workload value = isSave && overrideMode != EmployeeSource.Workload
? bodyDynamic?.FirstOrDefault(w => w.BodyId == employee.Id && w.WorkloadId == workitem.Id)?.Value ? bodyDynamic?.FirstOrDefault(w => w.BodyId == employee.Id && w.WorkloadId == workitem.Id)?.Value
: secondWorkload.FirstOrDefault(w => w.PersonnelNumber == employee.WorkNumber && w.DoctorName == employee.Name && workitem.ItemId.EqualsIgnoreCase(w.ItemId))?.Value; : secondWorkload.FirstOrDefault(w => w.PersonnelNumber == employee.WorkNumber && workitem.ItemId.EqualsIgnoreCase(w.ItemId))?.Value;
} }
dict.AddOrUpdate(workitem.ItemId, value); dict.AddOrUpdate(workitem.ItemId, value);
} }
......
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