src/main/java/com/zy/asrs/entity/WrkDetl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/entity/param/SingleUnstackingCompleteParam.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/mapper/WrkDetlMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/WrkDetlService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/common/model/enums/WorkNoType.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/resources/mapper/WrkDetlMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/resources/mapper/WrkMastMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/entity/WrkDetl.java
@@ -225,6 +225,7 @@ /** * 要求检验 1: 是 0: 否 * 徐工汉云拆垛标记 0: 未拆 1: 已拆 */ @ApiModelProperty(value= "要求检验 1: 是 0: 否 ") private Integer inspect; src/main/java/com/zy/asrs/entity/param/SingleUnstackingCompleteParam.java
@@ -1,5 +1,6 @@ package com.zy.asrs.entity.param; import com.core.common.Cools; import lombok.Data; import java.util.List; @@ -20,4 +21,32 @@ private String boxNo;// 是 字符串 木箱编号(唯一字段,出库依据,出库时按照木箱编号出库) } public Integer getSourceDevNo$(){ if (!Cools.isEmpty(this.palletizingNo)){ switch (this.palletizingNo){ case "1": return 119; case "2": return 121; default: return null; } } return null; } public Integer getDevNo$(){ if (!Cools.isEmpty(this.palletizingNo)){ switch (this.palletizingNo){ case "1": return 132; case "2": return 134; default: return null; } } return null; } } src/main/java/com/zy/asrs/mapper/WrkDetlMapper.java
@@ -13,6 +13,7 @@ public interface WrkDetlMapper extends BaseMapper<WrkDetl> { List<WrkDetl> selectByWrkNo(Integer wrkNo); List<WrkDetl> selectByWrkNoUnstacking(Integer wrkNo); int deleteItem(@Param("wrkNo")Integer wrkNo, @Param("matnr")String matnr, @Param("batch")String batch); src/main/java/com/zy/asrs/service/WrkDetlService.java
@@ -12,6 +12,7 @@ void createWorkDetail(Integer workNo, List<DetlDto> detlDtos, String barcode, Long userId, Date now); List<WrkDetl> selectByWrkNo(Integer wrkNo); List<WrkDetl> selectByWrkNoUnstacking(Integer wrkNo); boolean updateAnfme(Double anfme, Integer wrkNo, String matnr, String batch); src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -13,6 +13,8 @@ import com.zy.asrs.service.*; import com.zy.asrs.utils.MatUtils; import com.zy.common.model.DetlDto; import com.zy.common.model.enums.WorkNoType; import com.zy.common.service.CommonService; import com.zy.common.utils.NodeUtils; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -56,6 +58,8 @@ private WrkDetlService wrkDetlService; @Autowired private WaitPakinService waitPakinService; @Autowired private CommonService commonService; @Override @Transactional @@ -753,6 +757,76 @@ @Override @Transactional public void singleUnstackingComplete(SingleUnstackingCompleteParam param) { Long userId = 8888L;//桁架上位软件 //判断param参数 if (Cools.isEmpty(param.getBarcode())){ throw new CoolException("参数:托盘码 barcode为空"); }else if (Cools.isEmpty(param.getPalletizingNo())){ throw new CoolException("参数:码垛位编号 palletizingNo为空"); }else if (Cools.isEmpty(param.getMatLists()) || param.getMatLists().size()==0){ throw new CoolException("参数:物料明细 matLists为空"); } WrkMast wrkMastMatrix = wrkMastService.selectByBarcode(param.getBarcode()); if (Cools.isEmpty(wrkMastMatrix)){ throw new CoolException("参数:托盘码查询工作档失败:"+param.getBarcode()); } List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNoUnstacking(wrkMastMatrix.getWrkNo()); ArrayList<WrkDetl> wrkDetlsNew = new ArrayList<>(); //判断matLists参数 for (SingleUnstackingCompleteParam.MatList matList:param.getMatLists()){ if (Cools.isEmpty(matList.getPosition())){ throw new CoolException("参数:码垛位置 position为空"); }else if (Cools.isEmpty(matList.getBoxNo())){ throw new CoolException("参数:木箱编号 boxNo为空"); } boolean sign=true; for (WrkDetl wrkDetl:wrkDetls){ if (wrkDetl.getSku().equals(matList.getBoxNo())){//木箱编码 wrkDetl.setInspect(1); wrkDetlService.updateById(wrkDetl); wrkDetlsNew.add(wrkDetl); sign=false; break; } } if (sign){ throw new CoolException("参数:木箱编号 boxNo未查询到对应的工作明细!"); } } // 生成工作号 int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(202)); Date now = new Date(); // 生成工作档 WrkMast wrkMast = new WrkMast(); wrkMast.setWrkNo(workNo); wrkMast.setIoTime(now); wrkMast.setWrkSts(51L); // 工作状态:生成入库ID wrkMast.setIoType(202); // 入出库状态:202.拆垛后出库 wrkMast.setIoPri(13D); // 优先级 wrkMast.setSourceStaNo(param.getDevNo$()); wrkMast.setStaNo(140); //贴标站点 // 操作人员数据 wrkMast.setAppeUser(userId); wrkMast.setAppeTime(now); wrkMast.setModiUser(userId); wrkMast.setModiTime(now); boolean res = wrkMastService.insert(wrkMast); if (!res) { throw new CoolException("生成工作档失败"); } for (WrkDetl wrkDetl : wrkDetlsNew){ wrkDetl.setWrkNo(wrkMast.getWrkNo()); wrkDetl.setIoTime(wrkMast.getIoTime()); wrkDetl.setAppeTime(now); wrkDetl.setModiTime(now); if (!wrkDetlService.insert(wrkDetl)) { throw new CoolException("保存工作明细失败"); } } } @@ -762,6 +836,7 @@ @Override @Transactional public void singleMountUnstackingComplete(SingleMountUnstackingCompleteParam param) { Long userId = 8888L;//桁架上位软件 } src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java
@@ -57,6 +57,11 @@ } @Override public List<WrkDetl> selectByWrkNoUnstacking(Integer wrkNo) { return this.baseMapper.selectByWrkNoUnstacking(wrkNo); } @Override public boolean updateAnfme(Double anfme, Integer wrkNo, String matnr, String batch) { if (anfme <= 0) { return this.baseMapper.deleteItem(wrkNo, matnr, batch) > 0; src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java
@@ -44,7 +44,7 @@ try { List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo()); // 修改订单状态 作业中 ===>> 已完成 if (!Cools.isEmpty(wrkDetls)) { if (wrkMast.getIoType()<200 && !Cools.isEmpty(wrkDetls)) { Iterator<WrkDetl> iterator = wrkDetls.iterator(); while (iterator.hasNext()) { WrkDetl wrkDetl = iterator.next(); @@ -102,13 +102,15 @@ if (!wrkMastService.deleteById(wrkMast)) { exceptionHandle("删除工作主档[workNo={0}]失败", wrkMast.getWrkNo()); } // 保存工作明细档历史档 if (!wrkDetlLogService.save(wrkMast.getWrkNo())) { // exceptionHandle("保存工作明细历史档[workNo={0}]失败", wrkMast.getWrkNo()); } // 删除工作明细档 if (!wrkDetlService.delete(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()))) { // exceptionHandle("删除工作明细档[workNo={0}]失败", wrkMast.getWrkNo()); if ((wrkMast.getIoType()<200 || wrkMast.getWrkSts().equals(57L)) && !Cools.isEmpty(wrkDetls)){ // 保存工作明细档历史档 if (!wrkDetlLogService.save(wrkMast.getWrkNo())) { exceptionHandle("保存工作明细历史档[workNo={0}]失败", wrkMast.getWrkNo()); } // 删除工作明细档 if (!wrkDetlService.delete(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()))) { exceptionHandle("删除工作明细档[workNo={0}]失败", wrkMast.getWrkNo()); } } } catch (Exception e) { log.error("fail", e); src/main/java/com/zy/common/model/enums/WorkNoType.java
@@ -10,7 +10,9 @@ PAKIN(0), PICK(1), PAKOUT(2), OTHER(3), OTHER1(3), OTHER2(4), OTHER(5), ; public Integer type; @@ -39,6 +41,10 @@ return PICK.type; case 110: return PAKOUT.type; case 201: return OTHER1.type; case 202: return OTHER2.type; default: break; } src/main/resources/mapper/WrkDetlMapper.xml
@@ -63,6 +63,10 @@ select * from asr_wrk_detl where 1=1 and wrk_no = #{wrkNo} </select> <select id="selectByWrkNoUnstacking" resultMap="BaseResultMap"> select * from asr_wrk_detl where 1=1 and inspect=0 and wrk_no = #{wrkNo} </select> <delete id="deleteItem"> delete from asr_wrk_detl where 1=1 src/main/resources/mapper/WrkMastMapper.xml
@@ -69,6 +69,7 @@ <select id="selectToBeHistoryData" resultMap="BaseResultMap"> select * from asr_wrk_mast where wrk_sts=5 or wrk_sts=44 or wrk_sts=57 or (wrk_sts=15 and ove_mk='Y' and wrk_no not in (select wrk_no from asr_bas_devp)) or (wrk_sts=15 and dateadd(mi,15,crn_end_time) <= getdate() and wrk_no not in (select wrk_no from asr_bas_devp)) or (wrk_sts=15 and crn_end_time is null and wrk_no not in (select wrk_no from asr_bas_devp))