Переглянути джерело

refactor(message-detail): 优化时间格式化逻辑,返回更标准的日期时间格式

mcbaiyun 2 тижнів тому
батько
коміт
40745af20d
2 змінених файлів з 28 додано та 79 видалено
  1. 20 63
      src/pages/doctor/index/index.vue
  2. 8 16
      src/pages/public/message-detail.vue

+ 20 - 63
src/pages/doctor/index/index.vue

@@ -46,6 +46,7 @@
         </view>
       </view>
 
+      <!--
       <view class="today-reminder-card">
         <view class="card-header">
           <text class="card-title">复诊概览</text>
@@ -71,6 +72,7 @@
           </view>
         </view>
       </view>
+      -->
 
       <view class="patient-activity-card">
         <view class="card-header">
@@ -134,10 +136,12 @@ const avatarSrc = computed(() => {
   return defaultAvatarUrl
 })
 
+/*
 const todayReminders = ref({
   pendingCount: 0,
   confirmedCount: 0
 })
+*/
 
 const patientActivities = ref<Array<{
   desc: string
@@ -212,6 +216,7 @@ const fetchUserInfo = async () => {
   }
 }
 
+/*
 const fetchTodayReminders = async () => {
   try {
     const token = uni.getStorageSync('token')
@@ -226,6 +231,7 @@ const fetchTodayReminders = async () => {
     console.error('Fetch today reminders error:', err)
   }
 }
+*/
 
 const fetchPatientActivities = async () => {
   try {
@@ -435,7 +441,7 @@ onShow(() => {
     uni.reLaunch({ url: '/pages/public/login/index' })
   } else {
     fetchUserInfo()
-    fetchTodayReminders()
+    // fetchTodayReminders()
     fetchPatientActivities()
     fetchUnreadMessageCount()
     checkAndShowPopupMessages()
@@ -714,68 +720,19 @@ const formatActivityDescription = (activity: any) => {
   color: #666;
 }
 
-.today-reminder-card {
-  background-color: #fff;
-  border-radius: 20rpx;
-  margin: 20rpx;
-  box-shadow: 0 2rpx 10rpx rgba(0, 0, 0, 0.1);
-  overflow: hidden;
-}
-
-.card-header {
-  padding: 20rpx;
-  border-bottom: 1rpx solid #eee;
-}
-
-.card-title {
-  font-size: 36rpx;
-  font-weight: bold;
-  color: #333;
-}
-
-.card-content {
-  padding: 20rpx;
-  display: flex;
-  justify-content: space-around;
-}
-
-.reminder-item {
-  display: flex;
-  align-items: center;
-  flex: 1;
-  padding: 20rpx;
-  border-radius: 10rpx;
-  background-color: #f9f9f9;
-  margin: 0 10rpx;
-}
-
-.reminder-icon {
-  width: 60rpx;
-  height: 60rpx;
-  margin-right: 20rpx;
-}
-
-.icon {
-  width: 100%;
-  height: 100%;
-}
-
-.reminder-text {
-  display: flex;
-  flex-direction: column;
-}
-
-.reminder-number {
-  font-size: 48rpx;
-  font-weight: bold;
-  color: #333;
-}
-
-.reminder-label {
-  font-size: 28rpx;
-  color: #666;
-  margin-top: 10rpx;
-}
+/*
+  以下为复诊概览卡片样式,已注释以便临时隐藏该功能
+  .today-reminder-card { ... }
+  .card-header { ... }
+  .card-title { ... }
+  .card-content { ... }
+  .reminder-item { ... }
+  .reminder-icon { ... }
+  .icon { ... }
+  .reminder-text { ... }
+  .reminder-number { ... }
+  .reminder-label { ... }
+*/
 
 .activity-card-content {
   padding: 20rpx;

+ 8 - 16
src/pages/public/message-detail.vue

@@ -88,22 +88,14 @@ const formatTime = (timeStr: string) => {
   if (!timeStr) return ''
   try {
     const date = new Date(timeStr)
-    const now = new Date()
-    const diff = now.getTime() - date.getTime()
-    const oneDay = 24 * 60 * 60 * 1000
-    const oneWeek = 7 * oneDay
-
-    if (diff < oneDay) {
-      // 今天
-      return date.toLocaleTimeString('zh-CN', { hour: '2-digit', minute: '2-digit' })
-    } else if (diff < oneWeek) {
-      // 本周
-      const days = ['日', '一', '二', '三', '四', '五', '六']
-      return `周${days[date.getDay()]} ${date.toLocaleTimeString('zh-CN', { hour: '2-digit', minute: '2-digit' })}`
-    } else {
-      // 更早
-      return date.toLocaleDateString('zh-CN', { month: '2-digit', day: '2-digit' })
-    }
+    const pad = (n: number) => String(n).padStart(2, '0')
+    const yyyy = date.getFullYear()
+    const MM = pad(date.getMonth() + 1)
+    const dd = pad(date.getDate())
+    const hh = pad(date.getHours())
+    const mm = pad(date.getMinutes())
+    const ss = pad(date.getSeconds())
+    return `${yyyy}-${MM}-${dd} ${hh}:${mm}:${ss}`
   } catch (e) {
     return timeStr
   }