src/main/java/com/zy/asrs/entity/OrderDetl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/mapper/WrkDetlMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/OrderDetlService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/WrkDetlService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/resources/mapper/OrderDetlMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/resources/mapper/WrkDetlMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/entity/OrderDetl.java
@@ -53,6 +53,9 @@ /** * 作业数量 * * 1. 入库 : qty 👆 * 1. 出库 : qty 👆 */ @ApiModelProperty(value= "作业数量") private Double qty; src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java
@@ -20,4 +20,6 @@ int increase(@Param("orderId")Long orderId, @Param("matnr")String matnr, @Param("batch")String batch, @Param("qty")Double qty); int decrease(@Param("orderNo")String orderNo, @Param("matnr")String matnr, @Param("batch")String batch, @Param("qty")Double qty); } src/main/java/com/zy/asrs/mapper/WrkDetlMapper.java
@@ -5,8 +5,12 @@ import org.apache.ibatis.annotations.Mapper; import org.springframework.stereotype.Repository; import java.util.List; @Mapper @Repository public interface WrkDetlMapper extends BaseMapper<WrkDetl> { List<WrkDetl> selectByWrkNo(Integer wrkNo); } src/main/java/com/zy/asrs/service/OrderDetlService.java
@@ -17,4 +17,6 @@ boolean increase(Long orderId, String matnr, String batch, Double qty); boolean decrease(String orderNo, String matnr, String batch, Double qty); } src/main/java/com/zy/asrs/service/WrkDetlService.java
@@ -10,4 +10,6 @@ void createWorkDetail(Integer workNo, List<DetlDto> detlDtos, String barcode, Long userId); List<WrkDetl> selectByWrkNo(Integer wrkNo); } src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java
@@ -48,4 +48,10 @@ public boolean increase(Long orderId, String matnr, String batch, Double qty) { return this.baseMapper.increase(orderId, matnr, batch, qty) > 0; } @Override public boolean decrease(String orderNo, String matnr, String batch, Double qty) { return this.baseMapper.decrease(orderNo, matnr, batch, qty) > 0; } } src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -45,11 +45,11 @@ @Autowired private WrkMastService wrkMastService; @Autowired private WrkDetlService wrkDetlService; @Autowired private BasDevpService basDevpService; @Autowired private CommonService commonService; @Autowired private WrkDetlService wrkDetlService; @Autowired private LocMastService locMastService; @Autowired @@ -307,9 +307,7 @@ // 生成工作档明细 for (LocDto locDto : taskDto.getLocDtos()) { if (locDto.getAnfme()==null || locDto.getAnfme() <= 0.0D) { continue; } OrderDetl orderDetl = orderDetlService.selectItem(locDto.getOrderNo(), locDto.getMatnr(), locDto.getBatch()); WrkDetl wrkDetl = new WrkDetl(); wrkDetl.setIoTime(now); wrkDetl.setWrkNo(workNo); @@ -324,6 +322,9 @@ if (!wrkDetlService.insert(wrkDetl)) { throw new CoolException("保存工作档明细失败"); } // todo:luxiaotao 修改订单明细数量 } // 修改库位状态: F.在库 ====>>> R.出库预约/P.拣料/盘点/并板出库中 locMast = locMastService.selectById(taskDto.getLocNo()); @@ -751,18 +752,6 @@ // 出库 ===>> F.在库 if (wrkMast.getIoType() > 100 && wrkMast.getIoType() != 110) { locSts = "F"; // 销售单关联,则生成新的出库任务 if (wrkMast.getPdcType().equals("Y")) { List<WrkDetl> wrkDetls = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", workNo)); for (WrkDetl wrkDetl : wrkDetls) { Double sumAnfme = Optional.ofNullable(locDetlService.getSumAnfme(wrkDetl.getMatnr())).orElse(0.0D); if (sumAnfme < wrkDetl.getAnfme()) { throw new CoolException("取消失败!库存不足以重新生成出库作业"); } } // 生成新的出库作业 stockOutRe(wrkMast, wrkDetls); } // 空板出库 ===>> D.空桶/空栈板 } else if (wrkMast.getIoType() == 110) { locSts = "D"; @@ -782,6 +771,17 @@ } else { throw new CoolException("当前工作状态无法取消"); } // 订单关联 List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo()); for (WrkDetl wrkDetl : wrkDetls) { if (!Cools.isEmpty(wrkDetl.getOrderNo())) { if (!orderDetlService.decrease(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getAnfme())) { throw new CoolException("订单数据回滚失败"); } // 生成新的出库作业 // stockOutRe(wrkMast, wrkDetls); } } // 取消操作人员记录 wrkMast.setManuType("手动取消"); wrkMast.setModiUser(userId); src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java
@@ -50,4 +50,9 @@ } } } @Override public List<WrkDetl> selectByWrkNo(Integer wrkNo) { return this.baseMapper.selectByWrkNo(wrkNo); } } src/main/resources/mapper/OrderDetlMapper.xml
@@ -84,4 +84,20 @@ </choose> </update> <update id="decrease"> update man_order_detl set qty = qty - #{qty} where 1=1 and order_no = #{orderNo} and matnr = #{matnr} <choose> <when test="batch != null and batch != ''"> and batch = #{batch} </when> <otherwise> and (batch IS NULL OR batch = '') </otherwise> </choose> </update> </mapper> src/main/resources/mapper/WrkDetlMapper.xml
@@ -27,4 +27,8 @@ <result column="appe_time" property="appeTime" /> </resultMap> <select id="selectByWrkNo" resultMap="BaseResultMap"> select * from asr_wrk_detl where 1=1 and wrk_no = #{wrkNo} </select> </mapper>