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.entity.dict.DataDictionary;
import com.ycl.enums.common.DictTypeEnum;
import com.ycl.service.dict.IDataDictionaryService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
/**
*
* 前端控制器
*
*
* @author lyq
* @since 2022-09-15
*/
@RestController
@RequestMapping("/dict")
@Api(tags = "字典模块")
public class DatabaseDictionaryController extends BaseController {
@Resource
private IDataDictionaryService iDatabaseDictionaryService;
@GetMapping("/listAll")
@ApiOperation("获取所有字典")
private CommonResult> listAll() {
return CommonResult.success(iDatabaseDictionaryService.getAll());
}
@GetMapping("/queryByCode")
@ApiOperation(("根据code获取字段信息"))
private CommonResult> queryByCode(@RequestParam(value = "code") String code) {
List dataDictionary = iDatabaseDictionaryService.queryByCode(code);
return CommonResult.success(dataDictionary);
}
@GetMapping("/query_user_type")
@ApiOperation("查询用户类型")
private CommonResult queryUserType() {
String level = "1";
return CommonResult.success(iDatabaseDictionaryService
.list(new LambdaQueryWrapper()
.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()
.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()
.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()
.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()
.eq(DataDictionary::getParentId, id)
));
}
@GetMapping("/query_social")
@ApiOperation("查询所辖村(社区")
private CommonResult querySocialType() {
String level = "1";
return CommonResult.success(iDatabaseDictionaryService
.list(new LambdaQueryWrapper()
.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()
.eq(DataDictionary::getLevel, level)
.eq(DataDictionary::getTypeCode, typeCode)
));
}
@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()
.eq(DataDictionary::getParentId, id)));
}
}