| src/main/java/com/zy/asrs/controller/MobileController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/asrs/service/MobileService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/asrs/service/impl/MesServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/resources/application-dev.yml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/controller/MobileController.java
@@ -529,10 +529,14 @@ @PostMapping("/callEmptyBinOutBound") @ManagerAuth(memo = "pda呼叫空料框出库") public synchronized R callEmptyBinOutBound(@RequestBody JSONObject param) { if(!param.containsKey("staNo") || !param.containsKey("locType")){ // 1.窄,2.宽 if(!param.containsKey("staNo") || !param.containsKey("locType") || !param.containsKey("count")){ // 1.窄,2.宽 return R.parse(BaseRes.PARAM); } return mobileService.callEmptyBinOutBound(null,param.getString("staNo"),param.getString("locType"),getUserId()); int count = param.getInteger("count"); if (count <= 0 || count > 10) { return R.parse("数量有误,count:" + count); } return mobileService.callEmptyBinOutBound(null,param.getString("staNo"),param.getString("locType"),count,getUserId()); } @PostMapping("/callEmptyBinInBound") src/main/java/com/zy/asrs/service/MobileService.java
@@ -107,7 +107,7 @@ * @param locType 托盘类型 1.窄,2.宽 * @param userId 用户id */ R callEmptyBinOutBound(MesOutApply mesOutApply,String staNo, String locType, Long userId); R callEmptyBinOutBound(MesOutApply mesOutApply,String staNo, String locType, int count, Long userId); /** * pda呼叫料框回库 src/main/java/com/zy/asrs/service/impl/MesServiceImpl.java
@@ -372,7 +372,7 @@ // 空托出库 if (StringUtils.isEmpty(mesOutApply.getOrderNo()) && "01".equals(mesOutApply.getTransType())) { // 生成空托出库任务 mobileService.callEmptyBinOutBound(mesOutApply,WMS_TRANS_START_STATION_1,"1",defaultUserId); mobileService.callEmptyBinOutBound(mesOutApply,WMS_TRANS_START_STATION_1,"1",1,defaultUserId); // try { // if (!StringUtils.isEmpty(mesOutApply.getTaskno()) && !StringUtils.isEmpty(mesOutApply.getStationId())) { @@ -586,8 +586,8 @@ transTask.setOrderNo(mesInApply.getOrderNo()); transTask.setTransType(mesInApply.getTransType()); transTask.setCurProcess(mesInApply.getProductLineId()); transTask.setCurStationId("A3"); transTask.setNextStationId("A4"); transTask.setCurStationId(mesInApply.getStationID()); transTask.setNextStationId(WMS_TRANS_START_STATION_2); transTask.setItemno(WMS_ZPALLET_ID); // 固定为空托的编码 transTask.setQty(1); // 空托只回1个 transTask.setProductLineId(mesInApply.getProductLineId()); @@ -595,7 +595,7 @@ transTask.setAgvFactory(1); JSONObject sendAgvTask = submitTask(transTask); if (!"1".equals(sendAgvTask.getString("Success"))) { log.error("出库下发agv运输任务失败,{}", JSONObject.toJSONString(transTask)); log.error("入库下发agv运输任务失败,{}", JSONObject.toJSONString(transTask)); return 2; } } else { @@ -678,7 +678,6 @@ OrderInAndOutUtil.updateOrder(Boolean.TRUE, orderPakin.getId(), 2L, defaultUserId); // 呼叫AGV从产线运回立库 try { if (!StringUtils.isEmpty(mesInApply.getTaskno())) { TransTask transTask = new TransTask(); transTask.setTaskno(mesInApply.getTaskno()); @@ -697,11 +696,11 @@ transTask.setAgvFactory(1); JSONObject sendAgvTask = submitTask(transTask); if (!"1".equals(sendAgvTask.getString("Success"))) { log.error("出库下发agv运输任务失败:{}", JSONObject.toJSONString(transTask)); log.error("入库下发agv运输任务失败:{}", JSONObject.toJSONString(transTask)); throw new CoolException("入库下发agv运输任务失败"); } } } catch (Exception e) { log.error("下发AGV运输任务失败", e); } else { throw new CoolException("MES入库下发agv运输任务失败"); } } @@ -1124,9 +1123,9 @@ // 转发给海康或华晓RCS RcsReturn rcsReturn = rcsService.submitTask(rcsTaskSubmit, transTask.getAgvFactory()); if (rcsReturn.getCode().equals("SUCCESS")) { if (Cools.isEmpty(transTask.getTaskno())) { JSONObject data = rcsReturn.getData(); String robotTaskCode = data.getString("robotTaskCode"); if (Cools.isEmpty(transTask.getTaskno())) { transTask.setTaskno(robotTaskCode); result.put("taskno", transTask.getTaskno()); } src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -1287,20 +1287,23 @@ @Override @Transactional public R callEmptyBinOutBound(MesOutApply mesOutApply, String staNo, String locType, Long userId) { LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_sts", 'D').eq("loc_type2", locType)); if(locMast == null) { return R.parse("该类型:" + locType +"空托盘不存在"); public R callEmptyBinOutBound(MesOutApply mesOutApply, String staNo, String locType,int count, Long userId) { List<LocMast> locMastList = locMastService.selectList(new EntityWrapper<LocMast>().setSqlSelect("TOP " + count + " *") .eq("loc_sts", "D").eq("frozen", 0).eq("loc_type2", locType).orderBy("lev1").orderBy("bay1").orderBy("row1")); if (locMastList.size() < count) { return R.parse("空托数量不足(或冻结),剩余数量:" + locMastList.size()); } // 获取路径 Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>() .eq("type_no", 110) .eq("stn_no", 204) .eq("crn_no", locMast.getCrnNo()); .eq("crn_no", 1); StaDesc staDesc = staDescService.selectOne(wrapper); if (staDesc == null) { return R.parse("出库路径不存在,站点:" + staNo); } for (LocMast locMast: locMastList) { Date now = new Date(); // 生成工作档 int workNo = commonService.getWorkNo(WorkNoType.PAKOUT.type); @@ -1341,6 +1344,7 @@ locMastService.updateById(locMast); } log.info("生成空托出库任务成功,任务号:{}",wrkMast.getWrkNo()); } return R.ok("出库成功"); } src/main/resources/application-dev.yml
@@ -144,3 +144,7 @@ hx: url: http://127.0.0.1:8089/hx/ #wcs地址 wcs: url: http://127.0.0.1:9090/jgwcs