流程设计提交时验证流程合法性

This commit is contained in:
yubao
2018-03-27 22:58:55 +08:00
parent 17dd5552c6
commit 82c1519648
6 changed files with 154 additions and 63 deletions

View File

@@ -316,50 +316,43 @@ namespace OpenAuth.App
/// <returns></returns>
private string GetMakerList(FlowRuntime wfruntime)
{
try
string makerList = "";
if (wfruntime.runtimeModel.nextNodeId == "-1")
{
string makerList = "";
if (wfruntime.runtimeModel.nextNodeId == "-1")
throw (new Exception("<22>޷<EFBFBD>Ѱ<EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD>һ<EFBFBD><D2BB><EFBFBD>ڵ<EFBFBD>"));
}
if (wfruntime.runtimeModel.nextNodeType == 0)//<2F><><EFBFBD><EFBFBD><EFBFBD>ǻ<EFBFBD>ǩ<EFBFBD>ڵ<EFBFBD>
{
List<string> _nodelist = wfruntime.GetCountersigningNodeIdList(wfruntime.runtimeModel.nextNodeId);
string _makerList = "";
foreach (string item in _nodelist)
{
throw (new Exception("<22>޷<EFBFBD>Ѱ<EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD>һ<EFBFBD><D2BB><EFBFBD>ڵ<EFBFBD>"));
}
if (wfruntime.runtimeModel.nextNodeType == 0)//<2F><><EFBFBD><EFBFBD><EFBFBD>ǻ<EFBFBD>ǩ<EFBFBD>ڵ<EFBFBD>
{
List<string> _nodelist = wfruntime.GetCountersigningNodeIdList(wfruntime.runtimeModel.nextNodeId);
string _makerList = "";
foreach (string item in _nodelist)
_makerList = GetMakerList(wfruntime.runtimeModel.nodes[item], wfruntime.runtimeModel.flowInstanceId);
if (_makerList == "-1")
{
_makerList = GetMakerList(wfruntime.runtimeModel.nodes[item], wfruntime.runtimeModel.flowInstanceId);
if (_makerList == "-1")
{
throw (new Exception("<22>޷<EFBFBD>Ѱ<EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD>ǩ<EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><E9BFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!"));
}
if (_makerList == "1")
{
throw (new Exception("<22><>ǩ<EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߲<EFBFBD><DFB2><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><E9BFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!"));
}
if (makerList != "")
{
makerList += ",";
}
makerList += _makerList;
throw (new Exception("<22>޷<EFBFBD>Ѱ<EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD>ǩ<EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><E9BFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!"));
}
}
else
{
makerList = GetMakerList(wfruntime.runtimeModel.nextNode, wfruntime.runtimeModel.flowInstanceId);
if (makerList == "-1")
if (_makerList == "1")
{
throw (new Exception("<22>޷<EFBFBD>Ѱ<EFBFBD>ҵ<EFBFBD><EFBFBD>ڵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><E9BFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!"));
throw (new Exception("<22><EFBFBD>ǩ<EFBFBD>ڵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߲<EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><E9BFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!"));
}
if (makerList != "")
{
makerList += ",";
}
makerList += _makerList;
}
}
else
{
makerList = GetMakerList(wfruntime.runtimeModel.nextNode, wfruntime.runtimeModel.flowInstanceId);
if (makerList == "-1")
{
throw (new Exception("<22>޷<EFBFBD>Ѱ<EFBFBD>ҵ<EFBFBD><D2B5>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><E9BFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!"));
}
}
return makerList;
}
catch
{
throw;
}
return makerList;
}
/// <summary>
/// Ѱ<>Ҹýڵ<C3BD>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD>