Commit a90de638 authored by shiyu's avatar shiyu

所有大于领取礼物日期的签到记录全部设置为无效,过去未领取的奖励作废

parent 91bf371a
......@@ -123,6 +123,7 @@ public class UserSignInDaoImpl implements UserSignInDao {
UserSignInExample example = new UserSignInExample();
UserSignInExample.Criteria criteria = example.createCriteria();
JdbcHelper.ifPresent(dto.getStartQueryTime(), criteria::andCreateTimeGreaterThan);
JdbcHelper.ifPresent(dto.getSignInDate(), criteria::andSignInDateEqualTo);
criteria.andUserIdEqualTo(dto.getUserId());
criteria.andIsValidEqualTo(true);
UserSignIn userSignin = new UserSignIn();
......
......@@ -163,6 +163,27 @@ public class UserSigninServiceImpl implements UserSigninService {
userSignInRequestDto.setUserId(dto.getUserId());
userSignInRequestDto.setStartQueryTime(userSignin.getCreateTime());
userSignInDao.updateInvalid(userSignInRequestDto);
if (userSignin.getConsecutiveDays() >= 14) {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
LocalDate date = LocalDate.parse(dto.getSignInDate(), formatter);
LocalDate newDate = date.minusDays(7);
String newDateString = newDate.format(formatter);
UserSignInRequestDto beforeUpdateDto = new UserSignInRequestDto();
beforeUpdateDto.setUserId(dto.getUserId());
beforeUpdateDto.setSignInDate(newDateString);
userSignInDao.updateInvalid(beforeUpdateDto);
}
if(userSignin.getConsecutiveDays() == 21) {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
LocalDate date = LocalDate.parse(dto.getSignInDate(), formatter);
LocalDate newDate = date.minusDays(14);
String newDateString = newDate.format(formatter);
UserSignInRequestDto beforeUpdateDto = new UserSignInRequestDto();
beforeUpdateDto.setUserId(dto.getUserId());
beforeUpdateDto.setSignInDate(newDateString);
userSignInDao.updateInvalid(beforeUpdateDto);
}
//创建赠品订单
DistributionOrder distributionOrder = new DistributionOrder();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment