|  |  |  | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!-- 中间列表 - 使用scroll-view实现下拉刷新 --> | 
|---|
|  |  |  | <scroll-view class="scroll-view" scroll-x="false" scroll-y="true" refresher-enabled="{{isRefreshing==false?true:false}}" refresher-threshold="50" bindrefresherrefresh="onPullDownRefresh" refresher-triggered="{{isWXRefreshing}}"> | 
|---|
|  |  |  | <scroll-view class="scroll-view" | 
|---|
|  |  |  | scroll-x="false" | 
|---|
|  |  |  | scroll-y="true" | 
|---|
|  |  |  | refresher-enabled="{{isRefreshing==false?true:false}}" | 
|---|
|  |  |  | refresher-threshold="50" | 
|---|
|  |  |  | bindrefresherrefresh="onPullDownRefresh" | 
|---|
|  |  |  | refresher-triggered="{{isWXRefreshing}}" | 
|---|
|  |  |  | lower-threshold="100" | 
|---|
|  |  |  | bindscrolltolower="{{currentTab === 1 ? 'onReachBottom' : ''}}" | 
|---|
|  |  |  | enhanced="{{true}}" | 
|---|
|  |  |  | id="scrollView"> | 
|---|
|  |  |  | <view wx:if="{{isRefreshing}}" class="refresh-view"> | 
|---|
|  |  |  | <view class="dot"></view> | 
|---|
|  |  |  | <view class="dot"></view> | 
|---|
|  |  |  | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="scroll-bg"> | 
|---|
|  |  |  | <block wx:if="{{currentList.length > 0}}"> | 
|---|
|  |  |  | <!-- 统一显示所有列表项,不再按状态分组 --> | 
|---|
|  |  |  | <view class="list-item" wx:for="{{currentList}}" wx:key="id"> | 
|---|
|  |  |  | <view class="item-header"> | 
|---|
|  |  |  | <view class="info-row title-row"> | 
|---|
|  |  |  | <view class="info-label">编号:</view> | 
|---|
|  |  |  | <view class="info-value">{{item.title}}</view> | 
|---|
|  |  |  | <view class="list-item" wx:for="{{currentList}}" wx:key="id" bindtap="onItemTap" data-id="{{item.id}}" data-status="{{item.status}}"> | 
|---|
|  |  |  | <!-- 状态标签 --> | 
|---|
|  |  |  | <view class="status-tag {{item.status === '1' ? 'draft' : item.status === '2' ? 'published' : item.status === '3' ? 'executing' : item.status === '5' ? 'terminated' : 'completed'}}"> | 
|---|
|  |  |  | {{item.status === '1' ? '草稿' : item.status === '2' ? '未执行' : item.status === '3' ? '执行中' : item.status === '5' ? '已终止' : '已完成'}} | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!-- 主要内容区 --> | 
|---|
|  |  |  | <view class="item-content"> | 
|---|
|  |  |  | <!-- 标题区域 --> | 
|---|
|  |  |  | <view class="item-header"> | 
|---|
|  |  |  | <view class="title-section"> | 
|---|
|  |  |  | <view class="plan-title">{{item.title}}</view> | 
|---|
|  |  |  | <view class="project-name">{{item.projectName}}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <!-- 根据状态显示不同的图标 --> | 
|---|
|  |  |  | <view class="item-status"> | 
|---|
|  |  |  | <block wx:if="{{item.status === '已发布'}}"> | 
|---|
|  |  |  | <image class="status-icon" src="/images/published-icon.svg" mode="aspectFit"></image> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!-- 信息区域 --> | 
|---|
|  |  |  | <view class="info-section"> | 
|---|
|  |  |  | <!-- 草稿状态(1)时横向排列,其他状态纵向排列 --> | 
|---|
|  |  |  | <view class="info-grid {{item.status === '1' ? '' : 'vertical-layout'}} {{currentTab === 1 ? 'history-grid' : ''}}"> | 
|---|
|  |  |  | <view class="info-item"> | 
|---|
|  |  |  | <view class="info-icon"> | 
|---|
|  |  |  | <image src="/images/time-icon.svg" mode="aspectFit"></image> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="info-content"> | 
|---|
|  |  |  | <view class="info-label">灌溉时间</view> | 
|---|
|  |  |  | <view class="info-value">{{(item.planStartTime ? item.planStartTime : '手动发布') + (item.planStopTime ? ' - ' + item.planStopTime : '')}}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="info-item"> | 
|---|
|  |  |  | <view class="info-icon duration-icon"> | 
|---|
|  |  |  | <image src="/images/hourglass.svg" mode="aspectFit"></image> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="info-content"> | 
|---|
|  |  |  | <view class="info-label">灌溉时长</view> | 
|---|
|  |  |  | <view class="info-value">{{item.duration}}分钟</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!-- 操作按钮区域 --> | 
|---|
|  |  |  | <view class="action-section" catchtap="stopPropagation" wx:if="{{item.status === '1'||item.status === '2'||item.status === '3'}}"> | 
|---|
|  |  |  | <block wx:if="{{item.status === '1'}}"> | 
|---|
|  |  |  | <view class="action-buttons"> | 
|---|
|  |  |  | <button class="action-button delete-button" hover-class="delete-button-hover" bindtap="onDelete" data-id="{{item.id}}"> | 
|---|
|  |  |  | <image src="/images/delete_bt.svg" mode="aspectFit"></image> | 
|---|
|  |  |  | <text>删除</text> | 
|---|
|  |  |  | </button> | 
|---|
|  |  |  | <button class="action-button publish-button" hover-class="publish-button-hover" bindtap="onPublish" data-id="{{item.id}}"> | 
|---|
|  |  |  | <image src="/images/publish-icon.svg" mode="aspectFit"></image> | 
|---|
|  |  |  | <text>发布</text> | 
|---|
|  |  |  | </button> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </block> | 
|---|
|  |  |  | <block wx:elif="{{item.status === '执行中'}}"> | 
|---|
|  |  |  | <image class="status-icon" src="/images/progress.svg" mode="aspectFit"></image> | 
|---|
|  |  |  | <block wx:if="{{item.status === '2'}}"> | 
|---|
|  |  |  | <view class="action-buttons"> | 
|---|
|  |  |  | <button class="action-button stop-button" hover-class="stop-button-hover" bindtap="onStop" data-id="{{item.id}}"> | 
|---|
|  |  |  | <image src="/images/stop-icon.svg" mode="aspectFit"></image> | 
|---|
|  |  |  | <text>终止</text> | 
|---|
|  |  |  | </button> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </block> | 
|---|
|  |  |  | <block wx:elif="{{item.status === '未发布'}}"> | 
|---|
|  |  |  | <text>{{item.status}}</text> | 
|---|
|  |  |  | <block wx:if="{{item.status === '3'}}"> | 
|---|
|  |  |  | <view class="action-buttons"> | 
|---|
|  |  |  | <button class="action-button stop-button" hover-class="stop-button-hover" bindtap="onStop" data-id="{{item.id}}"> | 
|---|
|  |  |  | <image src="/images/stop-icon.svg" mode="aspectFit"></image> | 
|---|
|  |  |  | <text>终止</text> | 
|---|
|  |  |  | </button> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </block> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="item-info"> | 
|---|
|  |  |  | <view class="info-row"> | 
|---|
|  |  |  | <view class="info-label">灌溉时间:</view> | 
|---|
|  |  |  | <view class="info-value">{{item.irrigationTime}}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <!-- 仅在执行中状态显示额外信息 --> | 
|---|
|  |  |  | <block wx:if="{{item.status === '执行中'}}"> | 
|---|
|  |  |  | <view class="info-row irrigated-row"> | 
|---|
|  |  |  | <view class="info-label">已灌溉时间:</view> | 
|---|
|  |  |  | <view class="info-value-time">{{item.irrigatedTime}}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="info-row irrigated-row"> | 
|---|
|  |  |  | <view class="info-label">已灌溉轮组:</view> | 
|---|
|  |  |  | <view class="info-value-time">{{item.irrigatedGroups}}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </block> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!-- 加载更多提示 - 仅在历史计划标签页显示 --> | 
|---|
|  |  |  | <view wx:if="{{currentTab === 1}}" class="loading-more-container"> | 
|---|
|  |  |  | <view wx:if="{{loadingMore}}" class="loading-more"> | 
|---|
|  |  |  | <view class="loading-dot"></view> | 
|---|
|  |  |  | <view class="loading-dot"></view> | 
|---|
|  |  |  | <view class="loading-dot"></view> | 
|---|
|  |  |  | <text>加载中...</text> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="item-actions"> | 
|---|
|  |  |  | <!-- 根据状态显示不同的按钮 --> | 
|---|
|  |  |  | <block wx:if="{{item.status === '未发布'}}"> | 
|---|
|  |  |  | <button class="action-button publish-button" hover-class="publish-button-hover" bindtap="onPublish" data-id="{{item.id}}">发布</button> | 
|---|
|  |  |  | </block> | 
|---|
|  |  |  | <block wx:if="{{item.status === '执行中' || item.status === '已发布'}}"> | 
|---|
|  |  |  | <button class="action-button stop-button" hover-class="stop-button-hover" bindtap="onStop" data-id="{{item.id}}">终止</button> | 
|---|
|  |  |  | </block> | 
|---|
|  |  |  | <block wx:if="{{item.status === '已发布'}}"> | 
|---|
|  |  |  | <button class="action-button execute-button" hover-class="execute-button-hover" bindtap="onExecute" data-id="{{item.id}}">立即执行</button> | 
|---|
|  |  |  | </block> | 
|---|
|  |  |  | <view wx:elif="{{!hasMoreData && completedList.length > 0}}" class="no-more-data"> | 
|---|
|  |  |  | <text>— 已加载全部数据 —</text> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </block> | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!-- 底部新建按钮 --> | 
|---|
|  |  |  | <view class="bottom-button"> | 
|---|
|  |  |  | <button class="add-button" hover-class="add-button-hover" bindtap="onAddIrrigation">创建灌溉计划</button> | 
|---|
|  |  |  | <button class="add-button" hover-class="add-button-hover" bindtap="onAddIrrigation"> | 
|---|
|  |  |  | <image src="/images/add-icon.svg" mode="aspectFit"></image> | 
|---|
|  |  |  | <text>创建灌溉计划</text> | 
|---|
|  |  |  | </button> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|