Finished server talk
This commit is contained in:
parent
0fbf4cd919
commit
ea3d1906da
45 changed files with 963 additions and 209 deletions
|
|
@ -1,19 +1,16 @@
|
||||||
const url = 'http://127.0.0.1:5180/api/';
|
const url = 'http://127.0.0.1:5180/api/';
|
||||||
async function ping(){
|
async function ping(){
|
||||||
fetch ('http://127.0.0.1:5180/api/ping')
|
const data = await fetch ('http://127.0.0.1:5180/api/ping');
|
||||||
.then(data => {
|
|
||||||
console.log(data);
|
console.log(data);
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async function setBaseDataHorseAPI(id, basedata) {
|
async function setBaseDataHorseAPI(id, basedata) {
|
||||||
try {
|
try {
|
||||||
console.log("Setting horse data");
|
console.log("Setting horse data");
|
||||||
console.log("ID:", id); // Log ID to ensure it's received correctly
|
console.log("ID:", id);
|
||||||
console.log("Basedata:", basedata); // Log the entire horse data to check
|
console.log("Basedata:", basedata);
|
||||||
|
|
||||||
const apiUrl = url+`setHorseBasicData/id=${id}`;
|
const apiUrl = url+`updateHorse/${id}/BasicData`;
|
||||||
|
|
||||||
// Wait for the API call to complete
|
|
||||||
const response = await fetch(apiUrl, {
|
const response = await fetch(apiUrl, {
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
body: JSON.stringify(basedata),
|
body: JSON.stringify(basedata),
|
||||||
|
|
@ -21,26 +18,16 @@ async function setBaseDataHorseAPI(id, basedata) {
|
||||||
'Content-Type': 'application/json'
|
'Content-Type': 'application/json'
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
console.log("API Response:", response); // Log the response from the API
|
console.log("API Response:", response);
|
||||||
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error("Error setting horse data: " + error.message);
|
console.error("Error setting horse data: " + error.message);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
async function getHorseAPI(id) {
|
|
||||||
let horseData;
|
|
||||||
const apiUrl = url+`getHorse/id=${id}`;
|
|
||||||
await fetch(apiUrl)
|
|
||||||
.then(response => response.json())
|
|
||||||
.then(data => {
|
|
||||||
horseData = data;
|
|
||||||
});
|
|
||||||
return horseData;
|
|
||||||
}
|
|
||||||
async function getHorseLoadStateAPIAsync(id)
|
async function getHorseLoadStateAPIAsync(id)
|
||||||
{
|
{
|
||||||
let horseData;
|
let horseData;
|
||||||
const apiUrl = url+`getHorseLoadState/id=${id}`;
|
const apiUrl = url+`getHorse/${id}/LoadState`;
|
||||||
await fetch(apiUrl)
|
await fetch(apiUrl)
|
||||||
.then(response => response.json())
|
.then(response => response.json())
|
||||||
.then(data => {
|
.then(data => {
|
||||||
|
|
@ -48,32 +35,37 @@ async function getHorseLoadStateAPIAsync(id)
|
||||||
});
|
});
|
||||||
return horseData;
|
return horseData;
|
||||||
}
|
}
|
||||||
|
|
||||||
async function setHorsePedigreeAPIAsync(id, pedigreeData)
|
async function setHorsePedigreeAPIAsync(id, pedigreeData)
|
||||||
{
|
{
|
||||||
const apiUrl = url+`setHorsePedigree/id=${id}`;
|
const apiUrl = url+`updateHorse/${id}/Pedigree`;
|
||||||
const response = await fetch(apiUrl, {
|
const response = await fetch(apiUrl, {
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
body: JSON.stringify(pedigreeData),
|
body: JSON.stringify({RelatedIds:pedigreeData}),
|
||||||
headers: {
|
headers: {
|
||||||
'Content-Type': 'application/json'
|
'Content-Type': 'application/json'
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
return response;
|
return response;
|
||||||
}
|
}
|
||||||
|
|
||||||
async function setHorseTrainingAPIAsync(id, training)
|
async function setHorseTrainingAPIAsync(id, training)
|
||||||
{
|
{
|
||||||
const apiUrl = url+`setHorseTraining/id=${id}`;
|
const apiUrl = url+`updateHorse/${id}/Training`;
|
||||||
const response = await fetch(apiUrl, {
|
const response = await fetch(apiUrl, {
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
body: JSON.stringify(training),
|
body: JSON.stringify({ TrainingText: training }),
|
||||||
headers: {
|
headers: {
|
||||||
'Content-Type': 'application/json'
|
'Content-Type': 'application/json'
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
return response;
|
||||||
}
|
}
|
||||||
|
|
||||||
async function setHorseGeneticsAPIAsync(id, genetics)
|
async function setHorseGeneticsAPIAsync(id, genetics)
|
||||||
{
|
{
|
||||||
const apiUrl = url+`setHorseGenetics/id=${id}`;
|
const apiUrl = url+`updateHorse/${id}/Genetics`;
|
||||||
|
console.log("Accessing API at:", apiUrl);
|
||||||
const response = await fetch(apiUrl, {
|
const response = await fetch(apiUrl, {
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
body: JSON.stringify(genetics),
|
body: JSON.stringify(genetics),
|
||||||
|
|
@ -81,15 +73,32 @@ async function setHorseGeneticsAPIAsync(id, genetics)
|
||||||
'Content-Type': 'application/json'
|
'Content-Type': 'application/json'
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
return response;
|
||||||
}
|
}
|
||||||
|
|
||||||
async function setHorseHealthAPIAsync(id, health)
|
async function setHorseHealthAPIAsync(id, health)
|
||||||
{
|
{
|
||||||
const apiUrl = url+`setHorseHealth/id=${id}`;
|
const apiUrl = url+`updateHorse/${id}/Health`;
|
||||||
const response = await fetch(apiUrl, {
|
const response = await fetch(apiUrl, {
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
body: JSON.stringify(health),
|
body: JSON.stringify({ HealthData: health }),
|
||||||
headers: {
|
headers: {
|
||||||
'Content-Type': 'application/json'
|
'Content-Type': 'application/json'
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
return response;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Neue Funktion für Achievements
|
||||||
|
async function setHorseAchievementsAPIAsync(id, achievements)
|
||||||
|
{
|
||||||
|
const apiUrl = url+`updateHorse/${id}/Achievements`;
|
||||||
|
const response = await fetch(apiUrl, {
|
||||||
|
method: 'POST',
|
||||||
|
body: JSON.stringify({ Achievements: achievements }),
|
||||||
|
headers: {
|
||||||
|
'Content-Type': 'application/json'
|
||||||
|
}
|
||||||
|
});
|
||||||
|
return response;
|
||||||
}
|
}
|
||||||
|
|
@ -2,57 +2,83 @@ importScripts("./API.js");
|
||||||
|
|
||||||
chrome.runtime.onMessage.addListener((message, sender, sendResponse) => {
|
chrome.runtime.onMessage.addListener((message, sender, sendResponse) => {
|
||||||
if (message.action === "updateHorseData") {
|
if (message.action === "updateHorseData") {
|
||||||
updateHorseButton(); // Call the function
|
// Kein async/await mehr in diesem Aufruf
|
||||||
|
updateHorseButton();
|
||||||
}
|
}
|
||||||
|
// Kein return true erforderlich, da wir kein asynchrones sendResponse nutzen
|
||||||
});
|
});
|
||||||
|
|
||||||
async function updateHorseButton() {
|
function sendMessageAsync(tabId, message) {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
chrome.tabs.sendMessage(tabId, message, (response) => {
|
||||||
|
if (chrome.runtime.lastError) {
|
||||||
|
reject(new Error(chrome.runtime.lastError.message));
|
||||||
|
} else {
|
||||||
|
resolve(response);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function updateHorseButton() {
|
||||||
console.log("Updating horse data");
|
console.log("Updating horse data");
|
||||||
|
|
||||||
// Query the active tab
|
// Aktiven Tab ermitteln
|
||||||
chrome.tabs.query({ active: true, currentWindow: true }, function (tabs) {
|
new Promise((resolve) => {
|
||||||
if (tabs.length === 0) {
|
chrome.tabs.query({ active: true, currentWindow: true }, resolve);
|
||||||
|
})
|
||||||
|
.then((tabs) => {
|
||||||
|
if (!tabs || tabs.length === 0) {
|
||||||
console.error("No active tab found.");
|
console.error("No active tab found.");
|
||||||
return;
|
return; // Beende die Kette
|
||||||
}
|
}
|
||||||
|
|
||||||
const activeTabId = tabs[0].id;
|
const activeTabId = tabs[0].id;
|
||||||
|
|
||||||
// First: Get horse basic data
|
// Schritt 1: Basisdaten des Pferdes holen
|
||||||
chrome.tabs.sendMessage(
|
return sendMessageAsync(activeTabId, { action: "getHorseBasicData" })
|
||||||
activeTabId,
|
.then((basicDataResponse) => {
|
||||||
{ action: "getHorseBasicData" },
|
if (!basicDataResponse || !basicDataResponse.success) {
|
||||||
async function (response) {
|
console.error("Failed to get horse basic data:", basicDataResponse ? basicDataResponse.message : "No response");
|
||||||
if (!response || !response.success) {
|
return; // Beende die Kette
|
||||||
console.error("Failed to get horse data from content script.");
|
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log("Horse data received:", response.data);
|
console.log("Horse data received:", basicDataResponse.data);
|
||||||
const horseData = response.data;
|
const horseData = basicDataResponse.data;
|
||||||
|
|
||||||
// Check if horse exists via API
|
// Pferd beim Backend prüfen
|
||||||
const existingHorse = await getHorseAPI(horseData.id);
|
return getHorseLoadStateAPIAsync(horseData.id)
|
||||||
|
.then((existingHorse) => {
|
||||||
if (!existingHorse || existingHorse.message === "Horse not found") {
|
if (!existingHorse || existingHorse.message === "Horse not found") {
|
||||||
console.warn("Horse not found in the API.");
|
console.warn("Horse not found in the API.");
|
||||||
return;
|
return; // Beende die Kette
|
||||||
}
|
}
|
||||||
|
|
||||||
// Update horse data in the API
|
// Basisdaten an die API senden
|
||||||
await setBaseDataHorseAPI(horseData.id, horseData);
|
return setBaseDataHorseAPI(horseData.id, horseData)
|
||||||
|
.then(() => {
|
||||||
|
console.log("Base data updated in API for horse ID:", horseData.id);
|
||||||
|
|
||||||
// Second: Get horse current data
|
// Schritt 2: Aktuelle Horse-Daten holen (abhängig vom aktiven Tab)
|
||||||
chrome.tabs.sendMessage(activeTabId, { action: "getHorseCurrentData", data: { id: horseData.id } }, function (currentDataResponse)
|
return sendMessageAsync(activeTabId, { action: "getHorseCurrentData", data: { id: horseData.id } })
|
||||||
{
|
.then((currentDataResponse) => {
|
||||||
if (!currentDataResponse) {
|
if (!currentDataResponse) {
|
||||||
console.error("Failed to get current horse data.");
|
console.error("Failed to get current horse data: No response");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log("Current horse data received:", currentDataResponse);
|
if (!currentDataResponse.success) {
|
||||||
|
console.error("Failed to get current horse data. Error:", currentDataResponse.message);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
);
|
|
||||||
}
|
console.log("Current horse data received:", currentDataResponse.data);
|
||||||
);
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
})
|
||||||
|
.catch((error) => {
|
||||||
|
console.error("Error in updateHorseButton:", error);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,89 +1,237 @@
|
||||||
chrome.runtime.onMessage.addListener(async (request, sender, sendResponse) => {
|
chrome.runtime.onMessage.addListener(async (request, sender, sendResponse) => {
|
||||||
if (request.action === "getHorseBasicData") {
|
|
||||||
try {
|
try {
|
||||||
|
if (request.action === "getHorseBasicData") {
|
||||||
console.log("Getting horse data");
|
console.log("Getting horse data");
|
||||||
|
|
||||||
const idString = document.querySelector('.right:nth-child(2)').innerText.replace('#', '');
|
const idEl = document.querySelector('.right:nth-child(2)');
|
||||||
// Convert the ID to BigInt
|
const ageEl = document.querySelector('.right:nth-child(6)');
|
||||||
const id = BigInt(idString); // Converts to BigInt, equivalent to ulong in C#
|
const genderEl = document.querySelector('img.icon16');
|
||||||
|
const breedEl = document.querySelector('.right:nth-child(4)');
|
||||||
|
|
||||||
|
if (!idEl || !ageEl || !genderEl || !breedEl) {
|
||||||
|
console.error("Some required elements for basic horse data not found on the page.");
|
||||||
|
sendResponse({ success: false, message: "Required elements not found." });
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
const idString = idEl.innerText.replace('#', '');
|
||||||
|
const id = BigInt(idString).toString();
|
||||||
|
|
||||||
// Convert BigInt to string before sending
|
|
||||||
const idStringForResponse = id.toString(); // Convert to string to prevent serialization issues
|
|
||||||
const horseData = {
|
const horseData = {
|
||||||
id: idStringForResponse || "", // Stelle sicher, dass die ID vorhanden ist
|
id: id,
|
||||||
age: parseInt(document.querySelector('.right:nth-child(6)').innerText, 10) || 0, // Alter muss eine Zahl sein
|
age: parseInt(ageEl.innerText, 10) || 0,
|
||||||
name: document.title.replace(/ - Horse Reality.*$/, '') || "Unknown", // Name darf nicht leer sein
|
name: (document.title.replace(/ - Horse Reality.*$/, '') || "Unknown").trim(),
|
||||||
gender: document.querySelector('img.icon16')?.alt || "Unknown", // Geschlecht prüfen
|
gender: genderEl.alt || "Unknown",
|
||||||
breed: document.querySelector('.right:nth-child(4)')?.innerText || "Unknown", // Rasse prüfen
|
breed: breedEl.innerText || "Unknown",
|
||||||
link: window.location.href || "" // Link sicherstellen
|
link: window.location.href || ""
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
console.log("Horse data gathered:", horseData);
|
console.log("Horse data gathered:", horseData);
|
||||||
|
|
||||||
// Sending response back to background script
|
|
||||||
sendResponse({ success: true, data: horseData });
|
sendResponse({ success: true, data: horseData });
|
||||||
|
|
||||||
} catch (error) {
|
} else if (request.action === "getHorseCurrentData") {
|
||||||
console.error("Error gathering horse data: " + error.message);
|
|
||||||
sendResponse({ success: false, message: "Error gathering horse data: " + error.message });
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else if (request.action === "getHorseCurrentData")
|
|
||||||
{
|
|
||||||
console.log("Getting current horse selected tab data");
|
console.log("Getting current horse selected tab data");
|
||||||
|
|
||||||
const selectedTab = getTabselText();
|
const selectedTab = getTabselText();
|
||||||
console.log("Selected tab:", selectedTab);
|
console.log("Selected tab:", selectedTab);
|
||||||
if (selectedTab === "Summary")
|
|
||||||
{
|
if (selectedTab === "Summary") {
|
||||||
let relatedHorses = Array.from(document.querySelectorAll('.pedigree a')).map(link => link.href);
|
const pedigreeLinks = document.querySelectorAll('.pedigree a');
|
||||||
let response = await setHorsePedigreeAPIAsync(request.data.id, relatedHorses);
|
if (!pedigreeLinks) {
|
||||||
console.log("Response from API:", response);
|
console.error("No pedigree links found for Summary tab.");
|
||||||
sendResponse({ success: true, data: response });
|
sendResponse({ success: false, message: "No pedigree links found." });
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
else if (selectedTab === "Training")
|
const relatedHorses = Array.from(pedigreeLinks).map(link => link.href);
|
||||||
{
|
console.log("Related horses:", relatedHorses);
|
||||||
let training = document.querySelector('.top:nth-child(8)') ? document.querySelector('.top:nth-child(8)').innerText : document.querySelector('.top:nth-child(6)').innerText;
|
|
||||||
let response = await setHorseTrainingAPIAsync(request.data.id, training);
|
try {
|
||||||
console.log("Response from API:", response);
|
const response = await setHorsePedigreeAPIAsync(request.data.id, relatedHorses);
|
||||||
sendResponse({ success: true, data: response });
|
if (!response.ok) {
|
||||||
|
console.error("API returned an error:", response.statusText);
|
||||||
|
sendResponse({ success: false, message: "API error: " + response.statusText });
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
else if (selectedTab === "Genetics")
|
const jsonData = await response.json();
|
||||||
{
|
console.log("API Response:", jsonData);
|
||||||
const colorGenetics = Array.from(document.querySelectorAll('.genetic_result')).map(x => x.innerText);
|
sendResponse({ success: true, data: jsonData });
|
||||||
const geneticPotential = Array.from(document.querySelectorAll('.genetic_stats'))
|
} catch (error) {
|
||||||
|
console.error("Error in Summary tab:", error);
|
||||||
|
sendResponse({ success: false, message: error.message });
|
||||||
|
}
|
||||||
|
|
||||||
|
} else if (selectedTab === "Training") {
|
||||||
|
const trainingEl8 = document.querySelector('.top:nth-child(8)');
|
||||||
|
const trainingEl6 = document.querySelector('.top:nth-child(6)');
|
||||||
|
const training = (trainingEl8 && trainingEl8.innerText)
|
||||||
|
|| (trainingEl6 && trainingEl6.innerText)
|
||||||
|
|| "Unknown";
|
||||||
|
|
||||||
|
try {
|
||||||
|
const response = await setHorseTrainingAPIAsync(request.data.id, training);
|
||||||
|
if (!response.ok) {
|
||||||
|
console.error("API returned an error:", response.statusText);
|
||||||
|
sendResponse({ success: false, message: "API error: " + response.statusText });
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
const jsonData = await response.json();
|
||||||
|
console.log("API Response:", jsonData);
|
||||||
|
sendResponse({ success: true, data: jsonData });
|
||||||
|
} catch (error) {
|
||||||
|
console.error("Error in Training tab:", error);
|
||||||
|
sendResponse({ success: false, message: error.message });
|
||||||
|
}
|
||||||
|
|
||||||
|
} else if (selectedTab === "Genetics") {
|
||||||
|
try {
|
||||||
|
const gpDiv = Array.from(document.querySelectorAll('.top div')).find(el => el.innerText.includes('GP'));
|
||||||
|
if (!gpDiv) {
|
||||||
|
console.error("No GP element found.");
|
||||||
|
sendResponse({ success: false, message: "No GP element found." });
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
const totalGeneticPotentialStr = gpDiv.innerText.replace("GP total: ", "").trim();
|
||||||
|
const totalGeneticPotential = parseInt(totalGeneticPotentialStr, 10) || 0;
|
||||||
|
|
||||||
|
const geneticElems = Array.from(document.querySelectorAll('.genetic_name , .genetic_result'));
|
||||||
|
if (geneticElems.length === 0) {
|
||||||
|
console.error("No genetic elements found.");
|
||||||
|
sendResponse({ success: false, message: "No genetic elements found." });
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
const geneticDictionary = Object.fromEntries(
|
||||||
|
geneticElems.map(x => x.innerText)
|
||||||
|
.reduce((acc, cur, i, arr) => (i % 2 === 0 ? acc.push([cur, arr[i + 1]]) : null, acc), [])
|
||||||
|
);
|
||||||
|
|
||||||
|
const geneticsStats = Array.from(document.querySelectorAll('.genetic_stats'));
|
||||||
|
if (geneticsStats.length < 10) {
|
||||||
|
console.error("Not enough genetic stats found.");
|
||||||
|
sendResponse({ success: false, message: "Not enough genetic stats found for genetics calculation." });
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
const geneticPotentialList = geneticsStats
|
||||||
.map(x => x.innerText.trim())
|
.map(x => x.innerText.trim())
|
||||||
.filter(value => !isNaN(value) && value !== "")
|
.filter(value => !isNaN(value) && value !== "")
|
||||||
.map(value => parseFloat(value));
|
.map(value => parseFloat(value));
|
||||||
const totalGeneticPotential = (Array.from(document.querySelectorAll('.top div')).find(el => el.innerText.includes('GP'))?.innerText || "").replace("GP total: ", "").trim();
|
|
||||||
|
|
||||||
let response = setHorseGeneticsAPI(request.data.id, colorGenetics);
|
const GeneticPotential = {
|
||||||
console.log("Response from API:", response);
|
GP: totalGeneticPotential,
|
||||||
sendResponse({ success: true, data: response });
|
GeneticPotential: {
|
||||||
|
"Acceleration": geneticPotentialList[0],
|
||||||
|
"Agility": geneticPotentialList[1],
|
||||||
|
"Balance": geneticPotentialList[2],
|
||||||
|
"Bascule": geneticPotentialList[3],
|
||||||
|
"Pulling power": geneticPotentialList[4],
|
||||||
|
"Speed": geneticPotentialList[5],
|
||||||
|
"Sprint": geneticPotentialList[6],
|
||||||
|
"Stamina": geneticPotentialList[7],
|
||||||
|
"Strength": geneticPotentialList[8],
|
||||||
|
"Surefootedness": geneticPotentialList[9]
|
||||||
|
},
|
||||||
|
Disciplines: {
|
||||||
|
"Dressage": geneticPotentialList[1] + geneticPotentialList[2] + geneticPotentialList[8],
|
||||||
|
"Driving": geneticPotentialList[1] + geneticPotentialList[4] + geneticPotentialList[5] + geneticPotentialList[7] + geneticPotentialList[8],
|
||||||
|
"Endurance": geneticPotentialList[5] + geneticPotentialList[7] + geneticPotentialList[8] + geneticPotentialList[9],
|
||||||
|
"Eventing": geneticPotentialList[2] + geneticPotentialList[3] + geneticPotentialList[5] + geneticPotentialList[8] + geneticPotentialList[9],
|
||||||
|
"Flat Racing": geneticPotentialList[5] + geneticPotentialList[0] + geneticPotentialList[7] + geneticPotentialList[6],
|
||||||
|
"Show Jumping": geneticPotentialList[0] + geneticPotentialList[1] + geneticPotentialList[3] + geneticPotentialList[6] + geneticPotentialList[8],
|
||||||
|
"Western Reining": geneticPotentialList[0] + geneticPotentialList[1] + geneticPotentialList[2] + geneticPotentialList[9]
|
||||||
|
},
|
||||||
|
Colors: geneticDictionary
|
||||||
|
};
|
||||||
|
|
||||||
|
console.log("Genetic Potential:", GeneticPotential);
|
||||||
|
|
||||||
|
const response = await setHorseGeneticsAPIAsync(request.data.id, GeneticPotential);
|
||||||
|
if (!response.ok) {
|
||||||
|
console.error("API returned an error:", response.statusText);
|
||||||
|
sendResponse({ success: false, message: "API error: " + response.statusText });
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
else if (selectedTab === "Achievements")
|
|
||||||
{
|
const jsonData = await response.json();
|
||||||
let genetics = Array.from(document.querySelectorAll('.genetic_stats')).map(x => x.innerText).filter(text => /poor|below average|average|good|very good/i.test(text)); // Walk, Trot, Canter, Gallop, Posture...
|
console.log("API Response:", jsonData);
|
||||||
let response = setHorseAchievementsAPI(request.data.id, genetics);
|
|
||||||
// Second part of the achievements tab needed for show results
|
sendResponse({ success: true, data: jsonData });
|
||||||
// Placeholder
|
} catch (error) {
|
||||||
let response2 = setHorseConformationAPI(request.data.id, { });
|
console.error("Error while processing Genetics tab:", error);
|
||||||
console.log("Response from API:", response);
|
sendResponse({ success: false, message: error.message });
|
||||||
}
|
}
|
||||||
else if (selectedTab === "Health")
|
|
||||||
{
|
} else if (selectedTab === "Achievements") {
|
||||||
let health = [...document.querySelector("#tab_health2 p").innerText.matchAll(/:\s*(\w+)/g)].map(match => match[1]);
|
const geneticStatsEls = document.querySelectorAll('.genetic_stats');
|
||||||
let response = setHorseHealthAPI(request.data.id, health);
|
if (!geneticStatsEls || geneticStatsEls.length === 0) {
|
||||||
console.log("Response from API:", response);
|
console.error("No genetic_stats elements found for Achievements.");
|
||||||
|
sendResponse({ success: false, message: "No genetic_stats found for Achievements." });
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
const achievements = Array.from(geneticStatsEls)
|
||||||
|
.map(x => x.innerText)
|
||||||
|
.filter(text => /poor|below average|average|good|very good/i.test(text));
|
||||||
|
console.log("Achievements data:", achievements);
|
||||||
|
|
||||||
|
try {
|
||||||
|
const response = await setHorseAchievementsAPIAsync(request.data.id, achievements);
|
||||||
|
if (!response.ok) {
|
||||||
|
console.error("API returned an error:", response.statusText);
|
||||||
|
sendResponse({ success: false, message: "API error: " + response.statusText });
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
const jsonData = await response.json();
|
||||||
|
console.log("API Response:", jsonData);
|
||||||
|
sendResponse({ success: true, data: jsonData });
|
||||||
|
} catch (error) {
|
||||||
|
console.error("Error in Achievements tab:", error);
|
||||||
|
sendResponse({ success: false, message: error.message });
|
||||||
|
}
|
||||||
|
|
||||||
|
} else if (selectedTab === "Health") {
|
||||||
|
const healthEl = document.querySelector("#tab_health2 p");
|
||||||
|
if (!healthEl) {
|
||||||
|
console.error("Health element not found.");
|
||||||
|
sendResponse({ success: false, message: "Health element not found." });
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
const matches = [...healthEl.innerText.matchAll(/:\s*(\w+)/g)];
|
||||||
|
const health = matches.map(match => match[1]);
|
||||||
|
console.log("Health data:", health);
|
||||||
|
|
||||||
|
try {
|
||||||
|
const response = await setHorseHealthAPIAsync(request.data.id, health);
|
||||||
|
if (!response.ok) {
|
||||||
|
console.error("API returned an error:", response.statusText);
|
||||||
|
sendResponse({ success: false, message: "API error: " + response.statusText });
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
const jsonData = await response.json();
|
||||||
|
console.log("API Response:", jsonData);
|
||||||
|
sendResponse({ success: true, data: jsonData });
|
||||||
|
} catch (error) {
|
||||||
|
console.error("Error in Health tab:", error);
|
||||||
|
sendResponse({ success: false, message: error.message });
|
||||||
|
}
|
||||||
|
|
||||||
|
} else {
|
||||||
console.error("Unknown or no tab selected.");
|
console.error("Unknown or no tab selected.");
|
||||||
|
sendResponse({ success: false, message: "Unknown or no tab selected." });
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
console.error("Unsupported action:", request.action);
|
||||||
|
sendResponse({ success: false, message: "Unsupported action." });
|
||||||
}
|
}
|
||||||
return true; // This is necessary to allow asynchronous response
|
} catch (error) {
|
||||||
|
console.error("Unexpected error occurred:", error);
|
||||||
|
sendResponse({ success: false, message: error.message });
|
||||||
|
}
|
||||||
|
|
||||||
|
return true; // Wichtig, um asynchrone Antworten zu ermöglichen
|
||||||
});
|
});
|
||||||
|
|
||||||
function getTabselText() {
|
function getTabselText() {
|
||||||
const tabElement = document.querySelector('div.tabsel').textContent?.trim();
|
return document.querySelector('div.tabsel')?.textContent?.trim() || "Unknown";
|
||||||
return tabElement;
|
|
||||||
}
|
}
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -1,7 +1,24 @@
|
||||||
{
|
{
|
||||||
"Version": 1,
|
"Version": 1,
|
||||||
"WorkspaceRootPath": "C:\\Users\\SvenK\\source\\repos\\HRServer-Exporter\\",
|
"WorkspaceRootPath": "Z:\\[01] Kribitz Development\\[02] Projekte\\HR-Collector\\HRServer-Exporter\\",
|
||||||
"Documents": [],
|
"Documents": [
|
||||||
|
{
|
||||||
|
"AbsoluteMoniker": "D:0:0:{86A245AC-2CD6-4303-97B9-8463B6B6B8D6}|HRServer\\HRServer.csproj|z:\\[01] kribitz development\\[02] projekte\\hr-collector\\hrserver-exporter\\hrserver\\models\\horse.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||||
|
"RelativeMoniker": "D:0:0:{86A245AC-2CD6-4303-97B9-8463B6B6B8D6}|HRServer\\HRServer.csproj|solutionrelative:hrserver\\models\\horse.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"AbsoluteMoniker": "D:0:0:{86A245AC-2CD6-4303-97B9-8463B6B6B8D6}|HRServer\\HRServer.csproj|z:\\[01] kribitz development\\[02] projekte\\hr-collector\\hrserver-exporter\\hrserver\\controllers\\horsecontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||||
|
"RelativeMoniker": "D:0:0:{86A245AC-2CD6-4303-97B9-8463B6B6B8D6}|HRServer\\HRServer.csproj|solutionrelative:hrserver\\controllers\\horsecontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"AbsoluteMoniker": "D:0:0:{86A245AC-2CD6-4303-97B9-8463B6B6B8D6}|HRServer\\HRServer.csproj|z:\\[01] kribitz development\\[02] projekte\\hr-collector\\hrserver-exporter\\hrserver\\properties\\launchsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}",
|
||||||
|
"RelativeMoniker": "D:0:0:{86A245AC-2CD6-4303-97B9-8463B6B6B8D6}|HRServer\\HRServer.csproj|solutionrelative:hrserver\\properties\\launchsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"AbsoluteMoniker": "D:0:0:{86A245AC-2CD6-4303-97B9-8463B6B6B8D6}|HRServer\\HRServer.csproj|z:\\[01] kribitz development\\[02] projekte\\hr-collector\\hrserver-exporter\\hrserver\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||||
|
"RelativeMoniker": "D:0:0:{86A245AC-2CD6-4303-97B9-8463B6B6B8D6}|HRServer\\HRServer.csproj|solutionrelative:hrserver\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||||
|
}
|
||||||
|
],
|
||||||
"DocumentGroupContainers": [
|
"DocumentGroupContainers": [
|
||||||
{
|
{
|
||||||
"Orientation": 0,
|
"Orientation": 0,
|
||||||
|
|
@ -9,11 +26,63 @@
|
||||||
"DocumentGroups": [
|
"DocumentGroups": [
|
||||||
{
|
{
|
||||||
"DockedWidth": 200,
|
"DockedWidth": 200,
|
||||||
"SelectedChildIndex": -1,
|
"SelectedChildIndex": 1,
|
||||||
"Children": [
|
"Children": [
|
||||||
{
|
{
|
||||||
"$type": "Bookmark",
|
"$type": "Bookmark",
|
||||||
"Name": "ST:0:0:{1c4feeaa-4718-4aa9-859d-94ce25d182ba}"
|
"Name": "ST:0:0:{1c4feeaa-4718-4aa9-859d-94ce25d182ba}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"$type": "Document",
|
||||||
|
"DocumentIndex": 0,
|
||||||
|
"Title": "Horse.cs",
|
||||||
|
"DocumentMoniker": "Z:\\[01] Kribitz Development\\[02] Projekte\\HR-Collector\\HRServer-Exporter\\HRServer\\Models\\Horse.cs",
|
||||||
|
"RelativeDocumentMoniker": "HRServer\\Models\\Horse.cs",
|
||||||
|
"ToolTip": "Z:\\[01] Kribitz Development\\[02] Projekte\\HR-Collector\\HRServer-Exporter\\HRServer\\Models\\Horse.cs",
|
||||||
|
"RelativeToolTip": "HRServer\\Models\\Horse.cs",
|
||||||
|
"ViewState": "AgIAAE0AAAAAAAAAAAAIwAcAAABIAAAAAAAAAA==",
|
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||||
|
"WhenOpened": "2024-12-07T17:50:21.836Z",
|
||||||
|
"EditorCaption": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"$type": "Document",
|
||||||
|
"DocumentIndex": 2,
|
||||||
|
"Title": "launchSettings.json",
|
||||||
|
"DocumentMoniker": "Z:\\[01] Kribitz Development\\[02] Projekte\\HR-Collector\\HRServer-Exporter\\HRServer\\Properties\\launchSettings.json",
|
||||||
|
"RelativeDocumentMoniker": "HRServer\\Properties\\launchSettings.json",
|
||||||
|
"ToolTip": "Z:\\[01] Kribitz Development\\[02] Projekte\\HR-Collector\\HRServer-Exporter\\HRServer\\Properties\\launchSettings.json",
|
||||||
|
"RelativeToolTip": "HRServer\\Properties\\launchSettings.json",
|
||||||
|
"ViewState": "AgIAAAUAAAAAAAAAAAAkwA0AAAAgAAAAAAAAAA==",
|
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
|
||||||
|
"WhenOpened": "2024-12-07T15:18:38.498Z",
|
||||||
|
"EditorCaption": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"$type": "Document",
|
||||||
|
"DocumentIndex": 3,
|
||||||
|
"Title": "Program.cs",
|
||||||
|
"DocumentMoniker": "Z:\\[01] Kribitz Development\\[02] Projekte\\HR-Collector\\HRServer-Exporter\\HRServer\\Program.cs",
|
||||||
|
"RelativeDocumentMoniker": "HRServer\\Program.cs",
|
||||||
|
"ToolTip": "Z:\\[01] Kribitz Development\\[02] Projekte\\HR-Collector\\HRServer-Exporter\\HRServer\\Program.cs",
|
||||||
|
"RelativeToolTip": "HRServer\\Program.cs",
|
||||||
|
"ViewState": "AgIAAAAAAAAAAAAAAAAAABcAAAANAAAAAAAAAA==",
|
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||||
|
"WhenOpened": "2024-12-07T13:05:31.847Z",
|
||||||
|
"EditorCaption": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"$type": "Document",
|
||||||
|
"DocumentIndex": 1,
|
||||||
|
"Title": "HorseController.cs",
|
||||||
|
"DocumentMoniker": "Z:\\[01] Kribitz Development\\[02] Projekte\\HR-Collector\\HRServer-Exporter\\HRServer\\Controllers\\HorseController.cs",
|
||||||
|
"RelativeDocumentMoniker": "HRServer\\Controllers\\HorseController.cs",
|
||||||
|
"ToolTip": "Z:\\[01] Kribitz Development\\[02] Projekte\\HR-Collector\\HRServer-Exporter\\HRServer\\Controllers\\HorseController.cs",
|
||||||
|
"RelativeToolTip": "HRServer\\Controllers\\HorseController.cs",
|
||||||
|
"ViewState": "AgIAAE8AAAAAAAAAAAAUwHEAAAAAAAAAAAAAAA==",
|
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||||
|
"WhenOpened": "2024-12-07T13:05:14.341Z",
|
||||||
|
"EditorCaption": ""
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,18 +1,22 @@
|
||||||
{
|
{
|
||||||
"Version": 1,
|
"Version": 1,
|
||||||
"WorkspaceRootPath": "C:\\Users\\SvenK\\source\\repos\\HRServer-Exporter\\",
|
"WorkspaceRootPath": "Z:\\[01] Kribitz Development\\[02] Projekte\\HR-Collector\\HRServer-Exporter\\",
|
||||||
"Documents": [
|
"Documents": [
|
||||||
{
|
{
|
||||||
"AbsoluteMoniker": "D:0:0:{86A245AC-2CD6-4303-97B9-8463B6B6B8D6}|HRServer\\HRServer.csproj|c:\\users\\svenk\\source\\repos\\hrserver-exporter\\hrserver\\models\\horse.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
"AbsoluteMoniker": "D:0:0:{86A245AC-2CD6-4303-97B9-8463B6B6B8D6}|HRServer\\HRServer.csproj|z:\\[01] kribitz development\\[02] projekte\\hr-collector\\hrserver-exporter\\hrserver\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||||
"RelativeMoniker": "D:0:0:{86A245AC-2CD6-4303-97B9-8463B6B6B8D6}|HRServer\\HRServer.csproj|solutionrelative:hrserver\\models\\horse.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
"RelativeMoniker": "D:0:0:{86A245AC-2CD6-4303-97B9-8463B6B6B8D6}|HRServer\\HRServer.csproj|solutionrelative:hrserver\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"AbsoluteMoniker": "D:0:0:{86A245AC-2CD6-4303-97B9-8463B6B6B8D6}|HRServer\\HRServer.csproj|c:\\users\\svenk\\source\\repos\\hrserver-exporter\\hrserver\\controllers\\horsecontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
"AbsoluteMoniker": "D:0:0:{86A245AC-2CD6-4303-97B9-8463B6B6B8D6}|HRServer\\HRServer.csproj|z:\\[01] kribitz development\\[02] projekte\\hr-collector\\hrserver-exporter\\hrserver\\controllers\\horsecontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||||
"RelativeMoniker": "D:0:0:{86A245AC-2CD6-4303-97B9-8463B6B6B8D6}|HRServer\\HRServer.csproj|solutionrelative:hrserver\\controllers\\horsecontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
"RelativeMoniker": "D:0:0:{86A245AC-2CD6-4303-97B9-8463B6B6B8D6}|HRServer\\HRServer.csproj|solutionrelative:hrserver\\controllers\\horsecontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"AbsoluteMoniker": "D:0:0:{86A245AC-2CD6-4303-97B9-8463B6B6B8D6}|HRServer\\HRServer.csproj|c:\\users\\svenk\\source\\repos\\hrserver-exporter\\hrserver\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
"AbsoluteMoniker": "D:0:0:{86A245AC-2CD6-4303-97B9-8463B6B6B8D6}|HRServer\\HRServer.csproj|z:\\[01] kribitz development\\[02] projekte\\hr-collector\\hrserver-exporter\\hrserver\\properties\\launchsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}",
|
||||||
"RelativeMoniker": "D:0:0:{86A245AC-2CD6-4303-97B9-8463B6B6B8D6}|HRServer\\HRServer.csproj|solutionrelative:hrserver\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
"RelativeMoniker": "D:0:0:{86A245AC-2CD6-4303-97B9-8463B6B6B8D6}|HRServer\\HRServer.csproj|solutionrelative:hrserver\\properties\\launchsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"AbsoluteMoniker": "D:0:0:{86A245AC-2CD6-4303-97B9-8463B6B6B8D6}|HRServer\\HRServer.csproj|z:\\[01] kribitz development\\[02] projekte\\hr-collector\\hrserver-exporter\\hrserver\\models\\horse.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||||
|
"RelativeMoniker": "D:0:0:{86A245AC-2CD6-4303-97B9-8463B6B6B8D6}|HRServer\\HRServer.csproj|solutionrelative:hrserver\\models\\horse.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"DocumentGroupContainers": [
|
"DocumentGroupContainers": [
|
||||||
|
|
@ -22,7 +26,7 @@
|
||||||
"DocumentGroups": [
|
"DocumentGroups": [
|
||||||
{
|
{
|
||||||
"DockedWidth": 200,
|
"DockedWidth": 200,
|
||||||
"SelectedChildIndex": 1,
|
"SelectedChildIndex": 3,
|
||||||
"Children": [
|
"Children": [
|
||||||
{
|
{
|
||||||
"$type": "Bookmark",
|
"$type": "Bookmark",
|
||||||
|
|
@ -30,26 +34,39 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"$type": "Document",
|
"$type": "Document",
|
||||||
"DocumentIndex": 0,
|
"DocumentIndex": 3,
|
||||||
"Title": "Horse.cs",
|
"Title": "Horse.cs",
|
||||||
"DocumentMoniker": "C:\\Users\\SvenK\\source\\repos\\HRServer-Exporter\\HRServer\\Models\\Horse.cs",
|
"DocumentMoniker": "Z:\\[01] Kribitz Development\\[02] Projekte\\HR-Collector\\HRServer-Exporter\\HRServer\\Models\\Horse.cs",
|
||||||
"RelativeDocumentMoniker": "HRServer\\Models\\Horse.cs",
|
"RelativeDocumentMoniker": "HRServer\\Models\\Horse.cs",
|
||||||
"ToolTip": "C:\\Users\\SvenK\\source\\repos\\HRServer-Exporter\\HRServer\\Models\\Horse.cs",
|
"ToolTip": "Z:\\[01] Kribitz Development\\[02] Projekte\\HR-Collector\\HRServer-Exporter\\HRServer\\Models\\Horse.cs",
|
||||||
"RelativeToolTip": "HRServer\\Models\\Horse.cs",
|
"RelativeToolTip": "HRServer\\Models\\Horse.cs",
|
||||||
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAA==",
|
"ViewState": "AgIAAE0AAAAAAAAAAAAIwAcAAABIAAAAAAAAAA==",
|
||||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||||
"WhenOpened": "2024-12-07T13:10:32.994Z",
|
"WhenOpened": "2024-12-07T17:50:21.836Z",
|
||||||
"EditorCaption": ""
|
"EditorCaption": ""
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"$type": "Document",
|
"$type": "Document",
|
||||||
"DocumentIndex": 2,
|
"DocumentIndex": 2,
|
||||||
|
"Title": "launchSettings.json",
|
||||||
|
"DocumentMoniker": "Z:\\[01] Kribitz Development\\[02] Projekte\\HR-Collector\\HRServer-Exporter\\HRServer\\Properties\\launchSettings.json",
|
||||||
|
"RelativeDocumentMoniker": "HRServer\\Properties\\launchSettings.json",
|
||||||
|
"ToolTip": "Z:\\[01] Kribitz Development\\[02] Projekte\\HR-Collector\\HRServer-Exporter\\HRServer\\Properties\\launchSettings.json",
|
||||||
|
"RelativeToolTip": "HRServer\\Properties\\launchSettings.json",
|
||||||
|
"ViewState": "AgIAAAUAAAAAAAAAAAAkwA0AAAAgAAAAAAAAAA==",
|
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
|
||||||
|
"WhenOpened": "2024-12-07T15:18:38.498Z",
|
||||||
|
"EditorCaption": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"$type": "Document",
|
||||||
|
"DocumentIndex": 0,
|
||||||
"Title": "Program.cs",
|
"Title": "Program.cs",
|
||||||
"DocumentMoniker": "C:\\Users\\SvenK\\source\\repos\\HRServer-Exporter\\HRServer\\Program.cs",
|
"DocumentMoniker": "Z:\\[01] Kribitz Development\\[02] Projekte\\HR-Collector\\HRServer-Exporter\\HRServer\\Program.cs",
|
||||||
"RelativeDocumentMoniker": "HRServer\\Program.cs",
|
"RelativeDocumentMoniker": "HRServer\\Program.cs",
|
||||||
"ToolTip": "C:\\Users\\SvenK\\source\\repos\\HRServer-Exporter\\HRServer\\Program.cs",
|
"ToolTip": "Z:\\[01] Kribitz Development\\[02] Projekte\\HR-Collector\\HRServer-Exporter\\HRServer\\Program.cs",
|
||||||
"RelativeToolTip": "HRServer\\Program.cs",
|
"RelativeToolTip": "HRServer\\Program.cs",
|
||||||
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
|
"ViewState": "AgIAAA0AAAAAAAAAAAAgwBcAAAAqAAAAAAAAAA==",
|
||||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||||
"WhenOpened": "2024-12-07T13:05:31.847Z",
|
"WhenOpened": "2024-12-07T13:05:31.847Z",
|
||||||
"EditorCaption": ""
|
"EditorCaption": ""
|
||||||
|
|
@ -58,11 +75,11 @@
|
||||||
"$type": "Document",
|
"$type": "Document",
|
||||||
"DocumentIndex": 1,
|
"DocumentIndex": 1,
|
||||||
"Title": "HorseController.cs",
|
"Title": "HorseController.cs",
|
||||||
"DocumentMoniker": "C:\\Users\\SvenK\\source\\repos\\HRServer-Exporter\\HRServer\\Controllers\\HorseController.cs",
|
"DocumentMoniker": "Z:\\[01] Kribitz Development\\[02] Projekte\\HR-Collector\\HRServer-Exporter\\HRServer\\Controllers\\HorseController.cs",
|
||||||
"RelativeDocumentMoniker": "HRServer\\Controllers\\HorseController.cs",
|
"RelativeDocumentMoniker": "HRServer\\Controllers\\HorseController.cs",
|
||||||
"ToolTip": "C:\\Users\\SvenK\\source\\repos\\HRServer-Exporter\\HRServer\\Controllers\\HorseController.cs",
|
"ToolTip": "Z:\\[01] Kribitz Development\\[02] Projekte\\HR-Collector\\HRServer-Exporter\\HRServer\\Controllers\\HorseController.cs",
|
||||||
"RelativeToolTip": "HRServer\\Controllers\\HorseController.cs",
|
"RelativeToolTip": "HRServer\\Controllers\\HorseController.cs",
|
||||||
"ViewState": "AgIAAAAAAAAAAAAAAAAAABEAAAAJAAAAAAAAAA==",
|
"ViewState": "AgIAAE8AAAAAAAAAAAAUwGYAAAAMAAAAAAAAAA==",
|
||||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||||
"WhenOpened": "2024-12-07T13:05:14.341Z",
|
"WhenOpened": "2024-12-07T13:05:14.341Z",
|
||||||
"EditorCaption": ""
|
"EditorCaption": ""
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
using HRServer.Models;
|
using HRServer.Models;
|
||||||
using Microsoft.AspNetCore.Mvc;
|
using Microsoft.AspNetCore.Mvc;
|
||||||
|
using Microsoft.Extensions.Hosting;
|
||||||
|
|
||||||
namespace HRServer.Controllers
|
namespace HRServer.Controllers
|
||||||
{
|
{
|
||||||
[ApiController]
|
[ApiController]
|
||||||
[Route("[controller]")]
|
|
||||||
public class HorseController : ControllerBase
|
public class HorseController : ControllerBase
|
||||||
{
|
{
|
||||||
private readonly ILogger<HorseController> _logger;
|
private readonly ILogger<HorseController> _logger;
|
||||||
|
|
@ -13,30 +13,101 @@ namespace HRServer.Controllers
|
||||||
{
|
{
|
||||||
_logger = logger;
|
_logger = logger;
|
||||||
}
|
}
|
||||||
|
[HttpGet("/api/ping")]
|
||||||
|
public IActionResult Ping()
|
||||||
|
{
|
||||||
|
return Ok("pong");
|
||||||
|
}
|
||||||
[HttpGet("/api/getHorse/{id}")]
|
[HttpGet("/api/getHorse/{id}")]
|
||||||
public IActionResult GetHorse ([FromRoute] int id)
|
public IActionResult GetHorse (int id)
|
||||||
{
|
{
|
||||||
var horse = HorseFactory.GetHorse((ulong)id);
|
var horse = HorseFactory.GetHorse((ulong)id);
|
||||||
if (horse == null)
|
if (horse == null)
|
||||||
return NotFound(new { Message = "Horse not found." });
|
{
|
||||||
|
horse = new Horse { Id = (ulong)id };
|
||||||
|
HorseFactory.AddOrUpdateHorse(horse);
|
||||||
|
}
|
||||||
return Ok(horse);
|
return Ok(horse);
|
||||||
}
|
}
|
||||||
[HttpGet("/api/getHorseLoadState/{id}")]
|
[HttpGet("/api/getHorse/{id}/LoadState")]
|
||||||
public IActionResult GetHorseLoadState ([FromRoute] int id)
|
public IActionResult GetHorseLoadState (ulong id)
|
||||||
{
|
{
|
||||||
// Hole das Pferd aus der Factory
|
// Hole das Pferd aus der Factory
|
||||||
var horse = HorseFactory.GetHorse((ulong)id);
|
var horse = HorseFactory.GetHorse((ulong)id);
|
||||||
|
|
||||||
// Überprüfe, ob das Pferd existiert
|
// Überprüfe, ob das Pferd existiert
|
||||||
if (horse == null)
|
if (horse == null)
|
||||||
return NotFound(new { Message = "Horse not found." });
|
{
|
||||||
|
horse = new Horse { Id = (ulong)id };
|
||||||
|
HorseFactory.AddOrUpdateHorse(horse);
|
||||||
|
}
|
||||||
|
|
||||||
// Gib den Ladezustand des Pferdes zurück
|
// Gib den Ladezustand des Pferdes zurück
|
||||||
return Ok(horse.LoadState);
|
return Ok(horse.LoadState);
|
||||||
}
|
}
|
||||||
/*[HttpGet("/api/setHorseBasicData/{id}")]
|
[HttpPost("/api/updateHorse/{id}/BasicData")]
|
||||||
public IActionResult GetHorsesAsync([FromRoute] int id)
|
public IActionResult UpdateHorseBasicData(ulong id, [FromBody] Horse websiteHorse)
|
||||||
{
|
{
|
||||||
}*/
|
var localHorse = HorseFactory.GetHorse((ulong)id);
|
||||||
|
if (localHorse == null)
|
||||||
|
{
|
||||||
|
localHorse = new Horse { Id = (ulong)id };
|
||||||
|
HorseFactory.AddOrUpdateHorse(localHorse);
|
||||||
|
}
|
||||||
|
localHorse.Age = localHorse.Age;
|
||||||
|
localHorse.Breed = localHorse.Breed;
|
||||||
|
localHorse.HorseName = localHorse.HorseName;
|
||||||
|
localHorse.Gender = localHorse.Gender;
|
||||||
|
localHorse.Link = localHorse.Link;
|
||||||
|
return Ok(localHorse);
|
||||||
|
}
|
||||||
|
[HttpPost("/api/updateHorse/{id}/Pedigree")]
|
||||||
|
public IActionResult UpdateHorsePedigree(ulong id, [FromBody] HorseSummary websiteHorseSummary)
|
||||||
|
{
|
||||||
|
var localHorse = HorseFactory.GetHorse((ulong)id);
|
||||||
|
if (localHorse == null)
|
||||||
|
{
|
||||||
|
localHorse = new Horse { Id = (ulong)id };
|
||||||
|
HorseFactory.AddOrUpdateHorse(localHorse);
|
||||||
|
}
|
||||||
|
localHorse.Summary = websiteHorseSummary;
|
||||||
|
return Ok(localHorse);
|
||||||
|
}
|
||||||
|
[HttpPost("/api/updateHorse/{id}/Training")]
|
||||||
|
public IActionResult UpdateHorseTraining(ulong id, [FromBody] HorseTraining websiteHorseTraining)
|
||||||
|
{
|
||||||
|
var localHorse = HorseFactory.GetHorse((ulong)id);
|
||||||
|
if (localHorse == null)
|
||||||
|
{
|
||||||
|
localHorse = new Horse { Id = (ulong)id };
|
||||||
|
HorseFactory.AddOrUpdateHorse(localHorse);
|
||||||
|
}
|
||||||
|
localHorse.Training = websiteHorseTraining;
|
||||||
|
return Ok(localHorse);
|
||||||
|
}
|
||||||
|
[HttpPost("/api/updateHorse/{id}/Health")]
|
||||||
|
public IActionResult UpdateHorseHealth(ulong id, [FromBody] HorseHealth websiteHorseHealth)
|
||||||
|
{
|
||||||
|
var localHorse = HorseFactory.GetHorse((ulong)id);
|
||||||
|
if (localHorse == null)
|
||||||
|
{
|
||||||
|
localHorse = new Horse { Id = (ulong)id };
|
||||||
|
HorseFactory.AddOrUpdateHorse(localHorse);
|
||||||
|
}
|
||||||
|
localHorse.Health = websiteHorseHealth;
|
||||||
|
return Ok(localHorse);
|
||||||
|
}
|
||||||
|
[HttpPost("/api/updateHorse/{id}/Genetics")]
|
||||||
|
public IActionResult UpdateHorseGenetics(ulong id, [FromBody] HorseGenetics websiteHorseGenetics)
|
||||||
|
{
|
||||||
|
var localHorse = HorseFactory.GetHorse((ulong)id);
|
||||||
|
if (localHorse == null)
|
||||||
|
{
|
||||||
|
localHorse = new Horse { Id = (ulong)id };
|
||||||
|
HorseFactory.AddOrUpdateHorse(localHorse);
|
||||||
|
}
|
||||||
|
localHorse.Genetics = websiteHorseGenetics;
|
||||||
|
return Ok(localHorse);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,9 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<ActiveDebugProfile>https</ActiveDebugProfile>
|
<ActiveDebugProfile>http</ActiveDebugProfile>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
|
||||||
|
<DebuggerFlavor>ProjectDebugger</DebuggerFlavor>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
</Project>
|
</Project>
|
||||||
|
|
@ -1,23 +1,15 @@
|
||||||
namespace HRServer.Models
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
|
namespace HRServer.Models
|
||||||
{
|
{
|
||||||
public enum Gender
|
|
||||||
{
|
|
||||||
Male,
|
|
||||||
Female
|
|
||||||
}
|
|
||||||
public static class HorseFactory
|
public static class HorseFactory
|
||||||
{
|
{
|
||||||
// Thread-safe Dictionary, um gleichzeitigen Zugriff zu ermöglichen
|
// Thread-safe Dictionary
|
||||||
private static readonly Dictionary<ulong, Horse> Horses = new();
|
private static readonly Dictionary<ulong, Horse> Horses = new();
|
||||||
|
|
||||||
// Methode, um ein Pferd nach ID zu suchen
|
|
||||||
public static Horse? GetHorse(ulong id)
|
public static Horse? GetHorse(ulong id)
|
||||||
{
|
{
|
||||||
// Verwende Dictionary.TryGetValue für bessere Performance und Lesbarkeit
|
|
||||||
return Horses.TryGetValue(id, out var horse) ? horse : null;
|
return Horses.TryGetValue(id, out var horse) ? horse : null;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Methode, um ein Pferd hinzuzufügen oder zu aktualisieren
|
|
||||||
public static void AddOrUpdateHorse(Horse horse)
|
public static void AddOrUpdateHorse(Horse horse)
|
||||||
{
|
{
|
||||||
if (horse == null || horse.Id == null)
|
if (horse == null || horse.Id == null)
|
||||||
|
|
@ -26,7 +18,6 @@
|
||||||
Horses[horse.Id.Value] = horse;
|
Horses[horse.Id.Value] = horse;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Methode, um alle Pferde zu holen (z. B. für Debugging oder Verarbeitung)
|
|
||||||
public static IReadOnlyDictionary<ulong, Horse> GetAllHorses()
|
public static IReadOnlyDictionary<ulong, Horse> GetAllHorses()
|
||||||
{
|
{
|
||||||
return Horses;
|
return Horses;
|
||||||
|
|
@ -36,11 +27,17 @@
|
||||||
public class Horse
|
public class Horse
|
||||||
{
|
{
|
||||||
// Basic Information
|
// Basic Information
|
||||||
|
[JsonPropertyName("id")]
|
||||||
private ulong? _id;
|
private ulong? _id;
|
||||||
|
[JsonPropertyName("age")]
|
||||||
private int? _age;
|
private int? _age;
|
||||||
|
[JsonPropertyName("name")]
|
||||||
private string _horseName = string.Empty;
|
private string _horseName = string.Empty;
|
||||||
|
[JsonPropertyName("gender")]
|
||||||
private string _gender = string.Empty;
|
private string _gender = string.Empty;
|
||||||
|
[JsonPropertyName("breed")]
|
||||||
private string _breed = string.Empty;
|
private string _breed = string.Empty;
|
||||||
|
[JsonPropertyName("link")]
|
||||||
private string _link = string.Empty;
|
private string _link = string.Empty;
|
||||||
|
|
||||||
public ulong? Id
|
public ulong? Id
|
||||||
|
|
@ -103,7 +100,6 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Other Sections
|
|
||||||
private HorseSummary _summary = new();
|
private HorseSummary _summary = new();
|
||||||
public HorseSummary Summary
|
public HorseSummary Summary
|
||||||
{
|
{
|
||||||
|
|
@ -159,10 +155,8 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Load State
|
|
||||||
public DataLoadState LoadState { get; set; } = new();
|
public DataLoadState LoadState { get; set; } = new();
|
||||||
|
|
||||||
// Helper Methods
|
|
||||||
public bool IsAllDataLoaded()
|
public bool IsAllDataLoaded()
|
||||||
{
|
{
|
||||||
return LoadState.IsAllDataLoaded();
|
return LoadState.IsAllDataLoaded();
|
||||||
|
|
@ -180,7 +174,6 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Class to track the loading state of data
|
|
||||||
public class DataLoadState
|
public class DataLoadState
|
||||||
{
|
{
|
||||||
public bool BasicInfoLoaded { get; set; } = false;
|
public bool BasicInfoLoaded { get; set; } = false;
|
||||||
|
|
@ -190,14 +183,12 @@
|
||||||
public bool AchievementsLoaded { get; set; } = false;
|
public bool AchievementsLoaded { get; set; } = false;
|
||||||
public bool HealthLoaded { get; set; } = false;
|
public bool HealthLoaded { get; set; } = false;
|
||||||
|
|
||||||
// Method to check if all data is loaded
|
|
||||||
public bool IsAllDataLoaded()
|
public bool IsAllDataLoaded()
|
||||||
{
|
{
|
||||||
return BasicInfoLoaded && SummaryLoaded && TrainingLoaded && GeneticsLoaded && AchievementsLoaded && HealthLoaded;
|
return BasicInfoLoaded && SummaryLoaded && TrainingLoaded && GeneticsLoaded && AchievementsLoaded && HealthLoaded;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Other classes
|
|
||||||
public class HorseSummary
|
public class HorseSummary
|
||||||
{
|
{
|
||||||
public List<ulong> RelatedIds { get; set; } = new();
|
public List<ulong> RelatedIds { get; set; } = new();
|
||||||
|
|
@ -210,15 +201,50 @@
|
||||||
|
|
||||||
public class HorseGenetics
|
public class HorseGenetics
|
||||||
{
|
{
|
||||||
|
[JsonPropertyName("GP")]
|
||||||
public int GP { get; set; }
|
public int GP { get; set; }
|
||||||
public Dictionary<string, int> Features { get; set; } = new();
|
|
||||||
public string Extension { get; set; } = string.Empty;
|
[JsonPropertyName("GeneticPotential")]
|
||||||
|
public Dictionary<string, float> GeneticPotential { get; set; } = new();
|
||||||
|
|
||||||
|
[JsonPropertyName("Disciplines")]
|
||||||
|
public Dictionary<string, float> Disciplines { get; set; } = new() {
|
||||||
|
{ "Dressage", 0 },
|
||||||
|
{ "Driving", 0 },
|
||||||
|
{ "Endurance", 0 },
|
||||||
|
{ "Eventing", 0 },
|
||||||
|
{ "Flat Racing", 0 },
|
||||||
|
{ "Show Jumping", 0 },
|
||||||
|
{"Western Reining", 0 }
|
||||||
|
};
|
||||||
|
|
||||||
|
[JsonPropertyName("Colors")]
|
||||||
|
public Dictionary<string, string> Colors { get; set; } = new() {
|
||||||
|
{ "extension", string.Empty },
|
||||||
|
{ "agouti", string.Empty },
|
||||||
|
{ "grey", string.Empty},
|
||||||
|
{ "cream", string.Empty },
|
||||||
|
{ "dun", string.Empty },
|
||||||
|
{ "champagne", string.Empty },
|
||||||
|
{ "silver", string.Empty },
|
||||||
|
{ "mushroom", string.Empty },
|
||||||
|
{ "frame", string.Empty},
|
||||||
|
{ "appaloosa", string.Empty },
|
||||||
|
{ "patn1", string.Empty },
|
||||||
|
{ "mitf", string.Empty },
|
||||||
|
{ "sw2", string.Empty },
|
||||||
|
{ "kit", string.Empty },
|
||||||
|
{ "rab", string.Empty},
|
||||||
|
{ "seal", string.Empty },
|
||||||
|
{ "flaxen", string.Empty }
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
public class HorseAchievements
|
public class HorseAchievements
|
||||||
{
|
{
|
||||||
public Dictionary<string, int> Conformation { get; set; } = new();
|
// Anpassung: Nun wird ein Array an Achievements verarbeitet,
|
||||||
public string ShortConformation { get; set; } = string.Empty;
|
// wie es vom Content Script gesendet wird.
|
||||||
|
public List<string> Achievements { get; set; } = new();
|
||||||
}
|
}
|
||||||
|
|
||||||
public class HorseHealth
|
public class HorseHealth
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
namespace HRServer
|
namespace HRServer
|
||||||
{
|
{
|
||||||
public class Program
|
public class Program
|
||||||
|
|
@ -7,27 +6,40 @@ namespace HRServer
|
||||||
{
|
{
|
||||||
var builder = WebApplication.CreateBuilder(args);
|
var builder = WebApplication.CreateBuilder(args);
|
||||||
|
|
||||||
// Add services to the container.
|
// Dienste hinzufügen
|
||||||
|
|
||||||
builder.Services.AddControllers();
|
builder.Services.AddControllers();
|
||||||
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
|
|
||||||
|
// CORS-Konfiguration hinzufügen
|
||||||
|
builder.Services.AddCors(options =>
|
||||||
|
{
|
||||||
|
// Beispiel: Erlaube alle Ursprünge, Methoden und Header
|
||||||
|
options.AddPolicy("AllowAllOrigins", policy =>
|
||||||
|
{
|
||||||
|
policy.AllowAnyOrigin()
|
||||||
|
.AllowAnyMethod()
|
||||||
|
.AllowAnyHeader();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
// Swagger / OpenAPI hinzufügen
|
||||||
builder.Services.AddEndpointsApiExplorer();
|
builder.Services.AddEndpointsApiExplorer();
|
||||||
builder.Services.AddSwaggerGen();
|
builder.Services.AddSwaggerGen();
|
||||||
|
|
||||||
var app = builder.Build();
|
var app = builder.Build();
|
||||||
|
|
||||||
// Configure the HTTP request pipeline.
|
// Falls Entwicklungsumgebung, Swagger UI verwenden
|
||||||
if (app.Environment.IsDevelopment())
|
if (app.Environment.IsDevelopment())
|
||||||
{
|
{
|
||||||
app.UseSwagger();
|
app.UseSwagger();
|
||||||
app.UseSwaggerUI();
|
app.UseSwaggerUI();
|
||||||
}
|
}
|
||||||
|
|
||||||
app.UseHttpsRedirection();
|
// CORS anwenden
|
||||||
|
app.UseCors("AllowAllOrigins");
|
||||||
|
|
||||||
app.UseAuthorization();
|
app.UseAuthorization();
|
||||||
|
|
||||||
|
// Controller-Routen festlegen
|
||||||
app.MapControllers();
|
app.MapControllers();
|
||||||
|
|
||||||
app.Run();
|
app.Run();
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
"windowsAuthentication": false,
|
"windowsAuthentication": false,
|
||||||
"anonymousAuthentication": true,
|
"anonymousAuthentication": true,
|
||||||
"iisExpress": {
|
"iisExpress": {
|
||||||
"applicationUrl": "http://localhost:28708",
|
"applicationUrl": "http://127.0.0.1:28708",
|
||||||
"sslPort": 44327
|
"sslPort": 44327
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
@ -14,7 +14,7 @@
|
||||||
"dotnetRunMessages": true,
|
"dotnetRunMessages": true,
|
||||||
"launchBrowser": true,
|
"launchBrowser": true,
|
||||||
"launchUrl": "swagger",
|
"launchUrl": "swagger",
|
||||||
"applicationUrl": "http://localhost:5005",
|
"applicationUrl": "http://127.0.0.1:5180",
|
||||||
"environmentVariables": {
|
"environmentVariables": {
|
||||||
"ASPNETCORE_ENVIRONMENT": "Development"
|
"ASPNETCORE_ENVIRONMENT": "Development"
|
||||||
}
|
}
|
||||||
|
|
@ -24,7 +24,7 @@
|
||||||
"dotnetRunMessages": true,
|
"dotnetRunMessages": true,
|
||||||
"launchBrowser": true,
|
"launchBrowser": true,
|
||||||
"launchUrl": "swagger",
|
"launchUrl": "swagger",
|
||||||
"applicationUrl": "https://localhost:7110;http://localhost:5005",
|
"applicationUrl": "http://127.0.0.1:5180",
|
||||||
"environmentVariables": {
|
"environmentVariables": {
|
||||||
"ASPNETCORE_ENVIRONMENT": "Development"
|
"ASPNETCORE_ENVIRONMENT": "Development"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
115
HRServer-Exporter/HRServer/bin/Debug/net8.0/HRServer.deps.json
Normal file
115
HRServer-Exporter/HRServer/bin/Debug/net8.0/HRServer.deps.json
Normal file
|
|
@ -0,0 +1,115 @@
|
||||||
|
{
|
||||||
|
"runtimeTarget": {
|
||||||
|
"name": ".NETCoreApp,Version=v8.0",
|
||||||
|
"signature": ""
|
||||||
|
},
|
||||||
|
"compilationOptions": {},
|
||||||
|
"targets": {
|
||||||
|
".NETCoreApp,Version=v8.0": {
|
||||||
|
"HRServer/1.0.0": {
|
||||||
|
"dependencies": {
|
||||||
|
"Swashbuckle.AspNetCore": "6.4.0"
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"HRServer.dll": {}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Microsoft.Extensions.ApiDescription.Server/6.0.5": {},
|
||||||
|
"Microsoft.OpenApi/1.2.3": {
|
||||||
|
"runtime": {
|
||||||
|
"lib/netstandard2.0/Microsoft.OpenApi.dll": {
|
||||||
|
"assemblyVersion": "1.2.3.0",
|
||||||
|
"fileVersion": "1.2.3.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore/6.4.0": {
|
||||||
|
"dependencies": {
|
||||||
|
"Microsoft.Extensions.ApiDescription.Server": "6.0.5",
|
||||||
|
"Swashbuckle.AspNetCore.Swagger": "6.4.0",
|
||||||
|
"Swashbuckle.AspNetCore.SwaggerGen": "6.4.0",
|
||||||
|
"Swashbuckle.AspNetCore.SwaggerUI": "6.4.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore.Swagger/6.4.0": {
|
||||||
|
"dependencies": {
|
||||||
|
"Microsoft.OpenApi": "1.2.3"
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/net6.0/Swashbuckle.AspNetCore.Swagger.dll": {
|
||||||
|
"assemblyVersion": "6.4.0.0",
|
||||||
|
"fileVersion": "6.4.0.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore.SwaggerGen/6.4.0": {
|
||||||
|
"dependencies": {
|
||||||
|
"Swashbuckle.AspNetCore.Swagger": "6.4.0"
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/net6.0/Swashbuckle.AspNetCore.SwaggerGen.dll": {
|
||||||
|
"assemblyVersion": "6.4.0.0",
|
||||||
|
"fileVersion": "6.4.0.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore.SwaggerUI/6.4.0": {
|
||||||
|
"runtime": {
|
||||||
|
"lib/net6.0/Swashbuckle.AspNetCore.SwaggerUI.dll": {
|
||||||
|
"assemblyVersion": "6.4.0.0",
|
||||||
|
"fileVersion": "6.4.0.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"libraries": {
|
||||||
|
"HRServer/1.0.0": {
|
||||||
|
"type": "project",
|
||||||
|
"serviceable": false,
|
||||||
|
"sha512": ""
|
||||||
|
},
|
||||||
|
"Microsoft.Extensions.ApiDescription.Server/6.0.5": {
|
||||||
|
"type": "package",
|
||||||
|
"serviceable": true,
|
||||||
|
"sha512": "sha512-Ckb5EDBUNJdFWyajfXzUIMRkhf52fHZOQuuZg/oiu8y7zDCVwD0iHhew6MnThjHmevanpxL3f5ci2TtHQEN6bw==",
|
||||||
|
"path": "microsoft.extensions.apidescription.server/6.0.5",
|
||||||
|
"hashPath": "microsoft.extensions.apidescription.server.6.0.5.nupkg.sha512"
|
||||||
|
},
|
||||||
|
"Microsoft.OpenApi/1.2.3": {
|
||||||
|
"type": "package",
|
||||||
|
"serviceable": true,
|
||||||
|
"sha512": "sha512-Nug3rO+7Kl5/SBAadzSMAVgqDlfGjJZ0GenQrLywJ84XGKO0uRqkunz5Wyl0SDwcR71bAATXvSdbdzPrYRYKGw==",
|
||||||
|
"path": "microsoft.openapi/1.2.3",
|
||||||
|
"hashPath": "microsoft.openapi.1.2.3.nupkg.sha512"
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore/6.4.0": {
|
||||||
|
"type": "package",
|
||||||
|
"serviceable": true,
|
||||||
|
"sha512": "sha512-eUBr4TW0up6oKDA5Xwkul289uqSMgY0xGN4pnbOIBqCcN9VKGGaPvHX3vWaG/hvocfGDP+MGzMA0bBBKz2fkmQ==",
|
||||||
|
"path": "swashbuckle.aspnetcore/6.4.0",
|
||||||
|
"hashPath": "swashbuckle.aspnetcore.6.4.0.nupkg.sha512"
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore.Swagger/6.4.0": {
|
||||||
|
"type": "package",
|
||||||
|
"serviceable": true,
|
||||||
|
"sha512": "sha512-nl4SBgGM+cmthUcpwO/w1lUjevdDHAqRvfUoe4Xp/Uvuzt9mzGUwyFCqa3ODBAcZYBiFoKvrYwz0rabslJvSmQ==",
|
||||||
|
"path": "swashbuckle.aspnetcore.swagger/6.4.0",
|
||||||
|
"hashPath": "swashbuckle.aspnetcore.swagger.6.4.0.nupkg.sha512"
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore.SwaggerGen/6.4.0": {
|
||||||
|
"type": "package",
|
||||||
|
"serviceable": true,
|
||||||
|
"sha512": "sha512-lXhcUBVqKrPFAQF7e/ZeDfb5PMgE8n5t6L5B6/BQSpiwxgHzmBcx8Msu42zLYFTvR5PIqE9Q9lZvSQAcwCxJjw==",
|
||||||
|
"path": "swashbuckle.aspnetcore.swaggergen/6.4.0",
|
||||||
|
"hashPath": "swashbuckle.aspnetcore.swaggergen.6.4.0.nupkg.sha512"
|
||||||
|
},
|
||||||
|
"Swashbuckle.AspNetCore.SwaggerUI/6.4.0": {
|
||||||
|
"type": "package",
|
||||||
|
"serviceable": true,
|
||||||
|
"sha512": "sha512-1Hh3atb3pi8c+v7n4/3N80Jj8RvLOXgWxzix6w3OZhB7zBGRwsy7FWr4e3hwgPweSBpwfElqj4V4nkjYabH9nQ==",
|
||||||
|
"path": "swashbuckle.aspnetcore.swaggerui/6.4.0",
|
||||||
|
"hashPath": "swashbuckle.aspnetcore.swaggerui.6.4.0.nupkg.sha512"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
BIN
HRServer-Exporter/HRServer/bin/Debug/net8.0/HRServer.dll
Normal file
BIN
HRServer-Exporter/HRServer/bin/Debug/net8.0/HRServer.dll
Normal file
Binary file not shown.
BIN
HRServer-Exporter/HRServer/bin/Debug/net8.0/HRServer.exe
Normal file
BIN
HRServer-Exporter/HRServer/bin/Debug/net8.0/HRServer.exe
Normal file
Binary file not shown.
BIN
HRServer-Exporter/HRServer/bin/Debug/net8.0/HRServer.pdb
Normal file
BIN
HRServer-Exporter/HRServer/bin/Debug/net8.0/HRServer.pdb
Normal file
Binary file not shown.
|
|
@ -0,0 +1,19 @@
|
||||||
|
{
|
||||||
|
"runtimeOptions": {
|
||||||
|
"tfm": "net8.0",
|
||||||
|
"frameworks": [
|
||||||
|
{
|
||||||
|
"name": "Microsoft.NETCore.App",
|
||||||
|
"version": "8.0.0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Microsoft.AspNetCore.App",
|
||||||
|
"version": "8.0.0"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"configProperties": {
|
||||||
|
"System.GC.Server": true,
|
||||||
|
"System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -0,0 +1,8 @@
|
||||||
|
{
|
||||||
|
"Logging": {
|
||||||
|
"LogLevel": {
|
||||||
|
"Default": "Information",
|
||||||
|
"Microsoft.AspNetCore": "Warning"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,9 @@
|
||||||
|
{
|
||||||
|
"Logging": {
|
||||||
|
"LogLevel": {
|
||||||
|
"Default": "Information",
|
||||||
|
"Microsoft.AspNetCore": "Warning"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"AllowedHosts": "*"
|
||||||
|
}
|
||||||
149
HRServer-Exporter/HRServer/obj/Debug/net8.0/ApiEndpoints.json
Normal file
149
HRServer-Exporter/HRServer/obj/Debug/net8.0/ApiEndpoints.json
Normal file
|
|
@ -0,0 +1,149 @@
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"ContainingType": "HRServer.Controllers.HorseController",
|
||||||
|
"Method": "GetHorse",
|
||||||
|
"RelativePath": "api/getHorse/{id}",
|
||||||
|
"HttpMethod": "GET",
|
||||||
|
"IsController": true,
|
||||||
|
"Order": 0,
|
||||||
|
"Parameters": [
|
||||||
|
{
|
||||||
|
"Name": "id",
|
||||||
|
"Type": "System.Int32",
|
||||||
|
"IsRequired": true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"ReturnTypes": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ContainingType": "HRServer.Controllers.HorseController",
|
||||||
|
"Method": "GetHorseLoadState",
|
||||||
|
"RelativePath": "api/getHorse/{id}/LoadState",
|
||||||
|
"HttpMethod": "GET",
|
||||||
|
"IsController": true,
|
||||||
|
"Order": 0,
|
||||||
|
"Parameters": [
|
||||||
|
{
|
||||||
|
"Name": "id",
|
||||||
|
"Type": "System.UInt64",
|
||||||
|
"IsRequired": true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"ReturnTypes": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ContainingType": "HRServer.Controllers.HorseController",
|
||||||
|
"Method": "Ping",
|
||||||
|
"RelativePath": "api/ping",
|
||||||
|
"HttpMethod": "GET",
|
||||||
|
"IsController": true,
|
||||||
|
"Order": 0,
|
||||||
|
"Parameters": [],
|
||||||
|
"ReturnTypes": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ContainingType": "HRServer.Controllers.HorseController",
|
||||||
|
"Method": "UpdateHorseBasicData",
|
||||||
|
"RelativePath": "api/updateHorse/{id}/BasicData",
|
||||||
|
"HttpMethod": "POST",
|
||||||
|
"IsController": true,
|
||||||
|
"Order": 0,
|
||||||
|
"Parameters": [
|
||||||
|
{
|
||||||
|
"Name": "id",
|
||||||
|
"Type": "System.UInt64",
|
||||||
|
"IsRequired": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "websiteHorse",
|
||||||
|
"Type": "HRServer.Models.Horse",
|
||||||
|
"IsRequired": true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"ReturnTypes": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ContainingType": "HRServer.Controllers.HorseController",
|
||||||
|
"Method": "UpdateHorseGenetics",
|
||||||
|
"RelativePath": "api/updateHorse/{id}/Genetics",
|
||||||
|
"HttpMethod": "POST",
|
||||||
|
"IsController": true,
|
||||||
|
"Order": 0,
|
||||||
|
"Parameters": [
|
||||||
|
{
|
||||||
|
"Name": "id",
|
||||||
|
"Type": "System.UInt64",
|
||||||
|
"IsRequired": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "websiteHorseGenetics",
|
||||||
|
"Type": "HRServer.Models.HorseGenetics",
|
||||||
|
"IsRequired": true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"ReturnTypes": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ContainingType": "HRServer.Controllers.HorseController",
|
||||||
|
"Method": "UpdateHorseHealth",
|
||||||
|
"RelativePath": "api/updateHorse/{id}/Health",
|
||||||
|
"HttpMethod": "POST",
|
||||||
|
"IsController": true,
|
||||||
|
"Order": 0,
|
||||||
|
"Parameters": [
|
||||||
|
{
|
||||||
|
"Name": "id",
|
||||||
|
"Type": "System.UInt64",
|
||||||
|
"IsRequired": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "websiteHorseHealth",
|
||||||
|
"Type": "HRServer.Models.HorseHealth",
|
||||||
|
"IsRequired": true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"ReturnTypes": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ContainingType": "HRServer.Controllers.HorseController",
|
||||||
|
"Method": "UpdateHorsePedigree",
|
||||||
|
"RelativePath": "api/updateHorse/{id}/Pedigree",
|
||||||
|
"HttpMethod": "POST",
|
||||||
|
"IsController": true,
|
||||||
|
"Order": 0,
|
||||||
|
"Parameters": [
|
||||||
|
{
|
||||||
|
"Name": "id",
|
||||||
|
"Type": "System.UInt64",
|
||||||
|
"IsRequired": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "websiteHorseSummary",
|
||||||
|
"Type": "HRServer.Models.HorseSummary",
|
||||||
|
"IsRequired": true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"ReturnTypes": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ContainingType": "HRServer.Controllers.HorseController",
|
||||||
|
"Method": "UpdateHorseTraining",
|
||||||
|
"RelativePath": "api/updateHorse/{id}/Training",
|
||||||
|
"HttpMethod": "POST",
|
||||||
|
"IsController": true,
|
||||||
|
"Order": 0,
|
||||||
|
"Parameters": [
|
||||||
|
{
|
||||||
|
"Name": "id",
|
||||||
|
"Type": "System.UInt64",
|
||||||
|
"IsRequired": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name": "websiteHorseTraining",
|
||||||
|
"Type": "HRServer.Models.HorseTraining",
|
||||||
|
"IsRequired": true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"ReturnTypes": []
|
||||||
|
}
|
||||||
|
]
|
||||||
|
|
@ -14,7 +14,7 @@ using System.Reflection;
|
||||||
[assembly: System.Reflection.AssemblyCompanyAttribute("HRServer")]
|
[assembly: System.Reflection.AssemblyCompanyAttribute("HRServer")]
|
||||||
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
|
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
|
||||||
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
|
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
|
||||||
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+6e5ae3f9b3254f84dca052d06f64382fc35cc6d4")]
|
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+0fbf4cd919af15895685c01cbc5691fb764e943d")]
|
||||||
[assembly: System.Reflection.AssemblyProductAttribute("HRServer")]
|
[assembly: System.Reflection.AssemblyProductAttribute("HRServer")]
|
||||||
[assembly: System.Reflection.AssemblyTitleAttribute("HRServer")]
|
[assembly: System.Reflection.AssemblyTitleAttribute("HRServer")]
|
||||||
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
||||||
|
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
c249390f111095a716c75dcba28e2f2d1acdc90eb5e2495d35cb08b47c8606be
|
171fa089b33980e5d8781f5a6c5109af77f174bd128feb6daff86d1e12aec2a4
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,17 @@
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// Dieser Code wurde von einem Tool generiert.
|
||||||
|
// Laufzeitversion:4.0.30319.42000
|
||||||
|
//
|
||||||
|
// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
|
||||||
|
// der Code erneut generiert wird.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Reflection;
|
||||||
|
|
||||||
|
[assembly: Microsoft.AspNetCore.Mvc.ApplicationParts.ApplicationPartAttribute("Swashbuckle.AspNetCore.SwaggerGen")]
|
||||||
|
|
||||||
|
// Von der MSBuild WriteCodeFragment-Klasse generiert.
|
||||||
|
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
ff96cd7ef93b2db74847767b8c9a51c9c59f88f1abf5b21e24fad37106dcb370
|
||||||
|
|
@ -0,0 +1,33 @@
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\bin\Debug\net8.0\appsettings.Development.json
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\bin\Debug\net8.0\appsettings.json
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\bin\Debug\net8.0\HRServer.exe
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\bin\Debug\net8.0\HRServer.deps.json
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\bin\Debug\net8.0\HRServer.runtimeconfig.json
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\bin\Debug\net8.0\HRServer.dll
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\bin\Debug\net8.0\HRServer.pdb
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\bin\Debug\net8.0\Microsoft.OpenApi.dll
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\bin\Debug\net8.0\Swashbuckle.AspNetCore.Swagger.dll
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\bin\Debug\net8.0\Swashbuckle.AspNetCore.SwaggerGen.dll
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\bin\Debug\net8.0\Swashbuckle.AspNetCore.SwaggerUI.dll
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\obj\Debug\net8.0\HRServer.csproj.AssemblyReference.cache
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\obj\Debug\net8.0\HRServer.GeneratedMSBuildEditorConfig.editorconfig
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\obj\Debug\net8.0\HRServer.AssemblyInfoInputs.cache
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\obj\Debug\net8.0\HRServer.AssemblyInfo.cs
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\obj\Debug\net8.0\HRServer.csproj.CoreCompileInputs.cache
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\obj\Debug\net8.0\HRServer.MvcApplicationPartsAssemblyInfo.cs
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\obj\Debug\net8.0\HRServer.MvcApplicationPartsAssemblyInfo.cache
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\obj\Debug\net8.0\HRServer.sourcelink.json
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\obj\Debug\net8.0\staticwebassets.build.json
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\obj\Debug\net8.0\staticwebassets.development.json
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\obj\Debug\net8.0\staticwebassets\msbuild.HRServer.Microsoft.AspNetCore.StaticWebAssets.props
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\obj\Debug\net8.0\staticwebassets\msbuild.build.HRServer.props
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\obj\Debug\net8.0\staticwebassets\msbuild.buildMultiTargeting.HRServer.props
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\obj\Debug\net8.0\staticwebassets\msbuild.buildTransitive.HRServer.props
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\obj\Debug\net8.0\staticwebassets.pack.json
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\obj\Debug\net8.0\scopedcss\bundle\HRServer.styles.css
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\obj\Debug\net8.0\HRServer.csproj.Up2Date
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\obj\Debug\net8.0\HRServer.dll
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\obj\Debug\net8.0\refint\HRServer.dll
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\obj\Debug\net8.0\HRServer.pdb
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\obj\Debug\net8.0\HRServer.genruntimeconfig.cache
|
||||||
|
Z:\[01] Kribitz Development\[02] Projekte\HR-Collector\HRServer-Exporter\HRServer\obj\Debug\net8.0\ref\HRServer.dll
|
||||||
BIN
HRServer-Exporter/HRServer/obj/Debug/net8.0/HRServer.dll
Normal file
BIN
HRServer-Exporter/HRServer/obj/Debug/net8.0/HRServer.dll
Normal file
Binary file not shown.
|
|
@ -0,0 +1 @@
|
||||||
|
26f7f665be436c490f4e93167ca6d37226eef0c271c017fa4bc11d7c98da76ca
|
||||||
BIN
HRServer-Exporter/HRServer/obj/Debug/net8.0/HRServer.pdb
Normal file
BIN
HRServer-Exporter/HRServer/obj/Debug/net8.0/HRServer.pdb
Normal file
Binary file not shown.
|
|
@ -0,0 +1 @@
|
||||||
|
{"documents":{"Z:\\[01] Kribitz Development\\[02] Projekte\\HR-Collector\\*":"https://raw.githubusercontent.com/SvenKribitz/HR-Collector/0fbf4cd919af15895685c01cbc5691fb764e943d/*"}}
|
||||||
BIN
HRServer-Exporter/HRServer/obj/Debug/net8.0/apphost.exe
Normal file
BIN
HRServer-Exporter/HRServer/obj/Debug/net8.0/apphost.exe
Normal file
Binary file not shown.
BIN
HRServer-Exporter/HRServer/obj/Debug/net8.0/ref/HRServer.dll
Normal file
BIN
HRServer-Exporter/HRServer/obj/Debug/net8.0/ref/HRServer.dll
Normal file
Binary file not shown.
BIN
HRServer-Exporter/HRServer/obj/Debug/net8.0/refint/HRServer.dll
Normal file
BIN
HRServer-Exporter/HRServer/obj/Debug/net8.0/refint/HRServer.dll
Normal file
Binary file not shown.
|
|
@ -0,0 +1,11 @@
|
||||||
|
{
|
||||||
|
"Version": 1,
|
||||||
|
"Hash": "JAdl2ax+iEaEpM2QjX7DlmN0wnleiYGhGkNb8PzNm50=",
|
||||||
|
"Source": "HRServer",
|
||||||
|
"BasePath": "_content/HRServer",
|
||||||
|
"Mode": "Default",
|
||||||
|
"ManifestType": "Build",
|
||||||
|
"ReferencedProjectsConfiguration": [],
|
||||||
|
"DiscoveryPatterns": [],
|
||||||
|
"Assets": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
<Project>
|
||||||
|
<Import Project="Microsoft.AspNetCore.StaticWebAssets.props" />
|
||||||
|
</Project>
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
<Project>
|
||||||
|
<Import Project="..\build\HRServer.props" />
|
||||||
|
</Project>
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
<Project>
|
||||||
|
<Import Project="..\buildMultiTargeting\HRServer.props" />
|
||||||
|
</Project>
|
||||||
Loading…
Reference in a new issue