| | |
| | | ref="item1" |
| | | > |
| | | <u-input |
| | | v-model="formParams.weatherCondition" |
| | | v-model="formParams.weatherCondition" |
| | | readonly |
| | | border="none" |
| | | ></u-input> |
| | |
| | | <u-form-item |
| | | label="航线" |
| | | labelWidth="230rpx" |
| | | prop="routeId" |
| | | prop="selectedRouteId" |
| | | :borderBottom="true" |
| | | ref="item2" |
| | | > |
| | | <u-input |
| | | v-model="formParams.routeId" |
| | | v-model="formParams.selectedRouteId" |
| | | readonly |
| | | border="none" |
| | | ></u-input> |
| | | </u-form-item> |
| | | <u-popup :show="applyShow" :round="10" mode="center" @close="close" :closeable="true" :mask-close-able="true"> |
| | | <u-form labelPosition="top" :model="formParams" :rules="rules" ref="formRef"> |
| | | <u-form labelPosition="top" :model="formParamsTime" :rules="rulesTime" ref="formTimeRef"> |
| | | <u-form-item |
| | | label="计划申请起飞时间" |
| | | labelWidth="260rpx" |
| | | prop="actualTakeoffTime" |
| | | prop="takeOffStartTime" |
| | | :borderBottom="true" |
| | | ref="item1" |
| | | @click="isShowStartTime = true" |
| | | required |
| | | > |
| | | <u-input v-model="formParams.actualTakeoffTime" border="none" placeholder="请选择" suffixIcon="calendar"></u-input> |
| | | <u-input v-model="formParamsTime.takeOffStartTime" border="none" placeholder="请选择" suffixIcon="calendar"></u-input> |
| | | </u-form-item> |
| | | <u-form-item |
| | | label="计划申请结束时间" |
| | | labelWidth="260rpx" |
| | | prop="actualLandingTime" |
| | | prop="takeOffEndTime" |
| | | :borderBottom="true" |
| | | ref="item1" |
| | | @click="isShowEndTime = true" |
| | | required |
| | | > |
| | | <u-input v-model="formParams.actualLandingTime" border="none" placeholder="请选择" suffixIcon="calendar"></u-input> |
| | | <u-input v-model="formParamsTime.takeOffEndTime" border="none" placeholder="请选择" suffixIcon="calendar"></u-input> |
| | | </u-form-item> |
| | | |
| | | <u-datetime-picker |
| | |
| | | @cancel="isShowEndTime = false"> |
| | | </u-datetime-picker> |
| | | </u-form> |
| | | <u-button @click="submitApply" color="#1D6FE9">确定</u-button> |
| | | <u-button @click="submitSure" color="#1D6FE9">确定</u-button> |
| | | </u-popup> |
| | | </u-form> |
| | | <u-button v-if="formParams.planApprovalStatus === '99'" @click="submitApply" color="#1D6FE9">申请</u-button> |
| | | <u-button v-if="formParams.planApprovalStatus === '99' && (formParams.planStatus === '0')" @click="submitApply" color="#1D6FE9">申请</u-button> |
| | | </view> |
| | | </template> |
| | | <script setup> |
| | |
| | | aircraftInfoPageInfoOfMyApi, |
| | | pilotInfoPageInfoOfMyApi, |
| | | flightAirspacePageInfoApi, |
| | | flightApprovalApi |
| | | } from '@/api/index' |
| | | import { ref, computed, onMounted } from 'vue' |
| | | import dayjs from 'dayjs' |
| | |
| | | const appStore = useAppStore() |
| | | |
| | | const formRef = ref(null); |
| | | const formTimeRef = ref(null); |
| | | const formParams = ref({}) |
| | | const rules = ref({}) |
| | | const formParamsTime = ref({ |
| | | id: '', |
| | | takeOffStartTime: '', |
| | | takeOffEndTime: '', |
| | | planStatus: '1', |
| | | }) |
| | | const rulesTime = ref({ |
| | | takeOffStartTime: [{ required: true, message: '请选择计划申请起飞时间', trigger: ['blur'] }], |
| | | takeOffEndTime: [{ required: true, message: '请选择计划申请结束时间', trigger: ['blur'] }], |
| | | }) |
| | | |
| | | // 任务类型 |
| | | const actionsFlightTaskType = ref(appStore.getTaskType) |
| | | |
| | |
| | | const endTime = ref(Date.now()); // 设置默认值为当前时间戳 |
| | | |
| | | const onConfirmStartTime = (e) => { |
| | | formParams.value.actualTakeoffTime = dayjs(e.value).format('YYYY-MM-DD HH:mm') |
| | | formParamsTime.value.takeOffStartTime = dayjs(e.value).format('YYYY-MM-DD HH:mm:ss') |
| | | isShowStartTime.value = false |
| | | } |
| | | const onConfirmEndTime = (e) => { |
| | | formParams.value.actualLandingTime = dayjs(e.value).format('YYYY-MM-DD HH:mm') |
| | | formParamsTime.value.takeOffEndTime = dayjs(e.value).format('YYYY-MM-DD HH:mm:ss') |
| | | isShowEndTime.value = false |
| | | } |
| | | |
| | |
| | | applyShow.value = true |
| | | } |
| | | |
| | | async function submitSure() { |
| | | // 校验时间 |
| | | await formTimeRef.value.validate() |
| | | formParamsTime.value.id = formParams.value.id |
| | | flightApprovalApi(formParamsTime.value).then(res => { |
| | | if (res.data.code === 200) { |
| | | uni.showToast({ |
| | | title: '操作成功', |
| | | icon: 'success', |
| | | }) |
| | | // 跳转申请列表页 |
| | | uni.navigateTo({ |
| | | url: '/subPackages/flightApplication/index', |
| | | }) |
| | | } |
| | | }) |
| | | } |
| | | |
| | | function close() { |
| | | // 清空时间 |
| | | formParams.value.actualTakeoffTime = '' |
| | | formParams.value.actualLandingTime = '' |
| | | formParamsTime.value.takeOffStartTime = '' |
| | | formParamsTime.value.takeOffEndTime = '' |
| | | applyShow.value = false |
| | | } |
| | | |
| | |
| | | flightPlanDetailsApi(options.id).then(res => { |
| | | // return |
| | | const result = res.data.data |
| | | console.log(result, '7777') |
| | | formParams.value = result |
| | | // 字典 |
| | | formParams.value.flightRule = actionsFlightRule.value.find(item => item.dictValue === result.flightRule)?.dictLabel || '无' |
| | |
| | | formParams.value.planType = actionsPlanType.value.find(item => item.dictValue === result.planType)?.dictLabel || '无' |
| | | formParams.value.flightTaskType = actionsFlightTaskType.value.find(item => item.dictValue === result.flightTaskType)?.dictLabel || '无' |
| | | // 数据 |
| | | formParams.value.routeId = result?.routeInfo?.name || '无' |
| | | // 航线 |
| | | formParams.value.selectedRouteId = result?.routeInfo?.name || '无' |
| | | // 空域 |
| | | formParams.value.airspaceId = result?.airspaceInfo?.taskName || '无' |
| | | formParams.value.aircraftId = result?.airspaceInfo?.aircraftInfoList?.map(item => item.name).join(',') || '无' |
| | | // 飞行器 |
| | | formParams.value.aircraftId = result?.aircraftInfoList?.map(item => item.name).join(',') || '无' |
| | | // 飞手 |
| | | formParams.value.pilotId = result?.operatorInfoList?.map(item => item.name).join(',') || '无' |
| | | |
| | | |
| | | // 日期赋值 |
| | | formParamsTime.value.takeOffStartTime = dayjs(result.flightStartTime).format('YYYY-MM-DD HH:mm:ss') |
| | | formParamsTime.value.takeOffEndTime = dayjs(result.flightEndTime).format('YYYY-MM-DD HH:mm:ss') |
| | | |
| | | }) |
| | | }) |
| | | onMounted(() => { |