Compare commits
No commits in common. "94f1c40501a2b32d6cb1c9e7c25b1e3bdb18bde2" and "a3aadcdaf46d68a876fe4516f17e46671c0bae83" have entirely different histories.
94f1c40501
...
a3aadcdaf4
@ -7,7 +7,7 @@
|
|||||||
class="map-edit-route-dialog"
|
class="map-edit-route-dialog"
|
||||||
@close="dialogClose"
|
@close="dialogClose"
|
||||||
>
|
>
|
||||||
<el-form :model="form" label-width="120" ref="ruleFormRef" :rules="rules">
|
<el-form :model="form" label-width="120" ref="ruleFormRef">
|
||||||
<el-row :gutter="30">
|
<el-row :gutter="30">
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="开始点位x轴" prop="startPointX" required>
|
<el-form-item label="开始点位x轴" prop="startPointX" required>
|
||||||
@ -15,6 +15,7 @@
|
|||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
v-model="form.startPointX"
|
v-model="form.startPointX"
|
||||||
:min="0"
|
:min="0"
|
||||||
|
:max="imgBgObj.width"
|
||||||
placeholder="请输入开始点位x轴"
|
placeholder="请输入开始点位x轴"
|
||||||
controls-position="right"
|
controls-position="right"
|
||||||
/>
|
/>
|
||||||
@ -26,6 +27,7 @@
|
|||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
v-model="form.startPointY"
|
v-model="form.startPointY"
|
||||||
:min="0"
|
:min="0"
|
||||||
|
:max="imgBgObj.height"
|
||||||
placeholder="请输入开始点位y轴"
|
placeholder="请输入开始点位y轴"
|
||||||
controls-position="right"
|
controls-position="right"
|
||||||
/>
|
/>
|
||||||
@ -39,6 +41,7 @@
|
|||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
v-model="form.endPointX"
|
v-model="form.endPointX"
|
||||||
:min="0"
|
:min="0"
|
||||||
|
:max="imgBgObj.width"
|
||||||
placeholder="请输入结束点位x轴"
|
placeholder="请输入结束点位x轴"
|
||||||
controls-position="right"
|
controls-position="right"
|
||||||
/>
|
/>
|
||||||
@ -50,6 +53,7 @@
|
|||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
v-model="form.endPointY"
|
v-model="form.endPointY"
|
||||||
:min="0"
|
:min="0"
|
||||||
|
:max="imgBgObj.height"
|
||||||
placeholder="请输入结束点位y轴"
|
placeholder="请输入结束点位y轴"
|
||||||
controls-position="right"
|
controls-position="right"
|
||||||
/>
|
/>
|
||||||
@ -206,50 +210,8 @@ const ruleFormRef = ref()
|
|||||||
const dialogFormVisible = ref(false) //列表的
|
const dialogFormVisible = ref(false) //列表的
|
||||||
|
|
||||||
const rules = reactive({
|
const rules = reactive({
|
||||||
startPointX: [
|
skuInfo: [{ required: true, message: '请输入物料区域名称', trigger: 'blur' }],
|
||||||
{ required: true, message: '请输入开始点位x轴坐标', trigger: 'blur' },
|
areaName: [{ required: true, message: '请输入物料名称', trigger: 'blur' }]
|
||||||
{
|
|
||||||
type: 'number',
|
|
||||||
min: 0,
|
|
||||||
max: Number(props.imgBgObj.width),
|
|
||||||
message: `不能超过地图宽度${props.imgBgObj.width}`,
|
|
||||||
trigger: 'blur'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
startPointY: [
|
|
||||||
{ required: true, message: '请输入开始点位y轴坐标', trigger: 'blur' },
|
|
||||||
{
|
|
||||||
type: 'number',
|
|
||||||
min: 0,
|
|
||||||
max: Number(props.imgBgObj.height),
|
|
||||||
message: `不能超过地图宽度${props.imgBgObj.height}`,
|
|
||||||
trigger: 'blur'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
endPointX: [
|
|
||||||
{ required: true, message: '请输入结束点位x轴坐标', trigger: 'blur' },
|
|
||||||
{
|
|
||||||
type: 'number',
|
|
||||||
min: 0,
|
|
||||||
max: Number(props.imgBgObj.width),
|
|
||||||
message: `不能超过地图宽度${props.imgBgObj.width}`,
|
|
||||||
trigger: 'blur'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
endPointY: [
|
|
||||||
{ required: true, message: '请输入结束点位y轴坐标', trigger: 'blur' },
|
|
||||||
{
|
|
||||||
type: 'number',
|
|
||||||
min: 0,
|
|
||||||
max: Number(props.imgBgObj.height),
|
|
||||||
message: `不能超过地图宽度${props.imgBgObj.height}`,
|
|
||||||
trigger: 'blur'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
expansionZoneFront: [{ required: true, message: '请输入膨胀区域前', trigger: 'blur' }],
|
|
||||||
expansionZoneAfter: [{ required: true, message: '请输入膨胀区域后', trigger: 'blur' }],
|
|
||||||
expansionZoneLeft: [{ required: true, message: '请输入膨胀区域左', trigger: 'blur' }],
|
|
||||||
expansionZoneRight: [{ required: true, message: '请输入膨胀区域右', trigger: 'blur' }]
|
|
||||||
})
|
})
|
||||||
|
|
||||||
//新增
|
//新增
|
||||||
|
@ -12,6 +12,7 @@
|
|||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
v-model="form.locationX"
|
v-model="form.locationX"
|
||||||
:min="0"
|
:min="0"
|
||||||
|
:max="imgBgObj.width"
|
||||||
placeholder="请输入"
|
placeholder="请输入"
|
||||||
controls-position="right"
|
controls-position="right"
|
||||||
/>
|
/>
|
||||||
@ -21,10 +22,21 @@
|
|||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
v-model="form.locationY"
|
v-model="form.locationY"
|
||||||
:min="0"
|
:min="0"
|
||||||
|
:max="imgBgObj.height"
|
||||||
placeholder="请输入"
|
placeholder="请输入"
|
||||||
controls-position="right"
|
controls-position="right"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
<el-form-item label="弧度" prop="locationYaw" required>
|
||||||
|
<el-input-number
|
||||||
|
style="width: 100%"
|
||||||
|
v-model="form.locationYaw"
|
||||||
|
:min="0"
|
||||||
|
placeholder="请输入"
|
||||||
|
controls-position="right"
|
||||||
|
:precision="2"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
<el-form-item label="类型" prop="type" required>
|
<el-form-item label="类型" prop="type" required>
|
||||||
<el-select v-model="form.type" placeholder="请选择类型" @change="typeChange">
|
<el-select v-model="form.type" placeholder="请选择类型" @change="typeChange">
|
||||||
<el-option label="路径点位" :value="1" />
|
<el-option label="路径点位" :value="1" />
|
||||||
@ -35,21 +47,10 @@
|
|||||||
<el-option label="等待点" :value="6" />
|
<el-option label="等待点" :value="6" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="弧度" prop="locationYaw" required>
|
|
||||||
<el-input-number
|
|
||||||
class="!w-200px"
|
|
||||||
v-model="form.locationYaw"
|
|
||||||
:min="0"
|
|
||||||
:max="10000"
|
|
||||||
placeholder="请输入"
|
|
||||||
:precision="2"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
|
|
||||||
<div v-if="form.type === 2 || form.type === 3 || form.type === 4">
|
<div v-if="form.type === 2 || form.type === 3 || form.type === 4">
|
||||||
<el-form-item label="层数" prop="layersNumber" required v-if="form.type === 2">
|
<el-form-item label="层数" prop="layersNumber" required v-if="form.type === 2">
|
||||||
<el-input-number
|
<el-input-number
|
||||||
class="!w-200px"
|
|
||||||
v-model="form.layersNumber"
|
v-model="form.layersNumber"
|
||||||
:min="1"
|
:min="1"
|
||||||
:max="4"
|
:max="4"
|
||||||
@ -60,7 +61,7 @@
|
|||||||
<el-text class="mx-1">(最大层数:4)</el-text>
|
<el-text class="mx-1">(最大层数:4)</el-text>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="排序" prop="locationNumber" v-if="form.type === 2" required>
|
<el-form-item label="排序" prop="locationNumber" v-if="form.type === 2" required>
|
||||||
<el-input-number class="!w-200px" v-model="form.locationNumber" :min="1" />
|
<el-input-number v-model="form.locationNumber" :min="1" :max="10000000" />
|
||||||
<el-text class="mx-1">(最大值:10000000)</el-text>
|
<el-text class="mx-1">(最大值:10000000)</el-text>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="编号" prop="deviceId" required v-if="form.type === 3">
|
<el-form-item label="编号" prop="deviceId" required v-if="form.type === 3">
|
||||||
@ -99,10 +100,10 @@
|
|||||||
<el-form-item label="库位长度" prop="locationDeep" required>
|
<el-form-item label="库位长度" prop="locationDeep" required>
|
||||||
<div style="display: flex">
|
<div style="display: flex">
|
||||||
<el-input-number
|
<el-input-number
|
||||||
class="!w-200px"
|
|
||||||
placeholder="请输入"
|
placeholder="请输入"
|
||||||
v-model="form.locationDeep"
|
v-model="form.locationDeep"
|
||||||
:min="10"
|
:min="10"
|
||||||
|
:max="imgBgObj.height"
|
||||||
/>
|
/>
|
||||||
<span class="ml-2">cm</span>
|
<span class="ml-2">cm</span>
|
||||||
</div>
|
</div>
|
||||||
@ -110,10 +111,10 @@
|
|||||||
<el-form-item label="库位宽度" prop="locationWide" required>
|
<el-form-item label="库位宽度" prop="locationWide" required>
|
||||||
<div style="display: flex">
|
<div style="display: flex">
|
||||||
<el-input-number
|
<el-input-number
|
||||||
class="!w-200px"
|
|
||||||
placeholder="请输入"
|
placeholder="请输入"
|
||||||
v-model="form.locationWide"
|
v-model="form.locationWide"
|
||||||
:min="10"
|
:min="10"
|
||||||
|
:max="imgBgObj.width"
|
||||||
/>
|
/>
|
||||||
<span class="ml-2">cm</span>
|
<span class="ml-2">cm</span>
|
||||||
</div>
|
</div>
|
||||||
@ -194,73 +195,16 @@ const form = ref({
|
|||||||
locationYaw: undefined //弧度
|
locationYaw: undefined //弧度
|
||||||
})
|
})
|
||||||
|
|
||||||
const mapWidthCm = ref(0)
|
|
||||||
const mapHeightCm = ref(0)
|
|
||||||
|
|
||||||
watch(
|
|
||||||
() => props.imgBgObj,
|
|
||||||
(val) => {
|
|
||||||
mapWidthCm.value = (Number(val.width) * Number(val.resolution) * 100).toFixed(2)
|
|
||||||
mapHeightCm.value = (Number(val.height) * Number(val.resolution) * 100).toFixed(2)
|
|
||||||
},
|
|
||||||
{ immediate: true }
|
|
||||||
)
|
|
||||||
|
|
||||||
const rules = reactive({
|
const rules = reactive({
|
||||||
locationX: [
|
locationX: [{ required: true, message: '请输入X', trigger: 'blur' }],
|
||||||
{ required: true, message: '请输入X', trigger: 'blur' },
|
locationY: [{ required: true, message: '请输入Y', trigger: 'blur' }],
|
||||||
{
|
|
||||||
type: 'number',
|
|
||||||
min: 0,
|
|
||||||
max: Number(props.imgBgObj.width),
|
|
||||||
message: `不能超过地图宽度${props.imgBgObj.width}`,
|
|
||||||
trigger: 'blur'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
locationY: [
|
|
||||||
{ required: true, message: '请输入Y', trigger: 'blur' },
|
|
||||||
{
|
|
||||||
type: 'number',
|
|
||||||
min: 0,
|
|
||||||
max: Number(props.imgBgObj.height),
|
|
||||||
message: `不能超过地图长度${props.imgBgObj.height}`,
|
|
||||||
trigger: 'blur'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
locationYaw: [{ required: true, message: '请输入弧度', trigger: 'blur' }],
|
locationYaw: [{ required: true, message: '请输入弧度', trigger: 'blur' }],
|
||||||
type: [{ required: true, message: '请选择类型', trigger: 'blur' }],
|
type: [{ required: true, message: '请选择类型', trigger: 'blur' }],
|
||||||
layersNumber: [{ required: true, message: '请输入层数', trigger: 'blur' }],
|
layersNumber: [{ required: true, message: '请输入层数', trigger: 'blur' }],
|
||||||
locationNumber: [
|
locationNumber: [{ required: true, message: '请输入排序', trigger: 'blur' }],
|
||||||
{ required: true, message: '请输入排序', trigger: 'blur' },
|
|
||||||
{
|
|
||||||
type: 'number',
|
|
||||||
min: 0,
|
|
||||||
max: 10000000,
|
|
||||||
message: `不能超过10000000`,
|
|
||||||
trigger: 'blur'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
deviceId: [{ required: true, message: '请选择设备编号', trigger: 'blur' }],
|
deviceId: [{ required: true, message: '请选择设备编号', trigger: 'blur' }],
|
||||||
locationDeep: [
|
locationDeep: [{ required: true, message: '请选择库位长度', trigger: 'blur' }],
|
||||||
{ required: true, message: '请选择库位长度', trigger: 'blur' },
|
locationWide: [{ required: true, message: '请选择库位宽度', trigger: 'blur' }]
|
||||||
{
|
|
||||||
type: 'number',
|
|
||||||
min: 0,
|
|
||||||
max: Number(mapWidthCm.value),
|
|
||||||
message: `不能超过${Number(mapWidthCm.value)}cm`,
|
|
||||||
trigger: 'blur'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
locationWide: [
|
|
||||||
{ required: true, message: '请选择库位宽度', trigger: 'blur' },
|
|
||||||
{
|
|
||||||
type: 'number',
|
|
||||||
min: 0,
|
|
||||||
max: Number(mapHeightCm.value),
|
|
||||||
message: `不能超过${Number(mapHeightCm.value)}cm`,
|
|
||||||
trigger: 'blur'
|
|
||||||
}
|
|
||||||
]
|
|
||||||
})
|
})
|
||||||
|
|
||||||
const emit = defineEmits(['submitNodeSuccess', 'addEventListener'])
|
const emit = defineEmits(['submitNodeSuccess', 'addEventListener'])
|
||||||
@ -336,6 +280,7 @@ const dialogClose = () => {
|
|||||||
|
|
||||||
const equipmentList = ref([]) //用过的设备列表
|
const equipmentList = ref([]) //用过的设备列表
|
||||||
const open = (item, list) => {
|
const open = (item, list) => {
|
||||||
|
console.log(item)
|
||||||
form.value = item
|
form.value = item
|
||||||
form.value.layersNumber = item.dataList?.length || ''
|
form.value.layersNumber = item.dataList?.length || ''
|
||||||
form.value.deviceId = item?.deviceId || item?.dataObj?.id || ''
|
form.value.deviceId = item?.deviceId || item?.dataObj?.id || ''
|
||||||
|
@ -315,7 +315,7 @@
|
|||||||
>
|
>
|
||||||
<VueDragResizeRotate
|
<VueDragResizeRotate
|
||||||
v-for="(item, index) in state.allMapPointInfo"
|
v-for="(item, index) in state.allMapPointInfo"
|
||||||
:key="index + Number(item.locationX)"
|
:key="index"
|
||||||
:parent="true"
|
:parent="true"
|
||||||
:x="Number(item.locationX) - Number(item.locationWidePx) / 2"
|
:x="Number(item.locationX) - Number(item.locationWidePx) / 2"
|
||||||
:y="Number(item.locationY) - Number(item.locationDeepPx) / 2"
|
:y="Number(item.locationY) - Number(item.locationDeepPx) / 2"
|
||||||
@ -642,7 +642,6 @@
|
|||||||
|
|
||||||
<!-- 节点编辑 -->
|
<!-- 节点编辑 -->
|
||||||
<editNodeProperties
|
<editNodeProperties
|
||||||
v-if="imgBgObj.positionMapId"
|
|
||||||
ref="editNodePropertiesRef"
|
ref="editNodePropertiesRef"
|
||||||
:positionMapId="imgBgObj.positionMapId"
|
:positionMapId="imgBgObj.positionMapId"
|
||||||
:imgBgObj="imgBgObj"
|
:imgBgObj="imgBgObj"
|
||||||
@ -682,7 +681,6 @@
|
|||||||
/>
|
/>
|
||||||
<!-- 编辑地图路线 -->
|
<!-- 编辑地图路线 -->
|
||||||
<editMapRouteDialog
|
<editMapRouteDialog
|
||||||
v-if="imgBgObj.positionMapId"
|
|
||||||
ref="editMapRouteDialogRef"
|
ref="editMapRouteDialogRef"
|
||||||
@editMapRouteDialogSubmit="editMapRouteDialogSubmit"
|
@editMapRouteDialogSubmit="editMapRouteDialogSubmit"
|
||||||
@addEventListener="addEventListener"
|
@addEventListener="addEventListener"
|
||||||
@ -1103,7 +1101,7 @@ const state = reactive({
|
|||||||
switchType: 'tools',
|
switchType: 'tools',
|
||||||
name: '工具',
|
name: '工具',
|
||||||
icon: 'ep:briefcase',
|
icon: 'ep:briefcase',
|
||||||
isActive: false
|
isActive: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
switchType: 'lineLibrary',
|
switchType: 'lineLibrary',
|
||||||
@ -1151,7 +1149,7 @@ const state = reactive({
|
|||||||
switchType: 'grid',
|
switchType: 'grid',
|
||||||
name: '网格',
|
name: '网格',
|
||||||
icon: 'ep:grid',
|
icon: 'ep:grid',
|
||||||
isActive: false
|
isActive: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
switchType: 'larger',
|
switchType: 'larger',
|
||||||
@ -1216,8 +1214,8 @@ const state = reactive({
|
|||||||
isActive: false
|
isActive: false
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
isShowToolbar: false, //工具栏展示隐藏
|
isShowToolbar: true, //工具栏展示隐藏
|
||||||
isShowGrid: false, //网格展示隐藏
|
isShowGrid: true, //网格展示隐藏
|
||||||
moveForm: {
|
moveForm: {
|
||||||
locationX: 0,
|
locationX: 0,
|
||||||
locationY: 0
|
locationY: 0
|
||||||
@ -1414,9 +1412,6 @@ const toolbarClick = async (item) => {
|
|||||||
state.currentDragTarget.index = null
|
state.currentDragTarget.index = null
|
||||||
}
|
}
|
||||||
addEditHistory()
|
addEditHistory()
|
||||||
setTimeout(() => {
|
|
||||||
toolbarSwitchType.value = ''
|
|
||||||
}, 200)
|
|
||||||
break
|
break
|
||||||
case 'tools':
|
case 'tools':
|
||||||
//工具
|
//工具
|
||||||
|
Loading…
Reference in New Issue
Block a user