zxl
2025-04-22 f0a6462c539e217186d6fee31dfec6d2aba2e92a
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.ycl.platform.controller;
 
import com.ycl.system.Result;
import com.ycl.system.domain.group.Add;
import constant.TableNameConstants;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize;
import lombok.RequiredArgsConstructor;
import java.util.List;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import com.ycl.platform.service.DynamicColumnService;
import com.ycl.platform.domain.form.DynamicColumnForm;
import org.springframework.web.bind.annotation.*;
 
import static constant.TableNameConstants.COLUMN_NAME_VIDEO;
 
/**
 * 动态列 前端控制器
 *
 * @author xp
 * @since 2024-08-16
 */
@Validated
@RequiredArgsConstructor
@Api(value = "动态列", tags = "动态列管理")
@RestController
@RequestMapping("/api/dynamic-column")
public class DynamicColumnController {
 
    private final DynamicColumnService dynamicColumnService;
 
    @PostMapping
    @ApiOperation(value = "添加", notes = "添加")
    @PreAuthorize("@ss.hasPermi('dynamicColumn:add')")
    public Result add(@RequestBody @Validated(Add.class) DynamicColumnForm form) {
        return dynamicColumnService.add(form);
    }
 
    @PutMapping
    @ApiOperation(value = "修改", notes = "修改")
    public Result update(@RequestBody @NotEmpty(message = "数据为空,无法保存") List<DynamicColumnForm> columnList) {
        return dynamicColumnService.update(columnList);
    }
 
    @DeleteMapping("/{id}")
    @ApiOperation(value = "ID删除", notes = "ID删除")
    public Result removeById(@PathVariable("id") String id) {
        return dynamicColumnService.removeById(id);
    }
 
    @GetMapping("/list")
    @ApiOperation(value = "列表", notes = "列表")
    public Result list() {
        return dynamicColumnService.all();
    }
 
    @GetMapping("/listByTableName")
    @ApiOperation(value = "列表", notes = "列表")
    public Result listByTableName(@RequestParam @NotNull(message = "路径名不能为空")String pathName) {
        String tableName = getTableNameByPathNane(pathName);
        return dynamicColumnService.allByTableName(tableName);
    }
 
    @PostMapping("/addByTableName")
    @ApiOperation(value = "添加", notes = "添加")
    @PreAuthorize("@ss.hasPermi('dynamicColumn:add')")
    public Result addByTableName(@RequestParam @NotNull(message = "路径名不能为空")String pathName,@RequestBody @Validated(Add.class) DynamicColumnForm form){
        String tableName = getTableNameByPathNane(pathName);
        return dynamicColumnService.addByTableName(tableName,form);
    }
 
 
 
    @PutMapping("/updateByTableName")
    @ApiOperation(value = "修改", notes = "修改")
    public Result updateByTableName(@RequestParam @NotNull(message = "路径名不能为空")String pathName, @RequestBody @NotEmpty(message = "数据为空,无法保存") List<DynamicColumnForm> columnList){
        String tableName = getTableNameByPathNane(pathName);
        if ("".equals(tableName)){
            return null;
        }
        return dynamicColumnService.updateByTableName(tableName,columnList);
    }
 
    private String getTableNameByPathNane(String pathName) {
        String tableName = "";
        if ("录像可用率".equals(pathName)){
            tableName = TableNameConstants.COLUMN_NAME_VIDEO;
        }else if("车辆点位在线率".equals(pathName)){
            tableName = TableNameConstants.COLUMN_NAME_CAR_POINT;
        }else if("人脸点位在线率".equals(pathName)){
            tableName = TableNameConstants.COLUMN_NAME_FACE_POINT;
        }else if("视频点位在线率".equals(pathName)){
            tableName = TableNameConstants.COLUMN_NAME_VIDEO_POINT;
        }
        return tableName;
    }
}