From eec7e789a87863c25d92c10ad5dfc22ad80c448d Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 14 七月 2020 12:36:48 +0800
Subject: [PATCH] 系统区分BUG修复

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/goods/ShareGoodsTextTemplateServiceImpl.java |  244 +++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 216 insertions(+), 28 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/ShareGoodsTextTemplateServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/ShareGoodsTextTemplateServiceImpl.java
index 72e5b84..7f3ad59 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/ShareGoodsTextTemplateServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/ShareGoodsTextTemplateServiceImpl.java
@@ -5,6 +5,8 @@
 
 import javax.annotation.Resource;
 
+import com.yeshi.fanli.entity.SystemEnum;
+import com.yeshi.fanli.service.inter.user.UserInfoService;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.yeshi.utils.BigDecimalUtil;
@@ -47,6 +49,9 @@
 
 	@Resource
 	private ConfigTaoLiJinService configTaoLiJinService;
+
+	@Resource
+	private UserInfoService userInfoService;
 
 	@Override
 	public void saveCommonTemplate(Long uid, String template) throws ShareGoodsTextTemplateException {
@@ -234,8 +239,9 @@
 				template = ""; // 鑰佹澘鍒嗕韩
 			}
 		}
+		SystemEnum system=userInfoService.getUserSystem(uid);
 		if (StringUtil.isNullOrEmpty(template)) {
-			template = configService.get(ConfigKeyEnum.shareCommentTextTB.getKey());
+			template = configService.getValue(ConfigKeyEnum.shareCommentTextTB.getKey(),system);
 		}
 
 		return template;
@@ -252,7 +258,8 @@
 			}
 		}
 		if (StringUtil.isNullOrEmpty(template)) {
-			template = configService.get(ConfigKeyEnum.shareCommentTextJD.getKey());
+			SystemEnum system=userInfoService.getUserSystem(uid);
+			template = configService.getValue(ConfigKeyEnum.shareCommentTextJD.getKey(),system);
 		}
 		return template;
 	}
@@ -268,7 +275,8 @@
 			}
 		}
 		if (StringUtil.isNullOrEmpty(template)) {
-			template = configService.get(ConfigKeyEnum.shareCommentTextPDD.getKey());
+			SystemEnum system=userInfoService.getUserSystem(uid);
+			template = configService.getValue(ConfigKeyEnum.shareCommentTextPDD.getKey(),system);
 		}
 
 		return template;
@@ -278,30 +286,36 @@
 	public String getTextTemplateByVIP(Long uid) {
 		String template = "";
 		ShareGoodsTextTemplate objct = shareGoodsTextTemplateMapper.selectByUid(uid);
-		if (objct != null && !StringUtil.isNullOrEmpty(objct.getSharePDDTextTemplate())) {
-			template = objct.getSharePDDTextTemplate();
-			if (template.contains("{鍟嗗搧鍘熶环}") || template.contains("{鎬婚攢閲弣") || template.contains("{鐭摼鎺")) {
-				template = ""; // 鑰佹澘鍒嗕韩
-			}
+		if (objct != null && !StringUtil.isNullOrEmpty(objct.getShareVIPTextTemplate())) {
+			template = objct.getShareVIPTextTemplate();
 		}
 		if (StringUtil.isNullOrEmpty(template)) {
-			template = configService.get(ConfigKeyEnum.shareCommentTextPDD.getKey());
+			SystemEnum system=userInfoService.getUserSystem(uid);
+			template = configService.getValue(ConfigKeyEnum.shareCommentTextVIP.getKey(),system);
 		}
 
 		return template;
 	}
 	
 	@Override
-	public String createContentSuning(String template, SuningGoodsInfo goods, String jumpLink) {
-		String commentText = template.replace("{鍘熶环}", goods.getCommodityInfo().getCommodityPrice());
-		commentText = commentText.replace("{閾炬帴}", jumpLink);
+	public String getTextTemplateBySuNing(Long uid) {
+		String template = "";
+		ShareGoodsTextTemplate objct = shareGoodsTextTemplateMapper.selectByUid(uid);
+		if (objct != null && !StringUtil.isNullOrEmpty(objct.getShareSuNingTextTemplate())) {
+			template = objct.getShareSuNingTextTemplate();
+		}
+		if (StringUtil.isNullOrEmpty(template)) {
+			SystemEnum system=userInfoService.getUserSystem(uid);
+			template = configService.getValue(ConfigKeyEnum.shareCommentTextSuNing.getKey(),system);
+		}
 
-		commentText = commentText.replace("棰嗗埜鎶㈣喘", "鎶㈣喘");
-		commentText = commentText.replace("銆愬埜鍚庝环銆憑鍒稿悗浠穧鍏�", "");
-
-		return deleteBlankLine(commentText);
+		return template;
 	}
-
+	
+	
+	
+	
+	
 	@Override
 	public void saveTemplateTB(Long uid, String template) throws ShareGoodsTextTemplateException {
 		verifyRightTB(template);
@@ -359,6 +373,47 @@
 		}
 	}
 
+	
+	@Override
+	public void saveTemplateVIP(Long uid, String template) throws ShareGoodsTextTemplateException {
+		verifyRightVIP(template);
+		ShareGoodsTextTemplate old = shareGoodsTextTemplateMapper.selectByUid(uid);
+		if (old != null) {
+			ShareGoodsTextTemplate update = new ShareGoodsTextTemplate();
+			update.setId(old.getId());
+			update.setShareVIPTextTemplate(template);
+			update.setUpdateTime(new Date());
+			shareGoodsTextTemplateMapper.updateByPrimaryKeySelective(update);
+		} else {
+			ShareGoodsTextTemplate textTemplate = new ShareGoodsTextTemplate();
+			textTemplate.setCreateTime(new Date());
+			textTemplate.setShareVIPTextTemplate(template);
+			textTemplate.setUid(uid);
+			shareGoodsTextTemplateMapper.insertSelective(textTemplate);
+		}
+	}
+
+	
+	@Override
+	public void saveTemplateSuNing(Long uid, String template) throws ShareGoodsTextTemplateException {
+		verifyRightSuNing(template);
+		ShareGoodsTextTemplate old = shareGoodsTextTemplateMapper.selectByUid(uid);
+		if (old != null) {
+			ShareGoodsTextTemplate update = new ShareGoodsTextTemplate();
+			update.setId(old.getId());
+			update.setShareSuNingTextTemplate(template);
+			update.setUpdateTime(new Date());
+			shareGoodsTextTemplateMapper.updateByPrimaryKeySelective(update);
+		} else {
+			ShareGoodsTextTemplate textTemplate = new ShareGoodsTextTemplate();
+			textTemplate.setCreateTime(new Date());
+			textTemplate.setShareSuNingTextTemplate(template);
+			textTemplate.setUid(uid);
+			shareGoodsTextTemplateMapper.insertSelective(textTemplate);
+		}
+	}
+
+	
 	@Override
 	public void verifyRightTB(String template) throws ShareGoodsTextTemplateException {
 		String[] keys = new String[] { "{鍘熶环}", "{鍒稿悗浠穧", "{娣樺彛浠" };
@@ -392,6 +447,29 @@
 			throw new ShareGoodsTextTemplateException(1, "妯℃澘鏍煎紡鏈夎");
 	}
 
+	
+	@Override
+	public void verifyRightVIP(String template) throws ShareGoodsTextTemplateException {
+		String[] keys = new String[] { "{鍦ㄥ敭浠穧", "{鎶樻墸浠穧", "{閾炬帴}" };
+		int keysCount = 0;
+		for (String key : keys)
+			if (template != null && template.contains(key))
+				keysCount++;
+		if (keysCount == 0)
+			throw new ShareGoodsTextTemplateException(1, "妯℃澘鏍煎紡鏈夎");
+	}
+	
+	@Override
+	public void verifyRightSuNing(String template) throws ShareGoodsTextTemplateException {
+		String[] keys = new String[] { "{鍘熶环}", "{鍒稿悗浠穧", "{閾炬帴}" };
+		int keysCount = 0;
+		for (String key : keys)
+			if (template != null && template.contains(key))
+				keysCount++;
+		if (keysCount == 0)
+			throw new ShareGoodsTextTemplateException(1, "妯℃澘鏍煎紡鏈夎");
+	}
+	
 	@Override
 	public String createContentTB(String template, TaoBaoGoodsBrief goods, String token, boolean coupon) {
 		String commentText = template.replace("{鍘熶环}", goods.getZkPrice().toString());
@@ -436,15 +514,14 @@
 
 	@Override
 	public String createContentVIP(String template, VIPGoodsInfo goods, String jumpLink) {
-		String commentText = template.replace("{鍘熶环}", goods.getMarketPrice());
+		String commentText = template.replace("{鍦ㄥ敭浠穧", ""+BigDecimalUtil.getWithNoZera(new BigDecimal(goods.getMarketPrice())));
 		commentText = commentText.replace("{閾炬帴}", jumpLink);
-
-		commentText = commentText.replace("棰嗗埜鎶㈣喘", "鎶㈣喘");
-		commentText = commentText.replace("銆愬埜鍚庝环銆憑鍒稿悗浠穧鍏�", "");
-
+		commentText = commentText.replace("{鎶樻墸浠穧", "" +MoneyBigDecimalUtil.getWithNoZera(new BigDecimal(goods.getVipPrice())));
 		return deleteBlankLine(commentText);
 	}
 
+	
+	
 	@Override
 	public void isCommonTemplateRight(String template) throws ShareGoodsTextTemplateException {
 		String[] keys = new String[] { "{鏍囬}", "{搴楅摵绫诲瀷}", "{鍟嗗搧鍘熶环}", "{鏈堥攢閲弣", "{鐭摼}", "{娣樺彛浠" };
@@ -703,7 +780,60 @@
 			shareGoodsTextTemplateMapper.updateByPrimaryKeySelective(update);
 		}
 	}
+	
+	
+	@Override
+	public void resetCommonTemplateVIP(Long uid) {
+		ShareGoodsTextTemplate template = shareGoodsTextTemplateMapper.selectByUid(uid);
+		if (template != null) {
+			ShareGoodsTextTemplate update = new ShareGoodsTextTemplate();
+			update.setId(template.getId());
+			update.setShareVIPTextTemplate("");
+			update.setUpdateTime(new Date());
+			shareGoodsTextTemplateMapper.updateByPrimaryKeySelective(update);
+		}
 
+	}
+
+	@Override
+	public void resetCouponTemplateVIP(Long uid) {
+		ShareGoodsTextTemplate template = shareGoodsTextTemplateMapper.selectByUid(uid);
+		if (template != null) {
+			ShareGoodsTextTemplate update = new ShareGoodsTextTemplate();
+			update.setId(template.getId());
+			update.setShareVIPTextTemplateCoupon("");
+			update.setUpdateTime(new Date());
+			shareGoodsTextTemplateMapper.updateByPrimaryKeySelective(update);
+		}
+	}
+
+	
+	@Override
+	public void resetCommonTemplateSuNing(Long uid) {
+		ShareGoodsTextTemplate template = shareGoodsTextTemplateMapper.selectByUid(uid);
+		if (template != null) {
+			ShareGoodsTextTemplate update = new ShareGoodsTextTemplate();
+			update.setId(template.getId());
+			update.setShareSuNingTextTemplate("");
+			update.setUpdateTime(new Date());
+			shareGoodsTextTemplateMapper.updateByPrimaryKeySelective(update);
+		}
+
+	}
+
+	@Override
+	public void resetCouponTemplateSuNing(Long uid) {
+		ShareGoodsTextTemplate template = shareGoodsTextTemplateMapper.selectByUid(uid);
+		if (template != null) {
+			ShareGoodsTextTemplate update = new ShareGoodsTextTemplate();
+			update.setId(template.getId());
+			update.setShareSuNingTextTemplateCoupon("");
+			update.setUpdateTime(new Date());
+			shareGoodsTextTemplateMapper.updateByPrimaryKeySelective(update);
+		}
+	}
+	
+	
 	@Override
 	public void resetTaoLijinTemplate(Long uid) {
 		ShareGoodsTextTemplate template = shareGoodsTextTemplateMapper.selectByUid(uid);
@@ -717,8 +847,8 @@
 	}
 
 	@Override
-	public String getRecommendText(boolean coupon, String title, String sales, String couponAmount, String description) {
-		String template = configService.get(ConfigKeyEnum.quickShareGoodsText.getKey());
+	public String getRecommendText(boolean coupon, String title, String sales, String couponAmount, String description, SystemEnum system) {
+		String template = configService.getValue(ConfigKeyEnum.quickShareGoodsText.getKey(),system);
 		String recommendText = template.replace("[鍟嗗搧鏍囬]", title);
 		if (!coupon) {
 			recommendText = recommendText.replace("鎺ㄨ崘鐞嗙敱:[鎺ㄨ崘璇璢", "");
@@ -742,8 +872,8 @@
 	
 
 	@Override
-	public String getCommentTextByTaoToken(boolean coupon, String taoToken, String zkPrice, String quanPrice) {
-		String quickCommentText = configService.get(ConfigKeyEnum.quickShareTBCommentText.getKey());
+	public String getCommentTextByTaoToken(boolean coupon, String taoToken, String zkPrice, String quanPrice, SystemEnum system) {
+		String quickCommentText = configService.getValue(ConfigKeyEnum.quickShareTBCommentText.getKey(),system);
 		String commentText = quickCommentText.replace("[鍘熶环]", zkPrice);
 		commentText = commentText.replace("[娣樺彛浠", TaoBaoUtil.filterTaoToken(taoToken));
 		if (!coupon) {
@@ -756,8 +886,8 @@
 	}
 	
 	@Override
-	public String getCommentTextByLink(boolean coupon, String link, String zkPrice, String quanPrice, ConfigKeyEnum keyEnum) {
-		String quickCommentText = configService.get(keyEnum.getKey());
+	public String getCommentTextByLink(boolean coupon, String link, String zkPrice, String quanPrice, ConfigKeyEnum keyEnum, SystemEnum system) {
+		String quickCommentText = configService.getValue(keyEnum.getKey(),system);
 		String commentText = quickCommentText.replace("[鍘熶环]", zkPrice);
 		commentText = commentText.replace("[閾炬帴]", link);
 		if (!coupon) {
@@ -769,4 +899,62 @@
 		
 		return commentText.replace("\r\n\r\n", "\r\n").replace("\r\n\r\n", "\r\n").replace("\r\n\r\n", "\r\n");
 	}
+	
+	
+	
+	@Override
+	public String createQuickShareTextSuNing(String template, SuningGoodsInfo goods, String jumpLink) {
+		String commodityPrice = goods.getCommodityInfo().getCommodityPrice();
+		if (StringUtil.isNullOrEmpty(commodityPrice)) {
+			commodityPrice = goods.getCommodityInfo().getSnPrice();
+		}
+		
+		String commentText =  template.replace("[鍘熶环]", BigDecimalUtil.getWithNoZera(new BigDecimal(commodityPrice)).toString());
+		commentText = commentText.replace("[閾炬帴]", jumpLink);
+		if (goods.getCouponInfo() != null && !StringUtil.isNullOrEmpty(goods.getCouponInfo().getCouponUrl())) {// 鏈夊埜
+			BigDecimal amount = new BigDecimal(goods.getCouponInfo().getCouponValue());
+			BigDecimal startFee = new BigDecimal(goods.getCouponInfo().getBounsLimit());
+			BigDecimal zkPrice = new BigDecimal(commodityPrice);
+			if (zkPrice.compareTo(startFee) >= 0) {
+				BigDecimal couponPrice = zkPrice.subtract(amount);
+				commentText = commentText.replace("[鍒稿悗浠穄",BigDecimalUtil.getWithNoZera(couponPrice).toString());
+			} else {
+				commentText = commentText.replace("[鍒稿悗浠穄", BigDecimalUtil.getWithNoZera(new BigDecimal(commodityPrice)).toString());
+
+			}
+		} else {
+			commentText = commentText.replace("棰嗗埜鎶㈣喘", "鎶㈣喘");
+			commentText = commentText.replace("銆愬埜鍚庝环銆慬鍒稿悗浠穄鍏�", "");
+		}
+		return deleteBlankLine(commentText);
+	}
+
+	
+	@Override
+	public String createCommonShareTextSuNing(String template, SuningGoodsInfo goods, String jumpLink) {
+		String commodityPrice = goods.getCommodityInfo().getCommodityPrice();
+		if (StringUtil.isNullOrEmpty(commodityPrice)) {
+			commodityPrice = goods.getCommodityInfo().getSnPrice();
+		}
+		String commentText =  template.replace("{鍘熶环}", BigDecimalUtil.getWithNoZera(new BigDecimal(commodityPrice)).toString());
+		commentText = commentText.replace("{閾炬帴}", jumpLink);
+		if (goods.getCouponInfo() != null && !StringUtil.isNullOrEmpty(goods.getCouponInfo().getCouponUrl())) {// 鏈夊埜
+			BigDecimal amount = new BigDecimal(goods.getCouponInfo().getCouponValue());
+			BigDecimal startFee = new BigDecimal(goods.getCouponInfo().getBounsLimit());
+			BigDecimal zkPrice = new BigDecimal(commodityPrice);
+			BigDecimal couponPrice  = zkPrice;
+			if (zkPrice.compareTo(startFee) >= 0) {
+				couponPrice = zkPrice.subtract(amount);
+				commentText = commentText.replace("{鍒稿悗浠穧",BigDecimalUtil.getWithNoZera(couponPrice).toString());
+			} else {
+				commentText = commentText.replace("{鍒稿悗浠穧", BigDecimalUtil.getWithNoZera(new BigDecimal(commodityPrice)).toString());
+			}
+		} else {
+			commentText = commentText.replace("棰嗗埜鎶㈣喘", "鎶㈣喘");
+			commentText = commentText.replace("銆愬埜鍚庝环銆憑鍒稿悗浠穧鍏�", "");
+		}
+		return deleteBlankLine(commentText);
+	}
+
+	 
 }

--
Gitblit v1.8.0