Selaa lähdekoodia

优化listener 之后 加入bmo 类处理 报文拼装

java110 6 vuotta sitten
vanhempi
commit
5c95266d4c

+ 28 - 0
Api/src/main/java/com/java110/api/bmo/activities/IActivitiesBMO.java

@@ -24,5 +24,33 @@ public interface IActivitiesBMO extends IApiBaseBMO {
      */
      JSONObject addActivities(JSONObject paramInJson, DataFlowContext dataFlowContext);
 
+    /**
+     * 修改头部照片
+     *
+     * @param paramInJson     接口调用放传入入参
+     * @param dataFlowContext 数据上下文
+     * @return 订单服务能够接受的报文
+     */
+     JSONObject editHeaderImg(JSONObject paramInJson, DataFlowContext dataFlowContext);
+
+    /**
+     * 添加活动信息
+     *
+     * @param paramInJson     接口调用放传入入参
+     * @param dataFlowContext 数据上下文
+     * @return 订单服务能够接受的报文
+     */
+     JSONObject updateActivities(JSONObject paramInJson, DataFlowContext dataFlowContext);
+
+    /**
+     * 删除活动
+     *
+     * @param paramInJson     接口调用放传入入参
+     * @param dataFlowContext 数据上下文
+     * @return 订单服务能够接受的报文
+     */
+     JSONObject deleteActivities(JSONObject paramInJson, DataFlowContext dataFlowContext);
+
+
 
 }

+ 116 - 0
Api/src/main/java/com/java110/api/bmo/activities/impl/ActivitiesBMOImpl.java

@@ -5,14 +5,32 @@ import com.alibaba.fastjson.JSONObject;
 import com.java110.api.bmo.ApiBaseBMO;
 import com.java110.api.bmo.activities.IActivitiesBMO;
 import com.java110.core.context.DataFlowContext;
+import com.java110.core.smo.community.IActivitiesInnerServiceSMO;
+import com.java110.core.smo.file.IFileInnerServiceSMO;
+import com.java110.core.smo.file.IFileRelInnerServiceSMO;
+import com.java110.dto.activities.ActivitiesDto;
+import com.java110.dto.file.FileRelDto;
 import com.java110.utils.constant.BusinessTypeConstant;
 import com.java110.utils.constant.CommonConstant;
+import com.java110.utils.util.Assert;
+import com.java110.utils.util.BeanConvertUtil;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Service;
 
+import java.util.List;
+
 @Service("activitiesBMOImpl")
 public class ActivitiesBMOImpl extends ApiBaseBMO implements IActivitiesBMO {
 
+    @Autowired
+    private IActivitiesInnerServiceSMO activitiesInnerServiceSMOImpl;
+
+    @Autowired
+    private IFileInnerServiceSMO fileInnerServiceSMOImpl;
+
+    @Autowired
+    private IFileRelInnerServiceSMO fileRelInnerServiceSMOImpl;
     /**
      * 添加物业费用
      *
@@ -65,4 +83,102 @@ public class ActivitiesBMOImpl extends ApiBaseBMO implements IActivitiesBMO {
         return business;
     }
 
+    /**
+     * 修改头部照片
+     *
+     * @param paramInJson     接口调用放传入入参
+     * @param dataFlowContext 数据上下文
+     * @return 订单服务能够接受的报文
+     */
+     public JSONObject editHeaderImg(JSONObject paramInJson, DataFlowContext dataFlowContext) {
+
+        FileRelDto fileRelDto = new FileRelDto();
+        fileRelDto.setRelTypeCd("70000");
+        fileRelDto.setObjId(paramInJson.getString("activitiesId"));
+        List<FileRelDto> fileRelDtos = fileRelInnerServiceSMOImpl.queryFileRels(fileRelDto);
+        if (fileRelDtos == null || fileRelDtos.size() == 0) {
+            JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+            business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_SAVE_FILE_REL);
+            business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ + 2);
+            business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+            JSONObject businessUnit = new JSONObject();
+            businessUnit.put("fileRelId", "-1");
+            businessUnit.put("relTypeCd", "70000");
+            businessUnit.put("saveWay", "table");
+            businessUnit.put("objId", paramInJson.getString("activitiesId"));
+            businessUnit.put("fileRealName", paramInJson.getString("headerImg"));
+            businessUnit.put("fileSaveName", paramInJson.getString("fileSaveName"));
+            business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessFileRel", businessUnit);
+            return business;
+        }
+        JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+        business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_UPDATE_FILE_REL);
+        business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ + 2);
+        business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+        JSONObject businessUnit = new JSONObject();
+        businessUnit.putAll(BeanConvertUtil.beanCovertMap(fileRelDtos.get(0)));
+        businessUnit.put("fileRealName", paramInJson.getString("headerImg"));
+        businessUnit.put("fileSaveName", paramInJson.getString("headerImg"));
+        business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessFileRel", businessUnit);
+        return business;
+    }
+
+
+    /**
+     * 添加活动信息
+     *
+     * @param paramInJson     接口调用放传入入参
+     * @param dataFlowContext 数据上下文
+     * @return 订单服务能够接受的报文
+     */
+    public JSONObject updateActivities(JSONObject paramInJson, DataFlowContext dataFlowContext) {
+
+        ActivitiesDto activitiesDto = new ActivitiesDto();
+        activitiesDto.setActivitiesId(paramInJson.getString("activitiesId"));
+        activitiesDto.setCommunityId(paramInJson.getString("communityId"));
+        List<ActivitiesDto> activitiesDtos = activitiesInnerServiceSMOImpl.queryActivitiess(activitiesDto);
+
+        Assert.listOnlyOne(activitiesDtos, "未找到需要修改的活动 或多条数据");
+
+
+        JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+        business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_UPDATE_ACTIVITIES);
+        business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ);
+        business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+        JSONObject businessActivities = new JSONObject();
+        businessActivities.putAll(paramInJson);
+        businessActivities.put("userId",activitiesDtos.get(0).getUserId());
+        businessActivities.put("userName",activitiesDtos.get(0).getUserName());
+        businessActivities.put("readCount",activitiesDtos.get(0).getReadCount());
+        businessActivities.put("likeCount",activitiesDtos.get(0).getLikeCount());
+        businessActivities.put("collectCount",activitiesDtos.get(0).getCollectCount());
+        businessActivities.put("state",activitiesDtos.get(0).getState()); // 先设置为不审核
+        //计算 应收金额
+        business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessActivities", businessActivities);
+        return business;
+    }
+
+
+
+    /**
+     * 添加小区信息
+     *
+     * @param paramInJson     接口调用放传入入参
+     * @param dataFlowContext 数据上下文
+     * @return 订单服务能够接受的报文
+     */
+    public JSONObject deleteActivities(JSONObject paramInJson, DataFlowContext dataFlowContext) {
+
+
+        JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+        business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_DELETE_ACTIVITIES);
+        business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ);
+        business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+        JSONObject businessActivities = new JSONObject();
+        businessActivities.putAll(paramInJson);
+        //计算 应收金额
+        business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessActivities", businessActivities);
+        return business;
+    }
+
 }

+ 7 - 29
Api/src/main/java/com/java110/api/listener/activities/DeleteActivitiesListener.java

@@ -2,7 +2,9 @@ package com.java110.api.listener.activities;
 
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
+import com.java110.api.bmo.activities.IActivitiesBMO;
 import com.java110.api.listener.AbstractServiceApiListener;
+import com.java110.core.smo.community.IActivitiesInnerServiceSMO;
 import com.java110.utils.util.Assert;
 import com.java110.core.context.DataFlowContext;
 import com.java110.entity.center.AppService;
@@ -13,6 +15,7 @@ import com.java110.utils.constant.BusinessTypeConstant;
 
 import com.java110.core.annotation.Java110Listener;
 import com.java110.utils.constant.ServiceCodeActivitiesConstant;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpHeaders;
 import org.springframework.http.HttpMethod;
 import org.springframework.http.ResponseEntity;
@@ -23,6 +26,8 @@ import org.springframework.http.ResponseEntity;
  */
 @Java110Listener("deleteActivitiesListener")
 public class DeleteActivitiesListener extends AbstractServiceApiListener {
+    @Autowired
+    private IActivitiesBMO activitiesBMOImpl;
     @Override
     protected void validate(ServiceDataFlowEvent event, JSONObject reqJson) {
         //Assert.hasKeyAndValue(reqJson, "xxx", "xxx");
@@ -34,21 +39,14 @@ public class DeleteActivitiesListener extends AbstractServiceApiListener {
     @Override
     protected void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson) {
 
-        HttpHeaders header = new HttpHeaders();
-        context.getRequestCurrentHeaders().put(CommonConstant.HTTP_ORDER_TYPE_CD, "D");
         JSONArray businesses = new JSONArray();
 
         AppService service = event.getAppService();
 
         //添加单元信息
-        businesses.add(deleteActivities(reqJson, context));
+        businesses.add(activitiesBMOImpl.deleteActivities(reqJson, context));
 
-        JSONObject paramInObj = super.restToCenterProtocol(businesses, context.getRequestCurrentHeaders());
-
-        //将 rest header 信息传递到下层服务中去
-        super.freshHttpHeader(header, context.getRequestCurrentHeaders());
-
-        ResponseEntity<String> responseEntity = this.callService(context, service.getServiceCode(), paramInObj);
+        ResponseEntity<String> responseEntity = activitiesBMOImpl.callService(context, service.getServiceCode(), businesses);
 
         context.setResponseEntity(responseEntity);
     }
@@ -69,25 +67,5 @@ public class DeleteActivitiesListener extends AbstractServiceApiListener {
     }
 
 
-    /**
-     * 添加小区信息
-     *
-     * @param paramInJson     接口调用放传入入参
-     * @param dataFlowContext 数据上下文
-     * @return 订单服务能够接受的报文
-     */
-    private JSONObject deleteActivities(JSONObject paramInJson, DataFlowContext dataFlowContext) {
-
-
-        JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
-        business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_DELETE_ACTIVITIES);
-        business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ);
-        business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
-        JSONObject businessActivities = new JSONObject();
-        businessActivities.putAll(paramInJson);
-        //计算 应收金额
-        business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessActivities", businessActivities);
-        return business;
-    }
 
 }

+ 7 - 88
Api/src/main/java/com/java110/api/listener/activities/UpdateActivitiesListener.java

@@ -2,6 +2,7 @@ package com.java110.api.listener.activities;
 
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
+import com.java110.api.bmo.activities.IActivitiesBMO;
 import com.java110.api.listener.AbstractServiceApiListener;
 import com.java110.core.annotation.Java110Listener;
 import com.java110.core.context.DataFlowContext;
@@ -39,6 +40,9 @@ public class UpdateActivitiesListener extends AbstractServiceApiListener {
     @Autowired
     private IActivitiesInnerServiceSMO activitiesInnerServiceSMOImpl;
 
+    @Autowired
+    private IActivitiesBMO activitiesBMOImpl;
+
     @Autowired
     private IFileInnerServiceSMO fileInnerServiceSMOImpl;
 
@@ -62,13 +66,9 @@ public class UpdateActivitiesListener extends AbstractServiceApiListener {
     @Override
     protected void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson) {
 
-        HttpHeaders header = new HttpHeaders();
-        context.getRequestCurrentHeaders().put(CommonConstant.HTTP_ORDER_TYPE_CD, "D");
         JSONArray businesses = new JSONArray();
-
         AppService service = event.getAppService();
 
-
         if (reqJson.containsKey("headerImg") && !StringUtils.isEmpty(reqJson.getString("headerImg"))) {
             FileDto fileDto = new FileDto();
             fileDto.setFileId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_file_id));
@@ -81,64 +81,17 @@ public class UpdateActivitiesListener extends AbstractServiceApiListener {
             reqJson.put("headerImg", fileDto.getFileId());
             reqJson.put("fileSaveName", fileName);
 
-            businesses.add(editHeaderImg(reqJson, context));
+            businesses.add(activitiesBMOImpl.editHeaderImg(reqJson, context));
 
         }
         //添加单元信息
-        businesses.add(updateActivities(reqJson, context));
-
-
-        JSONObject paramInObj = super.restToCenterProtocol(businesses, context.getRequestCurrentHeaders());
-
-        //将 rest header 信息传递到下层服务中去
-        super.freshHttpHeader(header, context.getRequestCurrentHeaders());
+        businesses.add(activitiesBMOImpl.updateActivities(reqJson, context));
 
-        ResponseEntity<String> responseEntity = this.callService(context, service.getServiceCode(), paramInObj);
+        ResponseEntity<String> responseEntity = activitiesBMOImpl.callService(context, service.getServiceCode(), businesses);
 
         context.setResponseEntity(responseEntity);
     }
 
-    /**
-     * 修改头部照片
-     *
-     * @param paramInJson     接口调用放传入入参
-     * @param dataFlowContext 数据上下文
-     * @return 订单服务能够接受的报文
-     */
-    private JSONObject editHeaderImg(JSONObject paramInJson, DataFlowContext dataFlowContext) {
-
-        FileRelDto fileRelDto = new FileRelDto();
-        fileRelDto.setRelTypeCd("70000");
-        fileRelDto.setObjId(paramInJson.getString("activitiesId"));
-        List<FileRelDto> fileRelDtos = fileRelInnerServiceSMOImpl.queryFileRels(fileRelDto);
-        if (fileRelDtos == null || fileRelDtos.size() == 0) {
-            JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
-            business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_SAVE_FILE_REL);
-            business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ + 2);
-            business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
-            JSONObject businessUnit = new JSONObject();
-            businessUnit.put("fileRelId", "-1");
-            businessUnit.put("relTypeCd", "70000");
-            businessUnit.put("saveWay", "table");
-            businessUnit.put("objId", paramInJson.getString("activitiesId"));
-            businessUnit.put("fileRealName", paramInJson.getString("headerImg"));
-            businessUnit.put("fileSaveName", paramInJson.getString("fileSaveName"));
-            business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessFileRel", businessUnit);
-            return business;
-        }
-        JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
-        business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_UPDATE_FILE_REL);
-        business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ + 2);
-        business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
-        JSONObject businessUnit = new JSONObject();
-        businessUnit.putAll(BeanConvertUtil.beanCovertMap(fileRelDtos.get(0)));
-        businessUnit.put("fileRealName", paramInJson.getString("headerImg"));
-        businessUnit.put("fileSaveName", paramInJson.getString("headerImg"));
-        business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessFileRel", businessUnit);
-        return business;
-
-
-    }
 
     @Override
     public String getServiceCode() {
@@ -156,38 +109,4 @@ public class UpdateActivitiesListener extends AbstractServiceApiListener {
     }
 
 
-    /**
-     * 添加活动信息
-     *
-     * @param paramInJson     接口调用放传入入参
-     * @param dataFlowContext 数据上下文
-     * @return 订单服务能够接受的报文
-     */
-    private JSONObject updateActivities(JSONObject paramInJson, DataFlowContext dataFlowContext) {
-
-        ActivitiesDto activitiesDto = new ActivitiesDto();
-        activitiesDto.setActivitiesId(paramInJson.getString("activitiesId"));
-        activitiesDto.setCommunityId(paramInJson.getString("communityId"));
-        List<ActivitiesDto> activitiesDtos = activitiesInnerServiceSMOImpl.queryActivitiess(activitiesDto);
-
-        Assert.listOnlyOne(activitiesDtos, "未找到需要修改的活动 或多条数据");
-
-
-        JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
-        business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_UPDATE_ACTIVITIES);
-        business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ);
-        business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
-        JSONObject businessActivities = new JSONObject();
-        businessActivities.putAll(paramInJson);
-        businessActivities.put("userId",activitiesDtos.get(0).getUserId());
-        businessActivities.put("userName",activitiesDtos.get(0).getUserName());
-        businessActivities.put("readCount",activitiesDtos.get(0).getReadCount());
-        businessActivities.put("likeCount",activitiesDtos.get(0).getLikeCount());
-        businessActivities.put("collectCount",activitiesDtos.get(0).getCollectCount());
-        businessActivities.put("state",activitiesDtos.get(0).getState()); // 先设置为不审核
-        //计算 应收金额
-        business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessActivities", businessActivities);
-        return business;
-    }
-
 }