If the condition used OR, the condition would always be true. In English, the current condition says "If the Current Status is not Complete and is not Corrected then..." implying that any state but those two will cause the condition to be true.
If you used OR, then absolutely any state would cause the condition to be true. If the current status is Complete, then the first half of the condition will be false, but the second half will be true, so the condition is true. If the current status is Corrected, the first half of the condition will be true so without even checking the second half, the entire condition is true (some languages or will still check the second half, but the condition will still be true if they do). If you use OR and the current status is neither Complete or Corrected then both halves of the condition are true. So OR will always be true.
&&means it is neither Completed or Corrected. If you change it to||it could be one or the other.if(var != state1 && var != state2)can be much easier to write than(if var == state3 || var == state4 || ...). Also note the switch of!=to==.DSRHelperis not particularlyhelpful in this case