From 576c52d8d8e6fb1e738380cc5fc101a6a2b0b3a8 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期六, 04 九月 2021 16:00:57 +0800
Subject: [PATCH] Merge branch 'master' of http://git.homecommunity.cn/supervip/MicroCommunity

---
 service-job/src/main/java/com/java110/job/task/car/CarToMachineTemplate.java |   92 ++++++++++++++++++++++++++++-----------------
 1 files changed, 57 insertions(+), 35 deletions(-)

diff --git a/service-job/src/main/java/com/java110/job/task/car/CarToMachineTemplate.java b/service-job/src/main/java/com/java110/job/task/car/CarToMachineTemplate.java
old mode 100644
new mode 100755
index 52d0c5c..7c73a7f
--- a/service-job/src/main/java/com/java110/job/task/car/CarToMachineTemplate.java
+++ b/service-job/src/main/java/com/java110/job/task/car/CarToMachineTemplate.java
@@ -2,10 +2,12 @@
 
 import com.alibaba.fastjson.JSONObject;
 import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.dto.machine.MachineDto;
 import com.java110.dto.machine.MachineTranslateDto;
 import com.java110.dto.order.OrderDto;
 import com.java110.dto.owner.OwnerCarDto;
 import com.java110.dto.task.TaskDto;
+import com.java110.intf.common.IMachineInnerServiceSMO;
 import com.java110.intf.common.IMachineTranslateInnerServiceSMO;
 import com.java110.intf.order.IOrderInnerServiceSMO;
 import com.java110.intf.user.IOwnerCarInnerServiceSMO;
@@ -36,9 +38,11 @@
 
     private static final String STATE_NO_TRANSLATE = "10000";
 
-    private static final String CREATE_OWNER_CAR = "201"; //娣诲姞浜鸿劯
+    private static final String CREATE_OWNER_CAR = "201"; //娣诲姞
 
-    private static final String DELETE_OWNER_CAR = "202"; //鍒犻櫎浜鸿劯
+    private static final String DELETE_OWNER_CAR = "202"; //鍒犻櫎
+
+    private static final String UPDATE_OWNER_CAR = "203"; //淇敼
 
     @Autowired
     private IOrderInnerServiceSMO orderInnerServiceSMOImpl;
@@ -49,6 +53,9 @@
 
     @Autowired
     private IMachineTranslateInnerServiceSMO machineTranslateInnerServiceSMOImpl;
+
+    @Autowired
+    private IMachineInnerServiceSMO machineInnerServiceSMOImpl;
 
 
     @Override
@@ -70,6 +77,9 @@
 
                 ownerCarDto.setbId(tmpOrderDto.getbId());
 
+                if(BusinessTypeConstant.BUSINESS_TYPE_DELETE_OWNER_CAR.equals(tmpOrderDto.getBusinessTypeCd())){
+                    ownerCarDto.setStatusCd("1");
+                }
 
                 List<OwnerCarDto> ownerCarDtos = null;
 
@@ -106,16 +116,25 @@
 
         //鎷垮埌灏忓尯ID
         String communityId = ownerCarDtos.get(0).getCommunityId();
+        MachineDto machineDto = new MachineDto();
+        machineDto.setCommunityId(communityId);
+        machineDto.setMachineTypeCd(MachineDto.MACHINE_TYPE_CAR);
+        List<MachineDto> machineDtos = machineInnerServiceSMOImpl.queryMachines(machineDto);
+        if (machineDtos == null || machineDtos.size() < 1) {
+            return;
+        }
         //鏍规嵁灏忓尯ID鏌ヨ鐜版湁璁惧
+
 
         for (OwnerCarDto ownerCarDto : ownerCarDtos) {
 
-            if (BusinessTypeConstant.BUSINESS_TYPE_SAVE_OWNER_CAR.equals(tmpOrderDto.getBusinessTypeCd())
-                    || BusinessTypeConstant.BUSINESS_TYPE_UPDATE_OWNER_CAR.equals(tmpOrderDto.getBusinessTypeCd())) {
-                saveMachineTranslate(tmpOrderDto, ownerCarDto);
+            if (BusinessTypeConstant.BUSINESS_TYPE_SAVE_OWNER_CAR.equals(tmpOrderDto.getBusinessTypeCd())) {
+                saveOrUpdateMachineTranslate(tmpOrderDto, ownerCarDto, machineDtos, CREATE_OWNER_CAR);
+            } else if (BusinessTypeConstant.BUSINESS_TYPE_UPDATE_OWNER_CAR.equals(tmpOrderDto.getBusinessTypeCd())) {
+                saveOrUpdateMachineTranslate(tmpOrderDto, ownerCarDto, machineDtos, UPDATE_OWNER_CAR);
             } else if (BusinessTypeConstant.BUSINESS_TYPE_DELETE_OWNER_CAR.equals(tmpOrderDto.getBusinessTypeCd())
             ) {
-                deleteMachineTranslate(tmpOrderDto, ownerCarDto);
+                deleteMachineTranslate(tmpOrderDto, ownerCarDto, machineDtos);
             } else {
 
             }
@@ -125,38 +144,41 @@
 
     }
 
-    private void saveMachineTranslate(OrderDto tmpOrderDto, OwnerCarDto ownerCarDto) {
+    private void saveOrUpdateMachineTranslate(OrderDto tmpOrderDto, OwnerCarDto ownerCarDto, List<MachineDto> machineDtos, String cmd) {
 
-        MachineTranslateDto machineTranslateDto = new MachineTranslateDto();
-        machineTranslateDto.setMachineTranslateId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_machineTranslateId));
-        machineTranslateDto.setMachineId(ownerCarDto.getCommunityId());
-        machineTranslateDto.setMachineCode(ownerCarDto.getCommunityId());
-        machineTranslateDto.setTypeCd(TYPE_OWNER_CAR);
-        machineTranslateDto.setObjId(ownerCarDto.getCarId());
-        machineTranslateDto.setObjName(ownerCarDto.getCarNum());
-        machineTranslateDto.setState(STATE_NO_TRANSLATE);
-        machineTranslateDto.setCommunityId(ownerCarDto.getCommunityId());
-        machineTranslateDto.setbId("-1");
-        machineTranslateDto.setMachineCmd(CREATE_OWNER_CAR);
-        machineTranslateDto.setObjBId(tmpOrderDto.getbId());
-        machineTranslateInnerServiceSMOImpl.saveMachineTranslate(machineTranslateDto);
+        for (MachineDto machineDto : machineDtos) {
+            MachineTranslateDto machineTranslateDto = new MachineTranslateDto();
+            machineTranslateDto.setMachineTranslateId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_machineTranslateId));
+            machineTranslateDto.setMachineId(machineDto.getMachineId());
+            machineTranslateDto.setMachineCode(machineDto.getMachineCode());
+            machineTranslateDto.setTypeCd(TYPE_OWNER_CAR);
+            machineTranslateDto.setObjId(ownerCarDto.getCarId());
+            machineTranslateDto.setObjName(ownerCarDto.getCarNum());
+            machineTranslateDto.setState(STATE_NO_TRANSLATE);
+            machineTranslateDto.setCommunityId(ownerCarDto.getCommunityId());
+            machineTranslateDto.setbId("-1");
+            machineTranslateDto.setMachineCmd(cmd);
+            machineTranslateDto.setObjBId(tmpOrderDto.getbId());
+            machineTranslateInnerServiceSMOImpl.saveMachineTranslate(machineTranslateDto);
+        }
 
     }
 
-    private void deleteMachineTranslate(OrderDto tmpOrderDto, OwnerCarDto ownerCarDto) {
-        MachineTranslateDto machineTranslateDto = new MachineTranslateDto();
-        machineTranslateDto.setMachineTranslateId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_machineTranslateId));
-        machineTranslateDto.setMachineId(ownerCarDto.getCommunityId());
-        machineTranslateDto.setMachineCode(ownerCarDto.getCommunityId());
-        machineTranslateDto.setTypeCd(TYPE_OWNER_CAR);
-        machineTranslateDto.setObjId(ownerCarDto.getCarId());
-        machineTranslateDto.setObjName(ownerCarDto.getCarNum());
-        machineTranslateDto.setState(STATE_NO_TRANSLATE);
-        machineTranslateDto.setCommunityId(ownerCarDto.getCommunityId());
-        machineTranslateDto.setbId("-1");
-        machineTranslateDto.setMachineCmd(DELETE_OWNER_CAR);
-        machineTranslateDto.setObjBId(tmpOrderDto.getbId());
-        machineTranslateInnerServiceSMOImpl.saveMachineTranslate(machineTranslateDto);
-
+    private void deleteMachineTranslate(OrderDto tmpOrderDto, OwnerCarDto ownerCarDto, List<MachineDto> machineDtos) {
+        for (MachineDto machineDto : machineDtos) {
+            MachineTranslateDto machineTranslateDto = new MachineTranslateDto();
+            machineTranslateDto.setMachineTranslateId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_machineTranslateId));
+            machineTranslateDto.setMachineId(machineDto.getMachineId());
+            machineTranslateDto.setMachineCode(machineDto.getMachineCode());
+            machineTranslateDto.setTypeCd(TYPE_OWNER_CAR);
+            machineTranslateDto.setObjId(ownerCarDto.getCarId());
+            machineTranslateDto.setObjName(ownerCarDto.getCarNum());
+            machineTranslateDto.setState(STATE_NO_TRANSLATE);
+            machineTranslateDto.setCommunityId(ownerCarDto.getCommunityId());
+            machineTranslateDto.setbId("-1");
+            machineTranslateDto.setMachineCmd(DELETE_OWNER_CAR);
+            machineTranslateDto.setObjBId(tmpOrderDto.getbId());
+            machineTranslateInnerServiceSMOImpl.saveMachineTranslate(machineTranslateDto);
+        }
     }
 }

--
Gitblit v1.8.0