无关风月
2025-02-28 dd663d0ac783755d889e270eee57ee58630c88c8
xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserController.java
@@ -16,6 +16,8 @@
import com.xinquan.common.core.utils.page.CollUtils;
import com.xinquan.common.core.utils.page.PageDTO;
import com.xinquan.common.core.web.domain.BaseModel;
import com.xinquan.common.log.annotation.Log;
import com.xinquan.common.log.enums.BusinessType;
import com.xinquan.common.redis.service.RedisService;
import com.xinquan.common.security.service.TokenService;
import com.xinquan.common.security.utils.SecurityUtils;
@@ -418,6 +420,7 @@
        StringBuilder stringBuilder = new StringBuilder();
        List<AppUser> list = appUserService.lambdaQuery()
                .eq(BaseModel::getDelFlag, 0)
                .isNotNull(AppUser::getCellPhone)
                .ne(AppUser::getUserStatus, 3).list();
        stringBuilder.append(list.size()).append(",");
        List<AppUser> memberList = list.stream().filter(appUser ->
@@ -528,7 +531,7 @@
    private TokenService tokenService;
    @PostMapping("/freezing")
    @ApiOperation(value = "冻结用户", tags = "管理后台-用户管理")
    @Log(title = "【用户管理】冻结用户", businessType = BusinessType.UPDATE)
    public R freezingDetail(@RequestBody UserFreezingDTO dto) {
        AppUser byId = appUserService.getById(dto.getUid());
        byId.setFreezingTime(LocalDateTime.now());
@@ -581,6 +584,7 @@
    }
    @GetMapping("/unFreezing")
    @ApiOperation(value = "解冻用户", tags = "管理后台-用户管理")
    @Log(title = "【用户管理】解冻用户", businessType = BusinessType.UPDATE)
    public R unFreezing(String uid) {
        AppUser byId = appUserService.getById(uid);
        byId.setUserStatus(1);
@@ -609,6 +613,8 @@
            @ApiImplicitParam(name = "energyValue", value = "能量值", dataType = "int", required = true),
            @ApiImplicitParam(name = "reason", value = "备注", dataType = "String", required = true)
    })
    @Log(title = "【用户管理】能量值修改", businessType = BusinessType.UPDATE)
    public R setTotalEnergyValue(String uid,Integer energyValue,String reason) {
        AppUser byId = appUserService.getById(uid);
        if (energyValue<0){
@@ -643,6 +649,8 @@
            @ApiImplicitParam(name = "vipType", value = "会员类型 1非 2月 3季 4年", dataType = "Integer", required = true),
            @ApiImplicitParam(name = "vipExpireTime", value = "会员到期时间 yyyy-MM-dd HH:mm", dataType = "String", required = true),
    })
    @Log(title = "【用户管理】设置会员", businessType = BusinessType.UPDATE)
    public R setVip(String uid, Integer vipType,String vipExpireTime) {
        // 将其转化为LocalDateTime格式
        LocalDateTime parse = LocalDateTime.parse(vipExpireTime, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
@@ -727,6 +735,7 @@
        appUserWalletRecordLambdaQueryWrapper.like(org.springframework.util.StringUtils.hasLength(dto.getCellPhone()),AppUser::getCellPhone,dto.getCellPhone());
        appUserWalletRecordLambdaQueryWrapper.like(org.springframework.util.StringUtils.hasLength(dto.getNickName()),AppUser::getNickname,dto.getNickName());
        appUserWalletRecordLambdaQueryWrapper.orderByDesc(BaseModel::getCreateTime);
        appUserWalletRecordLambdaQueryWrapper.isNotNull(AppUser::getCellPhone);
        List<AppUser> page = appUserService
                .list(appUserWalletRecordLambdaQueryWrapper);
        List<UserInfoExport> userInfoExports = new ArrayList<>();
@@ -802,7 +811,8 @@
                .eq(Objects.nonNull(courseDTO.getGender()), AppUser::getGender, courseDTO.getGender())
                .eq(Objects.nonNull(courseDTO.getUserStatus()), AppUser::getUserStatus, courseDTO.getUserStatus())
                .between(Objects.nonNull(startTime),AppUser::getVipExpireTime,startTime,endTime)
                .between(Objects.nonNull(startTime1),AppUser::getRegisterTime,startTime1,endTime1)
                .between(Objects.nonNull(startTime1),AppUser::getRegisterTime,startTime1,endTime1);
        courseLambdaQueryWrapper.isNotNull(AppUser::getCellPhone)
                .orderByDesc(AppUser::getRegisterTime);
        if (org.springframework.util.StringUtils.hasLength(courseDTO.getVipType())){
            String[] split = courseDTO.getVipType().split(",");
@@ -1155,7 +1165,7 @@
            String key = keyPrefix + cellPhone;
            String code = redisService.getCacheObject(key);
            // 万能验证码
            if (captcha.equals("123456") || (com.xinquan.common.core.utils.StringUtils.isNotBlank(code) && code.equals(
            if (captcha.equals("220125") || (com.xinquan.common.core.utils.StringUtils.isNotBlank(code) && code.equals(
                    captcha))) {
                redisService.deleteObject(key);
                return true;