自动化立体仓库 - WMS系统
zwl
23 小时以前 6e18b1e086f202512eeb9aa988a8b9026cfccec3
src/main/java/com/zy/api/service/impl/WcsApiServiceImpl.java
@@ -207,23 +207,25 @@
                        wrkMastService.updateById(wrkMast);
                        //出库为机台工位时,冻结相对有的库位,及相邻库位
                        String s = Utils.convertLocFormat(params.getLocNo());
                        LocAroundBind bind = locAroundBindService.selectOne(new EntityWrapper<LocAroundBind>()
                                .eq("b_loc_no", s));
                        if (!Objects.isNull(bind)) {
                            bind.setFreeze(1);
                            locAroundBindService.updateById(bind);
                            //冻结相邻库位
                            Integer[] aroundIds = freezeLocAround(bind.getOrderNo());
                            if (aroundIds != null) {
                                for (Integer id : aroundIds) {
                                    if (id != null && id > 0) {
                                        LocAroundBind aroundBind = locAroundBindService.selectOne(
                                                new EntityWrapper<LocAroundBind>()
                                                        .eq("dev_id", bind.getDevId())
                                                        .eq("order_no", id));
                                        if (aroundBind != null) {
                                            aroundBind.setFreeze(1);
                                            locAroundBindService.updateById(aroundBind);
                        if(Cools.isEmpty(wrkMast.getLocNo())){
                            LocAroundBind bind = locAroundBindService.selectOne(new EntityWrapper<LocAroundBind>()
                                    .eq("b_loc_no", s));
                            if (!Objects.isNull(bind)) {
                                bind.setFreeze(1);
                                locAroundBindService.updateById(bind);
                                //冻结相邻库位
                                Integer[] aroundIds = freezeLocAround(bind.getOrderNo());
                                if (aroundIds != null) {
                                    for (Integer id : aroundIds) {
                                        if (id != null && id > 0) {
                                            LocAroundBind aroundBind = locAroundBindService.selectOne(
                                                    new EntityWrapper<LocAroundBind>()
                                                            .eq("dev_id", bind.getDevId())
                                                            .eq("order_no", id));
                                            if (aroundBind != null) {
                                                aroundBind.setFreeze(1);
                                                locAroundBindService.updateById(aroundBind);
                                            }
                                        }
                                    }
                                }
@@ -422,7 +424,7 @@
                        }
                        Double realQty = Math.round((wrkDetl.getStockQty() - wrkDetl.getAnfme()) * 10000) / 10000.0;
                        if (!Cools.isEmpty(weight)) {
                            Double val = Math.round((weight - 3) * 10000) / 10000.0;
                            Double val = Math.round((weight - 2.5) * 10000) / 10000.0;
                            //称重后,计算出真实长度
                            realQty = val * matnr.getVolume();
                            if (realQty<matnr.getSafeQty()){