From 1dcacd030021dba6ed021432086e8e5efb7e33fb Mon Sep 17 00:00:00 2001
From: yujian <yujian@123.com>
Date: 星期一, 23 九月 2019 10:19:34 +0800
Subject: [PATCH] 兑换邀请激活id记录bug
---
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/InviteControllerV2.java | 227 ++++++++++++++++++++++++++++++++++++--------------------
1 files changed, 146 insertions(+), 81 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/InviteControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/InviteControllerV2.java
index 0c45467..fca7030c 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/InviteControllerV2.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/InviteControllerV2.java
@@ -22,18 +22,17 @@
import com.yeshi.fanli.entity.bus.user.UserInfoExtra;
import com.yeshi.fanli.exception.user.UserInfoExtraException;
import com.yeshi.fanli.service.inter.config.ConfigService;
-import com.yeshi.fanli.service.inter.hongbao.ThreeSaleExtraInfoSerivce;
-import com.yeshi.fanli.service.inter.hongbao.ThreeSaleSerivce;
import com.yeshi.fanli.service.inter.msg.UserSystemMsgService;
import com.yeshi.fanli.service.inter.push.PushService;
import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
+import com.yeshi.fanli.service.inter.user.UserInfoService;
+import com.yeshi.fanli.service.inter.user.invite.ThreeSaleExtraInfoSerivce;
+import com.yeshi.fanli.service.inter.user.invite.ThreeSaleSerivce;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.StringUtil;
-import com.yeshi.fanli.util.VersionUtil;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
-
@Controller
@RequestMapping("api/v2/invite")
@@ -41,27 +40,28 @@
@Resource
private ConfigService configService;
-
+
@Resource
private PushService pushService;
@Resource
private UserSystemMsgService userSystemMsgService;
-
+
@Resource
private ThreeSaleSerivce threeSaleSerivce;
-
+
+ @Resource
+ private UserInfoService userInfoService;
+
@Resource
private UserInfoExtraService userInfoExtraService;
-
+
@Resource
private ThreeSaleExtraInfoSerivce threeSaleExtraInfoSerivce;
-
-
-
/**
* 閭�璇风爜楠岃瘉
+ *
* @param out
*/
@RequestMapping(value = "verifyCode")
@@ -71,30 +71,33 @@
JSONObject data = new JSONObject();
data.put("nickName", userInfo.getNickName());
data.put("portrait", userInfo.getPortrait());
+ data.put("tips", "纭瑕佹垚涓篢A鐨勪竴绾ч槦鍛樺悧锛熼個璇峰叧绯讳竴鏃﹀缓绔嬩笉鍙洿鏀广��");
out.print(JsonUtil.loadTrueResult(data));
} catch (UserInfoExtraException e) {
out.print(JsonUtil.loadFalseResult(e.getMsg()));
}
}
-
-
+
/**
* 閭�璇风爜寰俊
+ *
* @param out
*/
@RequestMapping(value = "verifyWX")
public void verifyWX(AcceptData acceptData, Long uid, String code, PrintWriter out) {
try {
- UserInfo userInfo = userInfoExtraService.getInviterInfo(uid, code);
+ UserInfo userInfo = userInfoExtraService.getInviterInfo(
+ Constant.getWXAccount(acceptData.getPlatform(), acceptData.getVersion()), uid, code);
JSONObject data = new JSONObject();
data.put("nickName", userInfo.getNickName());
data.put("portrait", userInfo.getPortrait());
+ data.put("tips", "纭瑕佹垚涓篢A鐨勪竴绾ч槦鍛樺悧锛熼個璇峰叧绯讳竴鏃﹀缓绔嬩笉鍙洿鏀广��");
out.print(JsonUtil.loadTrueResult(data));
} catch (UserInfoExtraException e) {
out.print(JsonUtil.loadFalseResult(e.getMsg()));
}
}
-
+
/**
* 鐢ㄦ埛闃熷憳鍒楄〃鏌ヨ 1.5.3鏌ヨ鏈夋晥闃熷憳
*
@@ -118,50 +121,27 @@
listTeam = threeSaleSerivce.listSecondTeam((page - 1) * Constant.PAGE_SIZE, Constant.PAGE_SIZE, uid, 1);
count = threeSaleSerivce.countSecondTeam(uid, 1);
}
-
+
// 缁勭粐鏁版嵁
JSONObject resultData = organizeTeam(count, listTeam, uid, type);
- resultData.put("helpLink", configService.get("team_help_url"));
- boolean hasCode = false;
- boolean bdWeiXin = false;
- UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(uid);
- if (userInfoExtra != null) {
- if (!StringUtil.isNullOrEmpty(userInfoExtra.getInviteCode()))
- hasCode = true;
-
- if (!StringUtil.isNullOrEmpty(userInfoExtra.getWeiXin()))
- bdWeiXin = true;
- }
-
- // 鏈縺娲婚個璇风爜
- if (!hasCode) {
- resultData.put("helpLinkActivate", configService.get("team_help_url"));
- resultData.put("tipCode", "婵�娲婚個璇峰姛鑳藉悗鎵嶅彲浠ラ個璇烽槦鍛橈紝涓�绾ч槦鍛樻槸鐢变綘鐩存帴閭�璇凤紝浜岀骇闃熷憳鏄敱浣犵殑涓�绾ч槦鍛橀個璇枫�俓r\n閭�璇锋縺娲诲姛鑳斤紝蹇呴』瑕佹湁閭�璇风爜锛岄個璇风爜鍙互閫氳繃閲戝竵鍏戞崲锛屼篃鍙互鍏ㄧ綉鎼滅储銆�");
- }
- resultData.put("hasCode", hasCode);
-
- // 鏈坊鍔犲井淇″彿
- if (!bdWeiXin) {
- resultData.put("tipWeiXin", "娣诲姞寰俊鍙峰悗锛屼綘鐨勯個璇蜂汉鍜屼竴绾ч槦鍛樺彲閫氳繃寰俊鍙蜂笌浣犲缓绔嬭仈绯伙紱\r\n浣犱篃鍙互鍚戦個璇蜂汉瀛︿範鎴栧悜涓�绾ч槦鍛樻暀鎺堣禋閽辨妧宸с��");
- }
- resultData.put("bdWeiXin", bdWeiXin);
-
- // 瀹夊崜杩斿洖缁熻鏁版嵁
- String platform = acceptData.getPlatform();
- if ("android".equalsIgnoreCase(platform)) {
- JSONObject bossData = getBossInfo(acceptData, uid, threeSaleSerivce.getMyBoss(uid));
- resultData.put("boss", bossData);
- resultData.put("firstTeam", threeSaleSerivce.countFirstTeam(uid, 1));
- resultData.put("secondTeam", threeSaleSerivce.countSecondTeam(uid, 1));
+ // 绗竴椤靛垽鏂槸鍚︽縺娲� 鏄惁鏈夐槦鍛�
+ if (type == 1 && page == 1) {
+ boolean hasCode = false;
+ UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(uid);
+ if (userInfoExtra != null) {
+ if (!StringUtil.isNullOrEmpty(userInfoExtra.getInviteCode()))
+ hasCode = true;
+ }
+ resultData.put("hasCode", hasCode);
+ resultData.put("hasTeam", count > 0 ? true : false);
}
out.print(JsonUtil.loadTrueResult(resultData));
}
-
-
-
+
/**
* 缁勭粐鏁版嵁
+ *
* @param count
* @param list
* @param uid
@@ -171,28 +151,28 @@
private JSONObject organizeTeam(long count, List<ThreeSale> list, Long uid, int type) {
JSONObject result = new JSONObject();
JSONArray resultArray = new JSONArray();
-
+
Date todayTime = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("MM.dd HH:mm");
SimpleDateFormat format = new SimpleDateFormat("yyyy.MM.dd HH:mm");
SimpleDateFormat formatYears = new SimpleDateFormat("yyyy");
-
+
for (ThreeSale threeSale : list) {
UserInfo worker = threeSale.getWorker();
if (worker == null) {
continue;
}
Long workerId = worker.getId();
-
+
JSONObject object = new JSONObject();
object.put("workerId", worker.getId());
object.put("nickName", worker.getNickName());
object.put("portrait", worker.getPortrait());
object.put("inviteId", threeSale.getId());
-
+
Date inviteTime = new Date(threeSale.getCreateTime());
object.put("inviteTime", format.format(inviteTime) + " 鍔犲叆");
-
+
String fontColor1 = "#888888";
JSONArray array = new JSONArray();
if (threeSale.getState()) {
@@ -211,9 +191,9 @@
contentJson.put("content", "鏈�杩戠櫥褰� " + format.format(lastLoginTime));
}
array.add(contentJson);
-
+
// 涓�绾ч槦鍛� 鏌ヨ
- if(type == 1) {
+ if (type == 1) {
String memoName = null;
ThreeSaleExtraInfo threeSaleExtraInfo = threeSale.getThreeSaleExtraInfo();
if (threeSaleExtraInfo != null) {
@@ -222,7 +202,7 @@
}
}
object.put("memoName", memoName);
-
+
UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(workerId);
if (userInfoExtra != null && !StringUtil.isNullOrEmpty(userInfoExtra.getWeiXin())) {
object.put("weiXin", userInfoExtra.getWeiXin());
@@ -238,7 +218,7 @@
}
}
}
- }
+ }
object.put("state", 1);
object.put("recentMsg", array);
resultArray.add(object);
@@ -249,7 +229,6 @@
return result;
}
-
/**
* 鐢ㄦ埛闃熷憳缁熻- IOS
*
@@ -261,17 +240,59 @@
public void countMyTeam(AcceptData acceptData, long uid, PrintWriter out) {
JSONObject bossData = getBossInfo(acceptData, uid, threeSaleSerivce.getMyBoss(uid));
JSONObject resultData = new JSONObject();
+
+ long firstTeam = threeSaleSerivce.countFirstTeam(uid, 1);
resultData.put("boss", bossData);
resultData.put("helpLink", configService.get("team_help_url"));
- resultData.put("firstTeam", threeSaleSerivce.countFirstTeam(uid, 1));
+ resultData.put("firstTeam", firstTeam);
resultData.put("firstTeamTotal", threeSaleSerivce.countFirstTeam(uid, null));
resultData.put("secondTeam", threeSaleSerivce.countSecondTeam(uid, 1));
resultData.put("secondTeamTotal", threeSaleSerivce.countSecondTeam(uid, null));
+
+ boolean hasTeam = true;
+ if (firstTeam <= 0) {
+ hasTeam = false;
+ resultData.put("invitelink", configService.get("invite_activation_url"));
+ }
+ resultData.put("hasTeam", hasTeam);
+
+ boolean hasCode = false;
+ boolean bdWeiXin = false;
+ UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(uid);
+ if (userInfoExtra != null) {
+ if (!StringUtil.isNullOrEmpty(userInfoExtra.getInviteCode()))
+ hasCode = true;
+
+ if (!StringUtil.isNullOrEmpty(userInfoExtra.getWeiXin()))
+ bdWeiXin = true;
+ }
+
+ // 鏈縺娲婚個璇风爜
+ resultData.put("hasCode", hasCode);
+ if (!hasCode) {
+ List<String> tipCode = new ArrayList<String>();
+ resultData.put("helpLinkActivate", configService.get("team_help_url"));
+ tipCode.add("婵�娲婚個璇峰姛鑳藉悗鎵嶅彲浠ラ個璇烽槦鍛橈紝涓�绾ч槦鍛樻槸鐢变綘鐩存帴閭�璇凤紝浜岀骇闃熷憳鏄敱浣犵殑涓�绾ч槦鍛橀個璇枫��");
+ tipCode.add("閭�璇锋縺娲诲姛鑳斤紝蹇呴』瑕佹湁閭�璇风爜锛岄個璇风爜鍙互閫氳繃閲戝竵鍏戞崲锛屼篃鍙互鍏ㄧ綉鎼滅储銆�");
+ resultData.put("tipCode", tipCode);
+ }
+
+ // 鏈坊鍔犲井淇″彿
+ List<String> tipWeiXin = new ArrayList<String>();
+ if (!bdWeiXin) {
+ tipWeiXin.add("娣诲姞寰俊鍙峰悗锛屼綘鐨勯個璇蜂汉鍜屼竴绾ч槦鍛樺彲閫氳繃寰俊鍙蜂笌浣犲缓绔嬭仈绯伙紱");
+ tipWeiXin.add("浣犱篃鍙互鍚戦個璇蜂汉瀛︿範鎴栧悜涓�绾ч槦鍛樻暀鎺堣禋閽辨妧宸с��");
+ }
+ resultData.put("tipWeiXin", tipWeiXin);
+ resultData.put("tipWeiXinAdd", "娣诲姞寰俊鍙峰悗锛屼綘鐨勯個璇蜂汉鍜屼竴绾ч槦鍛樺彲浠ラ�氳繃寰俊涓庝綘寤虹珛鑱旂郴銆�");
+ resultData.put("bdWeiXin", bdWeiXin);
+
out.print(JsonUtil.loadTrueResult(resultData));
}
-
+
/**
* 涓婄骇淇℃伅缁勭粐
+ *
* @param acceptData
* @param uid
* @param threeSale
@@ -288,7 +309,7 @@
SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd");
Long createTime = threeSale.getCreateTime();
Date inviteTime = new Date(createTime);
-
+
UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(boss.getId());
if (userInfoExtra != null && !StringUtil.isNullOrEmpty(userInfoExtra.getWeiXin())) {
bossData.put("weiXin", userInfoExtra.getWeiXin());
@@ -304,19 +325,17 @@
}
}
bossData.put("inviteTime", "浣犱簬 " + sdf.format(inviteTime) + "鎺ュ彈浜員A鐨勯個璇�");
-
} else {
bossData.put("hasBoss", false);
bossData.put("helpLink", configService.get("invite_code_hlep_link"));
- bossData.put("weiXinTip", "鎭枩浣狅紝鎴戜滑鐨勪紭璐ㄧ敤鎴凤紱\r\n浣犲苟娌℃湁閭�璇蜂汉锛屼絾浣犵殑閭�璇锋縺娲诲姛鑳芥槸琚粯璁ゅ紑鍚殑锛沑r\n浣犳嫢鏈夌嫭鐗圭殑鏃犻個璇蜂汉婵�娲荤爜銆�");
+ bossData.put("weiXinTip", "鎭枩浣狅紝鎴戜滑鐨勪紭璐ㄧ敤鎴凤紱\r\n浣犲苟娌℃湁閭�璇蜂汉锛屼絾浣犵殑閭�璇锋縺娲诲姛鑳芥槸琚粯璁ゅ紑鍚殑锛沑r\n浣犳嫢鏈夌嫭鐗圭殑鏃犻個璇蜂汉婵�娲荤爜銆�");
}
return bossData;
- }
-
-
-
+ }
+
/**
* 绔欏唴淇℃彁閱掗槦鍛樻坊鍔犲井淇″彿
+ *
* @param acceptData
* @param uid
* @param inviteId
@@ -328,40 +347,86 @@
out.print(JsonUtil.loadFalseResult("浼犻�掑弬鏁扮己澶�"));
return;
}
-
+
+ UserInfo userInfo = userInfoService.selectByPKey(uid);
+ if (userInfo == null) {
+ out.print(JsonUtil.loadFalseResult("鐢ㄦ埛淇℃伅涓嶅瓨鍦�"));
+ return;
+ }
+
ThreeSale threeSale = threeSaleSerivce.selectByPrimaryKey(inviteId);
if (threeSale == null) {
out.print(JsonUtil.loadFalseResult("鍏崇郴id涓嶅瓨鍦�"));
return;
- }
-
+ }
+
Long remindId = null;
+ boolean remindBoss = true;
if (uid.longValue() == threeSale.getWorker().getId().longValue()) {
remindId = threeSale.getBoss().getId(); // 鎻愰啋涓婄骇
} else if (uid.longValue() == threeSale.getBoss().getId().longValue()) {
+ remindBoss = false;
remindId = threeSale.getWorker().getId(); // 鎻愰啋涓嬬骇
- }
-
+ }
+
if (remindId == null) {
out.print(JsonUtil.loadFalseResult("淇℃伅楠岃瘉鏈�氳繃"));
return;
}
-
+
+ Long bossId = null;
+ Long workerId = null;
+ String title = "闃熷憳鎻愰啋娑堟伅";
+ String content = "";
+ if (remindBoss) {
+ // 鎻愮ず闃熼暱
+ bossId = remindId;
+ workerId = uid;
+ content = "浣犵殑涓�绾ч槦鍛�" + userInfo.getNickName()
+ + "锛屾彁閱掍綘娣诲姞寰俊鍙凤紝浠ヤ究浜庡拰浣犲彇寰楄仈绯诲拰瀛︿範鐪侀挶鎶�宸э紝璧跺揩鍘绘坊鍔犲惂锛涙敞锛氳鍗囩骇鍒版湰杞欢鏈�鏂扮増鏈湪鈥滄垜鐨�-鎴戠殑淇℃伅鈥濅腑娣诲姞銆�";
+ } else {
+ // 鎻愮ず闃熷憳
+ bossId = uid;
+ workerId = remindId;
+ content = "浣犵殑閭�璇蜂汉" + userInfo.getNickName()
+ + "锛屾彁閱掍綘娣诲姞寰俊鍙凤紝浠ヤ究浜庡拰浣犲彇寰楄仈绯诲府鍔╀綘鏇村ソ鐨勭渷閽憋紝璧跺揩鍘绘坊鍔犲惂锛涙敞锛氳鍗囩骇鍒版湰杞欢鏈�鏂扮増鏈湪鈥滄垜鐨�-鎴戠殑淇℃伅鈥濅腑娣诲姞銆�";
+ }
+
try {
List<String> listIOS = new ArrayList<String>();
List<String> listAndroid = new ArrayList<String>();
- pushService.pushZNX(remindId, "", "", listIOS, listAndroid);
+ pushService.pushZNX(remindId, title, content, listIOS, listAndroid);
- userSystemMsgService.addUserSystemMsg(remindId, UserSystemMsgTypeEnum.question,
- "", "", UserSystemMsg.TIME_TAG_EMERGENT, null);
-
+ userSystemMsgService.addUserSystemMsg(remindId, UserSystemMsgTypeEnum.common, title, content,
+ UserSystemMsg.TIME_TAG_COMMON, null);
+
+ ThreeSaleExtraInfo newInfo = new ThreeSaleExtraInfo();
+ if (remindBoss) {
+ newInfo.setRemindBoss(1);
+ } else {
+ newInfo.setRemindWorker(1);
+ }
+
+ ThreeSaleExtraInfo threeExtra = threeSaleExtraInfoSerivce.getbyBossIdAndWorkerId(bossId, workerId);
+ if (threeExtra != null) {
+ newInfo.setId(threeExtra.getId());
+ newInfo.setUpdateTime(new Date());
+ threeSaleExtraInfoSerivce.updateByPrimaryKeySelective(newInfo);
+ } else {
+ newInfo.setBoss(new UserInfo(bossId));
+ newInfo.setWorker(new UserInfo(workerId));
+ newInfo.setCreateTime(new Date());
+ newInfo.setUpdateTime(new Date());
+ threeSaleExtraInfoSerivce.insertSelective(newInfo);
+ }
+
JSONObject data = new JSONObject();
data.put("weiXinState", 2);
data.put("weiXinTip", "绯荤粺宸插彂閫佹彁閱掞紝閭�璇蜂汉娣诲姞寰俊鍚庝綘鍙鍒讹紝濡傚鏂硅繜杩熶笉娣诲姞锛屼綘鍙仈绯讳汉宸ュ鏈嶅姹傚府鍔�");
out.print(JsonUtil.loadTrueResult(data));
} catch (Exception e) {
+ e.printStackTrace();
out.print(JsonUtil.loadFalseResult("鎻愰啋澶辫触"));
- return;
}
}
}
--
Gitblit v1.8.0