Cat.WorkFlow/WorkFlowOperate.cs

(开头部分) 9KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using Cat.Entity.WorkFLowManage;
using Cat.Service.WorkFLowManage;
using System;
using System.Collections.Generic;
using System.Text;
using System.Linq;
using Cat.Util.Model;
using Cat.Model;
using NPOI.SS.Formula.Functions;

namespace Cat.WorkFlow
{
    /// <summary>
    /// 流程操作类
    /// </summary>
    public class WorkFlowOperate
    {
        /// <summary>
        /// 执行工作流操作
        /// </summary>
        /// <param name="param"></param>
        /// <param name="action"></param>
        /// <returns></returns>
        public static TData<string> Execute(WorkFlowParam param,Action<int> action=null)
        {
            TData<string> obj = new TData<string>();
            if (param.CommandType==CommandType.NoSubmit.GetHashCode())
            {
                return obj;
            }

            WorkflowInstance instance = new WorkflowInstance();
            WfWorkFLowService wfWorkFLowService = new WfWorkFLowService();
            WfInstanceService wfInstanceService = new WfInstanceService();
            WfTaskService wfTaskService = new WfTaskService();

            //提交时根据菜单Id查询绑定的流程
            if (param.CommandType == CommandType.Submit.GetHashCode())
            {
                var list = wfWorkFLowService.BaseRepository().FindList<WfWorkFLowEntity>(t => t.MenuId == param.MenuId).Result.ToList();
                if (list == null || list.Count != 1)
                {
                    obj.Tag = 0;
                    obj.Message = $"根据菜单Id:{param.MenuId}没有找到或者有多个相关流程";
                    return obj;
                }

                WorkFlowProcessTransition transition = new WorkFlowProcessTransition
                {
                    BusinessId = param.BusinessId,
                    UserId = param.UserId,
                    FlowId = list[0].Id.Value,
                    Content = param.Content,
                    ExtendInfo = param.ExtendInfo,
                    Value=param.Value,
                    DeptId=param.DeptId
                };
                var result = instance.CreateInstance(transition).Result;
                if(result.Tag==0)
                {
后面还有 167 行代码,购买后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。