From a82cab28796d4287f4514813f6d8b2c3023fb4cb Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期四, 09 五月 2019 10:51:50 +0800
Subject: [PATCH] 增加缓存清除,增加搜索与推荐的淘客商品过滤
---
fanli/src/main/java/com/yeshi/fanli/controller/client/UserAccountController.java | 519 +++++++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 443 insertions(+), 76 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/UserAccountController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/UserAccountController.java
index 1c00043..03c9e92 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/UserAccountController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/UserAccountController.java
@@ -9,16 +9,20 @@
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
import org.yeshi.utils.JsonUtil;
+import org.yeshi.utils.encrypt.DESUtil;
import com.alipay.api.AlipayApiException;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.user.BindingAccount;
+import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode;
+import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode.ForbiddenUserIdentifyCodeTypeEnum;
import com.yeshi.fanli.entity.bus.user.LoginResult;
import com.yeshi.fanli.entity.bus.user.SMSHistory;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.entity.bus.user.WeiXinUser;
-import com.yeshi.fanli.entity.system.System;
+import com.yeshi.fanli.entity.system.BusinessSystem;
import com.yeshi.fanli.entity.taobao.ClientTBPid;
import com.yeshi.fanli.entity.taobao.PidUser;
import com.yeshi.fanli.entity.taobao.TBPid;
@@ -27,28 +31,32 @@
import com.yeshi.fanli.exception.AlipayTransferException;
import com.yeshi.fanli.exception.UserAccountException;
import com.yeshi.fanli.log.LogHelper;
+import com.yeshi.fanli.service.inter.config.BusinessSystemService;
import com.yeshi.fanli.service.inter.config.ConfigService;
-import com.yeshi.fanli.service.inter.config.InviteGetMoneyService;
-import com.yeshi.fanli.service.inter.config.SystemService;
import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService;
-import com.yeshi.fanli.service.inter.hongbao.HongBaoService;
+import com.yeshi.fanli.service.inter.hongbao.HongBaoV2Service;
import com.yeshi.fanli.service.inter.hongbao.ThreeSaleSerivce;
import com.yeshi.fanli.service.inter.order.LostOrderService;
-import com.yeshi.fanli.service.inter.order.OrderItemServcie;
import com.yeshi.fanli.service.inter.order.OrderService;
import com.yeshi.fanli.service.inter.push.DeviceTokenHWService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService;
-import com.yeshi.fanli.service.inter.user.AccountDetailsService;
-import com.yeshi.fanli.service.inter.user.AccountMessageService;
import com.yeshi.fanli.service.inter.user.BindingAccountService;
import com.yeshi.fanli.service.inter.user.ExtractService;
+import com.yeshi.fanli.service.inter.user.ForbiddenUserIdentifyCodeService;
import com.yeshi.fanli.service.inter.user.ShamUserService;
+import com.yeshi.fanli.service.inter.user.SpreadUserImgService;
import com.yeshi.fanli.service.inter.user.TBPidService;
+import com.yeshi.fanli.service.inter.user.UserAccountBindingHistoryService;
import com.yeshi.fanli.service.inter.user.UserAccountService;
import com.yeshi.fanli.service.inter.user.UserInfoService;
+import com.yeshi.fanli.service.inter.user.UserMoneyService;
+import com.yeshi.fanli.service.inter.user.UserShareGoodsRecordService;
+import com.yeshi.fanli.service.inter.user.UserSystemCouponService;
+import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.GsonUtil;
import com.yeshi.fanli.util.RedisManager;
import com.yeshi.fanli.util.StringUtil;
+import com.yeshi.fanli.util.ThreadUtil;
import com.yeshi.fanli.util.account.UserUtil;
import com.yeshi.fanli.util.wx.WXLoginUtil;
@@ -71,7 +79,7 @@
private OrderService orderService;
@Resource
- private HongBaoService hongBaoService;
+ private HongBaoV2Service hongBaoV2Service;
@Resource
private BindingAccountService bindingAccountService;
@@ -83,7 +91,7 @@
private ConfigService configService;
@Resource
- private SystemService systemService;
+ private BusinessSystemService businessSystemService;
@Resource
private ShamUserService shamUserService;
@@ -95,15 +103,6 @@
private LostOrderService lostOrderService;
@Resource
- private OrderItemServcie orderItemServcie;
-
- @Resource
- private AccountDetailsService accountDetailsService;
-
- @Resource
- private AccountMessageService accountMessageService;
-
- @Resource
private HongBaoManageService hongBaoManageService;
@Resource
@@ -113,9 +112,6 @@
private RedisManager redisManager;
@Resource
- private InviteGetMoneyService inviteGetMoneyService;
-
- @Resource
private TBPidService tbPidService;
@Resource
@@ -123,6 +119,24 @@
@Resource
private TaoBaoUnionConfigService taoBaoUnionConfigService;
+
+ @Resource
+ private SpreadUserImgService spreadUserImgService;
+
+ @Resource
+ private UserShareGoodsRecordService userShareGoodsRecordService;
+
+ @Resource
+ private ForbiddenUserIdentifyCodeService forbiddenUserIdentifyCodeService;
+
+ @Resource
+ private UserSystemCouponService userSystemCouponService;
+
+ @Resource
+ private UserMoneyService userMoneyService;
+
+ @Resource
+ private UserAccountBindingHistoryService userAccountBindingHistoryService;
private static final String PASSWORD_MAX_ERROR = "password_max_error";
private static final String EXTRACT_MIN_MONEY = "extract_min_money";
@@ -138,33 +152,56 @@
* @param tbOpenid
* @param tbNickName
* @param tbPortrait
+ * @param tbSession(娣樺疂session鏁版嵁,鍔犲瘑)
* @param out
*/
@RequestMapping(value = "login")
public void login(AcceptData acceptData, String code, String vcode, String phone, boolean wxinstall,
- String tbOpenid, String tbNickName, String tbPortrait, int loginType, Boolean first, HttpSession session,
- HttpServletRequest request, PrintWriter out) {
- System system = systemService.getSystemCache(acceptData.getPlatform(), acceptData.getPackages());
+ String tbOpenid, String tbNickName, String tbPortrait, String tbSession, int loginType, Boolean first,
+ HttpSession session, HttpServletRequest request, PrintWriter out) {
+ BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(),
+ acceptData.getPackages());
if (system == null) {
out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�"));
return;
}
- if (loginType == 3)// 楠岃瘉鐭俊楠岃瘉鐮�
+ if (loginType == 3 && !Constant.IS_TEST)// 楠岃瘉鐭俊楠岃瘉鐮�
{
- String oldVcode = redisManager.getSMSVCode(phone, SMSHistory.TYPE_LOGIN);
- if (StringUtil.isNullOrEmpty(oldVcode) || !oldVcode.equalsIgnoreCase(vcode)) {
- out.print(JsonUtil.loadFalseResult(90001, "楠岃瘉鐮侀敊璇�"));
- return;
+ // 鑻规灉搴旂敤鍟嗗簵涓婄嚎娴嬭瘯鍙风爜
+ if ("17316780233".equalsIgnoreCase(phone) && "258168".equalsIgnoreCase(vcode)) {
+ ;
+ } else {
+ String oldVcode = redisManager.getSMSVCode(phone, SMSHistory.TYPE_LOGIN);
+ if (StringUtil.isNullOrEmpty(oldVcode) || !oldVcode.equalsIgnoreCase(vcode)) {
+ out.print(JsonUtil.loadFalseResult(90001, "楠岃瘉鐮侀敊璇�"));
+ return;
+ }
}
redisManager.clearSMSFrequencyLimit(phone, SMSHistory.TYPE_LOGIN);
}
UserInfo tbUserInfo = new UserInfo();
+ if (!StringUtil.isNullOrEmpty(tbSession)) {
+ try {
+ tbSession = DESUtil.decode(tbSession.replace("\n", ""), StringUtil.getBase64String("YeShiFANLI889*+"),
+ StringUtil.getBase64String("*M#34f?,"));
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ JSONObject tbs = JSONObject.fromObject(tbSession);
+ tbOpenid = tbs.optString("openId");
+ tbNickName = tbs.optString("nick");
+ tbPortrait = tbs.optString("avatarUrl");
+ // 娣樺疂ID
+ tbUserInfo.setTaoBaoUid(tbs.optString("taobao_user_id"));
+ }
+
tbUserInfo.setOpenid(tbOpenid);
tbUserInfo.setTbName(tbNickName);
tbUserInfo.setTbPic(tbPortrait);
+
try {
LoginResult result = userAccountService.login(request, first, system.getAppid(), code, phone, tbUserInfo,
wxinstall, loginType);
@@ -184,6 +221,25 @@
root.put("type", result.getType());
root.put("data", data);
out.print(JsonUtil.loadTrueResult(root));
+
+ final UserInfo uuser = result.getUser();
+ ThreadUtil.run(new Runnable() {
+ public void run() {
+ try {
+ int platformType = 0;
+ String platform = acceptData.getPlatform();
+ if ("android".equals(platform)) {
+ platformType = 1;
+ } else if ("ios".equals(platform)) {
+ platformType = 2;
+ }
+ userSystemCouponService.copyLotteryPrize(uuser.getId(), platformType, acceptData.getDevice());
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ });
+
} catch (UserAccountException e) {
try {
LogHelper.cookieLog("鐧诲綍鍑洪敊:" + e.getCode() + "-" + e.getMessage());
@@ -192,6 +248,7 @@
}
out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg()));
}
+
}
/**
@@ -209,7 +266,8 @@
@RequestMapping(value = "register")
public void register(AcceptData acceptData, String tbOpenid, String tbNickName, String tbPortrait, String vcode,
String phone, HttpServletRequest request, HttpSession session, PrintWriter out) {
- System system = systemService.getSystemCache(acceptData.getPlatform(), acceptData.getPackages());
+ BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(),
+ acceptData.getPackages());
if (system == null) {
out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�"));
return;
@@ -269,7 +327,8 @@
*/
@RequestMapping(value = "connect")
public void connect(AcceptData acceptData, long mainUid, long lessUid, HttpSession session, PrintWriter out) {
- System system = systemService.getSystemCache(acceptData.getPlatform(), acceptData.getPackages());
+ BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(),
+ acceptData.getPackages());
if (system == null) {
out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�"));
return;
@@ -302,7 +361,8 @@
*/
@RequestMapping(value = "getuid")
public void getUid(AcceptData acceptData, String code, String tbOpenid, String phone, PrintWriter out) {
- System system = systemService.getSystemCache(acceptData.getPlatform(), acceptData.getPackages());
+ BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(),
+ acceptData.getPackages());
if (system == null) {
out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�"));
return;
@@ -366,7 +426,8 @@
*/
@RequestMapping(value = "bindPhone")
public void bindPhone(AcceptData acceptData, Long uid, String vcode, String phone, PrintWriter out) {
- System system = systemService.getSystemCache(acceptData.getPlatform(), acceptData.getPackages());
+ BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(),
+ acceptData.getPackages());
if (system == null) {
out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�"));
return;
@@ -384,15 +445,32 @@
String oldVCode = redisManager.getSMSVCode(phone, SMSHistory.TYPE_LOGIN);
- if (!vcode.equalsIgnoreCase(oldVCode)) {
- out.print(JsonUtil.loadFalseResult(90001, "楠岃瘉鐮侀敊璇�"));
- return;
+ if (Constant.IS_OUTNET) {
+ if (!vcode.equalsIgnoreCase(oldVCode)) {
+ out.print(JsonUtil.loadFalseResult(90001, "楠岃瘉鐮侀敊璇�"));
+ return;
+ }
+ redisManager.clearSMSFrequencyLimit(phone, SMSHistory.TYPE_LOGIN);
}
- redisManager.clearSMSFrequencyLimit(phone, SMSHistory.TYPE_LOGIN);
-
try {
userAccountService.bindPhone(uid, phone);
UserInfo user = userInfoService.getUserByIdWithMybatis(uid);
+ // 鍒ゆ柇鐢佃瘽鍙风爜鏄惁宸茬粡灏佺
+ ForbiddenUserIdentifyCode ic = forbiddenUserIdentifyCodeService
+ .listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.phone, phone);
+ if (ic != null && ic.getEffective() != null && ic.getEffective()) {
+ out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC));
+ // 灏佺鐢ㄦ埛
+ // 灏佺缁戝畾鐨勬甯哥敤鎴�
+ if (user != null && user.getState() != null && user.getState() == UserInfo.STATE_NORMAL) {
+ UserInfo update = new UserInfo(uid);
+ update.setState(UserInfo.STATE_FORBIDDEN);
+ update.setStateDesc("缁戝畾琚皝绂佺殑鐢佃瘽鍙风爜琚皝绂�");
+ userInfoService.updateByPrimaryKeySelective(update);
+ }
+ return;
+ }
+
JSONObject data = new JSONObject();
data.put("user", UserUtil.filterForClientUser(user));
out.print(JsonUtil.loadTrueResult(data));
@@ -412,7 +490,8 @@
*/
@RequestMapping(value = "unBindPhone")
public void unBindPhone(AcceptData acceptData, Long uid, String phone, PrintWriter out) {
- System system = systemService.getSystemCache(acceptData.getPlatform(), acceptData.getPackages());
+ BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(),
+ acceptData.getPackages());
if (system == null) {
out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�"));
return;
@@ -440,21 +519,60 @@
* @param tbOpenid
* @param tbNickName
* @param tbPortrait
+ * @param tbSession
+ * -娣樺疂鎺堟潈session
* @param out
*/
@RequestMapping(value = "bindTaoBao")
public void bindTaoBao(AcceptData acceptData, Long uid, String tbOpenid, String tbNickName, String tbPortrait,
- PrintWriter out) {
- System system = systemService.getSystemCache(acceptData.getPlatform(), acceptData.getPackages());
+ String tbSession, PrintWriter out) {
+ BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(),
+ acceptData.getPackages());
if (system == null) {
out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�"));
return;
}
+ String taoBaoUid = "";
+
+ if (!StringUtil.isNullOrEmpty(tbSession)) {
+ try {
+ tbSession = DESUtil.decode(tbSession.replace("\n", ""), StringUtil.getBase64String("YeShiFANLI889*+"),
+ StringUtil.getBase64String("*M#34f?,"));
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ JSONObject session = JSONObject.fromObject(tbSession);
+ tbOpenid = session.optString("openId");
+ tbNickName = session.optString("nick");
+ tbPortrait = session.optString("avatarUrl");
+ taoBaoUid = session.optString("taobao_user_id");
+ }
+
try {
userAccountService.bindTaoBao(uid, tbOpenid, tbNickName, tbPortrait);
UserInfo user = userInfoService.getUserByIdWithMybatis(uid);
+
+ // 鍒ゆ柇taoBaoUid鏄惁宸茬粡灏佺
+ if (!StringUtil.isNullOrEmpty(taoBaoUid)) {
+ ForbiddenUserIdentifyCode ic = forbiddenUserIdentifyCodeService
+ .listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.taobaoUid, taoBaoUid);
+ if (ic != null && ic.getEffective() != null && ic.getEffective()) {
+ out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER,
+ Constant.FORBIDDEN_USER_REASON_DESC));
+ // 灏佺鐢ㄦ埛
+ // 灏佺缁戝畾鐨勬甯哥敤鎴�
+ if (user != null && user.getState() != null && user.getState() == UserInfo.STATE_NORMAL) {
+ UserInfo update = new UserInfo(uid);
+ update.setState(UserInfo.STATE_FORBIDDEN);
+ update.setStateDesc("缁戝畾琚皝绂佺殑娣樺疂鍙疯灏佺");
+ userInfoService.updateByPrimaryKeySelective(update);
+ }
+ return;
+ }
+ }
+
JSONObject data = new JSONObject();
data.put("user", UserUtil.filterForClientUser(user));
out.print(JsonUtil.loadTrueResult(data));
@@ -472,7 +590,8 @@
*/
@RequestMapping(value = "unBindTaoBao")
public void unBindTaoBao(AcceptData acceptData, Long uid, PrintWriter out) {
- System system = systemService.getSystemCache(acceptData.getPlatform(), acceptData.getPackages());
+ BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(),
+ acceptData.getPackages());
if (system == null) {
out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�"));
return;
@@ -496,7 +615,8 @@
*/
@RequestMapping(value = "changeWX")
public void changeWX(AcceptData acceptData, Long uid, String code, PrintWriter out) {
- System system = systemService.getSystemCache(acceptData.getPlatform(), acceptData.getPackages());
+ BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(),
+ acceptData.getPackages());
if (system == null) {
out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�"));
return;
@@ -510,6 +630,22 @@
try {
userAccountService.changeWXBind(uid, code);
UserInfo user = userInfoService.getUserByIdWithMybatis(uid);
+ // 鍒ゆ柇taoBaoUid鏄惁宸茬粡灏佺
+ ForbiddenUserIdentifyCode ic = forbiddenUserIdentifyCodeService
+ .listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.wxUnionId, user.getWxUnionId());
+ if (ic != null && ic.getEffective() != null && ic.getEffective()) {
+ out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC));
+ // 灏佺鐢ㄦ埛
+ // 灏佺缁戝畾鐨勬甯哥敤鎴�
+ if (user != null && user.getState() != null && user.getState() == UserInfo.STATE_NORMAL) {
+ UserInfo update = new UserInfo(uid);
+ update.setState(UserInfo.STATE_FORBIDDEN);
+ update.setStateDesc("缁戝畾琚皝绂佺殑寰俊鍙疯灏佺");
+ userInfoService.updateByPrimaryKeySelective(update);
+ }
+ return;
+ }
+
JSONObject data = new JSONObject();
data.put("user", UserUtil.filterForClientUser(user));
out.print(JsonUtil.loadTrueResult(data));
@@ -527,7 +663,8 @@
*/
@RequestMapping(value = "getphone")
public void getPhone(AcceptData acceptData, Long uid, PrintWriter out) {
- System system = systemService.getSystemCache(acceptData.getPlatform(), acceptData.getPackages());
+ BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(),
+ acceptData.getPackages());
if (system == null) {
out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�"));
return;
@@ -547,7 +684,8 @@
@RequestMapping(value = "verifyvcodeforbind")
public void verifyVcodeForbind(AcceptData acceptData, Long uid, String vcode, PrintWriter out) {
- System system = systemService.getSystemCache(acceptData.getPlatform(), acceptData.getPackages());
+ BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(),
+ acceptData.getPackages());
if (system == null) {
out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�"));
return;
@@ -592,7 +730,8 @@
*/
@RequestMapping(value = "bindalipay")
public void bindAlipay(AcceptData acceptData, Long uid, String name, String account, PrintWriter out) {
- System system = systemService.getSystemCache(acceptData.getPlatform(), acceptData.getPackages());
+ BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(),
+ acceptData.getPackages());
if (system == null) {
out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�"));
return;
@@ -647,7 +786,8 @@
@RequestMapping(value = "bindalipaywithverify")
public void bindAlipayWithVerify(AcceptData acceptData, Long uid, String name, String account, PrintWriter out) {
- System system = systemService.getSystemCache(acceptData.getPlatform(), acceptData.getPackages());
+ BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(),
+ acceptData.getPackages());
if (system == null) {
out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�"));
return;
@@ -737,7 +877,8 @@
@RequestMapping(value = "bindalipaywithverifynew")
public void bindAlipayWithVerifyNew(AcceptData acceptData, Long uid, String name, String account, PrintWriter out) {
- System system = systemService.getSystemCache(acceptData.getPlatform(), acceptData.getPackages());
+ BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(),
+ acceptData.getPackages());
if (system == null) {
out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�"));
return;
@@ -773,6 +914,25 @@
return;
}
redisManager.cacheCommonString(key, "1", 120);
+
+
+
+ // 鏀粯瀹濈粦瀹�
+ ForbiddenUserIdentifyCode ic = forbiddenUserIdentifyCodeService
+ .listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.alipayAccount, account);
+ if (ic != null && ic.getEffective() != null && ic.getEffective()) {
+ out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC));
+ // 灏佺鐢ㄦ埛
+ // 灏佺缁戝畾鐨勬甯哥敤鎴�
+ if (user != null && user.getState() != null && user.getState() == UserInfo.STATE_NORMAL) {
+ UserInfo update = new UserInfo(uid);
+ update.setState(UserInfo.STATE_FORBIDDEN);
+ update.setStateDesc("缁戝畾琚皝绂佺殑鏀粯瀹濊灏佺");
+ userInfoService.updateByPrimaryKeySelective(update);
+ }
+ return;
+ }
+
// 鍙互灞曠ず缁欑敤鎴风湅鐨勯敊璇爜
String[] ALIPAY_CODES = new String[] { "SYSTEM_ERROR", "PERMIT_CHECK_PERM_LIMITED", "PERM_AML_NOT_REALNAME_REV",
"PERM_AML_NOT_REALNAME_REV", "PAYEE_USER_INFO_ERROR", "PAYEE_ACC_OCUPIED",
@@ -834,47 +994,58 @@
*/
@RequestMapping(value = "getusermoney")
public void getMoneyDetail(AcceptData acceptData, Long uid, PrintWriter out) {
+
UserInfo user = userInfoService.getUserByIdWithMybatis(uid);
if (user == null) {
out.print(JsonUtil.loadFalseResult(2, "鐢ㄦ埛涓嶅瓨鍦�"));
return;
}
- BigDecimal moneyToday = inviteGetMoneyService.getMoneyToday(uid + "");
+ BigDecimal moneyToday = userMoneyService.getMoneyToday(uid);
if (moneyToday == null) {
moneyToday = new BigDecimal(0);
}
- BigDecimal moneyMonth = inviteGetMoneyService.getMoneyMonth(uid + "");
+ BigDecimal moneyMonth = userMoneyService.getMoneyMonth(uid);
if (moneyMonth == null) {
moneyMonth = new BigDecimal(0);
}
- BigDecimal moneyLastMonth = inviteGetMoneyService.getMoneyLastMonth(uid + "");
- BigDecimal unOpenmoney = hongBaoService.getUnOpenHongBaoByUid(uid);
- BigDecimal totalFanMoney = hongBaoService.getMyTotalHongBaoByUid(user.getId());
+ BigDecimal moneyLastMonth = userMoneyService.getMoneyLastMonth(uid);
+ BigDecimal unOpenmoney = hongBaoV2Service.getUnRecievedFanLiMoney(uid);
+ BigDecimal totalFanMoney = hongBaoV2Service.getTotalFanLiMoney(uid);
JSONObject data = new JSONObject();
+ int spreadImgCount = spreadUserImgService.countUserSpreadImg(uid);
+ long shareCount = userShareGoodsRecordService.countShareRecordByUid(uid);
+
// IOS绔暟瀛楁寜鐓у瓧绗︿覆澶勭悊
if ("ios".equalsIgnoreCase(acceptData.getPlatform()) && Integer.parseInt(acceptData.getVersion()) > 33) {
data.put("moneyToday", moneyToday.setScale(2, BigDecimal.ROUND_DOWN).toString());
data.put("moneyMonth", moneyMonth.setScale(2, BigDecimal.ROUND_DOWN).toString());
- data.put("moneyLastMonth", moneyLastMonth.toString());
- data.put("money", user.getMyHongBao().toString());
- data.put("unGetMoney", unOpenmoney.toString());
- data.put("totalFanLiMoney", totalFanMoney.toString());// 绱杩斿埄
- data.put("totalTiChengMoney", hongBaoService.getTotalTiChengMoney(uid).toString());// 绱鎻愭垚
- data.put("totalUnGetTiChengMoney", hongBaoService.getUnGetTiChengMoney(uid).toString()); // 鏈埌璐︽彁鎴�
+ data.put("moneyLastMonth", moneyLastMonth.setScale(2, BigDecimal.ROUND_DOWN).toString());
+ data.put("money", user.getMyHongBao().setScale(2, BigDecimal.ROUND_DOWN).toString());
+ data.put("unGetMoney", unOpenmoney.setScale(2, BigDecimal.ROUND_DOWN).toString());
+ data.put("totalFanLiMoney", totalFanMoney.setScale(2, BigDecimal.ROUND_DOWN).toString());// 绱杩斿埄
+ data.put("totalTiChengMoney",
+ hongBaoV2Service.getTotalTiChengMoney(uid).setScale(2, BigDecimal.ROUND_DOWN).toString());// 绱鎻愭垚
+ data.put("totalUnGetTiChengMoney",
+ hongBaoV2Service.getUnGetTiChengMoney(uid).setScale(2, BigDecimal.ROUND_DOWN).toString()); // 鏈埌璐︽彁鎴�
// 灞曠ず鎻愭垚鏁版嵁
- data.put("showTiCheng", hongBaoService.getTotalTiChengCount(uid) > 0);
+ if (configService.iosOnLining(Integer.parseInt(acceptData.getVersion())))
+ data.put("showTiCheng", false);
+ else
+ data.put("showTiCheng", spreadImgCount + shareCount > 0);
} else {
data.put("moneyToday", moneyToday.setScale(2, BigDecimal.ROUND_DOWN));
data.put("moneyMonth", moneyMonth.setScale(2, BigDecimal.ROUND_DOWN));
- data.put("moneyLastMonth", moneyLastMonth);
- data.put("money", user.getMyHongBao());
- data.put("unGetMoney", unOpenmoney);
- data.put("totalFanLiMoney", totalFanMoney);// 绱杩斿埄
- data.put("totalTiChengMoney", hongBaoService.getTotalTiChengMoney(uid));// 绱鎻愭垚
- data.put("totalUnGetTiChengMoney", hongBaoService.getUnGetTiChengMoney(uid)); // 鏈埌璐︽彁鎴�
+ data.put("moneyLastMonth", moneyLastMonth.setScale(2, BigDecimal.ROUND_DOWN));
+ data.put("money", user.getMyHongBao().setScale(2, BigDecimal.ROUND_DOWN));
+ data.put("unGetMoney", unOpenmoney.setScale(2, BigDecimal.ROUND_DOWN));
+ data.put("totalFanLiMoney", totalFanMoney.setScale(2, BigDecimal.ROUND_DOWN));// 绱杩斿埄
+ data.put("totalTiChengMoney",
+ hongBaoV2Service.getTotalTiChengMoney(uid).setScale(2, BigDecimal.ROUND_DOWN));// 绱鎻愭垚
+ data.put("totalUnGetTiChengMoney",
+ hongBaoV2Service.getUnGetTiChengMoney(uid).setScale(2, BigDecimal.ROUND_DOWN)); // 鏈埌璐︽彁鎴�
// 灞曠ず鎻愭垚鏁版嵁
- data.put("showTiCheng", hongBaoService.getTotalTiChengCount(uid) > 0);
+ data.put("showTiCheng", spreadImgCount + shareCount > 0);
}
user.setNoOpenHongBao(unOpenmoney);
@@ -907,15 +1078,8 @@
} else {
- tbPid = tbPidService.getTBPid(Long.parseLong(uid), PidUser.TYPE_FANLI_IOS);
- if (tbPid != null) {
- String siteId = tbPid.getPid().split("_")[2];
- String adzoneId = tbPid.getPid().split("_")[3];
- TaoBaoUnionConfig config = taoBaoUnionConfigService.getConfigByAppIdCache(siteId);
- clientTBPid = new ClientTBPid(config.getAppKey(), tbPid.getPid(), siteId, adzoneId);
- } else {
- clientTBPid = tbPidService.getIOSDefault();
- }
+ clientTBPid = tbPidService.getIOSDefault();
+
}
} else {
@@ -947,4 +1111,207 @@
deviceTokenHWService.unBindDeviceToken(acceptData.getDevice());
out.print(JsonUtil.loadTrueResult(""));
}
+
+ /**
+ * 鏂扮増鐧诲綍 V1.5.3
+ *
+ * @param acceptData
+ * @param vcode
+ * @param phone
+ * @param code
+ * @param loginType
+ * 鐧诲綍鏂瑰紡锛� 1-鎵嬫満鐧诲綍 2-寰俊鐧诲綍
+ * @param request
+ * @param out
+ */
+ @RequestMapping(value = "loginNew", method = RequestMethod.POST)
+ public void loginNew(AcceptData acceptData, String vcode, String phone, String code, int loginType,
+ HttpServletRequest request, PrintWriter out) {
+
+ try {
+ BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(),
+ acceptData.getPackages());
+ if (system == null) {
+ out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�"));
+ return;
+ }
+
+ UserInfo userInfo = null;
+ // 鎵嬫満鐧诲綍
+ if (loginType == 1) {
+ userInfo = userAccountService.loginPhone(request, loginType, vcode, phone, system.getAppid());
+ }
+
+ // 寰俊鐧诲綍
+ if (loginType == 2) {
+ userInfo = userAccountService.loginWinXin(request, loginType, code, system.getAppid());
+ }
+
+ if (userInfo == null) {
+ out.print(JsonUtil.loadFalseResult("鐧诲綍澶辫触"));
+ } else {
+ JSONObject data = new JSONObject();
+ data.put("userInfo", UserUtil.filterForClientUser(userInfo));
+ out.print(JsonUtil.loadTrueResult(data));
+
+ final UserInfo uuser = userInfo;
+ ThreadUtil.run(new Runnable() {
+ public void run() {
+ try {
+ /* 鍚屾鏈櫥褰曚箣鍓嶈澶囨娊濂栨暟鎹� */
+ int platformType = 0;
+ String platform = acceptData.getPlatform();
+ if ("android".equals(platform)) {
+ platformType = 1;
+ } else if ("ios".equals(platform)) {
+ platformType = 2;
+ }
+ userSystemCouponService.copyLotteryPrize(uuser.getId(), platformType,
+ acceptData.getDevice());
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ });
+ }
+
+ } catch (UserAccountException e) {
+ out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg()));
+ try {
+ LogHelper.cookieLog("鐧诲綍鍑洪敊:" + e.getCode() + "-" + e.getMessage());
+ } catch (Exception e1) {
+ e1.printStackTrace();
+ }
+ } catch (Exception e) {
+ out.print(JsonUtil.loadFalseResult("鐧诲綍澶辫触"));
+ try {
+ LogHelper.errorDetailInfo(e);
+ } catch (Exception e1) {
+ e1.printStackTrace();
+ }
+ }
+ }
+
+ /**
+ * 缁戝畾鐢佃瘽鍙风爜 V1.5.3
+ *
+ * @param acceptData
+ * @param vcode
+ * @param phone
+ * @param out
+ */
+ @RequestMapping(value = "bindPhoneNew")
+ public void bindPhoneNew(AcceptData acceptData, Long uid, String vcode, String phone, PrintWriter out) {
+
+ BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(),
+ acceptData.getPackages());
+ if (system == null) {
+ out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�"));
+ return;
+ }
+
+ if (StringUtil.isNullOrEmpty(vcode)) {
+ out.print(JsonUtil.loadFalseResult("楠岃瘉鐮佷笉鑳戒负绌�"));
+ return;
+ }
+
+ if (StringUtil.isNullOrEmpty(phone)) {
+ out.print(JsonUtil.loadFalseResult("鐢佃瘽鍙风爜涓嶈兘涓虹┖"));
+ return;
+ }
+
+ phone = phone.replaceAll(" ", "");
+
+ String oldVCode = redisManager.getSMSVCode(phone, SMSHistory.TYPE_BIND);
+ if (Constant.IS_OUTNET) {
+ if (!vcode.equalsIgnoreCase(oldVCode)) {
+ out.print(JsonUtil.loadFalseResult(9001, "楠岃瘉鐮侀敊璇紝閲嶆柊杈撳叆"));
+ return;
+ }
+ redisManager.clearSMSFrequencyLimit(phone, SMSHistory.TYPE_BIND);
+ }
+
+ try {
+ // 缁戝畾鐢ㄦ埛
+ userAccountService.bindPhoneNew(uid, phone);
+
+ UserInfo user = userInfoService.getUserByIdWithMybatis(uid);
+ // 鍒ゆ柇鐢佃瘽鍙风爜鏄惁宸茬粡灏佺
+ ForbiddenUserIdentifyCode ic = forbiddenUserIdentifyCodeService
+ .listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.phone, phone);
+ if (ic != null && ic.getEffective() != null && ic.getEffective()) {
+ out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC));
+ // 灏佺鐢ㄦ埛
+ // 灏佺缁戝畾鐨勬甯哥敤鎴�
+ if (user != null && user.getState() != null && user.getState() == UserInfo.STATE_NORMAL) {
+ UserInfo update = new UserInfo(uid);
+ update.setState(UserInfo.STATE_FORBIDDEN);
+ update.setStateDesc("缁戝畾琚皝绂佺殑鐢佃瘽鍙风爜琚皝绂�");
+ userInfoService.updateByPrimaryKeySelective(update);
+ }
+ return;
+ }
+
+ JSONObject data = new JSONObject();
+ data.put("userInfo", UserUtil.filterForClientUser(user));
+ out.print(JsonUtil.loadTrueResult(data));
+
+ } catch (UserAccountException e) {
+ out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg()));
+ } catch (Exception e) {
+ out.print(JsonUtil.loadFalseResult(1, "缁戝畾澶辫触"));
+ }
+ }
+
+ /**
+ * 鏇存敼寰俊
+ *
+ * @param acceptData
+ * @param uid
+ * @param code
+ * @param out
+ */
+ @RequestMapping(value = "bindWeiXin")
+ public void bindWeiXin(AcceptData acceptData, Long uid, String code, PrintWriter out) {
+ BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(),
+ acceptData.getPackages());
+
+ if (system == null) {
+ out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�"));
+ return;
+ }
+
+ if (StringUtil.isNullOrEmpty(code)) {
+ out.print(JsonUtil.loadFalseResult("璇蜂笂浼燾ode"));
+ return;
+ }
+
+ try {
+ userAccountService.bindWeiXin(uid, code);
+
+ UserInfo user = userInfoService.getUserByIdWithMybatis(uid);
+ // 鍒ゆ柇taoBaoUid鏄惁宸茬粡灏佺
+ ForbiddenUserIdentifyCode ic = forbiddenUserIdentifyCodeService
+ .listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.wxUnionId, user.getWxUnionId());
+ if (ic != null && ic.getEffective() != null && ic.getEffective()) {
+ out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC));
+ // 灏佺鐢ㄦ埛
+ // 灏佺缁戝畾鐨勬甯哥敤鎴�
+ if (user != null && user.getState() != null && user.getState() == UserInfo.STATE_NORMAL) {
+ UserInfo update = new UserInfo(uid);
+ update.setState(UserInfo.STATE_FORBIDDEN);
+ update.setStateDesc("缁戝畾琚皝绂佺殑寰俊鍙疯灏佺");
+ userInfoService.updateByPrimaryKeySelective(update);
+ }
+ return;
+ }
+
+ JSONObject data = new JSONObject();
+ data.put("userInfo", UserUtil.filterForClientUser(user));
+ out.print(JsonUtil.loadTrueResult(data));
+ } catch (UserAccountException e) {
+ out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg()));
+ }
+ }
+
}
--
Gitblit v1.8.0