Browse Source

增加页面跳转

liudan 1 week ago
parent
commit
f22ed2b89b

+ 7 - 1
src/pages/staticPages/receptionCenter/receptionCenter.vue

@@ -124,7 +124,13 @@ export default {
             patientData: []
         };
     },
-    onLoad() {
+    onLoad(options) {
+        // 支持从工作台等页面跳转时带入状态参数(value / activeStatus)
+        const params = options || {};
+        const incomingStatus = params.value !== undefined && params.value !== null && params.value !== ''
+            ? params.value
+            : params.activeStatus;
+        this.activeStatus = incomingStatus === undefined || incomingStatus === null ? '' : String(incomingStatus);
         // 默认查询日期范围为当天
         const today = this.formatDate(new Date());
         this.dateFrom = today;

+ 24 - 13
src/pages/staticPages/workbench/workbench.vue

@@ -13,11 +13,11 @@
                     <text class="title-text">累计数据</text>
                 </view>
                 <view class="stat-cards-row">
-                    <view class="stat-card-blue">
+                    <view class="stat-card-blue" @tap="goReceptionCenter">
                         <text class="stat-number">{{ totalPatient }}</text>
                         <text class="stat-label">累计接诊患者</text>
                     </view>
-                    <view class="stat-card-blue">
+                    <view class="stat-card-blue" @tap="goReceptionCenter">
                         <text class="stat-number">{{ totalAmount }}</text>
                         <text class="stat-label">累计收费金额</text>
                     </view>
@@ -31,7 +31,7 @@
                     <text class="title-text">今日概览</text>
                 </view>
                 <view class="today-cards-row">
-                    <view class="today-card" v-for="(item, index) in todayStat" :key="index">
+                    <view class="today-card" v-for="(item, index) in todayStat" :key="index" @tap="onTodayStatTap(item)">
                         <text class="today-number">{{ item.number }}</text>
                         <text class="today-label">{{ item.label }}</text>
                     </view>
@@ -88,18 +88,18 @@ export default {
         return {
             quickList: [
                 { icon: '💬', name: '在线客服', path: '/pages/staticPages/workbench/messageList' },
-                { icon: '📋', name: '挂号查询', path: '/pages/staticPages/receptionCenter/receptionCenter' },
-                { icon: '💰', name: '费用管理', path: '/pages/staticPages/workbench/refundReview' }
+                { icon: '📋', name: '接诊中心', path: '/pages/staticPages/receptionCenter/receptionCenter' },
+                { icon: '💰', name: '退费审核', path: '/pages/staticPages/workbench/refundReview' }
             ],
             // 累计数据(兜底默认值)
             totalPatient: '0',
             totalAmount: '0',
             // 今日概览(兜底默认值)
             todayStat: [
-                { number: '0', label: '今日挂号' },
-                { number: '0', label: '今日接诊' },
-                { number: '0', label: '待接诊' },
-                { number: '0', label: '退费申请' }
+                { number: '0', label: '今日挂号', value: '挂号' },
+                { number: '0', label: '今日接诊', value: '接诊' },
+                { number: '0', label: '待接诊', value: '待接诊' },
+                { number: '0', label: '退费申请', value: '退费申请' },
             ],
             // 最近患者(兜底默认值)
             patientList: []
@@ -134,10 +134,10 @@ export default {
 
                     // 今日概览
                     that.todayStat = [
-                        { number: info.todayAdmCount !== undefined ? info.todayAdmCount : 0, label: '今日挂号' },
-                        { number: info.todayReceive !== undefined ? info.todayReceive : 0, label: '今日接诊' },
-                        { number: info.todayWaiting !== undefined ? info.todayWaiting : 0, label: '待接诊' },
-                        { number: info.todayRefund !== undefined ? info.todayRefund : 0, label: '退费申请' }
+                        { number: info.todayAdmCount !== undefined ? info.todayAdmCount : 0, label: '今日挂号', value: '挂号'  },
+                        { number: info.todayReceive !== undefined ? info.todayReceive : 0, label: '今日接诊', value: '接诊' },
+                        { number: info.todayWaiting !== undefined ? info.todayWaiting : 0, label: '待接诊', value: '待接诊' },
+                        { number: info.todayRefund !== undefined ? info.todayRefund : 0, label: '退费申请', value: '退费申请' }
                     ];
 
                     // 最近患者(接口仅返回最近一位患者姓名 todayLastPatName)
@@ -159,6 +159,17 @@ export default {
             if (item.path) {
                 uni.navigateTo({ url: item.path });
             }
+        },
+        goReceptionCenter() {
+            uni.navigateTo({
+                url: '/pages/staticPages/receptionCenter/receptionCenter'
+            });
+        },
+        onTodayStatTap(item) {
+            const value = item && item.value !== undefined && item.value !== null ? String(item.value) : '';
+            uni.navigateTo({
+                url: `/pages/staticPages/receptionCenter/receptionCenter?value=${encodeURIComponent(value)}`
+            });
         }
     }
 };