fix(job): 修正工单查询逻辑中的字段引用和JSON路径
- 将字段引用从双引号改为无引号以适配数据库语法 - 更新JSON路径表达式以正确提取SOP标签信息 - 修正多处JOIN条件中的字段匹配逻辑 - 调整CASE语句中的工单等级判断值从'P'为'P0' - 优化字符串处理函数去除多余括号和逗号 - 统一处理内容字段的JSON键名引用为processContent
This commit is contained in:
@@ -132,7 +132,7 @@ public class AlibabaWorkOrderJob implements JobHandler {
|
|||||||
" rwoa.PROCESSOR_ID AS \"correctPersonId\", " +
|
" rwoa.PROCESSOR_ID AS \"correctPersonId\", " +
|
||||||
" rwoa.PROCESSOR_NAME AS \"correctPersonName\", " +
|
" rwoa.PROCESSOR_NAME AS \"correctPersonName\", " +
|
||||||
" mwoe.\"LEVEL\" AS \"workOrderLevel\", " +
|
" mwoe.\"LEVEL\" AS \"workOrderLevel\", " +
|
||||||
" rwoa.RESERVED_TIME3 AS \"correctDeadline\", " +
|
" rwoa.RESERVED_TIME3 AS \"correctDeadLine\", " +
|
||||||
" rwoa.CONFIRM_PERSON_ID AS \"confirmPersonId\", " +
|
" rwoa.CONFIRM_PERSON_ID AS \"confirmPersonId\", " +
|
||||||
" rwoa.CONFIRM_PERSON_NAME AS \"confirmPersonName\", " +
|
" rwoa.CONFIRM_PERSON_NAME AS \"confirmPersonName\", " +
|
||||||
" mwoe.GMT_MODIFIED AS \"gmtModified\", " +
|
" mwoe.GMT_MODIFIED AS \"gmtModified\", " +
|
||||||
@@ -161,15 +161,15 @@ public class AlibabaWorkOrderJob implements JobHandler {
|
|||||||
" wo.GMT_MODIFIED, " +
|
" wo.GMT_MODIFIED, " +
|
||||||
" wo.RESERVED_TIME3, " +
|
" wo.RESERVED_TIME3, " +
|
||||||
" CASE " +
|
" CASE " +
|
||||||
" WHEN wo.\"LEVEL\" = 'P' THEN '重大' " +
|
" WHEN wo.\"LEVEL\" = 'P0' THEN '重大' " +
|
||||||
" ELSE '一般' " +
|
" ELSE '一般' " +
|
||||||
" END AS \"LEVEL\", " +
|
" END AS \"LEVEL\", " +
|
||||||
" wo.\"CONFIRM_PERSON_ID\", " +
|
" wo.CONFIRM_PERSON_ID, " +
|
||||||
" wo.CONFIRM_PERSON_NAME, " +
|
" wo.CONFIRM_PERSON_NAME, " +
|
||||||
" wo.TENANT, " +
|
" wo.TENANT, " +
|
||||||
" ml.PROCESSOR_ID, " +
|
" ml.PROCESSOR_ID, " +
|
||||||
" ml.PROCESSOR_NAME, " +
|
" ml.PROCESSOR_NAME, " +
|
||||||
" JSON_VALUE(ml.CONTENT, '$.processedContent') AS PROCESS_CONTENT " +
|
" JSON_VALUE(ml.CONTENT, '$.processContent') AS PROCESS_CONTENT " +
|
||||||
" FROM " +
|
" FROM " +
|
||||||
" \"XCAMPUS_WORKORDER\".\"WORK_ORDER\" wo " +
|
" \"XCAMPUS_WORKORDER\".\"WORK_ORDER\" wo " +
|
||||||
" LEFT JOIN ( " +
|
" LEFT JOIN ( " +
|
||||||
@@ -178,8 +178,8 @@ public class AlibabaWorkOrderJob implements JobHandler {
|
|||||||
" FROM " +
|
" FROM " +
|
||||||
" \"XCAMPUS_WORKORDER\".\"WORK_ORDER_LOG\" wol " +
|
" \"XCAMPUS_WORKORDER\".\"WORK_ORDER_LOG\" wol " +
|
||||||
" WHERE " +
|
" WHERE " +
|
||||||
" wol.\"OPERATE_NAME\" = '完成' " +
|
" wol.OPERATE_NAME = '完成' " +
|
||||||
" ) ml ON wo.\"WORK_ORDER_ID\" = ml.\"WORK_ORDER_ID\" " +
|
" ) ml ON wo.WORK_ORDER_ID = ml.WORK_ORDER_ID " +
|
||||||
" LEFT JOIN \"XCAMPUS_SPACECENTER\".\"CAMPUS\" c ON c.UUID = wo.CAMPUS_ID " +
|
" LEFT JOIN \"XCAMPUS_SPACECENTER\".\"CAMPUS\" c ON c.UUID = wo.CAMPUS_ID " +
|
||||||
" WHERE " +
|
" WHERE " +
|
||||||
" wo.PARENT_ID IS NULL " +
|
" wo.PARENT_ID IS NULL " +
|
||||||
@@ -191,8 +191,8 @@ public class AlibabaWorkOrderJob implements JobHandler {
|
|||||||
" FROM " +
|
" FROM " +
|
||||||
" \"XCAMPUS_WORKORDER\".\"WORK_ORDER\" wo2 " +
|
" \"XCAMPUS_WORKORDER\".\"WORK_ORDER\" wo2 " +
|
||||||
" WHERE " +
|
" WHERE " +
|
||||||
" wo.\"WORK_ORDER_ID\" = wo2.\"WORK_ORDER_ID\" " +
|
" wo.WORK_ORDER_ID = wo2.WORK_ORDER_ID " +
|
||||||
" AND wo2.\"RELATE_WORK_ORDER_ID\" IS NULL " +
|
" AND wo2.RELATE_WORK_ORDER_ID IS NULL " +
|
||||||
" ) " +
|
" ) " +
|
||||||
" ) mwo " +
|
" ) mwo " +
|
||||||
" LEFT JOIN ( " +
|
" LEFT JOIN ( " +
|
||||||
@@ -203,7 +203,7 @@ public class AlibabaWorkOrderJob implements JobHandler {
|
|||||||
" REPLACE( " +
|
" REPLACE( " +
|
||||||
" JSON_QUERY( " +
|
" JSON_QUERY( " +
|
||||||
" wos.SOP_SCHEMA, " +
|
" wos.SOP_SCHEMA, " +
|
||||||
" '$[0].sopSchema.componentsTree[0].children[0].children[*].props.label' WITH CONDITIONAL WRAPPER " +
|
" '$[0].sopSchema.componentsTree[0].children[0].children[0].children[*].props.label' WITH CONDITIONAL WRAPPER " +
|
||||||
" ), " +
|
" ), " +
|
||||||
" '[', " +
|
" '[', " +
|
||||||
" '' " +
|
" '' " +
|
||||||
@@ -222,7 +222,8 @@ public class AlibabaWorkOrderJob implements JobHandler {
|
|||||||
" JSON_QUERY(sl.CONTENT, '$.sopInfo.*' WITH CONDITIONAL WRAPPER), " +
|
" JSON_QUERY(sl.CONTENT, '$.sopInfo.*' WITH CONDITIONAL WRAPPER), " +
|
||||||
" '[', " +
|
" '[', " +
|
||||||
" '' " +
|
" '' " +
|
||||||
" ), ']', " +
|
" ), " +
|
||||||
|
" ']', " +
|
||||||
" '' " +
|
" '' " +
|
||||||
" ), " +
|
" ), " +
|
||||||
" ',' " +
|
" ',' " +
|
||||||
@@ -243,9 +244,9 @@ public class AlibabaWorkOrderJob implements JobHandler {
|
|||||||
" FROM " +
|
" FROM " +
|
||||||
" \"XCAMPUS_WORKORDER\".\"WORK_ORDER_LOG\" wol " +
|
" \"XCAMPUS_WORKORDER\".\"WORK_ORDER_LOG\" wol " +
|
||||||
" WHERE " +
|
" WHERE " +
|
||||||
" wol.\"OPERATE_NAME\" = '处理' " +
|
" wol.OPERATE_NAME = '处理' " +
|
||||||
" ) sl ON wo.\"WORK_ORDER_ID\" = sl.\"WORK_ORDER_ID\" " +
|
" ) sl ON wo.WORK_ORDER_ID = sl.WORK_ORDER_ID " +
|
||||||
" LEFT JOIN \"XCAMPUS_WORKORDER\".\"WORK_ORDER_SCHEMA\" wos ON wo.\"WORK_ORDER_ID\" = wos.\"WORK_ORDER_ID\" " +
|
" LEFT JOIN \"XCAMPUS_WORKORDER\".\"WORK_ORDER_SCHEMA\" wos ON wo.WORK_ORDER_ID = wos.WORK_ORDER_ID " +
|
||||||
" WHERE " +
|
" WHERE " +
|
||||||
" wo.PARENT_ID IN ( " +
|
" wo.PARENT_ID IN ( " +
|
||||||
" SELECT " +
|
" SELECT " +
|
||||||
@@ -263,8 +264,8 @@ public class AlibabaWorkOrderJob implements JobHandler {
|
|||||||
" ) mwoe " +
|
" ) mwoe " +
|
||||||
" LEFT JOIN ( " +
|
" LEFT JOIN ( " +
|
||||||
" SELECT " +
|
" SELECT " +
|
||||||
" rwoe.\"RELATE_WORK_ORDER_ID\", " +
|
" rwoe.RELATE_WORK_ORDER_ID, " +
|
||||||
" LISTAGG(rwoe.\"PROCESS_CONTENT\", ',') WITHIN GROUP ( " +
|
" LISTAGG(rwoe.PROCESS_CONTENT, ',') WITHIN GROUP ( " +
|
||||||
" ORDER BY " +
|
" ORDER BY " +
|
||||||
" rwoe.WORK_ORDER_ID " +
|
" rwoe.WORK_ORDER_ID " +
|
||||||
" ) AS PROCESS_CONTENT, " +
|
" ) AS PROCESS_CONTENT, " +
|
||||||
@@ -317,16 +318,16 @@ public class AlibabaWorkOrderJob implements JobHandler {
|
|||||||
" wo.GMT_MODIFIED, " +
|
" wo.GMT_MODIFIED, " +
|
||||||
" wo.RESERVED_TIME3, " +
|
" wo.RESERVED_TIME3, " +
|
||||||
" CASE " +
|
" CASE " +
|
||||||
" WHEN wo.\"LEVEL\" = 'P' THEN '重大' " +
|
" WHEN wo.\"LEVEL\" = 'P0' THEN '重大' " +
|
||||||
" ELSE '一般' " +
|
" ELSE '一般' " +
|
||||||
" END AS \"LEVEL\", " +
|
" END AS \"LEVEL\", " +
|
||||||
" wo.\"CONFIRM_PERSON_ID\", " +
|
" wo.CONFIRM_PERSON_ID, " +
|
||||||
" wo.CONFIRM_PERSON_NAME, " +
|
" wo.CONFIRM_PERSON_NAME, " +
|
||||||
" wo.TENANT, " +
|
" wo.TENANT, " +
|
||||||
" wo.RELATE_WORK_ORDER_ID, " +
|
" wo.RELATE_WORK_ORDER_ID, " +
|
||||||
" ml.PROCESSOR_ID, " +
|
" ml.PROCESSOR_ID, " +
|
||||||
" ml.PROCESSOR_NAME, " +
|
" ml.PROCESSOR_NAME, " +
|
||||||
" JSON_VALUE(ml.CONTENT, '$.processedContent') AS PROCESS_CONTENT " +
|
" JSON_VALUE(ml.CONTENT, '$.processContent') AS PROCESS_CONTENT " +
|
||||||
" FROM " +
|
" FROM " +
|
||||||
" \"XCAMPUS_WORKORDER\".\"WORK_ORDER\" wo " +
|
" \"XCAMPUS_WORKORDER\".\"WORK_ORDER\" wo " +
|
||||||
" LEFT JOIN ( " +
|
" LEFT JOIN ( " +
|
||||||
@@ -335,8 +336,8 @@ public class AlibabaWorkOrderJob implements JobHandler {
|
|||||||
" FROM " +
|
" FROM " +
|
||||||
" \"XCAMPUS_WORKORDER\".\"WORK_ORDER_LOG\" wol " +
|
" \"XCAMPUS_WORKORDER\".\"WORK_ORDER_LOG\" wol " +
|
||||||
" WHERE " +
|
" WHERE " +
|
||||||
" wol.\"OPERATE_NAME\" = '完成' " +
|
" wol.OPERATE_NAME = '完成' " +
|
||||||
" ) ml ON wo.\"WORK_ORDER_ID\" = ml.\"WORK_ORDER_ID\" " +
|
" ) ml ON wo.WORK_ORDER_ID = ml.WORK_ORDER_ID " +
|
||||||
" LEFT JOIN \"XCAMPUS_SPACECENTER\".\"CAMPUS\" c ON c.UUID = wo.CAMPUS_ID " +
|
" LEFT JOIN \"XCAMPUS_SPACECENTER\".\"CAMPUS\" c ON c.UUID = wo.CAMPUS_ID " +
|
||||||
" WHERE " +
|
" WHERE " +
|
||||||
" wo.PARENT_ID IS NULL " +
|
" wo.PARENT_ID IS NULL " +
|
||||||
@@ -348,8 +349,8 @@ public class AlibabaWorkOrderJob implements JobHandler {
|
|||||||
" FROM " +
|
" FROM " +
|
||||||
" \"XCAMPUS_WORKORDER\".\"WORK_ORDER\" wo2 " +
|
" \"XCAMPUS_WORKORDER\".\"WORK_ORDER\" wo2 " +
|
||||||
" WHERE " +
|
" WHERE " +
|
||||||
" wo.\"WORK_ORDER_ID\" = wo2.\"WORK_ORDER_ID\" " +
|
" wo.WORK_ORDER_ID = wo2.WORK_ORDER_ID " +
|
||||||
" AND wo2.\"RELATE_WORK_ORDER_ID\" IS NOT NULL " +
|
" AND wo2.RELATE_WORK_ORDER_ID IS NOT NULL " +
|
||||||
" ) " +
|
" ) " +
|
||||||
" ) rwo " +
|
" ) rwo " +
|
||||||
" LEFT JOIN ( " +
|
" LEFT JOIN ( " +
|
||||||
@@ -360,7 +361,7 @@ public class AlibabaWorkOrderJob implements JobHandler {
|
|||||||
" REPLACE( " +
|
" REPLACE( " +
|
||||||
" JSON_QUERY( " +
|
" JSON_QUERY( " +
|
||||||
" wos.SOP_SCHEMA, " +
|
" wos.SOP_SCHEMA, " +
|
||||||
" '$[0].sopSchema.componentsTree[0].children[0].children[*].props.label' WITH CONDITIONAL WRAPPER " +
|
" '$[0].sopSchema.componentsTree[0].children[0].children[0].children[*].props.label' WITH CONDITIONAL WRAPPER " +
|
||||||
" ), " +
|
" ), " +
|
||||||
" '[', " +
|
" '[', " +
|
||||||
" '' " +
|
" '' " +
|
||||||
@@ -379,7 +380,8 @@ public class AlibabaWorkOrderJob implements JobHandler {
|
|||||||
" JSON_QUERY(sl.CONTENT, '$.sopInfo.*' WITH CONDITIONAL WRAPPER), " +
|
" JSON_QUERY(sl.CONTENT, '$.sopInfo.*' WITH CONDITIONAL WRAPPER), " +
|
||||||
" '[', " +
|
" '[', " +
|
||||||
" '' " +
|
" '' " +
|
||||||
" ), ']', " +
|
" ), " +
|
||||||
|
" ']', " +
|
||||||
" '' " +
|
" '' " +
|
||||||
" ), " +
|
" ), " +
|
||||||
" ',' " +
|
" ',' " +
|
||||||
@@ -400,9 +402,9 @@ public class AlibabaWorkOrderJob implements JobHandler {
|
|||||||
" FROM " +
|
" FROM " +
|
||||||
" \"XCAMPUS_WORKORDER\".\"WORK_ORDER_LOG\" wol " +
|
" \"XCAMPUS_WORKORDER\".\"WORK_ORDER_LOG\" wol " +
|
||||||
" WHERE " +
|
" WHERE " +
|
||||||
" wol.\"OPERATE_NAME\" = '处理' " +
|
" wol.OPERATE_NAME = '处理' " +
|
||||||
" ) sl ON wo.\"WORK_ORDER_ID\" = sl.\"WORK_ORDER_ID\" " +
|
" ) sl ON wo.WORK_ORDER_ID = sl.WORK_ORDER_ID " +
|
||||||
" LEFT JOIN \"XCAMPUS_WORKORDER\".\"WORK_ORDER_SCHEMA\" wos ON wo.\"WORK_ORDER_ID\" = wos.\"WORK_ORDER_ID\" " +
|
" LEFT JOIN \"XCAMPUS_WORKORDER\".\"WORK_ORDER_SCHEMA\" wos ON wo.WORK_ORDER_ID = wos.WORK_ORDER_ID " +
|
||||||
" WHERE " +
|
" WHERE " +
|
||||||
" wo.PARENT_ID IN ( " +
|
" wo.PARENT_ID IN ( " +
|
||||||
" SELECT " +
|
" SELECT " +
|
||||||
@@ -419,9 +421,8 @@ public class AlibabaWorkOrderJob implements JobHandler {
|
|||||||
" ) swo ON rwo.WORK_ORDER_ID = swo.PARENT_ID " +
|
" ) swo ON rwo.WORK_ORDER_ID = swo.PARENT_ID " +
|
||||||
" ) rwoe " +
|
" ) rwoe " +
|
||||||
" GROUP BY " +
|
" GROUP BY " +
|
||||||
" rwoe.\"RELATE_WORK_ORDER_ID\" " +
|
" rwoe.RELATE_WORK_ORDER_ID " +
|
||||||
" ) rwoa ON mwoe.WORK_ORDER_ID = rwoa.RELATE_WORK_ORDER_ID "
|
" ) rwoa ON mwoe.WORK_ORDER_ID = rwoa.RELATE_WORK_ORDER_ID ");
|
||||||
);
|
|
||||||
// 如果时间参数存在并且合法,则添加时间条件
|
// 如果时间参数存在并且合法,则添加时间条件
|
||||||
if (StrUtil.equals("1", params) && Objects.nonNull(startTime) && Objects.nonNull(endTime) && startTime.isBefore(endTime)) {
|
if (StrUtil.equals("1", params) && Objects.nonNull(startTime) && Objects.nonNull(endTime) && startTime.isBefore(endTime)) {
|
||||||
String formattedStart = LocalDateTimeUtil.format(startTime, FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND);
|
String formattedStart = LocalDateTimeUtil.format(startTime, FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND);
|
||||||
|
|||||||
Reference in New Issue
Block a user