From 46635f7df9878a2db78622f6ae00391878909cae Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期五, 15 十一月 2019 00:59:22 +0800
Subject: [PATCH] 优化同步引擎

---
 HardwareAdapationService/src/main/java/com/java110/hardwareAdapation/thread/TranslateOwnerToMachine.java |   25 +++++++++++++++++++++----
 1 files changed, 21 insertions(+), 4 deletions(-)

diff --git a/HardwareAdapationService/src/main/java/com/java110/hardwareAdapation/thread/TranslateOwnerToMachine.java b/HardwareAdapationService/src/main/java/com/java110/hardwareAdapation/thread/TranslateOwnerToMachine.java
index 42e4812..fe877e0 100644
--- a/HardwareAdapationService/src/main/java/com/java110/hardwareAdapation/thread/TranslateOwnerToMachine.java
+++ b/HardwareAdapationService/src/main/java/com/java110/hardwareAdapation/thread/TranslateOwnerToMachine.java
@@ -1,5 +1,6 @@
 package com.java110.hardwareAdapation.thread;
 
+import com.alibaba.fastjson.JSONObject;
 import com.java110.core.factory.GenerateCodeFactory;
 import com.java110.core.smo.hardwareAdapation.IMachineInnerServiceSMO;
 import com.java110.core.smo.order.IOrderInnerServiceSMO;
@@ -35,9 +36,10 @@
 
     private IMachineTranslateServiceDao machineTranslateServiceDaoImpl;
 
-    public TranslateOwnerToMachine() {
-        orderInnerServiceSMOImpl = ApplicationContextFactory.getBean("orderInnerServiceSMOImpl", IOrderInnerServiceSMO.class);
-        ownerInnerServiceSMOImpl = ApplicationContextFactory.getBean("ownerInnerServiceSMOImpl", IOwnerInnerServiceSMO.class);
+    public TranslateOwnerToMachine(boolean state) {
+        TRANSLATE_STATE = state;
+        orderInnerServiceSMOImpl = ApplicationContextFactory.getBean(IOrderInnerServiceSMO.class.getName(), IOrderInnerServiceSMO.class);
+        ownerInnerServiceSMOImpl = ApplicationContextFactory.getBean(IOwnerInnerServiceSMO.class.getName(), IOwnerInnerServiceSMO.class);
         machineInnerServiceSMOImpl = ApplicationContextFactory.getBean("machineInnerServiceSMOImpl", IMachineInnerServiceSMO.class);
         machineTranslateServiceDaoImpl = ApplicationContextFactory.getBean("machineTranslateServiceDaoImpl", IMachineTranslateServiceDao.class);
 
@@ -68,16 +70,22 @@
         List<OrderDto> orderDtos = orderInnerServiceSMOImpl.queryOwenrOrders(orderDto);
         for (OrderDto tmpOrderDto : orderDtos) {
             try {
+                logger.debug("寮�濮嬪鐞嗚鍗�"+ JSONObject.toJSONString(tmpOrderDto));
                 //鏍规嵁bId 鏌ヨ涓氫富淇℃伅
                 ownerDto = new OwnerDto();
                 ownerDto.setbId(tmpOrderDto.getbId());
-                List<OwnerDto> ownerDtos = ownerInnerServiceSMOImpl.queryOwners(ownerDto);
+                List<OwnerDto> ownerDtos = ownerInnerServiceSMOImpl.queryOwnerMembers(ownerDto);
                 if (ownerDtos == null || ownerDtos.size() == 0) {
+                    //鍒锋柊 鐘舵�佷负C1
+                    orderInnerServiceSMOImpl.updateBusinessStatusCd(tmpOrderDto);
+                    logger.debug("娌℃湁鏁版嵁鏁版嵁鐩存帴鍒蜂负C1"+ JSONObject.toJSONString(tmpOrderDto));
                     continue;
                 }
                 dealData(tmpOrderDto, ownerDtos.get(0));
                 //鍒锋柊 鐘舵�佷负C1
                 orderInnerServiceSMOImpl.updateBusinessStatusCd(tmpOrderDto);
+                logger.debug("澶勭悊璁㈠崟缁撴潫"+ JSONObject.toJSONString(tmpOrderDto));
+
             } catch (Exception e) {
                 logger.error("鎵ц璁㈠崟浠诲姟澶辫触", e);
             }
@@ -115,6 +123,15 @@
     }
 
     private void saveMachineTranslate(MachineDto tmpMachineDto, OwnerDto ownerDto) {
+        Map paramInfo = new HashMap();
+        paramInfo.put("machineId", tmpMachineDto.getMachineId());
+        paramInfo.put("objId", ownerDto.getMemberId());
+
+        int count = machineTranslateServiceDaoImpl.queryMachineTranslatesCount(paramInfo);
+        if(count >0){
+            updateMachineTranslate(tmpMachineDto,ownerDto);
+            return ;
+        }
         Map info = new HashMap();
         //machine_id,machine_code,status_cd,type_cd,machine_translate_id,obj_id,obj_name,state,community_id,b_id
         info.put("machineTranslateId", GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_machineTranslateId));

--
Gitblit v1.8.0