yeg
2026-08-26 e12439d1f4a94957d68cda653cb666702bc71040
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
package com.ruoyi.web.controller.system;
 
import java.util.List;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.system.domain.TDetectionCabinet;
import com.ruoyi.system.service.ITDetectionCabinetService;
 
/**
 * 检测柜管理 Controller
 *
 * @author ruoyi
 */
@RestController
@RequestMapping("/system/detectionCabinet")
public class TDetectionCabinetController extends BaseController
{
    private final ITDetectionCabinetService detectionCabinetService;
 
    /**
     * 构造检测柜管理控制器。
     *
     * @param detectionCabinetService 检测柜业务服务
     */
    public TDetectionCabinetController(ITDetectionCabinetService detectionCabinetService)
    {
        this.detectionCabinetService = detectionCabinetService;
    }
 
    /**
     * 分页查询检测柜,可按设备综合信息、创建时间和运行状态筛选。
     *
     * @param detectionCabinet 查询条件
     * @return 分页结果
     */
    @PreAuthorize("@ss.hasPermi('system:detectionCabinet:list')")
    @GetMapping("/list")
    public TableDataInfo list(TDetectionCabinet detectionCabinet)
    {
        startPage();
        List<TDetectionCabinet> list = detectionCabinetService.selectDetectionCabinetList(detectionCabinet);
        return getDataTable(list);
    }
 
    /**
     * 查询检测柜详情。
     *
     * @param cabinetId 检测柜主键
     * @return 检测柜详情
     */
    @PreAuthorize("@ss.hasPermi('system:detectionCabinet:query')")
    @GetMapping("/{cabinetId}")
    public AjaxResult getInfo(@PathVariable Long cabinetId)
    {
        return success(detectionCabinetService.selectDetectionCabinetById(cabinetId));
    }
 
    /**
     * 新增检测柜,创建人取当前登录用户。
     *
     * @param detectionCabinet 检测柜信息
     * @return 操作结果
     */
    @PreAuthorize("@ss.hasPermi('system:detectionCabinet:add')")
    @Log(title = "检测柜管理", businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@Validated @RequestBody TDetectionCabinet detectionCabinet)
    {
        detectionCabinet.setCreateBy(getUsername());
        return toAjax(detectionCabinetService.insertDetectionCabinet(detectionCabinet));
    }
 
    /**
     * 修改检测柜基础信息,更新人取当前登录用户。
     *
     * @param detectionCabinet 检测柜信息
     * @return 操作结果
     */
    @PreAuthorize("@ss.hasPermi('system:detectionCabinet:edit')")
    @Log(title = "检测柜管理", businessType = BusinessType.UPDATE)
    @PutMapping
    public AjaxResult edit(@Validated @RequestBody TDetectionCabinet detectionCabinet)
    {
        detectionCabinet.setUpdateBy(getUsername());
        return toAjax(detectionCabinetService.updateDetectionCabinet(detectionCabinet));
    }
 
    /**
     * 切换检测柜启禁用状态,测试中的检测柜不能禁用。
     *
     * @param detectionCabinet 检测柜主键及目标状态
     * @return 操作结果
     */
    @PreAuthorize("@ss.hasPermi('system:detectionCabinet:changeStatus')")
    @Log(title = "检测柜管理", businessType = BusinessType.UPDATE)
    @PutMapping("/changeStatus")
    public AjaxResult changeStatus(@RequestBody TDetectionCabinet detectionCabinet)
    {
        detectionCabinet.setUpdateBy(getUsername());
        return toAjax(detectionCabinetService.updateDetectionCabinetStatus(detectionCabinet));
    }
 
    /**
     * 批量逻辑删除检测柜,测试中的检测柜不能删除。
     *
     * @param cabinetIds 检测柜主键数组
     * @return 操作结果
     */
    @PreAuthorize("@ss.hasPermi('system:detectionCabinet:remove')")
    @Log(title = "检测柜管理", businessType = BusinessType.DELETE)
    @DeleteMapping("/{cabinetIds}")
    public AjaxResult remove(@PathVariable Long[] cabinetIds)
    {
        return toAjax(detectionCabinetService.deleteDetectionCabinetByIds(cabinetIds, getUsername()));
    }
}