Commit 94ba042c by lcx

部分修改

parent 8d57d416
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
}, },
"AppConnection": { "AppConnection": {
//"PerformanceConnectionString": "server=112.124.13.17;database=db_performance;uid=suvalue;pwd=suvalue2016;pooling=true;charset=utf8;convert zero datetime=true;port=3306;connection timeout=120;max pool size=512;allow user variables=true;", //"PerformanceConnectionString": "server=112.124.13.17;database=db_performance;uid=suvalue;pwd=suvalue2016;pooling=true;charset=utf8;convert zero datetime=true;port=3306;connection timeout=120;max pool size=512;allow user variables=true;",
"PerformanceConnectionString": "server=192.168.18.166;database=db_test_zhangye;uid=root;pwd=1234qwer;pooling=true;charset=utf8;convert zero datetime=true;port=3306;connection timeout=120;max pool size=512;allow user variables=true;", "PerformanceConnectionString": "server=192.168.18.166;database=db_performance_screen;uid=root;pwd=1234qwer;pooling=true;charset=utf8;convert zero datetime=true;port=3306;connection timeout=120;max pool size=512;allow user variables=true;",
"HangfireConnectionString": "server=192.168.18.166;database=db_hangfire;uid=root;pwd=1234qwer;port=3306;allow user variables=true;", "HangfireConnectionString": "server=192.168.18.166;database=db_hangfire;uid=root;pwd=1234qwer;port=3306;allow user variables=true;",
"RedisConnectionString": "116.62.245.55:6379,defaultDatabase=2" "RedisConnectionString": "116.62.245.55:6379,defaultDatabase=2"
}, },
......
...@@ -85,6 +85,10 @@ public enum AllotStates ...@@ -85,6 +85,10 @@ public enum AllotStates
public enum AgWorkloadType public enum AgWorkloadType
{ {
/// <summary> /// <summary>
/// 核算前奖励
/// </summary>
PreAccountingReward = -2,
/// <summary>
/// 单项奖励 /// 单项奖励
/// </summary> /// </summary>
SingleAwards = -1, SingleAwards = -1,
......
...@@ -50,7 +50,7 @@ public class WorkloadRequest ...@@ -50,7 +50,7 @@ public class WorkloadRequest
/// <summary> /// <summary>
/// 是否是单项奖励 /// 是否是单项奖励
/// </summary> /// </summary>
public bool IsSingleAwards { get; set; } public AgWorkloadType AgWorkloadType { get; set; }
/// <summary> /// <summary>
/// 工作量带出HIS来源 /// 工作量带出HIS来源
......
...@@ -259,6 +259,12 @@ public List<SecondColumnDictionary> GetTableHeaderDictionary(ComputeMode compute ...@@ -259,6 +259,12 @@ public List<SecondColumnDictionary> GetTableHeaderDictionary(ComputeMode compute
{ {
maps.Add(new SecondColumnDictionary(item.Value, item.Title, false, ++singleAwardsSort, type: "SingleAwards", color: "singleawards_color")); maps.Add(new SecondColumnDictionary(item.Value, item.Title, false, ++singleAwardsSort, type: "SingleAwards", color: "singleawards_color"));
} }
// 核算前奖励
int preAccountingRewardSort = 500;
foreach (var item in loads.Where(w => w.Title.StartsWithIgnoreCase("PreAccountingReward_")))
{
maps.Add(new SecondColumnDictionary(item.Value, item.Title, false, ++preAccountingRewardSort, type: "PreAccountingReward", color: "preaccountingreward_color"));
}
return maps.OrderBy(w => w.Sort).ToList(); return maps.OrderBy(w => w.Sort).ToList();
} }
......
...@@ -1363,15 +1363,7 @@ public List<ag_workload> GetWorkloadList(WorkloadRequest request) ...@@ -1363,15 +1363,7 @@ public List<ag_workload> GetWorkloadList(WorkloadRequest request)
/// <returns></returns> /// <returns></returns>
public bool WorkloadAdd(WorkloadRequest request) public bool WorkloadAdd(WorkloadRequest request)
{ {
Expression<Func<ag_workload, bool>> exp = (t) => t.HospitalId == request.HospitalId && t.Department == request.Department && t.UnitType == request.UnitType; Expression<Func<ag_workload, bool>> exp = (t) => t.HospitalId == request.HospitalId && t.Department == request.Department && t.UnitType == request.UnitType && t.ItemId.StartsWith($"{request.AgWorkloadType}_");
if (request.IsSingleAwards)
{
exp = exp.And(t => t.ItemId.StartsWith(AgWorkloadType.SingleAwards.ToString()));
}
else
{
exp = exp.And(t => t.ItemId.StartsWith($"{AgWorkloadType.Workload}_"));
}
var workloadList = agworkloadRepository.GetEntities(exp); var workloadList = agworkloadRepository.GetEntities(exp);
if (workloadList != null && workloadList.Any(t => t.ItemName == request.ItemName)) if (workloadList != null && workloadList.Any(t => t.ItemName == request.ItemName))
throw new PerformanceException("项目名称重复"); throw new PerformanceException("项目名称重复");
...@@ -1384,12 +1376,12 @@ public bool WorkloadAdd(WorkloadRequest request) ...@@ -1384,12 +1376,12 @@ public bool WorkloadAdd(WorkloadRequest request)
ItemName = request.ItemName, ItemName = request.ItemName,
Sort = request.Sort ?? 1, Sort = request.Sort ?? 1,
SourceCategory = request.SourceCategory, SourceCategory = request.SourceCategory,
WorkTypeId = request.IsSingleAwards ? (int)AgWorkloadType.SingleAwards : request.WorkTypeId WorkTypeId = request.AgWorkloadType == AgWorkloadType.Workload ? request.WorkTypeId : (int)request.AgWorkloadType
}; };
var result = agworkloadRepository.Add(workload); var result = agworkloadRepository.Add(workload);
if (result) if (result)
{ {
workload.ItemId = getWorkloadItemId.Invoke(request.IsSingleAwards, request.WorkTypeId, workload.Id); workload.ItemId = getWorkloadItemId.Invoke(request.AgWorkloadType, request.WorkTypeId, workload.Id);
agworkloadRepository.Update(workload); agworkloadRepository.Update(workload);
} }
...@@ -1403,15 +1395,7 @@ public bool WorkloadAdd(WorkloadRequest request) ...@@ -1403,15 +1395,7 @@ public bool WorkloadAdd(WorkloadRequest request)
/// <returns></returns> /// <returns></returns>
public bool WorkloadUpdate(WorkloadRequest request) public bool WorkloadUpdate(WorkloadRequest request)
{ {
Expression<Func<ag_workload, bool>> exp = (t) => t.HospitalId == request.HospitalId && t.Department == request.Department && t.UnitType == request.UnitType; Expression<Func<ag_workload, bool>> exp = (t) => t.HospitalId == request.HospitalId && t.Department == request.Department && t.UnitType == request.UnitType && t.ItemId.StartsWith($"{request.AgWorkloadType}_");
if (request.IsSingleAwards)
{
exp = exp.And(t => t.ItemId.StartsWith(AgWorkloadType.SingleAwards.ToString()));
}
else
{
exp = exp.And(t => t.ItemId.StartsWith($"{AgWorkloadType.Workload}_"));
}
var workloadList = agworkloadRepository.GetEntities(exp); var workloadList = agworkloadRepository.GetEntities(exp);
if (workloadList != null && workloadList.Any(t => t.Id != request.Id && t.ItemName == request.ItemName)) if (workloadList != null && workloadList.Any(t => t.Id != request.Id && t.ItemName == request.ItemName))
throw new PerformanceException("项目名称重复"); throw new PerformanceException("项目名称重复");
...@@ -1424,8 +1408,8 @@ public bool WorkloadUpdate(WorkloadRequest request) ...@@ -1424,8 +1408,8 @@ public bool WorkloadUpdate(WorkloadRequest request)
workload.ItemName = request.ItemName; workload.ItemName = request.ItemName;
workload.SourceCategory = request.SourceCategory; workload.SourceCategory = request.SourceCategory;
workload.Sort = request.Sort; workload.Sort = request.Sort;
workload.ItemId = getWorkloadItemId.Invoke(request.IsSingleAwards, request.WorkTypeId, workload.Id); ; workload.ItemId = getWorkloadItemId.Invoke(request.AgWorkloadType, request.WorkTypeId, workload.Id);
workload.WorkTypeId = request.IsSingleAwards ? (int)AgWorkloadType.SingleAwards : request.WorkTypeId; workload.WorkTypeId = request.AgWorkloadType == AgWorkloadType.Workload ? request.WorkTypeId : (int)request.AgWorkloadType;
return agworkloadRepository.Update(workload); return agworkloadRepository.Update(workload);
} }
...@@ -1433,19 +1417,21 @@ public bool WorkloadUpdate(WorkloadRequest request) ...@@ -1433,19 +1417,21 @@ public bool WorkloadUpdate(WorkloadRequest request)
/// <summary> /// <summary>
/// 获取工作量绩效配置的ItemId /// 获取工作量绩效配置的ItemId
/// </summary> /// </summary>
readonly Func<bool, int, int, string> getWorkloadItemId = (isSingleAwards, workTypeId, workloadId) => readonly Func<AgWorkloadType, int, int, string> getWorkloadItemId = (agWorkloadType, workTypeId, workloadId) =>
{ {
/** /**
* 单项奖励 - SingleAwards_WorkloadId * 单项奖励 - SingleAwards_WorkloadId
* 默认工作量类型WorkTypeId=0 - Workload_Default_WorkloadId * 默认工作量类型WorkTypeId=0 - Workload_Default_WorkloadId
* 自定义工作量类型WorkTypeId>0 - Workload_WorkTypeId_WorkloadId * 自定义工作量类型WorkTypeId>0 - Workload_WorkTypeId_WorkloadId
*/ */
if (isSingleAwards) if (agWorkloadType == AgWorkloadType.Workload)
return $"{AgWorkloadType.SingleAwards}_{workloadId}";
else
{ {
return workTypeId == (int)AgWorkloadType.Workload ? $"{AgWorkloadType.Workload}_Default_{workloadId}" return workTypeId == (int)AgWorkloadType.Workload ? $"{AgWorkloadType.Workload}_Default_{workloadId}"
: $"{AgWorkloadType.Workload}_{workTypeId}_{workloadId}"; : $"{AgWorkloadType.Workload}_{workTypeId}_{workloadId}";
}
else
{
return $"{agWorkloadType}_{workloadId}";
} }
}; };
......
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