库位改为选择大小
This commit is contained in:
parent
0b68d94c82
commit
0279e69b0c
@ -4,9 +4,9 @@ NODE_ENV=development
|
||||
VITE_DEV=true
|
||||
|
||||
# 请求路径
|
||||
# VITE_BASE_URL='http://192.168.77.50:48080'
|
||||
VITE_BASE_URL='http://10.10.7.132:48080'
|
||||
# VITE_BASE_URL='http://10.10.100.15:48080'
|
||||
VITE_BASE_URL='http://10.10.5.5:48080'
|
||||
# VITE_BASE_URL='http://10.10.5.5:48080'
|
||||
|
||||
# 文件上传类型:server - 后端上传, client - 前端直连上传,仅支持 S3 服务
|
||||
VITE_UPLOAD_TYPE=server
|
||||
|
5
.vscode/settings.json
vendored
5
.vscode/settings.json
vendored
@ -142,5 +142,8 @@
|
||||
},
|
||||
"terminal.integrated.scrollback": 10000,
|
||||
"nuxt.isNuxtApp": false,
|
||||
"liveServer.settings.port": 5502
|
||||
"liveServer.settings.port": 5502,
|
||||
"[dotenv]": {
|
||||
"editor.defaultFormatter": "foxundermoon.shell-format"
|
||||
}
|
||||
}
|
||||
|
@ -248,3 +248,10 @@ export const checkHaveTask = async (data) => {
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export const getHouseLocationTypeList = async (params) => {
|
||||
return await request.get({
|
||||
url: `/system/ware/house-location-type/getList`,
|
||||
params
|
||||
})
|
||||
}
|
||||
|
@ -33,10 +33,10 @@
|
||||
</el-row>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item required label="车辆状态">
|
||||
<el-form-item required label="锁定状态">
|
||||
<el-select
|
||||
v-model="formData.robotTaskModel"
|
||||
placeholder="请选择车辆类型"
|
||||
placeholder="请选择锁定状态"
|
||||
required
|
||||
:disabled="!formData.id"
|
||||
>
|
||||
@ -45,10 +45,23 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item required label="车辆状态">
|
||||
<el-select v-model="formData.robotStatus" placeholder="请选择车辆状态" required>
|
||||
<el-option label="暂停且无任务" :value="0" />
|
||||
<el-option label="暂停(有处理中的任务)" :value="1" />
|
||||
<el-option label="任务中" :value="2" />
|
||||
<el-option label="待命" :value="3" />
|
||||
<el-option label="充电中" :value="4" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item required label="自动充电电量" prop="autoCharge">
|
||||
<el-input-number
|
||||
style="width: 130px"
|
||||
style="width: 180px"
|
||||
v-model="formData.autoCharge"
|
||||
:disabled="false"
|
||||
:controls="false"
|
||||
@ -62,13 +75,11 @@
|
||||
<template #append>%</template>
|
||||
</el-input-number>
|
||||
<span style="margin-left: 5px">%</span>
|
||||
<span style="margin-left: 4px; color: #c60606; font-size: 12px"
|
||||
<span style="margin-left: 10px; color: #c60606; font-size: 12px"
|
||||
>建议自动充电电量大于30%</span
|
||||
>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item required label="Mac地址" prop="macAddress">
|
||||
<el-input
|
||||
@ -80,6 +91,8 @@
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item required label="选择范围" placeholder="请选择范围">
|
||||
<el-cascader
|
||||
@ -93,8 +106,6 @@
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="车辆IP" prop="robotIp">
|
||||
<el-input
|
||||
@ -106,6 +117,8 @@
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="车辆端口" prop="robotPort">
|
||||
<el-input
|
||||
@ -118,6 +131,7 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<el-row :gutter="20">
|
||||
<el-form-item label="摄像头配置">
|
||||
<el-button type="primary" @click="addCameraConfig">添加</el-button>
|
||||
@ -235,6 +249,7 @@ const formData = ref({
|
||||
autoCharge: undefined,
|
||||
robotIp: undefined,
|
||||
robotPort: undefined,
|
||||
robotStatus: undefined,
|
||||
cameraAddVOList: []
|
||||
})
|
||||
const carModelList = ref([])
|
||||
@ -436,6 +451,7 @@ const resetForm = () => {
|
||||
autoCharge: undefined,
|
||||
robotIp: undefined,
|
||||
robotPort: undefined,
|
||||
robotStatus: undefined,
|
||||
cameraAddVOList: []
|
||||
}
|
||||
floorAreaJsonData.value = []
|
||||
|
@ -133,6 +133,24 @@
|
||||
</el-select>
|
||||
</div>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="库位类型" required prop="locationTypeId">
|
||||
<el-select
|
||||
class="!w-300px"
|
||||
v-model="form.locationTypeId"
|
||||
clearable
|
||||
placeholder="请选择库位类型"
|
||||
@change="houseLocationTypeChange"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in houseLocationTypeList"
|
||||
:key="item.id"
|
||||
:label="item.typeName"
|
||||
:value="item.id"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="库位长度" prop="locationDeep" required>
|
||||
<div style="display: flex">
|
||||
<el-input-number
|
||||
@ -140,6 +158,7 @@
|
||||
placeholder="请输入"
|
||||
v-model="form.locationDeep"
|
||||
:min="10"
|
||||
:disabled="form.type === 2"
|
||||
/>
|
||||
<span class="ml-2">cm</span>
|
||||
</div>
|
||||
@ -151,10 +170,12 @@
|
||||
placeholder="请输入"
|
||||
v-model="form.locationWide"
|
||||
:min="10"
|
||||
:disabled="form.type === 2"
|
||||
/>
|
||||
<span class="ml-2">cm</span>
|
||||
</div>
|
||||
</el-form-item>
|
||||
|
||||
<!-- <div v-if="form.type === 2 || form.type === 4">
|
||||
<el-form-item label="库位方向" prop="direction">
|
||||
<el-select
|
||||
@ -249,7 +270,8 @@ const form = ref({
|
||||
dataObj: {}, //存 设备点 停车点 文字
|
||||
positionMapId: undefined,
|
||||
deviceId: undefined, //设备id
|
||||
locationYaw: undefined //弧度
|
||||
locationYaw: undefined, //弧度
|
||||
locationTypeId: undefined //库位类型
|
||||
})
|
||||
|
||||
const mapWidthCm = ref(0)
|
||||
@ -309,6 +331,7 @@ const rules = reactive({
|
||||
}
|
||||
],
|
||||
deviceId: [{ required: true, message: '请选择设备编号', trigger: 'blur' }],
|
||||
locationTypeId: [{ required: true, message: '请选择库位类型', trigger: 'blur' }],
|
||||
locationDeep: [
|
||||
{ required: true, message: '请选择库位长度', trigger: 'blur' },
|
||||
{
|
||||
@ -351,7 +374,8 @@ const submit = async (formEl) => {
|
||||
direction: form.value.direction || undefined, //方向
|
||||
inDirection: form.value.inDirection || undefined, //进入方向
|
||||
outDirection: form.value.outDirection || undefined, //离开方向
|
||||
locationStorey: index + 1 //层数
|
||||
locationStorey: index + 1, //层数
|
||||
locationTypeId: form.value.locationTypeId
|
||||
}
|
||||
if (
|
||||
form.value.dataList.length > 0 &&
|
||||
@ -414,8 +438,13 @@ const equipmentList = ref([]) //用过的设备列表
|
||||
const open = (item, list) => {
|
||||
console.log(item)
|
||||
form.value = item
|
||||
form.value.layersNumber = item.dataList?.length || ''
|
||||
form.value.positionMapId = props.positionMapId
|
||||
form.value.layersNumber = item.dataList?.length || ''
|
||||
|
||||
//库位点
|
||||
if (item.type === 2) {
|
||||
form.value.locationTypeId = form.value.dataList[0].locationTypeId
|
||||
}
|
||||
|
||||
//绑定区域变更点相关
|
||||
if (item.type === 5 && item.dataObj?.sortNum && item.dataObj?.id) {
|
||||
@ -436,7 +465,7 @@ const open = (item, list) => {
|
||||
deviceInfo.value.deviceType = ''
|
||||
}
|
||||
}
|
||||
|
||||
getHouseLocationTypeList()
|
||||
dialogFormVisible.value = true
|
||||
}
|
||||
|
||||
@ -457,10 +486,11 @@ const typeChange = (type) => {
|
||||
form.value.locationWidePx = 8
|
||||
} else if (type === 2) {
|
||||
form.value.locationNumber = null
|
||||
form.value.locationDeep = 150
|
||||
form.value.locationWide = 150
|
||||
form.value.locationDeepPx = 30
|
||||
form.value.locationWidePx = 30
|
||||
//选一个默认的库位
|
||||
let firstItem = houseLocationTypeList.value[0]
|
||||
form.value.locationTypeId = firstItem.id
|
||||
form.value.locationDeep = Number(firstItem.locationDeep)
|
||||
form.value.locationWide = Number(firstItem.locationWide)
|
||||
} else if (type === 3) {
|
||||
form.value.direction = null
|
||||
form.value.inDirection = null
|
||||
@ -617,6 +647,16 @@ const convertActualToBrowser = (pointX, pointY) => {
|
||||
return { x, y }
|
||||
}
|
||||
|
||||
const houseLocationTypeList = ref()
|
||||
const getHouseLocationTypeList = async () => {
|
||||
houseLocationTypeList.value = await MapApi.getHouseLocationTypeList()
|
||||
}
|
||||
const houseLocationTypeChange = (id) => {
|
||||
let item = houseLocationTypeList.value.find((item) => item.id === id)
|
||||
form.value.locationDeep = Number(item.locationDeep)
|
||||
form.value.locationWide = Number(item.locationWide)
|
||||
}
|
||||
|
||||
defineExpose({ open }) // 提供 open 方法,用于打开弹窗
|
||||
</script>
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user