| | |
| | | <u-form-item |
| | | label="飞行器" |
| | | labelWidth="230rpx" |
| | | prop="aircraftId" |
| | | prop="spacecraftText" |
| | | :borderBottom="true" |
| | | required |
| | | ref="item2" |
| | | @click="isShowAircraftInfo = true" |
| | | > |
| | | <u-input |
| | | v-model="formParams.aircraftText" |
| | | v-model="formParams.spacecraftText" |
| | | disabled |
| | | disabledColor="#ffffff" |
| | | placeholder="请选择" |
| | |
| | | <u-form-item |
| | | label="飞手" |
| | | labelWidth="230rpx" |
| | | prop="pilotId" |
| | | prop="pilotText" |
| | | :borderBottom="true" |
| | | ref="item2" |
| | | required |
| | |
| | | <u-form-item |
| | | label="航线" |
| | | labelWidth="230rpx" |
| | | prop="routeId" |
| | | prop="selectedRouteId" |
| | | :borderBottom="true" |
| | | ref="item2" |
| | | required |
| | |
| | | <!-- <u-calendar :show="isShowTimeRange" mode="date" @confirm="onConfirmTimeRange" @close="isShowTimeRange = false" :close-on-click-overlay="true"></u-calendar> --> |
| | | <!-- <u-calendar :show="isShowTimeRange" mode="range" @confirm="onConfirmTimeRange" @close="isShowTimeRange = false" :close-on-click-overlay="true" :allow-same-day="true" :show-time="true" time-format="HH:mm:ss"></u-calendar> --> |
| | | <!-- 飞行器 --> |
| | | <u-picker |
| | | <!-- <u-picker |
| | | :show="isShowAircraftInfo" |
| | | :columns="[aircraftInfoList]" |
| | | keyName="label" |
| | | @confirm="onPickerAircraftInfo" |
| | | @cancel="isShowAircraftInfo = false" |
| | | /> |
| | | /> --> |
| | | <u-popup |
| | | :show="isShowAircraftInfo" |
| | | mode="bottom" |
| | | round="20" |
| | | @close="isShowAircraftInfo = false" |
| | | > |
| | | <scroll-view scroll-y> |
| | | <view class="select-header"> |
| | | <view>请选择飞行器</view> |
| | | <view class="select-header-btn"> |
| | | <view class="cancel-btn" @click="isShowAircraftInfo = false">取消</view> |
| | | <view @click="onPickerAircraftInfo">确定</view> |
| | | </view> |
| | | </view> |
| | | <view class="select-content"> |
| | | <up-checkbox-group |
| | | v-model="formParams.spacecraftId" |
| | | placement="column" |
| | | @change="checkboxChange" |
| | | > |
| | | <up-checkbox |
| | | :customStyle="{marginBottom: '8px'}" |
| | | v-for="(item, index) in aircraftInfoList" |
| | | :key="item.id" |
| | | :label="item.label" |
| | | :name="item.value" |
| | | > |
| | | </up-checkbox> |
| | | </up-checkbox-group> |
| | | </view> |
| | | </scroll-view> |
| | | </u-popup> |
| | | <!-- 飞手 --> |
| | | <u-picker |
| | | <!-- <u-picker |
| | | :show="isShowPilotInfo" |
| | | :columns="[pilotInfoList]" |
| | | keyName="label" |
| | | @confirm="onPickerPilotInfo" |
| | | @cancel="isShowPilotInfo = false" |
| | | /> |
| | | /> --> |
| | | <u-popup |
| | | :show="isShowPilotInfo" |
| | | mode="bottom" |
| | | round="20" |
| | | @close="isShowPilotInfo = false" |
| | | > |
| | | <scroll-view scroll-y> |
| | | <view class="select-header"> |
| | | <view>请选择飞手</view> |
| | | <view class="select-header-btn"> |
| | | <view class="cancel-btn" @click="isShowPilotInfo = false">取消</view> |
| | | <view @click="onPickerPilotInfo">确定</view> |
| | | </view> |
| | | </view> |
| | | <view class="select-content"> |
| | | <up-checkbox-group |
| | | v-model="formParams.pilotId" |
| | | placement="column" |
| | | @change="checkboxPilotChange" |
| | | > |
| | | <up-checkbox |
| | | :customStyle="{marginBottom: '8px'}" |
| | | v-for="(item, index) in pilotInfoList" |
| | | :key="item.id" |
| | | :label="item.label" |
| | | :name="item.value" |
| | | > |
| | | </up-checkbox> |
| | | </up-checkbox-group> |
| | | </view> |
| | | </scroll-view> |
| | | </u-popup> |
| | | <!-- 空域 --> |
| | | <u-picker |
| | | :show="isShowAirspaceInfo" |
| | |
| | | flightStartTime: '', // 飞行活动开始时间 |
| | | flightEndTime: '', // 飞行活动结束时间 |
| | | weatherCondition: '', // 气象条件 |
| | | spacecraftId: '', // 航天器id |
| | | spacecraftId: [], // 航天器id |
| | | spacecraftText: '', // 航天器文本 |
| | | pilotId: '', // 飞手id |
| | | pilotId: [], // 飞手id |
| | | pilotText: '', // 飞手文本 |
| | | airspaceId: '', // 空域id |
| | | airspaceText: '', // 空域文本 |
| | | routeId: '', // 航线id |
| | | selectedRouteId: '', // 航线id |
| | | routeText: '', // 航线文本 |
| | | }) |
| | | const rules = ref({ |
| | |
| | | endTime: [ |
| | | { required: true, message: '请选择飞行活动结束时间', trigger: 'change' } |
| | | ], |
| | | spacecraftId: [ |
| | | spacecraftText: [ |
| | | { required: true, message: '请选择飞行器', trigger: 'change' } |
| | | ], |
| | | pilotId: [ |
| | | pilotText: [ |
| | | { required: true, message: '请选择飞手', trigger: 'change' } |
| | | ], |
| | | airspaceId: [ |
| | | { required: true, message: '请选择空域', trigger: 'change' } |
| | | ], |
| | | routeId: [ |
| | | selectedRouteId: [ |
| | | { required: true, message: '请选择航线', trigger: 'change' } |
| | | ], |
| | | }) |
| | |
| | | const endTime = ref(Date.now()); // 设置默认值为当前时间戳 |
| | | |
| | | const onConfirmStartTime = (e) => { |
| | | formParams.value.flightStartTime = dayjs(e.value).format('YYYY-MM-DD HH:mm') |
| | | formParams.value.flightStartTime = dayjs(e.value).format('YYYY-MM-DD HH:mm:ss') |
| | | isShowStartTime.value = false |
| | | } |
| | | const onConfirmEndTime = (e) => { |
| | | formParams.value.flightEndTime = dayjs(e.value).format('YYYY-MM-DD HH:mm') |
| | | formParams.value.flightEndTime = dayjs(e.value).format('YYYY-MM-DD HH:mm:ss') |
| | | isShowEndTime.value = false |
| | | } |
| | | |
| | |
| | | })) |
| | | }) |
| | | } |
| | | const onPickerAircraftInfo = (e) => { |
| | | const selected = e.value[0] |
| | | formParams.value.aircraftId = selected.value |
| | | formParams.value.aircraftText = selected.label |
| | | // const onPickerAircraftInfo = (e) => { |
| | | // const selected = e.value[0] |
| | | // formParams.value.spacecraftId = selected.value |
| | | // formParams.value.aircraftText = selected.label |
| | | // isShowAircraftInfo.value = false |
| | | // } |
| | | function checkboxChange(val) { |
| | | formParams.value.spacecraftId = val.join(',') |
| | | formParams.value.spacecraftText = aircraftInfoList.value.filter(item => val.includes(item.value)).map(item => item.label).join(',') |
| | | } |
| | | const onPickerAircraftInfo = () => { |
| | | isShowAircraftInfo.value = false |
| | | } |
| | | // 获取飞手信息 |
| | |
| | | })) |
| | | }) |
| | | } |
| | | function checkboxPilotChange(val) { |
| | | formParams.value.pilotId = val.join(',') |
| | | formParams.value.pilotText = pilotInfoList.value.filter(item => val.includes(item.value)).map(item => item.label).join(',') |
| | | } |
| | | const onPickerPilotInfo = (e) => { |
| | | const selected = e.value[0] |
| | | formParams.value.pilotId = selected.value |
| | | formParams.value.pilotText = selected.label |
| | | // const selected = e.value[0] |
| | | // formParams.value.pilotId = selected.value |
| | | // formParams.value.pilotText = selected.label |
| | | isShowPilotInfo.value = false |
| | | } |
| | | // 获取空域信息 |
| | |
| | | } |
| | | const onPickerFlightRouteInfo = (e) => { |
| | | const selected = e.value[0] |
| | | formParams.value.routeId = selected.value |
| | | formParams.value.selectedRouteId = selected.value |
| | | formParams.value.routeText = selected.label |
| | | isShowFlightRouteInfo.value = false |
| | | } |
| | |
| | | margin-right: 8rpx; |
| | | } |
| | | } |
| | | |
| | | .uni-scroll-view { |
| | | display: flex; |
| | | flex-direction: column; |
| | | } |
| | | |
| | | .select-header { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | padding: 20rpx 20rpx; |
| | | font-size: 32rpx; |
| | | color: #222324; |
| | | .select-header-btn { |
| | | display: flex; |
| | | font-size: 28rpx; |
| | | color: #1D6FE9; |
| | | .cancel-btn { |
| | | color: #86909C; |
| | | margin-right: 20rpx; |
| | | } |
| | | } |
| | | } |
| | | |
| | | .select-content { |
| | | height: 400rpx; |
| | | text-align: center; |
| | | padding: 20rpx 20rpx; |
| | | } |
| | | } |
| | | </style> |