From a6e138ae919e6048fa26472c31336123f3d78106 Mon Sep 17 00:00:00 2001
From: yujian <yujian@123.com>
Date: 星期五, 09 八月 2019 15:56:24 +0800
Subject: [PATCH] 积分
---
fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserExtraTaoBaoInfoServiceImpl.java | 126 +++++++++++++++++++++++++++--------------
1 files changed, 83 insertions(+), 43 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserExtraTaoBaoInfoServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserExtraTaoBaoInfoServiceImpl.java
index ff1d4af..e622a7c 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserExtraTaoBaoInfoServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserExtraTaoBaoInfoServiceImpl.java
@@ -4,17 +4,19 @@
import java.util.List;
import javax.annotation.Resource;
-import javax.transaction.Transactional;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
import com.yeshi.fanli.dao.mybatis.user.UserExtraTaoBaoInfoMapper;
import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode;
import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode.ForbiddenUserIdentifyCodeTypeEnum;
+import com.yeshi.fanli.entity.bus.user.UserAccountBindingHistory;
import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.exception.user.UserExtraTaoBaoInfoException;
import com.yeshi.fanli.service.inter.user.ForbiddenUserIdentifyCodeService;
+import com.yeshi.fanli.service.inter.user.UserAccountBindingHistoryService;
import com.yeshi.fanli.service.inter.user.UserExtraTaoBaoInfoService;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.StringUtil;
@@ -24,25 +26,27 @@
@Resource
private UserExtraTaoBaoInfoMapper userExtraTaoBaoInfoMapper;
-
+
@Resource
private ForbiddenUserIdentifyCodeService forbiddenUserIdentifyCodeService;
-
+
+ @Resource
+ private UserAccountBindingHistoryService userAccountBindingHistoryService;
@Transactional
@Override
- public void addRelationId(Long uid, String relationId, String taoBaoUid,String nickName,
- boolean valid) throws UserExtraTaoBaoInfoException{
-
+ public void addRelationId(Long uid, String relationId, String taoBaoUid, String nickName, boolean valid)
+ throws UserExtraTaoBaoInfoException {
+
if (uid == null || StringUtil.isNullOrEmpty(relationId) || StringUtil.isNullOrEmpty(taoBaoUid)) {
throw new UserExtraTaoBaoInfoException(1, "浼犻�掑弬鏁颁负绌�");
}
-
+
// 楠岃瘉taoBaoUid鏄惁琚皝绂�
- if(validateTaoBaoUidForbidden(taoBaoUid)) {
+ if (validateTaoBaoUidForbidden(taoBaoUid)) {
throw new UserExtraTaoBaoInfoException(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC);
}
-
+
UserExtraTaoBaoInfo taoBaoInfo = new UserExtraTaoBaoInfo();
taoBaoInfo.setUser(new UserInfo(uid));
taoBaoInfo.setTaoBaoNickName(nickName);
@@ -50,10 +54,12 @@
taoBaoInfo.setRelationId(relationId);
taoBaoInfo.setRelationValid(valid);
taoBaoInfo.setRelationUpdateTime(new Date());
-
+
+ userExtraTaoBaoInfoMapper.clearUid(uid);
+
List<UserExtraTaoBaoInfo> list = userExtraTaoBaoInfoMapper.listByTaoBaoUid(taoBaoUid);
if (list == null || list.size() == 0) {
- //鏂板
+ // 鏂板
taoBaoInfo.setCreateTime(new Date());
userExtraTaoBaoInfoMapper.insertSelective(taoBaoInfo);
} else {
@@ -61,30 +67,30 @@
taoBaoInfo.setId(list.get(0).getId());
taoBaoInfo.setUpdateTime(new Date());
userExtraTaoBaoInfoMapper.updateByPrimaryKeySelective(taoBaoInfo);
-
- // 娓呯┖澶氫綑宸茬粦瀹氭暟鎹�
- if (list.size() > 1) {
- for (int i = 1; i < list.size(); i++) {
- clearTaoBaoInfo(list.get(i));
- }
- }
+
+ // // 娓呯┖澶氫綑宸茬粦瀹氭暟鎹�
+ // if (list.size() > 1) {
+ // for (int i = 1; i < list.size(); i++) {
+ // clearTaoBaoInfo(list.get(i));
+ // }
+ // }
}
}
@Transactional
@Override
- public void addSpecialId(Long uid, String specialId, String taoBaoUid, String nickName,
- boolean valid) throws UserExtraTaoBaoInfoException{
-
+ public void addSpecialId(Long uid, String specialId, String taoBaoUid, String nickName, boolean valid)
+ throws UserExtraTaoBaoInfoException {
+
if (uid == null || StringUtil.isNullOrEmpty(specialId) || StringUtil.isNullOrEmpty(taoBaoUid)) {
throw new UserExtraTaoBaoInfoException(1, "浼犻�掑弬鏁颁负绌�");
}
-
+
// 楠岃瘉taoBaoUid鏄惁琚皝绂�
- if(validateTaoBaoUidForbidden(taoBaoUid)) {
+ if (validateTaoBaoUidForbidden(taoBaoUid)) {
throw new UserExtraTaoBaoInfoException(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC);
}
-
+
UserExtraTaoBaoInfo taoBaoInfo = new UserExtraTaoBaoInfo();
taoBaoInfo.setUser(new UserInfo(uid));
taoBaoInfo.setTaoBaoNickName(nickName);
@@ -92,10 +98,12 @@
taoBaoInfo.setSpecialValid(valid);
taoBaoInfo.setSpecialId(specialId);
taoBaoInfo.setSpecialUpdateTime(new Date());
-
+
+ userExtraTaoBaoInfoMapper.clearUid(uid);
+
List<UserExtraTaoBaoInfo> list = userExtraTaoBaoInfoMapper.listByTaoBaoUid(taoBaoUid);
if (list == null || list.size() == 0) {
- //鏂板
+ // 鏂板
taoBaoInfo.setCreateTime(new Date());
userExtraTaoBaoInfoMapper.insertSelective(taoBaoInfo);
} else {
@@ -103,7 +111,7 @@
taoBaoInfo.setId(list.get(0).getId());
taoBaoInfo.setUpdateTime(new Date());
userExtraTaoBaoInfoMapper.updateByPrimaryKeySelective(taoBaoInfo);
-
+
// 娓呯┖澶氫綑宸茬粦瀹氭暟鎹�
if (list.size() > 1) {
for (int i = 1; i < list.size(); i++) {
@@ -115,19 +123,19 @@
@Transactional
@Override
- public void saveUserTaoBaoInfo(Long uid, String relationId, String specialId, String taoBaoUid,
- String nickName, boolean valid) throws UserExtraTaoBaoInfoException {
-
+ public void saveUserTaoBaoInfo(Long uid, String relationId, String specialId, String taoBaoUid, String nickName,
+ boolean valid) throws UserExtraTaoBaoInfoException {
+
if (uid == null || StringUtil.isNullOrEmpty(relationId) || StringUtil.isNullOrEmpty(specialId)
|| StringUtil.isNullOrEmpty(taoBaoUid)) {
throw new UserExtraTaoBaoInfoException(1, "浼犻�掑弬鏁伴儴鍒嗕负绌�");
}
-
+
// 楠岃瘉taoBaoUid鏄惁琚皝绂�
- if(validateTaoBaoUidForbidden(taoBaoUid)) {
+ if (validateTaoBaoUidForbidden(taoBaoUid)) {
throw new UserExtraTaoBaoInfoException(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC);
}
-
+
UserExtraTaoBaoInfo taoBaoInfo = new UserExtraTaoBaoInfo();
taoBaoInfo.setTaoBaoUid(taoBaoUid);
taoBaoInfo.setTaoBaoNickName(nickName);
@@ -142,8 +150,15 @@
taoBaoInfo.setSpecialUpdateTime(new Date());
List<UserExtraTaoBaoInfo> list = userExtraTaoBaoInfoMapper.listByTaoBaoUid(taoBaoUid);
+
+ // 鍒ゆ柇涔嬪墠鐢ㄦ埛鏄惁缁戝畾杩�
+ UserExtraTaoBaoInfo info = userExtraTaoBaoInfoMapper.selectByUid(uid);
+
+ // 娓呴櫎涔嬪墠鐨勭敤鎴稩D
+ userExtraTaoBaoInfoMapper.clearUid(uid);
+
if (list == null || list.size() == 0) {
- //鏂板
+ // 鏂板
taoBaoInfo.setCreateTime(new Date());
userExtraTaoBaoInfoMapper.insertSelective(taoBaoInfo);
} else {
@@ -151,7 +166,7 @@
taoBaoInfo.setId(list.get(0).getId());
taoBaoInfo.setUpdateTime(new Date());
userExtraTaoBaoInfoMapper.updateByPrimaryKeySelective(taoBaoInfo);
-
+
// 娓呯┖澶氫綑宸茬粦瀹氭暟鎹�
if (list.size() > 1) {
for (int i = 1; i < list.size(); i++) {
@@ -159,43 +174,58 @@
}
}
}
+
+ // 鍔犲叆缁戝畾璁板綍
+ UserAccountBindingHistory history = new UserAccountBindingHistory();
+ history.setContent(taoBaoUid);
+ history.setType(UserAccountBindingHistory.TYPE_TB);
+ history.setUid(uid);
+
+ // 涔嬪墠宸茬粡缁戝畾鐢佃瘽鍙风爜
+ if (info != null)
+ history.setFirst(false);
+ else
+ history.setFirst(true);
+ userAccountBindingHistoryService.addUserAccountBindingHistory(history);
}
/**
- * 楠岃瘉taoBaoUid 鏄惁琚皝
+ * 楠岃瘉taoBaoUid 鏄惁琚皝
+ *
* @param taoBaoUid
* @return
*/
public boolean validateTaoBaoUidForbidden(String taoBaoUid) {
boolean validate = false;
- ForbiddenUserIdentifyCode identifyCode = forbiddenUserIdentifyCodeService.listByTypeAndIdentifyCode(
- ForbiddenUserIdentifyCodeTypeEnum.taobaoUid, taoBaoUid);
+ ForbiddenUserIdentifyCode identifyCode = forbiddenUserIdentifyCodeService
+ .listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.taobaoUid, taoBaoUid);
// 璐﹀彿琚皝
if (identifyCode != null && identifyCode.getEffective() != null && identifyCode.getEffective()) {
validate = true;
}
return validate;
}
-
+
/**
* 娓呯┖澶氫綑缁戝畾娣樺疂璐﹀彿淇℃伅
+ *
* @param otherInfo
*/
- public void clearTaoBaoInfo(UserExtraTaoBaoInfo otherInfo ) {
+ public void clearTaoBaoInfo(UserExtraTaoBaoInfo otherInfo) {
otherInfo.setUser(null);
otherInfo.setTaoBaoUid(null);
otherInfo.setTaoBaoNickName(null);
-
+
otherInfo.setRelationValid(null);
otherInfo.setRelationId(null);
otherInfo.setRelationUpdateTime(null);
-
+
otherInfo.setSpecialValid(null);
otherInfo.setSpecialId(null);
otherInfo.setSpecialUpdateTime(new Date());
userExtraTaoBaoInfoMapper.updateByPrimaryKey(otherInfo);
}
-
+
@Override
public UserExtraTaoBaoInfo getByUid(Long uid) {
return userExtraTaoBaoInfoMapper.selectByUid(uid);
@@ -242,4 +272,14 @@
return userExtraTaoBaoInfoMapper.selectBySpecialIdWithUidNotNull(specialId);
}
+ @Override
+ public String getRelationIdByUid(Long uid) {
+ UserExtraTaoBaoInfo extraInfo = getByUid(uid);
+ String relationId = null;
+ if (extraInfo != null && extraInfo.getRelationId() != null && extraInfo.getRelationValid() != null
+ && extraInfo.getRelationValid() == true)
+ relationId = extraInfo.getRelationId();
+ return relationId;
+ }
+
}
--
Gitblit v1.8.0