fix issue 13035 (#13065)

Co-authored-by: shenk-b <shenk-b@glodon.com>
This commit is contained in:
Kevin.Shin 2022-12-01 13:58:50 +08:00 committed by GitHub
parent ffc9fb280a
commit 12a6138d33
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -94,7 +94,7 @@ public class DataQualityResultOperator {
private void checkDqExecuteResult(TaskEvent taskResponseEvent, private void checkDqExecuteResult(TaskEvent taskResponseEvent,
DqExecuteResult dqExecuteResult, DqExecuteResult dqExecuteResult,
ProcessInstance processInstance) { ProcessInstance processInstance) {
if (isFailure(dqExecuteResult)) { if (isFailed(dqExecuteResult)) {
DqFailureStrategy dqFailureStrategy = DqFailureStrategy.of(dqExecuteResult.getFailureStrategy()); DqFailureStrategy dqFailureStrategy = DqFailureStrategy.of(dqExecuteResult.getFailureStrategy());
if (dqFailureStrategy != null) { if (dqFailureStrategy != null) {
dqExecuteResult.setState(DqTaskState.FAILURE.getCode()); dqExecuteResult.setState(DqTaskState.FAILURE.getCode());
@ -123,7 +123,7 @@ public class DataQualityResultOperator {
* @param dqExecuteResult * @param dqExecuteResult
* @return * @return
*/ */
private boolean isFailure(DqExecuteResult dqExecuteResult) { private boolean isFailed(DqExecuteResult dqExecuteResult) {
CheckType checkType = CheckType.of(dqExecuteResult.getCheckType()); CheckType checkType = CheckType.of(dqExecuteResult.getCheckType());
double statisticsValue = dqExecuteResult.getStatisticsValue(); double statisticsValue = dqExecuteResult.getStatisticsValue();
@ -132,36 +132,36 @@ public class DataQualityResultOperator {
OperatorType operatorType = OperatorType.of(dqExecuteResult.getOperator()); OperatorType operatorType = OperatorType.of(dqExecuteResult.getOperator());
boolean isFailure = false; boolean isFailed = false;
if (operatorType != null) { if (operatorType != null) {
double srcValue = 0; double srcValue = 0;
switch (checkType) { switch (checkType) {
case COMPARISON_MINUS_STATISTICS: case COMPARISON_MINUS_STATISTICS:
srcValue = comparisonValue - statisticsValue; srcValue = comparisonValue - statisticsValue;
isFailure = getCompareResult(operatorType, srcValue, threshold); isFailed = !getCompareResult(operatorType, srcValue, threshold);
break; break;
case STATISTICS_MINUS_COMPARISON: case STATISTICS_MINUS_COMPARISON:
srcValue = statisticsValue - comparisonValue; srcValue = statisticsValue - comparisonValue;
isFailure = getCompareResult(operatorType, srcValue, threshold); isFailed = !getCompareResult(operatorType, srcValue, threshold);
break; break;
case STATISTICS_COMPARISON_PERCENTAGE: case STATISTICS_COMPARISON_PERCENTAGE:
if (comparisonValue > 0) { if (comparisonValue > 0) {
srcValue = statisticsValue / comparisonValue * 100; srcValue = statisticsValue / comparisonValue * 100;
} }
isFailure = getCompareResult(operatorType, srcValue, threshold); isFailed = !getCompareResult(operatorType, srcValue, threshold);
break; break;
case STATISTICS_COMPARISON_DIFFERENCE_COMPARISON_PERCENTAGE: case STATISTICS_COMPARISON_DIFFERENCE_COMPARISON_PERCENTAGE:
if (comparisonValue > 0) { if (comparisonValue > 0) {
srcValue = Math.abs(comparisonValue - statisticsValue) / comparisonValue * 100; srcValue = Math.abs(comparisonValue - statisticsValue) / comparisonValue * 100;
} }
isFailure = getCompareResult(operatorType, srcValue, threshold); isFailed = !getCompareResult(operatorType, srcValue, threshold);
break; break;
default: default:
break; break;
} }
} }
return isFailure; return isFailed;
} }
private void sendDqTaskResultAlert(DqExecuteResult dqExecuteResult, ProcessInstance processInstance) { private void sendDqTaskResultAlert(DqExecuteResult dqExecuteResult, ProcessInstance processInstance) {