xiaoyi
6 天以前 730f9b0c25a6c111dab1ea4a1ac5e1da9a48f765
yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dict/DictDataController.java
@@ -7,6 +7,9 @@
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataImportExcelVO;
import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataImportReqVO;
import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataImportRespVO;
import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataPageReqVO;
import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataRespVO;
import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.DictDataSaveReqVO;
@@ -24,6 +27,7 @@
import org.springframework.web.bind.annotation.*;
import java.io.IOException;
import java.util.Arrays;
import java.util.List;
import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
@@ -83,7 +87,6 @@
    @GetMapping("/page")
    @Operation(summary = "获得字典类型的分页")
    @PreAuthorize("@ss.hasPermission('system:dict:query')")
    public CommonResult<PageResult<DictDataRespVO>> getDictTypePage(@Valid DictDataPageReqVO pageReqVO) {
        PageResult<DictDataDO> pageResult = dictDataService.getDictDataPage(pageReqVO);
        return success(BeanUtils.toBean(pageResult, DictDataRespVO.class));
@@ -92,7 +95,6 @@
    @GetMapping(value = "/get")
    @Operation(summary = "/查询字典数据详细")
    @Parameter(name = "id", description = "编号", required = true, example = "1024")
    @PreAuthorize("@ss.hasPermission('system:dict:query')")
    public CommonResult<DictDataRespVO> getDictData(@RequestParam("id") Long id) {
        DictDataDO dictData = dictDataService.getDictData(id);
        return success(BeanUtils.toBean(dictData, DictDataRespVO.class));
@@ -110,4 +112,25 @@
                BeanUtils.toBean(list, DictDataRespVO.class));
    }
    @GetMapping("/get-import-template")
    @Operation(summary = "获得导入字典数据模板")
    public void importTemplate(HttpServletResponse response) throws IOException {
        // 手动创建导出 demo
        List<DictDataImportExcelVO> list = Arrays.asList(
                DictDataImportExcelVO.builder().sort(1).label("示例字典数据").value("demo")
                        .dictType("demo_dict_type").status(0).colorType("").cssClass("").remark("").build()
        );
        // 输出
        ExcelUtils.write(response, "字典数据导入模板.xls", "字典数据列表", DictDataImportExcelVO.class, list);
    }
    @PostMapping("/import")
    @Operation(summary = "导入字典数据")
    @PreAuthorize("@ss.hasPermission('system:dict:import')")
    public CommonResult<DictDataImportRespVO> importExcel(@Valid DictDataImportReqVO importReqVO)
            throws Exception {
        List<DictDataImportExcelVO> list = ExcelUtils.read(importReqVO.getFile(), DictDataImportExcelVO.class);
        return success(dictDataService.importDictDataList(list, importReqVO));
    }
}