diff --git a/rc-service/rc-service-other/other-inner-endpoint/src/main/java/com/red/circle/other/app/inner/service/material/props/impl/PropsActivityRewardGroupClientServiceImpl.java b/rc-service/rc-service-other/other-inner-endpoint/src/main/java/com/red/circle/other/app/inner/service/material/props/impl/PropsActivityRewardGroupClientServiceImpl.java index b455694c..3087fb6c 100644 --- a/rc-service/rc-service-other/other-inner-endpoint/src/main/java/com/red/circle/other/app/inner/service/material/props/impl/PropsActivityRewardGroupClientServiceImpl.java +++ b/rc-service/rc-service-other/other-inner-endpoint/src/main/java/com/red/circle/other/app/inner/service/material/props/impl/PropsActivityRewardGroupClientServiceImpl.java @@ -177,7 +177,7 @@ public class PropsActivityRewardGroupClientServiceImpl implements private void handlePropsAssemble(List propsActivityRewards, Map badgePictureMap) { propsActivityRewards.stream() - .filter(props -> Objects.equals(props.getType(), PropsActivityRewardEnum.BADGE.name())) + .filter(props -> Objects.equals(props.getType(), PropsActivityRewardEnum.BADGE.name()) || Objects.equals(props.getType(), PropsActivityRewardEnum.PROP_COUPON.name())) .forEach(props -> { BadgePictureConfig picture = badgePictureMap.get(Long.valueOf(props.getContent())); if (Objects.isNull(picture)) { @@ -189,8 +189,8 @@ public class PropsActivityRewardGroupClientServiceImpl implements } private Set getBadgeContentList(List list) { - return list.stream().filter(props -> Objects.equals(props.getType(), - PropsActivityRewardEnum.BADGE.name())) + return list.stream().filter(props -> Objects.equals(props.getType(),PropsActivityRewardEnum.BADGE.name()) || + Objects.equals(props.getType(),PropsActivityRewardEnum.PROP_COUPON.name())) .map(props -> Long.valueOf(props.getContent())) .collect(Collectors.toSet()); } @@ -220,7 +220,7 @@ public class PropsActivityRewardGroupClientServiceImpl implements } Set sourceIds = propsActivityRewardConfigs.stream().filter(config -> - Objects.equals(config.getType(), PropsActivityRewardEnum.PROPS.name())) + Objects.equals(config.getType(), PropsActivityRewardEnum.PROPS.name()) || Objects.equals(config.getType(), PropsActivityRewardEnum.PROP_COUPON.name())) .map(config -> Long.valueOf(config.getContent())) .collect(Collectors.toSet()); @@ -251,7 +251,7 @@ public class PropsActivityRewardGroupClientServiceImpl implements Map sysBadgeConfigMap = badgeConfigService .mapByIds(propsActivityRewardConfigs.stream().filter(config -> - Objects.equals(config.getType(), PropsActivityRewardEnum.BADGE.name())) + Objects.equals(config.getType(), PropsActivityRewardEnum.BADGE.name()) || Objects.equals(config.getType(), PropsActivityRewardEnum.PROP_COUPON.name())) .map(config -> Long.valueOf(config.getContent())) .collect(Collectors.toSet())); @@ -265,13 +265,15 @@ public class PropsActivityRewardGroupClientServiceImpl implements PropsActivityRewardConfigInfoDTO propsActivity = propsInnerConvertor.toPropsActivityRewardConfigInfoDTO( config); propsActivity.setSort(Objects.isNull(propsActivity.getSort()) ? 0 : propsActivity.getSort()); - if (Objects.equals(config.getType(), PropsActivityRewardEnum.PROPS.name())) { + if (Objects.equals(config.getType(), PropsActivityRewardEnum.PROPS.name()) || Objects.equals(config.getType(), PropsActivityRewardEnum.PROP_COUPON.name())) { PropsSourceRecord sourceRecord = sourceRecordMap .get(Long.valueOf(config.getContent())); - propsActivity.setCover(sourceRecord.getCover()); - propsActivity.setSourceUrl(sourceRecord.getSourceUrl()); - propsActivity.setAmount(sourceRecord.getAmount()); - propsActivity.setName(sourceRecord.getName()); + if (Objects.nonNull(sourceRecord)) { + propsActivity.setCover(sourceRecord.getCover()); + propsActivity.setSourceUrl(sourceRecord.getSourceUrl()); + propsActivity.setAmount(sourceRecord.getAmount()); + propsActivity.setName(sourceRecord.getName()); + } } if (Objects.equals(config.getType(), PropsActivityRewardEnum.FRAGMENTS.name())) { @@ -304,11 +306,12 @@ public class PropsActivityRewardGroupClientServiceImpl implements propsActivity.setName(giftConfig.getGiftName()); } - if (Objects.equals(config.getType(), PropsActivityRewardEnum.BADGE.name())) { - BadgeConfig sysBadgeConfig = sysBadgeConfigMap - .get(DataTypeUtils.toLong(config.getContent())); - propsActivity.setBadgeName(sysBadgeConfig.getBadgeName()); - propsActivity.setName(sysBadgeConfig.getBadgeName()); + if (Objects.equals(config.getType(), PropsActivityRewardEnum.BADGE.name()) || Objects.equals(config.getType(), PropsActivityRewardEnum.PROP_COUPON.name())) { + BadgeConfig sysBadgeConfig = sysBadgeConfigMap.get(DataTypeUtils.toLong(config.getContent())); + if (Objects.nonNull(sysBadgeConfig)) { + propsActivity.setBadgeName(sysBadgeConfig.getBadgeName()); + propsActivity.setName(sysBadgeConfig.getBadgeName()); + } } if (!Objects.equals(config.getType(), PropsActivityRewardEnum.SPECIAL_ID.name())) {