RFID with LED problem

I have a RFID puzzle using 15 readers mall to a mega. The RFID system works great. However I am struggling wit LED

Can anyone tell if I am forgetting something in code.

Goal is for each RFID on the 1st light is on if 8 are on the first 8 lights are on.

the if all are on they all turn green

/**
   -----------------------------------------------------------------------------------------
               MFRC522      Arduino       Arduino   Arduino    Arduino          Arduino
               Reader/PCD   Uno/101       Mega      Nano v3    Leonardo/Micro   Pro Micro
   Signal      Pin          Pin           Pin       Pin        Pin              Pin
   -----------------------------------------------------------------------------------------
   RST/Reset   RST          9             5         D9         RESET/ICSP-5     RST
   SPI SS 1    SDA(SS)      ** custom, take a unused pin, only HIGH/LOW required *
   SPI SS 2    SDA(SS)      ** custom, take a unused pin, only HIGH/LOW required *
   SPI MOSI    MOSI         11 / ICSP-4   51        D11        ICSP-4           16
   SPI MISO    MISO         12 / ICSP-1   50        D12        ICSP-1           14
   SPI SCK     SCK          13 / ICSP-3   52        D13        ICSP-3           15

*/

#include <SPI.h>
#include "FastLED.h"
// MFRC522 - Version: 1.3.6
#include <MFRC522.h>
#include <MFRC522Extended.h>
#include <deprecated.h>
#include <require_cpp11.h>

#define SS_PIN          10        // Any unused digital pin
#define NR_OF_READERS   15        // How many readers do you have?

#define NUM_LEDS 15
#define DATA_PIN 2                // Possibly need to reassign
#define LED_TYPE WS2811
#define COLOR_ORDER RGB 
#define BRIGHTNESS 30             // Number between 0 & 64

// #define DEBUG
#define CRITICAL_DEBUG

MFRC522 mfrc522[NR_OF_READERS];   // Create MFRC522 instances.

String currentIDs[] = { "00000000", "00000000", "00000000", "00000000", "00000000", 
                        "00000000", "00000000", "00000000", "00000000", "00000000", 
                        "00000000", "00000000", "00000000", "00000000", "00000000"};  // Current IDs on readers.
String correctIDs[] = { "89fa6698", "f9de6499", "e953db98", "39a1bf98", "6910b599",
                        "69606e99", "59f5bc98", "a5363f", "ca27e8", "a5054f", 
                        "6937b598", "69efbb98", "8971f697", "89e04398", "93786332"};  // Correct IDs to compare against.
byte RSTpins[] = {22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36};        // Unique digital pin for each sensor.
byte blackLightPin = 6;
boolean allCorrect = false;                                                           // Flag if all IDs match the correct IDs.
int totalPresent = 0;

CRGB leds[NUM_LEDS];

void setup() {
  Serial.begin(9600); // Initialize serial communications with the PC
  SPI.begin();        // Init SPI bus
  FastLED.addLeds<LED_TYPE, DATA_PIN, COLOR_ORDER>(leds, NUM_LEDS);// Initialize the led library
  FastLED.setBrightness(BRIGHTNESS);
  
  pinMode(blackLightPin, OUTPUT);

  for (int i = 0; i < NR_OF_READERS; i++) {
    pinMode(RSTpins[i], OUTPUT);
  }
  
  for (int i = 0; i < NUM_LEDS; i++) {
    leds[i] = CRGB::Black;
  }
}

void loop() {
  allCorrect = true;
  totalPresent = 0;
  
  for (uint8_t reader = 0; reader < NR_OF_READERS; reader++) {
    currentIDs[reader] = "00000000";
    digitalWrite(RSTpins[reader], HIGH);                       // Turn on the sensor (RST is reversed, so HIGH is off, LOW is on)
    delay(40);                                                // Could be shortened/removed, test please
    mfrc522[reader].PCD_Init(SS_PIN, RSTpins[reader]);        // Init each MFRC522 card
    delay(40);                                 // Could be shortened/removed, test please
    if (mfrc522[reader].PICC_IsNewCardPresent() && mfrc522[reader].PICC_ReadCardSerial()) {
      currentIDs[reader] = getCode(mfrc522[reader].uid.uidByte, mfrc522[reader].uid.size);
      
      #ifdef DEBUG
        Serial.print(currentIDs[reader]);
        Serial.print(" = ");
        Serial.print(correctIDs[reader]);
        Serial.print(": ");
        Serial.println(currentIDs[reader] == correctIDs[reader]);
      #endif
      
      mfrc522[reader].PICC_HaltA();                           // Stop reading
      mfrc522[reader].PCD_StopCrypto1();
    } else {
      #ifdef CRITICAL_DEBUG
        Serial.print("IsNewCardPresent = ");
        Serial.println(mfrc522[reader].PICC_IsNewCardPresent());
        Serial.print("ReadCardSerial = ");
        Serial.println(mfrc522[reader].PICC_ReadCardSerial());
        Serial.print("Reader malfunction on reader# ");
        Serial.println(reader + 1);
      #endif
    }
    digitalWrite(RSTpins[reader], LOW);                      // Turn the sensor off
      
    #ifdef DEBUG
      Serial.print("Reader # ");
      Serial.print(reader + 1);
      Serial.print(" has ID: ");
      Serial.println(currentIDs[reader]);
      Serial.println("===============");
    #endif
    
    if (currentIDs[reader] != "00000000") {
      totalPresent++;
    }
    
    if (currentIDs[reader] != correctIDs[reader]) {
      allCorrect = false;
    }
  }
  
  for (uint8_t id = 0; id < totalPresent; id++) {
    // turn led[id] on
    leds[id] = CRGB::Red;
  }
  
  // for (uint8_t id = totalPresent; id < NUM_LEDS; id++) {
  //   leds[id] = CRGB::Black;
  // }
  FastLED.show();

  
  #ifdef DEBUG
    Serial.print("The first ");
    Serial.print(totalPresent);
    Serial.println("LEDs have been turned on.");
  #endif
  
  if (totalPresent == NR_OF_READERS) {
    digitalWrite(blackLightPin, HIGH);      // Turn on relay for black light.
    
    #ifdef DEBUG
      Serial.println("The black light has been turned on.");
    #endif
  } else {
    digitalWrite(blackLightPin, LOW);
  }
  
  if (allCorrect) {
    finishedGame();
  }
}

void finishedGame() {
  #ifdef DEBUG
    Serial.println("Finished game, All RFID lights have turned green.");
  #endif
  
  for(int i = 0; i < NUM_LEDS; i++) {
    leds[i] = CRGB::Green;
  }
  FastLED.show();

  
  //while(true) {
    //stop loop from reseting anything.
  //}
}

String getCode(byte *buffer, byte bufferSize) {
  String code = "";
  for (byte i = 0; i < bufferSize; i++) code = code + String(buffer[i], HEX);
  return (code);
}

what do you see in the debug statements?

So check out here the whole post which will give all the guidance related to the MyChart – Login, MyChart forgot the password, MyChart register and more which you required at mychart henry.Parksmartdenver Pay Denver Tickety - Henry Ford My Chart