init commit
This commit is contained in:
34
20220330_Vote/Ewide.RoadFlow/Entity/FlowRunModel/Database.cs
Normal file
34
20220330_Vote/Ewide.RoadFlow/Entity/FlowRunModel/Database.cs
Normal file
@@ -0,0 +1,34 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace RoadFlow.Model.FlowRunModel
|
||||
{
|
||||
/// <summary>
|
||||
/// 流程数据连接实体
|
||||
/// </summary>
|
||||
public class Database
|
||||
{
|
||||
/// <summary>
|
||||
/// 连接ID
|
||||
/// </summary>
|
||||
public Guid ConnectionId { get; set; }
|
||||
/// <summary>
|
||||
/// 连接名称
|
||||
/// </summary>
|
||||
public string ConnectionName { get; set; }
|
||||
/// <summary>
|
||||
/// 表名
|
||||
/// </summary>
|
||||
public string Table { get; set; }
|
||||
/// <summary>
|
||||
/// 主键
|
||||
/// </summary>
|
||||
public string PrimaryKey { get; set; }
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return Newtonsoft.Json.JsonConvert.SerializeObject(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace RoadFlow.Model.FlowRunModel
|
||||
{
|
||||
/// <summary>
|
||||
/// 流程事件参数实体
|
||||
/// </summary>
|
||||
public class EventParam
|
||||
{
|
||||
/// <summary>
|
||||
/// 流程ID
|
||||
/// </summary>
|
||||
public Guid FlowId { get; set; }
|
||||
/// <summary>
|
||||
/// 步骤ID
|
||||
/// </summary>
|
||||
public Guid StepId { get; set; }
|
||||
/// <summary>
|
||||
/// 任务ID
|
||||
/// </summary>
|
||||
public Guid TaskId { get; set; }
|
||||
/// <summary>
|
||||
/// 分组ID
|
||||
/// </summary>
|
||||
public Guid GroupId { get; set; }
|
||||
/// <summary>
|
||||
/// 业务表ID值
|
||||
/// </summary>
|
||||
public string InstanceId { get; set; }
|
||||
/// <summary>
|
||||
/// 任务标题
|
||||
/// </summary>
|
||||
public string TaskTitle { get; set; }
|
||||
/// <summary>
|
||||
/// 流程运行时实体
|
||||
/// </summary>
|
||||
public FlowRun FlowRunModel { get; set; }
|
||||
/// <summary>
|
||||
/// 其它参数
|
||||
/// </summary>
|
||||
public object Other { get; set; }
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return Newtonsoft.Json.JsonConvert.SerializeObject(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
135
20220330_Vote/Ewide.RoadFlow/Entity/FlowRunModel/Execute.cs
Normal file
135
20220330_Vote/Ewide.RoadFlow/Entity/FlowRunModel/Execute.cs
Normal file
@@ -0,0 +1,135 @@
|
||||
using Ewide.Core;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace RoadFlow.Model.FlowRunModel
|
||||
{
|
||||
/// <summary>
|
||||
/// 流程执行参数实体
|
||||
/// </summary>
|
||||
public class Execute
|
||||
{
|
||||
public Execute()
|
||||
{
|
||||
|
||||
}
|
||||
/// <summary>
|
||||
/// 操作类型
|
||||
/// </summary>
|
||||
public enum Type
|
||||
{
|
||||
/// <summary>
|
||||
/// 提交
|
||||
/// </summary>
|
||||
Submit,
|
||||
/// <summary>
|
||||
/// 自由发送
|
||||
/// </summary>
|
||||
FreeSubmit,
|
||||
/// <summary>
|
||||
/// 保存
|
||||
/// </summary>
|
||||
Save,
|
||||
/// <summary>
|
||||
/// 退回
|
||||
/// </summary>
|
||||
Back,
|
||||
/// <summary>
|
||||
/// 完成
|
||||
/// </summary>
|
||||
Completed,
|
||||
/// <summary>
|
||||
/// 转交
|
||||
/// </summary>
|
||||
Redirect,
|
||||
/// <summary>
|
||||
/// 加签
|
||||
/// </summary>
|
||||
AddWrite,
|
||||
/// <summary>
|
||||
/// 抄送完成
|
||||
/// </summary>
|
||||
CopyforCompleted,
|
||||
/// <summary>
|
||||
/// 终止
|
||||
/// </summary>
|
||||
TaskEnd
|
||||
}
|
||||
/// <summary>
|
||||
/// 流程ID
|
||||
/// </summary>
|
||||
public Guid FlowId { get; set; }
|
||||
/// <summary>
|
||||
/// 步骤ID
|
||||
/// </summary>
|
||||
public Guid StepId { get; set; }
|
||||
/// <summary>
|
||||
/// 任务ID
|
||||
/// </summary>
|
||||
public Guid TaskId { get; set; }
|
||||
/// <summary>
|
||||
/// 实例ID
|
||||
/// </summary>
|
||||
public string InstanceId { get; set; }
|
||||
/// <summary>
|
||||
/// 分组ID
|
||||
/// </summary>
|
||||
public Guid GroupId { get; set; }
|
||||
/// <summary>
|
||||
/// 标题
|
||||
/// </summary>
|
||||
public string Title { get; set; }
|
||||
/// <summary>
|
||||
/// 操作类型
|
||||
/// </summary>
|
||||
public Type ExecuteType { get; set; }
|
||||
/// <summary>
|
||||
/// 发送人员
|
||||
/// </summary>
|
||||
public SysUser Sender { get; set; }
|
||||
/// <summary>
|
||||
/// 接收的步骤和人员和要求完成时间
|
||||
/// <para>stepId:步骤ID</para>
|
||||
/// <para>stepName:步骤名称(如果为空根据步骤ID去流程实体中查询,主要是保存动态步骤中自定义的步骤名称)</para>
|
||||
/// <para>beforeStepId:原步骤ID(动态步骤的原步骤ID)</para>
|
||||
/// <para>parallelOrSerial:0并行 1串行</para>
|
||||
/// <para>receiveUsers:接收人</para>
|
||||
/// <para>completedTime:要求完成时间</para>
|
||||
/// </summary>
|
||||
public List<(Guid stepId, string stepName, Guid? beforeStepId, int? parallelOrSerial, List<SysUser> receiveUsers, DateTime? completedTime)> Steps { get; set; }
|
||||
/// <summary>
|
||||
/// 处理意见
|
||||
/// </summary>
|
||||
public string Comment { get; set; }
|
||||
/// <summary>
|
||||
/// 是否签章
|
||||
/// </summary>
|
||||
public int IsSign { get; set; }
|
||||
/// <summary>
|
||||
/// 备注
|
||||
/// </summary>
|
||||
public string Note { get; set; }
|
||||
/// <summary>
|
||||
/// 其他类型
|
||||
/// </summary>
|
||||
public int OtherType { get; set; }
|
||||
/// <summary>
|
||||
/// 执行的参数json字符串
|
||||
/// </summary>
|
||||
public string ParamsJSON { get; set; }
|
||||
/// <summary>
|
||||
/// 是否是自动提交
|
||||
/// </summary>
|
||||
public bool IsAutoSubmit { get; set; }
|
||||
/// <summary>
|
||||
/// 附件
|
||||
/// </summary>
|
||||
public string Attachment { get; set; }
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return Newtonsoft.Json.JsonConvert.SerializeObject(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,68 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace RoadFlow.Model.FlowRunModel
|
||||
{
|
||||
/// <summary>
|
||||
/// 流程处理结果类
|
||||
/// </summary>
|
||||
public class ExecuteResult
|
||||
{
|
||||
public ExecuteResult()
|
||||
{
|
||||
NextTasks = new List<rf_flowtask>();
|
||||
AutoSubmitTasks = new List<rf_flowtask>();
|
||||
}
|
||||
/// <summary>
|
||||
/// 是否成功
|
||||
/// </summary>
|
||||
public bool IsSuccess { get; set; }
|
||||
/// <summary>
|
||||
/// 提示信息
|
||||
/// </summary>
|
||||
public string Messages { get; set; }
|
||||
/// <summary>
|
||||
/// 调试信息
|
||||
/// </summary>
|
||||
public string DebugMessages { get; set; }
|
||||
/// <summary>
|
||||
/// 其它信息
|
||||
/// </summary>
|
||||
public object Other { get; set; }
|
||||
/// <summary>
|
||||
/// 当前任务
|
||||
/// </summary>
|
||||
public Model.rf_flowtask CurrentTask { get; set; }
|
||||
/// <summary>
|
||||
/// 后续任务
|
||||
/// </summary>
|
||||
public List<rf_flowtask> NextTasks { get; set; }
|
||||
/// <summary>
|
||||
/// 完成后要自动提交的任务
|
||||
/// </summary>
|
||||
public List<rf_flowtask> AutoSubmitTasks { get; set; }
|
||||
/// <summary>
|
||||
/// 当前步骤是否通过
|
||||
/// </summary>
|
||||
public bool StepIsPass { get; set; } = false;
|
||||
/// <summary>
|
||||
/// 当前步骤是否已退回
|
||||
/// </summary>
|
||||
public bool StepIsBack { get; set; } = false;
|
||||
/// <summary>
|
||||
/// 当前流程是否完成
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public bool FlowIsCompleted { get; set; } = false;
|
||||
/// <summary>
|
||||
/// 当前流程是否被终止
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public bool FlowIsStop { get; set; } = false;
|
||||
public override string ToString()
|
||||
{
|
||||
return Newtonsoft.Json.JsonConvert.SerializeObject(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
115
20220330_Vote/Ewide.RoadFlow/Entity/FlowRunModel/FlowRun.cs
Normal file
115
20220330_Vote/Ewide.RoadFlow/Entity/FlowRunModel/FlowRun.cs
Normal file
@@ -0,0 +1,115 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace RoadFlow.Model
|
||||
{
|
||||
/// <summary>
|
||||
/// 流程运行时实体
|
||||
/// </summary>
|
||||
public class FlowRun
|
||||
{
|
||||
/// <summary>
|
||||
/// 流程ID
|
||||
/// </summary>
|
||||
[Key]
|
||||
public Guid Id { get; set; }
|
||||
/// <summary>
|
||||
/// 流程名称
|
||||
/// </summary>
|
||||
public string Name { get; set; }
|
||||
/// <summary>
|
||||
/// 流程分类
|
||||
/// </summary>
|
||||
public Guid Type { get; set; }
|
||||
/// <summary>
|
||||
/// 流程管理人员
|
||||
/// </summary>
|
||||
public string Manager { get; set; }
|
||||
/// <summary>
|
||||
/// 流程实例管理人员
|
||||
/// </summary>
|
||||
public string InstanceManager { get; set; }
|
||||
/// <summary>
|
||||
/// 第一步ID
|
||||
/// </summary>
|
||||
public Guid FirstStepId { get; set; }
|
||||
/// <summary>
|
||||
/// 创建日期
|
||||
/// </summary>
|
||||
public DateTime CreateDate { get; set; }
|
||||
/// <summary>
|
||||
/// 创建人员
|
||||
/// </summary>
|
||||
public string CreateUserId { get; set; }
|
||||
/// <summary>
|
||||
/// 设计时JSON
|
||||
/// </summary>
|
||||
public string DesignerJSON { get; set; }
|
||||
/// <summary>
|
||||
/// 安装日期
|
||||
/// </summary>
|
||||
public DateTime? InstallDate { get; set; }
|
||||
/// <summary>
|
||||
/// 安装人员ID
|
||||
/// </summary>
|
||||
public string InstallUserId { get; set; }
|
||||
/// <summary>
|
||||
/// 运行时JSON
|
||||
/// </summary>
|
||||
public string RunJSON { get; set; }
|
||||
/// <summary>
|
||||
/// 流程图标(发起流程列表时用)
|
||||
/// </summary>
|
||||
public string Ico { get; set; }
|
||||
/// <summary>
|
||||
/// 图标颜色
|
||||
/// </summary>
|
||||
public string Color { get; set; }
|
||||
/// <summary>
|
||||
/// 状态 0:设计中 1:已安装 2:已卸载 3:已删除
|
||||
/// </summary>
|
||||
public int Status { get; set; }
|
||||
/// <summary>
|
||||
/// 备注
|
||||
/// </summary>
|
||||
public string Note { get; set; }
|
||||
/// <summary>
|
||||
/// 所属系统Id
|
||||
/// </summary>
|
||||
public Guid? SystemId { get; set; }
|
||||
/// <summary>
|
||||
/// 调试模式 0关闭 1开启(有调试窗口) 2开启(无调试窗口)
|
||||
/// </summary>
|
||||
public int Debug { get; set; }
|
||||
/// <summary>
|
||||
/// 调试人员ID
|
||||
/// </summary>
|
||||
public string DebugUserIds { get; set; }
|
||||
/// <summary>
|
||||
/// 流程数据连接信息
|
||||
/// </summary>
|
||||
public List<FlowRunModel.Database> Databases { get; set; }
|
||||
/// <summary>
|
||||
/// 标识字段
|
||||
/// </summary>
|
||||
public FlowRunModel.TitleField TitleField { get; set; }
|
||||
/// <summary>
|
||||
/// 步骤信息
|
||||
/// </summary>
|
||||
public List<FlowRunModel.Step> Steps { get; set; }
|
||||
/// <summary>
|
||||
/// 连线信息
|
||||
/// </summary>
|
||||
public List<FlowRunModel.Line> Lines { get; set; }
|
||||
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return Furion.JsonSerialization.JSON.Serialize(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
46
20220330_Vote/Ewide.RoadFlow/Entity/FlowRunModel/Line.cs
Normal file
46
20220330_Vote/Ewide.RoadFlow/Entity/FlowRunModel/Line.cs
Normal file
@@ -0,0 +1,46 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace RoadFlow.Model.FlowRunModel
|
||||
{
|
||||
/// <summary>
|
||||
/// 流程连线实体
|
||||
/// </summary>
|
||||
public class Line
|
||||
{
|
||||
/// <summary>
|
||||
/// 连线ID
|
||||
/// </summary>
|
||||
public Guid Id { get; set; }
|
||||
/// <summary>
|
||||
/// 来原步骤ID
|
||||
/// </summary>
|
||||
public Guid FromId { get; set; }
|
||||
/// <summary>
|
||||
/// 到步骤ID
|
||||
/// </summary>
|
||||
public Guid ToId { get; set; }
|
||||
/// <summary>
|
||||
/// 条件判断的方法
|
||||
/// </summary>
|
||||
public string CustomMethod { get; set; }
|
||||
/// <summary>
|
||||
/// 条件判断的SQL条件
|
||||
/// </summary>
|
||||
public string SqlWhere { get; set; }
|
||||
/// <summary>
|
||||
/// 条件判断的组织机构表达式
|
||||
/// </summary>
|
||||
public string OrganizeExpression { get; set; }
|
||||
/// <summary>
|
||||
/// 判断类型 0:OR 1:AND
|
||||
/// </summary>
|
||||
public int JudgeType { get; set; }
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return Newtonsoft.Json.JsonConvert.SerializeObject(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
144
20220330_Vote/Ewide.RoadFlow/Entity/FlowRunModel/Step.cs
Normal file
144
20220330_Vote/Ewide.RoadFlow/Entity/FlowRunModel/Step.cs
Normal file
@@ -0,0 +1,144 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace RoadFlow.Model.FlowRunModel
|
||||
{
|
||||
/// <summary>
|
||||
/// 步骤实体
|
||||
/// </summary>
|
||||
public class Step
|
||||
{
|
||||
/// <summary>
|
||||
/// 步骤ID
|
||||
/// </summary>
|
||||
public Guid Id { get; set; }
|
||||
/// <summary>
|
||||
/// 步骤类型 0常规 1子流程
|
||||
/// </summary>
|
||||
public int Type { get; set; }
|
||||
/// <summary>
|
||||
/// 步骤名称
|
||||
/// </summary>
|
||||
public string Name { get; set; }
|
||||
/// <summary>
|
||||
/// 是否是动态步骤
|
||||
/// <para>0:不是动态步骤(常规步骤) </para>
|
||||
/// <para>1:动态步骤 </para>
|
||||
/// <para>2:动态步骤从字段值中获取,字段值中存:机构ID1|默认处理人ID1,机构ID2|默认处理人ID2</para>
|
||||
/// <para>VUE版本字段值中存:步骤名称1|默认处理人ID1,步骤名称2|默认处理人ID2</para>
|
||||
/// <para>动态步骤是指步骤数量不固定,发送时可以自行添加。例如审批部门不确定的情况下,发送时自行添加要发送到几个部门审批。</para>
|
||||
/// </summary>
|
||||
public int Dynamic { get; set; }
|
||||
/// <summary>
|
||||
/// 动态步骤中设定的字段
|
||||
/// </summary>
|
||||
public string DynamicField { get; set; }
|
||||
/// <summary>
|
||||
/// 意见显示 0不显示 1显示
|
||||
/// </summary>
|
||||
public int CommentDisplay { get; set; }
|
||||
/// <summary>
|
||||
/// 签章意见时是否可传附件 0不可以 1可以
|
||||
/// </summary>
|
||||
public int Attachment { get; set; }
|
||||
/// <summary>
|
||||
/// 步骤是否可以批量处理 0不可以 1可以
|
||||
/// </summary>
|
||||
public int BatchExecute { get; set; }
|
||||
/// <summary>
|
||||
/// 超期提醒0不提醒 1提前多少天提醒
|
||||
/// </summary>
|
||||
public int ExpiredPrompt { get; set; }
|
||||
/// <summary>
|
||||
/// 提前多少天提醒
|
||||
/// </summary>
|
||||
public decimal ExpiredPromptDays { get; set; } = 0;
|
||||
/// <summary>
|
||||
/// 审签类型 0无签批意见栏 1有签批意见(无须签章) 2有签批意见(须签章)
|
||||
/// </summary>
|
||||
public int SignatureType { get; set; }
|
||||
/// <summary>
|
||||
/// 工时(天)
|
||||
/// </summary>
|
||||
public decimal WorkTime { get; set; }
|
||||
/// <summary>
|
||||
/// 是否归档 0不归档 1要归档
|
||||
/// </summary>
|
||||
public int Archives { get; set; }
|
||||
/// <summary>
|
||||
/// 步骤说明
|
||||
/// </summary>
|
||||
public string Note { get; set; }
|
||||
/// <summary>
|
||||
/// 步骤发送后提示语
|
||||
/// </summary>
|
||||
public string SendShowMessage { get; set; }
|
||||
/// <summary>
|
||||
/// 步骤退回后提示语
|
||||
/// </summary>
|
||||
public string BackShowMessage { get; set; }
|
||||
/// <summary>
|
||||
/// X坐标
|
||||
/// </summary>
|
||||
public decimal Position_X { get; set; }
|
||||
/// <summary>
|
||||
/// Y坐标
|
||||
/// </summary>
|
||||
public decimal Position_Y { get; set; }
|
||||
/// <summary>
|
||||
/// 是否要在发送时指定接收人的完成时间
|
||||
/// </summary>
|
||||
public int SendSetWorkTime{ get; set; }
|
||||
/// <summary>
|
||||
/// 任务超时的处理方式 0不处理 1自动提交
|
||||
/// </summary>
|
||||
public int ExpiredExecuteModel { get; set; }
|
||||
/// <summary>
|
||||
/// 步骤运行时获取的默认处理人员
|
||||
/// </summary>
|
||||
public string RunDefaultMembers { get; set; }
|
||||
/// <summary>
|
||||
/// 数据编辑模式 0共同编辑 1独立编辑
|
||||
/// </summary>
|
||||
public int DataEditModel { get; set; } = 0;
|
||||
/// <summary>
|
||||
/// 步骤基本设置
|
||||
/// </summary>
|
||||
public StepBase StepBase { get; set; }
|
||||
/// <summary>
|
||||
/// 步骤表单
|
||||
/// </summary>
|
||||
public StepForm StepForm { get; set; }
|
||||
/// <summary>
|
||||
/// 步骤按钮
|
||||
/// </summary>
|
||||
public List<StepButton> StepButtons { get; set; }
|
||||
/// <summary>
|
||||
/// 步骤字段状态
|
||||
/// </summary>
|
||||
public List<StepFieldStatus> StepFieldStatuses { get; set; }
|
||||
/// <summary>
|
||||
/// 步骤事件
|
||||
/// </summary>
|
||||
public StepEvent StepEvent { get; set; }
|
||||
/// <summary>
|
||||
/// 步骤子流程设置
|
||||
/// </summary>
|
||||
public StepSubFlow StepSubFlow { get; set; }
|
||||
/// <summary>
|
||||
/// 步骤抄送设置
|
||||
/// </summary>
|
||||
public StepCopyFor StepCopyFor { get; set; }
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return Newtonsoft.Json.JsonConvert.SerializeObject(this);
|
||||
}
|
||||
|
||||
public Step Clone()
|
||||
{
|
||||
return (Step)MemberwiseClone();
|
||||
}
|
||||
}
|
||||
}
|
||||
128
20220330_Vote/Ewide.RoadFlow/Entity/FlowRunModel/StepBase.cs
Normal file
128
20220330_Vote/Ewide.RoadFlow/Entity/FlowRunModel/StepBase.cs
Normal file
@@ -0,0 +1,128 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace RoadFlow.Model.FlowRunModel
|
||||
{
|
||||
/// <summary>
|
||||
/// 步骤基本设置
|
||||
/// </summary>
|
||||
public class StepBase
|
||||
{
|
||||
/// <summary>
|
||||
///<para>流转类型</para>
|
||||
///<para>0 根据条件判断(无后续步骤时提示)</para>
|
||||
///<para>1 单选一个步骤</para>
|
||||
///<para>2 多选几个步骤(默认选中第一个)</para>
|
||||
///<para>3 多选几个步骤(默认全部选中)</para>
|
||||
///<para>4 多选几个步骤(默认全部选中不能取消)</para>
|
||||
///<para>5 根据条件判断(无后续步骤时完成)</para>
|
||||
/// </summary>
|
||||
public int FlowType { get; set; }
|
||||
/// <summary>
|
||||
/// 运行时选择 0不允许 1允许
|
||||
/// </summary>
|
||||
public int RunSelect { get; set; }
|
||||
/// <summary>
|
||||
/// 处理者类型 0所有成员 1部门 2岗位 3工作组 4人员 5发起者 6前一步骤处理者 7某一步骤处理者 8字段值 9发起者主管 10发起者分管领导 11当前处理者主管 12当前处理者分管领导
|
||||
/// </summary>
|
||||
public string HandlerType { get; set; }
|
||||
/// <summary>
|
||||
/// 选择范围
|
||||
/// </summary>
|
||||
public string SelectRange { get; set; }
|
||||
/// <summary>
|
||||
/// 将默认处理者作为限定选择范围 0默认处理者选中 1默认处理者不选中
|
||||
/// </summary>
|
||||
public int SelectRangeForDefaultHandler { get; set; }
|
||||
/// <summary>
|
||||
/// 当处理者类型为 7某一步骤处理者 时的处理者步骤
|
||||
/// </summary>
|
||||
public Guid? HandlerStepId { get; set; }
|
||||
/// <summary>
|
||||
/// 当处理者类型为 8字段值 时的字段
|
||||
/// </summary>
|
||||
public string ValueField { get; set; }
|
||||
/// <summary>
|
||||
/// 没有找到处理者的时,是否取上一次的处理人作为默认处理者 0否 1是
|
||||
/// </summary>
|
||||
public int LastHadler { get; set; }
|
||||
/// <summary>
|
||||
/// 默认处理者
|
||||
/// </summary>
|
||||
public string DefaultHandler { get; set; }
|
||||
/// <summary>
|
||||
/// 退回策略 0不能退回 1根据处理策略退回 2一人退回全部退回 3所有人退回才退回 4独立退回
|
||||
/// </summary>
|
||||
public int BackModel { get; set; }
|
||||
/// <summary>
|
||||
/// 处理策略 0所有人必须处理 1一人同意即可 2依据人数比例 3独立处理 4 按选择人员顺序处理
|
||||
/// </summary>
|
||||
public int HanlderModel { get; set; }
|
||||
/// <summary>
|
||||
/// 处理策略分组 0不分组 1按发送人分组 2按接收人分组
|
||||
/// </summary>
|
||||
public int HanlderModelGroup { get; set; }
|
||||
/// <summary>
|
||||
/// 退回类型 0退回前一步 1退回第一步 2退回某一步
|
||||
/// </summary>
|
||||
public int BackType { get; set; }
|
||||
/// <summary>
|
||||
/// 是否可以在退回时选择接收人(默认是退回给上一步的发送人)
|
||||
/// </summary>
|
||||
public int BackSelectUser { get; set; }
|
||||
/// <summary>
|
||||
/// 策略百分比
|
||||
/// </summary>
|
||||
public decimal Percentage { get; set; }
|
||||
/// <summary>
|
||||
/// 退回步骤ID 当退回类型为 2退回某一步时
|
||||
/// </summary>
|
||||
public Guid? BackStepId { get; set; }
|
||||
/// <summary>
|
||||
/// 会签策略 0 不会签 1 所有步骤同意 2 一个步骤同意即可 3 依据比例
|
||||
/// </summary>
|
||||
public int Countersignature { get; set; }
|
||||
/// <summary>
|
||||
/// 步骤会签的起点步骤Id
|
||||
/// </summary>
|
||||
public Guid? CountersignatureStartStepId { get; set; }
|
||||
/// <summary>
|
||||
/// 会签策略是依据比例时设置的百分比
|
||||
/// </summary>
|
||||
public decimal CountersignaturePercentage { get; set; }
|
||||
/// <summary>
|
||||
/// 子流程处理策略 0 子流程完成后才能提交 1 子流程发起即可提交
|
||||
/// </summary>
|
||||
public int SubFlowStrategy { get; set; }
|
||||
/// <summary>
|
||||
/// 并发控制 0不控制 1控制
|
||||
/// </summary>
|
||||
public int ConcurrentModel { get; set; }
|
||||
/// <summary>
|
||||
/// 默认处理者SQL或方法
|
||||
/// </summary>
|
||||
public string DefaultHandlerSqlOrMethod { get; set; }
|
||||
/// <summary>
|
||||
/// 后续步骤有默认处理人直接发送(不需要点确定)
|
||||
/// </summary>
|
||||
public int AutoConfirm { get; set; }
|
||||
/// <summary>
|
||||
/// 发送人和接收人是同一人时跳过
|
||||
/// </summary>
|
||||
public int SkipIdenticalUser { get; set; }
|
||||
/// <summary>
|
||||
/// 根据方法跳过(方法返回1或true时跳过)
|
||||
/// </summary>
|
||||
public string SkipMethod { get; set; }
|
||||
/// <summary>
|
||||
/// 发送到退回步骤
|
||||
/// </summary>
|
||||
public int SendToBackStep { get; set; }
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return Newtonsoft.Json.JsonConvert.SerializeObject(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace RoadFlow.Model.FlowRunModel
|
||||
{
|
||||
/// <summary>
|
||||
/// 步骤按钮实体
|
||||
/// </summary>
|
||||
public class StepButton
|
||||
{
|
||||
/// <summary>
|
||||
/// 按钮ID
|
||||
/// </summary>
|
||||
public Guid Id { get; set; }
|
||||
/// <summary>
|
||||
/// 按钮说明
|
||||
/// </summary>
|
||||
public string Note { get; set; }
|
||||
/// <summary>
|
||||
/// 显示标题
|
||||
/// </summary>
|
||||
public string ShowTitle { get; set; }
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
public int Sort { get; set; }
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return Newtonsoft.Json.JsonConvert.SerializeObject(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace RoadFlow.Model.FlowRunModel
|
||||
{
|
||||
/// <summary>
|
||||
/// 步骤抄送实体
|
||||
/// </summary>
|
||||
public class StepCopyFor
|
||||
{
|
||||
/// <summary>
|
||||
/// 抄送组织机构人员
|
||||
/// </summary>
|
||||
public string MemberId { get; set; }
|
||||
/// <summary>
|
||||
/// 处理者类型
|
||||
/// </summary>
|
||||
public string HandlerType { get; set; }
|
||||
/// <summary>
|
||||
/// 处理者步骤
|
||||
/// </summary>
|
||||
public string Steps { get; set; }
|
||||
/// <summary>
|
||||
/// 方法或SQL
|
||||
/// </summary>
|
||||
public string MethodOrSql { get; set; }
|
||||
/// <summary>
|
||||
/// 抄送时间 0步骤接收时 1步骤完成时
|
||||
/// </summary>
|
||||
public int CopyforTime { get; set; }
|
||||
/// <summary>
|
||||
/// 发送待办消息方式 0站内短信 1手机短信 2微信 3公众号 4邮件
|
||||
/// </summary>
|
||||
public string SendMessageType { get; set; }
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return Newtonsoft.Json.JsonConvert.SerializeObject(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,51 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace RoadFlow.Model.FlowRunModel
|
||||
{
|
||||
/// <summary>
|
||||
/// 步骤事件实体
|
||||
/// </summary>
|
||||
public class StepEvent
|
||||
{
|
||||
/// <summary>
|
||||
/// 步骤提交前事件
|
||||
/// </summary>
|
||||
public string SubmitBefore { get; set; }
|
||||
/// <summary>
|
||||
/// 步骤提交后事件
|
||||
/// </summary>
|
||||
public string SubmitAfter { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 步骤通过后事件
|
||||
/// </summary>
|
||||
public string SubmitPassAfter { get; set; }
|
||||
/// <summary>
|
||||
/// 步骤退回前事件
|
||||
/// </summary>
|
||||
public string BackBefore { get; set; }
|
||||
/// <summary>
|
||||
/// 步骤退回后事件
|
||||
/// </summary>
|
||||
public string BackAfter { get; set; }
|
||||
/// <summary>
|
||||
/// 步骤退回通过后事件
|
||||
/// </summary>
|
||||
public string BackPassAfter { get; set; }
|
||||
/// <summary>
|
||||
/// 子流程激活前事件
|
||||
/// </summary>
|
||||
public string SubFlowActivationBefore { get; set; }
|
||||
/// <summary>
|
||||
/// 子流程完成后事件
|
||||
/// </summary>
|
||||
public string SubFlowCompletedBefore { get; set; }
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return Newtonsoft.Json.JsonConvert.SerializeObject(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace RoadFlow.Model.FlowRunModel
|
||||
{
|
||||
/// <summary>
|
||||
/// 步骤字段状态实体
|
||||
/// </summary>
|
||||
public class StepFieldStatus
|
||||
{
|
||||
/// <summary>
|
||||
/// 字段 连接ID.表名.字段名
|
||||
/// </summary>
|
||||
public string Field { get; set; }
|
||||
/// <summary>
|
||||
/// 状态 0编辑 1只读 2隐藏
|
||||
/// </summary>
|
||||
public int Status { get; set; }
|
||||
/// <summary>
|
||||
/// 数据检查 0不检查 1允许为空,非空时检查 2不允许为空,并检查
|
||||
/// </summary>
|
||||
public int Check { get; set; }
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return Newtonsoft.Json.JsonConvert.SerializeObject(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
34
20220330_Vote/Ewide.RoadFlow/Entity/FlowRunModel/StepForm.cs
Normal file
34
20220330_Vote/Ewide.RoadFlow/Entity/FlowRunModel/StepForm.cs
Normal file
@@ -0,0 +1,34 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace RoadFlow.Model.FlowRunModel
|
||||
{
|
||||
/// <summary>
|
||||
/// 步骤表单实体
|
||||
/// </summary>
|
||||
public class StepForm
|
||||
{
|
||||
/// <summary>
|
||||
/// 表单ID
|
||||
/// </summary>
|
||||
public Guid Id { get; set; }
|
||||
/// <summary>
|
||||
/// 表单名称
|
||||
/// </summary>
|
||||
public string Name { get; set; }
|
||||
/// <summary>
|
||||
/// 移动端表单ID
|
||||
/// </summary>
|
||||
public Guid MobileId { get; set; }
|
||||
/// <summary>
|
||||
/// 移动端表单名称
|
||||
/// </summary>
|
||||
public string MobileName { get; set; }
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return Newtonsoft.Json.JsonConvert.SerializeObject(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace RoadFlow.Model.FlowRunModel
|
||||
{
|
||||
/// <summary>
|
||||
/// 步骤子流程实体
|
||||
/// </summary>
|
||||
public class StepSubFlow
|
||||
{
|
||||
/// <summary>
|
||||
/// 子流程ID
|
||||
/// </summary>
|
||||
public Guid SubFlowId { get; set; }
|
||||
/// <summary>
|
||||
/// 子流程策略,0子流程完成才能提交,1子流程发起即可提交,2子流程完成自动提交
|
||||
/// </summary>
|
||||
public int SubFlowStrategy { get; set; }
|
||||
/// <summary>
|
||||
/// 实例类型 0所有人同一实例 1每个人单独实例
|
||||
/// </summary>
|
||||
public int TaskType { get; set; }
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return Newtonsoft.Json.JsonConvert.SerializeObject(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace RoadFlow.Model.FlowRunModel
|
||||
{
|
||||
/// <summary>
|
||||
/// 标识字段
|
||||
/// </summary>
|
||||
public class TitleField
|
||||
{
|
||||
/// <summary>
|
||||
/// 连接ID
|
||||
/// </summary>
|
||||
public Guid ConnectionId { get; set; }
|
||||
/// <summary>
|
||||
/// 表
|
||||
/// </summary>
|
||||
public string Table { get; set; }
|
||||
/// <summary>
|
||||
/// 字段
|
||||
/// </summary>
|
||||
public string Field { get; set; }
|
||||
/// <summary>
|
||||
/// 标识值
|
||||
/// </summary>
|
||||
public string Value { get; set; }
|
||||
/// <summary>
|
||||
/// 流程审批完成后事件
|
||||
/// </summary>
|
||||
public string EventCompleted { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 流程审批终止后事件
|
||||
/// </summary>
|
||||
public string EventStop { get; set; }
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return Newtonsoft.Json.JsonConvert.SerializeObject(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
157
20220330_Vote/Ewide.RoadFlow/Entity/FlowRunModel/User.cs
Normal file
157
20220330_Vote/Ewide.RoadFlow/Entity/FlowRunModel/User.cs
Normal file
@@ -0,0 +1,157 @@
|
||||
using Ewide.Core;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace RoadFlow.Model.FlowRunModel
|
||||
{
|
||||
/// <summary>
|
||||
/// 用户实体类
|
||||
/// </summary>
|
||||
|
||||
public class User : IEqualityComparer<User>
|
||||
{
|
||||
/// <summary>
|
||||
/// Id
|
||||
/// </summary>
|
||||
[DisplayName("Id")]
|
||||
[Key]
|
||||
public string Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 姓名
|
||||
/// </summary>
|
||||
[DisplayName("姓名")]
|
||||
[Required(ErrorMessage = "姓名不能为空")]
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 帐号
|
||||
/// </summary>
|
||||
[DisplayName("帐号")]
|
||||
[Required(ErrorMessage = "帐号不能为空")]
|
||||
public string Account { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 密码
|
||||
/// </summary>
|
||||
[DisplayName("密码")]
|
||||
[Required(ErrorMessage = "密码不能为空")]
|
||||
public string Password { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 性别 0男 1女
|
||||
/// </summary>
|
||||
[DisplayName("性别 0男 1女")]
|
||||
public int? Sex { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 状态 0 正常 1 冻结
|
||||
/// </summary>
|
||||
[DisplayName("状态 0 正常 1 冻结")]
|
||||
public int Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 职务
|
||||
/// </summary>
|
||||
[DisplayName("职务")]
|
||||
public string Job { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 备注
|
||||
/// </summary>
|
||||
[DisplayName("备注")]
|
||||
public string Note { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 手机
|
||||
/// </summary>
|
||||
[DisplayName("手机")]
|
||||
public string Mobile { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 办公电话
|
||||
/// </summary>
|
||||
[DisplayName("办公电话")]
|
||||
public string Tel { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 其它联系方式
|
||||
/// </summary>
|
||||
[DisplayName("其它联系方式")]
|
||||
public string OtherTel { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 传真
|
||||
/// </summary>
|
||||
[DisplayName("传真")]
|
||||
public string Fax { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 邮箱
|
||||
/// </summary>
|
||||
[DisplayName("邮箱")]
|
||||
public string Email { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// QQ(此字段不保存QQ号了,用来保存流程处理时有时需要人员分组)
|
||||
/// </summary>
|
||||
[DisplayName("QQ")]
|
||||
public string QQ { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 头像
|
||||
/// </summary>
|
||||
[DisplayName("头像")]
|
||||
public string HeadImg { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 微信号(此字段不保存微信号,用来保存用户选择的当前语言)
|
||||
/// </summary>
|
||||
[DisplayName("微信号")]
|
||||
public string WeiXin { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 人员兼职的机构ID(兼职时有用)(organizeuser表ID)
|
||||
/// </summary>
|
||||
[DisplayName("人员兼职的机构ID")]
|
||||
public string PartTimeId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 微信openid
|
||||
/// </summary>
|
||||
[DisplayName("微信openid")]
|
||||
public string WeiXinOpenId { get; set; }
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return Newtonsoft.Json.JsonConvert.SerializeObject(this);
|
||||
}
|
||||
|
||||
public bool Equals(User u1, User u2)
|
||||
{
|
||||
return u1.Id == u2.Id;
|
||||
}
|
||||
|
||||
public int GetHashCode(User u)
|
||||
{
|
||||
return u.Id.GetHashCode();
|
||||
}
|
||||
|
||||
public User Clone()
|
||||
{
|
||||
return (User)MemberwiseClone();
|
||||
}
|
||||
|
||||
public static User FromSysUser(SysUser u)
|
||||
{
|
||||
User rtn = new User();
|
||||
rtn.Id = u.Id;
|
||||
rtn.Name = u.Name;
|
||||
|
||||
return rtn;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user