唐润平:设备唯一性
This commit is contained in:
@@ -68,9 +68,9 @@ let maxConstructionLength = ref(0);
|
|||||||
//计算锚点之间距离
|
//计算锚点之间距离
|
||||||
const pointDistance_str = computed(
|
const pointDistance_str = computed(
|
||||||
() =>
|
() =>
|
||||||
`${params.pointGap}米*${params.pointNum}=${
|
`${params.pointGap}米*${params.pointNum}=${(
|
||||||
params.pointGap * params.pointNum
|
params.pointGap * params.pointNum
|
||||||
}米`
|
).toFixed(2)}米`
|
||||||
);
|
);
|
||||||
|
|
||||||
watch(
|
watch(
|
||||||
@@ -92,16 +92,25 @@ const equipmentSetting = reactive({
|
|||||||
threshold: "", //阈值
|
threshold: "", //阈值
|
||||||
typeKey: null, //设备选择(设备名称)
|
typeKey: null, //设备选择(设备名称)
|
||||||
});
|
});
|
||||||
|
function resetEquipmentSetting() {
|
||||||
|
equipmentSetting.equipmentId = null;
|
||||||
|
equipmentSetting.equipmentName = "";
|
||||||
|
equipmentSetting.equipmentType = "";
|
||||||
|
equipmentSetting.position = "";
|
||||||
|
equipmentSetting.threshold = "";
|
||||||
|
equipmentSetting.typeKey = null;
|
||||||
|
equipment.value.reset();
|
||||||
|
equipmentType.value.reset();
|
||||||
|
}
|
||||||
|
|
||||||
// 绑定选择的设备类型
|
// 绑定选择的设备类型
|
||||||
function handleTypeChange(optionItem) {
|
function handleTypeChange(optionItem) {
|
||||||
equipmentSetting.equipmentType = optionItem.value;
|
equipmentSetting.equipmentType = optionItem.value;
|
||||||
console.log("option", equipmentSetting);
|
|
||||||
}
|
}
|
||||||
function handleEquipmentChange(equipmentItem) {
|
function handleEquipmentChange(equipmentItem) {
|
||||||
equipmentSetting.equipmentName = equipmentItem.label;
|
equipmentSetting.equipmentName = equipmentItem.label;
|
||||||
equipmentSetting.equipmentId = equipmentItem.equipmentId;
|
equipmentSetting.equipmentId = equipmentItem.equipmentId;
|
||||||
equipmentSetting.typeKey = equipmentItem.value;
|
equipmentSetting.typeKey = equipmentItem.value;
|
||||||
console.log("option", equipmentSetting);
|
|
||||||
}
|
}
|
||||||
// 设备类型选项参数
|
// 设备类型选项参数
|
||||||
let options = reactive([{ label: "暂无数据", value: "" }]);
|
let options = reactive([{ label: "暂无数据", value: "" }]);
|
||||||
@@ -144,11 +153,7 @@ function handelInput(e) {
|
|||||||
|
|
||||||
// 处理取消事件
|
// 处理取消事件
|
||||||
function handleCancel() {
|
function handleCancel() {
|
||||||
equipmentSetting.equipmentType = "";
|
resetEquipmentSetting();
|
||||||
equipmentSetting.chooseEquipment = null;
|
|
||||||
equipmentSetting.threshold = "";
|
|
||||||
equipment.value.reset();
|
|
||||||
equipmentType.value.reset();
|
|
||||||
// 发射事件给tunnel父组件
|
// 发射事件给tunnel父组件
|
||||||
emit("cancel");
|
emit("cancel");
|
||||||
}
|
}
|
||||||
@@ -183,12 +188,21 @@ function addEquipment() {
|
|||||||
message: "添加成功!",
|
message: "添加成功!",
|
||||||
type: "success",
|
type: "success",
|
||||||
});
|
});
|
||||||
|
resetEquipmentSetting();
|
||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
ElMessage({
|
if (err === 3000) {
|
||||||
message: "添加异常!",
|
ElMessage({
|
||||||
type: "warning",
|
message: "该设备已添加!",
|
||||||
});
|
type: "warning",
|
||||||
|
});
|
||||||
|
resetEquipmentSetting();
|
||||||
|
} else {
|
||||||
|
ElMessage({
|
||||||
|
message: "添加异常!",
|
||||||
|
type: "warning",
|
||||||
|
});
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -37,29 +37,33 @@ export const saveEquipment = (equipmentInfo, pointGap) => {
|
|||||||
let tempModelEquipmentList = [...modelEquipmentList]; //数组克隆
|
let tempModelEquipmentList = [...modelEquipmentList]; //数组克隆
|
||||||
tempModelEquipmentList.push(toRaw(equipmentInfo));
|
tempModelEquipmentList.push(toRaw(equipmentInfo));
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
apiSaveEquipment({
|
console.log("equId", equipmentInfo.equipmentId);
|
||||||
constructionLength: autoComputeConstructionLength(
|
hasEquipment(equipmentInfo.equipmentId)
|
||||||
tempModelEquipmentList,
|
? reject(3000)
|
||||||
pointGap
|
: apiSaveEquipment({
|
||||||
),
|
constructionLength: autoComputeConstructionLength(
|
||||||
isDefault,
|
tempModelEquipmentList,
|
||||||
modelEquipmentList: tempModelEquipmentList,
|
pointGap
|
||||||
remarks,
|
),
|
||||||
serialNumber,
|
isDefault,
|
||||||
tunnelId,
|
modelEquipmentList: tempModelEquipmentList,
|
||||||
tunnelLength: totalLength,
|
remarks,
|
||||||
tunnelName,
|
serialNumber,
|
||||||
})
|
tunnelId,
|
||||||
.then((res) => {
|
tunnelLength: totalLength,
|
||||||
if (res?.code === 1000) {
|
tunnelName,
|
||||||
modelEquipmentList.push(toRaw(equipmentInfo)); //存入本地
|
})
|
||||||
resolve();
|
.then((res) => {
|
||||||
}
|
if (res?.code === 1000) {
|
||||||
reject(res);
|
modelEquipmentList.push(toRaw(equipmentInfo)); //存入本地
|
||||||
})
|
resolve();
|
||||||
.catch((err) => {
|
}
|
||||||
reject();
|
console.log("add", res);
|
||||||
});
|
reject(res);
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
reject();
|
||||||
|
});
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -103,7 +107,7 @@ export const deleteEquipment = (equipmentId, pointGap) => {
|
|||||||
.then((res) => {
|
.then((res) => {
|
||||||
if (res?.code === 1000) {
|
if (res?.code === 1000) {
|
||||||
modelEquipmentList = modelEquipmentList.filter(
|
modelEquipmentList = modelEquipmentList.filter(
|
||||||
(item) => item.equipmentId != equipmentId
|
(item) => item.equipmentId === equipmentId
|
||||||
);
|
);
|
||||||
resolve();
|
resolve();
|
||||||
}
|
}
|
||||||
@@ -131,3 +135,11 @@ function autoComputeConstructionLength(modelEquipmentList, pointGap) {
|
|||||||
});
|
});
|
||||||
return maxLength;
|
return maxLength;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function hasEquipment(equipmentId) {
|
||||||
|
let result = false;
|
||||||
|
modelEquipmentList.forEach((item) => {
|
||||||
|
if (item.equipmentId === equipmentId) result = true;
|
||||||
|
});
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user