skyouc
2025-03-19 cbe83089c3d3044a13bc38c7c4d94207fd22a741
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrController.java
@@ -1,9 +1,5 @@
package com.vincent.rsf.server.manager.controller;
import cn.afterturn.easypoi.excel.ExcelImportUtil;
import cn.afterturn.easypoi.excel.entity.ImportParams;
import cn.afterturn.easypoi.excel.entity.result.ExcelImportResult;
import cn.afterturn.easypoi.excel.imports.ExcelImportService;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.vincent.rsf.framework.common.Cools;
@@ -16,6 +12,7 @@
import com.vincent.rsf.server.common.domain.KeyValVo;
import com.vincent.rsf.server.common.domain.PageParam;
import com.vincent.rsf.server.manager.entity.Matnr;
import com.vincent.rsf.server.manager.entity.excel.MatnrsTemplate;
import com.vincent.rsf.server.manager.service.MatnrService;
import com.vincent.rsf.server.system.controller.BaseController;
import io.swagger.annotations.Api;
@@ -28,6 +25,8 @@
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;
import javax.validation.constraints.NotNull;
import java.util.*;
@RestController
@@ -42,7 +41,7 @@
    public R page(@RequestBody Map<String, Object> map) {
        BaseParam baseParam = buildParam(map, BaseParam.class);
        PageParam<Matnr, BaseParam> pageParam = new PageParam<>(baseParam, Matnr.class);
        return R.ok().add(matnrService.page(pageParam, pageParam.buildWrapper(true)));
        return R.ok().add( matnrService.getMatnrPage(pageParam));
    }
    @PreAuthorize("hasAuthority('manager:matnr:list')")
@@ -57,6 +56,7 @@
        return R.ok().add(matnrService.listByIds(Arrays.asList(ids)));
    }
    @PreAuthorize("hasAuthority('manager:matnr:list')")
    @GetMapping("/matnr/{id}")
    public R get(@PathVariable("id") Long id) {
@@ -68,9 +68,7 @@
    @PostMapping("/matnr/save")
    public R save(@RequestBody Matnr matnr) {
        matnr.setCreateBy(getLoginUserId());
        matnr.setCreateTime(new Date());
        matnr.setUpdateBy(getLoginUserId());
        matnr.setUpdateTime(new Date());
        if (!matnrService.save(matnr)) {
            return R.error("Save Fail");
        }
@@ -113,7 +111,6 @@
        return R.ok().add(vos);
    }
    @SecurityRequirement(name = HttpHeaders.AUTHORIZATION)
    @PreAuthorize("hasAuthority('manager:matnr:list')")
    @ApiOperation(value = "获取分类物料明细列表")
    @PostMapping("/matnr/group")
@@ -133,21 +130,34 @@
    }
    @PreAuthorize("hasAuthority('manager:matnr:list')")
    @ApiOperation("导出物料信息")
    @PostMapping("/matnr/export")
    public void export(@RequestBody Map<String, Object> map, HttpServletResponse response) throws Exception {
        ExcelUtil.build(ExcelUtil.create(matnrService.list(), Matnr.class), response);
        List<Matnr> matnrs = new ArrayList<>();
        if (!Objects.isNull(map.get("ids"))) {
            matnrs = matnrService.list(new LambdaQueryWrapper<Matnr>().in(Matnr::getId, map.get("ids")).eq(Matnr::getStatus, 1));
        } else {
            matnrs = matnrService.list(new LambdaQueryWrapper<Matnr>().last("limit 1"));
        }
        ExcelUtil.build(ExcelUtil.create(null, MatnrsTemplate.class, true), response);
    }
    @PreAuthorize("hasAuthority('manager:matnr:save')")
    @PreAuthorize("hasAuthority('manager:matnr:list')")
    @ApiOperation("下载物料模板")
    @PostMapping("/matnr/template/download")
    public void download(@RequestBody Map<String, Object> map, HttpServletResponse response) throws Exception {
        ExcelUtil.build(ExcelUtil.create(null, MatnrsTemplate.class, true), response);
    }
    @PreAuthorize("hasAuthority('manager:matnr:update')")
    @ApiOperation(value = "excel表格导入物料信息")
    @PostMapping("/matnr/import")
    public R listImport(@RequestParam MultipartFile file) throws Exception {
    public R listImport(MultipartFile file) throws Exception {
        if (Objects.isNull(file)) {
            throw new CoolException("文件不能为空!!");
        }
        matnrService.importExcels(file);
        return R.ok();
       return matnrService.importExcels(file);
    }
}