自动化立体仓库 - WMS系统
lty
8 天以前 539a56279625242c497b4b4093f2defbb9d80334
src/main/java/com/zy/asrs/controller/LocMastController.java
@@ -40,15 +40,19 @@
    @RequestMapping(value = "/locMast/init/pwd")
    public R locMastInitPwd(@RequestParam(required = false) String pwd) {
        if (Cools.isEmpty(pwd)) {
            return R.error("请输入口令");
            return R.error("response.input_password");
        }
        return R.ok().add(Parameter.get().getLocMastInitPwd().equals(pwd));
        R r = R.ok();
        r.put("data",Parameter.get().getLocMastInitPwd().equals(pwd));
        return r;
    }
    @PostMapping(value = "/group/empty/stock")
    @ManagerAuth(memo = "获取同组货架的空库位")
    @ManagerAuth(memo = "response.get_group_empty_stock")
    public R getGroupEmptyStock(@RequestParam(required = false) String sourceLocNo) {
        return R.ok().add(locMastService.queryGroupEmptyStock(sourceLocNo));
        R r = R.ok();
        r.put("data", locMastService.queryGroupEmptyStock(sourceLocNo));
        return r;
    }
    @RequestMapping(value = "/locMast/{id}/auth")
@@ -67,6 +71,7 @@
        excludeTrash(param);
        EntityWrapper<LocMast> wrapper = new EntityWrapper<>();
        convert(param, wrapper);
        wrapper.orderBy("modi_time",true);
        if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));}
        return R.ok(locMastService.selectPage(new Page<>(curr, limit), wrapper));
    }
@@ -94,25 +99,25 @@
    }
    @RequestMapping(value = "/locMast/add/auth")
    @ManagerAuth(memo = "库位添加")
    @ManagerAuth(memo = "response.loc_mast_add")
    public R add(LocMast locMast) {
        locMast.setModiUser(getUserId());
        locMast.setModiTime(new Date());
        locMast.setAppeUser(getUserId());
        locMast.setAppeTime(new Date());
        locMastService.insert(locMast);
        return R.ok();
        return R.ok("response.save_success");
    }
   @RequestMapping(value = "/locMast/update/auth")
   @ManagerAuth(memo = "库位修改")
   @ManagerAuth(memo = "response.loc_mast_update")
    public R update(LocMast locMast){
        if (Cools.isEmpty(locMast) || null==locMast.getLocNo()){
            return R.error();
            return R.error("response.param_error");
        }
        LocMast oldLocMast = locMastService.selectById(locMast.getLocNo());
        if (locMast.getLocSts().equals("F") && (oldLocMast.getLocSts().equals("D") || oldLocMast.getLocSts().equals("O"))) {
            return R.error("当前操作已被阻止,请联系管理员");
            return R.error("response.operation_blocked_contact_admin");
        }
        // 有物料时修改为空库位或者空板库位,则删除库存明细
        if (oldLocMast.getLocSts().equals("R") || oldLocMast.getLocSts().equals("F")) {
@@ -123,24 +128,24 @@
        locMast.setModiUser(getUserId());
        locMast.setModiTime(new Date());
        locMastService.updateById(locMast);
        return R.ok();
        return R.ok("response.update_success");
    }
    @RequestMapping(value = "/locMast/delete/auth")
    @ManagerAuth(memo = "库位删除")
    @ManagerAuth(memo = "response.loc_mast_delete")
    public R delete(@RequestParam String param){
        List<LocMast> list = JSONArray.parseArray(param, LocMast.class);
        if (Cools.isEmpty(list)){
            return R.error();
            return R.error("response.param_error");
        }
        for (LocMast entity : list){
            locMastService.delete(new EntityWrapper<>(entity));
        }
        return R.ok();
        return R.ok("response.delete_success");
    }
    @RequestMapping(value = "/locMast/export/auth")
    @ManagerAuth(memo = "库位导出")
    @ManagerAuth(memo = "response.loc_mast_export")
    public R export(@RequestBody JSONObject param){
        List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class);
        EntityWrapper<LocMast> wrapper = new EntityWrapper<>();
@@ -171,20 +176,34 @@
    public R query(@RequestBody JSONObject param) {
        Wrapper<LocMast> wrapper = new EntityWrapper<LocMast>().eq(humpToLine(String.valueOf(param.get("key"))), param.get("val"));
        if (null != locMastService.selectOne(wrapper)){
            return R.parse(BaseRes.REPEAT).add(getComment(LocMast.class, String.valueOf(param.get("key"))));
            R r = R.parse(BaseRes.REPEAT);
            r.put("data", getComment(LocMast.class, String.valueOf(param.get("key"))));
            return r;
        }
        return R.ok();
        return R.ok("response.operation_success");
    }
    @PostMapping(value = "/locMast/batchUpdateArea/auth")
    @ManagerAuth
    public R batchUpdateArea(@RequestBody JSONObject param) {
        List<String> locNos = param.getJSONArray("locNos").toJavaList(String.class);
        Integer areaId = param.getInteger("areaId");
        if (Cools.isEmpty(locNos) || areaId == null) {
            return R.error("response.param_error");
        }
        locMastService.batchUpdateArea(locNos, areaId.shortValue());
        return R.ok("response.update_success");
    }
    @RequestMapping(value = "/locMast/init/auth")
    @ManagerAuth(memo = "初始化库位")
    @ManagerAuth(memo = "response.loc_mast_init")
//    @Transactional
    public R init(LocMastInitParam param) {
        try{
            List<LocMast> list = new ArrayList<>();
            BasWhs basWhs = basWhsService.selectByIdentifying(param.getIdentifying());
            if (Cools.isEmpty(basWhs)){
                return R.error("库型不存在!!!");
                return R.error("response.whs_type_not_exist");
            }
            for (int r=param.getStartRow(); r<=param.getEndRow(); r++){
                for (int b=param.getStartBay(); b<=param.getEndBay(); b++) {
@@ -193,27 +212,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("response.crn_parse_error");
                        }
                        Date now =  new Date();
                        LocMast locMast = new LocMast();
                        locMast.setLocNo(locNo);
@@ -221,7 +237,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());
@@ -239,9 +255,9 @@
                locMastService.delete(new EntityWrapper<>());
            }
            locMastService.insertBatch(list);
            return R.ok("初始化成功");
            return R.ok("response.init_success");
        }catch (Exception e){
            return R.error("初始化失败===>"+e.getMessage());
            return R.error("response.init_failed");
        }
    }
}