refactor: 删除FlowinstanceTransitionHistory

This commit is contained in:
yubaolee
2025-05-15 15:39:15 +08:00
parent cfe60345d2
commit 591ae5a09a
5 changed files with 3 additions and 144 deletions

View File

@@ -375,7 +375,6 @@ namespace OpenAuth.App.Flow
flowInstance.ActivityName = Nodes[rejectNode].name;
flowInstance.MakerList =
GetNodeMarkers(Nodes[rejectNode], flowInstance.CreateUserId);
SaveTransitionHis();
}
flowInstance.SchemeContent = JsonHelper.Instance.Serialize(ToSchemeObj());
@@ -405,8 +404,6 @@ namespace OpenAuth.App.Flow
flowInstance.ActivityName = Nodes[startNodeId].name;
flowInstance.MakerList = GetNodeMarkers(Nodes[startNodeId], flowInstance.CreateUserId);
SaveTransitionHis();
var sugarClient = AutofacContainerModule.GetService<ISqlSugarClient>();
sugarClient.Updateable(flowInstance).ExecuteCommand();
@@ -478,32 +475,6 @@ namespace OpenAuth.App.Flow
SaveOperationHis(user.Id, user.Name, opHis);
}
/// <summary>
/// 保存本次扭转记录
/// </summary>
/// <returns></returns>
public void SaveTransitionHis()
{
var user = AutofacContainerModule.GetService<IAuth>().GetCurrentUser().User;
var SugarClient = AutofacContainerModule.GetService<ISqlSugarClient>();
var transitionHistory = new FlowInstanceTransitionHistory
{
InstanceId = flowInstanceId,
CreateUserId = user.Id,
CreateUserName = user.Name,
FromNodeId = currentNodeId,
FromNodeName = currentNode.name,
FromNodeType = GetCurrentNodeType(),
ToNodeId = nextNodeId,
ToNodeName = nextNode?.name,
ToNodeType = GetNextNodeType(),
IsFinish = IsFinish() ? FlowInstanceStatus.Finished : FlowInstanceStatus.Running,
TransitionSate = 0
};
SugarClient.Insertable(transitionHistory).ExecuteCommand();
}
/// <summary>
/// 通知三方系统,节点执行情况
/// </summary>
@@ -580,12 +551,10 @@ namespace OpenAuth.App.Flow
currentNode.setInfo.Description = "";
currentNode.setInfo.TagedTime = "";
//删除当前节点的扭转记录
//删除当前节点的审批记录(只删除最新的一条)
var user = AutofacContainerModule.GetService<IAuth>().GetCurrentUser().User;
var SugarClient = AutofacContainerModule.GetService<ISqlSugarClient>();
SugarClient.Deleteable<FlowInstanceTransitionHistory>().Where(u => u.InstanceId == flowInstanceId && u.CreateUserId == user.Id && u.FromNodeId == currentNodeId).ExecuteCommand();
//删除当前节点的审批记录(只删除最新的一条)
var latestRecord = SugarClient.Queryable<FlowInstanceOperationHistory>()
.Where(u => u.InstanceId == flowInstanceId && u.CreateUserId == user.Id)
.OrderByDescending(u => u.CreateDate)

View File

@@ -219,7 +219,6 @@ namespace OpenAuth.App
wfruntime.SaveOperationHis($"【创建】{user.User.Name}创建了流程实例【{addFlowInstanceReq.CustomName}】");
wfruntime.SaveTransitionHis();
SugarClient.Ado.CommitTran();
return flowInstance.Id;
}
@@ -408,14 +407,11 @@ namespace OpenAuth.App
: FlowInstanceStatus.Running;
flowInstance.MakerList =
wfruntime.IsFinish() ? "" : wfruntime.GetNextMakers();
wfruntime.SaveTransitionHis();
}
else
{
//网关过程中,需要更新用户
flowInstance.MakerList = wfruntime.GetForkNodeMakers(wfruntime.currentNodeId);
wfruntime.SaveTransitionHis();
}
flowInstance.SchemeContent = JsonHelper.Instance.Serialize(wfruntime.ToSchemeObj());
@@ -898,7 +894,6 @@ namespace OpenAuth.App
#endregion
wfruntime.SaveOperationHis($"【启动】由用户{user.User.Name}启动");
wfruntime.SaveTransitionHis();
SugarClient.Ado.CommitTran();
}