Просмотр исходного кода

feat: getPricingPlans 改读membership_levels并过滤LIFETIME(下线sys_config价格)

Xiaogang Liao 1 месяц назад
Родитель
Сommit
f881ede193

+ 10 - 39
cfc-backend/src/main/java/com/etotem/cfc/controller/MembershipController.java

@@ -11,7 +11,6 @@ import com.etotem.cfc.entity.User;
 import com.etotem.cfc.mapper.MemberUpgradeRecordMapper;
 import com.etotem.cfc.mapper.UserMapper;
 import com.etotem.cfc.service.MembershipService;
-import com.etotem.cfc.service.SysConfigService;
 import com.etotem.cfc.service.VirtualPayService;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.tags.Tag;
@@ -38,9 +37,6 @@ public class MembershipController {
     @Resource
     private MemberUpgradeRecordMapper memberUpgradeRecordMapper;
 
-    @Resource
-    private SysConfigService sysConfigService;
-
     @Value("${wechat.test-mode:false}")
     private boolean testMode;
 
@@ -318,46 +314,21 @@ public class MembershipController {
         List<MembershipLevelDTO> levels = membershipService.getAllLevels();
         List<Map<String, Object>> plans = new ArrayList<>();
         for (MembershipLevelDTO level : levels) {
+            // LIFETIME 不可购买,过滤不返回
+            if ("LIFETIME".equals(level.getLevelCode())) {
+                continue;
+            }
             Map<String, Object> plan = new HashMap<>();
             plan.put("levelCode", level.getLevelCode());
             plan.put("levelName", level.getLevelName());
             plan.put("levelDesc", level.getLevelDesc());
             plan.put("recommended", "FAMILY".equals(level.getLevelCode()));
-            // 付费等级价格从 sys_config 读取
-            if ("FAMILY".equals(level.getLevelCode())) {
-                // 家庭会员仅支持年付
-                String yearlyStr = sysConfigService.getValue("member_fee_family_yearly");
-                if (yearlyStr == null) yearlyStr = sysConfigService.getValue("member_fee_family");
-                plan.put("yearly", yearlyStr != null ? Integer.parseInt(yearlyStr) : 131400);
-                plan.put("monthly", null);
-                plan.put("quarterly", null);
-                // 原价(划线价,仅展示)
-                String origYearlyStr = sysConfigService.getValue("member_fee_family_original_yearly");
-                if (origYearlyStr == null) origYearlyStr = sysConfigService.getValue("member_fee_family_original");
-                plan.put("originalYearly", origYearlyStr != null ? Integer.parseInt(origYearlyStr) : null);
-                plan.put("originalMonthly", null);
-                plan.put("originalQuarterly", null);
-            } else if ("PREMIUM".equals(level.getLevelCode())) {
-                String yearlyStr = sysConfigService.getValue("member_fee_premium");
-                String monthlyStr = sysConfigService.getValue("member_fee_premium_monthly");
-                plan.put("yearly", yearlyStr != null ? Integer.parseInt(yearlyStr) : 1316800);
-                plan.put("monthly", monthlyStr != null ? Integer.parseInt(monthlyStr) : 131400);
-                plan.put("quarterly", 0);
-                // 原价(划线价,仅展示)
-                String origYearlyStr = sysConfigService.getValue("member_fee_premium_original");
-                String origMonthlyStr = sysConfigService.getValue("member_fee_premium_original_monthly");
-                plan.put("originalYearly", origYearlyStr != null ? Integer.parseInt(origYearlyStr) : null);
-                plan.put("originalMonthly", origMonthlyStr != null ? Integer.parseInt(origMonthlyStr) : null);
-                plan.put("originalQuarterly", null);
-            } else {
-                plan.put("monthly", level.getPriceMonthly());
-                plan.put("quarterly", level.getPriceQuarterly());
-                plan.put("yearly", level.getPriceYearly());
-                // 其他等级无原价定义
-                plan.put("originalYearly", null);
-                plan.put("originalMonthly", null);
-                plan.put("originalQuarterly", null);
-            }
+            plan.put("yearly", level.getPriceYearly());
+            plan.put("monthly", level.getPriceMonthly());
+            plan.put("quarterly", level.getPriceQuarterly());
+            plan.put("originalYearly", level.getOriginalPriceYearly());
+            plan.put("originalMonthly", level.getOriginalPriceMonthly());
+            plan.put("originalQuarterly", level.getOriginalPriceQuarterly());
             plans.add(plan);
         }
         return Result.success(plans);