|
@@ -51,7 +51,6 @@ import java.math.BigDecimal;
|
|
|
import java.util.ArrayList;
|
|
import java.util.ArrayList;
|
|
|
import java.util.Date;
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
-import java.util.Optional;
|
|
|
|
|
import java.util.concurrent.ThreadLocalRandom;
|
|
import java.util.concurrent.ThreadLocalRandom;
|
|
|
|
|
|
|
|
@Service
|
|
@Service
|
|
@@ -140,12 +139,23 @@ public class MarketFrontServiceImpl implements MarketFrontService {
|
|
|
public SignUser getUserSignDetail(Long userId) {
|
|
public SignUser getUserSignDetail(Long userId) {
|
|
|
SignUser signUser = signUserMapper.selectOne(Wrappers.lambdaQuery(SignUser.class)
|
|
SignUser signUser = signUserMapper.selectOne(Wrappers.lambdaQuery(SignUser.class)
|
|
|
.eq(SignUser::getUserId, userId).last("limit 1"));
|
|
.eq(SignUser::getUserId, userId).last("limit 1"));
|
|
|
- if (signUser == null || signUser.getUpdateTime().before(DateUtil.beginOfDay(DateTime.now()))) {
|
|
|
|
|
- signUser = Optional.ofNullable(signUser).orElseGet(() -> {
|
|
|
|
|
- SignUser user = new SignUser();
|
|
|
|
|
- user.setDay(0);
|
|
|
|
|
- return user;
|
|
|
|
|
- });
|
|
|
|
|
|
|
+ if (signUser == null) {
|
|
|
|
|
+ signUser = new SignUser();
|
|
|
|
|
+ signUser.setUserId(userId);
|
|
|
|
|
+ signUser.setDay(0);
|
|
|
|
|
+ signUser.setDayPeriod(0);
|
|
|
|
|
+ signUser.setIsHadChecked(false);
|
|
|
|
|
+ return signUser;
|
|
|
|
|
+ }
|
|
|
|
|
+ Date updateTime = signUser.getUpdateTime();
|
|
|
|
|
+ DateTime signZero = DateUtil.beginOfDay(updateTime);
|
|
|
|
|
+ DateTime thisZero = DateUtil.beginOfDay(DateTime.now());
|
|
|
|
|
+ if (updateTime.getTime() < thisZero.getTime()) {
|
|
|
|
|
+ if (thisZero.getTime() - signZero.getTime() != Constant.DAY_MILLS) {
|
|
|
|
|
+ log.info("用户:{}断签,断签天数为:{}", signUser.getUserId(), signUser.getDayPeriod());
|
|
|
|
|
+ signUser.setDay(0);
|
|
|
|
|
+ signUser.setDayPeriod(0);
|
|
|
|
|
+ }
|
|
|
signUser.setIsHadChecked(false);
|
|
signUser.setIsHadChecked(false);
|
|
|
} else {
|
|
} else {
|
|
|
signUser.setIsHadChecked(true);
|
|
signUser.setIsHadChecked(true);
|
|
@@ -372,7 +382,7 @@ public class MarketFrontServiceImpl implements MarketFrontService {
|
|
|
DateTime signZero = DateUtil.beginOfDay(updateTime);
|
|
DateTime signZero = DateUtil.beginOfDay(updateTime);
|
|
|
DateTime thisZero = DateUtil.beginOfDay(DateTime.now());
|
|
DateTime thisZero = DateUtil.beginOfDay(DateTime.now());
|
|
|
if (updateTime.getTime() >= thisZero.getTime()) {
|
|
if (updateTime.getTime() >= thisZero.getTime()) {
|
|
|
- signUser.setIsHadChecked(false);
|
|
|
|
|
|
|
+ signUser.setIsHadChecked(true);
|
|
|
// throw BusinessRuntimeException.getInstance("您已签到");
|
|
// throw BusinessRuntimeException.getInstance("您已签到");
|
|
|
} else {
|
|
} else {
|
|
|
if (updateTime.before(thisZero) && thisZero.getTime() - signZero.getTime() == Constant.DAY_MILLS) {
|
|
if (updateTime.before(thisZero) && thisZero.getTime() - signZero.getTime() == Constant.DAY_MILLS) {
|