From 88b54772dbcf5ecab1e2316e4e4626ac901b8908 Mon Sep 17 00:00:00 2001 From: yujian <yujian> Date: 星期二, 22 一月 2019 15:58:24 +0800 Subject: [PATCH] 邀请码添加返回状态 --- fanli/src/main/java/com/yeshi/fanli/controller/client/UserInfoController.java | 220 ++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 211 insertions(+), 9 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/UserInfoController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/UserInfoController.java index 5d17922..5b2d0c0 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/UserInfoController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/UserInfoController.java @@ -10,6 +10,7 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.Date; +import java.util.Iterator; import java.util.List; import java.util.UUID; @@ -24,6 +25,7 @@ import org.yeshi.utils.IPUtil; import org.yeshi.utils.JsonUtil; import org.yeshi.utils.NumberUtil; +import org.yeshi.utils.taobao.TbImgUtil; import org.yeshi.utils.tencentcloud.COSManager; import com.google.gson.Gson; @@ -32,6 +34,7 @@ import com.google.gson.JsonPrimitive; import com.google.gson.JsonSerializationContext; import com.google.gson.JsonSerializer; +import com.yeshi.fanli.dto.HongBaoDTO; import com.yeshi.fanli.entity.accept.AcceptData; import com.yeshi.fanli.entity.bus.user.AccountDetails; import com.yeshi.fanli.entity.bus.user.AccountMessage; @@ -55,6 +58,7 @@ import com.yeshi.fanli.entity.goods.CollectionGoodsV2; import com.yeshi.fanli.entity.goods.CommonGoods; import com.yeshi.fanli.entity.money.UserMoneyDetail; +import com.yeshi.fanli.entity.order.HongBaoOrder; import com.yeshi.fanli.entity.system.System; import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief; import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBriefExtra; @@ -63,6 +67,8 @@ import com.yeshi.fanli.exception.goods.CollectionGoodsException; import com.yeshi.fanli.exception.taobao.TaoKeApiException; import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException; +import com.yeshi.fanli.exception.user.UserCustomSettingsException; +import com.yeshi.fanli.exception.user.UserInfoExtraException; import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.service.AdminUserService; import com.yeshi.fanli.service.inter.config.ConfigService; @@ -70,8 +76,10 @@ import com.yeshi.fanli.service.inter.goods.CollectionGoodsV2Service; 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.ThreeSaleExtraInfoSerivce; import com.yeshi.fanli.service.inter.hongbao.ThreeSaleSerivce; +import com.yeshi.fanli.service.inter.order.HongBaoOrderService; import com.yeshi.fanli.service.inter.order.LostOrderService; import com.yeshi.fanli.service.inter.order.OrderItemServcie; import com.yeshi.fanli.service.inter.order.OrderService; @@ -82,10 +90,14 @@ import com.yeshi.fanli.service.inter.user.MoneyRecordService; import com.yeshi.fanli.service.inter.user.PassWordErrorRecordService; import com.yeshi.fanli.service.inter.user.ShamUserService; +import com.yeshi.fanli.service.inter.user.SpreadUserImgService; import com.yeshi.fanli.service.inter.user.UserAccountService; import com.yeshi.fanli.service.inter.user.UserActiveLogService; +import com.yeshi.fanli.service.inter.user.UserCustomSettingsService; +import com.yeshi.fanli.service.inter.user.UserInfoExtraService; import com.yeshi.fanli.service.inter.user.UserInfoService; import com.yeshi.fanli.service.inter.user.UserMoneyDetailService; +import com.yeshi.fanli.service.inter.user.UserShareGoodsRecordService; import com.yeshi.fanli.service.inter.user.WxDownService; import com.yeshi.fanli.util.AESUtil; import com.yeshi.fanli.util.Constant; @@ -99,9 +111,13 @@ import com.yeshi.fanli.util.account.UserUtil; import com.yeshi.fanli.util.email.MailSenderUtil; import com.yeshi.fanli.util.factory.AccountDetailsFactory; +import com.yeshi.fanli.util.factory.HongBaoFactory; +import com.yeshi.fanli.util.factory.OrderItemFactory; import com.yeshi.fanli.util.taobao.TaoBaoUtil; import com.yeshi.fanli.util.taobao.TaoKeApiUtil; import com.yeshi.fanli.util.wx.WXLoginUtil; +import com.yeshi.fanli.vo.user.UserInfoExtraVO; +import com.yeshi.fanli.vo.user.UserSettingsVO; import net.sf.json.JSONArray; import net.sf.json.JSONObject; @@ -152,7 +168,6 @@ @Resource private OrderItemServcie orderItemServcie; - @Resource private AccountMessageService accountMessageService; @@ -182,6 +197,25 @@ @Resource private UserMoneyDetailService userMoneyDetailService; + + @Resource + private HongBaoOrderService hongBaoOrderService; + + @Resource + private HongBaoV2Service hongBaoV2Service; + + @Resource + private SpreadUserImgService spreadUserImgService; + + @Resource + private UserShareGoodsRecordService userShareGoodsRecordService; + + @Resource + private UserCustomSettingsService userCustomSettingsService; + + @Resource + private UserInfoExtraService userInfoExtraService; + private static final String PASSWORD_MAX_ERROR = "password_max_error"; private static final String EXTRACT_MIN_MONEY = "extract_min_money"; @@ -477,12 +511,54 @@ data.put("user", JsonUtil.getConvertBigDecimalToStringBuilder(gsonBuilder).create() .toJson(UserUtil.filterForClientUser(user))); data.put("first", 0); + int spreadImgCount = spreadUserImgService.countUserSpreadImg(user.getId()); + long shareCount = userShareGoodsRecordService.countShareRecordByUid(user.getId()); + + int showTiCheng = 1; // 涓嶆樉绀� + if ("ios".equalsIgnoreCase(acceptData.getPlatform()) + && configService.iosOnLining(Integer.parseInt(acceptData.getVersion()))) + data.put("showTiCheng", false); + else { + data.put("showTiCheng", spreadImgCount + shareCount > 0); + if (spreadImgCount + shareCount > 0) { + showTiCheng = 0; + } + } + if ("ios".equalsIgnoreCase(acceptData.getPlatform()) && configService.iosOnLining(Integer.parseInt(acceptData.getVersion()))) data.put("inviteList", String.format("http://%s/%s/client/share/friends_new_online.html", Constant.systemCommonConfig.getProjectHost(), Constant.systemCommonConfig.getProjectName())); else data.put("inviteList", configService.get("team_list")); + + // 鐣岄潰鐘舵�� + UserSettingsVO mySettings = null; + try { + mySettings = userCustomSettingsService.getMySettings(user.getId()); + } catch (UserCustomSettingsException e) { + mySettings = new UserSettingsVO(); + e.printStackTrace(); + } + + if (mySettings.getCancelNotice() == null) { + mySettings.setCancelNotice(0); + } + if (mySettings.getNoBonusCount() == null) { + mySettings.setNoBonusCount(showTiCheng); // 鏍规嵁showTiCheng鏉ュ垽鏂� + } + if (mySettings.getNoNewsRedDot() == null) { + mySettings.setNoNewsRedDot(0); + } + if (mySettings.getNoShareRecordAndStorage() == null) { + mySettings.setNoShareRecordAndStorage(showTiCheng); // 鏍规嵁showTiCheng鏉ュ垽鏂� + } + if (mySettings.getNoInvitationBonus() == null) { + mySettings.setNoInvitationBonus(0); + } + + data.put("moduleState", mySettings); + out.print(JsonUtil.loadTrueResult(data)); final UserInfo uuser = user; ThreadUtil.run(new Runnable() { @@ -1366,15 +1442,20 @@ @RequestMapping("findOrderItemList") public void findOrderItemList(AcceptData acceptData, long uid, int page, PrintWriter out) { - List<OrderItem> list = orderItemServcie.findOrderItemList(uid, page); - list.parallelStream().forEach(oi -> { - oi.setDesc(); - }); - int count = orderItemServcie.getCount(uid); + List<HongBaoOrder> list = hongBaoOrderService.listFanLiOrder(uid, page, Constant.PAGE_SIZE); + + List<OrderItem> orderList = new ArrayList<>(); + for (HongBaoOrder oi : list) { + OrderItem orderItem = OrderItemFactory.create(oi); + orderItem.setDesc(); + orderItem.setPicture(TbImgUtil.getTBSize220Img(orderItem.getPicture())); + orderList.add(orderItem); + } + long count = hongBaoOrderService.countFanLiOrder(uid); Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder()) .excludeFieldsWithoutExposeAnnotation().create(); JSONObject data = new JSONObject(); - data.put("list", gson.toJson(list)); + data.put("list", gson.toJson(orderList)); data.put("count", count); out.print(JsonUtil.loadTrueResult(data)); } @@ -1389,8 +1470,13 @@ */ @RequestMapping("getTiChengOrderList") public void getTiChengOrderList(AcceptData acceptData, long uid, int page, PrintWriter out) { - List<HongBao> list = hongBaoService.getTiChengHongBaoList(uid, page); - long count = hongBaoService.getTiChengHongBaoListCount(uid); + List<HongBaoDTO> hongBaoDTOList = hongBaoV2Service.listJiangJinByUid(uid, page, Constant.PAGE_SIZE); + List<HongBao> list = new ArrayList<>(); + if (hongBaoDTOList != null) + for (HongBaoDTO dto : hongBaoDTOList) { + list.add(HongBaoFactory.createHongBao(dto)); + } + long count = hongBaoV2Service.countJiangJinByUid(uid); List<OrderItem> orderItemList = HongBaoUtil.convertToTiChengOrder(list); Gson gson = JsonUtil.getApiCommonGson(); JSONObject data = new JSONObject(); @@ -1896,7 +1982,123 @@ out.print(JsonUtil.loadFalseResult("鍒犻櫎澶辫触")); e.printStackTrace(); } + } + + + /** + * 璁剧疆鐣岄潰寮�鍏崇姸鎬� + * @param acceptData + * @param uid + * @param params + * @param out + */ + @RequestMapping(value = "setModuleState", method = RequestMethod.POST) + public void setModuleState(AcceptData acceptData, Long uid, String params, PrintWriter out) { + if (uid == null) { + out.print(JsonUtil.loadFalseResult("鐢ㄦ埛鏈櫥褰�")); + return; + } + + try { + if (params == null || params.trim().length() == 0) { + out.print(JsonUtil.loadFalseResult("浼犻�掑弬鏁颁负绌�")); + return; + } + + JSONObject json = JSONObject.fromObject(params); + Iterator<String> iterator = json.keys(); + while(iterator.hasNext()){ + String type = (String) iterator.next(); + int state = json.getInt(type); + userCustomSettingsService.saveModuleState(uid, type, state); + } + out.print(JsonUtil.loadTrueResult("璁剧疆鎴愬姛")); + + } catch (UserCustomSettingsException e) { + out.print(JsonUtil.loadFalseResult(e.getMsg())); + } catch (Exception e) { + out.print(JsonUtil.loadFalseResult("璁剧疆澶辫触")); + e.printStackTrace(); + } } + + /** + * 鑾峰彇绛夌骇淇℃伅 + * @param acceptData + * @param uid + * @param out + */ + @RequestMapping(value = "getRankInfo", method = RequestMethod.POST) + public void getRankInfo(AcceptData acceptData, Long uid, PrintWriter out) { + + if (uid == null) { + out.print(JsonUtil.loadFalseResult("鐢ㄦ埛鏈櫥褰�")); + return; + } + + try { + + UserInfoExtraVO rankInfo = userInfoExtraService.getRankInfo(uid); + + GsonBuilder gsonBuilder = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder()); + gsonBuilder.excludeFieldsWithoutExposeAnnotation(); + Gson gson = gsonBuilder.setDateFormat("yyyy.MM.dd").create(); + + JSONObject resultData = new JSONObject(); + resultData.put("rankInfo", gson.toJson(rankInfo)); + + out.print(JsonUtil.loadTrueResult(resultData)); + + } catch (UserInfoExtraException e) { + out.print(JsonUtil.loadFalseResult(e.getMsg())); + } catch (Exception e) { + out.print(JsonUtil.loadFalseResult("鑾峰彇澶辫触")); + e.printStackTrace(); + } + } + + + /** + * 鑾峰彇绛夌骇淇℃伅 + * @param acceptData + * @param uid + * @param out + */ + @RequestMapping(value = "getUserConfig", method = RequestMethod.POST) + public void getUserConfig(AcceptData acceptData, Long uid, PrintWriter out) { + + if (uid == null) { + out.print(JsonUtil.loadFalseResult("鐢ㄦ埛鏈櫥褰�")); + return; + } + + try { + + String inviteCode = userInfoExtraService.getUserInviteCode(uid); + + JSONObject inviteData = new JSONObject(); + if (inviteCode == null || inviteCode.trim().length() == 0) { + // 鏃犻個璇风爜 + inviteData.put("content", "閭�璇锋縺娲�"); + inviteData.put("link", configService.get("invite_activation_url")); + } else { + // 宸叉湁閭�璇风爜 + inviteData.put("content", "閭�璇风爜"); + inviteData.put("link", configService.get("invite_activation_success_url")); + } + + JSONObject data = new JSONObject(); + data.put("invite", inviteData); + + out.print(JsonUtil.loadTrueResult(data)); + + } catch (UserInfoExtraException e) { + out.print(JsonUtil.loadFalseResult(e.getMsg())); + } catch (Exception e) { + out.print(JsonUtil.loadFalseResult("鑾峰彇澶辫触")); + e.printStackTrace(); + } + } } -- Gitblit v1.8.0