private async Task <WfApplyBase> GetModel(TableSource src, long id, JsonModel result)
        {
            WfApplyBase model = null;

            switch (src)
            {
            case TableSource.LeaveInfo:
                model = new LeaveInfoModel()
                {
                    Days      = 1,
                    StartTime = DateTime.Now.AddDays(1),
                    EndTime   = DateTime.Now.AddDays(2)
                };
                break;

            case TableSource.SealInfo:
                model = new SealInfoModel()
                {
                    ApplyUserName = User.UserInfo.RealName,
                    ApplyTime     = DateTime.Now
                };
                break;

            case TableSource.MeetingRoomInfo:
                model = new MeetingRoomInfoModel()
                {
                    UsedTime  = DateTime.Now,
                    ApplyTime = DateTime.Now,
                    ApplyName = User.UserInfo.RealName
                };
                break;

            default:
                break;
            }

            if (id != 0)
            {
                var sourceData = await WorkflowSvc.GetSourceAsync(src, id);

                if (sourceData == null)
                {
                    result.message = $"找不到Id为{model.Id}的{src}!";
                    return(null);
                }
                Mapper.Map(sourceData, model);
            }

            return(model);
        }
        private async Task DealProcess(WfApplyBase model, long srcId, JsonModel result, string conditions = null)
        {
            if (model.ProcessInstanceId != 0)
            {
                var processInstance = await WorkflowSvc.GetProcessInstanceAsync(model.ProcessInstanceId);

                if (processInstance == null)
                {
                    result.statusCode = 300;
                    result.message    = $"找不到id为{model.ProcessInstanceId}的流程实例!";
                    return;
                }
                processInstance.Conditions = conditions;
                result = await WorkflowSvc.DealProcess(model.ProcessInstanceId,
                                                       model.CurrActInsId,
                                                       WfActivityButton.Send,
                                                       "重新提交信息",
                                                       model.NextStepId,
                                                       model.AssignToUserIds,
                                                       model.AssignToUserNames);

                return;
            }
            //创建流程
            result = await WorkflowSvc.StartProcess(model.ProcessId,
                                                    srcId,
                                                    conditions,
                                                    model.NextStepId,
                                                    model.AssignToUserIds,
                                                    model.AssignToUserNames);

            if (result.statusCode == 200)
            {
                result.message = "申请成功,请等待审批!";
            }
        }