Если логика контроллера - PullRequest
0 голосов
/ 04 мая 2018

У меня есть требование, при котором мне нужно проверять случаи, которые совпадают с выходным JSON: я написал код внутри, если controller: (поэтому, если все случаи совпадают, мы скажем, передать и напечатать значение), и это на самом деле работает нормально ..

("${C_etrTimestamp}"=="${ETRTIMESTAMP}")&&("${C_EventName}"=="${EVENTNAME}")&&("${C_EventType}"=="${EVENTTYPE}")&&("${C_AreaName}"=="${AREANAME}")&&("${C_AreaType}"=="${AREATYPE}")&&("${C_additionalInfo}"=="${ADDITIONALINFO}")&&("${C_resultStatusCode}"=="${RESULTSTATUSCODE}")&&("${C_resultStatusMessage}"=="${RESULTSTATUSMESSAGE}")

Но мне также нужно распечатать результаты, которые не соответствуют: поэтому я создал еще один if controller. и внутри этого я написал следующий код: (но он не работает для меня), поэтому 1-й if выполняется. но результаты, которые не совпадают, не вводятся во 2-й if controller.

("${C_etrTimestamp}"!=="${ETRTIMESTAMP}")or("${C_EventName}"!=="${EVENTNAME}")or("${C_EventType}"!=="${EVENTTYPE}")or("${C_AreaName}"!=="${AREANAME}")or("${C_AreaType}"!=="${AREATYPE}")or("${C_additionalInfo}"!=="${ADDITIONALINFO}")or("${C_resultStatusCode}"!=="${RESULTSTATUSCODE}")or("${C_resultStatusMessage}"!=="${RESULTSTATUSMESSAGE}")

Может кто-нибудь подсказать, что мне делать?

1 Ответ

0 голосов
/ 04 мая 2018

Вместо того, чтобы пытаться отрицать каждое предложение, сделайте второе условие полностью противоположным первому с помощью `! (...):

!(("${C_etrTimestamp}"=="${ETRTIMESTAMP}")&&("${C_EventName}"=="${EVENTNAME}")&&("${C_EventType}"=="${EVENTTYPE}")&&("${C_AreaName}"=="${AREANAME}")&&("${C_AreaType}"=="${AREATYPE}")&&("${C_additionalInfo}"=="${ADDITIONALINFO}")&&("${C_resultStatusCode}"=="${RESULTSTATUSCODE}")&&("${C_resultStatusMessage}"=="${RESULTSTATUSMESSAGE}"))

Вы также можете упростить условия до одного сравнения со всеми переменными внутри него (поскольку вы хотите, чтобы все они совпадали), make немного короче и легче для чтения.

Сначала если:

"${C_etrTimestamp}${C_EventName}${C_EventType}..."=="${ETRTIMESTAMP}${EVENTNAME}${EVENTTYPE}..."

Второй, если:

!("${C_etrTimestamp}${C_EventName}${C_EventType}..."=="${ETRTIMESTAMP}${EVENTNAME}${EVENTTYPE}...")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...