变更项目缩写
This commit is contained in:
@@ -10,9 +10,9 @@ Error updating database. Cause: java.sql.SQLIntegrityConstraintViolationExceptio
|
||||
|
||||
## 问题原因
|
||||
|
||||
1. **数据库约束**:`dpc_intermediary_blacklist` 表的 `certificate_no` 字段设置为 `NOT NULL`,不允许存储 null 值。
|
||||
1. **数据库约束**:`ccdi_intermediary_blacklist` 表的 `certificate_no` 字段设置为 `NOT NULL`,不允许存储 null 值。
|
||||
|
||||
2. **代码缺陷**:在 `DpcIntermediaryBlacklistServiceImpl.java` 的 `importEntityIntermediary` 方法中,导入机构中介时只设置了 `corpCreditCode`(统一社会信用代码),但没有设置 `certificateNo` 字段,导致该字段为 null。
|
||||
2. **代码缺陷**:在 `CcdiIntermediaryBlacklistServiceImpl.java` 的 `importEntityIntermediary` 方法中,导入机构中介时只设置了 `corpCreditCode`(统一社会信用代码),但没有设置 `certificateNo` 字段,导致该字段为 null。
|
||||
|
||||
3. **批量插入失败**:`batchInsert` 方法明确插入 `certificate_no` 字段,当值为 null 时违反数据库约束。
|
||||
|
||||
@@ -20,14 +20,14 @@ Error updating database. Cause: java.sql.SQLIntegrityConstraintViolationExceptio
|
||||
|
||||
### 1. 代码修改
|
||||
|
||||
**文件**:[DpcIntermediaryBlacklistServiceImpl.java](d:\discipline-prelim-check\discipline-prelim-check\ruoyi-dpc\src\main\java\com\ruoyi\dpc\service\impl\DpcIntermediaryBlacklistServiceImpl.java)
|
||||
**文件**:[CcdiIntermediaryBlacklistServiceImpl.java](d:\discipline-prelim-check\discipline-prelim-check\ruoyi-ccdi\src\main\java\com\ruoyi\dpc\service\impl\CcdiIntermediaryBlacklistServiceImpl.java)
|
||||
|
||||
**修改位置**:第 390-394 行
|
||||
|
||||
**修改前**:
|
||||
```java
|
||||
// 转换为实体
|
||||
DpcIntermediaryBlacklist intermediary = new DpcIntermediaryBlacklist();
|
||||
CcdiIntermediaryBlacklist intermediary = new CcdiIntermediaryBlacklist();
|
||||
intermediary.setName(excel.getName());
|
||||
intermediary.setIntermediaryType("2");
|
||||
```
|
||||
@@ -35,7 +35,7 @@ intermediary.setIntermediaryType("2");
|
||||
**修改后**:
|
||||
```java
|
||||
// 转换为实体
|
||||
DpcIntermediaryBlacklist intermediary = new DpcIntermediaryBlacklist();
|
||||
CcdiIntermediaryBlacklist intermediary = new CcdiIntermediaryBlacklist();
|
||||
intermediary.setName(excel.getName());
|
||||
// 对于机构中介,使用统一社会信用代码作为证件号
|
||||
intermediary.setCertificateNo(excel.getCorpCreditCode());
|
||||
@@ -44,13 +44,13 @@ intermediary.setIntermediaryType("2");
|
||||
|
||||
### 2. 验证逻辑增强
|
||||
|
||||
**文件**:[DpcIntermediaryBlacklistServiceImpl.java](d:\discipline-prelim-check\discipline-prelim-check\ruoyi-dpc\src\main\java\com\ruoyi\dpc\service\impl\DpcIntermediaryBlacklistServiceImpl.java)
|
||||
**文件**:[CcdiIntermediaryBlacklistServiceImpl.java](d:\discipline-prelim-check\discipline-prelim-check\ruoyi-ccdi\src\main\java\com\ruoyi\dpc\service\impl\CcdiIntermediaryBlacklistServiceImpl.java)
|
||||
|
||||
**修改位置**:第 484-488 行
|
||||
|
||||
**修改前**:
|
||||
```java
|
||||
private void validateEntityIntermediaryData(DpcIntermediaryEntityExcel excel) {
|
||||
private void validateEntityIntermediaryData(CcdiIntermediaryEntityExcel excel) {
|
||||
if (StringUtils.isEmpty(excel.getName())) {
|
||||
throw new RuntimeException("机构名称不能为空");
|
||||
}
|
||||
@@ -59,7 +59,7 @@ private void validateEntityIntermediaryData(DpcIntermediaryEntityExcel excel) {
|
||||
|
||||
**修改后**:
|
||||
```java
|
||||
private void validateEntityIntermediaryData(DpcIntermediaryEntityExcel excel) {
|
||||
private void validateEntityIntermediaryData(CcdiIntermediaryEntityExcel excel) {
|
||||
if (StringUtils.isEmpty(excel.getName())) {
|
||||
throw new RuntimeException("机构名称不能为空");
|
||||
}
|
||||
@@ -72,7 +72,7 @@ private void validateEntityIntermediaryData(DpcIntermediaryEntityExcel excel) {
|
||||
|
||||
### 3. 批量更新 XML 配置优化
|
||||
|
||||
**文件**:[DpcIntermediaryBlacklistMapper.xml](d:\discipline-prelim-check\discipline-prelim-check\ruoyi-dpc\src\main\resources\mapper\dpc\DpcIntermediaryBlacklistMapper.xml)
|
||||
**文件**:[CcdiIntermediaryBlacklistMapper.xml](d:\discipline-prelim-check\discipline-prelim-check\ruoyi-ccdi\src\main\resources\mapper\dpc\CcdiIntermediaryBlacklistMapper.xml)
|
||||
|
||||
**修改位置**:第 125-127 行
|
||||
|
||||
@@ -140,7 +140,7 @@ python doc/test-data/test_import_fix.py
|
||||
1. **数据迁移**:如果数据库中已存在机构中介数据且 `certificate_no` 为 null,需要执行以下 SQL 进行数据修复:
|
||||
|
||||
```sql
|
||||
UPDATE dpc_intermediary_blacklist
|
||||
UPDATE ccdi_intermediary_blacklist
|
||||
SET certificate_no = corp_credit_code
|
||||
WHERE intermediary_type = '2' AND certificate_no IS NULL AND corp_credit_code IS NOT NULL;
|
||||
```
|
||||
@@ -151,8 +151,8 @@ WHERE intermediary_type = '2' AND certificate_no IS NULL AND corp_credit_code IS
|
||||
|
||||
## 修改文件列表
|
||||
|
||||
1. [DpcIntermediaryBlacklistServiceImpl.java](d:\discipline-prelim-check\discipline-prelim-check\ruoyi-dpc\src\main\java\com\ruoyi\dpc\service\impl\DpcIntermediaryBlacklistServiceImpl.java) - 服务层实现
|
||||
2. [DpcIntermediaryBlacklistMapper.xml](d:\discipline-prelim-check\discipline-prelim-check\ruoyi-dpc\src\main\resources\mapper\dpc\DpcIntermediaryBlacklistMapper.xml) - MyBatis 映射文件
|
||||
1. [CcdiIntermediaryBlacklistServiceImpl.java](d:\discipline-prelim-check\discipline-prelim-check\ruoyi-ccdi\src\main\java\com\ruoyi\dpc\service\impl\CcdiIntermediaryBlacklistServiceImpl.java) - 服务层实现
|
||||
2. [CcdiIntermediaryBlacklistMapper.xml](d:\discipline-prelim-check\discipline-prelim-check\ruoyi-ccdi\src\main\resources\mapper\dpc\CcdiIntermediaryBlacklistMapper.xml) - MyBatis 映射文件
|
||||
3. [test_import_fix.py](d:\discipline-prelim-check\discipline-prelim-check\doc\test-data\test_import_fix.py) - 测试脚本
|
||||
|
||||
## 版本历史
|
||||
|
||||
Reference in New Issue
Block a user