Svelte UI Update

This commit is contained in:
2024-03-23 14:56:45 +03:00
parent f24a0f8518
commit f51cb15da7
35 changed files with 314 additions and 39 deletions

View File

@@ -0,0 +1,31 @@
const configs = require("../configs");
const DeviceModel = require("../models/device.model");
const get = async (token, device_id) => {
if (token === configs.verifyToken) {
console.log(device_id);
try {
if (!device_id) {
// device_id verilmemişse bütün cihazalara ait bilgileri getir
const result = await DeviceModel.find({});
return result;
} else {
// device_id verilmişse sadece o cihaza ait bilgi getir
const result = await DeviceModel.findOne({
_id: device_id
});
if (result) {
return result;
} else {
throw new Error("Cihaz bulunamadı!");
}
}
} catch (error) {
throw new Error(error.message);
}
} else {
throw new Error("Hatalı token (set.controller)");
}
};
module.exports = { get };

View File

@@ -0,0 +1,29 @@
const configs = require("../configs");
const Library = require("../library");
const logSave = async (
token,
device_id,
remote_name,
remote_type,
operating_type
) => {
if (token === configs.verifyToken) {
try {
const result = await Library.saveDeviceLog(
device_id,
remote_name,
remote_type,
operating_type
);
return result;
} catch (error) {
throw new Error("Mongodb'ye kaydedilirken hata oluştu (log.controller)");
}
} else {
throw new Error("Hatalı token (log.controller)");
}
};
module.exports = { logSave };

View File

@@ -0,0 +1,53 @@
const configs = require("../configs");
const Library = require("../library");
const DeviceModel = require("../models/device.model");
const fetch = require("node-fetch");
const set = async (
token,
device_id,
remote_name,
remote_type,
operating_type
) => {
if (token === configs.verifyToken) {
try {
const deviceExist = await DeviceModel.findOne({
_id: device_id
});
if (deviceExist) {
const hostname = deviceExist.device_ip_address;
const response = await fetch(
"http://" +
hostname +
"/" +
operating_type +
"?token=" +
configs.verifyToken
);
const isOpen = await response.text();
console.log(isOpen);
if (isOpen === "true") {
Library.saveDeviceLog(
device_id,
remote_name,
remote_type,
operating_type
);
return operating_type + " işlemi başarılı!";
} else {
throw new Error("Client message: " + isOpen);
}
} else {
throw new Error("Cihaz bulunamadı!");
}
} catch (error) {
throw new Error(error.message);
}
} else {
throw new Error("Hatalı token (set.controller)");
}
};
module.exports = { set };

View File

@@ -0,0 +1,94 @@
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,
sensor_value,
battery_life
) => {
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,
update_time: new Date(Date.now()),
device_log: {
sensor_value,
battery_life
}
});
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
};
let update;
if (sensor_value === undefined && battery_life === undefined) {
update = {
$set: {
device_ip_address,
update_time: new Date(Date.now()),
}
};
} else {
update = {
$set: {
device_ip_address,
update_time: new Date(Date.now()),
device_log: {
sensor_value,
battery_life
}
}
};
}
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) {
throw new Error("Mongodb: " + error.message + " (save.controller)");
}
} else {
throw new Error("Hatalı token (save.controller)");
}
};
module.exports = { save };