xuhy
2025-04-27 f9d81e4f0a6853e9d1a14d82a63072dc35c08cb4
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
101
102
103
104
105
106
107
package com.ruoyi.admin.controller.large;
 
 
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.ruoyi.admin.entity.SysUser;
import com.ruoyi.admin.large.model.AnalysisRecycleData;
import com.ruoyi.admin.large.service.AnalysisRecycleDataService;
import com.ruoyi.admin.service.SysUserService;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.security.service.TokenService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
 
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;
import java.util.Objects;
 
/**
 * <p>
 *  前端控制器
 * </p>
 *
 * @author xiaochen
 * @since 2025-04-21
 */
@Api(tags = {"大屏-回收数据分析"})
@RestController
@RequestMapping("/analysis-recycle-data")
public class AnalysisRecycleDataController {
    private final AnalysisRecycleDataService analysisRecycleDataService;
    private final TokenService tokenService;
    private final SysUserService sysUserService;
 
    @Autowired
    public AnalysisRecycleDataController(AnalysisRecycleDataService analysisRecycleDataService, TokenService tokenService, SysUserService sysUserService) {
        this.analysisRecycleDataService = analysisRecycleDataService;
        this.tokenService = tokenService;
        this.sysUserService = sysUserService;
    }
 
    /**
     * 查询回收数据分析列表
     */
    @ApiOperation( value = "查询回收数据分析列表")
    @GetMapping(value = "/list")
    public R<List<AnalysisRecycleData>> list(@RequestParam(value = "analysisType",required = false) Integer analysisType) {
        LambdaQueryWrapper<AnalysisRecycleData> wrapper = new LambdaQueryWrapper<>();
        if(Objects.nonNull(analysisType)){
            wrapper.eq(AnalysisRecycleData::getAnalysisType,analysisType);
        }
        wrapper.orderByDesc(AnalysisRecycleData::getCreateTime);
        return R.ok(analysisRecycleDataService.list(wrapper));
    }
 
    /**
     * 查询回收数据分析大屏
     */
    @ApiOperation( value = "查询回收数据分析-大屏")
    @GetMapping(value = "/recycleLarge")
    public R<Map<String,Long>> recycleLarge(@RequestParam(value = "analysisType",required = false) Integer analysisType) {
        Map<String,Long> map = analysisRecycleDataService.recycleLarge(analysisType);
        return R.ok(map);
    }
 
    /**
     * 添加回收数据分析管理
     */
    @ApiOperation( value = "添加回收数据分析")
    @PostMapping(value = "/add")
    public R<Boolean> add(@RequestBody AnalysisRecycleData dto) {
        Long userid = tokenService.getLoginUser().getUserid();
        SysUser sysUser = sysUserService.getById(userid);
        if(Objects.nonNull(sysUser)){
            dto.setOperatorName(sysUser.getNickName());
        }
        dto.setCreateTime(LocalDateTime.now());
        dto.setUpdateTime(LocalDateTime.now());
        return R.ok(analysisRecycleDataService.save(dto));
    }
 
    /**
     * 修改回收数据分析
     */
    @ApiOperation( value = "修改回收数据分析")
    @PostMapping(value = "/update")
    public R<Boolean> update(@RequestBody AnalysisRecycleData dto) {
        Long userid = tokenService.getLoginUser().getUserid();
        SysUser sysUser = sysUserService.getById(userid);
        if(Objects.nonNull(sysUser)){
            dto.setOperatorName(sysUser.getNickName());
        }
        dto.setUpdateTime(LocalDateTime.now());
        return R.ok(analysisRecycleDataService.updateById(dto));
    }
 
    /**
     * 删除回收数据分析
     */
    @ApiOperation( value = "删除回收数据分析")
    @DeleteMapping(value = "/deleteById")
    public R<Boolean> deleteById(@RequestParam("id") Integer id) {
        return R.ok(analysisRecycleDataService.removeById(id));
    }
}