类 ModuleService
java.lang.Object
net.sohelp.boot.engine.web.service.ModuleService
模块服务
- 从以下版本开始:
- 2024/7/19 20:15
- 作者:
- AaronFung
-
构造器概要
构造器 -
方法概要
修饰符和类型方法说明void复制指定应用和模块到新的应用和模块boolean检查指定应用下的模块是否存在。getEntityForm(String aliasName, ModuleVO moduleVO) 根据引用ID获取对应的表单视图对象getEntityRef(String refid) 根据引用ID获取实体引用对象 通过refid找到指定的EntityRefVOgetEntityRef(String aliasName, ModuleVO moduleVO) 根据别名从模块中获取实体引用对象根据引用ID获取模块信息根据应用名称和模块名称获取模块信息getModuleByUUID(String moduleUUID) 根据模块UUID获取模块信息getPrimaryEntityRef(ModuleVO moduleVO) 根据模块ID获取主要实体引用信息list()获取模块列表listEntityForm(ModuleVO moduleVO) 根据模块信息获取关联的实体表单列表listForeignKeyEntityRef(ModuleVO moduleVO) 根据引用ID获取外键实体引用根据应用名称和模块名称获取表单列表listModule(String appName) 根据应用名称获取对应的模块列表void移动模块到新的应用下void删除指定应用和模块下的资源文件void重命名模块void将指定应用下的模块另存为新模块voidsaveModule(ModuleVO moduleVO) 保存模块信息到指定文件路径
-
构造器详细资料
-
ModuleService
public ModuleService()
-
-
方法详细资料
-
getModule
根据引用ID获取模块信息- 参数:
refid- 模块引用ID,用于查找对应的模块引用信息- 返回:
- 包含模块信息的ModuleVO对象
- 抛出:
BusiException- 业务异常,当获取模块引用或模块信息时发生业务错误时抛出SQLException- 数据库异常,当访问数据库发生错误时抛出
-
saveAs
public void saveAs(String appName, String moduleName, String newModuleName) throws SQLException, BusiException 将指定应用下的模块另存为新模块该方法会检查目标路径下是否已存在同名模块,若存在则抛出业务异常; 若不存在则将原模块下的所有资源复制到新路径下,并更新资源属性(ID、UUID、模块名等)。
- 参数:
appName- 应用名称,用于定位应用根目录moduleName- 原模块名称,用于定位待复制的模块newModuleName- 新模块名称,用于指定目标模块名称- 抛出:
SQLException- 当数据库操作异常时抛出BusiException- 当目标模块已存在时抛出业务异常
-
copy
public void copy(String appName, String moduleName, String newAppName, String newModuleName) throws SQLException, BusiException 复制指定应用和模块到新的应用和模块该函数会检查目标路径下是否已存在同名模块,若存在则抛出业务异常; 若不存在,则将源模块下的所有资源复制到目标路径,并更新相关属性(如ID、应用名、模块名、创建时间等)。
- 参数:
appName- 源应用名称moduleName- 源模块名称newAppName- 目标应用名称newModuleName- 目标模块名称- 抛出:
SQLException- 当数据库操作发生异常时抛出BusiException- 当目标模块已存在时抛出业务异常
-
remove
删除指定应用和模块下的资源文件- 参数:
appName- 应用名称,用于构建文件路径moduleName- 模块名称,用于构建文件路径- 抛出:
BusiException- 当删除操作失败时抛出业务异常SQLException
-
saveModule
保存模块信息到指定文件路径- 参数:
moduleVO- 包含模块信息的值对象,包含应用名称和模块名称等属性- 抛出:
BusiException- 当业务处理出现异常时抛出SQLException- 当数据库操作出现异常时抛出
-
getModuleByUUID
根据模块UUID获取模块信息- 参数:
moduleUUID- 模块的唯一标识符UUID,不能为null- 返回:
- 匹配UUID的ModuleVO对象,如果不存在则返回null
- 抛出:
BusiException- 当moduleUUID为null时抛出业务异常SQLException- 当数据库操作发生异常时抛出
-
rename
public void rename(String appName, String moduleName, String newModuleName) throws SQLException, BusiException 重命名模块该方法将指定应用下的模块重命名为新名称,并更新相关资源路径。 如果新模块名称已存在则抛出业务异常,否则完成重命名操作。
- 参数:
appName- 应用名称moduleName- 原模块名称newModuleName- 新模块名称- 抛出:
SQLException- 当数据库操作异常时抛出BusiException- 当新模块名称已存在时抛出业务异常
-
move
public void move(String appName, String moduleName, String newAppName) throws SQLException, BusiException 移动模块到新的应用下该方法会检查目标路径下是否已存在同名模块,若存在则抛出业务异常; 若不存在则将源模块下的所有资源移动到目标路径下,并更新资源信息。
- 参数:
appName- 源应用名称moduleName- 模块名称newAppName- 目标应用名称- 抛出:
SQLException- 数据库操作异常BusiException- 业务异常(当目标路径下已存在同名模块时抛出)
-
exist
检查指定应用下的模块是否存在。- 参数:
appName- 应用名称moduleName- 模块名称- 返回:
- 如果模块存在,则返回 true;否则返回 false
-
list
获取模块列表- 返回:
- 模块列表
- 抛出:
SQLException- 如果数据库操作出现错误
-
listModule
根据应用名称获取对应的模块列表- 参数:
appName- 应用名称- 返回:
- 返回应用对应的模块列表,每个模块为一个JSONObject对象
- 抛出:
SQLException
-
getModule
根据应用名称和模块名称获取模块信息函数会从指定路径读取模块配置文件,并设置模块及其关联权限、实体引用和服务的应用名称和模块名称
- 参数:
appName- 应用名称,用于定位模块所在应用moduleName- 模块名称,用于定位具体模块- 返回:
- 包含模块信息的ModuleVO对象,其中已设置应用名称和模块名称
- 抛出:
BusiException- 当业务处理出现异常时抛出SQLException- 当数据库操作出现异常时抛出
-
getEntityRef
public EntityRefVO getEntityRef(String aliasName, ModuleVO moduleVO) throws BusiException, SQLException 根据别名从模块中获取实体引用对象- 参数:
aliasName- 要查找的实体引用别名,如果是default 返回主表moduleVO- 模块信息对象,包含实体引用列表- 返回:
- 匹配别名的实体引用对象,若未找到或别名为null则返回null
- 抛出:
BusiException- 业务异常SQLException- 数据库操作异常
-
getEntityForm
public FormVO getEntityForm(String aliasName, ModuleVO moduleVO) throws BusiException, SQLException, EntityException 根据引用ID获取对应的表单视图对象- 参数:
aliasName- 别名- 返回:
- 对应的表单视图对象(FormVO),如果引用不存在则返回null
- 抛出:
BusiException- 业务异常SQLException- 数据库操作异常EntityException
-
getPrimaryEntityRef
根据模块ID获取主要实体引用信息- 参数:
moduleVO- 模块- 返回:
- 主要实体引用信息对象
- 抛出:
BusiException- 业务异常SQLException- SQL异常
-
listEntityForm
public List<FormVO> listEntityForm(ModuleVO moduleVO) throws BusiException, SQLException, EntityException 根据模块信息获取关联的实体表单列表- 参数:
moduleVO- 模块信息对象,包含实体引用信息 如果为null,则返回空列表- 返回:
- 包含所有关联实体表单的列表 如果某个实体没有对应的表单,则跳过该实体
- 抛出:
BusiException- 业务异常SQLException- 数据库操作异常EntityException
-
listForm
根据应用名称和模块名称获取表单列表- 参数:
appName- 应用名称,用于定位特定应用moduleName- 模块名称,用于定位特定模块- 返回:
- 包含与指定应用和模块关联的所有表单的列表
- 抛出:
SQLException- 当数据库操作出现异常时抛出
-
listForeignKeyEntityRef
public List<EntityRefVO> listForeignKeyEntityRef(ModuleVO moduleVO) throws BusiException, SQLException 根据引用ID获取外键实体引用- 参数:
moduleVO- 引用ID,用于定位模块引用- 返回:
- 返回类型为1的EntityRefVO对象,如果未找到则返回null
- 抛出:
BusiException- 当模块不存在时抛出业务异常SQLException- 当数据库操作异常时抛出
-
getEntityRef
根据引用ID获取实体引用对象 通过refid找到指定的EntityRefVO- 参数:
refid- 引用ID,用于查找对应的实体引用- 返回:
- 匹配的EntityRefVO对象,如果不存在则返回null
- 抛出:
BusiException- 当模块不存在时抛出业务异常SQLException- 当数据库操作出现异常时抛出
-