test: 清理夹具覆盖二期单据表;应用场地单 DDL
This commit is contained in:
@@ -170,14 +170,41 @@ public class ApprovalTestData {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void deleteInstance(Long instanceId) {
|
private void deleteInstance(Long instanceId) {
|
||||||
master.update("DELETE FROM approval_attachment WHERE instance_id = ?", instanceId);
|
for (String table : INSTANCE_CHILD_TABLES) {
|
||||||
master.update("DELETE FROM approval_record WHERE instance_id = ?", instanceId);
|
try {
|
||||||
master.update("DELETE FROM approval_task WHERE instance_id = ?", instanceId);
|
master.update("DELETE FROM " + table + " WHERE instance_id = ?", instanceId);
|
||||||
master.update("DELETE FROM approval_completion_form WHERE instance_id = ?", instanceId);
|
} catch (Exception ignored) {
|
||||||
master.update("DELETE FROM approval_coordination_form WHERE instance_id = ?", instanceId);
|
// 该单据的表尚未在当前环境创建:跳过,不阻断清理
|
||||||
|
}
|
||||||
|
}
|
||||||
master.update("DELETE FROM approval_instance WHERE id = ?", instanceId);
|
master.update("DELETE FROM approval_instance WHERE id = ?", instanceId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 按实例外键清理的子表清单:新增单据表时在此追加,否则用例数据会残留在共享库。
|
||||||
|
*
|
||||||
|
* <p>明细子表也带 {@code instance_id},与业务主表一样按实例删除。</p>
|
||||||
|
*/
|
||||||
|
private static final String[] INSTANCE_CHILD_TABLES = {
|
||||||
|
"approval_attachment",
|
||||||
|
"approval_field_change",
|
||||||
|
"approval_record",
|
||||||
|
"approval_task",
|
||||||
|
"approval_completion_form",
|
||||||
|
"approval_coordination_form",
|
||||||
|
// 二期单据(表不存在时下面会跳过)
|
||||||
|
"approval_settlement_item",
|
||||||
|
"approval_settlement_form",
|
||||||
|
"approval_receipt_form",
|
||||||
|
"approval_vehicle_item",
|
||||||
|
"approval_vehicle_form",
|
||||||
|
"approval_venue_form",
|
||||||
|
"approval_coupon_item",
|
||||||
|
"approval_coupon_form",
|
||||||
|
"approval_facility_item",
|
||||||
|
"approval_facility_form"
|
||||||
|
};
|
||||||
|
|
||||||
private Integer insert(JdbcTemplate jdbcTemplate, String sql, Object... args) {
|
private Integer insert(JdbcTemplate jdbcTemplate, String sql, Object... args) {
|
||||||
KeyHolder keyHolder = new GeneratedKeyHolder();
|
KeyHolder keyHolder = new GeneratedKeyHolder();
|
||||||
jdbcTemplate.update(connection -> {
|
jdbcTemplate.update(connection -> {
|
||||||
|
|||||||
Reference in New Issue
Block a user