You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
package com.example.demo.serviceImpl;
import com.example.demo.domain.entity.User; import com.example.demo.domain.vo.Gold; import com.example.demo.domain.vo.GoldUser; import com.example.demo.mapper.ConsumeMapper; import com.example.demo.mapper.UserMapper; import com.example.demo.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Service;
import java.util.Date; import java.util.List;
/** * @program: gold-java * @ClassName UserServiceImpl * @description: * @author: Double * @create: 2025−06-25 10:32 * @Version 1.0 **/
@Service public class UserServiceImpl implements UserService {
@Autowired private UserMapper userMapper;
@Override public GoldUser selectUser(String jwcode) { GoldUser user = userMapper.selectUser(jwcode); return user; }
@Override public User selectAllUser(String jwcode) { User user = userMapper.selectAllUser(jwcode); return user; }
@Override public void updateAllGold(User user) { userMapper.updateAllGold(user); }
@Override public void addUser(User user) { userMapper.addUser(user); } /* 每小时更新用户首充时间 */ @Override @Scheduled(cron = "0 0 0 * * ?") public void updateFirstRecharge() { List<Integer> jwcodeList = userMapper.getAllJwcode(); for(Integer jwcode : jwcodeList){ Date earliestPayTime = userMapper.getEarliestRecharge(jwcode); if (earliestPayTime != null){ //获取用户的首充时间
Date currentFirstRecharge = userMapper.selectUserByJwcode(jwcode).getFirstRecharge(); //弱国首充时间为空或与最早支付时间不一致则更新
if (currentFirstRecharge == null || !currentFirstRecharge.after(earliestPayTime)){ userMapper.updateFirstRecharge(jwcode, earliestPayTime); System.out.println("更新了用户" + jwcode + "的首充时间为"+earliestPayTime); } }
} }
@Override public GoldUser selectgold(String jwcode) { GoldUser gold = userMapper.selectGold(jwcode); return gold; } }
|