This commit is contained in:
王丹 2025-01-23 15:40:54 +08:00
parent 39fa0f2952
commit 6828375195
2 changed files with 70 additions and 54 deletions

View File

@ -4,30 +4,36 @@
<view class="create-container">
<u-form ref="formRef" :model="formData" :rules="rules">
<u-form-item label="方案名称" prop="scenarioName">
<u-input v-model="formData.scenarioName" :placeholder="rules.scenarioName[0].message" />
<u-form-item label="方案名称" prop="scenarioName" required>
<u-input border="none" v-model="formData.scenarioName" :placeholder="rules.scenarioName[0].message" />
</u-form-item>
<u-form-item label="总时长(h)" prop="irrigateTotalDuration">
<u-input v-model="formData.irrigateTotalDuration" @blur="inputChange($event,'irrigateTotalDuration')"
<u-line color="#D2D2D2"></u-line>
<u-form-item label="总时长(h)" prop="irrigateTotalDuration" required>
<u-input border="none" v-model="formData.irrigateTotalDuration" @blur="inputChange($event,'irrigateTotalDuration')"
:placeholder="rules.irrigateTotalDuration[0].message" />
</u-form-item>
<u-form-item label="轮灌组数" prop="groupNum">
<u-input v-model="formData.groupNum" :placeholder="rules.scenarioName[0].groupNum" />
<u-line color="#D2D2D2"></u-line>
<u-form-item label="轮灌组数" prop="groupNum" required>
<u-input border="none" v-model="formData.groupNum" :placeholder="rules.scenarioName[0].groupNum" />
</u-form-item>
<u-form-item label="自动调压" prop="isAutoAdjust">
<u-line color="#D2D2D2"></u-line>
<u-form-item label="自动调压" prop="isAutoAdjust" required>
<u-radio-group v-model="formData.isAutoAdjust" color="#39ac4f" :disabled="true">
<u-radio label="否" name="0" style="margin-right: 30px;" />
<u-radio label="是" name="1" />
</u-radio-group>
</u-form-item>
<u-form-item label="最小压力" prop="pressureMin">
<u-input v-model="formData.pressureMin" @blur="inputChange($event,'pressureMin')"
<u-line color="#D2D2D2"></u-line>
<u-form-item label="最小压力" prop="pressureMin" required>
<u-input border="none" v-model="formData.pressureMin" @blur="inputChange($event,'pressureMin')"
:placeholder="rules.pressureMin[0].groupNum" />
</u-form-item>
<u-form-item label="最大压力" prop="pressureMax">
<u-input v-model="formData.pressureMax" @blur="inputChange($event,'pressureMax')"
<u-line color="#D2D2D2"></u-line>
<u-form-item label="最大压力" prop="pressureMax" required>
<u-input border="none" v-model="formData.pressureMax" @blur="inputChange($event,'pressureMax')"
:placeholder="rules.pressureMax[0].groupNum" />
</u-form-item>
<u-line color="#D2D2D2"></u-line>
<view class="form-btn">
<u-button type="success" size="large" text="确定" @click="confirm" />
<u-button size="large" text="取消" @click="close" />

View File

@ -3,50 +3,58 @@
<custom-nav-bar :left="true" leftText="" @leftClick="" title="新增任务"></custom-nav-bar>
<view class="create-container">
<u-form ref="form" :model="formData" :rules="rules">
<u-form-item label="任务名称" prop="taskName">
<u-input v-model="formData.taskName" :placeholder="rules.taskName[0].message" />
<u-form-item label="任务名称" prop="taskName" required>
<u-input border="none" v-model="formData.taskName" :placeholder="rules.taskName[0].message" />
</u-form-item>
<u-form-item label="轮灌方案" prop="scenarioName">
<view @click="openPopup" style="border: 1px solid red;width: 100%;height: 35px;">
<u-line color="#D2D2D2"></u-line>
<u-form-item label="轮灌方案" prop="scenarioName" required>
<view @click="openPopup" style="line-height: 24px;width: 100%;">
<span v-if="formData.scenarioName != null && formData.scenarioName != ''">
{{formData.scenarioName}}
</span>
<span v-else>{{rules.scenarioName[0].message}}</span>
</view>
</u-form-item>
<u-form-item label="起始组" prop="startGroup">
<view @click="openPopup" style="border: 1px solid red;width: 100%;height: 35px;">
<u-line color="#D2D2D2"></u-line>
<u-form-item label="起始组" prop="startGroup" required>
<view @click="openPopup" style="line-height: 24px;width: 100%;">
<span v-if="formData.startGroup != null && formData.startGroup != ''">
{{formData.startGroup}}
</span>
<span v-else>{{rules.startGroup[0].message}}</span>
</view>
</u-form-item>
<u-form-item label="开始时间" prop="startTime">
<u-line color="#D2D2D2"></u-line>
<u-form-item label="开始时间" prop="startTime" required>
<!-- <u-datetime-picker hasInput :show="show" v-model="formData.startTime" mode="datetime" /> -->
</u-form-item>
<u-form-item label="轮灌组数" prop="groupNum">
<view @click="openPopup" style="border: 1px solid red;width: 100%;height: 35px;">
<u-line color="#D2D2D2"></u-line>
<u-form-item label="轮灌组数" prop="groupNum" required>
<view @click="openPopup" style="line-height: 24px;width: 100%;">
<span v-if="formData.groupNum != null && formData.groupNum != ''">
{{formData.groupNum}}
</span>
<span v-else>{{rules.groupNum[0].message}}</span>
</view>
</u-form-item>
<u-line color="#D2D2D2"></u-line>
<u-form-item label="自动调压" prop="isAutoAdjust">
<u-radio-group v-model="formData.isAutoAdjust" color="#39ac4f" :disabled="true">
<u-radio label="否" name="0" style="margin-right: 30px;" />
<u-radio label="是" name="1" />
</u-radio-group>
</u-form-item>
<u-line color="#D2D2D2"></u-line>
<u-form-item label="最小压力" prop="pressureMin">
<u-input v-model="formData.pressureMin" @blur="inputChange($event,'pressureMin')"
<u-input border="none" v-model="formData.pressureMin" @blur="inputChange($event,'pressureMin')"
:placeholder="rules.pressureMin[0].groupNum" disabled />
</u-form-item>
<u-line color="#D2D2D2"></u-line>
<u-form-item label="最大压力" prop="pressureMax">
<u-input v-model="formData.pressureMax" @blur="inputChange($event,'pressureMax')"
<u-input border="none" v-model="formData.pressureMax" @blur="inputChange($event,'pressureMax')"
:placeholder="rules.pressureMax[0].groupNum" disabled />
</u-form-item>
<u-line color="#D2D2D2"></u-line>
<view class="form-btn">
<u-button type="success" size="large" text="立即执行" @click="" />
<u-button size="large" text="取消" @click="close" />
@ -56,47 +64,49 @@
<!-- 左侧分组弹出层 -->
<u-popup mode="bottom" :show="showPop" @close="closePopup" :closeOnClickOverlay="true">
<view style="width: 95vw;padding-bottom: 46px;">
<view style="padding-bottom: 46px; background: #f3f3f3;">
<view class="text-intel">
<view>
<span>轮灌方案</span>
<span class="font-green">{{scenario.length}}</span>
</view>
</view>
<view class="card">
<uni-collapse>
<view v-for="item in scenario">
<uni-collapse-item title-border="none" :border="false" :show-arrow="false" :open="true">
<template v-slot:title>
<view class="cards-title">
<view>
<view class="text">{{item.scenarioName}}</view>
<view style="margin-left: 10px;">
<span>时长</span>
<span class="font-orange"
style="text-decoration: underline;">{{`${item.irrigateTotalDuration} h`}}</span>
<view style="max-height: 60vh; overflow-y: scroll;">
<view class="card">
<uni-collapse>
<view v-for="item in scenario">
<uni-collapse-item title-border="none" :border="false" :show-arrow="false" :open="true">
<template v-slot:title>
<view class="cards-title">
<view>
<view class="text">{{item.scenarioName}}</view>
<view style="margin-left: 10px;">
<span>时长</span>
<span class="font-orange"
style="text-decoration: underline;">{{`${item.irrigateTotalDuration} h`}}</span>
</view>
<view style="margin-left: 20px;">
<span>轮灌组数</span>
<span class="font-green"
style="text-decoration: underline;">{{item.groupNum}}</span>
</view>
</view>
<view style="margin-left: 20px;">
<span>轮灌组数</span>
<span class="font-green"
style="text-decoration: underline;">{{item.groupNum}}</span>
</view>
</template>
<view class="content">
<view class="cards-content" v-if="item.groupNum > 0">
<view class="greybar" v-for="group in item.groupNum">
<view>轮灌组<span>{{group}}</span></view>
<view style="text-align: center;" @click="selectScenario(item,group)">
<span>选择</span>
</view>
</view>
</view>
</view>
</template>
<view class="content">
<view class="cards-content" v-if="item.groupNum > 0">
<view class="greybar" v-for="group in item.groupNum">
<view>轮灌组<span>{{group}}</span></view>
<view style="text-align: center;" @click="selectScenario(item,group)">
<span>选择</span>
</view>
</view>
</view>
</view>
</uni-collapse-item>
</view>
</uni-collapse>
</uni-collapse-item>
</view>
</uni-collapse>
</view>
</view>
<view style="position: absolute;bottom: 0; width: 100%;">
<u-button type="success" size="large" text="关闭" @click="closePopup" />
@ -268,7 +278,7 @@
width: 80px !important;
}
}
.greybar>uni-view:first-child{color: #333;}
//
.popup-content {
padding: 20px;