| | |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.ruoyi.appendix.service.AppendixService; |
| | | import com.ruoyi.procurementrecord.utils.StockUtils; |
| | | import com.ruoyi.production.dto.ProductOrderDto; |
| | | import com.ruoyi.production.dto.ProductStructureDto; |
| | |
| | | |
| | | @Autowired |
| | | private StockUtils stockUtils; |
| | | |
| | | @Autowired |
| | | private AppendixService appendixService; |
| | | |
| | | @Override |
| | | public IPage<ProductOrderDto> pageProductOrder(Page<ProductOrder> page, ProductOrderDto productOrder) { |
| | |
| | | |
| | | @Override |
| | | public Boolean addProductOrder(ProductOrder productOrder) { |
| | | String string = generateNextOrderNo(LocalDate.now().format(DateTimeFormatter.ofPattern("yyyyMMdd"))); |
| | | productOrder.setNpsNo(string); |
| | | fillAndSaveProductOrder(productOrder); |
| | | return true; |
| | | } |
| | | |
| | | @Override |
| | | public Long insertProductOrder(ProductOrder productOrder) { |
| | | fillAndSaveProductOrder(productOrder); |
| | | return productOrder.getId(); |
| | | } |
| | | |
| | | private void fillAndSaveProductOrder(ProductOrder productOrder) { |
| | | String orderNo = generateNextOrderNo(LocalDate.now().format(DateTimeFormatter.ofPattern("yyyyMMdd"))); |
| | | productOrder.setNpsNo(orderNo); |
| | | productOrder.setCompleteQuantity(BigDecimal.ZERO); |
| | | this.save(productOrder); |
| | | if (ObjectUtils.isNotEmpty(productOrder.getRouteId())) { |
| | | this.bindingRoute(productOrder); |
| | | } |
| | | return true; |
| | | } |
| | | |
| | | @Override |
| | |
| | | // 删除中间表 |
| | | productOrderPlanMapper.delete(Wrappers.<ProductOrderPlan>lambdaQuery().in(ProductOrderPlan::getProductOrderId, ids)); |
| | | |
| | | // TODO: 删除附表的工艺路线与BOM |
| | | productProcessRouteItemMapper.delete(new LambdaQueryWrapper<ProductProcessRouteItem>().in(ProductProcessRouteItem::getProductOrderId, ids)); |
| | | productProcessRouteMapper.delete(new LambdaQueryWrapper<ProductProcessRoute>().in(ProductProcessRoute::getProductOrderId, ids)); |
| | | // 删除附表的工艺路线与BOM |
| | | for (Long id : ids) { |
| | | ProductOrder productOrder = baseMapper.selectById(id); |
| | | appendixService.deleteData(productOrder.getId(), productOrder.getRouteId()); |
| | | } |
| | | |
| | | // productProcessRouteItemMapper.delete(new LambdaQueryWrapper<ProductProcessRouteItem>().in(ProductProcessRouteItem::getProductOrderId, ids)); |
| | | // productProcessRouteMapper.delete(new LambdaQueryWrapper<ProductProcessRoute>().in(ProductProcessRoute::getProductOrderId, ids)); |
| | | |
| | | // 删除订单 |
| | | productOrderMapper.delete(new LambdaQueryWrapper<ProductOrder>().in(ProductOrder::getId, ids)); |