管灌系统农户端微信小程序(嘉峪关应用)
zuoxiao
2025-04-07 5d3ed12a593020ec7fd9b5af50991f68b191e649
pages/createIrrigation/createIrrigation.wxml
@@ -8,13 +8,31 @@
  </view>
  <!-- 灌溉开始时间 -->
  <view class="form-item" bindtap="showTimePicker">
    <view class="form-label">灌溉开始时间</view>
    <view class="form-input time-input">
  <view class="form-item">
    <view class="form-label">
      灌溉开始时间(选填)
      <image
        class="info-icon"
        src="/images/info.svg"
        mode="aspectFit"
        bindtap="showTimeInfo"
      ></image>
    </view>
    <view class="form-input time-input" bindtap="showTimePicker">
      <view class="time-text {{startTime ? '' : 'placeholder'}}">{{startTime || '请选择灌溉开始时间'}}</view>
      <image class="arrow-icon" src="/images/arrow-right.svg" mode="aspectFit"></image>
    </view>
  </view>
  <!-- 时间提示弹窗 -->
  <t-dialog
    visible="{{timeInfoVisible}}"
    title="时间设置说明"
    content="• 设置两小时后的灌溉时间:\n在此处选择具体的开始时间\n\n• 设置两小时内的灌溉时间:\n创建完成后点击发布即可立即开始灌溉"
    confirmBtn="我知道了"
    bind:confirm="onTimeInfoConfirm"
    bind:cancel="onTimeInfoConfirm"
  />
  <!-- 选择项目 -->
  <view class="form-item" bindtap="showProjectPicker">
@@ -36,26 +54,39 @@
        </view>
      </view>
    </view>
    <scroll-view scroll-y="true" class="group-list">
      <block wx:for="{{selectedProject.groups}}" wx:key="id" wx:for-item="group" wx:for-index="groupIndex">
        <view class="group-item {{group.selected ? 'selected' : ''}}" bindtap="navigateToGroupDetail" data-group-index="{{groupIndex}}">
          <view class="group-info">
            <view class="group-name">{{group.name}}</view>
    <scroll-view
      scroll-y="true"
      class="group-list"
      refresher-enabled="{{true}}"
      refresher-triggered="{{isRefreshing}}"
      bindrefresherrefresh="onGroupListRefresh"
    >
      <block wx:if="{{selectedProject.groups && selectedProject.groups.length > 0}}">
        <block wx:for="{{selectedProject.groups}}" wx:key="id" wx:for-item="group" wx:for-index="groupIndex">
          <view class="group-item {{group.selected ? 'selected' : ''}}" bindtap="navigateToGroupDetail" data-group-index="{{groupIndex}}">
            <view class="group-info">
              <view class="group-name">{{group.name || '未命名轮灌组'}}  (共{{group.intakeCount}}个取水口)</view>
            </view>
            <view class="group-duration">
              <input
                class="duration-input"
                type="number"
                value="{{group.duration}}"
                bindinput="onDurationInput"
                data-group-index="{{groupIndex}}"
                placeholder="0"
                catchtap="stopPropagation"
              />
              <text class="duration-unit">分钟</text>
            </view>
          </view>
          <view class="group-duration">
            <input
              class="duration-input"
              type="number"
              value="{{group.duration}}"
              bindinput="onDurationInput"
              data-group-index="{{groupIndex}}"
              placeholder="0"
              catchtap="stopPropagation"
            />
            <text class="duration-unit">分钟</text>
          </view>
        </view>
        </block>
      </block>
      <view wx:else class="empty-container">
        <image class="empty-image" src="/images/empty.png" mode="aspectFit"></image>
        <view class="empty-text">暂无轮灌组数据</view>
        <view class="empty-text">请刷新或稍后再试</view>
      </view>
    </scroll-view>
  </view>
@@ -70,21 +101,29 @@
    visible="{{timePickerVisible}}"
    mode="{{['date', 'minute']}}"
    value="{{pickerValue}}"
    start="{{pickerValue}}"
    format="YYYY-MM-DD HH:mm"
    bindconfirm="onTimePickerConfirm"
    bindcancel="onTimePickerCancel"
    catchtouchmove="stopPropagation"
    z-index="{{1000}}"
  />
  <!-- 项目选择器弹窗 -->
  <t-picker
    title="选择项目"
    visible="{{projectPickerVisible}}"
    value="{{projectPickerValue}}"
    title="选择项目"
    cancelBtn="取消"
    confirmBtn="确认"
    bindconfirm="onProjectPickerConfirm"
    bindcancel="onProjectPickerCancel"
    bind:confirm="onProjectPickerConfirm"
    bind:cancel="onProjectPickerCancel"
    bind:touchmove="stopPropagation"
    bind:touchstart="stopPropagation"
    bind:touchend="stopPropagation"
    z-index="{{1000}}"
  >
    <t-picker-item options="{{projectOptions}}" />
    <t-picker-item options="{{projectOptions}}" value="{{projectPickerValue}}" />
  </t-picker>
</view>