v3.4.6
This commit is contained in:
@@ -83,6 +83,29 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
{
|
||||
output.flowFormInfo = await _flowTaskRepository.GetFlowFromModel(flowTaskParamter.startProperties.formId);
|
||||
output.flowTaskInfo = flowTaskParamter.flowTaskEntity.Adapt<FlowTaskModel>();
|
||||
output.flowFormInfo.propertyJson = _runService.GetVisualDevModelDataConfig(output.flowFormInfo.propertyJson, output.flowFormInfo.tableJson, (int)output.flowFormInfo.formType);
|
||||
if (flowTaskParamter.flowTaskEntity.Suspend == 1)
|
||||
{
|
||||
// 判断子流程的父流程是否被挂起
|
||||
if (!flowTaskParamter.flowTaskEntity.ParentId.Equals("0"))
|
||||
{
|
||||
if (!await _flowTaskRepository.AnyFlowTask(x => x.Id == flowTaskParamter.flowTaskEntity.ParentId && x.DeleteMark == null && x.Suspend == 1))
|
||||
{
|
||||
output.flowTaskInfo.suspend = false;
|
||||
output.flowTaskInfo.status = 6;
|
||||
}
|
||||
else
|
||||
{
|
||||
output.flowTaskInfo.status = 6;
|
||||
output.flowTaskInfo.suspend = true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
output.flowTaskInfo.suspend = false;
|
||||
output.flowTaskInfo.status = 6;
|
||||
}
|
||||
}
|
||||
output.flowTaskOperatorRecordList = await _flowTaskRepository.GetTaskOperatorRecordModelList(id);
|
||||
if (flowTaskParamter.flowTaskNodeEntityList.IsNotEmptyOrNull())
|
||||
{
|
||||
@@ -139,6 +162,7 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
{
|
||||
var startProperties = output.flowTemplateInfo.flowTemplateJson.ToObject<FlowTemplateJsonModel>().properties.ToObject<StartProperties>();
|
||||
output.flowFormInfo = await _flowTaskRepository.GetFlowFromModel(startProperties.formId);
|
||||
output.flowFormInfo.propertyJson = _runService.GetVisualDevModelDataConfig(output.flowFormInfo.propertyJson, output.flowFormInfo.tableJson, (int)output.flowFormInfo.formType);
|
||||
output.formData = await _runService.GetFlowFormDataDetails(output.flowFormInfo.id, id);
|
||||
output.formOperates = startProperties.formOperates;
|
||||
output.approversProperties = startProperties.ToObject<ApproversProperties>();
|
||||
@@ -161,8 +185,8 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
try
|
||||
{
|
||||
var flowTaskEntity = new FlowTaskEntity();
|
||||
flowTaskSubmitModel.isDev = _flowTaskRepository.IsDevFlow(flowTaskSubmitModel.flowId);//是否为功能表单
|
||||
var flowJsonInfo = _flowTaskRepository.GetFlowTemplateInfo(flowTaskSubmitModel.flowId);
|
||||
flowTaskSubmitModel.isDev = _flowTaskRepository.IsDevFlow(flowJsonInfo.templateId);//是否为功能表单
|
||||
flowTaskSubmitModel.flowJsonModel = flowJsonInfo;
|
||||
await flowTaskOtherUtil.GetFlowTitle(flowTaskSubmitModel);
|
||||
// 表单数据处理
|
||||
@@ -178,7 +202,7 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
flowTaskEntity.FlowUrgent = flowTaskSubmitModel.flowUrgent;
|
||||
flowTaskEntity.FlowId = flowJsonInfo.id;
|
||||
flowTaskEntity.FlowCode = flowJsonInfo.enCode;
|
||||
flowTaskEntity.FlowName = flowJsonInfo.fullName;
|
||||
flowTaskEntity.FlowName = flowJsonInfo.flowName;
|
||||
flowTaskEntity.FlowType = flowJsonInfo.type;
|
||||
flowTaskEntity.FlowCategory = flowJsonInfo.category;
|
||||
flowTaskEntity.FlowTemplateJson = flowJsonInfo.flowTemplateJson;
|
||||
@@ -205,6 +229,8 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
if (!(flowTaskSubmitModel.isDev && flowTaskSubmitModel.status == 1 && flowTaskSubmitModel.parentId.Equals("0")))
|
||||
{
|
||||
flowTaskEntity = _flowTaskRepository.GetTaskFirstOrDefault(flowTaskSubmitModel.id);
|
||||
if (flowTaskEntity.Suspend == 1)
|
||||
throw Oops.Oh(ErrorCode.WF0046);
|
||||
if (flowTaskEntity.Status == FlowTaskStatusEnum.Handle.ParseToInt() && flowTaskSubmitModel.approvaUpType == 0)
|
||||
throw Oops.Oh(ErrorCode.WF0031);
|
||||
flowTaskEntity.FlowUrgent = flowTaskSubmitModel.flowUrgent;
|
||||
@@ -328,9 +354,6 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
foreach (var item in messageDic.Keys)
|
||||
{
|
||||
var userList = messageDic[item].Select(x => x.HandleId).ToList();
|
||||
// 委托人
|
||||
//var delegateUserIds = await _flowTaskRepository.GetDelegateUserIds(userList, flowTaskParamter.flowTaskEntity.TemplateId);
|
||||
//userList = userList.Union(delegateUserIds).ToList();
|
||||
bodyDic = flowTaskMsgUtil.GetMesBodyText(flowTaskParamter, userList, messageDic[item], 2);
|
||||
await flowTaskMsgUtil.Alerts(flowTaskParamter.startProperties.waitMsgConfig, bodyDic.Keys.ToList(), flowTaskParamter, "MBXTLC001", bodyDic);
|
||||
// 超时提醒
|
||||
@@ -345,7 +368,13 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
#endregion
|
||||
|
||||
bodyDic = flowTaskMsgUtil.GetMesBodyText(flowTaskParamter, new List<string>() { flowTaskParamter.flowTaskEntity.CreatorUserId }, null, 1);
|
||||
await flowTaskMsgUtil.Alerts(flowTaskParamter.startProperties.endMsgConfig, new List<string>() { flowTaskParamter.flowTaskEntity.CreatorUserId }, flowTaskParamter, "MBXTLC0010", bodyDic);
|
||||
await flowTaskMsgUtil.Alerts(flowTaskParamter.startProperties.endMsgConfig, new List<string>() { flowTaskParamter.flowTaskEntity.CreatorUserId }, flowTaskParamter, "MBXTLC010", bodyDic);
|
||||
}
|
||||
|
||||
//委托发起消息
|
||||
if (flowTaskSubmitModel.isDelegate)
|
||||
{
|
||||
await flowTaskMsgUtil.SendDelegateMsg("发起", flowTaskParamter.flowTaskEntity.CreatorUserId, flowTaskParamter.flowTaskEntity.FlowName);
|
||||
}
|
||||
#endregion
|
||||
|
||||
@@ -379,7 +408,7 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
if (flowTaskParamter.flowTaskOperatorEntity.Id.IsNotEmptyOrNull() && FlowTaskNodeTypeEnum.approver.ParseToString().Equals(flowTaskParamter.flowTaskNodeEntity.NodeType))
|
||||
{
|
||||
var fEntity = _flowTaskRepository.GetFlowFromEntity(flowTaskParamter.flowTaskNodeEntity.FormId);
|
||||
await _runService.SaveFlowFormData(fEntity, flowTaskParamter.formData.ToJsonString(), flowTaskParamter.flowTaskEntity.Id, true);
|
||||
await _runService.SaveFlowFormData(fEntity, flowTaskParamter.formData.ToJsonString(), flowTaskParamter.flowTaskEntity.Id, flowTaskParamter.flowTaskEntity.FlowId, true);
|
||||
}
|
||||
}
|
||||
if (flowTaskParamter.flowTaskEntity.RejectDataId.IsNullOrEmpty())
|
||||
@@ -416,7 +445,7 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
if (flowTaskParamter.approversProperties.counterSign == 0 || flowTaskOtherUtil.IsAchievebilProportion(flowTaskParamter, 1))
|
||||
{
|
||||
var fEntity = _flowTaskRepository.GetFlowFromEntity(flowTaskParamter.flowTaskNodeEntity.FormId);
|
||||
await _runService.SaveFlowFormData(fEntity, flowTaskParamter.formData.ToJsonString(), flowTaskParamter.flowTaskEntity.Id, true);
|
||||
await _runService.SaveFlowFormData(fEntity, flowTaskParamter.formData.ToJsonString(), flowTaskParamter.flowTaskEntity.Id, flowTaskParamter.flowTaskEntity.FlowId, true);
|
||||
var rejectDataEntity = await _flowTaskRepository.GetRejectDataInfo(flowTaskParamter.flowTaskEntity.RejectDataId);
|
||||
await _flowTaskRepository.UpdateRejectData(rejectDataEntity);
|
||||
_db.CommitTran();
|
||||
@@ -508,6 +537,12 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
bodyDic = flowTaskMsgUtil.GetMesBodyText(flowTaskParamter, new List<string>() { flowTaskParamter.flowTaskEntity.CreatorUserId }, null, 1);
|
||||
await flowTaskMsgUtil.Alerts(flowTaskParamter.startProperties.endMsgConfig, new List<string>() { flowTaskParamter.flowTaskEntity.CreatorUserId }, flowTaskParamter, "MBXTLC010", bodyDic);
|
||||
}
|
||||
|
||||
//委托审批消息
|
||||
if (flowTaskParamter.flowTaskOperatorEntity.HandleId.IsNotEmptyOrNull() && !_userManager.UserId.Equals(flowTaskParamter.flowTaskOperatorEntity.HandleId))
|
||||
{
|
||||
await flowTaskMsgUtil.SendDelegateMsg("审批", flowTaskParamter.flowTaskOperatorEntity.HandleId, flowTaskParamter.flowTaskEntity.FlowName);
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
@@ -605,10 +640,7 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
foreach (var item in messageDic.Keys)
|
||||
{
|
||||
var userList = messageDic[item].Select(x => x.HandleId).ToList();
|
||||
//委托人
|
||||
var delegateUserIds = await _flowTaskRepository.GetDelegateUserIds(userList, flowTaskParamter.flowTaskEntity.TemplateId);
|
||||
//userList = userList.Union(delegateUserIds).ToList();
|
||||
//bodyDic = flowTaskMsgUtil.GetMesBodyText(flowTaskParamter, userList, messageDic[item], 2);
|
||||
bodyDic = flowTaskMsgUtil.GetMesBodyText(flowTaskParamter, userList, messageDic[item], 2);
|
||||
await flowTaskMsgUtil.Alerts(flowTaskParamter.startProperties.waitMsgConfig, bodyDic.Keys.ToList(), flowTaskParamter, "MBXTLC001", bodyDic);
|
||||
await flowTaskMsgUtil.Alerts(flowTaskParamter.approversProperties.rejectMsgConfig, bodyDic.Keys.ToList(), flowTaskParamter, "MBXTLC003", bodyDic);
|
||||
// 超时提醒
|
||||
@@ -617,6 +649,12 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
#endregion
|
||||
|
||||
}
|
||||
|
||||
//委托审批消息
|
||||
if (!_userManager.UserId.Equals(flowTaskParamter.flowTaskOperatorEntity.HandleId))
|
||||
{
|
||||
await flowTaskMsgUtil.SendDelegateMsg("审批", flowTaskParamter.flowTaskOperatorEntity.HandleId, flowTaskParamter.flowTaskEntity.FlowName);
|
||||
}
|
||||
//退回到发起.
|
||||
if (flowTaskParamter.flowTaskEntity.Status == FlowTaskStatusEnum.Reject.ParseToInt())
|
||||
{
|
||||
@@ -660,7 +698,7 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
if (flowTaskParamter.flowTaskEntity.RejectDataId.IsNotEmptyOrNull()) throw Oops.Oh(ErrorCode.WF0046);
|
||||
//撤回经办记录
|
||||
if (flowTaskOperatorRecordEntity.Status == -1)
|
||||
throw Oops.Oh(ErrorCode.WF0011);
|
||||
throw Oops.Oh(ErrorCode.WF0051);
|
||||
//所有经办
|
||||
var flowTaskOperatorEntityList = await _flowTaskRepository.GetTaskOperatorList(x => x.TaskId == flowTaskOperatorRecordEntity.TaskId && x.State == "0");
|
||||
#region 撤回判断
|
||||
@@ -673,7 +711,7 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
//撤回节点下一节点已操作
|
||||
var recallNextOperatorList = flowTaskOperatorEntityList.FindAll(x => flowTaskParamter.flowTaskNodeEntity.NodeNext.Contains(x.NodeCode));
|
||||
if (recallNextOperatorList.FindAll(x => x.Completion == 1 && x.HandleStatus == 1).Count > 0 || flowTaskParamter.flowTaskNodeEntityList.Any(x => flowTaskParamter.flowTaskNodeEntity.NodeNext.Contains(x.NodeCode) && x.Completion == 1))
|
||||
throw Oops.Oh(ErrorCode.WF0011);
|
||||
throw Oops.Oh(ErrorCode.WF0050);
|
||||
#endregion
|
||||
|
||||
#region 经办修改
|
||||
@@ -931,6 +969,7 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
if (flowTaskParamter.flowTaskOperatorEntity == null)
|
||||
throw Oops.Oh(ErrorCode.COM1005);
|
||||
flowTaskParamter.flowTaskOperatorEntity.HandleId = flowTaskParamter.freeApproverUserId;
|
||||
flowTaskParamter.flowTaskOperatorEntity.CreatorTime = DateTime.Now;
|
||||
var isOk = await _flowTaskRepository.UpdateTaskOperator(flowTaskParamter.flowTaskOperatorEntity);
|
||||
if (!isOk)
|
||||
throw Oops.Oh(ErrorCode.WF0007);
|
||||
@@ -941,9 +980,6 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
_db.CommitTran();
|
||||
|
||||
var userList = new List<string>() { flowTaskParamter.freeApproverUserId };
|
||||
//委托人
|
||||
//var delegateUserIds = await _flowTaskRepository.GetDelegateUserIds(userList, flowTaskParamter.flowTaskEntity.TemplateId);
|
||||
//userList = userList.Union(delegateUserIds).ToList();
|
||||
var bodyDic = flowTaskMsgUtil.GetMesBodyText(flowTaskParamter, userList, new List<FlowTaskOperatorEntity>() { flowTaskParamter.flowTaskOperatorEntity }, 2);
|
||||
await flowTaskMsgUtil.Alerts(flowTaskParamter.startProperties.waitMsgConfig, bodyDic.Keys.ToList(), flowTaskParamter, "MBXTLC001", bodyDic);
|
||||
// 超时提醒
|
||||
@@ -981,10 +1017,7 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
foreach (var item in messageDic.Keys)
|
||||
{
|
||||
var userList = messageDic[item].Select(x => x.HandleId).ToList();
|
||||
//委托人
|
||||
//var delegateUserIds = await _flowTaskRepository.GetDelegateUserIds(userList, flowTaskParamter.flowTaskEntity.TemplateId);
|
||||
//userList = userList.Union(delegateUserIds).ToList();
|
||||
bodyDic = flowTaskMsgUtil.GetMesBodyText(flowTaskParamter, userList, new List<FlowTaskOperatorEntity>() { flowTaskParamter.flowTaskOperatorEntity }, 2);
|
||||
bodyDic = flowTaskMsgUtil.GetMesBodyText(flowTaskParamter, userList, messageDic[item], 2);
|
||||
await flowTaskMsgUtil.Alerts(flowTaskParamter.startProperties.waitMsgConfig, bodyDic.Keys.ToList(), flowTaskParamter, "MBXTLC001", bodyDic);
|
||||
}
|
||||
}
|
||||
@@ -1027,7 +1060,7 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
var flowTaskOperator = await _flowTaskRepository.GetTaskOperatorInfo(id);
|
||||
if (flowTaskOperator.ParentId.IsNotEmptyOrNull() && type == 0) return output;// 加签不弹窗
|
||||
// 选择分支:初始审批人前加签不算审批 后加签算审批
|
||||
var flowTaskOperatorList = await _flowTaskRepository.GetTaskOperatorList(x => x.TaskId == flowTaskOperator.TaskId && x.TaskNodeId == flowTaskOperator.TaskNodeId && x.State == "0" && (SqlFunc.IsNullOrEmpty(x.ParentId)|| !SqlFunc.IsNullOrEmpty(x.RollbackId)));
|
||||
var flowTaskOperatorList = await _flowTaskRepository.GetTaskOperatorList(x => x.TaskId == flowTaskOperator.TaskId && x.TaskNodeId == flowTaskOperator.TaskNodeId && x.State == "0" && (SqlFunc.IsNullOrEmpty(x.ParentId) || !SqlFunc.IsNullOrEmpty(x.RollbackId)));
|
||||
var flowTaskNodeEntity = await _flowTaskRepository.GetTaskNodeInfo(flowTaskOperator.TaskNodeId);
|
||||
flowTaskNodeEntityList = await _flowTaskRepository.GetTaskNodeList(x => x.State == "0" && x.TaskId == flowTaskOperator.TaskId);
|
||||
#region 审批驳回撤回还原选择分支父节点下一节点数据
|
||||
@@ -1054,10 +1087,10 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
return flowTaskUserUtil.GetCandidateItems(nextNodeEntity, flowHandleModel);
|
||||
}
|
||||
await flowTaskUserUtil.GetCandidates(output, nextNodeEntityList, flowTaskNodeEntityList);
|
||||
//return output;
|
||||
// 弹窗类型 1:条件分支弹窗(包含候选人) 2:候选人弹窗 3:无弹窗
|
||||
var branchType = output.Count > 0 ? (output.Any(x => x.isBranchFlow) ? 1 : 2) : 3;
|
||||
if (!isCom && branchType == 1)
|
||||
// 无弹窗:1.条件分支且未达到会签比例,2.任务冻结驳回
|
||||
if ((!isCom && branchType == 1) || await _flowTaskRepository.AnyFlowTask(x => x.Id == flowHandleModel.id && !SqlFunc.IsNullOrEmpty(x.RejectDataId)))
|
||||
{
|
||||
branchType = 3;
|
||||
}
|
||||
@@ -1070,10 +1103,9 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
/// </summary>
|
||||
/// <param name="flowId">流程id.</param>
|
||||
/// <returns></returns>
|
||||
public async Task<dynamic> NodeSelector(string templateId)
|
||||
public async Task<dynamic> NodeSelector(string flowId)
|
||||
{
|
||||
var flowJsonEntity = _flowTaskRepository.GetFlowTemplateJsonInfo(x => x.TemplateId == templateId && x.EnabledMark == 1 && x.DeleteMark == null);
|
||||
var flowJsonModel = _flowTaskRepository.GetFlowTemplateInfo(flowJsonEntity.Id);
|
||||
var flowJsonModel = _flowTaskRepository.GetFlowTemplateInfo(flowId);
|
||||
flowTemplateUtil.Load(flowJsonModel, null, string.Empty);
|
||||
var taskNodeList = flowTemplateUtil.flowTaskNodeEntityList;
|
||||
return taskNodeList.FindAll(x => FlowTaskNodeTypeEnum.approver.ParseToString().Equals(x.NodeType)).Select(x => new { id = x.NodeCode, fullName = x.NodePropertyJson.ToObject<ApproversProperties>().title }).ToList();
|
||||
@@ -1201,6 +1233,7 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
public async Task<FlowTaskParamter> Validation(string taskOperatorId, FlowHandleModel flowHandleModel)
|
||||
{
|
||||
var flowTaskParamter = await _flowTaskRepository.GetTaskParamterByOperatorId(taskOperatorId, flowHandleModel);
|
||||
if (flowTaskParamter.flowTaskEntity.Suspend == 1) throw Oops.Oh(ErrorCode.WF0046);
|
||||
if (flowTaskParamter.flowTaskOperatorEntity.IsNullOrEmpty() || flowTaskParamter.flowTaskOperatorEntity.Completion != 0 || flowTaskParamter.flowTaskOperatorEntity.State == "-1")
|
||||
throw Oops.Oh(ErrorCode.WF0030);
|
||||
if (flowTaskParamter.flowTaskEntity.IsNullOrEmpty() || flowTaskParamter.flowTaskEntity.Status != 1 || flowTaskParamter.flowTaskEntity.DeleteMark.IsNotEmptyOrNull())
|
||||
@@ -1217,7 +1250,7 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
/// <summary>
|
||||
/// 变更/复活.
|
||||
/// </summary>
|
||||
/// <param name="flowHandleModel">变更/复活参数.</param>
|
||||
/// <param name="flowTaskParamter">任务参数.</param>
|
||||
/// <returns></returns>
|
||||
public async Task<dynamic> Change(FlowTaskParamter flowTaskParamter)
|
||||
{
|
||||
@@ -1287,9 +1320,6 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
return flowTaskParamter.errorNodeList;
|
||||
}
|
||||
|
||||
// 清空变更/复活流程候选人数据
|
||||
//_flowTaskRepository.DeleteFlowCandidates(x => x.TaskId == changeNode.TaskId);
|
||||
//await _flowTaskRepository.DeleteTaskOperatorRecord(x => x.TaskId == changeNode.TaskId);
|
||||
await _flowTaskRepository.DeleteTaskOperatorRecord(x => x.TaskId == changeNode.TaskId && changeNodeNextIds.Contains(x.TaskNodeId));
|
||||
foreach (var item in await _flowTaskRepository.GetTaskNodeList(x => x.TaskId == flowTaskParamter.flowTaskEntity.Id))
|
||||
{
|
||||
@@ -1340,9 +1370,6 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
foreach (var item in messageDic.Keys)
|
||||
{
|
||||
var userList = messageDic[item].Select(x => x.HandleId).ToList();
|
||||
//委托人
|
||||
//var delegateUserIds = await _flowTaskRepository.GetDelegateUserIds(userList, flowTaskParamter.flowTaskEntity.TemplateId);
|
||||
//userList = userList.Union(delegateUserIds).ToList();
|
||||
var bodyDic = flowTaskMsgUtil.GetMesBodyText(flowTaskParamter, userList, new List<FlowTaskOperatorEntity>() { flowTaskParamter.flowTaskOperatorEntity }, 2);
|
||||
await flowTaskMsgUtil.Alerts(flowTaskParamter.startProperties.waitMsgConfig, bodyDic.Keys.ToList(), flowTaskParamter, "MBXTLC001", bodyDic);
|
||||
await TimeoutOrRemind(flowTaskParamter, item, messageDic[item]);// 超时提醒
|
||||
@@ -1384,6 +1411,63 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
return new { list = upNodeCodeList, isLastAppro = true };
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 挂起.
|
||||
/// </summary>
|
||||
/// <param name="flowTaskParamter">任务参数.</param>
|
||||
/// <returns></returns>
|
||||
public async Task Suspend(FlowTaskParamter flowTaskParamter)
|
||||
{
|
||||
flowTaskParamter.flowTaskEntity.Suspend = 1;
|
||||
await _flowTaskRepository.UpdateTask(flowTaskParamter.flowTaskEntity);
|
||||
|
||||
#region 流转记录
|
||||
await flowTaskOtherUtil.CreateOperatorRecode(flowTaskParamter, 11);
|
||||
#endregion
|
||||
|
||||
if (!flowTaskParamter.suspend)
|
||||
{
|
||||
var childTask = await _flowTaskRepository.GetTaskList(x => flowTaskParamter.flowTaskEntity.Id == x.ParentId && x.DeleteMark == null);
|
||||
foreach (var item in childTask)
|
||||
{
|
||||
var childFlowTaskParamter = await _flowTaskRepository.GetTaskParamterByTaskId(item.Id, null);
|
||||
childFlowTaskParamter.handleOpinion = flowTaskParamter.handleOpinion;
|
||||
childFlowTaskParamter.signImg = flowTaskParamter.signImg;
|
||||
childFlowTaskParamter.suspend = flowTaskParamter.suspend;
|
||||
childFlowTaskParamter.fileList = flowTaskParamter.fileList;
|
||||
await this.Suspend(childFlowTaskParamter);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 恢复.
|
||||
/// </summary>
|
||||
/// <param name="flowTaskParamter">任务参数.</param>
|
||||
/// <returns></returns>
|
||||
public async Task Restore(FlowTaskParamter flowTaskParamter)
|
||||
{
|
||||
flowTaskParamter.flowTaskEntity.Suspend = null;
|
||||
await _flowTaskRepository.UpdateTask(flowTaskParamter.flowTaskEntity);
|
||||
|
||||
#region 流转记录
|
||||
await flowTaskOtherUtil.CreateOperatorRecode(flowTaskParamter, 12);
|
||||
#endregion
|
||||
|
||||
var childTask = await _flowTaskRepository.GetTaskList(x => flowTaskParamter.flowTaskEntity.Id == x.ParentId && x.DeleteMark == null);
|
||||
foreach (var item in childTask)
|
||||
{
|
||||
if (item.Suspend == 1)
|
||||
{
|
||||
var childFlowTaskParamter = await _flowTaskRepository.GetTaskParamterByTaskId(item.Id, null);
|
||||
childFlowTaskParamter.handleOpinion = flowTaskParamter.handleOpinion;
|
||||
childFlowTaskParamter.signImg = flowTaskParamter.signImg;
|
||||
childFlowTaskParamter.fileList = flowTaskParamter.fileList;
|
||||
await this.Restore(childFlowTaskParamter);
|
||||
}
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region PrivateMethod
|
||||
@@ -1599,6 +1683,9 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
isAsync = childTaskPro.isAsync
|
||||
};
|
||||
var childTaskEntity = await this.Save(flowTaskSubmitModel);
|
||||
var flowTaskParamter = new FlowTaskParamter { flowTaskEntity = childTaskEntity };
|
||||
var bodyDic = flowTaskMsgUtil.GetMesBodyText(flowTaskParamter, new List<string> { item }, null, 1);
|
||||
await flowTaskMsgUtil.Alerts(childTaskPro.launchMsgConfig, new List<string> { item }, flowTaskParamter, "MBXTLC011", bodyDic);
|
||||
childTaskId.Add(childTaskEntity.Id);
|
||||
}
|
||||
return childTaskId;
|
||||
@@ -1755,7 +1842,7 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
flowTaskSubmitModel.formData = formDic;
|
||||
}
|
||||
var fEntity = _flowTaskRepository.GetFlowFromEntity(formId);
|
||||
await _runService.SaveFlowFormData(fEntity, flowTaskSubmitModel.formData.ToJsonString(), id, isUpdate);
|
||||
await _runService.SaveFlowFormData(fEntity, flowTaskSubmitModel.formData.ToJsonString(), id, flowTaskSubmitModel.flowId, isUpdate);
|
||||
// 功能流程提交
|
||||
if (flowTaskSubmitModel.isDev && flowTaskSubmitModel.id.IsNotEmptyOrNull() && flowTaskSubmitModel.status == 0)
|
||||
{
|
||||
@@ -1868,35 +1955,39 @@ public class FlowTaskManager : IFlowTaskManager, ITransient
|
||||
/// <returns></returns>
|
||||
private async Task NotifyEvent(ApproversProperties approPro, FlowTaskParamter flowTaskParamter, string nodeId, int count, bool isTimeOut)
|
||||
{
|
||||
var msgEncode = isTimeOut ? "MBXTLC009" : "MBXTLC008";
|
||||
var msgReMark = isTimeOut ? "超时" : "提醒";
|
||||
var msgConfig = isTimeOut ? approPro.overTimeMsgConfig : approPro.noticeMsgConfig;
|
||||
var funcConfig = isTimeOut ? approPro.overTimeFuncConfig : approPro.noticeFuncConfig;
|
||||
var timeOutConfig = isTimeOut ? approPro.overTimeConfig : approPro.noticeConfig;
|
||||
// 通知
|
||||
if (timeOutConfig.overNotice)
|
||||
var flowTask = await _flowTaskRepository.GetTaskInfo(flowTaskParamter.flowTaskEntity.Id);
|
||||
if (flowTask.IsNotEmptyOrNull() && flowTask.Suspend != 1)
|
||||
{
|
||||
var operatorList = await _flowTaskRepository.GetTaskOperatorList(x => x.TaskId == flowTaskParamter.flowTaskEntity.Id && x.TaskNodeId == nodeId && x.Completion == 0 && x.State != "-1");
|
||||
var userList = operatorList.Select(x => x.HandleId).ToList();
|
||||
var remark = string.Format("现在时间:{3},节点{0}:第{1}次{2}通知", nodeId, count, msgReMark, DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
|
||||
Console.WriteLine(remark);
|
||||
var bodyDic = flowTaskMsgUtil.GetMesBodyText(flowTaskParamter, userList, operatorList, 2, remark);
|
||||
if (msgConfig.on > 0)
|
||||
var msgEncode = isTimeOut ? "MBXTLC009" : "MBXTLC008";
|
||||
var msgReMark = isTimeOut ? "超时" : "提醒";
|
||||
var msgConfig = isTimeOut ? approPro.overTimeMsgConfig : approPro.noticeMsgConfig;
|
||||
var funcConfig = isTimeOut ? approPro.overTimeFuncConfig : approPro.noticeFuncConfig;
|
||||
var timeOutConfig = isTimeOut ? approPro.overTimeConfig : approPro.noticeConfig;
|
||||
// 通知
|
||||
if (timeOutConfig.overNotice)
|
||||
{
|
||||
await flowTaskMsgUtil.Alerts(msgConfig, userList, flowTaskParamter, msgEncode, bodyDic);
|
||||
var operatorList = await _flowTaskRepository.GetTaskOperatorList(x => x.TaskId == flowTaskParamter.flowTaskEntity.Id && x.TaskNodeId == nodeId && x.Completion == 0 && x.State != "-1");
|
||||
var userList = operatorList.Select(x => x.HandleId).ToList();
|
||||
var remark = string.Format("现在时间:{3},节点{0}:第{1}次{2}通知", nodeId, count, msgReMark, DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
|
||||
Console.WriteLine(remark);
|
||||
var bodyDic = flowTaskMsgUtil.GetMesBodyText(flowTaskParamter, userList, operatorList, 2, remark);
|
||||
if (msgConfig.on > 0)
|
||||
{
|
||||
await flowTaskMsgUtil.Alerts(msgConfig, userList, flowTaskParamter, msgEncode, bodyDic);
|
||||
}
|
||||
}
|
||||
// 事件
|
||||
if (funcConfig.on && timeOutConfig.overEvent && timeOutConfig.overEventTime == count)
|
||||
{
|
||||
Console.WriteLine(string.Format("开始执行{0}事件,现在时间:{1}", msgReMark, DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")));
|
||||
await flowTaskMsgUtil.RequestEvents(funcConfig, flowTaskParamter);
|
||||
}
|
||||
//自动审批
|
||||
if (isTimeOut && timeOutConfig.overAutoApproveTime == count && timeOutConfig.overAutoApprove)
|
||||
{
|
||||
Console.WriteLine("开始自动审批,现在时间:" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
|
||||
await AutoAudit(flowTaskParamter, true);
|
||||
}
|
||||
}
|
||||
// 事件
|
||||
if (funcConfig.on && timeOutConfig.overEvent && timeOutConfig.overEventTime == count)
|
||||
{
|
||||
Console.WriteLine(string.Format("开始执行{0}事件,现在时间:{1}", msgReMark, DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")));
|
||||
await flowTaskMsgUtil.RequestEvents(funcConfig, flowTaskParamter);
|
||||
}
|
||||
//自动审批
|
||||
if (isTimeOut && timeOutConfig.overAutoApproveTime == count && timeOutConfig.overAutoApprove)
|
||||
{
|
||||
Console.WriteLine("开始自动审批,现在时间:" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
|
||||
await AutoAudit(flowTaskParamter, true);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -61,7 +61,9 @@ public class FlowTaskMsgUtil
|
||||
//默认消息
|
||||
if (msgConfig.on == 3)
|
||||
{
|
||||
await _sendMessageService.SendMessageDefult(enCode, users, flowTaskParamter.flowTaskEntity.FullName, bodyDic);
|
||||
var crUser =await _usersService.GetUserName(flowTaskParamter.flowTaskEntity.CreatorUserId, false);
|
||||
var flowName = _flowTaskRepository.GetFlowTemplateJsonInfo(x => x.Id == flowTaskParamter.flowTaskEntity.FlowId).FullName;
|
||||
await _sendMessageService.SendMessageDefult(enCode, users, crUser, flowName, bodyDic);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -162,8 +164,7 @@ public class FlowTaskMsgUtil
|
||||
{
|
||||
foreach (var item in flowTaskOperatorEntities)
|
||||
{
|
||||
var value = new
|
||||
{
|
||||
var value = new {
|
||||
enCode = flowTaskParamter.flowTaskEntity.FlowCode,
|
||||
flowId = flowTaskParamter.flowTaskEntity.FlowId,
|
||||
status = type == 1 ? 0 : 1,
|
||||
@@ -183,8 +184,7 @@ public class FlowTaskMsgUtil
|
||||
}
|
||||
else
|
||||
{
|
||||
var value = new
|
||||
{
|
||||
var value = new {
|
||||
enCode = flowTaskParamter.flowTaskEntity.FlowCode,
|
||||
flowId = flowTaskParamter.flowTaskEntity.FlowId,
|
||||
status = type == 1 ? 0 : 1,
|
||||
@@ -214,5 +214,16 @@ public class FlowTaskMsgUtil
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 委托消息通知.
|
||||
/// </summary>
|
||||
/// <param name="delegateType">委托类型:发起,审批.</param>
|
||||
/// <param name="ToUserId">通知人员.</param>
|
||||
/// <param name="flowName">流程名.</param>
|
||||
/// <returns></returns>
|
||||
public async Task SendDelegateMsg(string delegateType, string ToUserId, string flowName)
|
||||
{
|
||||
await _sendMessageService.SendMessageDelegate(delegateType, ToUserId, flowName);
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
|
||||
@@ -340,7 +340,7 @@ public class FlowTaskNodeUtil
|
||||
// 保存驳回现有数据.
|
||||
if (flowTaskParamter.approversProperties.rejectType == 2)
|
||||
{
|
||||
flowTaskParamter.flowTaskEntity.RejectDataId = await _flowTaskRepository.CreateRejectData(flowTaskParamter.flowTaskEntity.Id, flowTaskParamter.flowTaskEntity.ThisStepId);
|
||||
flowTaskParamter.flowTaskEntity.RejectDataId = await _flowTaskRepository.CreateRejectData(flowTaskParamter.flowTaskEntity.Id, flowTaskParamter.flowTaskNodeEntity.Id);
|
||||
}
|
||||
// 驳回节点下所有节点.
|
||||
var rejectNodeNextAllList = new List<FlowTaskNodeEntity>();
|
||||
|
||||
@@ -88,8 +88,6 @@ public class FlowTaskOtherUtil
|
||||
var rollBackOprtator = await _flowTaskRepository.GetTaskOperatorInfo(flowTaskParamter.flowTaskOperatorEntity.RollbackId);
|
||||
if (rollBackOprtator.IsNotEmptyOrNull())
|
||||
{
|
||||
//rollBackOprtator.State = "0";
|
||||
//await _flowTaskRepository.UpdateTaskOperator(rollBackOprtator);
|
||||
rollBackOprtator.Id = SnowflakeIdHelper.NextId();
|
||||
rollBackOprtator.State = "0";
|
||||
rollBackOprtator.Completion = 0;
|
||||
@@ -98,15 +96,6 @@ public class FlowTaskOtherUtil
|
||||
rollBackOprtator.HandleTime = null;
|
||||
await _flowTaskRepository.CreateTaskOperator(rollBackOprtator);
|
||||
}
|
||||
//else
|
||||
//{
|
||||
// rollBackOprtator.Id = SnowflakeIdHelper.NextId();
|
||||
// rollBackOprtator.State = "0";
|
||||
// rollBackOprtator.Completion = 0;
|
||||
// rollBackOprtator.HandleStatus = 0;
|
||||
// rollBackOprtator.HandleTime = null;
|
||||
// await _flowTaskRepository.CreateTaskOperator(rollBackOprtator);
|
||||
//}
|
||||
}
|
||||
flowTaskParamter.flowTaskOperatorEntity.HandleStatus = handleStatus;
|
||||
flowTaskParamter.flowTaskOperatorEntity.Completion = 1;
|
||||
@@ -263,7 +252,21 @@ public class FlowTaskOtherUtil
|
||||
{
|
||||
FlowTaskOperatorRecordEntity flowTaskOperatorRecordEntity = new FlowTaskOperatorRecordEntity();
|
||||
flowTaskOperatorRecordEntity.HandleTime = DateTime.Now;
|
||||
flowTaskOperatorRecordEntity.HandleId = handleStatus == 2 ? flowTaskParamter.flowTaskEntity.CreatorUserId : _userManager.UserId;
|
||||
if (handleStatus == 2)
|
||||
{
|
||||
flowTaskOperatorRecordEntity.HandleId = flowTaskParamter.flowTaskEntity.CreatorUserId;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (flowTaskParamter.flowTaskOperatorEntity.IsNotEmptyOrNull() && flowTaskParamter.flowTaskOperatorEntity.HandleId.IsNotEmptyOrNull())
|
||||
{
|
||||
flowTaskOperatorRecordEntity.HandleId = flowTaskParamter.flowTaskOperatorEntity.HandleId;
|
||||
}
|
||||
else
|
||||
{
|
||||
flowTaskOperatorRecordEntity.HandleId = _userManager.UserId;
|
||||
}
|
||||
}
|
||||
flowTaskOperatorRecordEntity.HandleStatus = handleStatus;
|
||||
flowTaskOperatorRecordEntity.HandleOpinion = flowTaskParamter.handleOpinion;
|
||||
flowTaskOperatorRecordEntity.SignImg = flowTaskParamter.signImg;
|
||||
@@ -361,15 +364,11 @@ public class FlowTaskOtherUtil
|
||||
{
|
||||
try
|
||||
{
|
||||
//modified by PhilPan
|
||||
if (jobj[timeOutConfig.formField].Type == Newtonsoft.Json.Linq.JTokenType.Integer)
|
||||
var value=jobj[timeOutConfig.formField].ToString();
|
||||
if (!DateTime.TryParse(value, out dt))
|
||||
{
|
||||
dt = jobj[timeOutConfig.formField].ParseToLong().TimeStampToDateTime();
|
||||
}
|
||||
else
|
||||
{
|
||||
dt = jobj[timeOutConfig.formField].ToString().ParseToDateTime();
|
||||
}
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
|
||||
@@ -138,7 +138,7 @@ public class FlowTaskUserUtil
|
||||
try
|
||||
{
|
||||
var Token = _userManager.ToKen.IsNotEmptyOrNull() ? _userManager.ToKen : _cacheManager.Get<List<UserOnlineModel>>(CommonConst.CACHEKEYONLINEUSER + _userManager.TenantId).Find(x => x.userId == _userManager.UserId).token;
|
||||
var data = await approversProperties.getUserUrl.SetHeaders(new { Authorization = Token }).GetAsStringAsync();
|
||||
var data = await approversProperties.getUserUrl.SetHeaders(new { Authorization = Token }).SetBody(flowTaskParamter.formData).PostAsStringAsync();
|
||||
var result = data.ToObject<RESTfulResult<object>>();
|
||||
if (result.IsNotEmptyOrNull())
|
||||
{
|
||||
@@ -250,15 +250,13 @@ public class FlowTaskUserUtil
|
||||
{
|
||||
startProperties.errorRule = "3";
|
||||
}
|
||||
// 创建人
|
||||
var userId = type == 0 ? _userManager.UserId : flowTaskParamter.flowTaskEntity.CreatorUserId;
|
||||
var handleIds = await GetFlowUserId(flowTaskParamter, approverPropertiers, nextFlowTaskNodeEntity);
|
||||
if (handleIds.Count == 0 && isShuntNodeCompletion)
|
||||
{
|
||||
switch (startProperties.errorRule)
|
||||
{
|
||||
case "1":
|
||||
handleIds.Add("admin");
|
||||
handleIds.Add(_userManager.GetAdminUserId());
|
||||
break;
|
||||
case "2":
|
||||
if ((await _usersService.GetUserListByExp(x => startProperties.errorRuleUser.Contains(x.Id) && x.DeleteMark == null && x.EnabledMark == 1)).Any())
|
||||
@@ -267,7 +265,7 @@ public class FlowTaskUserUtil
|
||||
}
|
||||
else
|
||||
{
|
||||
handleIds.Add("admin");
|
||||
handleIds.Add(_userManager.GetAdminUserId());
|
||||
}
|
||||
break;
|
||||
case "3":
|
||||
@@ -291,7 +289,7 @@ public class FlowTaskUserUtil
|
||||
&& x.NodePropertyJson.ToObject<ApproversProperties>().assigneeType == 7);
|
||||
if (falag)
|
||||
{
|
||||
handleIds.Add("admin");
|
||||
handleIds.Add(_userManager.GetAdminUserId());
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -370,6 +368,14 @@ public class FlowTaskUserUtil
|
||||
var userList = await GetUserDefined(flowTaskParamter.approversProperties, 1);
|
||||
userList = await GetExtraRuleUsers(userList, flowTaskParamter.approversProperties.extraCopyRule, flowTaskParamter.flowTaskOperatorEntity.TaskId);
|
||||
circulateUserList = circulateUserList.Union(userList).ToList();
|
||||
if (flowTaskParamter.approversProperties.isInitiatorCopy)
|
||||
{
|
||||
circulateUserList.Add(flowTaskParamter.flowTaskEntity.CreatorUserId);
|
||||
//if (flowTaskParamter.flowTaskEntity.DelegateUser.IsNotEmptyOrNull())
|
||||
//{
|
||||
// circulateUserList.Add(flowTaskParamter.flowTaskEntity.DelegateUser);
|
||||
//}
|
||||
}
|
||||
}
|
||||
foreach (var item in circulateUserList.Distinct())
|
||||
{
|
||||
@@ -555,14 +561,14 @@ public class FlowTaskUserUtil
|
||||
}
|
||||
else
|
||||
{
|
||||
childTaskCrUserList.Add("admin");
|
||||
childTaskCrUserList.Add(_userManager.GetAdminUserId());
|
||||
}
|
||||
break;
|
||||
case "6":
|
||||
childTaskCrUserList.Add(flowTaskParamter.flowTaskEntity.CreatorUserId);
|
||||
break;
|
||||
default:
|
||||
childTaskCrUserList.Add("admin");
|
||||
childTaskCrUserList.Add(_userManager.GetAdminUserId());
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System.Text;
|
||||
using JNPF.Common.Const;
|
||||
using JNPF.Common.Core.Manager;
|
||||
using JNPF.Common.Extension;
|
||||
using JNPF.Common.Models.WorkFlow;
|
||||
@@ -97,8 +98,11 @@ public class FlowTemplateUtil
|
||||
}
|
||||
else
|
||||
{
|
||||
string formId = item.propertyJson.formId;
|
||||
flowTaskNodeEntity.FormId = formId.IsNotEmptyOrNull() ? formId : defaultFormId;
|
||||
if (!"timer".Equals(item.type))
|
||||
{
|
||||
string formId = item.propertyJson.formId;
|
||||
flowTaskNodeEntity.FormId = formId.IsNotEmptyOrNull() ? formId : defaultFormId;
|
||||
}
|
||||
}
|
||||
flowTaskNodeEntityList.Add(flowTaskNodeEntity);
|
||||
}
|
||||
@@ -416,10 +420,10 @@ public class FlowTemplateUtil
|
||||
if (flowNodeWhereModel.fieldValueType.ParseToInt() == 2)
|
||||
{
|
||||
//数组类型控件
|
||||
var jnpfKeyList = new List<string>() { "cascader", "comSelect", "address", "currOrganize" };
|
||||
var jnpfKeyList = new List<string>() { JnpfKeyConst.CASCADER, JnpfKeyConst.COMSELECT, JnpfKeyConst.ADDRESS, JnpfKeyConst.CURRORGANIZE };
|
||||
if (jnpfKeyList.Contains(flowNodeWhereModel.jnpfKey) && flowNodeWhereModel.fieldValue.Count > 0)
|
||||
{
|
||||
if (flowNodeWhereModel.jnpfKey.Equals("currOrganize"))
|
||||
if (flowNodeWhereModel.jnpfKey.Equals(JnpfKeyConst.CURRORGANIZE))
|
||||
{
|
||||
value = flowNodeWhereModel.fieldValue[flowNodeWhereModel.fieldValue.Count - 1];
|
||||
}
|
||||
@@ -438,7 +442,7 @@ public class FlowTemplateUtil
|
||||
value = _userManager.UserId;
|
||||
}
|
||||
|
||||
if ("time".Equals(flowNodeWhereModel.jnpfKey))
|
||||
if (JnpfKeyConst.TIME.Equals(flowNodeWhereModel.jnpfKey))
|
||||
{
|
||||
formValue = formValue.Replace(":", string.Empty);
|
||||
value = value.Replace(":", string.Empty);
|
||||
@@ -446,7 +450,7 @@ public class FlowTemplateUtil
|
||||
}
|
||||
else
|
||||
{
|
||||
value = GetConditionValue(flowNodeWhereModel.fieldValueType.ParseToInt(), formData, flowNodeWhereModel.fieldValue, taskId, flowNodeWhereModel.jnpfKey);
|
||||
value = GetConditionValue(flowNodeWhereModel.fieldValueType.ParseToInt(), formData, flowNodeWhereModel.fieldValue, taskId, flowNodeWhereModel.fieldValueJnpfKey);
|
||||
}
|
||||
|
||||
if (symbol.Equals("=") || symbol.Equals("<>"))
|
||||
@@ -527,8 +531,8 @@ public class FlowTemplateUtil
|
||||
if (formData[field].IsNotEmptyOrNull())
|
||||
{
|
||||
conditionValue = formData[field].ToString();
|
||||
SysWidgetFormValue(taskId, jnpfKey, ref conditionValue);
|
||||
}
|
||||
SysWidgetFormValue(taskId, jnpfKey, ref conditionValue);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -581,34 +585,34 @@ public class FlowTemplateUtil
|
||||
var creatorUser = _usersService.GetInfoByUserId(taskEntity.CreatorUserId);
|
||||
switch (jnpfKey)
|
||||
{
|
||||
case "createUser":
|
||||
case JnpfKeyConst.CREATEUSER:
|
||||
formValue = taskEntity.CreatorUserId;
|
||||
break;
|
||||
case "modifyUser":
|
||||
case JnpfKeyConst.MODIFYUSER:
|
||||
if (taskEntity.LastModifyUserId.IsNotEmptyOrNull())
|
||||
{
|
||||
formValue = _userManager.UserId;
|
||||
}
|
||||
|
||||
break;
|
||||
case "currOrganize":
|
||||
case JnpfKeyConst.CURRORGANIZE:
|
||||
if (creatorUser.OrganizeId.IsNotEmptyOrNull())
|
||||
{
|
||||
formValue = creatorUser.OrganizeId;
|
||||
}
|
||||
|
||||
break;
|
||||
case "createTime":
|
||||
case JnpfKeyConst.CREATETIME:
|
||||
formValue = ((DateTime)taskEntity.CreatorTime).ParseToUnixTime().ToString();
|
||||
break;
|
||||
case "modifyTime":
|
||||
case JnpfKeyConst.MODIFYTIME:
|
||||
if (taskEntity.LastModifyTime.IsNotEmptyOrNull())
|
||||
{
|
||||
formValue = DateTime.Now.ParseToUnixTime().ToString();
|
||||
}
|
||||
|
||||
break;
|
||||
case "currPosition":
|
||||
case JnpfKeyConst.CURRPOSITION:
|
||||
if (creatorUser.PositionId.IsNotEmptyOrNull())
|
||||
{
|
||||
formValue = creatorUser.PositionId;
|
||||
@@ -621,26 +625,26 @@ public class FlowTemplateUtil
|
||||
{
|
||||
switch (jnpfKey)
|
||||
{
|
||||
case "createUser":
|
||||
case JnpfKeyConst.CREATEUSER:
|
||||
formValue = _userManager.UserId;
|
||||
break;
|
||||
case "modifyUser":
|
||||
case JnpfKeyConst.MODIFYUSER:
|
||||
formValue = " ";
|
||||
break;
|
||||
case "currOrganize":
|
||||
case JnpfKeyConst.CURRORGANIZE:
|
||||
if (_userManager.User.OrganizeId.IsNotEmptyOrNull())
|
||||
{
|
||||
formValue = _userManager.User.OrganizeId;
|
||||
}
|
||||
|
||||
break;
|
||||
case "createTime":
|
||||
case JnpfKeyConst.CREATETIME:
|
||||
formValue = DateTime.Now.ParseToUnixTime().ToString();
|
||||
break;
|
||||
case "modifyTime":
|
||||
case JnpfKeyConst.MODIFYTIME:
|
||||
formValue = "0";
|
||||
break;
|
||||
case "currPosition":
|
||||
case JnpfKeyConst.CURRPOSITION:
|
||||
if (_userManager.User.PositionId.IsNotEmptyOrNull())
|
||||
{
|
||||
formValue = _userManager.User.PositionId;
|
||||
|
||||
Reference in New Issue
Block a user