Преглед изворни кода

APS二开服务业务数据转换模型数据

fangpy пре 1 година
родитељ
комит
77dbcc6bb6

+ 2 - 0
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/ApsBlankOrderService.java

@@ -19,6 +19,8 @@ import java.util.List;
  */
 public interface ApsBlankOrderService extends IService<ApsBlankOrderDo> {
 
+    void test();
+
     void orderApsCancel(List<String> apsProductionOrderIds) throws Exception;
 
     void orderLock(OrderLockVo orderLockVo) throws Exception;

+ 19 - 9
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsBlankOrderServiceImpl.java

@@ -16,10 +16,12 @@ import com.rongwei.rwcommon.base.exception.CustomException;
 import com.rongwei.rwcommon.utils.SecurityUtil;
 import com.rongwei.rwcommon.utils.StringUtils;
 import com.rongwei.safecommon.utils.SaveConstans;
+import org.assertj.core.api.Assertions;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.math.BigDecimal;
 import java.time.LocalDateTime;
@@ -56,6 +58,15 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
     @Autowired
     private ApsProductionOrderService apsProductionOrderService;
 
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void test() {
+        ApsBlankOrderDo a1 = this.getById("19fcf845701746968602e5298f7b9144");
+        this.removeById("19fcf845701746968602e5298f7b9144");
+        ApsBlankOrderDo a2 = this.getById("19fcf845701746968602e5298f7b9144");
+        System.out.println(a1.getMaterialname());
+    }
+
     /**
      * 取消订单排程
      * @param apsProductionOrderIds
@@ -155,7 +166,12 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
      * @param apsBlankOrders
      */
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public void blankOrderAps(List<ApsBlankOrderVo> apsBlankOrders){
+        assert apsBlankOrders != null : "排程订单不能为空";
+        // 先删除所有作业的明细
+        List<String> blankids = apsBlankOrders.stream().map(v->v.getId()).collect(Collectors.toList());
+        processOperationProcessEquService.remove(new LambdaUpdateWrapper<ApsProcessOperationProcessEquDo>().in(ApsProcessOperationProcessEquDo::getBlankid,blankids));
         // 模型转换
         ProductionScheduleVo productionScheduleVo = apsPlanModelSet(apsBlankOrders);
         System.out.println("排程数据:" + JSONUtil.toJsonStr(productionScheduleVo));
@@ -164,8 +180,6 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
         ProductionScheduleRetVo productionScheduleRetVo = rwApsServer.productionSchedule(productionScheduleVo);
         // 排程结果保存
         List<ApsProcessOperationProcessEquDo> apsProcessOperationProcessEquDos = new ArrayList<>();
-        // 作业ID集合
-        List<String> zyIds = new ArrayList<>();
         // 最后节点集合
         List<ProductionProcesses> lastProcess = new ArrayList<>();
         if(productionScheduleRetVo.getProcesses() != null && productionScheduleRetVo.getProcesses().size()>0){
@@ -185,7 +199,6 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
                     apsProcessOperationProcessEqu.setPlanenddate(Date.from(process.getEndTime().atZone(ZoneId.systemDefault()).toInstant()));
                     apsProcessOperationProcessEqu.setPlanprocessrall(process.getProducePcNum());
                     apsProcessOperationProcessEquDos.add(apsProcessOperationProcessEqu);
-                    zyIds.addAll(process.getBsProcessesId());
                 }
                 // 合并生产工序
                 else {
@@ -214,7 +227,6 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
                         apsProcessOperationProcessEqu.setProcessworkshop(process.getEquipment().getWorkshopname());
                         apsProcessOperationProcessEqu.setTenantid(process.getEquipment().getFactoryid());
                         apsProcessOperationProcessEquDos.add(apsProcessOperationProcessEqu);
-                        zyIds.add(k);
                     });
                 }
 
@@ -225,10 +237,7 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
             }
         }
         if(apsProcessOperationProcessEquDos != null && apsProcessOperationProcessEquDos.size()>0){
-            // 先删除所有作业的明细
-            if (zyIds != null && zyIds.size()>0){
-                processOperationProcessEquService.remove(new LambdaUpdateWrapper<ApsProcessOperationProcessEquDo>().in(ApsProcessOperationProcessEquDo::getProcessid,zyIds));
-            }
+
             // 再保存新数据
             processOperationProcessEquService.saveBatch(apsProcessOperationProcessEquDos);
 
@@ -349,7 +358,8 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
                                     List<ApsProcessOperationProcessEquDo> processEqus = processOperationProcessEquService.list(new LambdaQueryWrapper<ApsProcessOperationProcessEquDo>()
                                             .eq(ApsProcessOperationProcessEquDo::getProcessdeviceid, equIds)
                                             .ge(ApsProcessOperationProcessEquDo::getPlanstartdate,productionScheduleVo.getApsPlanStartDate())
-                                            .eq(ApsProcessOperationProcessEquDo::getLockmark,SaveConstans.LockmarkType.LOCKMARK_Y));
+//                                            .eq(ApsProcessOperationProcessEquDo::getLockmark,SaveConstans.LockmarkType.LOCKMARK_Y)
+                                    );
                                     if(processEqus != null && processEqus.size()>0){
                                         List<EquipmentRunTime> equipmentRunTimes = new ArrayList<>();
                                         for (ApsProcessOperationProcessEquDo equs : processEqus) {

+ 6 - 0
cx-aps/cx-aps-server/src/main/java/com/rongwei/bsserver/controller/ApsBlankOrderController.java

@@ -70,5 +70,11 @@ public class ApsBlankOrderController {
         return R.ok();
     }
 
+    @PostMapping("/test")
+    public R test(){
+        apsBlankOrderService.test();
+        return R.ok();
+    }
+
 }