From 01d627f3c67e2bc5c28b2dd5e23983ddcf7a08f3 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期一, 10 十二月 2018 12:13:20 +0800 Subject: [PATCH] IOS唯一设备标识修改 --- fanli/src/main/java/com/yeshi/fanli/controller/client/UserInfoController.java | 306 +++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 270 insertions(+), 36 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 7de1a3f..f77013a 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 @@ -4,11 +4,11 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Type; import java.math.BigDecimal; +import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Arrays; import java.util.Date; import java.util.List; -import java.util.Map; import java.util.UUID; import javax.annotation.Resource; @@ -18,7 +18,6 @@ import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; -import org.yeshi.utils.BigDecimalUtil; import org.yeshi.utils.HttpUtil; import org.yeshi.utils.IPUtil; import org.yeshi.utils.JsonUtil; @@ -35,7 +34,6 @@ import com.yeshi.fanli.entity.bus.user.AccountDetails; import com.yeshi.fanli.entity.bus.user.AccountMessage; import com.yeshi.fanli.entity.bus.user.BindingAccount; -import com.yeshi.fanli.entity.bus.user.CollectionGoods; import com.yeshi.fanli.entity.bus.user.Extract; import com.yeshi.fanli.entity.bus.user.ExtractRecord; import com.yeshi.fanli.entity.bus.user.HongBao; @@ -46,21 +44,27 @@ import com.yeshi.fanli.entity.bus.user.OrderItem; import com.yeshi.fanli.entity.bus.user.PassWordErrorRecord; import com.yeshi.fanli.entity.bus.user.SMSHistory; +import com.yeshi.fanli.entity.bus.user.ThreeSale; +import com.yeshi.fanli.entity.bus.user.ThreeSaleExtraInfo; import com.yeshi.fanli.entity.bus.user.UserActiveLog; import com.yeshi.fanli.entity.bus.user.UserInfo; import com.yeshi.fanli.entity.bus.user.WeiXinUser; +import com.yeshi.fanli.entity.goods.CollectionGoodsV2; import com.yeshi.fanli.entity.system.System; import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief; import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBriefExtra; import com.yeshi.fanli.exception.BindingAccountException; import com.yeshi.fanli.exception.ObjectStateException; +import com.yeshi.fanli.exception.goods.CollectionGoodsException; +import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException; import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.service.inter.config.ConfigService; import com.yeshi.fanli.service.inter.config.SystemService; -import com.yeshi.fanli.service.inter.goods.CollectionGoodsService; +import com.yeshi.fanli.service.inter.goods.CollectionGoodsV2Service; import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService; import com.yeshi.fanli.service.inter.hongbao.HongBaoMessageService; import com.yeshi.fanli.service.inter.hongbao.HongBaoService; +import com.yeshi.fanli.service.inter.hongbao.ThreeSaleExtraInfoSerivce; import com.yeshi.fanli.service.inter.hongbao.ThreeSaleSerivce; import com.yeshi.fanli.service.inter.order.LostOrderService; import com.yeshi.fanli.service.inter.order.OrderItemServcie; @@ -133,6 +137,9 @@ private ThreeSaleSerivce threeSaleSerivce; @Resource + private ThreeSaleExtraInfoSerivce threeSaleExtraInfoSerivce; + + @Resource private LostOrderService lostOrderService; @Resource @@ -144,8 +151,6 @@ @Resource private AccountMessageService accountMessageService; - @Resource - private CollectionGoodsService collectionGoodsService; @Resource private HongBaoManageService hongBaoManageService; @@ -163,6 +168,9 @@ @Resource private UserActiveLogService userActiveLogService; + + @Resource + private CollectionGoodsV2Service collectionGoodsV2Service; private static final String PASSWORD_MAX_ERROR = "password_max_error"; private static final String EXTRACT_MIN_MONEY = "extract_min_money"; @@ -764,7 +772,7 @@ ExtractRecord extractRecord = extractRecordService.getExtractRecordByUid(uid); boolean canExtract = true; String errorMsg = ""; - if (extractRecord != null && extractRecord.getCount() + 1 >= maxDayCount) { + if (extractRecord != null && extractRecord.getCount() + 1 > maxDayCount) { canExtract = false; errorMsg = String.format("姣忔棩鏈�澶氭彁鐜�%s娆�", maxDayCount + ""); } else if (extractRecord != null @@ -1413,24 +1421,32 @@ @RequestMapping("collectionGoods") public void collectionGoods(AcceptData acceptData, long uid, long auctionId, int type, PrintWriter out) { - CollectionGoods find = collectionGoodsService.findByUidAndAuctionId(uid, auctionId); + CollectionGoodsV2 find = collectionGoodsV2Service.findByUidAndAuctionId(uid, auctionId); if (type == 1) { if (find != null) { out.print(JsonUtil.loadFalseResult("")); return; } - CollectionGoods cg = TaoBaoUtil.getCollectionGoods(auctionId, new UserInfo(uid)); - collectionGoodsService.save(cg); - out.print(JsonUtil.loadTrueResult("鏀惰棌鎴愬姛")); - return; + try { + TaoBaoGoodsBrief taoBaoGoodsBrief = redisManager.getTaoBaoGoodsBrief(auctionId); + collectionGoodsV2Service.addCollection(uid, taoBaoGoodsBrief); + out.print(JsonUtil.loadTrueResult("鏀惰棌鎴愬姛")); + } catch (TaobaoGoodsDownException e) { + out.print(JsonUtil.loadFalseResult(1, "鍟嗗搧宸蹭笅鏋�")); + } catch (CollectionGoodsException e1) { + out.print(JsonUtil.loadFalseResult(e1.getCode(), e1.getMsg())); + } } else { if (find == null) { out.print(JsonUtil.loadTrueResult("鍙栨秷鏀惰棌鎴愬姛")); return; } else { - collectionGoodsService.delete(find); - out.print(JsonUtil.loadTrueResult("鍙栨秷鏀惰棌鎴愬姛")); - return; + try { + collectionGoodsV2Service.cancelCollectionByAuctionId(uid, auctionId); + out.print(JsonUtil.loadTrueResult("鍙栨秷鏀惰棌鎴愬姛")); + } catch (CollectionGoodsException e) { + out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); + } } } @@ -1453,37 +1469,49 @@ return; } - CollectionGoods find = collectionGoodsService.findByUidAndAuctionId(uid, auctionId); + CollectionGoodsV2 find = collectionGoodsV2Service.findByUidAndAuctionId(uid, auctionId); if (find == null) { // 娣诲姞鏀惰棌 - CollectionGoods cg = TaoBaoUtil.getCollectionGoods(auctionId, new UserInfo(uid)); - collectionGoodsService.save(cg); - JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(1)); + try { + TaoBaoGoodsBrief taoBaoGoodsBrief = redisManager.getTaoBaoGoodsBrief(auctionId); + collectionGoodsV2Service.addCollection(uid, taoBaoGoodsBrief); + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(1)); + } catch (TaobaoGoodsDownException e) { + JsonUtil.printMode(out, callback, (JsonUtil.loadFalseResult(1, "鍟嗗搧宸蹭笅鏋�"))); + } catch (CollectionGoodsException e1) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e1.getCode(), e1.getMsg())); + } } else { // 鍙栨秷鏀惰棌 - collectionGoodsService.delete(find); - JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(0)); + try { + collectionGoodsV2Service.cancelCollectionByAuctionId(uid, auctionId); + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("鍙栨秷鏀惰棌鎴愬姛")); + } catch (CollectionGoodsException e) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); + } } } @RequestMapping("collectionGoodsList") public void collectionGoodsList(AcceptData acceptData, long uid, int page, PrintWriter out) { - List<CollectionGoods> coList = collectionGoodsService.findCollectionGoods(uid, page + 1); - int count = collectionGoodsService.getCount(uid); - JSONObject data = new JSONObject(); - Map<String, String> map = hongBaoManageService.convertMap(); - String proportion = map.get("hongbao_goods_proportion"); - String fcRate = map.get("hongbao_fc_ratio"); - List<TaoBaoGoodsBriefExtra> list = new ArrayList<TaoBaoGoodsBriefExtra>(); - coList.parallelStream().forEachOrdered(cg -> { - TaoBaoGoodsBrief goodsBrief = TaoBaoUtil.getTaoBaoGoodsBrief(cg); - goodsBrief.setSalesCount(TaoBaoUtil.getSaleCount(goodsBrief.getBiz30day())); - TaoBaoGoodsBriefExtra taoBaoGoodsBriefExtra = TaoBaoUtil.getTaoBaoGoodsBriefExtra(goodsBrief, proportion, - fcRate, ""); - taoBaoGoodsBriefExtra.setCreatetime(new Date(cg.getCreateTime())); + List<CollectionGoodsV2> collectionGoodsList = collectionGoodsV2Service.getCollectionGoodsList(uid, page + 1, + Constant.PAGE_SIZE); + + // List<CollectionGoods> coList = + // collectionGoodsService.findCollectionGoods(uid, page + 1); + long count = collectionGoodsV2Service.getCollectionGoodsCount(uid); + JSONObject data = new JSONObject(); + BigDecimal proportion = hongBaoManageService.getFanLiRate(); + List<TaoBaoGoodsBriefExtra> list = new ArrayList<TaoBaoGoodsBriefExtra>(); + collectionGoodsList.parallelStream().forEachOrdered(cg -> { + TaoBaoGoodsBrief goodsBrief = TaoBaoUtil.convert(cg.getCommonGoods()); + goodsBrief.setSalesCount(TaoBaoUtil.getSaleCount(goodsBrief.getBiz30day())); + TaoBaoGoodsBriefExtra taoBaoGoodsBriefExtra = TaoBaoUtil.getTaoBaoGoodsBriefExtra(goodsBrief, + proportion.toString(), ""); + taoBaoGoodsBriefExtra.setCreatetime(cg.getCreateTime()); list.add(taoBaoGoodsBriefExtra); }); GsonBuilder builder = new GsonBuilder().registerTypeAdapter(Date.class, new JsonSerializer<Date>() { @@ -1511,7 +1539,11 @@ } else { if (!StringUtil.isNullOrEmpty(ids)) { Arrays.asList(ids.split(",")).parallelStream().forEach(auctionIdStr -> { - collectionGoodsService.delete(Long.parseLong(auctionIdStr), uid); + try { + collectionGoodsV2Service.cancelCollectionByAuctionId(uid, Long.parseLong(auctionIdStr)); + } catch (Exception e) { + e.printStackTrace(); + } }); } } @@ -1520,7 +1552,12 @@ @RequestMapping("clearConllectionGoods") public void clearConllectionGoods(AcceptData acceptData, long uid, PrintWriter out) { - collectionGoodsService.clear(uid); + try { + collectionGoodsV2Service.cancelCollectionByUid(uid); + } catch (CollectionGoodsException e) { + e.printStackTrace(); + out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMessage())); + } out.print(JsonUtil.loadTrueResult("鍒犻櫎鎴愬姛")); } @@ -1584,4 +1621,201 @@ .loadTrueResult(String.format("%s?id=" + id, Constant.systemCommonConfig.getAppShareInfoUrl()))); } + /** + * 鐢ㄦ埛闃熷憳鍒楄〃鏌ヨ 1.4.1 + * + * @param acceptData + * @param id + * @param out + */ + @RequestMapping(value = "getMyTeam", method = RequestMethod.POST) + public void getMyTeam(AcceptData acceptData, long page, long uid, long type, PrintWriter out) { + + int pageSize = Constant.PAGE_SIZE; + + JSONObject resultData = new JSONObject(); + if (type == 1) { + resultData = threeSaleSerivce.getMyFirstTeam((page - 1) * pageSize, pageSize, uid); + } else if (type == 2) { + resultData = threeSaleSerivce.getMySecondTeam((page - 1) * pageSize, pageSize, uid); + } + + // 瀹夊崜绯荤粺杩斿洖鎵�鏈夋暟鎹� + String platform = acceptData.getPlatform(); + if ("android".equalsIgnoreCase(platform)) { + long firstTeam = threeSaleSerivce.countFirstTeam(uid, 1); + long firstTeamTotal = threeSaleSerivce.countFirstTeam(uid, null); + + long secondTeam = threeSaleSerivce.countSecondTeam(uid, 1); + long secondTeamTotal = threeSaleSerivce.countSecondTeam(uid, null); + + JSONObject bossData = null; + ThreeSale threeSale = threeSaleSerivce.getMyBoss(uid); + if (threeSale != null) { + bossData = new JSONObject(); + UserInfo boss = threeSale.getBoss(); + if (boss != null) { + bossData.put("nickName", boss.getNickName()); + bossData.put("portrait", boss.getPortrait()); + } + + SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd"); + Long createTime = threeSale.getCreateTime(); + Date inviteTime = new Date(createTime); + bossData.put("inviteTime", "閭�璇锋椂闂�: " + sdf.format(inviteTime)); + } + + String helpLink = configService.get("team_help_url"); + if (helpLink == null) { + helpLink = ""; + } + resultData.put("helpLink", helpLink); + resultData.put("firstTeam", firstTeam); + resultData.put("firstTeamTotal", firstTeamTotal); + resultData.put("secondTeam", secondTeam); + resultData.put("secondTeamTotal", secondTeamTotal); + resultData.put("boss", bossData); + } + out.print(JsonUtil.loadTrueResult(resultData)); + } + + /** + * 鐢ㄦ埛闃熷憳缁熻 1.4.1 + * + * @param acceptData + * @param id + * @param out + */ + @RequestMapping(value = "countMyTeam", method = RequestMethod.POST) + public void countMyTeam(AcceptData acceptData, long uid, PrintWriter out) { + + long firstTeam = threeSaleSerivce.countFirstTeam(uid, 1); + long firstTeamTotal = threeSaleSerivce.countFirstTeam(uid, null); + + long secondTeam = threeSaleSerivce.countSecondTeam(uid, 1); + long secondTeamTotal = threeSaleSerivce.countSecondTeam(uid, null); + JSONObject bossData = new JSONObject(); + ThreeSale threeSale = threeSaleSerivce.getMyBoss(uid); + if (threeSale != null) { + UserInfo boss = threeSale.getBoss(); + if (boss != null) { + bossData.put("nickName", boss.getNickName()); + bossData.put("portrait", boss.getPortrait()); + } + + SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd"); + Long createTime = threeSale.getCreateTime(); + Date inviteTime = new Date(createTime); + bossData.put("inviteTime", "閭�璇锋椂闂�: " + sdf.format(inviteTime)); + } + + JSONObject resultData = new JSONObject(); + + String helpLink = configService.get("team_help_url"); + if (helpLink == null) { + helpLink = ""; + } + resultData.put("helpLink", helpLink); + resultData.put("firstTeam", firstTeam); + resultData.put("firstTeamTotal", firstTeamTotal); + resultData.put("secondTeam", secondTeam); + resultData.put("secondTeamTotal", secondTeamTotal); + resultData.put("boss", bossData); + + out.print(JsonUtil.loadTrueResult(resultData)); + } + + /** + * 鐢ㄦ埛闃熷憳淇℃伅淇濆瓨 1.4.1 + * + * @param acceptData + * @param uid + * @param inviteId + * 閭�璇穒d + * @param nickname + * @param out + */ + @RequestMapping(value = "setextrainfo", method = RequestMethod.POST) + public void setExtraInfo(AcceptData acceptData, long uid, long inviteId, String memoName, PrintWriter out) { + + try { + List<ThreeSale> listThreeSale = threeSaleSerivce.listbyIdAndBossId(inviteId, uid, null); + if (listThreeSale == null || listThreeSale.size() == 0) { + out.print(JsonUtil.loadFalseResult("璇ヨ褰曚笉瀛樺湪")); + return; + } + + UserInfo worker = listThreeSale.get(0).getWorker(); + if (worker == null) { + out.print(JsonUtil.loadFalseResult("璇ヨ褰曚笉瀛樺湪")); + return; + } + + List<ThreeSaleExtraInfo> list = threeSaleExtraInfoSerivce.listbyBossIdAndWorkerId(uid, worker.getId()); + if (list == null || list.size() == 0) { + + ThreeSaleExtraInfo extraInfo = new ThreeSaleExtraInfo(); + extraInfo.setWorker(worker); + extraInfo.setNickname(memoName); + extraInfo.setCreateTime(new Date()); + extraInfo.setUpdateTime(new Date()); + + UserInfo boss = new UserInfo(uid); + extraInfo.setBoss(boss); + + threeSaleExtraInfoSerivce.insert(extraInfo); + + } else { + ThreeSaleExtraInfo extraInfo = list.get(0); + extraInfo.setNickname(memoName); + extraInfo.setUpdateTime(new Date()); + threeSaleExtraInfoSerivce.updateByPrimaryKey(extraInfo); + } + + out.print(JsonUtil.loadTrueResult("淇濆瓨鎴愬姛")); + + } catch (Exception e) { + out.print(JsonUtil.loadFalseResult("淇濆瓨澶辫触")); + e.printStackTrace(); + } + + } + + /** + * 鍒犻櫎闃熷憳鍏崇郴 + * + * @param acceptData + * @param uid + * @param inviteId + * 閭�璇穒d + * @param out + */ + @RequestMapping(value = "removethreesale", method = RequestMethod.POST) + public void removethreesale(AcceptData acceptData, long uid, long inviteId, PrintWriter out) { + try { + List<ThreeSale> listThreeSale = threeSaleSerivce.listbyIdAndBossId(inviteId, uid, 1); + if (listThreeSale == null || listThreeSale.size() == 0) { + out.print(JsonUtil.loadFalseResult("鎿嶄綔鏁版嵁鏃犳晥")); + return; + } + + UserInfo worker = listThreeSale.get(0).getWorker(); + if (worker == null) { + out.print(JsonUtil.loadFalseResult("鎿嶄綔鏁版嵁鏃犳晥")); + return; + } + + // 鍒犻櫎鍏崇郴 + threeSaleSerivce.deleteByPrimaryKey(inviteId); + // 鍒犻櫎澶囨敞 + threeSaleExtraInfoSerivce.deleteByBossIdAndWorkerId(uid, worker.getId()); + + out.print(JsonUtil.loadTrueResult("鍒犻櫎鎴愬姛")); + } catch (Exception e) { + out.print(JsonUtil.loadFalseResult("鍒犻櫎澶辫触")); + e.printStackTrace(); + } + + } + } -- Gitblit v1.8.0