WorkflowDefine.razor.cs 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159
  1. using AntDesign;
  2. using AntDesign.TableModels;
  3. using Microsoft.AspNetCore.Components;
  4. using System;
  5. using System.Collections.Generic;
  6. using System.Linq;
  7. using System.Threading.Tasks;
  8. using wispro.sp.web.Services;
  9. namespace wispro.sp.web.Pages.Workflow
  10. {
  11. public partial class WorkflowDefine
  12. {
  13. private List<wispro.sp.entity.workflowDefine.Workflow> workflows = new List<wispro.sp.entity.workflowDefine.Workflow>();
  14. ITable table;
  15. int _pageIndex = 1;
  16. int _pageSize = 10;
  17. int _total = 0;
  18. bool _loading = false;
  19. bool isAdd = false;
  20. entity.workflowDefine.Workflow EditingObj = null;
  21. share.ActionObject InitAction = null;
  22. bool _visible = false;
  23. bool _initModalVisible = false;
  24. List<wispro.sp.entity.EnumnDescription<wispro.sp.entity.workflowDefine.FieldType>> FieldTypes
  25. = entity.EnumHelper.getEnumDescriptionDic<wispro.sp.entity.workflowDefine.FieldType>();
  26. entity.workflowDefine.FieldType fieldType = entity.workflowDefine.FieldType.ActionInputValue;
  27. [Inject] protected IUserService UserService { get; set; }
  28. [Inject] protected WorkflowService workflowService { get; set; }
  29. [Inject] protected MessageService _msgService { get; set; }
  30. [Inject] protected NavigationManager navigation { get; set; }
  31. protected override async System.Threading.Tasks.Task OnInitializedAsync()
  32. {
  33. await base.OnInitializedAsync();
  34. workflows = await workflowService.getAllWorkflows();
  35. }
  36. private void AddNew()
  37. {
  38. isAdd = true;
  39. EditingObj = new entity.workflowDefine.Workflow();
  40. InitAction = new share.ActionObject();
  41. InitAction.Action = new entity.workflowDefine.Action();
  42. InitAction.InputValueSettingObjects = new List<share.InputValueSettingObject>();
  43. //Console.WriteLine(System.Text.Json.JsonSerializer.Serialize(InitAction));
  44. _visible = true;
  45. }
  46. async Task HandleOk()
  47. {
  48. if (EditingObj.Id ==0)
  49. {
  50. EditingObj.CreateTime = DateTime.Now;
  51. var retResponse = await workflowService.AddWorkflow(EditingObj,InitAction);
  52. if (retResponse.Success)
  53. {
  54. workflows = await workflowService.getAllWorkflows();
  55. _visible = false;
  56. StateHasChanged();
  57. }
  58. else
  59. {
  60. await _msgService.Error(retResponse.ErrorMessage);
  61. }
  62. }
  63. }
  64. void HandleCancel()
  65. {
  66. _visible = false;
  67. }
  68. public int serialNumber(int pageIndex, int pageSize, int Id)
  69. {
  70. int iIndex = 0;
  71. foreach (wispro.sp.entity.workflowDefine.Workflow sf in workflows)
  72. {
  73. iIndex++;
  74. if (sf.Id == Id)
  75. {
  76. break;
  77. }
  78. }
  79. return iIndex;
  80. }
  81. wispro.sp.entity.workflowDefine.Workflow SelectedWorkflow;
  82. Dictionary<string, object> OnRow(RowData<wispro.sp.entity.workflowDefine.Workflow> row) => new()
  83. {
  84. ["id"] = row.Data.Id,
  85. ["onclick"] = ((Action)delegate
  86. {
  87. SelectedWorkflow = row.Data;
  88. //Console.WriteLine($"row {row.Data.Name} was clicked");
  89. })
  90. };
  91. async Task Delete(entity.workflowDefine.Workflow workflow)
  92. {
  93. var ret = await workflowService.Delete(workflow.Id);
  94. if (ret.Success)
  95. {
  96. workflows.Remove(workflow);
  97. }
  98. else
  99. {
  100. await _msgService.Error(ret.ErrorMessage);
  101. }
  102. }
  103. void Detail(int Id)
  104. {
  105. navigation.NavigateTo($"/Workflow/Detail/{Id}");
  106. }
  107. //IDictionary<entity.workflowDefine.Workflow, List<entity.workflowDefine.InputValueSetting>> dicFieldSettings
  108. // = new Dictionary<entity.workflowDefine.Workflow, List<entity.workflowDefine.InputValueSetting>>();
  109. //void InitFieldSetting(entity.workflowDefine.Workflow workflow)
  110. //{
  111. // if (dicFieldSettings.ContainsKey(workflow))
  112. // {
  113. // InitInputValues = dicFieldSettings[workflow];
  114. // }
  115. // else
  116. // {
  117. // InitInputValues = new List<entity.workflowDefine.InputValueSetting>();
  118. // dicFieldSettings.Add(workflow,InitInputValues);
  119. // }
  120. // _initModalVisible = true;
  121. //}
  122. }
  123. }