/// <summary> /// 推送业务服务 Rest 请求接 入口 /// </summary> /// <param name="proEventMessage"></param> /// <returns></returns> public Task <bool> PushBusinessServiceEntrance(ProcessEventMessage proEventMessage) { _logger.Info(LogSource, $"Start PushBusinessServiceEntrance Data:{ JsonConvert.SerializeObject(proEventMessage) }"); return(Task.Factory.StartNew(() => { var returnInfo = new ResponseResultInfo(); CheckProcessEventMessage(proEventMessage, returnInfo); if (returnInfo.returnStatus != 200) { _logger.Warn(LogSource, $"End PushBusinessServiceEntrance Data:{ JsonConvert.SerializeObject(proEventMessage) },RequestMessage:{ JsonConvert.SerializeObject(returnInfo) }"); throw new Exception(returnInfo.returnMsg); } returnInfo = CallBusinessService(proEventMessage); //如果接口出错,则抛出来给队列 if (returnInfo.returnStatus != 200) { _logger.Warn(LogSource, $"End PushBusinessServiceEntrance Data:{ JsonConvert.SerializeObject(proEventMessage) },RequestMessage:{ JsonConvert.SerializeObject(returnInfo) }"); throw new Exception(returnInfo.returnMsg); } _logger.Info(LogSource, $"End PushBusinessServiceEntrance Data:{ JsonConvert.SerializeObject(proEventMessage) }"); return true; })); }
/// <summary> /// 校验推送消息 /// </summary> /// <param name="proEventMessage"></param> /// <param name="returnInfo"></param> /// <returns></returns> private void CheckProcessEventMessage(ProcessEventMessage proEventMessage, ResponseResultInfo returnInfo) { if (!_prcEventInterfaceService.IsEnableEventInterface(proEventMessage.EventInterfaceId)) { returnInfo.returnMsg = string.Format("FormId:{0},EventInterfaceId:{1},未获取到流程事件接口配置。", proEventMessage.FormId, proEventMessage.EventInterfaceId); ReturnErrorInfo(proEventMessage, returnInfo); } }
public async Task <ResponseResultInfo> AddWordTemplate(string userId, string organizationId, TemplateType type, [FromBody] WordTemplateInfo item) { ResponseResultInfo respResult = new ResponseResultInfo(); try { item.Id = Guid.NewGuid().ToString(); item.CreateTime = DateTime.Now; _context.WordTemplateInfoes.Add(item); //根据类型添加到不同的数据库 switch (type) { case TemplateType.Private: PrivateTemplateInfo priTmp = new PrivateTemplateInfo(); priTmp.CreateTime = DateTime.Now; priTmp.Id = Guid.NewGuid().ToString(); priTmp.TemplateId = item.Id; priTmp.UserId = userId; await _context.PrivateTemplateInfoes.AddAsync(priTmp); break; case TemplateType.Public: break; case TemplateType.Organization: OrganizationTemplateInfo orgTmp = new OrganizationTemplateInfo(); orgTmp.CreateTime = DateTime.Now; orgTmp.Id = Guid.NewGuid().ToString(); orgTmp.TemplateId = item.Id; orgTmp.OrganizationId = organizationId; await _context.OrganizationTemplateInfoes.AddAsync(orgTmp); break; default: break; } _context.SaveChanges(); respResult.Message = "OK"; return(respResult); } catch (Exception ex) { respResult.IsSuccess = false; respResult.Message = string.Format("Something wrong. The exception message::{0}", ex.Message); return(respResult); } }
public async Task <ResponseResultInfo <List <WordTemplateInfo> > > SearchWordTemplateList(string keyword) { ResponseResultInfo <List <WordTemplateInfo> > respResult = new ResponseResultInfo <List <WordTemplateInfo> >(); try { List <WordTemplateInfo> list = await _context.WordTemplateInfoes.Where(x => x.Type == TemplateType.Public && x.Name.Contains(keyword)).OrderByDescending(x => x.CreateTime).ToListAsync(); respResult.IsSuccess = true; respResult.Result = list; return(respResult); } catch (Exception ex) { //LogHelper.ErrorWriteLine("Something wrong. The exception message::{0}", ex); respResult.IsSuccess = false; respResult.Message = string.Format("Something wrong. The exception message::{0}", ex.Message); return(respResult); } }
public async Task <ResponseResultInfo <List <WordTemplateInfo> > > GetOrganizationTemplateList(string orgId) { ResponseResultInfo <List <WordTemplateInfo> > respResult = new ResponseResultInfo <List <WordTemplateInfo> >(); try { List <string> listIds = _context.OrganizationTemplateInfoes.Where(x => x.OrganizationId == orgId).OrderByDescending(x => x.CreateTime).Select(x => x.TemplateId).ToList(); List <WordTemplateInfo> list = await _context.WordTemplateInfoes.Where(x => listIds.Contains(x.Id)).ToListAsync(); respResult.IsSuccess = true; respResult.Result = list; return(respResult); } catch (Exception ex) { respResult.IsSuccess = false; respResult.Message = string.Format("Something wrong. The exception message::{0}", ex.Message); return(respResult); } }
/// <summary> /// 错误信息返回信息、记录错误日志 /// </summary> /// <param name="proEventMsgInfo"></param> /// <param name="resResultInfo"></param> private void ReturnErrorInfo(ProcessEventMessage proEventMsgInfo, ResponseResultInfo resResultInfo) { resResultInfo.returnStatus = 500; resResultInfo.returnCode = "E0001"; var logItem = new Domain.Models.PrcServer_BusinessInterfaceLog() { Status = 500, FormID = proEventMsgInfo.FormId, ActivityName = proEventMsgInfo.ActivityName, EventInterfaceId = proEventMsgInfo.EventInterfaceId.ToString(), RequstID = proEventMsgInfo.RequstID, RequestTime = DateTime.Now, Parameters = Newtonsoft.Json.JsonConvert.SerializeObject(proEventMsgInfo), ResponseMessage = Newtonsoft.Json.JsonConvert.SerializeObject(resResultInfo), ResponseTime = DateTime.Now, IsRetry = 0 }; _interfaceLogService.AddBusInterfaceLog(logItem); }
public async Task <ResponseResultInfo> AddOrganizationTemplate(string orgId, [FromBody] WordTemplateInfo item) { ResponseResultInfo respResult = new ResponseResultInfo(); try { OrganizationTemplateInfo info = new OrganizationTemplateInfo(); info.Id = Guid.NewGuid().ToString(); info.TemplateId = item.Id; info.OrganizationId = orgId; await _context.OrganizationTemplateInfoes.AddAsync(info); _context.SaveChanges(); respResult.IsSuccess = true; return(respResult); } catch (Exception ex) { respResult.IsSuccess = false; respResult.Message = string.Format("Something wrong. The exception message::{0}", ex.Message); return(respResult); } }