“djh”
2025-02-24 34f448ffe2aacb496c15ab5da44a24128e0682be
hazmat-system/src/main/java/com/gkhy/hazmat/system/service/impl/HzWarehouseServiceImpl.java
@@ -9,10 +9,16 @@
import com.gkhy.hazmat.common.utils.PageUtils;
import com.gkhy.hazmat.common.utils.SecurityUtils;
import com.gkhy.hazmat.system.domain.HzWarehouse;
import com.gkhy.hazmat.system.domain.HzWarehouseCupboard;
import com.gkhy.hazmat.system.domain.vo.HzWarehouseVo;
import com.gkhy.hazmat.system.mapper.HzWarehouseMapper;
import com.gkhy.hazmat.system.service.HzWarehouseService;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
@@ -33,8 +39,16 @@
            warehouse.setCompanyId(currentUser.getCompanyId());
        }
        PageUtils.startPage();
        List<HzWarehouseVo> hzWarehouseVos = new ArrayList<>();
        List<HzWarehouse> warehouseList=baseMapper.selectWarehouseList(warehouse);
        return CommonPage.restPage(warehouseList);
        for (HzWarehouse hzWarehouseVo : warehouseList) {
            HzWarehouseVo hzWarehouseVo1 = new HzWarehouseVo();
            BeanUtils.copyProperties(hzWarehouseVo,hzWarehouseVo1);
            List<HzWarehouseCupboard> hzWarehouseCupboards = baseMapper.selectByWarehouseId(hzWarehouseVo.getId());
            hzWarehouseVo1.setWarehouseCupboards(hzWarehouseCupboards);
            hzWarehouseVos.add(hzWarehouseVo1);
        }
        return CommonPage.restPage(hzWarehouseVos);
    }
    @Override
@@ -112,4 +126,76 @@
        }
        return UserConstant.UNIQUE;
    }
    /**
     * 新增储柜
     * @param hzWarehouseCupboard
     * @return
     */
    @Override
    public int insertCupboard(HzWarehouseCupboard hzWarehouseCupboard) {
        if (hzWarehouseCupboard.getWarehouseId()==null){
            throw new ApiException("仓库id不可为空");
        }
        List<HzWarehouseCupboard> hzWarehouseCupboards = baseMapper.selectByWarehouseIdAndCupboardName(hzWarehouseCupboard.getWarehouseId(),hzWarehouseCupboard.getCupboardName());
        if (!CollectionUtils.isEmpty(hzWarehouseCupboards)){
            throw new ApiException("存储柜名不可重复");
        }
        SysUser user = SecurityUtils.getLoginUser().getUser();
        hzWarehouseCupboard.setCreateBy(user.getUsername());
        hzWarehouseCupboard.setCreateTime(LocalDateTime.now());
        int i = baseMapper.insertCupboard(hzWarehouseCupboard);
        if (i<0){
            throw new ApiException("添加存储柜失败");
        }
        return i;
    }
    /**
     * 修改储柜
     * @param hzWarehouseCupboard
     * @return
     */
    @Override
    public int updateCupboard(HzWarehouseCupboard hzWarehouseCupboard) {
        if (hzWarehouseCupboard.getWarehouseId()==null){
            throw new ApiException("仓库id不可为空");
        }
        List<HzWarehouseCupboard> hzWarehouseCupboards = baseMapper.selectByWarehouseIdAndCupboardName(hzWarehouseCupboard.getWarehouseId(), hzWarehouseCupboard.getCupboardName());
        if (!CollectionUtils.isEmpty(hzWarehouseCupboards) && hzWarehouseCupboard.getId()!=hzWarehouseCupboards.get(0).getId()){
            throw new ApiException("柜名不可重复");
        }
        SysUser user = SecurityUtils.getLoginUser().getUser();
        hzWarehouseCupboard.setCreateBy(user.getUsername());
        hzWarehouseCupboard.setCreateTime(LocalDateTime.now());
        int i = baseMapper.updateCupboard(hzWarehouseCupboard);
        if (i<0){
            throw new ApiException("修改存储柜失败");
        }
        return i;
    }
    /**
     * 删除储柜
     * @param cupboardId
     * @return
     */
    @Override
    public int deletedCupboard(Long cupboardId) {
        int i = baseMapper.deleteByCupboardId(cupboardId);
        if (i<0){
            throw new ApiException("删除存储柜失败");
        }
        return i;
    }
    /**
     * 根据仓库获取储柜
     * @param warehouseId
     * @return
     */
    @Override
    public List<HzWarehouseCupboard> selectByWarehouseId(Long warehouseId) {
        return baseMapper.selectByWarehouseId(warehouseId);
    }
}