initial upload

This commit is contained in:
Kai Waggeling 2025-05-17 16:23:48 +02:00
parent ac114da487
commit 7c1cfdff51
63 changed files with 6883 additions and 0 deletions

138
assets/app.queue.js Normal file
View file

@ -0,0 +1,138 @@
var queueApp = Vue.createApp({
data() {
return {
queueData,
templates,
printers,
// SelectedPrinter: null,
LabelData: {
Auftragsnummer: null,
Bezeichnung: null
},
LabelQueue: [],
Settings: {
AutoPrint: false
},
CurrentTemplate: templates[0].id
}
},
methods: {
ContinueFieldInput()
{
console.log("ContinueFieldInput");
let Fields = Object.entries(this.LabelData).map((Field) => {
return {
Key: Field[0],
Value: Field[1]
};
});
Fields = Fields.filter((Field) => {
return Field.Value == null || Field.Value == "";
});
if (Fields.length > 0) {
$(`input[placeholder='${Fields[0].Key}']`).focus();
} else {
this.SaveLabelData()
}
},
SaveLabelData()
{
this.LabelQueue.push({
Fields: {
...this.LabelData
}
});
Object.keys(this.LabelData).forEach((FieldName) => {
this.LabelData[FieldName] = null;
});
$(`input[placeholder='${Object.keys(this.LabelData)[0]}']`).focus();
this.SavePersistent();
},
DeleteLabel(LabelIndex) {
console.log(LabelIndex);
this.LabelQueue.splice(LabelIndex, 1);
this.SavePersistent();
},
SavePersistent()
{
localStorage.setItem('LabelQueue', JSON.stringify(this.LabelQueue));
localStorage.setItem('Settings', JSON.stringify(this.Settings));
},
LoadPersistent()
{
if (localStorage.getItem('LabelQueue') != null) {
this.LabelQueue = JSON.parse(localStorage.getItem('LabelQueue'));
}
if (localStorage.getItem('Settings') != null) {
this.Settings = {
...this.Settings,
...JSON.parse(localStorage.getItem('Settings'))
}
}
},
// Settings
ToggleAutoPrint() {
this.Settings.AutoPrint = !this.Settings.AutoPrint;
this.SavePersistent();
}
}
}).mount('main');
queueApp.LoadPersistent();
async function GetTemplateList() {
let templates = await LabelApi.GET('templates');
queueApp.templates = templates;
}
async function GetPrinterList() {
let printers = await LabelApi.GET('printers');
queueApp.printers = printers;
}
async function GetQueueSettings() {
let queueData = await LabelApi.GET('queue/' + queueApp.queueData.id);
queueApp.queueData = queueData;
}
function GetSelectedPrinter() {
if (localStorage.getItem('SelectedPrinter') == null) {
SetSelectedPrinter([])
}
queueApp.SelectedPrinter = JSON.parse(
localStorage.getItem('SelectedPrinter')
);
}
function SetSelectedPrinter(SelectedPrinter) {
localStorage.setItem('SelectedPrinter', JSON.stringify(SelectedPrinter));
}
function GetLabelQueue() {
if (localStorage.getItem('LabelQueue') == null) {
SetLabelQueue([])
}
queueApp.LabelQueue = JSON.parse(
localStorage.getItem('LabelQueue')
);
}
function SetLabelQueue(LabelQueue) {
localStorage.setItem('LabelQueue', JSON.stringify(LabelQueue));
}
GetPrinterList();
GetLabelQueue();