first commit

This commit is contained in:
2026-09-11 01:45:04 +08:00
commit 0a8d60d87f
145 changed files with 40978 additions and 0 deletions
@@ -0,0 +1,5 @@
{
"usingComponents": {
"navigation-bar": "/components/navigation-bar/navigation-bar"
}
}
@@ -0,0 +1,26 @@
import { request } from '../../utils/request'
import { NotificationItem } from '../../types/models'
import { formatDateTime } from '../../utils/format'
Page({
data: {
uuid: '',
item: {} as NotificationItem,
time: '',
},
onLoad(query: Record<string, string>) {
const uuid = query.uuid || ''
this.setData({ uuid })
if (uuid) {
this.fetchDetail()
request({ url: `/notification/${uuid}/read`, method: 'POST', showError: false }).catch(() => {})
}
},
fetchDetail() {
request<NotificationItem>({ url: `/notification/${this.data.uuid}` })
.then((item) => this.setData({ item, time: formatDateTime(item.created_at) }))
.catch(() => {})
},
})
@@ -0,0 +1,14 @@
<view class="page detail-page">
<navigation-bar title="通知详情" />
<view class="card detail-card">
<view class="icon-row">
<view class="n-icon {{item.msg_type === 1 ? 'like' : item.msg_type === 2 ? 'order' : 'sys'}}">
<view class="icon {{item.msg_type === 1 ? 'icon-heart' : item.msg_type === 2 ? 'icon-doc' : 'icon-bell'}}"></view>
</view>
</view>
<view class="detail-title">{{item.title}}</view>
<view class="detail-time">{{time}}</view>
<view class="detail-content">{{item.content}}</view>
</view>
</view>
@@ -0,0 +1,65 @@
.detail-page {
padding: 24rpx;
box-sizing: border-box;
}
.detail-card {
margin-top: 24rpx;
padding: 48rpx 40rpx;
}
.icon-row {
display: flex;
justify-content: center;
margin-bottom: 32rpx;
}
.n-icon {
width: 120rpx;
height: 120rpx;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
}
.n-icon.like {
background: #FFE8EC;
color: #FF3B30;
}
.n-icon.order {
background: #E8F2FF;
color: #007AFF;
}
.n-icon.sys {
background: #F2F2F7;
color: #8E8E93;
}
.n-icon .icon {
width: 64rpx;
height: 64rpx;
}
.detail-title {
font-size: 36rpx;
font-weight: 700;
color: #000;
text-align: center;
}
.detail-time {
font-size: 24rpx;
color: #C7C7CC;
text-align: center;
margin-top: 16rpx;
}
.detail-content {
font-size: 28rpx;
color: #3C3C43;
margin-top: 32rpx;
line-height: 1.7;
}