cl
2 天以前 8645387c6c7850d71bd2ac87407da9440d518cc8
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocServiceImpl.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.vincent.rsf.common.utils.Utils;
import com.vincent.rsf.framework.common.Cools;
import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.framework.exception.CoolException;
@@ -49,13 +50,24 @@
    @Override
    public R modifyLocs(LocModifyParams locs) {
        if (locs.getId().isEmpty()) {
        if (Objects.isNull(locs.getId()) || locs.getId().isEmpty()) {
            throw new CoolException("库位ID不能为空!!");
        }
        Loc loc = locs.getLoc();
        if (Objects.isNull(loc)) {
            throw new CoolException("修改库位信息不能为空!!");
        }
        // 兼容旧请求中的状态禁用参数
        if (Objects.equals(loc.getStatus(), 0) && Objects.isNull(loc.getUseStatus())) {
            loc.setUseStatus("X");
            // loc.setStatus(0);
            loc.setStatus(null);
        }
        List<Loc> exists = this.list(new LambdaQueryWrapper<Loc>().in(Loc::getId, locs.getId()));
        if (exists.isEmpty()) {
            throw new CoolException("未找到可修改的库位信息!!");
        }
        String join = loc.getType();
@@ -64,7 +76,7 @@
        }
        boolean update = this.update(new LambdaUpdateWrapper<Loc>()
                .in(Loc::getId, locs.getId())
                .eq(Loc::getStatus, 1)
                // .eq(Loc::getStatus, 1)
                .set(!Objects.isNull(loc.getAreaId()), Loc::getAreaId, loc.getAreaId())
                .set(!Objects.isNull(loc.getWarehouseId()), Loc::getWarehouseId, loc.getWarehouseId())
                .set(!Objects.isNull(loc.getUseStatus()), Loc::getUseStatus, loc.getUseStatus())
@@ -76,7 +88,8 @@
                .set(!Objects.isNull(loc.getFlagLabelMange()), Loc::getFlagLabelMange, loc.getFlagLabelMange())
                .set(!Objects.isNull(loc.getStatus()), Loc::getStatus, loc.getStatus()));
        if (!update) {
            throw new CoolException("库位信息修改失败!!");
            // 无数据变更时按成功返回,避免重复操作报错
            return R.ok(loc);
        }
        return R.ok(loc);
@@ -133,6 +146,7 @@
                for (int l = param.getStartLev(); l <= param.getEndLev(); l++) {
                    // 获取库位号
                    String locNo = locStar +  String.format("%d", r) + String.format("-%d", b) + String.format("-%d", l);
//                    String locNo = Utils.zeroFill("A1", 2) + String.format("%03d", r) + String.format("%03d", b) + String.format("%02d", l);
                    Loc loc = new Loc();
                    loc.setCode(locNo)
                            .setUseStatus("O")