WorkflowDetail.razor.cs 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. using AntDesign;
  2. using Microsoft.AspNetCore.Components;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Linq;
  6. using System.Threading.Tasks;
  7. using wispro.sp.web.Services;
  8. namespace wispro.sp.web.Pages.Workflow
  9. {
  10. public partial class WorkflowDetail
  11. {
  12. Components.FlowChart chart;
  13. entity.workflowDefine.Workflow workflow;
  14. List<entity.workflowDefine.Step> Steps;
  15. List<entity.workflowDefine.Action> Actions;
  16. List<entity.workflowDefine.TrasferCondition> Transfers;
  17. [Parameter]
  18. public string WorkflowId { get; set; }
  19. [Inject] protected MessageService _msgService { get; set; }
  20. [Inject] protected WorkflowService _wfService { get; set; }
  21. async Task InitData()
  22. {
  23. int Id = int.Parse(WorkflowId.ToString());
  24. workflow = await _wfService.GetWorkflow(Id);
  25. Steps = await _wfService.GetSteps(Id);
  26. Actions = await _wfService.GetActions(Id);
  27. Transfers = await _wfService.GetTransfers(Id);
  28. }
  29. protected async override Task OnInitializedAsync()
  30. {
  31. await base.OnInitializedAsync();
  32. #region Demo流程数据
  33. await InitData();
  34. //在此处添加获取流程数据栏位
  35. //workflow = new entity.workflowDefine.Workflow();
  36. //workflow.Name = "请假流程";
  37. //workflow.InitAction = new entity.workflowDefine.Action();
  38. //workflow.InitAction.Name = "填写请假条";
  39. //Steps = new List<entity.workflowDefine.Step>();
  40. //var step1 = new entity.workflowDefine.Step();
  41. //step1.Name = "部门主管申核";
  42. //step1.Id = 1;
  43. //Steps.Add(step1);
  44. //var step2 = new entity.workflowDefine.Step();
  45. //step2.Name = "总经理申核";
  46. //step2.Id = 2;
  47. //Steps.Add(step2);
  48. //var step3 = new entity.workflowDefine.Step();
  49. //step3.Name = "申核结果通知";
  50. //step3.Id = 3;
  51. //Steps.Add(step3);
  52. //var step4 = new entity.workflowDefine.Step();
  53. //step4.Name = "新步骤";
  54. //step4.Id = 4;
  55. //Steps.Add(step4);
  56. //var step5 = new entity.workflowDefine.Step();
  57. //step5.Name = "新步骤";
  58. //step5.Id = 5;
  59. //Steps.Add(step5);
  60. //workflow.EndStepId = 3;
  61. //Transfers = new List<entity.workflowDefine.TrasferCondition>();
  62. //var t = new entity.workflowDefine.TrasferCondition();
  63. //t.StepId = null;
  64. //t.nextStepId = 1;
  65. //Transfers.Add(t);
  66. //var t1 = new entity.workflowDefine.TrasferCondition();
  67. //t1.StepId = 1;
  68. //t1.nextStepId = 2;
  69. //Transfers.Add(t1);
  70. //var t2 = new entity.workflowDefine.TrasferCondition();
  71. //t2.StepId = 1;
  72. //t2.nextStepId = 3;
  73. //Transfers.Add(t2);
  74. //var t3 = new entity.workflowDefine.TrasferCondition();
  75. //t3.StepId = 2;
  76. //t3.nextStepId = 3;
  77. //Transfers.Add(t3);
  78. #endregion
  79. }
  80. void AddNewStep()
  81. {
  82. var newStep = new entity.workflowDefine.Step();
  83. newStep.Name = "新步骤";
  84. newStep.workflowId = workflow.Id;
  85. Steps.Add(newStep);
  86. chart.Refresh();
  87. }
  88. void OnClickStep(entity.workflowDefine.Step step)
  89. {
  90. _msgService.Info($"您点击了:【{step.Name}】步骤");
  91. }
  92. void OnClickAction(entity.workflowDefine.Action action)
  93. {
  94. _msgService.Info($"您点击了:【{action.Name}】操作");
  95. }
  96. void OnClickTransfer(entity.workflowDefine.TrasferCondition transfer)
  97. {
  98. _msgService.Info($"您点击了:从步骤【{transfer.StepId}】到步骤【{transfer.nextStepId}】的移转条件!");
  99. }
  100. }
  101. }