fix: 法规符合性评估库搜素SQL问题

This commit is contained in:
2024-07-31 10:47:10 +08:00
parent f987769207
commit d1157ed145
2 changed files with 16 additions and 9 deletions
@@ -18,15 +18,22 @@
</sql>
<select id="queryByPage" resultType="com.jero.modules.assessmentLibrary.entity.LawsConformityAssessmentLibrary">
select cs.id,
SELECT cs.id,
cs.standard_id,
IF(cs.standard_id IS NOT NULL, d.standard_number, cs.standard_number) AS standard_number,
IF(cs.standard_id IS NOT NULL, d.standard_name, cs.standard_name) AS standard_name,
lms.country as applicableMarket,
sub.standard_number,
sub.standard_name,
lms.country AS applicableMarket,
cs.valuation_time
from laws_conformity_assessment_library cs
left join laws_domestic_standard as d on d.id = cs.standard_id
left join laws_market_standard as lms on lms.id = cs.applicable_market
FROM laws_conformity_assessment_library cs
LEFT JOIN (
SELECT
COALESCE(d.standard_number, cs.standard_number) AS standard_number,
COALESCE(d.standard_name, cs.standard_name) AS standard_name,
cs.standard_id
FROM laws_conformity_assessment_library cs
LEFT JOIN laws_domestic_standard d ON d.id = cs.standard_id
) AS sub ON sub.standard_id = cs.standard_id
LEFT JOIN laws_market_standard lms ON lms.id = cs.applicable_market
${ew.customSqlSegment}
</select>
@@ -81,9 +81,9 @@ public class LawsConformityAssessmentLibraryServiceImpl extends ServiceImpl<Laws
QueryWrapper<LawsConformityAssessmentLibrary> queryWrapper = new QueryWrapper<>();
Page<LawsConformityAssessmentLibrary> page = new Page<>(pageNo, pageSize);
queryWrapper.like(StringUtils.isNotBlank(lawsConformityAssessmentLibrary.getStandardNumber()),
"d.standard_number", lawsConformityAssessmentLibrary.getStandardNumber());
"sub.standard_number", lawsConformityAssessmentLibrary.getStandardNumber());
queryWrapper.like(StringUtils.isNotBlank(lawsConformityAssessmentLibrary.getStandardName()),
"d.standard_name", lawsConformityAssessmentLibrary.getStandardName());
"sub.standard_name", lawsConformityAssessmentLibrary.getStandardName());
String applicableMarkets = lawsConformityAssessmentLibrary.getApplicableMarket();
if (StringUtils.isNotBlank(applicableMarkets)) {
String[] split = applicableMarkets.split(",");