You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
235 lines
8.5 KiB
235 lines
8.5 KiB
using System;
|
|
using System.Collections.Generic;
|
|
|
|
namespace RoadFlow.Data.Interface
|
|
{
|
|
public interface IWorkFlowTask
|
|
{
|
|
/// <summary>
|
|
/// 新增
|
|
/// </summary>
|
|
int Add(RoadFlow.Data.Model.WorkFlowTask model);
|
|
|
|
/// <summary>
|
|
/// 更新
|
|
/// </summary>
|
|
int Update(RoadFlow.Data.Model.WorkFlowTask model);
|
|
|
|
/// <summary>
|
|
/// 查询所有记录
|
|
/// </summary>
|
|
List<RoadFlow.Data.Model.WorkFlowTask> GetAll();
|
|
|
|
/// <summary>
|
|
/// 查询单条记录
|
|
/// </summary>
|
|
Model.WorkFlowTask Get(Guid id);
|
|
|
|
/// <summary>
|
|
/// 删除
|
|
/// </summary>
|
|
int Delete(Guid id);
|
|
|
|
/// <summary>
|
|
/// 删除一个实例
|
|
/// </summary>
|
|
int Delete(Guid flowID, Guid groupID);
|
|
|
|
/// <summary>
|
|
/// 查询记录条数
|
|
/// </summary>
|
|
long GetCount();
|
|
|
|
/// <summary>
|
|
/// 查询待办任务
|
|
/// </summary>
|
|
/// <param name="userID"></param>
|
|
/// <param name="pager"></param>
|
|
/// <param name="query"></param>
|
|
/// <param name="title"></param>
|
|
/// <param name="flowid"></param>
|
|
/// <param name="date1"></param>
|
|
/// <param name="date2"></param>
|
|
/// <param name="type">0待办 1已完成</param>
|
|
/// <returns></returns>
|
|
List<RoadFlow.Data.Model.WorkFlowTask> GetTasks(string userID, out string pager, string query = "", string title = "", string flowid = "", string sender = "", string date1 = "", string date2 = "", int type = 0);
|
|
|
|
/// <summary>
|
|
/// 查询待办任务(APP接口)
|
|
/// </summary>
|
|
/// <param name="userID"></param>
|
|
/// <param name="pager"></param>
|
|
/// <param name="query"></param>
|
|
/// <param name="title"></param>
|
|
/// <param name="flowid"></param>
|
|
/// <param name="date1"></param>
|
|
/// <param name="date2"></param>
|
|
/// <param name="type">0待办 1已完成</param>
|
|
/// <returns></returns>
|
|
List<RoadFlow.Data.Model.WorkFlowTask> AppGetTasks(string userID, int PageIndex, int PageSize, string title = "", string flowid = "", string sender = "", string date1 = "", string date2 = "", int type = 0);
|
|
|
|
/// <summary>
|
|
/// 得到流程实例列表
|
|
/// </summary>
|
|
/// <param name="flowID"></param>
|
|
/// <param name="senderID"></param>
|
|
/// <param name="receiveID"></param>
|
|
/// <param name="pager"></param>
|
|
/// <param name="query"></param>
|
|
/// <param name="title"></param>
|
|
/// <param name="flowid"></param>
|
|
/// <param name="date1"></param>
|
|
/// <param name="date2"></param>
|
|
/// <param name="status">是否完成 0:全部 1:未完成 2:已完成</param>
|
|
/// <returns></returns>
|
|
List<RoadFlow.Data.Model.WorkFlowTask> GetInstances(Guid[] flowID, Guid[] senderID, Guid[] receiveID, out string pager, string query = "", string title = "", string flowid = "", string date1 = "", string date2 = "", int status = 0);
|
|
|
|
/// <summary>
|
|
/// 更新打开时间
|
|
/// </summary>
|
|
/// <param name="id"></param>
|
|
/// <param name="openTime"></param>
|
|
/// <param name="isStatus">是否将状态更新为1</param>
|
|
void UpdateOpenTime(Guid id, DateTime openTime, bool isStatus = false);
|
|
|
|
/// <summary>
|
|
/// 得到一个流程实例的发起者
|
|
/// </summary>
|
|
/// <param name="flowID"></param>
|
|
/// <param name="groupID"></param>
|
|
/// <returns></returns>
|
|
string GetFirstSnderID(Guid flowID, string groupID);
|
|
|
|
/// <summary>
|
|
/// 得到一个流程实例一个步骤的处理者
|
|
/// </summary>
|
|
/// <param name="flowID"></param>
|
|
/// <param name="groupID"></param>
|
|
/// <returns></returns>
|
|
List<Guid> GetStepSnderID(Guid flowID, Guid stepID, Guid groupID);
|
|
|
|
/// <summary>
|
|
/// 得到一个流程实例前一步骤的处理者
|
|
/// </summary>
|
|
/// <param name="flowID"></param>
|
|
/// <param name="groupID"></param>
|
|
/// <returns></returns>
|
|
List<Guid> GetPrevSnderID(Guid flowID, Guid stepID, Guid groupID);
|
|
|
|
/// <summary>
|
|
/// 完成一个任务
|
|
/// </summary>
|
|
/// <param name="taskID"></param>
|
|
/// <param name="comment"></param>
|
|
/// <param name="isSign"></param>
|
|
/// <returns></returns>
|
|
int Completed(Guid taskID, string comment = "", bool isSign = false, int status = 2, string note = "");
|
|
|
|
/// <summary>
|
|
/// 得到一个流程实例一个步骤的任务
|
|
/// </summary>
|
|
/// <param name="flowID"></param>
|
|
/// <param name="groupID"></param>
|
|
/// <returns></returns>
|
|
List<Model.WorkFlowTask> GetTaskList(Guid flowID, Guid stepID, Guid groupID);
|
|
|
|
/// <summary>
|
|
/// 得到一个实例的任务
|
|
/// </summary>
|
|
/// <param name="flowID"></param>
|
|
/// <param name="groupID"></param>
|
|
/// <returns></returns>
|
|
List<RoadFlow.Data.Model.WorkFlowTask> GetTaskList(Guid flowID, Guid groupID);
|
|
|
|
/// <summary>
|
|
/// 得到和一个任务同级的任务
|
|
/// </summary>
|
|
/// <param name="taskID">任务ID</param>
|
|
/// <param name="isStepID">是否区分步骤ID,多步骤会签区分的是上一步骤ID</param>
|
|
/// <returns></returns>
|
|
List<RoadFlow.Data.Model.WorkFlowTask> GetTaskList(Guid taskID, bool isStepID = true);
|
|
|
|
/// <summary>
|
|
/// 得到一个任务的前一任务
|
|
/// </summary>
|
|
/// <param name="flowID"></param>
|
|
/// <param name="groupID"></param>
|
|
/// <returns></returns>
|
|
List<Model.WorkFlowTask> GetPrevTaskList(Guid taskID);
|
|
|
|
/// <summary>
|
|
/// 得到一个任务的后续任务
|
|
/// </summary>
|
|
/// <param name="flowID"></param>
|
|
/// <param name="groupID"></param>
|
|
/// <returns></returns>
|
|
List<Model.WorkFlowTask> GetNextTaskList(Guid taskID);
|
|
|
|
/// <summary>
|
|
/// 得到一个流程实例一个步骤一个人员的任务
|
|
/// </summary>
|
|
/// <param name="flowID"></param>
|
|
/// <param name="stepID"></param>
|
|
/// <param name="groupID"></param>
|
|
/// <param name="userID"></param>
|
|
/// <returns></returns>
|
|
List<Model.WorkFlowTask> GetUserTaskList(Guid flowID, Guid stepID, Guid groupID, Guid userID);
|
|
|
|
/// <summary>
|
|
/// 更新一个任务后后续任务状态
|
|
/// </summary>
|
|
/// <param name="taskID"></param>
|
|
/// <param name="comment"></param>
|
|
/// <param name="isSign"></param>
|
|
/// <returns></returns>
|
|
int UpdateNextTaskStatus(Guid taskID, int status);
|
|
|
|
/// <summary>
|
|
/// 查询一个流程是否有任务数据
|
|
/// </summary>
|
|
/// <param name="flowID"></param>
|
|
/// <returns></returns>
|
|
bool HasTasks(Guid flowID);
|
|
|
|
/// <summary>
|
|
/// 查询一个用户在一个步骤是否有未完成任务
|
|
/// </summary>
|
|
/// <param name="flowID"></param>
|
|
/// <returns></returns>
|
|
bool HasNoCompletedTasks(Guid flowID, Guid stepID, Guid groupID, string userID);
|
|
|
|
/// <summary>
|
|
/// 激活临时任务
|
|
/// </summary>
|
|
/// <param name="flowID"></param>
|
|
/// <param name="stepID"></param>
|
|
/// <param name="groupID"></param>
|
|
/// <param name="completedTime">要求完成时间</param>
|
|
/// <returns></returns>
|
|
int UpdateTempTasks(Guid flowID, Guid stepID, Guid groupID, DateTime? completedTime, DateTime receiveTime);
|
|
|
|
/// <summary>
|
|
/// 删除临时任务
|
|
/// </summary>
|
|
/// <param name="flowID"></param>
|
|
/// <param name="stepID"></param>
|
|
/// <param name="groupID"></param>
|
|
/// <param name="prevStepID"></param>
|
|
/// <returns></returns>
|
|
int DeleteTempTasks(Guid flowID, Guid stepID, Guid groupID, Guid prevStepID);
|
|
|
|
/// <summary>
|
|
/// 得到一个任务的状态
|
|
/// </summary>
|
|
/// <param name="taskID"></param>
|
|
/// <returns></returns>
|
|
int GetTaskStatus(Guid taskID);
|
|
|
|
/// <summary>
|
|
/// 根据SubFlowID得到一个任务
|
|
/// </summary>
|
|
/// <param name="subflowGroupID"></param>
|
|
/// <returns></returns>
|
|
List<Model.WorkFlowTask> GetBySubFlowGroupID(Guid subflowGroupID);
|
|
}
|
|
}
|
|
|