自动化立体仓库 - WMS系统
pang.jiabao
2024-11-05 780a1afb3bc6ff428b46373d40ad55e4090c8584
src/main/java/com/zy/asrs/controller/LocMastController.java
@@ -17,12 +17,11 @@
import com.zy.asrs.service.BasWhsService;
import com.zy.asrs.service.LocDetlService;
import com.zy.asrs.service.LocMastService;
import com.zy.asrs.utils.Utils;
import com.zy.common.entity.Parameter;
import com.zy.common.model.Shelves;
import com.zy.common.utils.RoleUtils;
import com.zy.common.web.BaseController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import java.util.*;
@@ -67,6 +66,23 @@
        excludeTrash(param);
        EntityWrapper<LocMast> wrapper = new EntityWrapper<>();
        convert(param, wrapper);
        // 不同继承角色显示不同库信息
        RoleUtils.addRoleWrapperByCrn(getUserId(),wrapper);
        if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));}
        return R.ok(locMastService.selectPage(new Page<>(curr, limit), wrapper));
    }
    @RequestMapping(value = "/locMast/crn/list/auth")
    @ManagerAuth
    public R crnList(@RequestParam(defaultValue = "1")Integer curr,
                  @RequestParam(defaultValue = "10")Integer limit,
                  @RequestParam(required = false)String orderByField,
                  @RequestParam(required = false)String orderByType,
                  @RequestParam Map<String, Object> param){
        excludeTrash(param);
        EntityWrapper<LocMast> wrapper = new EntityWrapper<>();
        convert(param, wrapper);
        wrapper.in("crn_no", 1,2);
        if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));}
        return R.ok(locMastService.selectPage(new Page<>(curr, limit), wrapper));
    }
@@ -193,27 +209,24 @@
                        String locNo = String.format("%02d", r) + String.format("%03d", b) + String.format("%02d", l);
                        // 获取堆垛机号
                        int crnNo = 0;
                        if (basWhs.getIdentifying().equals("1") || basWhs.getIdentifying().equals("3")){
                            try{
                                Shelves shelves = new Shelves(param.getEndRow() - param.getStartRow() + 1, param.getCrnAmount(),param.getStartRow());
                                for (List<Integer> node : shelves.nodes){
                        try{
                            Shelves shelves = new Shelves(param.getEndRow() - param.getStartRow() + 1, param.getCrnAmount(),param.getStartRow());
                            for (List<Integer> node : shelves.nodes){
                                    if (node.contains(r)) {
                                        if (!Cools.isEmpty(param.getStaCrn()) && param.getStaCrn() > 0){
                                            crnNo = shelves.nodes.indexOf(node) + param.getStaCrn();
                                        }else {
                                            crnNo = shelves.nodes.indexOf(node) + 1;
                                        }
                                        break;
                                if (node.contains(r)) {
                                    if (!Cools.isEmpty(param.getStaCrn()) && param.getStaCrn() > 0){
                                        crnNo = shelves.nodes.indexOf(node) + param.getStaCrn();
                                    }else {
                                        crnNo = shelves.nodes.indexOf(node) + 1;
                                    }
                                    break;
                                }
                            }catch (Exception e){
                                throw new Exception("解析堆垛机号失败,请填写正确的数据!!!");
                            }
                        }else {
                            crnNo = param.getStaCrn();
                        }catch (Exception e){
                            throw new Exception("解析堆垛机号失败,请填写正确的数据!!!");
                        }
                        Date now =  new Date();
                        LocMast locMast = new LocMast();
                        locMast.setLocNo(locNo);
@@ -221,7 +234,7 @@
                        locMast.setRow1(r); // 排
                        locMast.setBay1(b); // 列
                        locMast.setLev1(l); // 层
                        locMast.setGro1(0); // 组
                        locMast.setGro1(r); // 组
                        locMast.setCrnNo(crnNo); // 堆垛机
                        locMast.setLocType1(!Cools.isEmpty(param.getLocType1()) ? param.getLocType1() : 1);
                        locMast.setLocType2(param.getLocType2());