using Ewide.Core;
using System;
using System.Collections.Generic;
using System.Text;
namespace RoadFlow.Model.FlowRunModel
{
///
/// 流程执行参数实体
///
public class Execute
{
public Execute()
{
}
///
/// 操作类型
///
public enum Type
{
///
/// 提交
///
Submit,
///
/// 自由发送
///
FreeSubmit,
///
/// 保存
///
Save,
///
/// 退回
///
Back,
///
/// 完成
///
Completed,
///
/// 转交
///
Redirect,
///
/// 加签
///
AddWrite,
///
/// 抄送完成
///
CopyforCompleted,
///
/// 终止
///
TaskEnd
}
///
/// 流程ID
///
public Guid FlowId { get; set; }
///
/// 步骤ID
///
public Guid StepId { get; set; }
///
/// 任务ID
///
public Guid TaskId { get; set; }
///
/// 实例ID
///
public string InstanceId { get; set; }
///
/// 分组ID
///
public Guid GroupId { get; set; }
///
/// 标题
///
public string Title { get; set; }
///
/// 操作类型
///
public Type ExecuteType { get; set; }
///
/// 发送人员
///
public SysUser Sender { get; set; }
///
/// 接收的步骤和人员和要求完成时间
/// stepId:步骤ID
/// stepName:步骤名称(如果为空根据步骤ID去流程实体中查询,主要是保存动态步骤中自定义的步骤名称)
/// beforeStepId:原步骤ID(动态步骤的原步骤ID)
/// parallelOrSerial:0并行 1串行
/// receiveUsers:接收人
/// completedTime:要求完成时间
///
public List<(Guid stepId, string stepName, Guid? beforeStepId, int? parallelOrSerial, List receiveUsers, DateTime? completedTime)> Steps { get; set; }
///
/// 处理意见
///
public string Comment { get; set; }
///
/// 是否签章
///
public int IsSign { get; set; }
///
/// 备注
///
public string Note { get; set; }
///
/// 其他类型
///
public int OtherType { get; set; }
///
/// 执行的参数json字符串
///
public string ParamsJSON { get; set; }
///
/// 是否是自动提交
///
public bool IsAutoSubmit { get; set; }
///
/// 附件
///
public string Attachment { get; set; }
public override string ToString()
{
return Newtonsoft.Json.JsonConvert.SerializeObject(this);
}
}
}