shinnosuke
2026-09-10 65b57875700bf42ebd17eafa01a265e5690ce271
talent-card-server/src/main/java/com/talentcard/server/business/portal/CinemaPortalService.java
@@ -349,12 +349,20 @@
   private String rightsDescription(Map<String, Object> right, Map<String, Object> merchant) {
      if (right != null) {
         String detail = text(right.get("detail"), "");
         String detail = configuredRightText(right);
         if (!detail.isBlank()) return detail;
         String tag = text(right.get("tag"), "");
         if (!tag.isBlank()) return tag;
      }
      return text(merchant.get("rightsText"), "持人才卡可领取普通厅电影兑换券,到店出示券码后按影城规则兑换。具体适用影片、场次及补差金额以影城现场公示为准。");
   }
   private String configuredRightText(Map<String, Object> right) {
      String detail = text(right.get("detail"), "");
      if (!detail.isBlank()) return detail;
      detail = text(right.get("benefitDetail"), "");
      if (!detail.isBlank()) return detail;
      detail = text(right.get("rightsText"), "");
      if (!detail.isBlank()) return detail;
      return text(right.get("benefit_text"), "");
   }
   private String applicableCards(List<Map<String, Object>> rights, Map<String, Object> right, Map<String, Object> ticketPackage) {
@@ -406,7 +414,8 @@
      if (normalizedLevel.isBlank()) return null;
      for (Map<String, Object> right : rights) {
         if (!booleanValue(right.get("enabled"))) continue;
         if (normalizedLevel.equals(normalizedCardLevel(text(right.get("level"), "")))) return right;
         String configuredLevel = text(right.get("level"), text(right.get("cardLevel"), text(right.get("card_level"), "")));
         if (normalizedLevel.equals(normalizedCardLevel(configuredLevel))) return right;
      }
      return null;
   }