Files
wechat-clock-mini/pages/plan-submit/plan-submit.wxml
王宏豪 d7fc8c8982 init
项目初始化
2026-09-03 16:49:59 +08:00

96 lines
3.8 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<view class="page">
<view class="head">
<view class="head-title">{{typeLabel}}<text wx:if="{{groupName}}"> · {{groupName}}</text> · {{periodKey}}</view>
<view class="head-sub" wx:if="{{message}}">{{message}}</view>
</view>
<scroll-view class="form-scroll" scroll-y>
<block wx:if="{{loading}}">
<view class="card skeleton-card">
<view class="sk sk-line w-90"></view>
<view class="sk sk-line w-80"></view>
<view class="sk sk-line w-100"></view>
<view class="sk-block"></view>
<view class="sk-block"></view>
</view>
<view class="card skeleton-card">
<view class="sk sk-line w-60"></view>
<view class="sk-block"></view>
</view>
</block>
<block wx:elif="{{loadError}}">
<view class="error-card">
<view class="error-icon">!</view>
<view class="error-text">{{loadError}}</view>
<button class="btn-retry btn-primary" hover-class="btn-hover" bindtap="onRetry">重新加载</button>
</view>
</block>
<block wx:else>
<view class="readonly-tip" wx:if="{{!canSubmit}}">{{message || '当前周期不可提交,仅可查看'}}</view>
<view class="card">
<textarea
class="content {{canSubmit ? '' : 'readonly'}}"
placeholder="写下计划内容"
value="{{content}}"
bindinput="onContentInput"
maxlength="1000"
disabled="{{!canSubmit}}"
></textarea>
<view class="char-count">{{content.length}}/1000</view>
<view class="upload-section">
<button
class="upload-btn"
bindtap="chooseImages"
hover-class="btn-hover"
disabled="{{canSubmit === false || uploading || attachments.length >= 4}}"
>+ {{uploading ? '上传中...' : '添加图片(' + attachments.length + '/4)'}}</button>
<view class="thumb-grid" wx:if="{{attachments.length}}">
<view class="thumb-item" wx:for="{{attachments}}" wx:key="*this">
<image class="thumb" src="{{attachmentThumbs[index]}}" mode="aspectFill" data-index="{{index}}" bindtap="previewImage"></image>
<view class="thumb-del" data-index="{{index}}" catchtap="removeImage">×</view>
</view>
</view>
</view>
<button
class="btn-primary btn-save"
bindtap="submit"
hover-class="btn-hover"
loading="{{submitting}}"
disabled="{{submitting || !canSubmit}}"
>{{!canSubmit ? '不可提交' : (checked ? '保存修改' : '保存计划')}}</button>
<view class="save-hint" wx:if="{{canSubmit && checked}}">保存将覆盖本周期已提交的计划</view>
</view>
<block wx:if="{{planType !== 'weekly'}}">
<view class="section-title">历史计划</view>
<view class="card history-card" wx:for="{{history}}" wx:key="id" wx:for-item="his">
<view class="history-head">{{his.period_key}} · <text class="{{his.status === '未完成' ? 'pending' : ''}}">{{his.status}}</text></view>
<view class="content-text" wx:if="{{his.content}}">{{his.content}}</view>
<view class="history-thumbs" wx:if="{{his.thumbSrcs.length}}">
<image
wx:for="{{his.thumbSrcs}}"
wx:for-item="thumbSrc"
wx:for-index="imgIndex"
wx:key="*this"
class="history-thumb"
src="{{thumbSrc}}"
mode="aspectFill"
data-id="{{his.id}}"
data-index="{{imgIndex}}"
bindtap="previewHistoryImage"
></image>
</view>
</view>
<view class="empty" wx:if="{{history.length === 0}}">暂无历史计划</view>
</block>
</block>
</scroll-view>
</view>