#
zhou zhou
2 天以前 523365960513f297024a419f94b2b42eccd9456f
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WarehouseController.java
@@ -12,17 +12,21 @@
import com.vincent.rsf.server.common.domain.PageParam;
import com.vincent.rsf.server.manager.entity.Warehouse;
import com.vincent.rsf.server.manager.entity.WarehouseAreas;
import com.vincent.rsf.server.manager.entity.vo.WarehouseVO;
import com.vincent.rsf.server.manager.service.WarehouseAreasItemService;
import com.vincent.rsf.server.manager.service.WarehouseAreasService;
import com.vincent.rsf.server.manager.service.WarehouseService;
import com.vincent.rsf.server.manager.utils.buildPageRowsUtils;
import com.vincent.rsf.server.system.controller.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import jakarta.servlet.http.HttpServletResponse;
import java.util.*;
import java.util.stream.Collectors;
@Api(tags = "仓库")
@RestController
@@ -42,13 +46,29 @@
    public R page(@RequestBody Map<String, Object> map) {
        BaseParam baseParam = buildParam(map, BaseParam.class);
        PageParam<Warehouse, BaseParam> pageParam = new PageParam<>(baseParam, Warehouse.class);
        return R.ok().add(warehouseService.page(pageParam, pageParam.buildWrapper(true)));
        PageParam<Warehouse, BaseParam> page = warehouseService.page(pageParam, pageParam.buildWrapper(true));
        buildPageRowsUtils.userNameMap(page.getRecords());
        return R.ok().add(page);
    }
    @PreAuthorize("hasAuthority('manager:warehouse:list')")
    @PostMapping("/warehouse/list")
    public R list(@RequestBody Map<String, Object> map) {
        return R.ok().add(warehouseService.list());
    }
    @PreAuthorize("hasAuthority('manager:warehouse:list')")
    @PostMapping("/warehouse/list2")
    public R list2(@RequestBody Map<String, Object> map) {
        List<Warehouse> warehouseList = warehouseService.list(new LambdaQueryWrapper<Warehouse>().select(Warehouse::getId,Warehouse::getName));
        List<WarehouseVO> warehouseList2 = warehouseList.stream().map(warehouse -> {
            WarehouseVO vo = new WarehouseVO();
            vo.setId(warehouse.getId());
            vo.setName(warehouse.getName());
            return vo;
        }).collect(Collectors.toList());
        return R.ok().add(warehouseList2);
    }
    @PreAuthorize("hasAuthority('manager:warehouse:list')")
@@ -103,19 +123,19 @@
        Warehouse warehouse1 = warehouseService.getById(warehouse.getId());
        if (!warehouse.getName().equals(warehouse1.getName())) {
            List<Warehouse> areasList = warehouseService.list(new LambdaQueryWrapper<Warehouse>().eq(Warehouse::getName, warehouse1.getName()));
            List<Warehouse> areasList = warehouseService.list(new LambdaQueryWrapper<Warehouse>().eq(Warehouse::getName, warehouse.getName()));
            if (!areasList.isEmpty()) {
                throw new CoolException("仓库名已存在!!");
            }
        }
        if (!warehouse.getCode().equals(warehouse1.getCode())) {
            List<Warehouse> areasList = warehouseService.list(new LambdaQueryWrapper<Warehouse>().eq(Warehouse::getCode, warehouse1.getCode()));
            List<Warehouse> areasList = warehouseService.list(new LambdaQueryWrapper<Warehouse>().eq(Warehouse::getCode, warehouse.getCode()));
            if (!areasList.isEmpty()) {
                throw new CoolException("仓库编码已存在!!");
            }
        }
        warehouse.setUpdateTime(new Date());
        if (!warehouseService.updateById(warehouse)) {
            return R.error("Update Fail");
        }
@@ -166,4 +186,11 @@
        ExcelUtil.build(ExcelUtil.create(list, Warehouse.class), response);
    }
    @ApiOperation("获取仓库树状图")
    @PreAuthorize("hasAuthority('manager:warehouse:list')")
    @PostMapping("/warehouse/areas")
    public R getAreasForWarehouse(@RequestBody Map<String, Object> param) {
        return R.ok(warehouseService.getAllWarehouseAreas(param));
    }
}