Pu Zhibing
2025-05-08 41600563b0ee8cfad746c359c4d3971169d1c931
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
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
package com.ruoyi.other.controller;
 
 
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.common.core.web.page.BasePage;
import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.common.log.annotation.Log;
import com.ruoyi.common.log.enums.BusinessType;
import com.ruoyi.common.log.enums.OperatorType;
import com.ruoyi.common.security.annotation.Logical;
import com.ruoyi.common.security.annotation.RequiresPermissions;
import com.ruoyi.other.api.domain.TEvaluationTag;
import com.ruoyi.other.api.domain.TInvoiceType;
import com.ruoyi.other.api.vo.TEvaluationTagVO;
import com.ruoyi.other.query.InvoiceTypePageList;
import com.ruoyi.other.service.TEvaluationTagService;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
 
import java.util.Arrays;
import java.util.List;
 
/**
 * <p>
 *  前端控制器
 * </p>
 *
 * @author 无关风月
 * @since 2024-08-06
 */
@RestController
@RequestMapping("/t-evaluation-tag")
public class TEvaluationTagController {
 
    private final TEvaluationTagService evaluationTagService;
 
    @Autowired
    public TEvaluationTagController(TEvaluationTagService evaluationTagService) {
        this.evaluationTagService = evaluationTagService;
    }
 
    @PostMapping("/getTagList")
    public R<List<TEvaluationTagVO>> getTagList(@RequestParam("type") Integer type) {
        return R.ok(evaluationTagService.getTagList(type));
    }
    @GetMapping("/getList")
    public R<List<TEvaluationTagVO>> getList() {
        return R.ok(evaluationTagService.getList());
    }
    
    
    
    @RequiresPermissions(value = {"/evaluationTag"}, logical = Logical.OR)
    @ResponseBody
    @GetMapping("/pageList")
    @ApiOperation(value = "获取评价标签列表", tags = {"管理后台-评价标签设置"})
    public AjaxResult<PageInfo<TEvaluationTag>> pageList(String name, BasePage basePage){
        PageInfo<TEvaluationTag> pageInfo = evaluationTagService.pageList(name, basePage);
        return AjaxResult.success(pageInfo);
    }
    
    
    @RequiresPermissions(value = {"/evaluationTag/add"}, logical = Logical.OR)
    @ResponseBody
    @PostMapping("/addEvaluationTag")
    @ApiOperation(value = "添加评价标签", tags = {"管理后台-评价标签设置"})
    @Log(title = "【评价标签设置】添加评价标签", businessType = BusinessType.INSERT)
    public AjaxResult addEvaluationTag(@RequestBody TEvaluationTag evaluationTag){
        evaluationTagService.save(evaluationTag);
        return AjaxResult.success();
    }
    
    @RequiresPermissions(value = {"/evaluationTag/update"}, logical = Logical.OR)
    @ResponseBody
    @GetMapping("/getEvaluationTagInfo/{id}")
    @ApiOperation(value = "获取评价标签详情", tags = {"管理后台-评价标签设置"})
    public AjaxResult<TEvaluationTag> getEvaluationTagInfo(@PathVariable Integer id){
        TEvaluationTag evaluationTag = evaluationTagService.getById(id);
        return AjaxResult.success(evaluationTag);
    }
    
    
    @RequiresPermissions(value = {"/evaluationTag/update"}, logical = Logical.OR)
    @ResponseBody
    @PostMapping("/editEvaluationTag")
    @ApiOperation(value = "编辑评价标签", tags = {"管理后台-评价标签设置"})
    @Log(title = "【评价标签设置】编辑评价标签", businessType = BusinessType.UPDATE)
    public AjaxResult editEvaluationTag(@RequestBody TEvaluationTag evaluationTag){
        evaluationTagService.updateById(evaluationTag);
        return AjaxResult.success();
    }
    
    
    @RequiresPermissions(value = {"/evaluationTag/del"}, logical = Logical.OR)
    @ResponseBody
    @DeleteMapping("/delEvaluationTag")
    @ApiOperation(value = "删除评价标签", tags = {"管理后台-评价标签设置"})
    @Log(title = "【评价标签设置】删除评价标签", businessType = BusinessType.DELETE)
    public AjaxResult<TInvoiceType> delEvaluationTag(@RequestParam("id") Integer[] id){
        List<TEvaluationTag> tEvaluationTags = evaluationTagService.listByIds(Arrays.asList(id));
        for (TEvaluationTag evaluationTag : tEvaluationTags) {
            evaluationTagService.removeById(evaluationTag);
        }
        return AjaxResult.success();
    }
    
    
    /**
     * 根据id集合获取数据
     * @param tagIds
     * @return
     */
    @PostMapping("/getListByIds")
    public R<List<TEvaluationTag>> getListByIds(@RequestBody List<Integer> tagIds){
        List<TEvaluationTag> tEvaluationTags = evaluationTagService.listByIds(tagIds);
        return R.ok(tEvaluationTags);
    }
    
    
    @ResponseBody
    @GetMapping("/getRandomEvaluationTag")
    @ApiOperation(value = "获取随机的4个评价标签", tags = {"小程序-充电记录"})
    public AjaxResult<List<TEvaluationTag>> getRandomEvaluationTag(Integer type){
        List<TEvaluationTag> list = evaluationTagService.list(new LambdaQueryWrapper<TEvaluationTag>().eq(TEvaluationTag::getType, type)
                .last(" order by RAND() limit 0, 4"));
        return AjaxResult.success(list);
    }
}