Commit 1807b075 authored by tianbo's avatar tianbo

充装检查mapper关联企业状态

parent e25d0ed4
......@@ -15,7 +15,8 @@
FROM
tz_cylinder_unit cu
where
cu.app_id = #{appId}
cu.unit_status = '1210'
and cu.app_id = #{appId}
</select>
<select id="queryLicenseEfficiencyOfRegion" resultType="com.yeejoin.amos.boot.module.cylinder.api.dto.KeyValueDto">
SELECT
......@@ -30,22 +31,24 @@
FROM
tz_cylinder_unit cu
where
cu.region_code like concat('%', #{regionCode}, '%')
cu.unit_status = '1210'
and cu.region_code like concat('%', #{regionCode}, '%')
GROUP BY strKey
</select>
<select id="getInspectionExpiredRate" resultType="java.util.Map">
SELECT
CASE WHEN COUNT(*) = 0 THEN 0 ELSE ROUND((COUNT(CASE WHEN ci.next_inspection_date <![CDATA[<]]> now() THEN 1 END) * 100.0 / COUNT(*)), 2) END AS expiredRate
CASE WHEN COUNT(*) = 0 THEN 0 ELSE ROUND((COUNT(CASE WHEN ci.next_inspection_date <![CDATA[<=]]> now() THEN 1 END) * 100.0 / COUNT(*)), 2) END AS expiredRate
FROM
"tz_cylinder_inspection" ci
LEFT JOIN tz_cylinder_unit cu on ci.app_id = cu.app_id
<where>
cu.unit_status = '1210'
<if test="regionCode != null and regionCode != ''">
cu.region_code like concat('%', #{regionCode}, '%')
and cu.region_code like concat('%', #{regionCode}, '%')
</if>
<if test="appId != null and appId != ''">
cu.app_id = #{appId}
and cu.app_id = #{appId}
</if>
</where>
</select>
......@@ -57,11 +60,12 @@
"tz_cylinder_inspection" ci
LEFT JOIN tz_cylinder_unit cu on ci.app_id = cu.app_id
<where>
cu.unit_status = '1210'
<if test="regionCode != null and regionCode != ''">
cu.region_code like concat('%', #{regionCode}, '%')
and cu.region_code like concat('%', #{regionCode}, '%')
</if>
<if test="appId != null and appId != ''">
cu.app_id = #{appId}
and cu.app_id = #{appId}
</if>
</where>
</select>
......
......@@ -15,6 +15,9 @@ import org.elasticsearch.client.core.CountRequest;
import org.elasticsearch.client.core.CountResponse;
import org.elasticsearch.index.query.BoolQueryBuilder;
import org.elasticsearch.index.query.QueryBuilders;
import org.elasticsearch.index.query.ScriptQueryBuilder;
import org.elasticsearch.script.ScriptType;
import org.elasticsearch.script.Script;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
......@@ -24,6 +27,7 @@ import org.typroject.tyboot.core.rdbms.service.BaseService;
import java.io.IOException;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
......@@ -181,6 +185,7 @@ public class CylinderAreaDataServiceImpl extends BaseService<CylinderAreaDataDto
private long searchEsCount(Boolean checkOk, Boolean resultOk, String regionCode, String appId) {
CountRequest countRequest = new CountRequest();
countRequest.indices("cylinder_filling");
// countRequest.indices("tb_test_index");
BoolQueryBuilder boolMust = QueryBuilders.boolQuery();
if (checkOk) {
//匹配充装前检查和充装后检查都有数据
......@@ -191,9 +196,27 @@ public class CylinderAreaDataServiceImpl extends BaseService<CylinderAreaDataDto
}
if (resultOk) {
//匹配充装前检查和充装后检查都有数据
// 定义脚本查询参数
// Map<String, Object> params = new HashMap<>();
// // 脚本内容,检查多个字段的值
// String scriptBody = " boolean allMatch = true;\n" +
// " for (String field : ['fillingResult', 'checkResult']) {\n" +
// " if (doc[field].value != params['matchValue']) {\n" +
// " allMatch = false;\n" +
// " break;\n" +
// " }\n" +
// " }\n" +
// " return allMatch;\n";
// String resultOkMatchValue = "合格";
// params.put("matchValue", resultOkMatchValue);
// // 构建脚本查询
// Script script = new Script(ScriptType.INLINE,"painless", scriptBody, params);
// // 使用ScriptQueryBuilder构造查询条件
// ScriptQueryBuilder scriptQuery = QueryBuilders.scriptQuery(script);
BoolQueryBuilder meBuilder = QueryBuilders.boolQuery();
meBuilder.must(QueryBuilders.matchQuery("fillingResult", "合格"));
meBuilder.must(QueryBuilders.matchQuery("checkResult", "合格"));
// meBuilder.must(scriptQuery);
boolMust.must(meBuilder);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment