我创建了一个简单的时间跟踪应用程序,人们可以使用TimeIn,TimeOut和标记符。此跟踪的核心对象是用户生成的事件。这与 UserStatus 结合使用可确保状态管理正确无误。以下是减去 updatedAt createdAt 字段的模式:
{
userId: { type : mongoose.Schema.Types.ObjectId, required: true },
localTime: {type: Date},
userEmail: { type: String, required: true },
type: { type : String, required: true },
ip: { type : String, required: false }
}
现在我正在尝试创建一个days事件的聚合。我脑海中的字段是totalWorkTime,totalBreakTime(以秒为单位),noOfBreaks,但我试图解决的情况是用户忘记超时。请考虑:
主要思想是在第二天晚上11:59和第二天凌晨12:00定时和超时。但它很适合。任何有关Schema或建议架构的帮助都会有所帮助。谢谢!
答案 0 :(得分:0)
以UTC及其时区偏移量存储时间。
<div class="unclick--header">
<div class="logo--holder"><h1>Logo</h1></div>
<div class="mousewrapper"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="50" viewBox="0 0 30 57.1"><title>mouse - final</title><path id="mouse-body" d="M31 45.1L31 45.1c0 0.1 0 0.1 0 0.2 0 6-6.7 10.8-15 10.8S1 51.3 1 45.3c0-0.1 0-0.1 0-0.2l0 0V11.8l0 0C1 5.8 7.7 1 16 1s15 4.8 15 10.8l0 0V45.1z" style="fill:none;stroke-linejoin:round;stroke-width:2;stroke:#000"/><circle id="mouse-topcircle" cx="16" cy="10.9" r="2.8"/><path id="mouse-triangle" d="M16.9 47.2l2.9-5c0.4-0.7-0.1-1.5-0.9-1.5h-5.7c-0.8 0-1.3 0.8-0.9 1.5l2.9 5C15.5 47.9 16.5 47.9 16.9 47.2z"/></svg>
</div>
<div id="unclick--desktopmenubutton">
<div class="unclick--desktopmenu-word">Menu</div>
<div class="bar bar1"></div>
<div class="bar bar2"></div>
<div class="bar bar3"></div>
</div>
</div>