Sfoglia il codice sorgente

fix(tianpan): 修复前后端数据流5个关键bug

- store/tianpan.js: 6处 code === 0 → code === 200 (后端统一Result code)
- daily-fortune.vue: 请求载荷添加 familyId
- related-items.vue: 请求载荷从 {} 改为 { familyId, daysAhead: 7 }
- relation-detail.vue: 传参从 { familyId, memberId } 改为 { member1Id, member2Id }
- TianpanController: 兼容性接口从参数读取 memberType (不再硬编码 child)
Xiaogang Liao 2 mesi fa
parent
commit
32222e2228

+ 3 - 1
cfc-backend/src/main/java/com/etotem/cfc/controller/tianpan/TianpanController.java

@@ -95,6 +95,8 @@ public class TianpanController {
         
         Long member1Id = ((Number) params.get("member1Id")).longValue();
         Long member2Id = ((Number) params.get("member2Id")).longValue();
+        String memberType1 = (String) params.getOrDefault("memberType1", "family_member");
+        String memberType2 = (String) params.getOrDefault("memberType2", "family_member");
 
         String role = (String) request.getAttribute("role");
         Long currentUserId = ((Number) request.getAttribute("userId")).longValue();
@@ -109,7 +111,7 @@ public class TianpanController {
             return Result.error(403, "无权访问兼容性数据");
         }
 
-        CompatibilityResultVO data = tianpanService.computeCompatibility(member1Id, "child", member2Id, "child");
+        CompatibilityResultVO data = tianpanService.computeCompatibility(member1Id, memberType1, member2Id, memberType2);
         return Result.success(data);
     }
 

+ 3 - 1
cfc-frontend/pages/tianpan/daily-fortune.vue

@@ -64,7 +64,9 @@ export default {
     loadDailyFortune: function() {
       var self = this
       self.loading = true; self.error = null
-      self.$store.dispatch('tianpan/loadDailyFortune', { date: self.todayStr })
+      var familyId = uni.getStorageSync('familyId')
+      if (!familyId) { self.error = '请先选择家庭'; return }
+      self.$store.dispatch('tianpan/loadDailyFortune', { familyId: familyId, date: self.todayStr })
         .then(function(data) { self.fortune = data })
         .catch(function(e) { self.error = e.message || '加载失败' })
         .finally(function() { self.loading = false })

+ 3 - 1
cfc-frontend/pages/tianpan/related-items.vue

@@ -90,7 +90,9 @@ export default {
     loadRelatedItems: function() {
       var self = this
       self.loading = true; self.error = null
-      self.$store.dispatch('tianpan/loadRelatedItems', {})
+      var familyId = uni.getStorageSync('familyId')
+      if (!familyId) { self.error = '请先选择家庭'; return }
+      self.$store.dispatch('tianpan/loadRelatedItems', { familyId: familyId, daysAhead: 7 })
         .then(function(data) { self.items = data || self.items })
         .catch(function(e) { self.error = e.message || '加载失败' })
         .finally(function() { self.loading = false })

+ 3 - 1
cfc-frontend/pages/tianpan/relation-detail.vue

@@ -174,6 +174,7 @@ export default {
   onLoad: function(options) {
     if (options && options.memberId) {
       this.memberId = options.memberId
+      this.memberId2 = options.memberId2 || null
       this.loadData()
     }
   },
@@ -195,7 +196,8 @@ export default {
         this.loading = false
         return
       }
-      this.loadCompatibility({ familyId: familyId, memberId: this.memberId })
+      var memberId2 = this.memberId2 || parseInt(this.memberId)
+      this.loadCompatibility({ member1Id: parseInt(this.memberId), member2Id: parseInt(memberId2) })
         .then(this.setRelationData)
         .catch(this.handleError)
         .finally(function() {

+ 6 - 6
cfc-frontend/store/modules/tianpan.js

@@ -36,7 +36,7 @@ export default {
       }
       return tianpanDashboard({ familyId: familyId, year: state.currentYear, daysAhead: state.daysAhead })
         .then(function(res) {
-          if (res && res.code === 0) {
+          if (res && res.code === 200) {
             commit('SET_DASHBOARD', res.data)
           }
         })
@@ -54,7 +54,7 @@ export default {
     loadMemberDetail({ commit }, payload) {
       return tianpanMemberDetail(payload.memberId, { memberType: payload.memberType || 'family_member' })
         .then(function(res) {
-          if (res && res.code === 0) {
+          if (res && res.code === 200) {
             commit('SET_MEMBER_DETAIL', res.data)
             return res.data
           }
@@ -63,7 +63,7 @@ export default {
     },
     loadCompatibility({ commit }, payload) {
       return tianpanCompatibility(payload).then(function(res) {
-        if (res && res.code === 0) {
+        if (res && res.code === 200) {
           commit('SET_COMPATIBILITY', res.data)
           return res.data
         }
@@ -72,7 +72,7 @@ export default {
     },
     loadAnnualEnergy({ commit }, payload) {
       return tianpanAnnualEnergy(payload).then(function(res) {
-        if (res && res.code === 0) {
+        if (res && res.code === 200) {
           commit('SET_ANNUAL_ENERGY', res.data)
           return res.data
         }
@@ -81,7 +81,7 @@ export default {
     },
     loadDailyFortune({ commit }, payload) {
       return tianpanDailyFortune(payload).then(function(res) {
-        if (res && res.code === 0) {
+        if (res && res.code === 200) {
           commit('SET_DAILY_FORTUNE', res.data)
           return res.data
         }
@@ -90,7 +90,7 @@ export default {
     },
     loadRelatedItems({ commit }, payload) {
       return tianpanRelatedItems(payload).then(function(res) {
-        if (res && res.code === 0) {
+        if (res && res.code === 200) {
           commit('SET_RELATED_ITEMS', res.data)
           return res.data
         }