LogicNodeService.cs 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. using Attribute;
  2. using Model;
  3. using Model.Base;
  4. using Repository;
  5. using Service;
  6. using Microsoft.AspNetCore.Mvc;
  7. using Vo.Admin;
  8. using Util.Logic;
  9. using Dto.Admin;
  10. namespace Services
  11. {
  12. /// <summary>
  13. /// 逻辑节点Service业务层处理
  14. /// </summary>
  15. [AppService(ServiceType = typeof(ILogicNodeService), ServiceLifetime = LifeTime.Transient)]
  16. public class LogicNodeService : BaseService<LogicNode>, ILogicNodeService
  17. {
  18. /// <summary>
  19. /// 逻辑节点-列表
  20. /// </summary>
  21. /// <param name="param">参数请求体</param>
  22. /// <param name="page">分页参数</param>
  23. /// <returns>列表</returns>
  24. public PagedInfo<GetLogicNodeListVo> getLogicNodeList([FromQuery] PagerInfo page, [FromQuery] LogicNode param)
  25. {
  26. //拼装查询条件
  27. var predicate = Expressionable.Create<LogicNode>();
  28. predicate = predicate.AndIF(param.nodeKind > 0, m => m.nodeKind == param.nodeKind);
  29. var response = Queryable()
  30. .Where(predicate.ToExpression())
  31. .OrderByDescending(m => m.id)
  32. .ToPage<LogicNode, GetLogicNodeListVo>(page);
  33. return response;
  34. }
  35. /// <summary>
  36. /// 逻辑节点-执行
  37. /// </summary>
  38. /// <param name="param">参数请求体</param>
  39. /// <returns>执行结果</returns>
  40. public Dictionary<string, object> doLogicNode(DoLogicNodeDto param)
  41. {
  42. var input = LogicHelper.initNodeData("input");
  43. var output = LogicHelper.initNodeData("output");
  44. var json = LogicHelper.initNodeData("json");
  45. var data = new Dictionary<string, object>();
  46. data.Add("input", input);
  47. data.Add("output", output);
  48. data.Add("data", json);
  49. return data;
  50. }
  51. }
  52. }