| package com.doumee.api.cloud; | 
|   | 
| import com.doumee.api.BaseController; | 
| import com.doumee.biz.system.SystemDictDataBiz; | 
| import com.doumee.config.annotation.CloudRequiredPermission; | 
| import com.doumee.core.annotation.pr.PreventRepeat; | 
| import com.doumee.core.constants.OperaType; | 
| import com.doumee.core.model.ApiResponse; | 
| import com.doumee.core.model.PageData; | 
| import com.doumee.core.model.PageWrap; | 
| import com.doumee.core.utils.Constants; | 
| import com.doumee.dao.system.dto.PlatformConfigDTO; | 
| import com.doumee.dao.system.dto.QuerySystemDictDataDTO; | 
| import com.doumee.dao.system.dto.VisitConfigDTO; | 
| import com.doumee.dao.system.model.SystemDictData; | 
| import com.doumee.dao.system.vo.SystemDictDataListVO; | 
| import com.doumee.service.system.SystemDictDataService; | 
| 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.validation.annotation.Validated; | 
| import org.springframework.web.bind.annotation.*; | 
|   | 
| import java.util.ArrayList; | 
| import java.util.List; | 
|   | 
| /** | 
|  * @author Eva.Caesar Liu | 
|  * @date 2023/03/21 14:49 | 
|  */ | 
| @Api(tags = "字典数据") | 
| @RestController | 
| @RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/system/dictData") | 
| public class SystemDictDataCloudController extends BaseController { | 
|   | 
|     @Autowired | 
|     private SystemDictDataService systemDictDataService; | 
|   | 
|     @Autowired | 
|     private SystemDictDataBiz systemDictDataBiz; | 
|   | 
|     @PreventRepeat | 
|     @ApiOperation("新建") | 
|     @PostMapping("/create") | 
|     @CloudRequiredPermission("system:dict:update") | 
|     public ApiResponse create(@Validated(OperaType.Create.class) @RequestBody SystemDictData systemDictData,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { | 
|         systemDictData.setLoginUserInfo(this.getLoginUser(token)); | 
|         systemDictData.setCreateUser(systemDictData.getLoginUserInfo().getId()); | 
|         return ApiResponse.success(systemDictDataBiz.create(systemDictData)); | 
|     } | 
|   | 
|     @ApiOperation("删除") | 
|     @GetMapping("/delete/{id}") | 
|     @CloudRequiredPermission("system:dict:update") | 
|     public ApiResponse deleteById(@PathVariable Integer id) { | 
|         systemDictDataService.deleteById(id); | 
|         return ApiResponse.success(null); | 
|     } | 
|   | 
|     @ApiOperation("批量删除") | 
|     @GetMapping("/delete/batch") | 
|     @CloudRequiredPermission("system:dict:delete") | 
|     public ApiResponse deleteByIdInBatch(@RequestParam String ids) { | 
|         String [] idArray = ids.split(","); | 
|         List<Integer> idList = new ArrayList<>(); | 
|         for (String id : idArray) { | 
|             idList.add(Integer.valueOf(id)); | 
|         } | 
|         systemDictDataService.deleteByIdInBatch(idList); | 
|         return ApiResponse.success(null); | 
|     } | 
|   | 
|     @ApiOperation("修改") | 
|     @PostMapping("/updateById") | 
|     @CloudRequiredPermission("system:dict:update") | 
|     public ApiResponse updateById(@Validated(OperaType.Update.class) @RequestBody SystemDictData systemDictData,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { | 
|         systemDictData.setLoginUserInfo(this.getLoginUser(token)); | 
|         systemDictData.setUpdateUser(systemDictData.getLoginUserInfo().getId()); | 
|         systemDictDataBiz.updateById(systemDictData); | 
|         return ApiResponse.success(null); | 
|     } | 
|   | 
|     @ApiOperation("分页查询") | 
|     @PostMapping("/page") | 
|     @CloudRequiredPermission("system:dict:update") | 
|     public ApiResponse<PageData<SystemDictDataListVO>> findPage (@RequestBody PageWrap<QuerySystemDictDataDTO> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { | 
|         return ApiResponse.success(systemDictDataService.findPage(pageWrap)); | 
|     } | 
|   | 
|   | 
|   | 
|     @ApiOperation(value = "查询字典值数据" ) | 
|     @GetMapping("/getSystemDictData") | 
|     @ApiImplicitParams({ | 
|             @ApiImplicitParam(paramType = "query", dataType = "String", name = "label", value = "数据字典值H5_LINK_ADDR", required = true), | 
|             @ApiImplicitParam(paramType = "query", dataType = "String", name = "dictCode", value = "系统字典值SYSTEM", required = true) | 
|     }) | 
|     public ApiResponse<SystemDictData> getSystemDictData(@RequestParam String dictCode, @RequestParam String label,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { | 
|         return ApiResponse.success(systemDictDataBiz.queryByCode(dictCode,label)); | 
|     } | 
|   | 
|     /** | 
|      * 访客来访配置 | 
|      * @return | 
|      */ | 
|     @ApiOperation(value = "访客来访配置" ) | 
|     @GetMapping("/getVisitConfigDTO") | 
|     public ApiResponse<VisitConfigDTO> getVisitConfigDTO(){ | 
|         return ApiResponse.success(systemDictDataService.getVisitConfigDTO()); | 
|     } | 
|   | 
|     /** | 
|      * 修改访客来访配置 | 
|      * @param visitConfigDTO | 
|      */ | 
|     @ApiOperation(value = "修改访客来访配置" ) | 
|     @PostMapping("/updateVisitConfig") | 
|     public ApiResponse updateVisitConfig(@RequestBody VisitConfigDTO visitConfigDTO,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){ | 
|         visitConfigDTO.setLoginUserInfo(this.getLoginUser(token)); | 
|         systemDictDataService.updateVisitConfig(visitConfigDTO); | 
|         return ApiResponse.success(null); | 
|     }; | 
|     /** | 
|      * 访客来访配置 | 
|      * @return | 
|      */ | 
|     @ApiOperation(value = "访客来访配置" ) | 
|     @GetMapping("/getPlatformConfigDTO") | 
|     public ApiResponse<PlatformConfigDTO> getPlatformConfigDTO(){ | 
|         return ApiResponse.success(systemDictDataService.getPlatformConfigDTO()); | 
|     }; | 
|   | 
|     /** | 
|      * 修改访客来访配置 | 
|      * @param visitConfigDTO | 
|      */ | 
|     @ApiOperation(value = "修改访客来访配置" ) | 
|     @PostMapping("/updatePlatformConfig") | 
|     public ApiResponse updatePlatformConfig(@RequestBody PlatformConfigDTO visitConfigDTO,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){ | 
|         visitConfigDTO.setLoginUserInfo(this.getLoginUser(token)); | 
|         systemDictDataService.updatePlatformConfig(visitConfigDTO); | 
|         return ApiResponse.success(null); | 
|     }; | 
| } |