|
@@ -7,10 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.rongwei.bscommon.sys.dao.*;
|
|
|
-import com.rongwei.bscommon.sys.service.ApsBlankOrderService;
|
|
|
-import com.rongwei.bscommon.sys.service.ApsProcessOutputProductService;
|
|
|
-import com.rongwei.bscommon.sys.service.ApsProductDetailService;
|
|
|
-import com.rongwei.bscommon.sys.service.ApsProductionOrderService;
|
|
|
+import com.rongwei.bscommon.sys.service.*;
|
|
|
import com.rongwei.bscommon.sys.utils.ApsUtils;
|
|
|
import com.rongwei.bsentity.domain.*;
|
|
|
import com.rongwei.bsentity.vo.*;
|
|
@@ -64,6 +61,10 @@ public class ApsProductionOrderServiceImpl extends ServiceImpl<ApsProductionOrde
|
|
|
private CXCommonFeginClient autoCommonFeginClient;
|
|
|
@Autowired
|
|
|
private ApsProductDetailService apsProductDetailService;
|
|
|
+ @Autowired
|
|
|
+ private ApsProductionMergeOrderService apsProductionMergeOrderService;
|
|
|
+ @Autowired
|
|
|
+ private ApsOrderAlloyCompositionService apsOrderAlloyCompositionService;
|
|
|
|
|
|
public static final String ERROR_MSG = "%s上诉订单的排程交货期大于承诺交货期";
|
|
|
|
|
@@ -366,6 +367,46 @@ public class ApsProductionOrderServiceImpl extends ServiceImpl<ApsProductionOrde
|
|
|
return R.ok();
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ @Transactional
|
|
|
+ public R deleteOrder(DeleteOrderVo req) {
|
|
|
+ if (ObjectUtil.isEmpty(req.getOrderId())) {
|
|
|
+ return R.error("订单ID不能为空");
|
|
|
+ }
|
|
|
+
|
|
|
+ List<ApsBlankOrderDo> blankList = apsBlankOrderService.list(new QueryWrapper<ApsBlankOrderDo>().lambda().eq(ApsBlankOrderDo::getProductionorderid, req.getOrderId()));
|
|
|
+ //清除排程备份
|
|
|
+ if (req.getNeedDelBackup()) {
|
|
|
+ //查询订单下的坯料计划
|
|
|
+
|
|
|
+ List<String> blankIdList = blankList.stream().map(ApsBlankOrderDo::getId).collect(Collectors.toList());
|
|
|
+ SysUserVo currentUser = CXCommonUtils.getCurrentUser();
|
|
|
+ String factoryId = CXCommonUtils.getCurrentUserFactoryId(currentUser);
|
|
|
+ apsProcessOperationBackupDao.deletedByBlankId(blankIdList, factoryId);
|
|
|
+ apsProcessOperationProcessEquBackupDao.deletedByBlankId(blankIdList, factoryId);
|
|
|
+ }
|
|
|
+
|
|
|
+ //删除该订单,包括订单明细,合并订单及明细,坯料计划,工序作业
|
|
|
+ //删除订单
|
|
|
+ this.removeById(req.getOrderId());
|
|
|
+
|
|
|
+ //删除订单明细子表
|
|
|
+ apsProductDetailService.remove(new QueryWrapper<ApsProductDetailDo>().lambda().eq(ApsProductDetailDo::getMainid, req.getOrderId()));
|
|
|
+
|
|
|
+ //删除合并订单子表
|
|
|
+ apsProductionMergeOrderService.remove(new QueryWrapper<ApsProductionMergeOrderDo>().lambda().eq(ApsProductionMergeOrderDo::getMainid, req.getOrderId()));
|
|
|
+
|
|
|
+ //删除合计成分要求子表
|
|
|
+ apsOrderAlloyCompositionService.remove(new QueryWrapper<ApsOrderAlloyCompositionDo>().lambda().eq(ApsOrderAlloyCompositionDo::getProductionorderid, req.getOrderId()));
|
|
|
+
|
|
|
+ //遍历删除坯料计划子表
|
|
|
+ for (ApsBlankOrderDo apsBlankOrderDo : blankList) {
|
|
|
+ apsBlankOrderService.removeBlankOrderAndChild(apsBlankOrderDo);
|
|
|
+ }
|
|
|
+
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
+
|
|
|
/*
|
|
|
作业延期提醒
|
|
|
*/
|