Commit e52fda8e597c9f53cb9522273b0928d9a15df211
1 parent
e2261ca6
✨ feat(mes): 添加条码清单导出功能
实现条码清单的 Excel 导出功能,用户可以通过点击导出按钮下载条码清单。此功能增强了用户体验,方便用户管理和使用条码数据。
Showing
1 changed file
with
20 additions
and
0 deletions
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/barcode/MesWmBarcodeController.java
| 1 | package cn.iocoder.yudao.module.mes.controller.admin.wm.barcode; | 1 | package cn.iocoder.yudao.module.mes.controller.admin.wm.barcode; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog; | ||
| 3 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; | 4 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; |
| 5 | +import cn.iocoder.yudao.framework.common.pojo.PageParam; | ||
| 4 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 6 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 5 | import cn.iocoder.yudao.framework.common.util.object.BeanUtils; | 7 | import cn.iocoder.yudao.framework.common.util.object.BeanUtils; |
| 8 | +import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; | ||
| 6 | import cn.iocoder.yudao.module.mes.controller.admin.wm.barcode.vo.MesWmBarcodePageReqVO; | 9 | import cn.iocoder.yudao.module.mes.controller.admin.wm.barcode.vo.MesWmBarcodePageReqVO; |
| 7 | import cn.iocoder.yudao.module.mes.controller.admin.wm.barcode.vo.MesWmBarcodeRespVO; | 10 | import cn.iocoder.yudao.module.mes.controller.admin.wm.barcode.vo.MesWmBarcodeRespVO; |
| 8 | import cn.iocoder.yudao.module.mes.controller.admin.wm.barcode.vo.MesWmBarcodeSaveReqVO; | 11 | import cn.iocoder.yudao.module.mes.controller.admin.wm.barcode.vo.MesWmBarcodeSaveReqVO; |
| @@ -12,11 +15,16 @@ import io.swagger.v3.oas.annotations.Operation; | @@ -12,11 +15,16 @@ import io.swagger.v3.oas.annotations.Operation; | ||
| 12 | import io.swagger.v3.oas.annotations.Parameter; | 15 | import io.swagger.v3.oas.annotations.Parameter; |
| 13 | import io.swagger.v3.oas.annotations.tags.Tag; | 16 | import io.swagger.v3.oas.annotations.tags.Tag; |
| 14 | import jakarta.annotation.Resource; | 17 | import jakarta.annotation.Resource; |
| 18 | +import jakarta.servlet.http.HttpServletResponse; | ||
| 15 | import jakarta.validation.Valid; | 19 | import jakarta.validation.Valid; |
| 16 | import org.springframework.security.access.prepost.PreAuthorize; | 20 | import org.springframework.security.access.prepost.PreAuthorize; |
| 17 | import org.springframework.validation.annotation.Validated; | 21 | import org.springframework.validation.annotation.Validated; |
| 18 | import org.springframework.web.bind.annotation.*; | 22 | import org.springframework.web.bind.annotation.*; |
| 19 | 23 | ||
| 24 | +import java.io.IOException; | ||
| 25 | +import java.util.List; | ||
| 26 | + | ||
| 27 | +import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.EXPORT; | ||
| 20 | import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; | 28 | import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; |
| 21 | 29 | ||
| 22 | @Tag(name = "管理后台 - MES 条码清单") | 30 | @Tag(name = "管理后台 - MES 条码清单") |
| @@ -80,4 +88,16 @@ public class MesWmBarcodeController { | @@ -80,4 +88,16 @@ public class MesWmBarcodeController { | ||
| 80 | return success(BeanUtils.toBean(barcode, MesWmBarcodeRespVO.class)); | 88 | return success(BeanUtils.toBean(barcode, MesWmBarcodeRespVO.class)); |
| 81 | } | 89 | } |
| 82 | 90 | ||
| 91 | + @GetMapping("/export-excel") | ||
| 92 | + @Operation(summary = "导出条码清单 Excel") | ||
| 93 | + @PreAuthorize("@ss.hasPermission('mes:wm-barcode:export')") | ||
| 94 | + @ApiAccessLog(operateType = EXPORT) | ||
| 95 | + public void exportBarcodeExcel(@Valid MesWmBarcodePageReqVO pageReqVO, | ||
| 96 | + HttpServletResponse response) throws IOException { | ||
| 97 | + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); | ||
| 98 | + List<MesWmBarcodeDO> list = barcodeService.getBarcodePage(pageReqVO).getList(); | ||
| 99 | + List<MesWmBarcodeRespVO> voList = BeanUtils.toBean(list, MesWmBarcodeRespVO.class); | ||
| 100 | + ExcelUtils.write(response, "条码清单.xls", "数据", MesWmBarcodeRespVO.class, voList); | ||
| 101 | + } | ||
| 102 | + | ||
| 83 | } | 103 | } |