类 CrudHelper
java.lang.Object
net.sohelp.boot.engine.web.CrudHelper
引擎数据执行CRUD操作
- 从以下版本开始:
- 2024/8/23 14:42
- 作者:
- AaronFung
-
构造器概要
构造器 -
方法概要
修饰符和类型方法说明void根据给定的引用ID和业务对象,创建或更新业务实体。void删除指定引用ID对应的数据记录获取指定模块下的业务实体详情根据给定的引用ID和ID获取对应的对象数据初始化方法,用于初始化并返回一个包含业务实体数据的Map根据模块ID和参数分页查询数据根据外键分页查询数据void保存数据到数据库saveFormByCrudUpdater(String entityName, Map<String, Object> recordMap) 通过CRUD更新器保存表单数据saveGrid(String entityName, String fkName, Object fkValue, CrudUpdaterVO crudUpdaterVO) 通过CRUD更新器批量保存网格数据(支持增删改操作)saveGrid(String entityName, CrudUpdaterVO crudUpdaterVO) 通过CRUD更新器保存网格数据根据引用ID和参数映射查询实体数据列表void更新模块数据
-
构造器详细资料
-
CrudHelper
public CrudHelper()
-
-
方法详细资料
-
saveGrid
public CrudUpdaterVO saveGrid(String entityName, CrudUpdaterVO crudUpdaterVO) throws TokenAuthenticationException, ScriptException, BusiException, SQLException, EntityException 通过CRUD更新器保存网格数据- 参数:
entityName- 实体名称crudUpdaterVO- CRUD更新器值对象,包含需要更新的数据- 返回:
- 更新后的CRUD更新器值对象
- 抛出:
TokenAuthenticationException- 令牌认证异常ScriptException- 脚本执行异常BusiException- 业务异常SQLException- 数据库SQL异常EntityException- 实体异常
-
saveGrid
public CrudUpdaterVO saveGrid(String entityName, String fkName, Object fkValue, CrudUpdaterVO crudUpdaterVO) throws BusiException, SQLException, TokenAuthenticationException, ScriptException, EntityException 通过CRUD更新器批量保存网格数据(支持增删改操作)- 参数:
entityName- 实体名称,用于确定操作的数据表fkName- 外键字段名称,用于关联插入数据fkValue- 外键字段值,用于设置关联字段值crudUpdaterVO- 包含增删改操作的CRUD更新器对象- 抛出:
BusiException- 业务异常SQLException- 数据库操作异常TokenAuthenticationException- 令牌认证异常ScriptException- 脚本执行异常EntityException- 实体处理异常功能说明: 1. 批量删除操作:根据crudUpdaterVO中的deleted数组执行删除 2. 批量更新操作:处理更新数据并执行公式计算 3. 批量插入操作:处理插入数据(包含ID生成、外键设置、自动编号等)
-
saveFormByCrudUpdater
public Map<String,Object> saveFormByCrudUpdater(String entityName, Map<String, Object> recordMap) throws BusiException, SQLException, TokenAuthenticationException, EntityException通过CRUD更新器保存表单数据根据记录Map中的主键ID判断是新增还是更新操作: - 当ID为空或为"0"时,执行新增操作:生成新ID、格式化插入数据、自动编号处理、插入记录 - 当ID存在时,执行更新操作:格式化更新数据、更新记录
- 参数:
entityName- 实体名称,对应数据库表名recordMap- 记录数据Map,包含要保存的字段值,其中"id"字段表示主键ID- 抛出:
BusiException- 业务异常SQLException- 数据库操作异常TokenAuthenticationException- 令牌认证异常EntityException- 实体处理异常
-
save
public void save(String refid, com.alibaba.fastjson.JSONObject jsonObject) throws BusiException, SQLException, EntityException, TokenAuthenticationException, ScriptException 保存数据到数据库- 参数:
refid- 模块标识jsonObject- 要保存的数据- 抛出:
BusiException- 业务异常SQLException- SQL异常EntityException- 实体异常TokenAuthenticationException- 令牌认证异常ScriptException- 脚本异常
-
update
public void update(String refid, com.alibaba.fastjson.JSONObject jsonObject) throws BusiException, SQLException, EntityException, TokenAuthenticationException 更新模块数据- 参数:
refid- 模块IDjsonObject- 需要更新的数据对象- 抛出:
BusiException- 业务异常SQLException- SQL异常EntityException- 实体异常TokenAuthenticationException- 令牌认证异常
-
create
public void create(String refid, com.alibaba.fastjson.JSONObject jsonObject) throws BusiException, SQLException, EntityException, TokenAuthenticationException 根据给定的引用ID和业务对象,创建或更新业务实体。- 参数:
refid- 业务模块的引用IDjsonObject- 包含业务对象信息的JSON对象- 抛出:
BusiException- 业务异常SQLException- SQL异常EntityException- 实体异常TokenAuthenticationException- 令牌认证异常
-
pageByFk
public Pager<Map<String,Object>> pageByFk(String refid, Object fkId) throws BusiException, SQLException, TokenAuthenticationException, EntityException 根据外键分页查询数据- 参数:
refid- 引用ID,用于标识需要查询的模块fkId- 外键ID,用于分页查询的数据- 返回:
- 分页查询结果
- 抛出:
BusiException- 当参数不符合要求时抛出SQLException- 当数据库操作出现异常时抛出TokenAuthenticationExceptionEntityException
-
page
public Pager<Map<String,Object>> page(String refid, Map<String, Object> paramMap) throws BusiException, SQLException, TokenAuthenticationException, EntityException根据模块ID和参数分页查询数据- 参数:
refid- 模块IDparamMap- 查询参数- 返回:
- 分页查询结果
- 抛出:
BusiException- 业务异常SQLException- SQL异常TokenAuthenticationException- 认证异常EntityException
-
toList
public List<Map<String,Object>> toList(String refid, Map<String, Object> paramMap) throws BusiException, SQLException, TokenAuthenticationException, EntityException根据引用ID和参数映射查询实体数据列表功能流程: 1. 验证模块操作权限并获取模块信息 2. 根据引用类型获取对应的网格配置 3. 检查实体是否存在并支持逻辑删除条件 4. 构建查询条件并执行SQL查询 5. 格式化查询结果后返回
- 参数:
refid- 引用ID,用于定位实体和网格配置paramMap- 查询参数映射,用于动态条件替换- 返回:
- 包含实体数据的列表,每个元素为Map结构
- 抛出:
BusiException- 当模块/网格/实体不存在时抛出SQLException- 当数据库操作异常时抛出TokenAuthenticationException- 当认证失败时抛出EntityException- 当实体处理异常时抛出
-
initial
public Map<String,Object> initial(String refid) throws BusiException, SQLException, EntityException, TokenAuthenticationException 初始化方法,用于初始化并返回一个包含业务实体数据的Map- 参数:
refid- 模块标识- 返回:
- 包含业务实体数据的Map
- 抛出:
BusiException- 业务异常SQLException- SQL异常EntityException- 实体异常TokenAuthenticationException- 令牌认证异常
-
getById
根据给定的引用ID和ID获取对应的对象数据- 参数:
refid- 模块引用IDid- 对象ID- 返回:
- 包含对象数据的Map
- 抛出:
BusiException- 业务异常SQLException- SQL异常
-
detail
获取指定模块下的业务实体详情- 参数:
refid- 模块标识id- 业务实体ID- 返回:
- 包含业务实体详情信息的Map对象
- 抛出:
BusiException- 业务异常SQLException- SQL异常
-
delete
删除指定引用ID对应的数据记录- 参数:
refid- 引用IDids- 待删除的数据ID列表- 抛出:
BusiException- 业务异常SQLException- 数据库异常
-