In the code which you haven’t shown, is the function bargraph_shutdown() called once per shutdown, or is it called at regular intervals? In the function, there is no timing element in the loop which has the comment “ Bargraph power down sequence”, so it will go from 7 to 0 in a fraction of second.
Incidentally, it unusual to pass a value of millis() into a function. Instead, you can just test millis() directly in the function.