1098226878 пре 4 година
родитељ
комит
4414e39a60

+ 20 - 16
service-job/src/main/java/com/java110/job/adapt/hcGov/asyn/impl/BaseHcGovSendAsynImpl.java

@@ -9,6 +9,7 @@ import com.java110.job.adapt.hcGov.HcGovConstant;
 import com.java110.job.adapt.hcGov.asyn.BaseHcGovSendAsyn;
 import com.java110.po.hcGovTranslate.HcGovTranslatePo;
 import com.java110.po.hcGovTranslateDetail.HcGovTranslateDetailPo;
+import com.java110.utils.cache.MappingCache;
 import com.java110.utils.kafka.KafkaFactory;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.DateUtil;
@@ -16,6 +17,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.util.UUID;
+
 @Service
 public class BaseHcGovSendAsynImpl implements BaseHcGovSendAsyn {
 
@@ -25,21 +27,21 @@ public class BaseHcGovSendAsynImpl implements BaseHcGovSendAsyn {
     private IHcGovTranslateDetailInnerServiceSMO hcGovTranslateDetailInnerServiceSMOImpl;
 
 
-    public JSONObject createHeadersOrBody(JSONObject body,String extCommunityId,String serviceCode,String secure) {
+    public JSONObject createHeadersOrBody(JSONObject body, String extCommunityId, String serviceCode, String secure) {
         JSONObject heard = new JSONObject();
         heard.put("serviceCode", serviceCode);
-        heard.put("extCommunityId",extCommunityId);
+        heard.put("extCommunityId", extCommunityId);
         heard.put("tranId", UUID.randomUUID().toString());
         heard.put("reqTime", DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_DEFAULT));
-        HcGovConstant.generatorProducerSign(heard,body,secure);
+        HcGovConstant.generatorProducerSign(heard, body, secure);
         JSONObject kafkaData = new JSONObject();
-        kafkaData.put("header",heard);
-        kafkaData.put("body",body);
+        kafkaData.put("header", heard);
+        kafkaData.put("body", body);
         return kafkaData;
     }
 
 
-     public void saveHcGovLog(JSONObject paramIn,String communityId,String topic,String objId,String secure) {
+    public void saveHcGovLog(JSONObject paramIn, String communityId, String topic, String objId, String secure) {
         Assert.hasKeyAndValue(paramIn, "header", "请求报文中未包含header");
         Assert.hasKeyAndValue(paramIn, "body", "请求报文中未包含body");
         JSONObject heard = paramIn.getJSONObject("header");
@@ -61,7 +63,7 @@ public class BaseHcGovSendAsynImpl implements BaseHcGovSendAsyn {
         hcGovTranslatePo.setUpdateTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
         hcGovTranslatePo.setRemark("物业系统自动推送楼栋信息到政务系统");
         int flag = hcGovTranslateInnerServiceSMOImpl.saveHcGovTranslate(hcGovTranslatePo);
-        if(flag < 1){
+        if (flag < 1) {
             throw new IllegalArgumentException("物业系统保存楼栋推送报文日志失败");
         }
         HcGovTranslateDetailPo hcGovTranslateDetailPo = new HcGovTranslateDetailPo();
@@ -70,12 +72,12 @@ public class BaseHcGovSendAsynImpl implements BaseHcGovSendAsyn {
         hcGovTranslateDetailPo.setCommunityId(communityId);
         hcGovTranslateDetailPo.setReqBody(paramIn.toJSONString());
         flag = hcGovTranslateDetailInnerServiceSMOImpl.saveHcGovTranslateDetail(hcGovTranslateDetailPo);
-        if(flag < 1){
+        if (flag < 1) {
             throw new IllegalArgumentException("物业系统保存楼栋推送报文明细日志失败");
         }
     }
 
-     public void updateHcGovLog(JSONObject paramIn) {
+    public void updateHcGovLog(JSONObject paramIn) {
         Assert.hasKeyAndValue(paramIn, "header", "请求报文中未包含header");
         Assert.hasKeyAndValue(paramIn, "body", "请求报文中未包含body");
         JSONObject heard = paramIn.getJSONObject("header");
@@ -83,29 +85,31 @@ public class BaseHcGovSendAsynImpl implements BaseHcGovSendAsyn {
 
         HcGovTranslatePo hcGovTranslatePo = new HcGovTranslatePo();
         hcGovTranslatePo.setTranId(heard.getString("tranId"));
-         hcGovTranslatePo.setState(ReportDataHeaderDto.RETUR_SUCCESS_CODE);
-        if(!Integer.toString(ReportDataHeaderDto.CODE_SUCCESS).equals(heard.getString("code"))){
+        hcGovTranslatePo.setState(ReportDataHeaderDto.RETUR_SUCCESS_CODE);
+        if (!Integer.toString(ReportDataHeaderDto.CODE_SUCCESS).equals(heard.getString("code"))) {
             hcGovTranslatePo.setState(ReportDataHeaderDto.RETUR_ERROR_CODE);
         }
 
         hcGovTranslatePo.setUpdateTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
         int flag = hcGovTranslateInnerServiceSMOImpl.updateHcGovTranslate(hcGovTranslatePo);
-        if(flag < 1){
+        if (flag < 1) {
             throw new IllegalArgumentException("更新物业系统保存楼栋日志失败");
         }
         HcGovTranslateDetailPo hcGovTranslateDetailPo = new HcGovTranslateDetailPo();
         hcGovTranslateDetailPo.setTranId(hcGovTranslatePo.getTranId());
         hcGovTranslateDetailPo.setResBody(paramIn.toJSONString());
         flag = hcGovTranslateDetailInnerServiceSMOImpl.updateHcGovTranslateDetail(hcGovTranslateDetailPo);
-        if(flag < 1){
+        if (flag < 1) {
             throw new IllegalArgumentException("物业系统保存楼栋推送报文明细日志失败");
         }
     }
 
-    public void sendKafka(String topic,JSONObject massage,String communityId,String objId,String secure) {
+    public void sendKafka(String topic, JSONObject massage, String communityId, String objId, String secure) {
         try {
-            KafkaFactory.sendKafkaMessage(topic,massage.toJSONString());
-            saveHcGovLog(massage,communityId,topic,objId,secure);
+            if ("TRUE".equals(MappingCache.getValue(HcGovConstant.GOV_DOMAIN, HcGovConstant.GOV_SWITCH))) {
+                KafkaFactory.sendKafkaMessage(topic, massage.toJSONString());
+                saveHcGovLog(massage, communityId, topic, objId, secure);
+            }
         } catch (Exception e) {
             e.printStackTrace();
         }

+ 2 - 3
service-job/src/main/java/com/java110/job/adapt/hcGov/floor/AddFloorToHcGovAdapt.java

@@ -80,9 +80,8 @@ public class AddFloorToHcGovAdapt extends DatabusAdaptImpl {
             //JSONObject businessOwnerCar = data.getJSONObject("businessOwnerCar");
             for (int bOwnerCarIndex = 0; bOwnerCarIndex < businessOwnerCars.size(); bOwnerCarIndex++) {
                 JSONObject businessOwnerCar = businessOwnerCars.getJSONObject(bOwnerCarIndex);
-                if ("TRUE".equals(MappingCache.getValue(HcGovConstant.GOV_DOMAIN, HcGovConstant.GOV_SWITCH))) {
-                    doAddFloor(business, businessOwnerCar);
-                }
+                doAddFloor(business, businessOwnerCar);
+
             }
         }
     }

+ 1 - 3
service-job/src/main/java/com/java110/job/adapt/hcGov/floor/EditFloorToHcGovAdapt.java

@@ -75,9 +75,7 @@ public class EditFloorToHcGovAdapt extends DatabusAdaptImpl {
             //JSONObject businessOwnerCar = data.getJSONObject("businessOwnerCar");
             for (int bOwnerCarIndex = 0; bOwnerCarIndex < businessOwnerCars.size(); bOwnerCarIndex++) {
                 JSONObject businessOwnerCar = businessOwnerCars.getJSONObject(bOwnerCarIndex);
-                if ("TRUE".equals(MappingCache.getValue(HcGovConstant.GOV_DOMAIN, HcGovConstant.GOV_SWITCH))) {
-                    doAddFloor(business, businessOwnerCar);
-                }
+                doAddFloor(business, businessOwnerCar);
             }
         }
     }

+ 86 - 0
service-job/src/main/java/com/java110/job/adapt/hcGov/floor/EditFloorToHcGovReturnAdapt.java

@@ -0,0 +1,86 @@
+/*
+ * Copyright 2017-2020 吴学文 and java110 team.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.java110.job.adapt.hcGov.floor;
+
+import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.dto.community.CommunityAttrDto;
+import com.java110.dto.floorAttr.FloorAttrDto;
+import com.java110.dto.hcGovTranslate.HcGovTranslateDto;
+import com.java110.dto.reportData.ReportDataDto;
+import com.java110.intf.common.IHcGovTranslateInnerServiceSMO;
+import com.java110.intf.community.IFloorAttrInnerServiceSMO;
+import com.java110.job.adapt.hcGov.IReportReturnDataAdapt;
+import com.java110.po.floorAttr.FloorAttrPo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * 修改楼栋同步HC政务接口 返回
+ * <p>
+ * 接口协议地址: https://gitee.com/java110/microCommunityInformation/tree/master/info-doc#1%E6%A5%BC%E6%A0%8B%E4%B8%8A%E4%BC%A0
+ *
+ * @desc add by 吴学文 16:20
+ */
+@Component(value = "EDIT_FLOOR_RETURN")
+public class EditFloorToHcGovReturnAdapt implements IReportReturnDataAdapt {
+
+    @Autowired
+    private IFloorAttrInnerServiceSMO floorAttrInnerServiceSMOImpl;
+    @Autowired
+    private IHcGovTranslateInnerServiceSMO hcGovTranslateInnerServiceSMOImpl;
+
+    @Override
+    public void reportReturn(ReportDataDto reportDataDto, String extCommunityId) {
+
+        HcGovTranslateDto hcGovTranslateDto = new HcGovTranslateDto();
+        hcGovTranslateDto.setTranId(reportDataDto.getReportDataHeaderDto().getTranId());
+        hcGovTranslateDto.setServiceCode(reportDataDto.getReportDataHeaderDto().getServiceCode());
+        List<HcGovTranslateDto> hcGovTranslateDtos = hcGovTranslateInnerServiceSMOImpl.queryHcGovTranslates(hcGovTranslateDto);
+        if (hcGovTranslateDtos == null || hcGovTranslateDtos.size() < 1) {
+            throw new IllegalArgumentException("查询推送报文失败。不是同一订单信息");
+        }
+
+        FloorAttrDto floorAttrDto = new FloorAttrDto();
+        floorAttrDto.setFloorId(hcGovTranslateDtos.get(0).getObjId());
+        floorAttrDto.setCommunityId(hcGovTranslateDtos.get(0).getCommunityId());
+        floorAttrDto.setSpecCd(CommunityAttrDto.SPEC_CD_GOV);
+        List<FloorAttrDto> floorAttrDtos = floorAttrInnerServiceSMOImpl.queryFloorAttrs(floorAttrDto);
+
+        FloorAttrPo floorAttrPo = new FloorAttrPo();
+        floorAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_floorId));
+        floorAttrPo.setFloorId(floorAttrDto.getFloorId());
+        floorAttrPo.setCommunityId(floorAttrDto.getCommunityId());
+        floorAttrPo.setSpecCd(floorAttrDto.getSpecCd());
+        floorAttrPo.setValue(reportDataDto.getReportDataBodyDto().getString("extFloorId"));
+        if (floorAttrDtos == null || floorAttrDtos.size() < 1) {
+            int flag = floorAttrInnerServiceSMOImpl.saveFloorAttr(floorAttrPo);
+            if (flag < 1) {
+                throw new IllegalArgumentException("保存楼栋属性失败");
+            }
+        } else {
+            floorAttrPo.setAttrId(floorAttrDtos.get(0).getAttrId());
+            int flag = floorAttrInnerServiceSMOImpl.updateFloorAttrInfoInstance(floorAttrPo);
+            if (flag < 1) {
+                throw new IllegalArgumentException("修改楼栋属性失败");
+            }
+
+        }
+
+
+    }
+}