猫鼬的“有独立工作收入的员工”模式设计问题

Problem with “Employee with independent job income” schema design with mongoose

学习mongoDb。寻找合适的架构解决方案: 拥有 - 员工,每个 - 员工都有自己的 - 工作类型,并且每 - 类型的工作都有自己的 - 收入。正确的模式将如何寻找它,以便有可能为员工添加具有自己收入数据的新型工作,并在未来对所有收入数据进行所有必要的数学运算?

Const mongoose = require(‘mongoose’)
Const Schema = mongoose.Schema

Const employeeSchema = new schema({

   employeeName: {type: string},
   job: [
          {
            jobName:{type: string},
            jobIncome:{type: number}
            date: {type: Date, default : Date.now}
          }
        ]

})

该模式看起来正确吗?

Const mongoose = require(‘mongoose’)
Const Schema = mongoose.Schema

Const employeeSchema = new schema({

   employeeName: {type: string},
   job: [
          {
            reference:{ type: Schema.Types.ObjectId,
                ref: "Job",
                required: true},
            joiningDate: {type: Date, default : Date.now},
            lastDate: {type: Date}
          }
        ]
})

作业模式的定义 - 您也可以有其他字段

Const jobSchema = new schema({
    title:{ type:string},
    income:{type:number}
})
module.exports = Job = mongoose.model("Job", jobSchema);