Animal Project Models
The animal project models are a set of Mongoose models that define the structure of the animal project data in the database. The animal project models are used to interact with the animal project data in the database.
Animal project models are defined in the src/app/_db/models/projects/animalProject.js
file. This file defines the following models.
Animal
export const animalModel = mongoose.Schema({
name: String,
species: String,
animalId: String,
birthdate: Date,
purchaseDate: Date,
sireBreed: String,
damBreed: String,
endWeight: Number,
endDate: Date,
beginningWeight: Number,
beginningDate: Date,
animalCost: Number,
salePrice: Number,
yieldGrade: Number,
qualityGrade: String,
uid: {
type: mongoose.Schema.Types.ObjectId,
ref: "users"
},
projects: [{
type: mongoose.Schema.Types.ObjectId,
ref: "projects"
}]
});
export const Animal = mongoose.models.animals || mongoose.model("animals", animalModel);
Feed
export const feedModel = mongoose.Schema({
name: String,
projectId: {
type: mongoose.Schema.Types.ObjectId,
ref: "projects"
},
uid: {
type: mongoose.Schema.Types.ObjectId,
ref: "users"
}
}, { collection: 'feed' });
export const Feed = mongoose.models.feed || mongoose.model("feed", feedModel);
DailyFeed
export const dailyFeedModel = mongoose.Schema({
feedId: {
type: mongoose.Schema.Types.ObjectId,
ref: "feed"
},
animalId: {
type: mongoose.Schema.Types.ObjectId,
ref: "animals"
},
feedDate: Date,
feedAmount: Number,
feedPurchaceId: {
type: mongoose.Schema.Types.ObjectId,
ref: "feedPurchase"
},
uid: {
type: mongoose.Schema.Types.ObjectId,
ref: "users"
}
}, { collection: 'dailyFeed' });
export const DailyFeed = mongoose.models.dailyFeed || mongoose.model("dailyFeed", dailyFeedModel);
Feed Purchase
export const feedPurchaseModel = mongoose.Schema({
feedId: {
type: mongoose.Schema.Types.ObjectId,
ref: "feed"
},
datePurchased: Date,
amountPurchased: Number,
totalCost: Number,
projectId: {
type: mongoose.Schema.Types.ObjectId,
ref: "projects"
},
uid: {
type: mongoose.Schema.Types.ObjectId,
ref: "users"
}
}, { collection: 'feedPurchases' });
export const FeedPurchase = mongoose.models.feedPurchases || mongoose.model("feedPurchases", feedPurchaseModel);
Expenses
export const expensesModel = mongoose.Schema({
date: Date,
items: String,
quantity: Number,
cost: Number,
uid: {
type: mongoose.Schema.Types.ObjectId,
ref: "users"
},
projects: [{
type: mongoose.Schema.Types.ObjectId,
ref: "projects"
}]
}, { collection: 'expenses' });
export const Expenses = mongoose.models.expenses || mongoose.model("expenses", expensesModel);