From 262867ad919d0a85fd42e9dd5d9fb2e1c8bb7e3b Mon Sep 17 00:00:00 2001 From: jihongshun <1151753686@qq.com> Date: 星期四, 28 八月 2025 10:01:53 +0800 Subject: [PATCH] 创建项目全区配置参数 --- src/views/system/shootPoint/components/shootPointDialog.vue | 11 +- src/utils/components/init-map.vue | 1 src/views/system/project/components/addPorjectDialog.vue | 176 ++++++++++++++++++++++++++++++++++--------- src/views/system/project/index.vue | 30 +++++++ 4 files changed, 172 insertions(+), 46 deletions(-) diff --git a/src/utils/components/init-map.vue b/src/utils/components/init-map.vue index 3d4e879..1b1dd85 100644 --- a/src/utils/components/init-map.vue +++ b/src/utils/components/init-map.vue @@ -1470,6 +1470,7 @@ background-color:#232323; /* height: calc(100% - 55px); */ height: calc(100% - 5px); + height: calc(100% + 15px); width: 100%; } .flyData{ diff --git a/src/views/system/project/components/addPorjectDialog.vue b/src/views/system/project/components/addPorjectDialog.vue index df93c17..90b0c76 100644 --- a/src/views/system/project/components/addPorjectDialog.vue +++ b/src/views/system/project/components/addPorjectDialog.vue @@ -71,65 +71,61 @@ title="鑸嚎璁剧疆" :visible.sync="drawer" direction="rtl"> - <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm"> - <el-form-item label="璧烽鐖崌" prop="region"> - <el-select v-model="ruleForm.region" placeholder="璇烽�夋嫨璧烽鐖崌"> - <el-option label="鍨傜洿" value="鍨傜洿"></el-option> - <el-option label="鍊炬枩" value="鍊炬枩"></el-option> + <el-form :model="ruleForm" ref="ruleForm" label-width="100px" class="demo-ruleForm"> + <el-form-item label="璧烽鐖崌" prop="flyToWaylineMode"> + <el-select v-model="ruleForm.flyToWaylineMode" placeholder="璧烽鐖崌"> + <el-option v-for="dict in dji_fly_type" :key="dict.value" :label="dict.label" + :value="dict.value"></el-option> </el-select> </el-form-item> - <el-form-item label="鍏ㄥ眬鑸嚎閫熷害" prop="region"> + <el-form-item label="鍏ㄥ眬鑸嚎閫熷害" prop="autoFlightSpeed"> <div class="speed-control"> <el-input-number - v-model="ruleForm.speed" - :min="0" - :max="50" + v-model="ruleForm.autoFlightSpeed" + :min="1" + :max="15" :step="1" controls-position="both" - @change="handleChange" + @change="handleChangeAutoFlightSpeed" /> <span class="unit">m/s</span> </div> </el-form-item> - <el-form-item label="璧烽閫熷害" prop="fly"> + <el-form-item label="璧烽閫熷害" prop="globalTransitionalSpeed"> <div class="speed-control"> <el-input-number - v-model="ruleForm.flySpeed" - :min="0" - :max="50" + v-model="ruleForm.globalTransitionalSpeed" + :min="1" + :max="15" :step="1" controls-position="both" - @change="handleChange" + @change="handleChangeGlobalTransitionalSpeed" /> <span class="unit">m/s</span> </div> </el-form-item> - <el-form-item label="鑸偣绫诲瀷" prop="region1"> - <el-select v-model="ruleForm.region1" placeholder="璇烽�夋嫨鑸偣绫诲瀷"> - <el-option label="鍗忚皟杞集锛屼笉杩囩偣锛屾彁鍓嶈浆寮�" value="鍗忚皟杞集锛屼笉杩囩偣锛屾彁鍓嶈浆寮�"></el-option> - <el-option label="鐩寸嚎椋炶锛岄琛屽櫒鍒扮偣鍋�" value="鐩寸嚎椋炶锛岄琛屽櫒鍒扮偣鍋�"></el-option> - <el-option label="骞虫粦杩囩偣锛屾彁鍓嶈浆寮�" value="骞虫粦杩囩偣锛屾彁鍓嶈浆寮�"></el-option> + <el-form-item label="鑸偣绫诲瀷" prop="globalWaypointTurnMode"> + <el-select v-model="ruleForm.globalWaypointTurnMode" placeholder="鑸偣绫诲瀷"> + <el-option v-for="dict in dji_global_waypoint_turn_mode" :key="dict.value" :label="dict.label" + :value="dict.value"></el-option> </el-select> </el-form-item> - <el-form-item label="椋炶鍣ㄥ亸鑸妯″紡" prop="region2"> - <el-select v-model="ruleForm.region2" placeholder="璇烽�夋嫨椋炶鍣ㄥ亸鑸妯″紡"> - <el-option label="娌胯埅绾挎柟鍚�" value="娌胯埅绾挎柟鍚�"></el-option> - <el-option label="鎵嬪姩鎺у埗" value="鎵嬪姩鎺у埗"></el-option> - <el-option label="閿佸畾褰撳墠鍋忚埅瑙�" value="閿佸畾褰撳墠鍋忚埅瑙�"></el-option> + <el-form-item label="椋炶鍣ㄥ亸鑸妯″紡" prop="mappingHeadingMode"> + <el-select v-model="ruleForm.mappingHeadingMode" placeholder="椋炶鍣ㄥ亸鑸妯″紡"> + <el-option v-for="dict in dji_mapping_heading_mode" :key="dict.value" :label="dict.label" + :value="dict.value"></el-option> </el-select> </el-form-item> - <el-form-item label="鑸偣闂翠簯鍙颁刊浠拌鎺у埗妯″紡" prop="region3"> - <el-select v-model="ruleForm.region3" placeholder="璇烽�夋嫨鑸偣闂翠簯鍙颁刊浠拌鎺у埗妯″紡"> - <el-option label="鎵嬪姩鎺у埗" value="鎵嬪姩鎺у埗"></el-option> - <el-option label="渚濈収姣忎釜鑸偣璁剧疆" value="渚濈収姣忎釜鑸偣璁剧疆"></el-option> + <el-form-item label="鑸偣闂翠簯鍙颁刊浠拌鎺у埗妯″紡" prop="gimbalPitchMode"> + <el-select v-model="ruleForm.gimbalPitchMode" placeholder="椋炶鍣ㄥ亸鑸妯″紡"> + <el-option v-for="dict in dji_gimbal_pitch_mode" :key="dict.value" :label="dict.label" + :value="dict.value"></el-option> </el-select> </el-form-item> - <el-form-item label="瀹屾垚鍔ㄤ綔" prop="region4"> - <el-select v-model="ruleForm.region4" placeholder="璇烽�夋嫨瀹屾垚鍔ㄤ綔"> - <el-option label="鑷姩杩旇埅" value="鑷姩杩旇埅"></el-option> - <el-option label="杩斿洖鑸嚎璧峰鐐规偓鍋�" value="杩斿洖鑸嚎璧峰鐐规偓鍋�"></el-option> - <el-option label="閫�鍑鸿埅绾挎ā寮�" value="閫�鍑鸿埅绾挎ā寮�"></el-option> - <el-option label="鍘熷湴闄嶈惤" value="鍘熷湴闄嶈惤"></el-option> + <el-form-item label="瀹屾垚鍔ㄤ綔" prop="finishAction"> + <el-select v-model="ruleForm.finishAction" placeholder="璧烽鐖崌"> + <el-option v-for="dict in dji_finish_type" :key="dict.value" :label="dict.label" + :value="dict.value"></el-option> </el-select> </el-form-item> <el-form-item> @@ -153,6 +149,80 @@ chooseDeviceDialog, chooseModelDialog }, + props: { + model_dji_execute_typetype: { + type: Array, + default() { + return [] + } + }, + dji_execute_type: { + type: Array, + default() { + return [] + } + }, + dji_finish_type: { + type: Array, + default() { + return [] + } + }, + dji_fly_type: { + type: Array, + default() { + return [] + } + }, + dji_exitlost_type: { + type: Array, + default() { + return [] + } + }, + dji_drone_value_type: { + type: Array, + default() { + return [] + } + }, + dji_template_type: { + type: Array, + default() { + return [] + } + }, + dji_execute_height_type: { + type: Array, + default() { + return [] + } + }, + dji_auto_flight_speed: { + type: Array, + default() { + return [] + } + }, + dji_global_waypoint_turn_mode: { + type: Array, + default() { + return [] + } + }, + dji_mapping_heading_mode: { + type: Array, + default() { + return [] + } + }, + dji_gimbal_pitch_mode: { + type: Array, + default() { + return [] + } + }, + }, data(){ return{ dialogVisible :true, @@ -168,8 +238,8 @@ deviceId:null, drawer:false, ruleForm:{ - speed:14, - flySpeed:15 + autoFlightSpeed:14, + globalTransitionalSpeed:15 }, } @@ -425,7 +495,8 @@ label: groundPoint.targetName, longitude: groundPoint.longitude, latitude: groundPoint.latitude, - height: groundPoint.height + height: groundPoint.height, + actions:groundPoint.actions }] : []; // 鐢熸垚绌轰腑鐐� @@ -628,6 +699,7 @@ }, submit(){ console.log(this.treeData) + console.log(this.ruleForm) const routePointList = []; @@ -639,6 +711,7 @@ latitude: airPoint.latitude, height: airPoint.height, isStartAndEndPoint: false, + actions:airPoint.children[0].actions || [], coordinatePointReq: { height: airPoint.children[0].height, latitude:airPoint.children[0].latitude, @@ -658,8 +731,10 @@ let params = { routePointList:routePointList } + this.ruleForm.routePointList = routePointList + console.log(this.ruleForm) console.log('鐢熸垚鑸嚎') - buildKmz(params).then(res=>{ + buildKmz(this.ruleForm).then(res=>{ if(res.code == 200) { this.$message({ message: '鐢熸垚鑸嚎鎴愬姛', @@ -670,6 +745,29 @@ }, lineSet(){ this.drawer =true + }, + handleChangeAutoFlightSpeed(value){ + console.log(value) + this.ruleForm.autoFlightSpeed = value + }, + handleChangeGlobalTransitionalSpeed(value){ + console.log(value) + this.ruleForm.globalTransitionalSpeed = value + }, + submitForm(formName) { + this.$refs[formName].validate((valid) => { + if (valid) { + // alert('submit!'); + console.log(this.ruleForm) + this.drawer = false + } else { + console.log('error submit!!'); + return false; + } + }); + }, + resetForm(){ + this.drawer = false } } } diff --git a/src/views/system/project/index.vue b/src/views/system/project/index.vue index 1c14cb7..701ab83 100644 --- a/src/views/system/project/index.vue +++ b/src/views/system/project/index.vue @@ -18,7 +18,21 @@ </el-col> </el-row> - <addPorjectDialog v-if="showDialog" @close="close"></addPorjectDialog> + <addPorjectDialog + v-if="showDialog" + @close="close" + :dji_execute_type="dict.type.dji_execute_type" + :dji_finish_type="dict.type.dji_finish_type" + :dji_fly_type="dict.type.dji_fly_type" + :dji_exitlost_type="dict.type.dji_exitlost_type" + :dji_drone_value_type="dict.type.dji_drone_value_type" + :dji_template_type="dict.type.dji_template_type" + :dji_execute_height_type="dict.type.dji_execute_height_type" + :dji_auto_flight_speed="dict.type.dji_auto_flight_speed" + :dji_global_waypoint_turn_mode="dict.type.dji_global_waypoint_turn_mode" + :dji_mapping_heading_mode="dict.type.dji_mapping_heading_mode" + :dji_gimbal_pitch_mode="dict.type.dji_gimbal_pitch_mode" + ></addPorjectDialog> </div> </template> @@ -27,7 +41,19 @@ import CesiumMap from "../../../utils/components/cesium-map.vue"; export default { name: "towers", - dicts: ['model_typpe'], + dicts: [ + 'dji_execute_type', + 'dji_finish_type', + 'dji_fly_type', + 'dji_exitlost_type', + 'dji_drone_value_type', + 'dji_template_type', + 'dji_execute_height_type', + 'dji_auto_flight_speed', + 'dji_global_waypoint_turn_mode', + 'dji_mapping_heading_mode', + 'dji_gimbal_pitch_mode' +], components: { addPorjectDialog, CesiumMap diff --git a/src/views/system/shootPoint/components/shootPointDialog.vue b/src/views/system/shootPoint/components/shootPointDialog.vue index f60d32f..8a4c651 100644 --- a/src/views/system/shootPoint/components/shootPointDialog.vue +++ b/src/views/system/shootPoint/components/shootPointDialog.vue @@ -504,7 +504,7 @@ const groundA = result[i]; const raisedA = { id: this.generateId(), - label: groundA.label+ "-鍔犻珮111", + label: groundA.label+ "-鍔犻珮", longitude: groundA.longitude, latitude: groundA.latitude, height: groundA.height, @@ -512,8 +512,9 @@ { ...pointA, id: this.generateId(), - label: pointA.label + "-鍔犻珮2222", - height: pointA.height + 50, + label: pointA.label + "-鍔犻珮", + // height: pointA.height + 50, + height: pointA.height + (towerHeight - pointA.height + 20), actions:[] } ] @@ -532,8 +533,8 @@ { ...pointB, id: this.generateId(), - label: pointB.label + "-鍔犻珮3333", - height: pointB.height + 50, + label: pointB.label + "-鍔犻珮", + height: pointB.height + (towerHeight - pointB.height + 20), actions:[] } ] -- Gitblit v1.9.3