|
|
@@ -0,0 +1,287 @@
|
|
|
+<template>
|
|
|
+ <div>
|
|
|
+ <div class="w-full p-4" style="background-color: #162d55">
|
|
|
+ <!-- 顶部信息栏 -->
|
|
|
+ <div class="flex justify-end align-center text-sm text-blue-200">
|
|
|
+ <span class="flex flex-1 text-2xl font-bold">
|
|
|
+ BB布设方案编制
|
|
|
+ </span>
|
|
|
+ <span class="mr-4">任务编号: TASK-2024-001</span>
|
|
|
+ <span class="mr-4">任务名称: 综合试验任务</span>
|
|
|
+ <span>当前状态: 方案编制中</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="bb-layout-page text-white min-h-screen p-4">
|
|
|
+
|
|
|
+
|
|
|
+ <div class="flex gap-4">
|
|
|
+ <!-- 左侧侧边栏 -->
|
|
|
+ <div class="relative max-w-md mx-auto p-6 bg-gray-400 bg-opacity-20 backdrop-blur-lg border-gray-50 rounded-xl">
|
|
|
+ <div class="flex items-center border-blue-400 border-b mb-4">
|
|
|
+ <h3 class="text-lg font-bold" style="color: #4fc2f7">任务信息</h3>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class="p-4 mb-4 bg-black bg-opacity-20 rounded-md">
|
|
|
+ <el-card shadow="hover" class="p-3 mb-2 text-white bg-gray-100 bg-opacity-20 border-l-8 border-blue-400">
|
|
|
+ <div class="flex justify-between items-center mb-2">
|
|
|
+ <span class="text-blue-300 font-blod">实验区域</span>
|
|
|
+ </div>
|
|
|
+ <div class="flex text-sm mt-2">
|
|
|
+ <span>500m x 800m</span>
|
|
|
+ </div>
|
|
|
+ </el-card>
|
|
|
+ <el-card shadow="hover" class="p-3 mb-2 text-white bg-gray-100 bg-opacity-20 border-l-8 border-blue-400">
|
|
|
+ <div class="flex justify-between items-center mb-2">
|
|
|
+ <span class="text-blue-300 font-blod">BB装备数量</span>
|
|
|
+ </div>
|
|
|
+ <div class="flex text-sm mt-2">
|
|
|
+ <span>>8套</span>
|
|
|
+ </div>
|
|
|
+ </el-card>
|
|
|
+ <el-card shadow="hover" class="p-3 mb-2 text-white bg-gray-100 bg-opacity-20 border-l-8 border-blue-400">
|
|
|
+ <div class="flex justify-between items-center mb-2">
|
|
|
+ <span class="text-blue-300 font-blod">布设密度</span>
|
|
|
+ </div>
|
|
|
+ <div class="flex text-sm mt-2">
|
|
|
+ <span>中等</span>
|
|
|
+ </div>
|
|
|
+ </el-card>
|
|
|
+ <el-card shadow="hover" class="p-3 text-white bg-gray-100 bg-opacity-20 border-l-8 border-blue-400">
|
|
|
+ <div class="flex justify-between items-center mb-2">
|
|
|
+ <span class="text-blue-300 font-blod">任务类型</span>
|
|
|
+ </div>
|
|
|
+ <div class="flex text-sm mt-2">
|
|
|
+ <span>综合实验</span>
|
|
|
+ </div>
|
|
|
+ </el-card>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <!-- 方案模板 -->
|
|
|
+ <div class="flex items-center border-blue-400 border-b mb-4">
|
|
|
+ <h3 class="text-lg font-bold" style="color: #4fc2f7">方案模板</h3>
|
|
|
+ </div>
|
|
|
+ <div
|
|
|
+ class="flex flex-col p-4 mb-4 align-center justify-center rounded-md bg-gray-400 bg-opacity-30 border-none">
|
|
|
+ <span class="flex justify-center mb-2 text-lg font-bold">标准模板</span>
|
|
|
+ <span class="flex justify-center text-sm">常用于常规试验</span>
|
|
|
+ </div>
|
|
|
+ <div
|
|
|
+ class="flex flex-col p-4 mb-4 align-center justify-center rounded-md bg-gray-400 bg-opacity-30 border-none">
|
|
|
+ <span class="flex justify-center mb-2 text-lg font-bold">高密度模板</span>
|
|
|
+ <span class="flex justify-center text-sm">常用于密集目标</span>
|
|
|
+ </div>
|
|
|
+ <div
|
|
|
+ class="flex flex-col p-4 mb-4 align-center justify-center rounded-md bg-gray-400 bg-opacity-30 border-none">
|
|
|
+ <span class="flex justify-center mb-2 text-lg font-bold">分散式模板</span>
|
|
|
+ <span class="flex justify-center text-sm">常用于分散目标</span>
|
|
|
+ </div>
|
|
|
+ <div class="flex flex-col p-4 mb-4 align-center justify-center rounded-md bg-gray-400 bg-opacity-30 border-none">
|
|
|
+ <span class="flex justify-center mb-2 text-lg font-bold">自定义模板</span>
|
|
|
+ <span class="flex justify-center text-sm">手动配置参数</span>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <!-- 布设算法 -->
|
|
|
+ <div class="flex items-center border-blue-400 border-b mb-4">
|
|
|
+ <h3 class="text-lg font-bold" style="color: #4fc2f7">布设算法</h3>
|
|
|
+ </div>
|
|
|
+ <el-tabs type="card" stretch v-model="activeTab" class="mb-6">
|
|
|
+ <el-tab-pane label="随机布设" name="random">
|
|
|
+ <div class="bg-gray-400 bg-opacity-30 p-4 rounded">
|
|
|
+ <h2 class="text-xl font-semibold mb-4">随机布设参数</h2>
|
|
|
+ <el-form :model="randomParams" label-width="120px">
|
|
|
+ <el-form-item label="随机种子">
|
|
|
+ <el-input v-model="randomParams.randomSeed" placeholder="请输入随机种子"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="布设密度">
|
|
|
+ <el-select v-model="randomParams.layoutDensity" placeholder="请选择布设密度">
|
|
|
+ <el-option label="低等密度" value="low"></el-option>
|
|
|
+ <el-option label="中等密度" value="medium"></el-option>
|
|
|
+ <el-option label="高等密度" value="high"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="最小间距(m)">
|
|
|
+ <el-input v-model.number="randomParams.minSpacing" placeholder="请输入最小间距"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ </div>
|
|
|
+ </el-tab-pane>
|
|
|
+ <el-tab-pane label="网格布设" name="grid">
|
|
|
+ <div class="bg-gray-400 bg-opacity-30 p-4 rounded">
|
|
|
+ <h2 class="text-xl font-semibold mb-4">网格布设参数</h2>
|
|
|
+ <!-- 可根据需求添加网格布设相关表单元素 -->
|
|
|
+ </div>
|
|
|
+ </el-tab-pane>
|
|
|
+ <el-tab-pane label="聚类布设" name="cluster">
|
|
|
+ <div class="bg-gray-400 bg-opacity-30 p-4 rounded">
|
|
|
+ <h2 class="text-xl font-semibold mb-4">聚类布设参数</h2>
|
|
|
+ <!-- 可根据需求添加聚类布设相关表单元素 -->
|
|
|
+ </div>
|
|
|
+ </el-tab-pane>
|
|
|
+ </el-tabs>
|
|
|
+
|
|
|
+ <!-- BB装备配置 -->
|
|
|
+ <el-card class="bg-gray-400 bg-opacity-30 border-none">
|
|
|
+ <div class="text-lg font-bold mb-2">BB装备配置</div>
|
|
|
+ <el-form label-position="top" size="small" label-width="60px">
|
|
|
+ <el-form-item label="装备数量">
|
|
|
+ <el-input value="12"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="装备类型">
|
|
|
+ <el-select placeholder="请选择" style="width: 100%">
|
|
|
+ <el-option
|
|
|
+ v-for="type in equipmentTypes"
|
|
|
+ :key="type"
|
|
|
+ :label="type"
|
|
|
+ :value="type"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ </el-card>
|
|
|
+
|
|
|
+ <!-- 操作控制 -->
|
|
|
+ <div class="space-y-2">
|
|
|
+ <el-button type="primary" size="small">生成方案</el-button>
|
|
|
+ <el-button type="success" size="small">应用方案</el-button>
|
|
|
+ <el-button type="warning" size="small">清空布设</el-button>
|
|
|
+ <el-button type="danger" size="small">导出方案</el-button>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <!-- 右侧主内容区 -->
|
|
|
+ <div class="flex-1 space-y-4 p-6 bg-gray-400 bg-opacity-20 backdrop-blur-lg border-gray-50 rounded-xl">
|
|
|
+ <!-- 布设状态 -->
|
|
|
+ <div class="flex items-center mb-4">
|
|
|
+ <h3 class="text-lg font-bold" style="color: #4fc2f7">布设状态</h3>
|
|
|
+ </div>
|
|
|
+ <div class="flex flex-col p-4 bg-black bg-opacity-20 mb-2">
|
|
|
+ <div class="">
|
|
|
+ <p>已布设BB数量: <span class="text-blue-300">0</span></p>
|
|
|
+ <p>当前算法: <span class="text-blue-300">随机布设</span></p>
|
|
|
+ <p>布设密度: <span class="text-blue-300">中等</span></p>
|
|
|
+ <p>覆盖面积: <span class="text-blue-300">0%</span></p>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class="flex items-center mb-4">
|
|
|
+ <h3 class="text-lg font-bold" style="color: #4fc2f7">方案信息</h3>
|
|
|
+ </div>
|
|
|
+ <div class="grid gap-4 grid-cols-4 p-4 mb-4 bg-black bg-opacity-20 rounded-md">
|
|
|
+ <el-card shadow="hover" class="p-3 text-white bg-gray-100 bg-opacity-20 border-l-8 border-blue-400">
|
|
|
+ <div class="flex justify-between items-center mb-2">
|
|
|
+ <span class="text-blue-300 font-blod">方案名称</span>
|
|
|
+ </div>
|
|
|
+ <div class="flex text-sm mt-2">
|
|
|
+ <span>BB布设方案-001</span>
|
|
|
+ </div>
|
|
|
+ </el-card>
|
|
|
+ <el-card shadow="hover" class="p-3 text-white bg-gray-100 bg-opacity-20 border-l-8 border-blue-400">
|
|
|
+ <div class="flex justify-between items-center mb-2">
|
|
|
+ <span class="text-blue-300 font-blod">创建时间</span>
|
|
|
+ </div>
|
|
|
+ <div class="flex text-sm mt-2">
|
|
|
+ <span>2025-08-20 11:05:30</span>
|
|
|
+ </div>
|
|
|
+ </el-card>
|
|
|
+ <el-card shadow="hover" class="p-3 text-white bg-gray-100 bg-opacity-20 border-l-8 border-blue-400">
|
|
|
+ <div class="flex justify-between items-center mb-2">
|
|
|
+ <span class="text-blue-300 font-blod">方案状态</span>
|
|
|
+ </div>
|
|
|
+ <div class="flex text-sm mt-2">
|
|
|
+ <span>编制中</span>
|
|
|
+ </div>
|
|
|
+ </el-card>
|
|
|
+ <el-card shadow="hover" class="p-3 text-white bg-gray-100 bg-opacity-20 border-l-8 border-blue-400">
|
|
|
+ <div class="flex justify-between items-center mb-2">
|
|
|
+ <span class="text-blue-300 font-blod">编制人员</span>
|
|
|
+ </div>
|
|
|
+ <div class="flex text-sm mt-2">
|
|
|
+ <span>张三</span>
|
|
|
+ </div>
|
|
|
+ </el-card>
|
|
|
+ </div>
|
|
|
+ <!-- 图例 -->
|
|
|
+ <div class="flex items-center text-base mb-2">
|
|
|
+ <span class="inline-block w-3 h-3 bg-orange-500 rounded-full mr-1"></span>
|
|
|
+ <span class="mr-4">BB装备</span>
|
|
|
+ <span class="inline-block w-3 h-3 bg-blue-500 rounded-full mr-1"></span>
|
|
|
+ <span class="mr-4">选中状态</span>
|
|
|
+ <span class="inline-block w-3 h-3 bg-purple-500 rounded-full mr-1"></span>
|
|
|
+ <span class="mr-4">聚类中心</span>
|
|
|
+ <span class="inline-block w-3 h-3 bg-green-500 rounded-full mr-1"></span>
|
|
|
+ <span>判别线</span>
|
|
|
+ </div>
|
|
|
+ <!-- 网格画布(模拟) -->
|
|
|
+ <div class="w-full bg-black bg-opacity-20 bg-blue-850 border border-blue-700 flex items-center justify-center" style="min-height: 400px">
|
|
|
+ <span class="text-blue-400">网格画布区域(可结合Canvas等实现交互)</span>
|
|
|
+ </div>
|
|
|
+ <div class="text-sm bg-blue-400 bg-opacity-20 rounded-md p-4 mt-2">
|
|
|
+ 操作提示: 点击BB区位可选中,拖拽可调整位置,双击可查看详情,使用右侧配置区设置参数后点击"生成方案"按钮。
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <!-- 方案信息 -->
|
|
|
+ <WangEditor
|
|
|
+ v-model="content"
|
|
|
+ :height="400"
|
|
|
+ :disabled="false"
|
|
|
+ @change="handleContentChange"
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+import WangEditor from "@/views/programPlanning/collaborativePlanning/WangEditor.vue";
|
|
|
+export default {
|
|
|
+ components:{
|
|
|
+ WangEditor
|
|
|
+ },
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ content:'',
|
|
|
+ selectedTemplate: 'standard',
|
|
|
+ selectedAlgorithm: 'random',
|
|
|
+ equipmentTypes: [
|
|
|
+ '陆地模拟蓝军B系统',
|
|
|
+ '发烟罐模拟蓝军模拟系统',
|
|
|
+ '无人机蓝军系统',
|
|
|
+ '大气状态分析仪'
|
|
|
+ ],
|
|
|
+ planInfo: [
|
|
|
+ {
|
|
|
+ name: 'BB布设方案-001',
|
|
|
+ createTime: '2024-01-15 14:30',
|
|
|
+ status: '编制中',
|
|
|
+ editor: '张三'
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ activeTab: 'random',
|
|
|
+ randomParams: {
|
|
|
+ randomSeed: '12345',
|
|
|
+ layoutDensity: 'medium',
|
|
|
+ minSpacing: 50,
|
|
|
+ },
|
|
|
+ };
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ handleContentChange(html) {
|
|
|
+ console.log('编辑器内容变化:', html)
|
|
|
+ // 可以在这里处理内容,如实时保存等
|
|
|
+ }
|
|
|
+ },
|
|
|
+};
|
|
|
+</script>
|
|
|
+
|
|
|
+<style scoped>
|
|
|
+.bb-layout-page {
|
|
|
+ font-size: 16px;
|
|
|
+ background-color: #244786;
|
|
|
+}
|
|
|
+
|
|
|
+.el-card {
|
|
|
+ border-radius: 4px;
|
|
|
+}
|
|
|
+</style>
|