feat: 支持限制活动打卡的总次数
此提交包含在:
@@ -25,6 +25,16 @@ func (c CheckinService) Submit(aw *app.Wrapper) app.Result {
|
||||
return aw.Error(err.Error())
|
||||
}
|
||||
today := time.Now().Format("20060102")
|
||||
// 检查是否为限制打卡总次数的活动
|
||||
activity := checkinDAO.FindActivityByID(req.ActivityID)
|
||||
if activity == nil {
|
||||
return aw.Error("活动不存在")
|
||||
} else if activity.Limit > 0 {
|
||||
if checkinDAO.FindUserActivityInHistorySince(uc.UserID, req.ActivityID) != nil {
|
||||
return aw.Error("该打卡活动已经达到限制次数")
|
||||
}
|
||||
}
|
||||
// 检查当天是否已经打卡过
|
||||
if checkinDAO.FindUserActivityByDay(uc.UserID, req.ActivityID, today) != nil {
|
||||
return aw.Error("您今天已参加过该项目,请明天再来")
|
||||
}
|
||||
|
新增問題並參考
封鎖使用者