first commit
This commit is contained in:
74
controller/save.controller.js
Normal file
74
controller/save.controller.js
Normal file
@@ -0,0 +1,74 @@
|
||||
const configs = require("../configs");
|
||||
const DeviceModel = require("../models/device.model");
|
||||
|
||||
const save = async (
|
||||
token,
|
||||
device_name,
|
||||
device_type,
|
||||
manifactor,
|
||||
serial_number,
|
||||
model,
|
||||
firmware_version,
|
||||
device_ip_address
|
||||
) => {
|
||||
if (token === configs.verifyToken) {
|
||||
try {
|
||||
// Önce kaydı bulalım
|
||||
const existingDevice = await DeviceModel.findOne({
|
||||
device_name,
|
||||
device_type,
|
||||
manifactor,
|
||||
serial_number,
|
||||
model,
|
||||
firmware_version
|
||||
});
|
||||
if (!existingDevice) {
|
||||
// İlk defa kaydet
|
||||
const newDevice = new DeviceModel({
|
||||
device_name,
|
||||
device_type,
|
||||
manifactor,
|
||||
serial_number,
|
||||
model,
|
||||
firmware_version,
|
||||
device_ip_address
|
||||
});
|
||||
const result = await newDevice.save();
|
||||
return "Cihaz kaydedildi.";
|
||||
} else {
|
||||
// Daha önce kaydedilmiş ise sadece ip adresini güncelle
|
||||
const filter = {
|
||||
device_name,
|
||||
device_type,
|
||||
manifactor,
|
||||
serial_number,
|
||||
model,
|
||||
firmware_version
|
||||
};
|
||||
|
||||
const update = {
|
||||
$set: {
|
||||
device_ip_address
|
||||
}
|
||||
};
|
||||
|
||||
const result = await DeviceModel.updateOne(filter, update);
|
||||
|
||||
if (result.nModified === 0) {
|
||||
throw new Error("Güncellenmek istenen kayıt bulunamadı");
|
||||
}
|
||||
|
||||
return "IP Adresi güncellendi";
|
||||
}
|
||||
} catch (error) {
|
||||
// if (error.code === 11000) {
|
||||
// throw new Error("Zaten kaydedilmiş");
|
||||
// }
|
||||
throw new Error("Mongodb'ye kaydedilirken hata oluştu");
|
||||
}
|
||||
} else {
|
||||
throw new Error("Hatalı token");
|
||||
}
|
||||
};
|
||||
|
||||
module.exports = { save };
|
||||
Reference in New Issue
Block a user