From e7bd25e31151f94b2f87d9a1cb6071b42f2df2b1 Mon Sep 17 00:00:00 2001
From: 吴学文 <wuxuewen@wuxuewendeMacBook-Pro.local>
Date: 星期五, 05 七月 2019 00:22:35 +0800
Subject: [PATCH] 加入删除小区时清理 代理商 开发者 运维 关系
---
Api/src/main/java/com/java110/api/listener/community/DeleteCommunityListener.java | 99 ++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 96 insertions(+), 3 deletions(-)
diff --git a/Api/src/main/java/com/java110/api/listener/community/DeleteCommunityListener.java b/Api/src/main/java/com/java110/api/listener/community/DeleteCommunityListener.java
index 489408f..5813834 100644
--- a/Api/src/main/java/com/java110/api/listener/community/DeleteCommunityListener.java
+++ b/Api/src/main/java/com/java110/api/listener/community/DeleteCommunityListener.java
@@ -3,24 +3,32 @@
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.java110.api.listener.AbstractServiceApiListener;
-import com.java110.common.constant.BusinessTypeConstant;
+import com.java110.common.constant.*;
+import com.java110.common.exception.ListenerExecuteException;
import com.java110.common.util.Assert;
import com.java110.core.context.DataFlowContext;
+import com.java110.core.smo.community.ICommunityInnerServiceSMO;
+import com.java110.dto.CommunityMemberDto;
import com.java110.entity.center.AppService;
import com.java110.event.service.api.ServiceDataFlowEvent;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
import org.springframework.http.ResponseEntity;
-import com.java110.common.constant.CommonConstant;
-import com.java110.common.constant.ServiceCodeConstant;
import com.java110.core.annotation.Java110Listener;
+
+import java.util.List;
+
/**
* 淇濆瓨灏忓尯渚﹀惉
* add by wuxw 2019-06-30
*/
@Java110Listener("deleteCommunityListener")
public class DeleteCommunityListener extends AbstractServiceApiListener {
+
+ @Autowired
+ private ICommunityInnerServiceSMO communityInnerServiceSMOImpl;
@Override
protected void validate(ServiceDataFlowEvent event, JSONObject reqJson) {
//Assert.hasKeyAndValue(reqJson, "xxx", "xxx");
@@ -40,6 +48,7 @@
//娣诲姞鍗曞厓淇℃伅
businesses.add(deleteCommunity(reqJson, context));
+ businesses.addAll(exitCommunityMember(reqJson));
JSONObject paramInObj = super.restToCenterProtocol(businesses, context.getRequestCurrentHeaders());
@@ -49,6 +58,83 @@
ResponseEntity<String> responseEntity = this.callService(context, service.getServiceCode(), paramInObj);
context.setResponseEntity(responseEntity);
+ }
+
+ /**
+ * 閫�鍑哄皬鍖烘垚鍛�
+ *
+ * @param paramInJson 鎺ュ彛浼犲叆鍏ュ弬
+ * @return 璁㈠崟鏈嶅姟鑳藉鎺ュ彈鐨勬姤鏂�
+ */
+ private JSONArray exitCommunityMember(JSONObject paramInJson) {
+
+ JSONArray businesses = new JSONArray();
+
+ JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_MEMBER_QUIT_COMMUNITY);
+ business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ + 1);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+ JSONObject businessCommunityMember = new JSONObject();
+ CommunityMemberDto communityMemberDto = new CommunityMemberDto();
+ communityMemberDto.setMemberTypeCd(CommunityMemberTypeConstant.AGENT);
+ communityMemberDto.setCommunityId(paramInJson.getString("communityId"));
+ communityMemberDto.setStatusCd(StatusConstant.STATUS_CD_VALID);
+ List<CommunityMemberDto> communityMemberDtoList = communityInnerServiceSMOImpl.getCommunityMembers(communityMemberDto);
+
+ if (communityMemberDtoList == null || communityMemberDtoList.size() != 1) {
+ throw new ListenerExecuteException(ResponseConstant.RESULT_CODE_ERROR, "灏忓尯鍜屼唬鐞嗗晢瀛樺湪鍏崇郴瀛樺湪寮傚父锛岃妫�鏌�");
+ }
+
+
+ businessCommunityMember.put("communityMemberId", communityMemberDtoList.get(0).getCommunityMemberId());
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessCommunityMember", businessCommunityMember);
+
+ businesses.add(business);
+
+ //寮�鍙戣��
+ business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_MEMBER_QUIT_COMMUNITY);
+ business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ + 2);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+ businessCommunityMember = new JSONObject();
+ communityMemberDto = new CommunityMemberDto();
+ communityMemberDto.setMemberTypeCd(CommunityMemberTypeConstant.DEV);
+ communityMemberDto.setCommunityId(paramInJson.getString("communityId"));
+ communityMemberDto.setStatusCd(StatusConstant.STATUS_CD_VALID);
+ communityMemberDtoList = communityInnerServiceSMOImpl.getCommunityMembers(communityMemberDto);
+
+ if (communityMemberDtoList == null || communityMemberDtoList.size() != 1) {
+ throw new ListenerExecuteException(ResponseConstant.RESULT_CODE_ERROR, "灏忓尯鍜屼唬鐞嗗晢瀛樺湪鍏崇郴瀛樺湪寮傚父锛岃妫�鏌�");
+ }
+
+
+ businessCommunityMember.put("communityMemberId", communityMemberDtoList.get(0).getCommunityMemberId());
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessCommunityMember", businessCommunityMember);
+
+ businesses.add(business);
+ //杩愮淮鍥㈤槦
+ business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_MEMBER_QUIT_COMMUNITY);
+ business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ + 3);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+ businessCommunityMember = new JSONObject();
+ communityMemberDto = new CommunityMemberDto();
+ communityMemberDto.setMemberTypeCd(CommunityMemberTypeConstant.OPT);
+ communityMemberDto.setCommunityId(paramInJson.getString("communityId"));
+ communityMemberDto.setStatusCd(StatusConstant.STATUS_CD_VALID);
+ communityMemberDtoList = communityInnerServiceSMOImpl.getCommunityMembers(communityMemberDto);
+
+ if (communityMemberDtoList == null || communityMemberDtoList.size() != 1) {
+ throw new ListenerExecuteException(ResponseConstant.RESULT_CODE_ERROR, "灏忓尯鍜屼唬鐞嗗晢瀛樺湪鍏崇郴瀛樺湪寮傚父锛岃妫�鏌�");
+ }
+
+
+ businessCommunityMember.put("communityMemberId", communityMemberDtoList.get(0).getCommunityMemberId());
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessCommunityMember", businessCommunityMember);
+
+ businesses.add(business);
+
+ return businesses;
}
@Override
@@ -88,4 +174,11 @@
return business;
}
+ public ICommunityInnerServiceSMO getCommunityInnerServiceSMOImpl() {
+ return communityInnerServiceSMOImpl;
+ }
+
+ public void setCommunityInnerServiceSMOImpl(ICommunityInnerServiceSMO communityInnerServiceSMOImpl) {
+ this.communityInnerServiceSMOImpl = communityInnerServiceSMOImpl;
+ }
}
--
Gitblit v1.8.0