Kaynağa Gözat

Merge branch 'master' into pre

# Conflicts:
#	netflix-web/src/main/java/com/cyksj/web/controller/goods/GoodsDonController.java
zoujiajian 2 yıl önce
ebeveyn
işleme
4c6cec0095

+ 20 - 0
netflix-service/src/main/java/com/cyksj/service/order/impl/OrderDonServiceImpl.java

@@ -477,6 +477,26 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 			}
 		}
 
+		//如 mj标准6人月付 价格特殊处理
+		if (Constant.SPECIAL_PRICE_SKU_IDS.contains(sku.getId())) {
+			UserDistributeShared distributeShared = userDistributeSharedMapper.selectOne(Wrappers.lambdaQuery(UserDistributeShared.class)
+					.eq(UserDistributeShared::getUserId, userId)
+					.last("limit 1"));
+			if (distributeShared != null) {
+				SysConfig one = sysConfigService.getOne(Wrappers.lambdaQuery(SysConfig.class)
+						.eq(SysConfig::getSysKey, Constant.MJ_SPECIAL_SKU_PRICE_KEY)
+						.last("limit 1"));
+				if (one != null && StrUtil.isNotBlank(one.getSysValue())) {
+					GoodsDonPriceDto goodsDonPriceDto = Jsons.parseObject(one.getSysValue(), GoodsDonPriceDto.class);
+					Long sharedId = distributeShared.getSharedId();
+					List<Long> sharedIdList = goodsDonPriceDto.getSharedId();
+					if (CollUtil.isNotEmpty(sharedIdList) && sharedIdList.contains(sharedId)) {
+						payRequest.setDonMoney(goodsDonPriceDto.getPrice());
+					}
+				}
+			}
+		}
+
 		//租赁商品
 		if (goodsDon.getType() == 4) {
 			//是否已实名认证过

+ 20 - 12
netflix-web/src/main/java/com/cyksj/web/controller/goods/GoodsDonController.java

@@ -18,6 +18,7 @@ import com.cyksj.enums.GatewayResponse;
 import com.cyksj.mapper.GoodsDonSkuMapper;
 import com.cyksj.mapper.OrderDonMapper;
 import com.cyksj.mapper.RegisterOrderDonMapper;
+import com.cyksj.mapper.manage.distribute.UserDistributeSharedMapper;
 import com.cyksj.mapper.shop.YhShopGoodsSkuMapper;
 import com.cyksj.mapper.sys.SysConfigMapper;
 import com.cyksj.model.dto.GoodsDonPriceDto;
@@ -81,6 +82,8 @@ public class GoodsDonController {
 
 	private final UserService userService;
 
+	private final UserDistributeSharedMapper userDistributeSharedMapper;
+
 	private final GoodsDonFrontService goodsDonFrontService;
 
 	private final UserBindRelationService userBindRelationService;
@@ -420,20 +423,25 @@ public class GoodsDonController {
 					}
 				}
 			}
-			if (dsUserId.get() != 0 && Constant.SPECIAL_PRICE_SKU_IDS.contains(sku.getId())) {
-				Optional.ofNullable(sysConfigMapper.selectOne(Wrappers.lambdaQuery(SysConfig.class)
-						.eq(SysConfig::getSysValue, Constant.MJ_SPECIAL_SKU_PRICE_KEY)
-						.last("limit 1"))).ifPresent(sysConfig -> {
-					if (StrUtil.isNotBlank(sysConfig.getSysValue())) {
-						try {
-							GoodsDonPriceDto goodsDonPriceDto = Jsons.parseObject(sysConfig.getSysValue(), GoodsDonPriceDto.class);
-							if (CollUtil.isNotEmpty(goodsDonPriceDto.getSharedId()) && goodsDonPriceDto.getSharedId().contains(dsUserId)) {
-								sku.setPrice(goodsDonPriceDto.getPrice());
+			if (fUid != null && Constant.SPECIAL_PRICE_SKU_IDS.contains(sku.getId())) {
+				UserDistributeShared distributeShared = userDistributeSharedMapper.selectOne(Wrappers.lambdaQuery(UserDistributeShared.class)
+						.eq(UserDistributeShared::getUserId, fUid)
+						.last("limit 1"));
+				if (distributeShared != null) {
+					Optional.ofNullable(sysConfigMapper.selectOne(Wrappers.lambdaQuery(SysConfig.class)
+							.eq(SysConfig::getSysKey, Constant.MJ_SPECIAL_SKU_PRICE_KEY)
+							.last("limit 1"))).ifPresent(sysConfig -> {
+						if (StrUtil.isNotBlank(sysConfig.getSysValue())) {
+							try {
+								GoodsDonPriceDto goodsDonPriceDto = Jsons.parseObject(sysConfig.getSysValue(), GoodsDonPriceDto.class);
+								if (CollUtil.isNotEmpty(goodsDonPriceDto.getSharedId()) && goodsDonPriceDto.getSharedId().contains(distributeShared.getSharedId())) {
+									sku.setPrice(goodsDonPriceDto.getPrice());
+								}
+							} catch (Exception e) {
 							}
-						} catch (Exception e) {
 						}
-					}
-				});
+					});
+				}
 			}
 			return true;
 		}).collect(Collectors.toList()));

+ 1 - 1
netflix-web/src/main/java/com/cyksj/web/controller/payment/OrderController.java

@@ -143,7 +143,7 @@ public class OrderController {
         String ip = ServletUtil.getClientIP(request);
         String address = StringUtil.getNewInternalAddressByIp(ip);
         //address.contains("柬埔寨") ||
-        if (address.contains("缅甸")) {
+        if (address == null || address.contains("缅甸")) {
             throw BusinessRuntimeException.getInstance("用户系统异常");
         }
         payRequest.setIp(ip);