Skip to main content

NFC Reader Entry Model

Overview​

The nfcReaderEntries.model.js file defines the Mongoose schema for the nfcReaderEntries collection in the MongoDB database. It specifies the structure and properties of an NFC reader entry document.

Dependencies​

  • mongoose: The ODM library for MongoDB.
  • mongoose-delete: A Mongoose plugin for soft-deleting documents.

Schema Definition​

The nfcReaderEntrySchema has the following fields:

  • entryTime: A Date representing the time the NFC tag was read. It defaults to the current date and time.
  • nfcTag: A string representing the NFC tag ID. This field is required.
  • scanner: A string representing the ID of the scanner that read the NFC tag. This field is required and references the scanner collection.

Indexes​

  • An index is created on the entryTime field to optimize time-based queries.

Collection Name​

The collection name is explicitly set to nfcReaderEntries.

Soft Deletes​

The mongoose-delete plugin is used to enable soft deletes for the nfcReaderEntry model. This means that when a document is "deleted," it is not actually removed from the database. Instead, a deleted field is set to true, and a deletedAt field is added with the timestamp of the deletion.

Model​

The nfcReaderEntry model is created from the schema and exported for use in other parts of the application.

Exports​

  • nfcReaderEntry: The Mongoose model for the nfcReaderEntries collection.