You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

189 lines
6.6 KiB

  1. using Learun.Util;
  2. using System;
  3. using System.Collections.Generic;
  4. namespace Learun.Application.WorkFlow
  5. {
  6. /// <summary>
  7. /// 版 本 Learun-ADMS V7.0.3 力软敏捷开发框架
  8. /// Copyright (c) 2013-2018 上海力软信息技术有限公司
  9. /// 创建人:力软-框架开发组
  10. /// 日 期:2018.12.06
  11. /// 描 述:工作流模板(新)
  12. /// </summary>
  13. public class NWFSchemeBLL: NWFSchemeIBLL
  14. {
  15. private NWFSchemeService nWFSchemeService = new NWFSchemeService();
  16. #region 获取数据
  17. /// <summary>
  18. /// 获取流程分页列表
  19. /// </summary>
  20. /// <param name="pagination">分页参数</param>
  21. /// <param name="queryJson">查询条件</param>
  22. /// <returns></returns>
  23. public IEnumerable<NWFSchemeInfoEntity> GetInfoPageList(Pagination pagination, string queryJson)
  24. {
  25. return nWFSchemeService.GetInfoPageList(pagination, queryJson);
  26. }
  27. /// <summary>
  28. /// 获取自定义流程列表
  29. /// </summary>
  30. /// <param name="userInfo">用户信息</param>
  31. /// <returns></returns>
  32. public IEnumerable<NWFSchemeInfoEntity> GetInfoList(UserInfo userInfo)
  33. {
  34. return nWFSchemeService.GetInfoList(userInfo);
  35. }
  36. /// <summary>
  37. /// 获取流程列表
  38. /// </summary>
  39. /// <param name="userInfo">用户信息</param>
  40. /// <returns></returns>
  41. public IEnumerable<NWFSchemeInfoEntity> GetInfoList()
  42. {
  43. return nWFSchemeService.GetInfoList();
  44. }
  45. /// <summary>
  46. /// 获取流程模板分页列表
  47. /// </summary>
  48. /// <param name="pagination">分页参数</param>
  49. /// <param name="userInfo">登录者信息</param>
  50. /// <param name="queryJson">查询参数</param>
  51. /// <returns></returns>
  52. public IEnumerable<NWFSchemeInfoEntity> GetAppInfoPageList(Pagination pagination, UserInfo userInfo, string queryJson)
  53. {
  54. return nWFSchemeService.GetAppInfoPageList(pagination, userInfo, queryJson);
  55. }
  56. /// <summary>
  57. /// 获取模板基础信息的实体
  58. /// </summary>
  59. /// <param name="keyValue">主键</param>
  60. /// <returns></returns>
  61. public NWFSchemeInfoEntity GetInfoEntity(string keyValue)
  62. {
  63. return nWFSchemeService.GetInfoEntity(keyValue);
  64. }
  65. /// <summary>
  66. /// 获取模板基础信息的实体
  67. /// </summary>
  68. /// <param name="code">流程编号</param>
  69. /// <returns></returns>
  70. public NWFSchemeInfoEntity GetInfoEntityByCode(string code)
  71. {
  72. return nWFSchemeService.GetInfoEntityByCode(code);
  73. }
  74. /// <summary>
  75. /// 获取流程模板权限列表
  76. /// </summary>
  77. /// <param name="schemeInfoId">模板信息主键</param>
  78. /// <returns></returns>
  79. public IEnumerable<NWFSchemeAuthEntity> GetAuthList(string schemeInfoId)
  80. {
  81. return nWFSchemeService.GetAuthList(schemeInfoId);
  82. }
  83. /// <summary>
  84. /// 获取模板列表
  85. /// </summary>
  86. /// <param name="pagination">分页参数</param>
  87. /// <param name="schemeInfoId">流程信息主键</param>
  88. /// <returns></returns>
  89. public IEnumerable<NWFSchemeEntity> GetSchemePageList(Pagination pagination, string schemeInfoId)
  90. {
  91. return nWFSchemeService.GetSchemePageList(pagination, schemeInfoId);
  92. }
  93. /// <summary>
  94. /// 获取模板的实体
  95. /// </summary>
  96. /// <param name="keyValue">主键</param>
  97. /// <returns></returns>
  98. public NWFSchemeEntity GetSchemeEntity(string keyValue)
  99. {
  100. return nWFSchemeService.GetSchemeEntity(keyValue);
  101. }
  102. #endregion
  103. #region 提交数据
  104. /// <summary>
  105. /// 虚拟删除模板信息
  106. /// </summary>
  107. /// <param name="keyValue">主键</param>
  108. public void DeleteEntity(string keyValue)
  109. {
  110. nWFSchemeService.DeleteEntity(keyValue);
  111. }
  112. /// <summary>
  113. /// 保存模板信息
  114. /// </summary>
  115. /// <param name="keyValue">主键</param>
  116. /// <param name="infoEntity">模板基础信息</param>
  117. /// <param name="schemeEntity">模板信息</param>
  118. /// <param name="authList">模板权限信息</param>
  119. public void SaveEntity(string keyValue, NWFSchemeInfoEntity infoEntity, NWFSchemeEntity schemeEntity, List<NWFSchemeAuthEntity> authList)
  120. {
  121. if (!string.IsNullOrEmpty(keyValue))
  122. {
  123. NWFSchemeEntity oldNWFSchemeEntity = GetSchemeEntity(infoEntity.F_SchemeId);
  124. if (oldNWFSchemeEntity != null)
  125. {
  126. if (oldNWFSchemeEntity.F_Content == schemeEntity.F_Content && oldNWFSchemeEntity.F_Type == schemeEntity.F_Type)
  127. {
  128. schemeEntity = null;
  129. }
  130. }
  131. }
  132. nWFSchemeService.SaveEntity(keyValue, infoEntity, schemeEntity, authList);
  133. }
  134. /// <summary>
  135. /// 更新流程模板
  136. /// </summary>
  137. /// <param name="schemeInfoId">模板信息主键</param>
  138. /// <param name="schemeId">模板主键</param>
  139. public void UpdateScheme(string schemeInfoId, string schemeId)
  140. {
  141. nWFSchemeService.UpdateScheme(schemeInfoId, schemeId);
  142. }
  143. /// <summary>
  144. /// 更新自定义表单模板状态
  145. /// </summary>
  146. /// <param name="schemeInfoId">模板信息主键</param>
  147. /// <param name="state">状态1启用0禁用</param>
  148. public void UpdateState(string schemeInfoId, int state)
  149. {
  150. nWFSchemeService.UpdateState(schemeInfoId, state);
  151. }
  152. #endregion
  153. #region 扩展数据
  154. /// <summary>
  155. /// 获取流程模板使用次数列表
  156. /// </summary>
  157. /// <param name="queryJson">查询参数</param>
  158. /// <returns></returns>
  159. public IEnumerable<NWFSchemeInfoEntity> GetNWFSchemeUseList(string queryJson)
  160. {
  161. try
  162. {
  163. return nWFSchemeService.GetNWFSchemeUseList(queryJson);
  164. }
  165. catch (Exception ex)
  166. {
  167. if (ex is ExceptionEx)
  168. {
  169. throw;
  170. }
  171. else
  172. {
  173. throw ExceptionEx.ThrowBusinessException(ex);
  174. }
  175. }
  176. }
  177. #endregion
  178. }
  179. }