Exemple #1
0
        /// <summary>
        /// 执行流程方法
        /// </summary>
        /// <param name="methodName">方法名称</param>
        /// <param name="methodMode">方法类型(0:直接提交,1:第一步提交,2:第二步提交)</param>
        /// <param name="methodVersion">方法版本</param>
        /// <param name="bizContext">流程上下文参数</param>
        /// <returns></returns>
        internal static string ExecuteMethod(string methodName, int methodMode, string methodVersion, BizContext bizContext, string bizWFServiceURL = "")
        {
            //补充BizContext的信息(CurrentUser,AppCode)
            WFClientProcess.RepaireBizContext(bizContext);

            //将appCode,action,method,param(序列化后的dicParam)添加到dicParamWebService中调用WebService
            var dicParamWebService = new Dictionary <string, object>();

            dicParamWebService.Add("appCode", bizContext.AppCode);
            dicParamWebService.Add("action", "Process");
            dicParamWebService.Add("method", methodName);
            dicParamWebService.Add("token", bizContext.WFToken);
            dicParamWebService.Add("param", Newtonsoft.Json.JsonConvert.SerializeObject(new
            {
                BizContext = JsonConvert.SerializeObject(bizContext),
                Mode       = methodMode,
                Version    = methodVersion
            }));
            dicParamWebService.Add("callBackUrl", "");
            string url = AppSettingInfo.WorkflowServerUrl;

            if (!string.IsNullOrEmpty(bizWFServiceURL))
            {
                url = bizWFServiceURL;
            }
            string workFlowServerFullURL = SDKHelper.GetWorkflowServerUrlFullPath(url);
            string result = SDKHelper.QueryPostWebService(workFlowServerFullURL, AppSettingInfo.CONST_WorkflowServiceMethodName, dicParamWebService);

            return(result);
        }
Exemple #2
0
        /// <summary>
        /// 调用WebService请求(调用地址为Web.Config中配置的地址)
        /// </summary>
        /// <param name="Pars"></param>
        /// <returns></returns>
        public static string QueryPostWebService(Dictionary <string, object> Pars)
        {
            string workFlowServerFullURL = SDKHelper.GetWorkflowServerUrlFullPath(AppSettingInfo.WorkflowServerUrl);

            return(QueryPostWebService(workFlowServerFullURL, AppSettingInfo.CONST_WorkflowServiceMethodName, Pars));
        }