与牧同行-小程序用户端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

171 lines
5.9 KiB

<view class="personal-center">
<!-- 用户信息区域 -->
<view class="user-section fade-in">
<view class="user-card">
<!-- 头像 -->
<button class="avatar-btn" open-type="chooseAvatar" bindchooseavatar="onChooseAvatar">
<image class="avatar" src="{{baseUrl + userInfo.user.avatar || '/pages/images/tx.png'}}" mode="aspectFill"></image>
<view class="avatar-edit-tip">点击修改</view>
</button>
<!-- 用户信息 -->
<view class="user-info">
<view class="nickname-section" bindtap="editNickname">
<text class="nickname">{{userInfo.user.nickName || '微信用户'}}</text>
<image src="/pages/images/bj.png"></image>
</view>
<view class="user-meta">
<view class="auth-tag {{userInfo.isVerified ? 'verified' : ''}}" bindtap="goToAuth">
<text>{{userInfo.authStatus ? '已认证' : '未认证'}}</text>
</view>
</view>
</view>
</view>
</view>
<!-- 消息通知 -->
<view class="section-card fade-in-delay-1">
<view class="section-header">
<text class="section-title">消息通知</text>
</view>
<view class="message-row">
<view class="message-item" bindtap="goToConsultation">
<view class="message-icon-wrapper">
<image class="message-icon" src="/pages/images/wz.png" mode=""></image>
</view>
<text class="message-label">问诊消息</text>
</view>
<view class="divider"></view>
<view class="message-item" bindtap="goToQA">
<view class="message-icon-wrapper">
<image class="message-icon" src="/pages/images/wdxx.png" mode=""></image>
</view>
<text class="message-label">问答消息</text>
</view>
</view>
</view>
<!-- 功能列表 -->
<view class="section-card fade-in-delay-2">
<view class="function-list">
<!-- 实名认证 -->
<view class="function-item" bindtap="goToAuth">
<view class="item-left">
<image class="item-icon" src="/pages/images/smrz.png"></image>
<text class="item-title">实名认证</text>
</view>
<view class="item-status {{userInfo.isVerified ? 'verified' : ''}}">
{{userInfo.authStatus ? '已认证' : '去认证'}}
</view>
</view>
<!-- 反馈建议 -->
<view class="function-item" bindtap="showFeedback">
<view class="item-left">
<image class="item-icon" src="/pages/images/fkjy.png"></image>
<text class="item-title">反馈建议</text>
</view>
</view>
<!-- 退出登录 -->
<view class="function-item" bindtap="showLogoutConfirm">
<view class="item-left">
<image class="item-icon" src="/pages/images/logout.png"></image>
<text class="item-title logout-title">退出登录</text>
</view>
</view>
</view>
</view>
<!-- 反馈建议弹窗 -->
<view class="feedback-modal {{showFeedbackModal ? 'show' : ''}}">
<view class="modal-mask" bindtap="hideFeedback"></view>
<view class="modal-content">
<view class="modal-header">
<text class="modal-title">反馈建议</text>
<view class="modal-close" bindtap="hideFeedback">
<image src="/pagesA/images/ch.png"></image>
</view>
</view>
<view class="modal-body">
<!-- 修复iOS输入框问题:添加focus控制并增加条件渲染 -->
<textarea
class="feedback-input"
placeholder="请输入您的反馈或建议..."
placeholder-class="placeholder"
value="{{feedbackContent}}"
bindinput="onFeedbackInput"
maxlength="200"
auto-height
focus="{{showFeedbackModal && textareaFocus}}"
disabled="{{!showFeedbackModal}}"
confirm-type="done"
show-confirm-bar="{{false}}"
></textarea>
<view class="char-count">
<text class="current">{{feedbackContent.length}}</text>
<text class="total">/200</text>
</view>
</view>
<view class="modal-footer">
<button class="submit-btn {{canSubmit ? 'active' : ''}}" bindtap="submitFeedback" disabled="{{!canSubmit}}">
{{isSubmitting ? '提交中...' : '提交'}}
</button>
</view>
</view>
</view>
<!-- 修改昵称弹窗 -->
<view class="nickname-modal {{showNicknameModal ? 'show' : ''}}">
<view class="modal-mask" bindtap="hideNicknameModal"></view>
<view class="modal-content">
<view class="modal-header">
<text class="modal-title">修改昵称</text>
</view>
<view class="modal-body">
<input
class="nickname-input"
type="text"
placeholder="请输入昵称"
value="{{newNickname}}"
bindinput="onNicknameInput"
maxlength="10"
focus="{{showNicknameModal}}"
confirm-type="done"
/>
<text class="input-tip">最多10个字符</text>
</view>
<view class="modal-footer">
<button class="cancel-btn" bindtap="hideNicknameModal">取消</button>
<button class="confirm-btn" bindtap="saveNickname">确定</button>
</view>
</view>
</view>
<!-- 退出登录确认弹窗 -->
<view class="logout-modal {{showLogoutModal ? 'show' : ''}}">
<view class="modal-mask" bindtap="hideLogoutModal"></view>
<view class="modal-content">
<view class="logout-modal-body">
<text class="logout-title">确认退出登录?</text>
<text class="logout-desc">退出后需要重新登录才能使用完整功能</text>
</view>
<view class="logout-modal-footer">
<button class="logout-cancel-btn" bindtap="hideLogoutModal">取消</button>
<button class="logout-confirm-btn" bindtap="doLogout">退出登录</button>
</view>
</view>
</view>
<!-- 提示信息 -->
<view class="toast {{showToast ? 'show' : ''}}">
<text>{{toastText}}</text>
</view>
</view>