src/main/java/com/zy/asrs/entity/BasDevp.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/mapper/WrkMastMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/utils/RouteUtils.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/core/MainProcess.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/core/model/protocol/StaProtocol.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/resources/mapper/BasDevpMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/resources/mapper/WrkMastMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/entity/BasDevp.java
@@ -70,6 +70,13 @@ private String loading; /** * 空板 */ @ApiModelProperty(value= "空板") @TableField("empty_mk") private String emptyMk; /** * 能入 */ @ApiModelProperty(value= "能入") src/main/java/com/zy/asrs/mapper/WrkMastMapper.java
@@ -258,6 +258,7 @@ */ WrkMast selectWrkMastUnstackingOne202(@Param("sourceStaNo")Integer sourceStaNo); WrkMast selectWrkMastUnstackingOne202Two(@Param("sourceStaNo")Integer sourceStaNo); WrkMast selectWrkMastUnstackingOne145(@Param("sourceStaNo")Integer sourceStaNo); WrkMast selectWrkMastLabelingOne54(); src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -323,7 +323,11 @@ // 更新站点信息 且 下发plc命令 staProtocol.setWorkNo(wrkMast.getWrkNo()); staProtocol.setStaNo(wrkMast.getStaNo()); Integer staNo = wrkMast.getStaNo(); if (wrkMast.getSourceStaNo()==145){ staNo = 147; } staProtocol.setStaNo(staNo); devpThread.setPakMk(staProtocol.getSiteId(), false); boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); if (result) { @@ -4213,6 +4217,57 @@ } /** * 其他 ===>> 退货码垛完成托盘继续下一步 */ public synchronized void stackingCompletionDriveTrayOk3() { try { int[] staNos=new int[]{118}; for (int staNo : staNos){ BasDevp basDevp = basDevpService.selectById(staNo); if (Cools.isEmpty(basDevp) || basDevp.getWrkNo()!=0 || basDevp.getReportSign()!=3){ continue; } WrkMast wrkMast = wrkMastMapper.selectWrkMastUnstackingOne145(145); if (Cools.isEmpty(wrkMast)){ continue; } // 获取站点信息 SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1); StaProtocol staProtocol = devpThread.getStation().get(staNo); if (staProtocol == null) { continue; } else { staProtocol = staProtocol.clone(); } if (!staProtocol.isLoading()){ log.info("{}站点无物,异常!",staNo); continue; } // 判断是否满足入库条件 if (staProtocol.isAutoing() && staProtocol.isLoading() && !staProtocol.isEmptyMk() ) { staProtocol.setWorkNo(wrkMast.getWrkNo()); staProtocol.setStaNo(wrkMast.getStaNo()); devpThread.setPakMk(staProtocol.getSiteId(), false); boolean result = MessageQueue.offer(SlaveType.Devp, devpThread.getSlave().getId(), new Task(2, staProtocol)); if (!result) { throw new CoolException("更新plc站点信息失败==>驱动码垛位托盘前进失败!"); } wrkMast.setSheetNo("5"); wrkMastMapper.updateById(wrkMast); } } }catch (Exception e){ // e.printStackTrace(); // TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); log.error("其他 ===>> 退货码垛完成托盘继续下一步"+e); } } /** * 其他 ===>> 拆垛完成继续下一步 运行途中自动避让空板 */ public synchronized void stackingCompletionDriveTray4() { @@ -4340,6 +4395,7 @@ StaProtocol staProtocol = devpThread.getStation().get(wrkMastSta.getStaEnd()); WrkMast wrkMast = wrkMastMapper.selectPakInStep3(wrkMastSta.getWrkNo().intValue()); if (!Cools.isEmpty(wrkMast)){ Thread.sleep(100); // 下发站点信息 staProtocol.setWorkNo(wrkMast.getWrkNo()); staProtocol.setStaNo(wrkMast.getStaNo()); @@ -4377,6 +4433,7 @@ StaProtocol staProtocol = devpThread.getStation().get(wrkMastSta.getStaEnd()); WrkMast wrkMast = wrkMastMapper.selectPakInStep3(wrkMastSta.getWrkNo().intValue()); if (!Cools.isEmpty(wrkMast)){ Thread.sleep(100); // 下发站点信息 staProtocol.setWorkNo(wrkMast.getWrkNo()); staProtocol.setStaNo(wrkMast.getStaNo()); @@ -4546,6 +4603,7 @@ // 只有当RGV空闲、自动,工位二有物//rgv可用 if (rgvProtocol.getStatusType() == RgvStatusType.IDLE && rgvProtocol.getModeType() == RgvModeType.AUTO && rgvProtocol.getTaskNo1()==0 && rgvProtocol.getTaskNo2()==0 && (rgvProtocol.getLoaded2()==2 || rgvProtocol.getLoaded2()==3 ) ////0 无物;1 一层无物二层有物 ;2一层有物二层无物 (只能满放);3 1、2层都有物 ) { BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvProtocol.getRgvNo()); @@ -4672,6 +4730,7 @@ // 只有当RGV空闲、自动,工位二无物//rgv可用 if (rgvProtocol.getStatusType() == RgvStatusType.IDLE && rgvProtocol.getTaskNo1()==0 && rgvProtocol.getTaskNo2()==0 && rgvProtocol.getModeType() == RgvModeType.AUTO && rgvProtocol.getLoaded2()==0 //现场修改:叠盘机,////0 无物;1 一层无物二层有物(只能拆叠) ;2一层有物二层无物 (只能满放);3 1、2层都有物 ) { src/main/java/com/zy/asrs/utils/RouteUtils.java
@@ -37,7 +37,7 @@ }}; // 反序 public static final List<Integer> TRACK_POSITION_REVERSE_SEQUENCE = new ArrayList<Integer>() {{ add(117);add(116);add(1142);add(114);add(113);add(123);add(121);add(111);add(120);add(110);add(119);add(108);add(107);add(118);add(105);add(104);add(122);add(102);add(101); add(117);add(116);add(1142);add(114);add(123);add(113);add(121);add(111);add(120);add(110);add(119);add(108);add(118);add(107);add(105);add(122);add(104);add(102);add(101); }}; public static String zerofill(String msg, Integer count){ src/main/java/com/zy/core/MainProcess.java
@@ -138,12 +138,14 @@ mainService.stackingCompletionDriveTray(); //拆垛完成继续下一步 mainService.stackingCompletionDriveTray2(); //贴标完成继续下一步 // mainService.stackingCompletionDriveTray3(); //拆垛完成继续下一步 运行途中自动避让空板 mainService.stackingCompletionDriveTray4(); //拆垛完成托盘继续下一步 mainService.stackingCompletionDriveTrayOk2(); //贴标完成继续下一步 // mainService.stackingCompletionDriveTray3(); //退货码垛完成托盘继续下一步 mainService.stackingCompletionDriveTrayOk3(); } catch (Exception e) { src/main/java/com/zy/core/model/protocol/StaProtocol.java
@@ -61,6 +61,7 @@ basDevp.setWrkNo(workNo); basDevp.setAutoing(autoing?"Y":"N"); basDevp.setLoading(loading?"Y":"N"); basDevp.setEmptyMk(emptyMk?"Y":"N"); if (basDevp.getLoading().equals("N") && basDevp.getAutoing().equals("Y")){ basDevp.setReportSign(0); } src/main/resources/mapper/BasDevpMapper.xml
@@ -42,6 +42,7 @@ <result column="gross_wt" property="grossWt" /> <result column="cart_pos" property="cartPos" /> <result column="report_sign" property="reportSign" /> <result column="empty_mk" property="emptyMk" /> </resultMap> src/main/resources/mapper/WrkMastMapper.xml
@@ -351,6 +351,10 @@ SELECT top 1 * FROM dbo.asr_wrk_mast Where 1=1 and io_type=202 and wrk_sts =52 and source_sta_no = #{sourceStaNo} </select> <select id="selectWrkMastUnstackingOne145" resultMap="BaseResultMap"> SELECT top 1 * FROM dbo.asr_wrk_mast Where 1=1 and io_type=1 and wrk_sts =2 and sheet_no='4' and source_sta_no = #{sourceStaNo} </select> <select id="selectWrkMastLabelingOne54" resultMap="BaseResultMap"> SELECT top 1 * FROM dbo.asr_wrk_mast Where 1=1 and io_type=202 and wrk_sts =54 </select>