From 6a80821cea1d71ca4cb6c45239274898f46143f2 Mon Sep 17 00:00:00 2001
From: yujian <yujian@123.com>
Date: 星期三, 05 六月 2019 14:55:48 +0800
Subject: [PATCH] 分类 + 封禁用户方法封装

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserAccountServiceImpl.java |  141 +++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 141 insertions(+), 0 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserAccountServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserAccountServiceImpl.java
index c0a3b20..fd9f289 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserAccountServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserAccountServiceImpl.java
@@ -31,9 +31,11 @@
 import com.yeshi.fanli.entity.bus.user.ThreeSale;
 import com.yeshi.fanli.entity.bus.user.UserAccountBindingHistory;
 import com.yeshi.fanli.entity.bus.user.UserConnectHistory;
+import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
 import com.yeshi.fanli.entity.bus.user.UserInfo;
 import com.yeshi.fanli.entity.bus.user.WeiXinUser;
 import com.yeshi.fanli.exception.UserAccountException;
+import com.yeshi.fanli.exception.user.ForbiddenUserIdentifyCodeException;
 import com.yeshi.fanli.log.LogHelper;
 import com.yeshi.fanli.service.inter.hongbao.ThreeSaleSerivce;
 import com.yeshi.fanli.service.inter.msg.UserAccountMsgNotificationService;
@@ -43,7 +45,9 @@
 import com.yeshi.fanli.service.inter.user.UserAccountBindingHistoryService;
 import com.yeshi.fanli.service.inter.user.UserAccountService;
 import com.yeshi.fanli.service.inter.user.UserExtraTaoBaoInfoService;
+import com.yeshi.fanli.service.inter.user.UserInfoDeleteRecordService;
 import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
+import com.yeshi.fanli.service.inter.user.UserInfoService;
 import com.yeshi.fanli.util.Constant;
 import com.yeshi.fanli.util.FileUtil;
 import com.yeshi.fanli.util.RedisManager;
@@ -62,6 +66,9 @@
 
 	@Resource
 	private UserInfoMapper userInfoMapper;
+	
+	@Resource
+	private UserInfoService userInfoService;
 
 	@Resource
 	private BindingAccountService bindingAccountService;
@@ -92,6 +99,10 @@
 
 	@Resource
 	private UserAccountBindingHistoryService userAccountBindingHistoryService;
+	
+	@Resource
+	private UserInfoDeleteRecordService userInfoDeleteRecordService;
+	
 
 	@Transactional
 	@Override
@@ -537,6 +548,9 @@
 		int addCount = 0;
 
 		userAccountMsgNotificationService.connectSuccess(mainUser.getId(), lessUser.getId());
+		
+		
+		userInfoDeleteRecordService.addDeleteRecord(lessUser.getId(), UserInfo.STATE_DELETE, "鍒犻櫎锛氳处鍙疯鎵撻�氬垹闄�");
 	}
 
 	/**
@@ -1167,4 +1181,131 @@
 		userAccountMsgNotificationService.bindingSuccess(uid, MsgAccountDetailFactory.TYPE_WX);
 	}
 
+	
+	
+	@Override
+	public void forbiddenUserAll(Long uid, String reason) {
+		UserInfo currentInfo = userInfoService.selectByPKey(uid);
+		if (currentInfo == null) {
+			return;
+		}
+		if (currentInfo.getState() != UserInfo.STATE_NORMAL) {
+			return;
+		}
+
+		currentInfo.setState(UserInfo.STATE_FORBIDDEN);
+		currentInfo.setStateDesc(reason);
+		userInfoService.updateByPrimaryKeySelective(currentInfo);
+		
+		// 鎻掑叆璁板綍
+		userInfoDeleteRecordService.addDeleteRecord(uid, UserInfo.STATE_FORBIDDEN, reason);
+
+		// 鍔犲叆灏佺鐨勮处鍙峰垪琛�
+		ForbiddenUserIdentifyCode forbiddenUserIdentifyCode = new ForbiddenUserIdentifyCode();
+		forbiddenUserIdentifyCode.setType(ForbiddenUserIdentifyCodeTypeEnum.wxUnionId);
+		forbiddenUserIdentifyCode.setIdentifyCode(currentInfo.getWxUnionId());
+		forbiddenUserIdentifyCode.setBeiZhu(currentInfo.getWxName());
+		try {
+			forbiddenUserIdentifyCodeService.forbiddenIdentifyCode(forbiddenUserIdentifyCode);
+		} catch (ForbiddenUserIdentifyCodeException e) {
+			e.printStackTrace();
+		}
+
+		// 鐢佃瘽鍙风爜
+		forbiddenUserIdentifyCode = new ForbiddenUserIdentifyCode();
+		forbiddenUserIdentifyCode.setType(ForbiddenUserIdentifyCodeTypeEnum.phone);
+		forbiddenUserIdentifyCode.setIdentifyCode(currentInfo.getPhone());
+		try {
+			forbiddenUserIdentifyCodeService.forbiddenIdentifyCode(forbiddenUserIdentifyCode);
+		} catch (ForbiddenUserIdentifyCodeException e) {
+			e.printStackTrace();
+		}
+
+		// 娣樺疂
+		UserExtraTaoBaoInfo taoBao = userExtraTaoBaoInfoService.getByUid(uid);
+		if (taoBao != null && !StringUtil.isNullOrEmpty(taoBao.getTaoBaoUid())) {
+			forbiddenUserIdentifyCode = new ForbiddenUserIdentifyCode();
+			forbiddenUserIdentifyCode.setType(ForbiddenUserIdentifyCodeTypeEnum.taobaoUid);
+			forbiddenUserIdentifyCode.setIdentifyCode(taoBao.getTaoBaoUid());
+			try {
+				forbiddenUserIdentifyCodeService.forbiddenIdentifyCode(forbiddenUserIdentifyCode);
+			} catch (ForbiddenUserIdentifyCodeException e) {
+				e.printStackTrace();
+			}
+		}
+
+		// 鏌ヨ鏀粯瀹濈粦瀹�
+		List<BindingAccount> list = bindingAccountService.getBindingAccountByUid(uid);
+		if (list != null) {
+			for (BindingAccount ba : list) {
+				forbiddenUserIdentifyCode = new ForbiddenUserIdentifyCode();
+				forbiddenUserIdentifyCode.setType(ForbiddenUserIdentifyCodeTypeEnum.alipayAccount);
+				forbiddenUserIdentifyCode.setIdentifyCode(ba.getAccount());
+				forbiddenUserIdentifyCode.setBeiZhu(ba.getName());
+				try {
+					forbiddenUserIdentifyCodeService.forbiddenIdentifyCode(forbiddenUserIdentifyCode);
+				} catch (ForbiddenUserIdentifyCodeException e) {
+					e.printStackTrace();
+				}
+			}
+		}
+	}
+	
+	
+	@Override
+	public void forbiddenUser(Long uid, String reason) {
+		UserInfo currentInfo = userInfoService.selectByPKey(uid);
+		if (currentInfo == null) {
+			return;
+		}
+		
+		if (currentInfo.getState() != UserInfo.STATE_NORMAL) {
+			return;
+		}
+
+		currentInfo.setState(UserInfo.STATE_FORBIDDEN);
+		currentInfo.setStateDesc(reason);
+		userInfoService.updateByPrimaryKeySelective(currentInfo);
+		
+		// 鎻掑叆璁板綍
+		userInfoDeleteRecordService.addDeleteRecord(uid, UserInfo.STATE_FORBIDDEN, reason);
+	}
+	
+	
+	@Override
+	public void DeleteUser(Long uid, String reason) {
+		UserInfo currentInfo = userInfoService.selectByPKey(uid);
+		if (currentInfo == null) {
+			return;
+		}
+		
+		if (currentInfo.getState() != UserInfo.STATE_NORMAL) {
+			return;
+		}
+
+		currentInfo.setState(UserInfo.STATE_DELETE);
+		currentInfo.setStateDesc(reason);
+		userInfoService.updateByPrimaryKeySelective(currentInfo);
+		// 鎻掑叆璁板綍
+		userInfoDeleteRecordService.addDeleteRecord(uid, UserInfo.STATE_DELETE, reason);
+	}
+	
+	
+	@Override
+	public void DeleteUserOutOfDate(Long uid, String reason) {
+		UserInfo currentInfo = userInfoService.selectByPKey(uid);
+		if (currentInfo == null) {
+			return;
+		}
+		
+		if (currentInfo.getState() != UserInfo.STATE_NORMAL) {
+			return;
+		}
+
+		currentInfo.setState(UserInfo.STATE_DELETE_OUT_OF_DATE);
+		currentInfo.setStateDesc(reason);
+		userInfoService.updateByPrimaryKeySelective(currentInfo);
+		// 鎻掑叆璁板綍
+		userInfoDeleteRecordService.addDeleteRecord(uid, UserInfo.STATE_DELETE_OUT_OF_DATE, reason);
+	}
 }

--
Gitblit v1.8.0