Exemple #1
0
        public override string GetBisData(WFTaskEntity taskEntity, string dataId, string serviceId, EAccessMessageType messageType)
        {
            //从tasksetting获取配置的远程对象代码,调取远方模型进行预算,返回结果
            string jsonData = "{}";

            if (!string.IsNullOrWhiteSpace(taskEntity.Setting))
            {
                var finisid = this._WfFinsDal.GetIdByDataIdAndFlowId(dataId, taskEntity.Flowid);
                var tinsid  = this._WftinsDal.GetIdByFinsIdAndTaskId(finisid, taskEntity.ID);

                var settingModel = _jsonConverter.Deserialize <ObjectSettingModel>(taskEntity.Setting);
                if (settingModel != null)
                {
                    jsonData = _IAppAccessService.GetModelTaskBisdata(serviceId, dataId, settingModel.ObjectCode).GetAwaiter().GetResult();
                }
                _WfTdataDal.Add(taskEntity.Flowid, finisid, taskEntity.ID, tinsid, jsonData);
            }
            return(jsonData);
        }
Exemple #2
0
        /// <summary>
        /// 获取业务数据
        /// </summary>
        public virtual string GetBisData(WFTaskEntity taskEntity, string dataId, string serviceId, EAccessMessageType messageType)
        {
            //调取远方模型进行,返回结果
            string jsonData = string.Empty;
            //根据serviceId 和dataid 获取 finsid 和tinsid

            var finisid = this._WfFinsDal.GetIdByDataIdAndFlowId(dataId, taskEntity.Flowid);
            var tinsid  = this._WftinsDal.GetIdByFinsIdAndTaskId(finisid, taskEntity.ID);

            if (messageType == EAccessMessageType.GetVariable)
            {
                jsonData = _IAppAccessService.GetVaribleTaskBisdata(serviceId, dataId, taskEntity.GetTemplateInfo()).GetAwaiter().GetResult();
            }
            else
            {
                jsonData = _IAppAccessService.GetWorkflowServiceBisdata(serviceId, dataId).GetAwaiter().GetResult();
            }
            _WfTdataDal.Add(taskEntity.Flowid, finisid, taskEntity.ID, tinsid, jsonData);

            return(jsonData);
        }
Exemple #3
0
 public override string GetBisData(WFTaskEntity taskEntity, string dataId, string serviceId, EAccessMessageType messageType)
 {
     //结束节点不用获取业务数据
     return(string.Empty);
 }
Exemple #4
0
        private async Task <string> GetRemoteBisdata(string serviceId, string dataId, EAccessMessageType msgType, string objectCode)
        {
            var          client = _httpClientFactory.CreateClient();
            MessageModel model  = new MessageModel()
            {
                ServiceId  = serviceId,
                DataId     = dataId,
                MsgType    = msgType,
                ObjectCode = objectCode,
                Body       = objectCode
            };
            var postMsg = JsonConvert.SerializeObject(model);
            var content = new StringContent(postMsg, Encoding.UTF8, "application/json");

            var url = GetAppAccessUrl(serviceId);

            try
            {
                var result = await client.PostAsync(url, content);

                if (result.IsSuccessStatusCode)
                {
                    return(await result.Content.ReadAsStringAsync());
                }
                else
                {
                    return(string.Empty);
                }
            }
            catch (HttpRequestException ex)
            {
                throw new HttpRequestException($"{ex.Message},GetRemoteBisdata url:{url} content:{postMsg}");
            }
        }