任务
This commit is contained in:
parent
b08d79abe8
commit
21ef0251a6
2
.env
2
.env
@ -1,5 +1,5 @@
|
||||
# 标题
|
||||
VITE_APP_TITLE=芋道管理系统
|
||||
VITE_APP_TITLE=RCS智能设备调度系统
|
||||
|
||||
# 项目本地运行端口号
|
||||
VITE_PORT=80
|
||||
|
4
.vscode/settings.json
vendored
4
.vscode/settings.json
vendored
@ -65,13 +65,13 @@
|
||||
"editor.defaultFormatter": "esbenp.prettier-vscode"
|
||||
},
|
||||
"[typescriptreact]": {
|
||||
"editor.defaultFormatter": "rvest.vs-code-prettier-eslint"
|
||||
"editor.defaultFormatter": "esbenp.prettier-vscode"
|
||||
},
|
||||
"[html]": {
|
||||
"editor.defaultFormatter": "esbenp.prettier-vscode"
|
||||
},
|
||||
"[css]": {
|
||||
"editor.defaultFormatter": "rvest.vs-code-prettier-eslint"
|
||||
"editor.defaultFormatter": "esbenp.prettier-vscode"
|
||||
},
|
||||
"[less]": {
|
||||
"editor.defaultFormatter": "esbenp.prettier-vscode"
|
||||
|
Binary file not shown.
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 2.6 KiB |
@ -59,7 +59,7 @@ export default defineComponent({
|
||||
|
||||
<Backtop></Backtop>
|
||||
|
||||
<Setting></Setting>
|
||||
{<Setting></Setting>}
|
||||
</section>
|
||||
)
|
||||
}
|
||||
|
@ -57,7 +57,7 @@ watch(
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div>
|
||||
<div :style="{ 'background-color': appStore.getTheme.topHeaderBgColor }">
|
||||
<router-link
|
||||
:class="[
|
||||
prefixCls,
|
||||
@ -80,6 +80,7 @@ watch(
|
||||
layout === 'topLeft' || layout === 'top' || layout === 'cutMenu'
|
||||
}
|
||||
]"
|
||||
style="font-size: 14px"
|
||||
>
|
||||
{{ title }}
|
||||
</div>
|
||||
|
@ -171,7 +171,8 @@ $prefix-cls: #{$namespace}-menu;
|
||||
.#{$elNamespace}-menu {
|
||||
.#{$elNamespace}-sub-menu__title,
|
||||
.#{$elNamespace}-menu-item:not(.is-active) {
|
||||
background-color: var(--left-menu-bg-light-color) !important;
|
||||
// background-color: var(--left-menu-bg-light-color) !important;
|
||||
background-color: #ffffff !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -52,6 +52,7 @@ export default defineComponent({
|
||||
'h-[var(--top-tool-height)] relative px-[var(--top-tool-p-x)] flex items-center justify-between',
|
||||
'dark:bg-[var(--el-bg-color)]'
|
||||
]}
|
||||
style="height:60px"
|
||||
>
|
||||
{layout.value !== 'top' ? (
|
||||
<div class="h-full flex items-center">
|
||||
|
@ -55,7 +55,8 @@ export const useRenderLayout = () => {
|
||||
'w-[var(--left-menu-max-width)]': !appStore.getCollapse
|
||||
}
|
||||
]}
|
||||
style="transition: all var(--transition-time-02);"
|
||||
style="transition: all var(--transition-time-02);height:60px;display: flex;
|
||||
align-items: center;"
|
||||
></Logo>
|
||||
) : undefined}
|
||||
<Menu class={[{ '!h-[calc(100%-var(--logo-height))]': logo.value }]}></Menu>
|
||||
@ -106,9 +107,9 @@ export const useRenderLayout = () => {
|
||||
]}
|
||||
></ToolHeader>
|
||||
|
||||
{tagsView.value ? (
|
||||
{/* {tagsView.value ? (
|
||||
<TagsView class="layout-border__top layout-border__bottom"></TagsView>
|
||||
) : undefined}
|
||||
) : undefined} */}
|
||||
</div>
|
||||
|
||||
<AppView></AppView>
|
||||
|
@ -20,7 +20,6 @@ import { setupElementPlus } from '@/plugins/elementPlus'
|
||||
import { setupFormCreate } from '@/plugins/formCreate'
|
||||
|
||||
// 引入全局样式
|
||||
import '@/styles/element/index.scss'
|
||||
import '@/styles/index.scss'
|
||||
|
||||
// 引入动画
|
||||
|
@ -47,7 +47,6 @@ export const useAppStore = defineStore('app', {
|
||||
mobile: false, // 是否是移动端
|
||||
title: import.meta.env.VITE_APP_TITLE, // 标题
|
||||
pageLoading: false, // 路由跳转loading
|
||||
|
||||
breadcrumb: true, // 面包屑
|
||||
breadcrumbIcon: true, // 面包屑图标
|
||||
collapse: false, // 折叠菜单
|
||||
@ -58,7 +57,7 @@ export const useAppStore = defineStore('app', {
|
||||
size: true, // 尺寸图标
|
||||
locale: true, // 多语言图标
|
||||
message: true, // 消息图标
|
||||
tagsView: true, // 标签页
|
||||
tagsView: false, // 标签页
|
||||
tagsViewImmerse: false, // 标签页沉浸
|
||||
tagsViewIcon: true, // 是否显示标签图标
|
||||
logo: true, // logo
|
||||
@ -66,39 +65,38 @@ export const useAppStore = defineStore('app', {
|
||||
footer: true, // 显示页脚
|
||||
greyMode: false, // 是否开始灰色模式,用于特殊悼念日
|
||||
fixedMenu: wsCache.get('fixedMenu') || false, // 是否固定菜单
|
||||
|
||||
layout: wsCache.get(CACHE_KEY.LAYOUT) || 'classic', // layout布局
|
||||
isDark: wsCache.get(CACHE_KEY.IS_DARK) || false, // 是否是暗黑模式
|
||||
currentSize: wsCache.get('default') || 'default', // 组件尺寸
|
||||
theme: wsCache.get(CACHE_KEY.THEME) || {
|
||||
// 主题色
|
||||
elColorPrimary: '#409eff',
|
||||
elColorPrimary: '#00329F',
|
||||
// 左侧菜单边框颜色
|
||||
leftMenuBorderColor: 'inherit',
|
||||
// 左侧菜单背景颜色
|
||||
leftMenuBgColor: '#001529',
|
||||
leftMenuBgColor: '#ffffff',
|
||||
// 左侧菜单浅色背景颜色
|
||||
leftMenuBgLightColor: '#0f2438',
|
||||
// 左侧菜单选中背景颜色
|
||||
leftMenuBgActiveColor: 'var(--el-color-primary)',
|
||||
leftMenuBgActiveColor: '#EBF1FF',
|
||||
// 左侧菜单收起选中背景颜色
|
||||
leftMenuCollapseBgActiveColor: 'var(--el-color-primary)',
|
||||
leftMenuCollapseBgActiveColor: '#EBF1FF',
|
||||
// 左侧菜单字体颜色
|
||||
leftMenuTextColor: '#bfcbd9',
|
||||
leftMenuTextColor: '#98A4BF',
|
||||
// 左侧菜单选中字体颜色
|
||||
leftMenuTextActiveColor: '#fff',
|
||||
leftMenuTextActiveColor: '#00329F',
|
||||
// logo字体颜色
|
||||
logoTitleTextColor: '#fff',
|
||||
// logo边框颜色
|
||||
logoBorderColor: 'inherit',
|
||||
// 头部背景颜色
|
||||
topHeaderBgColor: '#fff',
|
||||
topHeaderBgColor: '#00329F',
|
||||
// 头部字体颜色
|
||||
topHeaderTextColor: 'inherit',
|
||||
topHeaderTextColor: '#ffffff',
|
||||
// 头部悬停颜色
|
||||
topHeaderHoverColor: '#f6f6f6',
|
||||
// 头部边框颜色
|
||||
topToolBorderColor: '#eee'
|
||||
topToolBorderColor: '#E2E7F5'
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -1,8 +0,0 @@
|
||||
// @forward 'element-plus/theme-chalk/src/common/var.scss' with (
|
||||
// $colors: (
|
||||
// 'primary': (
|
||||
// 'base': #00329f
|
||||
// )
|
||||
// )
|
||||
// );
|
||||
// @use 'element-plus/theme-chalk/src/index.scss' as *;
|
@ -1,13 +1,15 @@
|
||||
:root {
|
||||
--el-color-primary: #00329f;
|
||||
|
||||
--login-bg-color: #293146;
|
||||
|
||||
--left-menu-max-width: 200px;
|
||||
--left-menu-max-width: 220px;
|
||||
|
||||
--left-menu-min-width: 64px;
|
||||
|
||||
--left-menu-bg-color: #001529;
|
||||
--left-menu-bg-color: #ffffff;
|
||||
|
||||
--left-menu-bg-light-color: #0f2438;
|
||||
--left-menu-bg-light-color: #ffffff;
|
||||
|
||||
--left-menu-bg-active-color: var(--el-color-primary);
|
||||
|
||||
@ -35,7 +37,8 @@
|
||||
|
||||
--top-tool-p-x: 0;
|
||||
|
||||
--tags-view-height: 35px;
|
||||
/* --tags-view-height: 35px; 开启面包屑时 */
|
||||
--tags-view-height: 8px;
|
||||
/* header start */
|
||||
|
||||
/* tab menu start */
|
||||
|
@ -1,14 +1,104 @@
|
||||
<template>
|
||||
<div>
|
||||
<ContentWrap>
|
||||
<div>
|
||||
<el-button type="primary" @click="saveMap" :disabled="formLoading"> 保存 </el-button>
|
||||
<el-button type="primary" @click="backPreviousStep" :disabled="formLoading">
|
||||
撤销
|
||||
</el-button>
|
||||
<el-button type="primary" @click="backNextStep" :disabled="formLoading"> 重做 </el-button>
|
||||
<el-button type="primary" @click="drawNodes" :disabled="formLoading"> 绘制节点 </el-button>
|
||||
<div class="tool-list">
|
||||
<div class="tool-item">
|
||||
<Icon icon="ep:folder-add" :size="24" />
|
||||
<div class="name"> 打开 </div>
|
||||
</div>
|
||||
<div class="tool-item" @click="saveMap">
|
||||
<Icon icon="ep:folder-checked" :size="24" />
|
||||
<div class="name"> 保存 </div>
|
||||
</div>
|
||||
<div class="tool-item">
|
||||
<Icon icon="ep:folder-opened" :size="24" />
|
||||
<div class="name"> 另存为 </div>
|
||||
</div>
|
||||
<div class="line"></div>
|
||||
<div class="tool-item">
|
||||
<Icon icon="ep:position" :size="24" />
|
||||
<div class="name"> 选择 </div>
|
||||
</div>
|
||||
<div class="tool-item">
|
||||
<Icon icon="ep:rank" :size="24" />
|
||||
<div class="name"> 移动 </div>
|
||||
</div>
|
||||
<div class="tool-item">
|
||||
<Icon icon="ep:folder-add" :size="24" />
|
||||
<div class="name"> 旋转 </div>
|
||||
</div>
|
||||
<div class="tool-item">
|
||||
<Icon icon="ep:document" :size="24" />
|
||||
<div class="name"> 复制 </div>
|
||||
</div>
|
||||
<div class="tool-item">
|
||||
<Icon icon="ep:copy-document" :size="24" />
|
||||
<div class="name"> 粘贴 </div>
|
||||
</div>
|
||||
<div class="tool-item">
|
||||
<Icon icon="ep:delete" :size="24" />
|
||||
<div class="name"> 删除 </div>
|
||||
</div>
|
||||
<div class="line"></div>
|
||||
<div class="tool-item">
|
||||
<Icon icon="ep:briefcase" :size="24" />
|
||||
<div class="name"> 工具 </div>
|
||||
</div>
|
||||
<div class="tool-item">
|
||||
<Icon icon="ep:folder-add" :size="24" />
|
||||
<div class="name"> 线库 </div>
|
||||
</div>
|
||||
<div class="tool-item">
|
||||
<Icon icon="ep:folder-add" :size="24" />
|
||||
<div class="name"> 区域 </div>
|
||||
</div>
|
||||
<div class="tool-item">
|
||||
<Icon icon="ep:folder-add" :size="24" />
|
||||
<div class="name"> 文字 </div>
|
||||
</div>
|
||||
<div class="tool-item">
|
||||
<Icon icon="ep:folder-add" :size="24" />
|
||||
<div class="name"> 设备 </div>
|
||||
</div>
|
||||
<div class="tool-item">
|
||||
<Icon icon="ep:folder-add" :size="24" />
|
||||
<div class="name"> 车辆 </div>
|
||||
</div>
|
||||
<div class="tool-item">
|
||||
<Icon icon="ep:folder-add" :size="24" />
|
||||
<div class="name"> 测距 </div>
|
||||
</div>
|
||||
<div class="tool-item">
|
||||
<Icon icon="ep:folder-add" :size="24" />
|
||||
<div class="name"> 图层 </div>
|
||||
</div>
|
||||
<div class="tool-item">
|
||||
<Icon icon="ep:folder-add" :size="24" />
|
||||
<div class="name"> 标记 </div>
|
||||
</div>
|
||||
<div class="tool-item">
|
||||
<Icon icon="ep:folder-add" :size="24" />
|
||||
<div class="name"> 网格 </div>
|
||||
</div>
|
||||
<div class="line"></div>
|
||||
<div class="tool-item">
|
||||
<Icon icon="ep:folder-add" :size="24" />
|
||||
<div class="name"> 放大 </div>
|
||||
</div>
|
||||
<div class="tool-item">
|
||||
<Icon icon="ep:folder-add" :size="24" />
|
||||
<div class="name"> 缩小 </div>
|
||||
</div>
|
||||
<div class="tool-item" @click="backPreviousStep">
|
||||
<Icon icon="ep:folder-add" :size="24" />
|
||||
<div class="name"> 撤回 </div>
|
||||
</div>
|
||||
<div class="tool-item" @click="backNextStep">
|
||||
<Icon icon="ep:folder-add" :size="24" />
|
||||
<div class="name"> 重做 </div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- <el-button type="primary" @click="drawNodes" :disabled="formLoading"> 绘制节点 </el-button> -->
|
||||
</ContentWrap>
|
||||
<div class="map-box" ref="imgWrap" @mousewheel.prevent="rollImg" style="overflow: hidden">
|
||||
<div class="map-box-inner" ref="image" @mousedown.prevent="moveImg">
|
||||
@ -312,4 +402,33 @@ onMounted(() => {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.tool-list {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
text-align: center;
|
||||
|
||||
.tool-item {
|
||||
width: 50px;
|
||||
}
|
||||
|
||||
.name {
|
||||
font-family:
|
||||
PingFangSC,
|
||||
PingFang SC;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
color: #0d162a;
|
||||
line-height: 20px;
|
||||
text-align: center;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
.line {
|
||||
margin: 0 14px;
|
||||
width: 1px;
|
||||
height: 47px;
|
||||
border: 1px solid #cccccc;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
@ -1,8 +1,8 @@
|
||||
<template>
|
||||
<ContentWrap>
|
||||
<el-button type="success" @click="createTask">新建任务</el-button>
|
||||
<el-button type="danger" @click="emergencyStop">一键急停</el-button>
|
||||
<el-button type="primary" @click="editMap">地图编辑</el-button>
|
||||
<el-button type="danger" @click="emergencyStop">一键急停</el-button>
|
||||
</ContentWrap>
|
||||
|
||||
<div class="main-content">
|
||||
|
@ -73,7 +73,12 @@
|
||||
prop="doMoveAll"
|
||||
label-width="146"
|
||||
>
|
||||
<el-switch v-model="formData.doMoveAll" :active-value="1" :inactive-value="0" />
|
||||
<el-switch
|
||||
v-model="formData.doMoveAll"
|
||||
:active-value="1"
|
||||
:inactive-value="0"
|
||||
@change="doMoveAllChange"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@ -153,7 +158,7 @@
|
||||
:rules="{ required: true, message: '任务类型不能为空', trigger: 'change' }"
|
||||
>
|
||||
<el-select
|
||||
:disabled="formData.doCycle == 1 && index == 0"
|
||||
:disabled="formData.doCycle == 1 || formData.doMoveAll == 1"
|
||||
v-model="detailItem.taskType"
|
||||
placeholder="请选择"
|
||||
@change="taskTypeChange(detailItem, index)"
|
||||
@ -968,6 +973,15 @@ const taskTypeChange = (item, index) => {
|
||||
}
|
||||
}
|
||||
|
||||
//搬空区域改变
|
||||
const doMoveAllChange = (e) => {
|
||||
if (e === 1) {
|
||||
formData.value.taskDetailList.forEach((item) => {
|
||||
item.taskType = 1
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
//拼接的任务数量改变
|
||||
const montageNumberChange = (currentValue: number, oldValue: number) => {
|
||||
if (currentValue > oldValue) {
|
||||
@ -1007,8 +1021,11 @@ const doCycleChange = (e) => {
|
||||
formData.value.cycleNumber = 0
|
||||
} else {
|
||||
formData.value.cycleNumber = 1
|
||||
formData.value.montageNumber = 1
|
||||
formData.value.taskDetailList = formData.value.taskDetailList.slice(0, 1)
|
||||
formData.value.taskDetailList[0].taskType = 1
|
||||
formData.value.taskDetailList.forEach((item) => {
|
||||
item.taskType = 1
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user