From ec8a1c6f81b5747e9efce86faaba33d10df7f61d Mon Sep 17 00:00:00 2001 From: admin <2780501319@qq.com> Date: 星期日, 01 三月 2020 16:37:26 +0800 Subject: [PATCH] 动态提示语调整 --- fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ShareControllerV2.java | 223 +++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 143 insertions(+), 80 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ShareControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ShareControllerV2.java index 7e5d8cb..b601fa6 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ShareControllerV2.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ShareControllerV2.java @@ -163,8 +163,8 @@ BigDecimal fanliMoney) { List<ShareGoodsCommentChoiceInfo> list = new ArrayList<>(); if (!StringUtil.isNullOrEmpty(token)) - list.add(new ShareGoodsCommentChoiceInfo(ShareGoodsCommentChoiceInfo.TYPE_TOKEN, "娣樺彛浠�", - String.format("寰╄=杩欐潯%s\n杩涘叆銆怲ao瀹濄�戝嵆鍙姠璐�", token), true, false)); + list.add( + new ShareGoodsCommentChoiceInfo(ShareGoodsCommentChoiceInfo.TYPE_TOKEN, "娣樺彛浠�", token, true, false)); if (!StringUtil.isNullOrEmpty(link)) { list.add(new ShareGoodsCommentChoiceInfo(ShareGoodsCommentChoiceInfo.TYPE_LINK, "閾炬帴", link, true, false)); } @@ -245,18 +245,22 @@ } public static String getERCodeContent(String template, TaoBaoGoodsBrief goods, String token) { - //return template.replace("[娣樺彛浠", token); + return template.replace("[娣樺彛浠", token); + } + + + public static String getERCodeContentNew(String template, TaoBaoGoodsBrief goods, String token) { String commentText = template.replace("[鍘熶环]", goods.getZkPrice().toString()); commentText = commentText.replace("[鍙d护]", token); if (StringUtil.isNullOrEmpty(goods.getCouponInfo())) { - commentText= commentText.replace("棰嗗埜鎶㈣喘", "鎶㈣喘"); - commentText= commentText.replace("銆愬埜鍚庝环銆慬鍒稿悗浠穄鍏�", ""); + commentText = commentText.replace("棰嗗埜鎶㈣喘", "鎶㈣喘"); + commentText = commentText.replace("銆愬埜鍚庝环銆慬鍒稿悗浠穄鍏�", ""); } else { - commentText= commentText.replace("[鍒稿悗浠穄", TaoBaoUtil.getAfterUseCouplePrice(goods) + ""); + commentText = commentText.replace("[鍒稿悗浠穄", TaoBaoUtil.getAfterUseCouplePrice(goods) + ""); } return commentText; } - + /** * 鍒涘缓娣樺疂鍒嗕韩淇℃伅 * @@ -425,6 +429,11 @@ JSONArray array = JSONArray.fromObject(imgs); shareInfo.setNotifyPicture(array.optString(0)); + // 2.0.7鐗堟湰鍚庣殑鎻愮ず鍥剧墖 + imgs = configService.get(ConfigKeyEnum.goodsShareNotifyImgs207.getKey()); + array = JSONArray.fromObject(imgs); + shareInfo.setNotifyPictureNew(array.optString(0)); + shareInfo.setNotifyDesc(configService.get(ConfigKeyEnum.goodsShareNotify.getKey())); // 娣诲姞鍒嗕韩璁板綍 @@ -560,21 +569,38 @@ descText = descText.substring(0); } shareInfo.setDescText(descText); + + // 娴嬭瘯 // 2.0.2涔嬪墠 - if (!VersionUtil.greaterThan_2_0_2(platform, version)) + if (VersionUtil.greaterThan_2_0_7(platform, version)) { + shareInfo.setClickUrl(getERCodeContentNew(configService.get(ConfigKeyEnum.quickShareTBCommentText.getKey()), + taoBaoLink.getGoods(), shareInfo.getToken())); + } else if (!VersionUtil.greaterThan_2_0_2(platform, version)) { shareInfo.setClickUrl(getERCodeContent(configService.get(ConfigKeyEnum.taobaoShareQrcodeText.getKey()), taoBaoLink.getGoods(), shareInfo.getToken())); + } - shareInfo.setWxErCode(getERCodeContent(configService.get(ConfigKeyEnum.taobaoShareQrcodeText.getKey()), + if (VersionUtil.greaterThan_2_0_7(platform, version)) { + shareInfo.setWxErCode(getERCodeContentNew(configService.get(ConfigKeyEnum.quickShareTBCommentText.getKey()), taoBaoLink.getGoods(), shareInfo.getToken())); - + } else { + shareInfo.setWxErCode(getERCodeContent(configService.get(ConfigKeyEnum.taobaoShareQrcodeText.getKey()), + taoBaoLink.getGoods(), shareInfo.getToken())); + } + + // 鎻愮ず鍥炬枃鍐呭 String imgs = configService.getByVersion(ConfigKeyEnum.goodsShareNotifyImgs.getKey(), platform, Integer.parseInt(version)); JSONArray array = JSONArray.fromObject(imgs); shareInfo.setNotifyPicture(array.optString(0)); + + // 2.0.7鐗堟湰鍚庣殑鎻愮ず鍥剧墖 + imgs = configService.get(ConfigKeyEnum.goodsShareNotifyImgs207.getKey()); + array = JSONArray.fromObject(imgs); + shareInfo.setNotifyPictureNew(array.optString(0)); shareInfo.setNotifyDesc(configService.get(ConfigKeyEnum.goodsShareNotify.getKey())); @@ -596,41 +622,49 @@ } } - // 璁剧疆璇勮鏂囨湰閫夐」 - shareInfo.setCommentTextChoiceList(getCommentChoiceList(shareInfo.getToken(), null, inviteCode, - TaoBaoUtil.getGoodsHongBaoMoney(taoBaoLink.getGoods(), hongBaoManageService.getFanLiRate()))); - String commentText = ""; String recommendText = ""; - if (VersionUtil.greaterThan_2_0_7(platform, version)){ + if (VersionUtil.greaterThan_2_0_7(platform, version)) { TaoBaoGoodsBrief goods = taoBaoLink.getGoods(); String template = configService.get(ConfigKeyEnum.quickShareGoodsText.getKey()); - recommendText = template.replace("[鍟嗗搧鏍囬]", goods.getTitle()). - replace("[閿�閲廬", TaoBaoUtil.getSaleCount(taoBaoLink.getGoods().getBiz30day())); + recommendText = template.replace("[鍟嗗搧鏍囬]", goods.getTitle()); if (StringUtil.isNullOrEmpty(goods.getDescription())) { - recommendText = recommendText.replace("鎺ㄨ崘璇�:[鎺ㄨ崘璇璢", ""); + recommendText = recommendText.replace("鎺ㄨ崘鐞嗙敱:[鎺ㄨ崘璇璢", ""); } else { recommendText = recommendText.replace("[鎺ㄨ崘璇璢", goods.getDescription()); } + String sales = TaoBaoUtil.getSaleCount(taoBaoLink.getGoods().getBiz30day()); + if (sales.equals("0")) { + recommendText = recommendText.replace("閿�閲�:[閿�閲廬", ""); + } else { + recommendText = recommendText.replace("[閿�閲廬", sales.replace("涓�", "w")); + } + String quickCommentText = configService.get(ConfigKeyEnum.quickShareTBCommentText.getKey()); commentText = quickCommentText.replace("[鍘熶环]", goods.getZkPrice().toString()); - commentText = quickCommentText.replace("[鍙d护]", TaoBaoUtil.filterTaoToken(taoBaoLink.getTaoToken())); + commentText = commentText.replace("[鍙d护]", TaoBaoUtil.filterTaoToken(taoBaoLink.getTaoToken())); if (StringUtil.isNullOrEmpty(taoBaoLink.getGoods().getCouponInfo())) { - commentText= commentText.replace("棰嗗埜鎶㈣喘", "鎶㈣喘"); - commentText= commentText.replace("銆愬埜鍚庝环銆慬鍒稿悗浠穄鍏�", ""); - recommendText = recommendText.replace("浼樻儬鍒�:[鍒搁潰棰漖", ""); + commentText = commentText.replace("棰嗗埜鎶㈣喘", "鎶㈣喘"); + commentText = commentText.replace("銆愬埜鍚庝环銆慬鍒稿悗浠穄鍏�", ""); + recommendText = recommendText.replace("浼樻儬鍒�:[鍒搁潰棰漖鍏�", ""); } else { - commentText= commentText.replace("[鍒稿悗浠穄", TaoBaoUtil.getAfterUseCouplePrice(taoBaoLink.getGoods()) + ""); - recommendText = recommendText.replace("[鍒搁潰棰漖", MoneyBigDecimalUtil.getWithNoZera(taoBaoLink.getGoods().getCouponAmount()).toString()); + commentText = commentText.replace("[鍒稿悗浠穄", + TaoBaoUtil.getAfterUseCouplePrice(taoBaoLink.getGoods()) + ""); + recommendText = recommendText.replace("[鍒搁潰棰漖", + MoneyBigDecimalUtil.getWithNoZera(taoBaoLink.getGoods().getCouponAmount()).toString()); } } else { recommendText = shareInfo.getDescText(); commentText = shareInfo.getShareText(); } - shareInfo.setCommentText(commentText); - shareInfo.setRecommendText(recommendText); - + shareInfo.setCommentText(deleteBlankLine(commentText)); + shareInfo.setRecommendText(deleteBlankLine(recommendText)); + + // 璁剧疆璇勮鏂囨湰閫夐」 + shareInfo.setCommentTextChoiceList(getCommentChoiceList(shareInfo.getCommentText(), null, inviteCode, + TaoBaoUtil.getGoodsHongBaoMoney(taoBaoLink.getGoods(), hongBaoManageService.getFanLiRate()))); + out.print(JsonUtil.loadTrueResult( JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder()).create().toJson(shareInfo))); @@ -746,6 +780,11 @@ shareInfo.setNotifyPicture(array.size() > 1 ? array.optString(1) : array.optString(0)); + // 2.0.7鐗堟湰鍚庣殑鎻愮ず鍥剧墖 + imgs = configService.get(ConfigKeyEnum.goodsShareNotifyImgs207.getKey()); + array = JSONArray.fromObject(imgs); + shareInfo.setNotifyPictureNew(array.size() > 1 ? array.optString(1) : array.optString(0)); + shareInfo.setNotifyDesc(configService.get(ConfigKeyEnum.goodsShareNotifyJD.getKey())); // 娣诲姞鍒嗕韩璁板綍 @@ -766,36 +805,44 @@ String inviteCode = userInfoExtraService.getInviteCodeByUid(uid); - // 璁剧疆璇勮鏂囨湰閫夐」 - shareInfo.setCommentTextChoiceList(getCommentChoiceList(null, shareInfo.getClickUrl(), inviteCode, - JDUtil.getGoodsFanLiMoney(jdGoods, hongBaoManageService.getFanLiRate()))); - String commentText = ""; String recommendText = ""; - if (VersionUtil.greaterThan_2_0_7(acceptData.getPlatform(), acceptData.getVersion())){ + if (VersionUtil.greaterThan_2_0_7(acceptData.getPlatform(), acceptData.getVersion())) { String template = configService.get(ConfigKeyEnum.quickShareGoodsText.getKey()); - recommendText = template.replace("[鍟嗗搧鏍囬]", jdGoods.getSkuName()). - replace("[閿�閲廬", JDUtil.getSaleCount(jdGoods.getInOrderCount30Days())); + recommendText = template.replace("[鍟嗗搧鏍囬]", jdGoods.getSkuName()); // 鏃犳帹鑽愯 - recommendText = recommendText.replace("鎺ㄨ崘璇�:[鎺ㄨ崘璇璢", ""); + recommendText = recommendText.replace("鎺ㄨ崘鐞嗙敱:[鎺ㄨ崘璇璢", ""); + + String sales = JDUtil.getSaleCount(jdGoods.getInOrderCount30Days()); + if (sales.equals("0")) { + recommendText = recommendText.replace("閿�閲�:[閿�閲廬", ""); + } else { + recommendText = recommendText.replace("[閿�閲廬", sales.replace("涓�", "w")); + } String quickCommentText = configService.get(ConfigKeyEnum.quickShareJDCommentText.getKey()); commentText = quickCommentText.replace("[鍘熶环]", jdGoods.getPrice().toString()); - commentText = quickCommentText.replace("[閾炬帴]", jumpLink); + commentText = commentText.replace("[閾炬帴]", jumpLink); if (couponInfo == null) { - commentText= commentText.replace("棰嗗埜鎶㈣喘", "鎶㈣喘"); - commentText= commentText.replace("銆愬埜鍚庝环銆慬鍒稿悗浠穄鍏�", ""); - recommendText = recommendText.replace("浼樻儬鍒�:[鍒搁潰棰漖", ""); + commentText = commentText.replace("棰嗗埜鎶㈣喘", "鎶㈣喘"); + commentText = commentText.replace("銆愬埜鍚庝环銆慬鍒稿悗浠穄鍏�", ""); + recommendText = recommendText.replace("浼樻儬鍒�:[鍒搁潰棰漖鍏�", ""); } else { - commentText= commentText.replace("[鍒稿悗浠穄", BigDecimalUtil.getWithNoZera(JDUtil.getQuanPrice(jdGoods)).toString()); - recommendText = recommendText.replace("[鍒搁潰棰漖",BigDecimalUtil.getWithNoZera(JDUtil.getShowCouponInfo(jdGoods).getDiscount()).toString()); + commentText = commentText.replace("[鍒稿悗浠穄", + BigDecimalUtil.getWithNoZera(JDUtil.getQuanPrice(jdGoods)).toString()); + recommendText = recommendText.replace("[鍒搁潰棰漖", + BigDecimalUtil.getWithNoZera(JDUtil.getShowCouponInfo(jdGoods).getDiscount()).toString()); } } else { commentText = shareInfo.getShareText(); recommendText = shareInfo.getDescText(); } - shareInfo.setCommentText(commentText); - shareInfo.setRecommendText(recommendText); + shareInfo.setCommentText(deleteBlankLine(commentText)); + shareInfo.setRecommendText(deleteBlankLine(recommendText)); + + // 璁剧疆璇勮鏂囨湰閫夐」 + shareInfo.setCommentTextChoiceList(getCommentChoiceList(null, shareInfo.getCommentText(), inviteCode, + JDUtil.getGoodsFanLiMoney(jdGoods, hongBaoManageService.getFanLiRate()))); out.print(JsonUtil.loadTrueResult( JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder()).create().toJson(shareInfo))); @@ -827,6 +874,12 @@ } }); } + + + private String deleteBlankLine(String st){ + return st.replace("\r\n\r\n", "\r\n").replace("\r\n\r\n", "\r\n").replace("\r\n\r\n", "\r\n"); + } + /** * 鎷煎澶氬垎浜� @@ -906,6 +959,11 @@ shareInfo.setNotifyPicture(array.size() > 1 ? array.optString(1) : array.optString(0)); + // 2.0.7鐗堟湰鍚庣殑鎻愮ず鍥剧墖 + imgs = configService.get(ConfigKeyEnum.goodsShareNotifyImgs207.getKey()); + array = JSONArray.fromObject(imgs); + shareInfo.setNotifyPictureNew(array.size() > 1 ? array.optString(1) : array.optString(0)); + shareInfo.setNotifyDesc(configService.get(ConfigKeyEnum.goodsShareNotifyPDD.getKey())); // 娣诲姞鍒嗕韩璁板綍 @@ -927,45 +985,52 @@ String inviteCode = userInfoExtraService.getInviteCodeByUid(uid); - // 璁剧疆璇勮鏂囨湰閫夐」 - shareInfo.setCommentTextChoiceList(getCommentChoiceList(null, shareInfo.getClickUrl(), inviteCode, - PinDuoDuoUtil.getGoodsFanLiMoney(goods, hongBaoManageService.getFanLiRate()))); - String commentText = ""; String recommendText = ""; - if (VersionUtil.greaterThan_2_0_7(acceptData.getPlatform(), acceptData.getVersion())){ + if (VersionUtil.greaterThan_2_0_7(acceptData.getPlatform(), acceptData.getVersion())) { String qtemplate = configService.get(ConfigKeyEnum.quickShareGoodsText.getKey()); recommendText = qtemplate.replace("[鍟嗗搧鏍囬]", goods.getGoodsName()); - + // 鎬婚攢閲� String salesTip = goods.getSalesTip(); if (StringUtil.isNullOrEmpty(salesTip)) { salesTip = "0"; } - recommendText = recommendText.replace("[閿�閲廬", salesTip); - recommendText = recommendText.replace("鎺ㄨ崘璇�:[鎺ㄨ崘璇璢", ""); - - String quickCommentText = configService.get(ConfigKeyEnum.quickSharePDDCommentText.getKey()); - commentText = quickCommentText.replace("[鍘熶环]", MoneyBigDecimalUtil.div(new BigDecimal(goods.getMinGroupPrice()), new BigDecimal(100)).setScale(2).toString()); - commentText = quickCommentText.replace("[閾炬帴]", jumpLink); - if (!hasCoupon) { - commentText= commentText.replace("棰嗗埜鎶㈣喘", "鎶㈣喘"); - commentText= commentText.replace("銆愬埜鍚庝环銆慬鍒稿悗浠穄鍏�", ""); - recommendText = template.replace("浼樻儬鍒�:[鍒搁潰棰漖", ""); + if (salesTip.equals("0")) { + recommendText = recommendText.replace("閿�閲�:[閿�閲廬", ""); } else { - commentText= commentText.replace("[鍒稿悗浠穄", BigDecimalUtil.getWithNoZera(PinDuoDuoUtil.getQuanPrice(goods)).toString()); + recommendText = recommendText.replace("[閿�閲廬", salesTip.replace("涓�", "w")); + recommendText = recommendText.replace("閿�閲�", "鎬婚攢閲�"); + } + recommendText = recommendText.replace("鎺ㄨ崘鐞嗙敱:[鎺ㄨ崘璇璢", ""); + + String quickCommentText = configService.get(ConfigKeyEnum.quickSharePDDCommentText.getKey()); + commentText = quickCommentText.replace("[鍘熶环]", MoneyBigDecimalUtil + .div(new BigDecimal(goods.getMinGroupPrice()), new BigDecimal(100)).setScale(2).toString()); + commentText = commentText.replace("[閾炬帴]", jumpLink); + if (!hasCoupon) { + commentText = commentText.replace("棰嗗埜鎶㈣喘", "鎶㈣喘"); + commentText = commentText.replace("銆愬埜鍚庝环銆慬鍒稿悗浠穄鍏�", ""); + recommendText = recommendText.replace("浼樻儬鍒�:[鍒搁潰棰漖鍏�", ""); + } else { + commentText = commentText.replace("[鍒稿悗浠穄", + BigDecimalUtil.getWithNoZera(PinDuoDuoUtil.getQuanPrice(goods)).toString()); BigDecimal hundred = new BigDecimal(100); BigDecimal amount = MoneyBigDecimalUtil.div(new BigDecimal(goods.getCouponDiscount()), hundred); - recommendText = template.replace("[鍒搁潰棰漖", BigDecimalUtil.getWithNoZera(amount).toString()); + recommendText = recommendText.replace("[鍒搁潰棰漖", BigDecimalUtil.getWithNoZera(amount).toString()); } } else { commentText = shareInfo.getShareText(); recommendText = shareInfo.getDescText(); } - shareInfo.setRecommendText(recommendText); - shareInfo.setCommentText(commentText); - + shareInfo.setRecommendText(deleteBlankLine(recommendText)); + shareInfo.setCommentText(deleteBlankLine(commentText)); + + // 璁剧疆璇勮鏂囨湰閫夐」 + shareInfo.setCommentTextChoiceList(getCommentChoiceList(null,shareInfo.getCommentText(), inviteCode, + PinDuoDuoUtil.getGoodsFanLiMoney(goods, hongBaoManageService.getFanLiRate()))); + out.print(JsonUtil.loadTrueResult( JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder()).create().toJson(shareInfo))); @@ -1615,29 +1680,26 @@ out.print(JsonUtil.loadTrueResult(data)); } - - @RequestMapping(value = "getShareTextQuick", method = RequestMethod.POST) - public void getShareTextQuick(AcceptData acceptData, Long goodsId, Integer goodsType, - Long uid, PrintWriter out) { + public void getShareTextQuick(AcceptData acceptData, Long goodsId, Integer goodsType, Long uid, PrintWriter out) { if (uid == null) { out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛鏈櫥褰�")); return; } - + if (goodsType == null || goodsId == null) { out.print(JsonUtil.loadFalseResult(1, "璇蜂紶閫掓纭殑鍟嗗搧淇℃伅")); return; } - + GoodsDetailVO goodsDetail = null; ConfigParamsDTO paramsDTO = hongBaoManageService.getShowComputeRate(acceptData.getPlatform(), acceptData.getVersion()); paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate()); - + if (goodsType == Constant.SOURCE_TYPE_TAOBAO) { TaoBaoGoodsBrief goods = taoBaoGoodsCacheUtil.getCommonTaoBaoGoodsInfo(goodsId); - if (goods == null){ + if (goods == null) { try { goods = redisManager.getTaoBaoGoodsBrief(goodsId); } catch (TaobaoGoodsDownException e) { @@ -1657,13 +1719,13 @@ if (goods != null) { goodsDetail = GoodsDetailVOFactory.convertPDDGoods(goods, paramsDTO); } - } - + } + if (goodsDetail == null) { out.print(JsonUtil.loadFalseResult(1, "璇ュ晢鍝佸凡涓嬫灦")); return; } - + String template = configService.get(ConfigKeyEnum.quickShareGoodsText.getKey()); template = template.replace("[鍟嗗搧鏍囬]", goodsDetail.getTitle()).replace("[閿�閲廬", goodsDetail.getSalesCount()); if (StringUtil.isNullOrEmpty(goodsDetail.getDescription())) { @@ -1671,15 +1733,16 @@ } else { template = template.replace("鎺ㄨ崘璇�:[鎺ㄨ崘璇璢", ""); } - + if (goodsDetail.isHasCoupon()) { - template = template.replace("[鍒搁潰棰漖", String.format("婊�%s鍏冨噺%s鍏�", - MoneyBigDecimalUtil.getWithNoZera(goodsDetail.getCouponInfo().getStartFee()).toString(), - MoneyBigDecimalUtil.getWithNoZera(goodsDetail.getCouponInfo().getAmount()).toString())); + template = template.replace("[鍒搁潰棰漖", + String.format("婊�%s鍏冨噺%s鍏�", + MoneyBigDecimalUtil.getWithNoZera(goodsDetail.getCouponInfo().getStartFee()).toString(), + MoneyBigDecimalUtil.getWithNoZera(goodsDetail.getCouponInfo().getAmount()).toString())); } else { template = template.replace("浼樻儬鍒�:[鍒搁潰棰漖", ""); } - + JSONObject data = new JSONObject(); data.put("description", template); out.print(JsonUtil.loadTrueResult(data)); -- Gitblit v1.8.0