Рассчитать общий статус, если известны прогресс и дни в процентах - PullRequest
0 голосов
/ 15 февраля 2019

Если известны progress и daysLeft процентов моей цели, как я могу определить общий статус цели (при условии, что определены статусы off-track, at-risk, on-track и completed).

Для граничного случая:

  • , если прогресс равен 100%, независимо от того, что такое процентный показатель daysLeft, я знаю, что мой целевой статус равен completed
  • if daysLeftпроцент равен 0%, а прогресс меньше 100%, я знаю, что моя цель off-track

Мне нужна логика, которая будет учитывать прогресс и оставшиеся дни, чтобы определить один из упомянутых статусовво время достижения цели.

1 Ответ

0 голосов
/ 15 февраля 2019

Я полагаю, что это вопрос мнения, но вы могли бы сделать что-то вроде этого:

if progress == 100%: status = completed; return;

if progress >= 100% - daysLeft: status = on-track; return;

if daysLeft > 0: status = at-risk; return;

status = off-track;

Таким образом, ваши два условия будут выполнены, и статус будет достигнут, когда останется больше днейчем выделенное количество времени для этой работы и риска, когда нет.

(Вы можете изменить операторы возврата на if-else, если хотите.)

Работает ли эта работадля тебя?

...