zhanghua
2023-09-11 06bbe2b33d8f147a5c5b024f3c0e507b547e794b
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
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
package com.ycl.controller.dict;
 
 
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.ycl.api.CommonResult;
import com.ycl.controller.BaseController;
import com.ycl.dto.video.Camera;
import com.ycl.dto.video.PageResult;
import com.ycl.entity.dict.DataDictionary;
import com.ycl.enums.common.DictTypeEnum;
import com.ycl.service.dict.IDataDictionaryService;
import com.ycl.util.VideoUtil;
import com.ycl.vo.dict.DataDictionaryVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
 
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
 
/**
 * <p>
 * 前端控制器
 * </p>
 *
 * @author lyq
 * @since 2022-09-15
 */
@RestController
@RequestMapping("/dict")
@Api(tags = "字典模块")
public class DatabaseDictionaryController extends BaseController {
    @Resource
    private IDataDictionaryService iDatabaseDictionaryService;
    @Autowired
    private VideoUtil videoUtil;
 
    @GetMapping("/listAll")
    @ApiOperation("获取所有字典")
    private CommonResult<List<DataDictionary>> listAll() {
        try {
                 PageResult<Camera> pageResult = videoUtil.callPostCameras(1, 20, "0");
            System.out.println("海康视频成功:" + pageResult.getTotal());
        } catch (Exception ex) {
            System.out.println("海康视频:" + ex.getMessage());
        }
        return CommonResult.success(iDatabaseDictionaryService.getAll());
    }
 
    @GetMapping("/queryByCode")
    @ApiOperation(("根据code获取字段信息"))
    private CommonResult<List<DataDictionary>> queryByCode(@RequestParam(value = "code") String code) {
        List<DataDictionary> dataDictionary = iDatabaseDictionaryService.queryByCode(code, null);
        return CommonResult.success(dataDictionary);
    }
 
    @GetMapping("/queryTypeCode")
    @ApiOperation(("获取字典表所有类型"))
    private CommonResult<Map<String, String>> queryTypeCode() {
        Map<String, String> s = DictTypeEnum.getAllToMap();
        return CommonResult.success(s);
    }
 
    @GetMapping("/query_user_type")
    @ApiOperation("查询用户类型")
    private CommonResult queryUserType() {
        String level = "1";
        return CommonResult.success(iDatabaseDictionaryService
                .list(new LambdaQueryWrapper<DataDictionary>()
                        .eq(DataDictionary::getLevel, level)
                        .eq(DataDictionary::getTypeCode, DictTypeEnum.USER_TYPE.getCode())
                ));
    }
 
    @GetMapping("/query_role_type")
    @ApiOperation("查询角色类型")
    private CommonResult queryRoleType() {
        String level = "1";
        return CommonResult.success(iDatabaseDictionaryService
                .list(new LambdaQueryWrapper<DataDictionary>()
                        .eq(DataDictionary::getLevel, level)
                        .eq(DataDictionary::getTypeCode, DictTypeEnum.ROLE_TYPE.getCode())
                ));
    }
 
    @GetMapping("/query_depart_type")
    @ApiOperation("查询部门类型")
    private CommonResult queryDepartType() {
        String level = "1";
        return CommonResult.success(iDatabaseDictionaryService
                .list(new LambdaQueryWrapper<DataDictionary>()
                        .eq(DataDictionary::getLevel, level)
                        .eq(DataDictionary::getTypeCode, DictTypeEnum.DEPART_TYPE.getCode())
                ));
    }
 
    @GetMapping("/query_Street_type")
    @ApiOperation("查询乡村街道类型")
    private CommonResult queryStreetType() {
        String level = "1";
        return CommonResult.success(iDatabaseDictionaryService
                .list(new LambdaQueryWrapper<DataDictionary>()
                        .eq(DataDictionary::getLevel, level)
                        .eq(DataDictionary::getTypeCode, DictTypeEnum.STREET_TYPE.getCode())
                ));
    }
 
    @GetMapping("/query_social_type")
    @ApiOperation("查询所辖村(社区")
    private CommonResult querySocialTypeById(@RequestParam Integer id) {
        return CommonResult.success(iDatabaseDictionaryService
                .list(new LambdaQueryWrapper<DataDictionary>()
                        .eq(DataDictionary::getParentId, id)
                ));
    }
 
 
    @GetMapping("/query_social")
    @ApiOperation("查询所辖村(社区")
    private CommonResult querySocialType() {
        String level = "1";
        return CommonResult.success(iDatabaseDictionaryService
                .list(new LambdaQueryWrapper<DataDictionary>()
                        .eq(DataDictionary::getLevel, level)
                        .eq(DataDictionary::getTypeCode, DictTypeEnum.COMMUNITY_TYPE.getCode())
                ));
    }
 
    @GetMapping("/query_type")
    @ApiOperation("通过类型编码查询类型")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "typeCode", value = "01违规 02 事件等级 03证件类型 04文化 05名族 06违建 07用户类型 08 部门类型 09 角色类型 10 乡村街道 11 社区"),
            @ApiImplicitParam(name = "level", value = "1 顶级 2 一级子级 3 二级子级 4三级子级")
    }
    )
    private CommonResult queryType(@RequestParam String typeCode, @RequestParam Integer level) {
        return CommonResult.success(iDatabaseDictionaryService
                .list(new LambdaQueryWrapper<DataDictionary>()
                        .eq(DataDictionary::getLevel, level)
                        .eq(DataDictionary::getTypeCode, typeCode)
                ));
    }
 
    @GetMapping("/query_tree_type")
    @ApiOperation("通过类型编码查询树形类型-只有两级")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "typeCode", value = "01违规 02 事件等级 03证件类型 04文化 05名族 06违建 07用户类型 08 部门类型 09 角色类型 10 乡村街道 11 社区"),
            @ApiImplicitParam(name = "level", value = "1 顶级 2 一级子级 3 二级子级 4三级子级")
    }
    )
    private CommonResult queryTreeType(@RequestParam String typeCode, @RequestParam Integer level) {
 
        List<DataDictionaryVo> list = iDatabaseDictionaryService.queryTreeType(typeCode, level);
        return CommonResult.success(list);
    }
 
 
    @GetMapping("/addition")
    @ApiOperation("通用添加")
    private CommonResult queryType(@RequestBody DataDictionary dataDictionary) {
        return CommonResult.success(iDatabaseDictionaryService.save(dataDictionary));
    }
 
    @GetMapping("/query")
    @ApiOperation("通用id查询详情")
    private CommonResult queryDictById(@RequestParam Integer id) {
        return CommonResult.success(iDatabaseDictionaryService
                .list(new LambdaQueryWrapper<DataDictionary>()
                        .eq(DataDictionary::getParentId, id)));
    }
}