liujie
2025-12-18 3a951774dd0f5ee648a49c235546ba001136dd47
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
package com.ruoyi.web.controller.api;
 
 
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.system.dto.UpdateAppUserDto;
import com.ruoyi.system.model.TAppUser;
import com.ruoyi.system.query.AppUserListQuery;
import com.ruoyi.system.service.TAppUserService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.web.bind.annotation.*;
 
import javax.annotation.Resource;
 
/**
 * <p>
 * 用户管理 前端控制器
 * </p>
 *
 * @author xiaochen
 * @since 2025-11-06
 */
@RestController
@RequestMapping("/t-app-user")
@Api(tags = "(嘉视达)用户管理")
public class TAppUserController {
 
    @Resource
    private TAppUserService  appUserService;
 
    @Autowired
    private RedisTemplate redisTemplate;
 
    @ApiOperation(value = "用户管理分页列表")
    @PostMapping(value = "/pageList")
    public R<PageInfo<TAppUser>> pageList(@RequestBody AppUserListQuery query) {
        return R.ok(appUserService.pageList(query));
    }
 
 
    @ApiOperation(value = "修改状态")
    @GetMapping(value = "/changeStatus")
    @Log(title = "小程序用户-修改状态", businessType = BusinessType.UPDATE)
    public R pageList(@RequestParam Integer id) {
        TAppUser appUser = appUserService.getById(id);
        appUser.setStatus(appUser.getStatus()==1?2:1);
        appUserService.updateById(appUser);
        return R.ok();
    }
 
    @ApiOperation(value = "修改用户信息")
    @PostMapping(value = "/updateAppUser")
    @Log(title = "小程序用户-修改用户信息", businessType = BusinessType.UPDATE)
    public R updateAppUser(@RequestBody UpdateAppUserDto dto) {
 
        if(dto.getCode()!=null && !dto.getCode().isEmpty()){
            long count = appUserService.count(new LambdaQueryWrapper<TAppUser>().eq(TAppUser::getCode, dto.getCode()).ne(TAppUser::getId, dto.getId()));
            if (count > 0) {
                return R.fail("推广号已存在");
            }
        }
        TAppUser appUser = appUserService.getById(dto.getId());
        String code = appUser.getCode();
        if(dto.getCode()!=null && !dto.getCode().isEmpty() && !code.equals(dto.getCode())){
            appUser.setCode(dto.getCode());
            // 移除之前的二维码
            redisTemplate.delete("USER_WX_IMG" + appUser.getId());
        }
        if(dto.getPromotionStatus()!=null){
            appUser.setPromotionStatus(dto.getPromotionStatus());
        }
        if(dto.getUserType()!=null){
            appUser.setUserType(dto.getUserType());
        }
        if(dto.getReferrerUserId()!=null){
            appUser.setReferrerUserId(dto.getReferrerUserId());
        }
        if(dto.getCompanyId()!=null){
            appUser.setCompanyId(dto.getCompanyId());
        }
        appUserService.updateById(appUser);
        return R.ok();
    }
 
 
 
 
    @ApiOperation(value = "查看详情")
    @GetMapping(value = "/detail")
    public R<TAppUser> detail(@RequestParam String id) {
        return R.ok(appUserService.getById( id));
    }
}