|  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Transactional(rollbackFor = Throwable.class) | 
|---|
|  |  |  | @Transactional | 
|---|
|  |  |  | public boolean createInOrder(InHedTB inHedTB, List<InDetTB> inDetTBs) { | 
|---|
|  |  |  | Order order = orderService.selectByNo(inHedTB.getBillNo()); | 
|---|
|  |  |  | // 如果单据不存在则添加;如果单据存在,作业中无法修改,反之则修改单据 | 
|---|
|  |  |  | if (!Cools.isEmpty(order)) { | 
|---|
|  |  |  | if (order.getSettle() > 1L) { | 
|---|
|  |  |  | throw new CoolException(inHedTB.getBillNo() + "正在出库,无法修改单据"); | 
|---|
|  |  |  | throw new CoolException(inHedTB.getBillNo() + "正在入库,无法修改单据"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | orderService.remove(order.getId()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | order = new Order( | 
|---|
|  |  |  | String.valueOf(snowflakeIdWorker.nextId()),    // 编号[非空] | 
|---|
|  |  |  | inHedTB.getBillNo(),    // 订单编号 | 
|---|
|  |  |  | DateUtils.convert(inHedTB.getMakeDate()),    // 单据日期 | 
|---|
|  |  |  | DateUtils.convert(inHedTB.getBillDate()),    // 单据日期 | 
|---|
|  |  |  | docType.getDocId(),    // 单据类型 | 
|---|
|  |  |  | null,    // 项目编号 | 
|---|
|  |  |  | null,    // | 
|---|
|  |  |  | 
|---|
|  |  |  | orderDetl.setOrderNo(outDetTB.getBillNo()); | 
|---|
|  |  |  | orderDetl.setOutOrderNo(outDetTB.getOrderNo()); | 
|---|
|  |  |  | orderDetl.setAutoId(outDetTB.getAutoId()); | 
|---|
|  |  |  | orderDetl.setLuHao(outDetTB.getLuHao()); | 
|---|
|  |  |  | orderDetl.setSpecs(outDetTB.getSPgNO()); | 
|---|
|  |  |  | orderDetl.setDetId(outDetTB.getDetId()); | 
|---|
|  |  |  | //            orderDetl.setLuHao(outDetTB.getLuHao()); | 
|---|
|  |  |  | //            orderDetl.setSpecs(outDetTB.getSPgNO()); | 
|---|
|  |  |  | orderDetl.setPacking(outDetTB.getPacking()); | 
|---|
|  |  |  | orderDetl.setSuppCode(inHedTB.getObjectId()); | 
|---|
|  |  |  | orderDetl.setSupp(inHedTB.getObjectName()); | 
|---|
|  |  |  | orderDetl.setWareId(outDetTB.getWareId()); | 
|---|
|  |  |  | orderDetl.setWareName(outDetTB.getWareName()); | 
|---|
|  |  |  | orderDetl.setBatch(outDetTB.getItemBatch()); | 
|---|
|  |  |  | 
|---|
|  |  |  | if (!orderDetlService.insert(orderDetl)) { | 
|---|
|  |  |  | throw new CoolException("生成单据明细失败,请联系管理员"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | log.info("入库单据成功详情,{}", orderDetl); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return true; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Transactional(rollbackFor = Throwable.class) | 
|---|
|  |  |  | @Transactional | 
|---|
|  |  |  | public boolean createOutOrder(OutHedTB inHedTB, List<OutDetTB> inDetTBs) { | 
|---|
|  |  |  | Order order = orderService.selectByNo(inHedTB.getBillNo()); | 
|---|
|  |  |  | // 如果单据不存在则添加;如果单据存在,作业中无法修改,反之则修改单据 | 
|---|
|  |  |  | 
|---|
|  |  |  | orderDetl.setOrderNo(outDetTB.getBillNo()); | 
|---|
|  |  |  | orderDetl.setOutOrderNo(outDetTB.getOrderNo()); | 
|---|
|  |  |  | orderDetl.setAutoId(outDetTB.getAutoId()); | 
|---|
|  |  |  | orderDetl.setLuHao(outDetTB.getLuHao()); | 
|---|
|  |  |  | orderDetl.setSpecs(mat.getSpecs()); | 
|---|
|  |  |  | orderDetl.setDetId(outDetTB.getDetId()); | 
|---|
|  |  |  | //            orderDetl.setLuHao(outDetTB.getLuHao()); | 
|---|
|  |  |  | orderDetl.setSpecs(outDetTB.getSPgNO()); | 
|---|
|  |  |  | orderDetl.setSuppCode(inHedTB.getObjectId()); | 
|---|
|  |  |  | orderDetl.setSupp(inHedTB.getObjectName()); | 
|---|
|  |  |  | orderDetl.setPacking(outDetTB.getPacking()); | 
|---|
|  |  |  | orderDetl.setWareId(outDetTB.getWareId()); | 
|---|
|  |  |  | orderDetl.setWareName(outDetTB.getWareName()); | 
|---|
|  |  |  | 
|---|
|  |  |  | orderDetl.setTemp2(outDetTB.getTemp2()); | 
|---|
|  |  |  | orderDetl.setTemp3(outDetTB.getTemp3()); | 
|---|
|  |  |  | orderDetl.setOrderNo(order.getOrderNo()); | 
|---|
|  |  |  | orderDetl.setThreeCode(outDetTB.getDetId() + ""); | 
|---|
|  |  |  | orderDetl.setThreeCode(outDetTB.getTemp1()); | 
|---|
|  |  |  | orderDetl.setModel(outDetTB.getItemCode()); | 
|---|
|  |  |  | orderDetl.setCreateBy(9527L); | 
|---|
|  |  |  | orderDetl.setCreateTime(now); | 
|---|
|  |  |  | orderDetl.setUpdateBy(9527L); | 
|---|
|  |  |  | 
|---|
|  |  |  | if (!orderDetlService.insert(orderDetl)) { | 
|---|
|  |  |  | throw new CoolException("生成单据明细失败,请联系管理员"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | log.info("出库单据成功详情,{}", orderDetl); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return true; | 
|---|
|  |  |  | } | 
|---|