修正专项核查拓展查询项目参数绑定
This commit is contained in:
@@ -491,6 +491,7 @@
|
|||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="selectExtendedPurchasePage" resultMap="ExtendedPurchaseListItemResultMap">
|
<select id="selectExtendedPurchasePage" resultMap="ExtendedPurchaseListItemResultMap">
|
||||||
|
<bind name="projectId" value="query.projectId"/>
|
||||||
select
|
select
|
||||||
p.purchase_id,
|
p.purchase_id,
|
||||||
p.project_name,
|
p.project_name,
|
||||||
@@ -574,6 +575,7 @@
|
|||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="selectExtendedRecruitmentPage" resultMap="ExtendedRecruitmentListItemResultMap">
|
<select id="selectExtendedRecruitmentPage" resultMap="ExtendedRecruitmentListItemResultMap">
|
||||||
|
<bind name="projectId" value="query.projectId"/>
|
||||||
select distinct r.recruit_id,
|
select distinct r.recruit_id,
|
||||||
r.recruit_name,
|
r.recruit_name,
|
||||||
r.pos_name,
|
r.pos_name,
|
||||||
@@ -644,6 +646,7 @@
|
|||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="selectExtendedTransferPage" resultMap="ExtendedTransferListItemResultMap">
|
<select id="selectExtendedTransferPage" resultMap="ExtendedTransferListItemResultMap">
|
||||||
|
<bind name="projectId" value="query.projectId"/>
|
||||||
select
|
select
|
||||||
t.id,
|
t.id,
|
||||||
s.name as staff_name,
|
s.name as staff_name,
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ class CcdiProjectSpecialCheckExtendedPurchaseSqlTest {
|
|||||||
String detailSql = extractSelect(xml, "selectExtendedPurchaseDetail");
|
String detailSql = extractSelect(xml, "selectExtendedPurchaseDetail");
|
||||||
|
|
||||||
assertTrue(listSql.contains("projectEmployeeScopeSql"));
|
assertTrue(listSql.contains("projectEmployeeScopeSql"));
|
||||||
|
assertTrue(listSql.contains("name=\"projectId\" value=\"query.projectId\""));
|
||||||
assertTrue(listSql.contains("select distinct scope.staff_name"));
|
assertTrue(listSql.contains("select distinct scope.staff_name"));
|
||||||
assertTrue(listSql.contains("applicant_name"));
|
assertTrue(listSql.contains("applicant_name"));
|
||||||
assertTrue(listSql.contains("apply_date"));
|
assertTrue(listSql.contains("apply_date"));
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ class CcdiProjectSpecialCheckExtendedRecruitmentSqlTest {
|
|||||||
String detailSql = extractSelect(xml, "selectExtendedRecruitmentDetail");
|
String detailSql = extractSelect(xml, "selectExtendedRecruitmentDetail");
|
||||||
|
|
||||||
assertTrue(listSql.contains("projectEmployeeScopeSql"));
|
assertTrue(listSql.contains("projectEmployeeScopeSql"));
|
||||||
|
assertTrue(listSql.contains("name=\"projectId\" value=\"query.projectId\""));
|
||||||
assertTrue(listSql.contains("select distinct r.recruit_id"));
|
assertTrue(listSql.contains("select distinct r.recruit_id"));
|
||||||
assertTrue(listSql.contains("interviewer_name1"));
|
assertTrue(listSql.contains("interviewer_name1"));
|
||||||
assertTrue(listSql.contains("interviewer_name2"));
|
assertTrue(listSql.contains("interviewer_name2"));
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ class CcdiProjectSpecialCheckExtendedTransferSqlTest {
|
|||||||
String detailSql = extractSelect(xml, "selectExtendedTransferDetail");
|
String detailSql = extractSelect(xml, "selectExtendedTransferDetail");
|
||||||
|
|
||||||
assertTrue(listSql.contains("projectEmployeeScopeSql"));
|
assertTrue(listSql.contains("projectEmployeeScopeSql"));
|
||||||
|
assertTrue(listSql.contains("name=\"projectId\" value=\"query.projectId\""));
|
||||||
assertTrue(listSql.contains("ccdi_staff_transfer t"));
|
assertTrue(listSql.contains("ccdi_staff_transfer t"));
|
||||||
assertTrue(listSql.contains("ccdi_base_staff s"));
|
assertTrue(listSql.contains("ccdi_base_staff s"));
|
||||||
assertTrue(listSql.contains("scope.staff_name = s.name"));
|
assertTrue(listSql.contains("scope.staff_name = s.name"));
|
||||||
|
|||||||
@@ -25,3 +25,16 @@ mvn test -pl ccdi-project
|
|||||||
|
|
||||||
- 本次验证未出现失败
|
- 本次验证未出现失败
|
||||||
- 模块全量测试存在若干业务日志与 Mockito 动态 agent 警告,但不影响测试通过,且不属于本次改动引入的问题
|
- 模块全量测试存在若干业务日志与 Mockito 动态 agent 警告,但不影响测试通过,且不属于本次改动引入的问题
|
||||||
|
|
||||||
|
## 追加修复记录
|
||||||
|
|
||||||
|
- 2026-03-24 晚间追加修复了拓展查询列表 SQL 的 `projectId` 绑定问题
|
||||||
|
- 根因是 `projectEmployeeScopeSql` 依赖 `#{projectId}`,而采购、招聘、调动 3 个列表查询实际通过 `@Param("query")` 传参,运行期顶层参数表中不存在直接可用的 `projectId`
|
||||||
|
- 修复方式是在 `selectExtendedPurchasePage`、`selectExtendedRecruitmentPage`、`selectExtendedTransferPage` 中统一增加 `<bind name="projectId" value="query.projectId"/>`
|
||||||
|
- 追加验证命令:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mvn test -pl ccdi-project -Dtest=CcdiProjectSpecialCheckExtendedQueryContractTest,CcdiProjectSpecialCheckExtendedPurchaseSqlTest,CcdiProjectSpecialCheckExtendedRecruitmentSqlTest,CcdiProjectSpecialCheckExtendedTransferSqlTest,CcdiProjectSpecialCheckExtendedQueryServiceImplTest,CcdiProjectSpecialCheckControllerTest
|
||||||
|
```
|
||||||
|
|
||||||
|
- 追加验证结果:`Tests run: 16, Failures: 0, Errors: 0, Skipped: 0`
|
||||||
|
|||||||
Reference in New Issue
Block a user