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.
80 lines
2.3 KiB
80 lines
2.3 KiB
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;
|
|
}
|
|
}
|