|
|
@@ -237,6 +237,9 @@ public class StoreOperationalActivityServiceImpl implements StoreOperationalActi
|
|
|
if (dto.getUserId() == null) {
|
|
|
throw new IllegalArgumentException("用户ID不能为空");
|
|
|
}
|
|
|
+ if (dto.getPhone() == null || dto.getPhone().trim().isEmpty()) {
|
|
|
+ throw new IllegalArgumentException("手机号不能为空");
|
|
|
+ }
|
|
|
|
|
|
StoreOperationalActivity activity = activityMapper.selectById(dto.getActivityId());
|
|
|
if (activity == null) {
|
|
|
@@ -256,6 +259,11 @@ public class StoreOperationalActivityServiceImpl implements StoreOperationalActi
|
|
|
throw new IllegalArgumentException("已成功报名,请勿重复报名");
|
|
|
}
|
|
|
|
|
|
+ Integer samePhoneCount = signupMapper.countByActivityIdAndPhone(dto.getActivityId(), dto.getPhone().trim());
|
|
|
+ if (samePhoneCount != null && samePhoneCount > 0) {
|
|
|
+ throw new IllegalArgumentException("同一活动同一手机号已报名,不允许重复报名");
|
|
|
+ }
|
|
|
+
|
|
|
Integer approvedCount = signupMapper.countSignupByActivityId(dto.getActivityId());
|
|
|
Integer limitPeople = activity.getActivityLimitPeople();
|
|
|
if (limitPeople != null && limitPeople > 0 && approvedCount != null && approvedCount >= limitPeople) {
|