weixinxiaochengxu/pages/details/details.wxml

115 lines
4.5 KiB
Plaintext

<!-- 数据详细信息 -->
<view class="container">
<!-- 时间范围选择 -->
<view class="card card-filter">
<view class="mode-tabs">
<view class="mode-tab {{viewMode === 'month' ? 'mode-tab--active' : ''}}" bindtap="onSwitchMode" data-mode="month">按月</view>
<view class="mode-tab {{viewMode === 'year' ? 'mode-tab--active' : ''}}" bindtap="onSwitchMode" data-mode="year">按年</view>
<view class="mode-tab {{viewMode === 'custom' ? 'mode-tab--active' : ''}}" bindtap="onSwitchMode" data-mode="custom">自定义</view>
</view>
<view wx:if="{{viewMode === 'month'}}" class="filter-row">
<picker mode="date" fields="month" value="{{filterMonth}}" bindchange="onMonthChange">
<view class="picker-display">
<text>{{filterMonth}}</text>
<text class="picker-arrow">&#x25BC;</text>
</view>
</picker>
</view>
<view wx:if="{{viewMode === 'year'}}" class="filter-row">
<picker mode="date" fields="year" value="{{filterYear}}" bindchange="onYearChange">
<view class="picker-display">
<text>{{filterYear}}</text>
<text class="picker-arrow">&#x25BC;</text>
</view>
</picker>
</view>
<view wx:if="{{viewMode === 'custom'}}" class="filter-row custom-range">
<picker mode="date" fields="month" value="{{customStart}}" bindchange="onCustomStartChange">
<view class="picker-display picker-display--sm">
<text class="picker-label-sm">从</text>
<text>{{customStart}}</text>
</view>
</picker>
<text class="range-sep">至</text>
<picker mode="date" fields="month" value="{{customEnd}}" bindchange="onCustomEndChange">
<view class="picker-display picker-display--sm">
<text>{{customEnd}}</text>
</view>
</picker>
</view>
</view>
<!-- 数据表格 -->
<view class="card card-table" wx:if="{{tableData.length > 0}}">
<view class="card-title">数据明细(共{{tableData.length}}条)</view>
<scroll-view scroll-x="{{true}}" enable-flex class="table-scroll">
<view class="table" style="min-width: {{items.length * 130 + 260}}rpx;">
<!-- 表头 -->
<view class="table-row table-row--head">
<view class="table-cell table-cell--date">日期</view>
<block wx:for="{{items}}" wx:key="*this">
<view class="table-cell">{{item}}</view>
</block>
<view class="table-cell table-cell--action">删除</view>
<view class="table-cell table-cell--action">修改</view>
</view>
<!-- 数据行 -->
<view class="table-row" wx:for="{{tableData}}" wx:key="rowKey">
<view class="table-cell table-cell--date">{{item.rowKey}}</view>
<block wx:for="{{items}}" wx:key="*this" wx:for-item="fi" wx:for-index="fidx">
<view class="table-cell table-cell--value">
<text wx:if="{{item.values[fidx] !== undefined}}">{{item.values[fidx]}}</text>
<text wx:else class="table-empty">-</text>
</view>
</block>
<view class="table-cell table-cell--action">
<text class="btn-del-text" bindtap="onDeleteRow" data-date="{{item.rowKey}}">删除</text>
</view>
<view class="table-cell table-cell--action">
<text class="btn-edit-text" bindtap="onEditRow" data-date="{{item.rowKey}}">修改</text>
</view>
</view>
</view>
</scroll-view>
</view>
<view class="card" wx:else>
<view class="empty-hint">该时间范围内暂无数据</view>
</view>
</view>
<!-- ==== 修改弹窗 ==== -->
<view wx:if="{{showEditModal}}" class="modal-wrap" catchtap="cancelEdit">
<view class="modal-box" catchtap="">
<view class="modal-title">修改记录</view>
<view class="modal-date">日期:{{editingDate}}</view>
<!-- 各项目数据 -->
<scroll-view scroll-y="{{true}}" class="modal-scroll">
<view class="modal-row" wx:for="{{items}}" wx:key="*this">
<view class="modal-row-label">
<text>{{item}}</text>
</view>
<view class="modal-row-input">
<input
class="modal-input"
type="digit"
placeholder="无数据"
value="{{editValues[item] || ''}}"
data-item="{{item}}"
bindinput="onEditValueInput"
/>
</view>
</view>
</scroll-view>
<view class="btn-row">
<button class="btn-cancel" bindtap="cancelEdit">取消</button>
<button class="btn-save" bindtap="saveEdit">保存</button>
</view>
</view>
</view>