Files
sundynix-pets/pets-fe/components/profile-head/index.wxml
T
Blizzard 4c9fbc4a88 fix(fe+be): 我的页去重宠物墙 + 养宠天数按到家日算
- 养宠天数原来按建档日算,重新建档会被重置成 1(和首页「第869天」矛盾);
  改成按最早那只的到家日算(无到家日退建档日),和首页口径一致
- 「我的」页 profile-head 传 hideWall,藏掉社交宠物墙(下面「我的毛孩子」
  卡更详细,重复了);宠物墙只在别人访问/预览时出现,受「展示我的毛孩子」
  开关控制,语义更对(那开关本来就是给别人看的)

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 15:11:59 +08:00

57 lines
3.1 KiB
Plaintext

<view class="pf th-{{theme}}">
<!-- 头图。没传背景图就用主题色渐变,不留空白块 -->
<view class="pf-bg">
<image wx:if="{{card.bg_url}}" class="pf-bg-img" src="{{card.bg_url}}" mode="aspectFill"></image>
</view>
<view class="pf-body">
<view class="pf-av">
<image wx:if="{{card.avatar_url}}" class="pf-av-img" src="{{card.avatar_url}}" mode="aspectFill"></image>
<block wx:else>{{initial}}</block>
</view>
<view class="pf-name">{{card.nickname || '毛孩子家长'}}<text wx:if="{{card.is_bot}}" class="ai-tag">AI</text></view>
<view class="pf-bio">{{card.bio || '这个人很懒,还没写签名'}}</view>
<view class="pf-stats">
<view class="pf-stat"><text class="pf-n">{{card.post_count || 0}}</text><text class="pf-l">帖子</text></view>
<view class="pf-stat" data-kind="following" bindtap="onRelations">
<text class="pf-n">{{card.following_count || 0}}</text><text class="pf-l">关注</text>
</view>
<view class="pf-stat" data-kind="followers" bindtap="onRelations">
<text class="pf-n">{{card.follower_count || 0}}</text><text class="pf-l">粉丝</text>
</view>
</view>
<!-- 养宠数据。这是这个 App 独有的东西,比帖子数更能说明「这人是个认真的铲屎官」 -->
<view wx:if="{{card.stats}}" class="pf-keep">
<view class="pf-keep-i"><text class="pf-kn">{{card.stats.days || 0}}</text><text class="pf-kl">养宠天数</text></view>
<view class="pf-keep-i"><text class="pf-kn">{{card.stats.records || 0}}</text><text class="pf-kl">累计记录</text></view>
<view class="pf-keep-i"><text class="pf-kn">{{card.stats.streak || 0}}</text><text class="pf-kl">连续打卡</text></view>
</view>
<!-- 宠物名片墙:给别人看的(受「展示我的毛孩子」开关控制)。「我的」页传
hideWall 把它藏掉(下面有更详细的「我的毛孩子」卡,避免重复),
别人访问 / 预览时照常显示 -->
<scroll-view wx:if="{{card.show_pets && card.pets.length && !hideWall}}" class="pf-wall"
scroll-x="{{true}}" enhanced="{{true}}" show-scrollbar="{{false}}">
<view wx:for="{{card.pets}}" wx:key="id" class="pf-pet" data-id="{{item.id}}" bindtap="onPet">
<view class="pf-pet-av">
<image wx:if="{{item.avatar_url}}" class="pf-pet-img" src="{{item.avatar_url}}" mode="aspectFill"></image>
<block wx:else>{{item.emoji}}</block>
</view>
<view class="pf-pet-n">{{item.name}}</view>
<view class="pf-pet-s">{{item.stage}}</view>
</view>
</scroll-view>
<block wx:if="{{!preview}}">
<view wx:if="{{card.is_self}}" class="btn btn-ghost btn-block" bindtap="onDecorate">
<pt-icon name="edit" size="{{30}}"></pt-icon>装扮我的主页
</view>
<view wx:else class="btn {{card.followed ? 'btn-ghost' : 'btn-dark'}} btn-block" bindtap="onFollow">
<pt-icon wx:if="{{!card.followed}}" name="plus" size="{{28}}"></pt-icon>{{card.followed ? '已关注' : '关注 TA'}}
</view>
</block>
</view>
</view>