| | |
| | | |
| | | @Override |
| | | @Transactional |
| | | public R returnOrder(GroupOrderConfirmParam param) { |
| | | public R returnOrder(ReturnOrderConfirmParam param) { |
| | | if (Cools.isEmpty(param.getOrderNumber())) { |
| | | param.setOrderNumber("THCK" + DateUtils.convert(new Date(), DateUtils.yyyyMMdd)); |
| | | } |
| | | // 1. 查询单据是否存在 |
| | | Order order = orderMapper.selectOrderByOrderNo(param.getGroupOrderNumber()); |
| | | Order order = orderMapper.selectOrderByOrderNo(param.getOrderNumber()); |
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | |
| | | if (order == null) { |
| | | // 1.1 不存在,新建单据 |
| | | order = new Order(); |
| | | order.setOrderNo(param.getGroupOrderNumber()); |
| | | order.setStatus(Integer.valueOf(param.getGroupStatus())); |
| | | order.setOrderNo(param.getOrderNumber()); |
| | | order.setStatus(1); |
| | | order.setOrderTime(sdf.format(new Date())); |
| | | order.setCreateTime(new Date()); |
| | | order.setSettle(1L); |
| | |
| | | orderMapper.insert(order); |
| | | } else { |
| | | // 1.2 存在,更新单据状态 |
| | | order.setStatus(Integer.valueOf(param.getGroupStatus())); |
| | | order.setStatus(2); |
| | | orderMapper.updateById(order); |
| | | } |
| | | orderDetlMapper.delete( |
| | | new EntityWrapper<OrderDetl>().eq("order_no", param.getGroupOrderNumber()) |
| | | ); |
| | | |
| | | |
| | | // 2. 一一对应遍历 |
| | | List<GroupOrderConfirmParam.PackageGroupNo> pkgList = param.getPackageGroupNos(); |
| | | List<GroupOrderConfirmParam.VolumeNumber> volList = param.getVolumeNumbers(); |
| | | List<ReturnOrderConfirmParam.VolumeNumber> volList = param.getVolumeNumbers(); |
| | | |
| | | int size = Math.min(pkgList.size(), volList.size()); // 防止越界 |
| | | for (int i = 0; i < size; i++) { |
| | | GroupOrderConfirmParam.PackageGroupNo pg = pkgList.get(i); |
| | | GroupOrderConfirmParam.VolumeNumber vn = volList.get(i); |
| | | for (int i = 0; i < volList.size(); i++) { |
| | | ReturnOrderConfirmParam.VolumeNumber vn = volList.get(i); |
| | | |
| | | // 查询是否已存在该 detl |
| | | OrderDetl detl = orderDetlMapper.selectByOrderNoAndPkgGroupNoAndVolumeNo( |
| | | param.getGroupOrderNumber(), pg.getPackageGroupNo(), vn.getVolumeNumber() |
| | | param.getOrderNumber(), param.getPackageGroupNo(), vn.getVolumeNumber() |
| | | ); |
| | | |
| | | if (detl == null) { |
| | | detl = new OrderDetl(); |
| | | detl.setOrderId(order.getId()); |
| | | detl.setOrderNo(param.getGroupOrderNumber()); |
| | | detl.setOrderNo(param.getOrderNumber()); |
| | | detl.setCreateTime(new Date()); |
| | | detl.setAnfme(1.0); |
| | | detl.setBrand(pg.getPackageGroupNo()); // 包装组号 |
| | | detl.setBrand(param.getPackageGroupNo()); // 包装组号 |
| | | detl.setModel(vn.getVolumeNumber()); // 卷号 |
| | | orderDetlMapper.insert(detl); |
| | | } |
| | | } |
| | | |
| | | return R.ok("组货确认成功"); |
| | | } |
| | | |
| | | @Override |
| | | @Transactional |
| | | public R unqualifiedOrder(ReturnOrderConfirmParam param) { |
| | | if (Cools.isEmpty(param.getOrderNumber())) { |
| | | param.setOrderNumber("UQCK" + DateUtils.convert(new Date(), DateUtils.yyyyMMdd)); |
| | | } |
| | | // 1. 查询单据是否存在 |
| | | Order order = orderMapper.selectOrderByOrderNo(param.getOrderNumber()); |
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | |
| | | if (order == null) { |
| | | // 1.1 不存在,新建单据 |
| | | order = new Order(); |
| | | order.setOrderNo(param.getOrderNumber()); |
| | | order.setStatus(1); |
| | | order.setOrderTime(sdf.format(new Date())); |
| | | order.setCreateTime(new Date()); |
| | | order.setSettle(1L); |
| | | order.setDocType(27L); |
| | | orderMapper.insert(order); |
| | | } else { |
| | | // 1.2 存在,更新单据状态 |
| | | order.setStatus(2); |
| | | orderMapper.updateById(order); |
| | | } |
| | | |
| | | |
| | | // 2. 一一对应遍历 |
| | | List<ReturnOrderConfirmParam.VolumeNumber> volList = param.getVolumeNumbers(); |
| | | |
| | | for (int i = 0; i < volList.size(); i++) { |
| | | ReturnOrderConfirmParam.VolumeNumber vn = volList.get(i); |
| | | |
| | | // 查询是否已存在该 detl |
| | | OrderDetl detl = orderDetlMapper.selectByOrderNoAndPkgGroupNoAndVolumeNo( |
| | | param.getOrderNumber(), param.getPackageGroupNo(), vn.getVolumeNumber() |
| | | ); |
| | | |
| | | if (detl == null) { |
| | | detl = new OrderDetl(); |
| | | detl.setOrderId(order.getId()); |
| | | detl.setOrderNo(param.getOrderNumber()); |
| | | detl.setCreateTime(new Date()); |
| | | detl.setAnfme(1.0); |
| | | detl.setBrand(param.getPackageGroupNo()); // 包装组号 |
| | | detl.setModel(vn.getVolumeNumber()); // 卷号 |
| | | orderDetlMapper.insert(detl); |
| | | } |