88 lines
2.9 KiB
Plaintext
88 lines
2.9 KiB
Plaintext
<!-- 举报页 U26(重构:safetyService + ui-nav-bar + ui-textarea) -->
|
||
<view class="page">
|
||
<ui-nav-bar
|
||
title="举报"
|
||
show-back="{{true}}"
|
||
status-bar-height="{{statusBarHeight}}"
|
||
nav-bar-height="{{navBarHeight}}"
|
||
bind:back="onBack"
|
||
/>
|
||
|
||
<!-- 提交成功态 -->
|
||
<view wx:if="{{submitted}}" class="body" style="padding-top: {{statusBarHeight + navBarHeight}}px;">
|
||
<view class="success-wrap">
|
||
<view class="success-icon">✓</view>
|
||
<text class="success-title">举报已提交</text>
|
||
<text class="success-hint">工作人员会尽快核实处理,感谢您的监督。</text>
|
||
<button class="btn-primary" bindtap="goBack">返回</button>
|
||
</view>
|
||
</view>
|
||
|
||
<!-- 表单态 -->
|
||
<view wx:else class="body" style="padding-top: {{statusBarHeight + navBarHeight}}px;">
|
||
<view wx:if="{{targetName}}" class="target-bar">
|
||
<text>被举报人:{{targetName}}</text>
|
||
</view>
|
||
|
||
<!-- 举报原因 -->
|
||
<view class="card">
|
||
<ui-section-header title="举报原因" subtitle="必填" />
|
||
<view class="reason-grid">
|
||
<view
|
||
class="reason-item {{reportType === r.value ? 'active' : ''}}"
|
||
wx:for="{{reportReasons}}"
|
||
wx:key="value"
|
||
wx:for-item="r"
|
||
data-value="{{r.value}}"
|
||
bindtap="onReasonChange"
|
||
>
|
||
<text>{{r.label}}</text>
|
||
</view>
|
||
</view>
|
||
</view>
|
||
|
||
<!-- 补充说明 -->
|
||
<view wx:if="{{reportType}}" class="card">
|
||
<ui-section-header title="补充说明" subtitle="{{highRiskReason ? '高风险必填' : '选填'}}" />
|
||
<ui-textarea
|
||
value="{{description}}"
|
||
placeholder="请描述您遇到的情况,帮助工作人员核实..."
|
||
maxlength="500"
|
||
error="{{descError}}"
|
||
bind:input="onDescInput"
|
||
/>
|
||
</view>
|
||
|
||
<!-- 证据截图 -->
|
||
<view class="card">
|
||
<ui-section-header title="证据截图" subtitle="选填,最多9张" />
|
||
<view class="evidence-list">
|
||
<view
|
||
class="evidence-item"
|
||
wx:for="{{evidenceFiles}}"
|
||
wx:key="index"
|
||
data-url="{{item}}"
|
||
bindtap="previewImage"
|
||
>
|
||
<image src="{{item}}" mode="aspectFill" />
|
||
<view class="remove-btn" catchtap="removeImage" data-index="{{index}}">✕</view>
|
||
</view>
|
||
<view class="evidence-add" bindtap="chooseImage" wx:if="{{evidenceFiles.length < 9}}">
|
||
<text class="add-icon">+</text>
|
||
<text class="add-text">添加截图</text>
|
||
</view>
|
||
</view>
|
||
</view>
|
||
|
||
<button class="btn-submit" bindtap="submitReport" loading="{{submitting}}" disabled="{{!reportType}}">
|
||
提交举报
|
||
</button>
|
||
<text class="hint">提交后工作人员会尽快核实,不会向对方透露举报人信息</text>
|
||
|
||
<!-- 公益免费标识 -->
|
||
<view class="free-badge">
|
||
<text>本平台为公益服务,举报受理永久免费</text>
|
||
</view>
|
||
</view>
|
||
</view>
|