ModuleService.java 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255
  1. package jnpf.base.service;
  2. import jnpf.base.ActionResult;
  3. import jnpf.base.entity.ModuleEntity;
  4. import jnpf.base.model.module.*;
  5. import jnpf.base.vo.DownloadVO;
  6. import jnpf.exception.DataException;
  7. import java.util.List;
  8. import java.util.Map;
  9. /**
  10. * 系统功能
  11. *
  12. * @author JNPF开发平台组
  13. * @version V3.1.0
  14. * @copyright 引迈信息技术有限公司
  15. * @date 2019年9月27日 上午9:18
  16. */
  17. public interface ModuleService extends SuperService<ModuleEntity> {
  18. /**
  19. * 列表
  20. *
  21. * @param appCode 系统编码
  22. * @param category
  23. * @param keyword
  24. * @param parentId
  25. * @param release
  26. * @return ignore
  27. */
  28. List<ModuleEntity> getList(String appCode, String category, String keyword, Integer type, Integer enabledMark, String parentId, boolean release);
  29. /**
  30. * 创建
  31. *
  32. * @param entity 实体对象
  33. */
  34. void create(ModuleEntity entity);
  35. /**
  36. * 更新
  37. *
  38. * @param id 主键值
  39. * @param entity 实体对象
  40. * @return ignore
  41. */
  42. boolean update(String id, ModuleEntity entity);
  43. /**
  44. * 删除
  45. *
  46. * @param entity 实体对象
  47. */
  48. void delete(ModuleEntity entity);
  49. /**
  50. * 信息
  51. *
  52. * @param id 主键值
  53. * @return ignore
  54. */
  55. ModuleEntity getInfo(String id);
  56. /**
  57. * 列表
  58. *
  59. * @param filterFlowWork
  60. * @param moduleAuthorize
  61. * @param moduleUrlAddressAuthorize
  62. * @return ignore
  63. */
  64. List<ModuleEntity> getList(boolean filterFlowWork, List<String> moduleAuthorize, List<String> moduleUrlAddressAuthorize);
  65. /**
  66. * 列表
  67. *
  68. * @return ignore
  69. */
  70. List<ModuleEntity> getList();
  71. /**
  72. * 租户菜单列表
  73. *
  74. * @return ignore
  75. */
  76. List<ModuleEntity> getListTenant();
  77. /**
  78. * 通过id获取子菜单
  79. *
  80. * @param id 主键
  81. * @return ignore
  82. */
  83. List<ModuleEntity> getListByParentId(String id);
  84. /**
  85. * 信息
  86. *
  87. * @param id 主键值
  88. * @return ignore
  89. */
  90. ModuleEntity getInfo(String id, String systemId);
  91. /**
  92. * 信息
  93. *
  94. * @param id 主键值
  95. * @return ignore
  96. */
  97. ModuleEntity getInfo(String id, String systemId, String parentId);
  98. /**
  99. * 验证名称
  100. *
  101. * @param entity ignore
  102. * @param category 分类
  103. * @param systemId 分类
  104. * @return ignore
  105. */
  106. boolean isExistByFullName(ModuleEntity entity, String category, String systemId);
  107. /**
  108. * 验证编码
  109. *
  110. * @param entity 实体
  111. * @param category 分类
  112. * @param systemId 分类
  113. * @return ignore
  114. */
  115. boolean isExistByEnCode(ModuleEntity entity, String category, String systemId);
  116. /**
  117. * 路由地址判重
  118. *
  119. * @param entity 实体
  120. * @param category 分类
  121. * @param systemId 分类
  122. * @return ignore
  123. */
  124. boolean isExistByAddress(ModuleEntity entity, String category, String systemId);
  125. /**
  126. * 删除
  127. *
  128. * @param systemId 实体对象
  129. */
  130. void deleteBySystemId(String systemId);
  131. /**
  132. * 导出数据
  133. *
  134. * @param id 主键
  135. * @return DownloadVO ignore
  136. */
  137. DownloadVO exportData(String id);
  138. /**
  139. * 导入数据
  140. *
  141. * @param exportModel 导出模型
  142. * @param type
  143. * @return ignore
  144. * @throws DataException ignore
  145. */
  146. ActionResult importData(ModuleExportModel exportModel, Integer type) throws DataException;
  147. /**
  148. * 功能设计发布功能自动创建app pc菜单
  149. *
  150. * @return
  151. */
  152. List<ModuleEntity> getModuleList(String visualId);
  153. /**
  154. * 通过系统id获取菜单
  155. *
  156. * @param ids
  157. * @param moduleAuthorize
  158. * @param moduleUrlAddressAuthorize
  159. * @return
  160. */
  161. List<ModuleEntity> getModuleBySystemIds(List<String> ids, List<String> moduleAuthorize, List<String> moduleUrlAddressAuthorize, Integer type);
  162. List<ModuleEntity> getModuleByIds(List<String> moduleIds);
  163. /**
  164. * 通过ids获取系统菜单
  165. *
  166. * @param enCodeList
  167. * @return
  168. */
  169. List<ModuleEntity> getListByEnCode(List<String> enCodeList);
  170. /**
  171. * @param mark
  172. * @param id
  173. * @param moduleAuthorize
  174. * @param moduleUrlAddressAuthorize
  175. * @return
  176. */
  177. List<ModuleEntity> findModuleAdmin(int mark, String id, List<String> moduleAuthorize, List<String> moduleUrlAddressAuthorize);
  178. void getParentModule(List<ModuleEntity> data, Map<String, ModuleEntity> moduleEntityMap);
  179. /**
  180. * 通过urlAddressList找id
  181. *
  182. * @param ids
  183. * @param urlAddressList
  184. * @return
  185. */
  186. List<ModuleEntity> getListByUrlAddress(List<String> ids, List<String> urlAddressList);
  187. /**
  188. * 功能发布app pc菜单名称列表
  189. *
  190. * @return
  191. */
  192. ModuleNameVO getModuleNameList(String visualId);
  193. /**
  194. * 获取表单关联的菜单数据列表
  195. *
  196. * @param page
  197. * @return ignore
  198. */
  199. List<ModuleSelectorVo> getFormMenuList(ModulePagination page);
  200. /**
  201. * 获取应用菜单列表
  202. *
  203. * @param type 3代表表单
  204. * @param webType 页面类型(1、纯表单,2、表单加列表,4、数据视图)
  205. * @param categorys 菜单类型(web,app)
  206. * @return
  207. */
  208. List<MenuSelectAllVO> getSystemMenu(Integer type, List<Integer> webType, List<String> categorys);
  209. /**
  210. * 根据参数查询菜单分页数据
  211. *
  212. * @param pagination
  213. * @return
  214. */
  215. List<ModuleSelectorVo> getPageList(ModulePagination pagination);
  216. /**
  217. * 创建审批中心菜单
  218. *
  219. * @param systemId
  220. */
  221. void createWorkMenu(String systemId);
  222. void setAutoEnCode(ModuleEntity entity);
  223. }