SignalR implemented

This commit is contained in:
TypoMustakes
2024-05-09 17:56:16 +02:00
parent 171d640f03
commit 5b0ff9e099
18 changed files with 520 additions and 0 deletions

View File

@@ -4,6 +4,7 @@
<meta charset="UTF-8">
<title>Customers</title>
<link rel="stylesheet" type="text/css" href="../style.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/microsoft-signalr/6.0.1/signalr.js"></script>
<script src="customers.js"></script>
</head>
<body>

View File

@@ -1,5 +1,41 @@
let customers = [];
let connection = null;
getcustomers();
setupSignalR();
function setupSignalR() {
connection = new signalR.HubConnectionBuilder()
.withUrl("https://localhost:5001/hub")
.configureLogging(signalR.LogLevel.Information)
.build();
connection.on("CustomerCreated", (user, message) => {
getcustomers();
});
connection.on("CustomerDeleted", (user, message) => {
getcustomers();
});
connection.on("CustomerUpdated", (user, message) => {
getcustomers();
});
connection.onclose(async () => {
await start();
});
start();
}
async function start() {
try {
await connection.start();
console.log("SignalR Connected.");
} catch (err) {
console.log(err);
setTimeout(start, 5000);
}
};
async function getcustomers()
{
@@ -14,6 +50,8 @@ async function getcustomers()
function display()
{
document.getElementById('saveresult').innerHTML = '';
document.getElementById('forms').innerHTML = '';
document.getElementById('resultarea').innerHTML = '';
customers.forEach(t => {

View File

@@ -4,6 +4,7 @@
<meta charset="UTF-8">
<title>Employees</title>
<link rel="stylesheet" type="text/css" href="../style.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/microsoft-signalr/6.0.1/signalr.js"></script>
<script src="employees.js"></script>
</head>
<body>

View File

@@ -1,5 +1,41 @@
let employees = [];
let connection = null;
getemployees();
setupSignalR();
function setupSignalR() {
connection = new signalR.HubConnectionBuilder()
.withUrl("https://localhost:5001/hub")
.configureLogging(signalR.LogLevel.Information)
.build();
connection.on("EmployeeCreated", (user, message) => {
getemployees();
});
connection.on("EmployeeDeleted", (user, message) => {
getemployees();
});
connection.on("EmployeeUpdated", (user, message) => {
getemployees();
});
connection.onclose(async () => {
await start();
});
start();
}
async function start() {
try {
await connection.start();
console.log("SignalR Connected.");
} catch (err) {
console.log(err);
setTimeout(start, 5000);
}
};
async function getemployees()
{
@@ -14,6 +50,8 @@ async function getemployees()
function display()
{
document.getElementById('saveresult').innerHTML = '';
document.getElementById('forms').innerHTML = '';
document.getElementById('resultarea').innerHTML = '';
employees.forEach(t => {

View File

@@ -4,6 +4,7 @@
<meta charset="UTF-8">
<title>Teams</title>
<link rel="stylesheet" type="text/css" href="../style.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/microsoft-signalr/6.0.1/signalr.js"></script>
<script src="maintainerteam.js"></script>
</head>
<body>

View File

@@ -1,5 +1,41 @@
let teams = [];
let connection = null;
getteams();
setupSignalR();
function setupSignalR() {
connection = new signalR.HubConnectionBuilder()
.withUrl("https://localhost:5001/hub")
.configureLogging(signalR.LogLevel.Information)
.build();
connection.on("MaintainerTeamCreated", (user, message) => {
getteams();
});
connection.on("MaintainerTeamDeleted", (user, message) => {
getteams();
});
connection.on("MaintainerTeamUpdated", (user, message) => {
getteams();
});
connection.onclose(async () => {
await start();
});
start();
}
async function start() {
try {
await connection.start();
console.log("SignalR Connected.");
} catch (err) {
console.log(err);
setTimeout(start, 5000);
}
};
async function getteams()
{
@@ -14,6 +50,8 @@ async function getteams()
function display()
{
document.getElementById('saveresult').innerHTML = '';
document.getElementById('forms').innerHTML = '';
document.getElementById('resultarea').innerHTML = '';
teams.forEach(t => {

View File

@@ -4,6 +4,7 @@
<meta charset="UTF-8">
<title>Get subordinates</title>
<link rel="stylesheet" type="text/css" href="../../style.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/microsoft-signalr/6.0.1/signalr.js"></script>
<script src="./script.js"></script>
</head>
<body>

View File

@@ -1,5 +1,54 @@
let employees = [];
let connection = null;
let selectedId = null;
getEmployees();
setupSignalR();
function setupSignalR() {
connection = new signalR.HubConnectionBuilder()
.withUrl("https://localhost:5001/hub")
.configureLogging(signalR.LogLevel.Information)
.build();
connection.on("EmployeeCreated", (user, message) => {
getEmployees();
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("EmployeeDeleted", (user, message) => {
getEmployees();
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("EmployeeUpdated", (user, message) => {
getEmployees();
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.onclose(async () => {
await start();
});
start();
}
async function start() {
try {
await connection.start();
console.log("SignalR Connected.");
} catch (err) {
console.log(err);
setTimeout(start, 5000);
}
};
async function getEmployees()
{
@@ -15,6 +64,7 @@ async function getEmployees()
function display()
{
document.getElementById('lines').innerHTML = '';
document.getElementById('resultarea').innerHTML = '';
employees.forEach(t => {
document.getElementById('lines').innerHTML +=
@@ -30,6 +80,7 @@ function display()
async function runQuery(id)
{
selectedId = id;
let results = []
document.getElementById('resultarea').innerHTML = '';

View File

@@ -4,6 +4,7 @@
<meta charset="UTF-8">
<title>Get leader responsible for service</title>
<link rel="stylesheet" type="text/css" href="../../style.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/microsoft-signalr/6.0.1/signalr.js"></script>
<script src="./script.js"></script>
</head>
<body>

View File

@@ -1,5 +1,96 @@
let services = [];
let connection = null;
let selectedId = null;
getServices();
setupSignalR();
function setupSignalR() {
connection = new signalR.HubConnectionBuilder()
.withUrl("https://localhost:5001/hub")
.configureLogging(signalR.LogLevel.Information)
.build();
connection.on("ServiceCreated", (user, message) => {
getServices();
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("ServiceDeleted", (user, message) => {
getServices();
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("ServiceUpdated", (user, message) => {
getServices();
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("EmployeeCreated", (user, message) => {
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("EmployeeUpdated", (user, message) => {
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("EmployeeDeleted", (user, message) => {
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("MaintainerTeamCreated", (user, message) => {
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("MaintainerTeamUpdated", (user, message) => {
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("MaintainerTeamDeleted", (user, message) => {
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.onclose(async () => {
await start();
});
start();
}
async function start() {
try {
await connection.start();
console.log("SignalR Connected.");
} catch (err) {
console.log(err);
setTimeout(start, 5000);
}
};
async function getServices()
{
@@ -15,6 +106,7 @@ async function getServices()
function display()
{
document.getElementById('lines').innerHTML = '';
document.getElementById('resultarea').innerHTML = '';
services.forEach(t => {
document.getElementById('lines').innerHTML +=
@@ -30,6 +122,7 @@ function display()
async function runQuery(id)
{
selectedId = id;
let result = null;
document.getElementById('resultarea').innerHTML = '';

View File

@@ -4,6 +4,7 @@
<meta charset="UTF-8">
<title>Who maintains a service</title>
<link rel="stylesheet" type="text/css" href="../../style.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/microsoft-signalr/6.0.1/signalr.js"></script>
<script src="./script.js"></script>
</head>
<body>

View File

@@ -1,5 +1,75 @@
let services = [];
let connection = null;
let selectedId = null;
getServices();
setupSignalR();
function setupSignalR() {
connection = new signalR.HubConnectionBuilder()
.withUrl("https://localhost:5001/hub")
.configureLogging(signalR.LogLevel.Information)
.build();
connection.on("ServiceCreated", (user, message) => {
getServices();
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("ServiceDeleted", (user, message) => {
getServices();
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("ServiceUpdated", (user, message) => {
getServices();
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("EmployeeCreated", (user, message) => {
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("EmployeeUpdated", (user, message) => {
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("EmployeeDeleted", (user, message) => {
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.onclose(async () => {
await start();
});
start();
}
async function start() {
try {
await connection.start();
console.log("SignalR Connected.");
} catch (err) {
console.log(err);
setTimeout(start, 5000);
}
};
async function getServices()
{
@@ -15,6 +85,7 @@ async function getServices()
function display()
{
document.getElementById('lines').innerHTML = '';
document.getElementById('resultarea').innerHTML = '';
services.forEach(t => {
document.getElementById('lines').innerHTML +=
@@ -30,6 +101,7 @@ function display()
async function runQuery(id)
{
selectedId = id;
let results = []
document.getElementById('resultarea').innerHTML = '';

View File

@@ -4,6 +4,7 @@
<meta charset="UTF-8">
<title>Who uses service</title>
<link rel="stylesheet" type="text/css" href="../../style.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/microsoft-signalr/6.0.1/signalr.js"></script>
<script src="./script.js"></script>
</head>
<body>

View File

@@ -1,5 +1,75 @@
let services = [];
let connection = null;
let selectedId = null;
getServices();
setupSignalR();
function setupSignalR() {
connection = new signalR.HubConnectionBuilder()
.withUrl("https://localhost:5001/hub")
.configureLogging(signalR.LogLevel.Information)
.build();
connection.on("ServiceCreated", (user, message) => {
getServices();
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("ServiceDeleted", (user, message) => {
getServices();
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("ServiceUpdated", (user, message) => {
getServices();
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("CustomerCreated", (user, message) => {
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("CustomerDeleted", (user, message) => {
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("CustomerUpdated", (user, message) => {
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.onclose(async () => {
await start();
});
start();
}
async function start() {
try {
await connection.start();
console.log("SignalR Connected.");
} catch (err) {
console.log(err);
setTimeout(start, 5000);
}
};
async function getServices()
{
@@ -15,6 +85,7 @@ async function getServices()
function display()
{
document.getElementById('lines').innerHTML = '';
document.getElementById('resultarea').innerHTML = '';
services.forEach(t => {
document.getElementById('lines').innerHTML +=
@@ -30,6 +101,7 @@ function display()
async function runQuery(id)
{
selectedId = id;
let results = []
document.getElementById('resultarea').innerHTML = '';

View File

@@ -4,6 +4,7 @@
<meta charset="UTF-8">
<title>Who works in a team</title>
<link rel="stylesheet" type="text/css" href="../../style.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/microsoft-signalr/6.0.1/signalr.js"></script>
<script src="./script.js"></script>
</head>
<body>

View File

@@ -1,5 +1,75 @@
let teams = [];
let connection = null;
let selectedId = null;
getTeams();
setupSignalR();
function setupSignalR() {
connection = new signalR.HubConnectionBuilder()
.withUrl("https://localhost:5001/hub")
.configureLogging(signalR.LogLevel.Information)
.build();
connection.on("MaintainerTeamCreated", (user, message) => {
getTeams();
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("MaintainerTeamDeleted", (user, message) => {
getTeams();
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("MaintainerTeamUpdated", (user, message) => {
getTeams();
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("EmployeeCreated", (user, message) => {
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("EmployeeDeleted", (user, message) => {
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.on("EmployeeUpdated", (user, message) => {
if (selectedId != null)
{
runQuery(selectedId);
}
});
connection.onclose(async () => {
await start();
});
start();
}
async function start() {
try {
await connection.start();
console.log("SignalR Connected.");
} catch (err) {
console.log(err);
setTimeout(start, 5000);
}
};
async function getTeams()
{
@@ -30,6 +100,7 @@ function display()
async function runQuery(id)
{
let selectedId = id;
let results = []
document.getElementById('resultarea').innerHTML = '';

View File

@@ -4,6 +4,7 @@
<meta charset="UTF-8">
<title>Services</title>
<link rel="stylesheet" type="text/css" href="../style.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/microsoft-signalr/6.0.1/signalr.js"></script>
<script src="services.js"></script>
</head>
<body>

View File

@@ -1,5 +1,41 @@
let services = [];
let connection = null;
getservices();
setupSignalR();
function setupSignalR() {
connection = new signalR.HubConnectionBuilder()
.withUrl("https://localhost:5001/hub")
.configureLogging(signalR.LogLevel.Information)
.build();
connection.on("ServiceCreated", (user, message) => {
getservices();
});
connection.on("ServiceDeleted", (user, message) => {
getservices();
});
connection.on("ServiceUpdated", (user, message) => {
getservices();
});
connection.onclose(async () => {
await start();
});
start();
}
async function start() {
try {
await connection.start();
console.log("SignalR Connected.");
} catch (err) {
console.log(err);
setTimeout(start, 5000);
}
};
async function getservices()
{
@@ -14,6 +50,8 @@ async function getservices()
function display()
{
document.getElementById('saveresult').innerHTML = '';
document.getElementById('forms').innerHTML = '';
document.getElementById('resultarea').innerHTML = '';
services.forEach(t => {