backup encryption file

This commit is contained in:
2025-02-03 16:46:35 +01:00
parent a709aa6da1
commit f710db48de
7 changed files with 195 additions and 208 deletions

View File

@@ -21,7 +21,7 @@ ColumnLayout
CheckBox CheckBox
{ {
id: checkAddObject id: checkAddObject
text: qsTr("Mitarbeiter/Ansprechpartner hinzufügen") text: qsTr("Ansprechpartner hinzufügen")
Layout.alignment: Qt.AlignRight Layout.alignment: Qt.AlignRight
checked: false checked: false
onCheckStateChanged: onCheckStateChanged:
@@ -73,14 +73,16 @@ ColumnLayout
if (!checkAddObject.checked) if (!checkAddObject.checked)
{ {
new_object = JsLib.parseForm(objectView) new_object = JsLib.parseForm(objectView)
object_model.addObject(new_object, 0) // object_model.addObject(new_object, 0)
appLoader.source = "ObjectTable.qml" // appLoader.source = "ObjectTable.qml"
console.log(new_object)
} }
else else
{ {
new_object = JsLib.parseForm(objectView) new_object = JsLib.parseForm(objectView)
var new_objecto = JsLib.parseForm(addObjectLayout) var new_objecto = JsLib.parseForm(addObjectLayout)
objecto_model.addObject(new_objecto) console.log(new_objecto)
//objecto_model.addObject(new_objecto)
} }
} }
} }

View File

@@ -22,7 +22,6 @@ Item
onClicked: appLoader.source = "AddCustomer.qml" onClicked: appLoader.source = "AddCustomer.qml"
} }
ColumnLayout ColumnLayout
{ {
id: tableColumn id: tableColumn
@@ -67,7 +66,6 @@ Item
text: qsTr("Erledigt") text: qsTr("Erledigt")
onClicked: viewCriterion(showFinished) onClicked: viewCriterion(showFinished)
} }
} }
HorizontalHeaderView HorizontalHeaderView
@@ -77,8 +75,8 @@ Item
implicitHeight: 40 implicitHeight: 40
movableColumns: true //@disable-check M16 movableColumns: true //@disable-check M16
syncView: customerTable syncView: customerTable
delegate: Rectangle
delegate: Rectangle { {
color: addBusinessBtn.palette.alternateBase color: addBusinessBtn.palette.alternateBase
border.color: addBusinessBtn.palette.base border.color: addBusinessBtn.palette.base
implicitHeight: 40 implicitHeight: 40
@@ -99,7 +97,6 @@ Item
TableView TableView
{ {
//property var customWidths: [0.2, 0.5, 0.3, 05, 0.2, 0.2]
property real newWidth: 0 property real newWidth: 0
id: customerTable id: customerTable
Layout.fillHeight: true Layout.fillHeight: true
@@ -112,43 +109,13 @@ Item
rowSpacing: 2 rowSpacing: 2
model: business_model model: business_model
alternatingRows: true alternatingRows: true
resizableColumns: true // @disable-check M16 resizableColumns: true
selectionBehavior: TableView.SelectRows selectionBehavior: TableView.SelectRows
selectionModel: ItemSelectionModel selectionModel: ItemSelectionModel
{ {
id: selModel id: selModel
model: customerTable.model model: customerTable.model
} }
// columnWidthProvider: function(column)
// {
// switch (column)
// {
// case 0: return width * 0.2;
// case 1: return width * 0.5;
// case 2: return width * 0.3;
// default: return width / model.columnCount();
// }
//return customWidths[column] * width;
//return tableColumn.content.implicitWidth // model.columnCount()
// newWidth = columnWidth(column)
// return newWidth
// }
Timer
{
id: redrawTable
running: true
interval: 1
repeat: false
onTriggered:
{
customerTable.forceLayout();
}
}
delegate:Rectangle delegate:Rectangle
{ {
required property bool selected required property bool selected
@@ -160,30 +127,22 @@ Item
: (customerTable.alternatingRows && row % 2 !== 0 : (customerTable.alternatingRows && row % 2 !== 0
? addBusinessBtn.palette.base // palette.base ? addBusinessBtn.palette.base // palette.base
: addBusinessBtn.palette.alternateBase) //palette.alternateBase) : addBusinessBtn.palette.alternateBase) //palette.alternateBase)
Text Text
{ {
text: model.display == null? "": model.display text: model.display == null? "": model.display // @disable-check M126
elide: Text.ElideRight elide: Text.ElideRight
width: parent.width width: parent.width
height: parent.height height: parent.height
verticalAlignment: Text.AlignVCenter verticalAlignment: Text.AlignVCenter
leftPadding: 9 //@d isable-check M16 leftPadding: 9
color: addBusinessBtn.palette.text color: addBusinessBtn.palette.text
} }
MouseArea MouseArea
{ {
property bool hovered: false property bool hovered: false
id: mouseArea id: mouseArea
anchors.fill: parent anchors.fill: parent
hoverEnabled: true hoverEnabled: true
// onClicked:
// {
// business_model.onRowClicked(row)
// }
onDoubleClicked: onDoubleClicked:
{ {
customersStack.push("CustomerDetails.qml", {selectedClient: row}); customersStack.push("CustomerDetails.qml", {selectedClient: row});
@@ -195,17 +154,10 @@ Item
} }
} }
} }
onContentWidthChanged:
{
//console.log("Model changed!!")
redrawTable.start()
}
} }
Item Item
{ {
//Layout.fillHeight: true
Layout.fillWidth: true Layout.fillWidth: true
} }
} }

View File

@@ -7,12 +7,6 @@ GridLayout
property var contacts: null property var contacts: null
columns: 2 columns: 2
CheckBox
{
id: contactperson
text: qsTr("Ansprechpartner")
Layout.columnSpan: 2
}
Label Label
{ {
text: qsTr("Anrede") text: qsTr("Anrede")
@@ -23,7 +17,6 @@ GridLayout
id: title id: title
model: [qsTr("Herr"),qsTr("Frau")] model: [qsTr("Herr"),qsTr("Frau")]
Layout.fillWidth: true Layout.fillWidth: true
enabled: contactperson.checked
} }
Label Label
{ {
@@ -36,7 +29,6 @@ GridLayout
Layout.fillWidth: true Layout.fillWidth: true
placeholderText: "Pflichtfeld" placeholderText: "Pflichtfeld"
placeholderTextColor: "red" placeholderTextColor: "red"
enabled: contactperson.checked
} }
Label Label
{ {
@@ -49,7 +41,6 @@ GridLayout
Layout.fillWidth: true Layout.fillWidth: true
placeholderText: "Pflichtfeld" placeholderText: "Pflichtfeld"
placeholderTextColor: "red" placeholderTextColor: "red"
enabled: contactperson.checked
} }
Label Label
{ {
@@ -62,7 +53,7 @@ GridLayout
Layout.fillWidth: true Layout.fillWidth: true
placeholderText: "Pflichtfeld" placeholderText: "Pflichtfeld"
placeholderTextColor: "red" placeholderTextColor: "red"
enabled: contactperson.checked
} }
Label Label
{ {
@@ -75,7 +66,6 @@ GridLayout
Layout.fillWidth: true Layout.fillWidth: true
placeholderText: "Pflichtfeld" placeholderText: "Pflichtfeld"
placeholderTextColor: "red" placeholderTextColor: "red"
enabled: contactperson.checked
} }
RowLayout RowLayout
@@ -92,14 +82,12 @@ GridLayout
{ {
id: removeContact id: removeContact
text: qsTr("Entfernen") text: qsTr("Entfernen")
enabled: contactperson.checked
} }
Button Button
{ {
id: addContact id: addContact
text: qsTr("Hinzufügen") text: qsTr("Hinzufügen")
enabled: contactperson.checked
onClicked: onClicked:
{ {
var num_contacts = 0 var num_contacts = 0

View File

@@ -4,120 +4,120 @@ import QtQuick.Controls
GridLayout GridLayout
{ {
property var employeeForm: null // property var employeeForm: null
property var employees: null // property var employees: null
id: oaoemployee // id: oaoemployee
columns: 2 // columns: 2
rows: 4 // rows: 4
Label // Label
{ // {
text: qsTr("Mitarbeiter") // text: qsTr("Mitarbeiter")
Layout.alignment: Qt.AlignRight | Qt.AlignTop // Layout.alignment: Qt.AlignRight | Qt.AlignTop
} // }
ListModel // ListModel
{ // {
id: employeeModel // id: employeeModel
} // }
Component // Component
{ // {
id: employeesHeader // id: employeesHeader
Row // Row
{ // {
Text // Text
{ // {
id: empName // id: empName
text: qsTr("Mitarbeiter") // text: qsTr("Mitarbeiter")
width: 175 // width: 175
font.bold: true // font.bold: true
horizontalAlignment: Text.AlignLeft // horizontalAlignment: Text.AlignLeft
color: "black" // color: "black"
} // }
} // }
} // }
Rectangle // Rectangle
{ // {
Layout.fillWidth: true // Layout.fillWidth: true
implicitHeight: 75 // implicitHeight: 75
Layout.rowSpan: 2 // Layout.rowSpan: 2
color: mitarbeiterhin.palette.base // color: mitarbeiterhin.palette.base
border.color: mitarbeiterhin.activeFocus? mitarbeiterhin.palette.highlight: mitarbeiterhin.palette.base // border.color: mitarbeiterhin.activeFocus? mitarbeiterhin.palette.highlight: mitarbeiterhin.palette.base
ListView // ListView
{ // {
id: employeesList // id: employeesList
//anchors.fill: parent // //anchors.fill: parent
implicitHeight: parent.height // implicitHeight: parent.height
model: employeeModel // model: employeeModel
header: employeesHeader // header: employeesHeader
delegate: Row // delegate: Row
{ // {
width: 200 // width: 200
height: 15 // height: 15
//padding: 7 // //padding: 7
Text // Text
{ // {
text: model.namens // text: model.namens
} // }
} // }
} // }
} // }
RowLayout // RowLayout
{ // {
Layout.columnSpan: 2 // Layout.columnSpan: 2
Layout.fillWidth: true // Layout.fillWidth: true
Item // Item
{ // {
Layout.fillWidth: true // Layout.fillWidth: true
} // }
Button // Button
{ // {
id: mitarbeiterraus // id: mitarbeiterraus
text: qsTr("Mitarbeiter entfernen") // text: qsTr("Mitarbeiter entfernen")
} // }
Button // Button
{ // {
id: mitarbeiterhin // id: mitarbeiterhin
text: qsTr("Mitarbeiter hinzufügen") // text: qsTr("Mitarbeiter hinzufügen")
onClicked: // onClicked:
{ // {
var nm = Qt.createComponent("AddObjectEmployee.qml") // var nm = Qt.createComponent("AddObjectEmployee.qml")
if (nm.status === Component.Ready) // if (nm.status === Component.Ready)
{ // {
employeeForm = nm.createObject (appWindow, {width: 600, height: 400}) // employeeForm = nm.createObject (appWindow, {width: 600, height: 400})
employeeForm.addNewEmployee.connect(onAddEmployee) // employeeForm.addNewEmployee.connect(onAddEmployee)
employeeForm.show() // employeeForm.show()
} // }
else console.log(nm.errorString()) // else console.log(nm.errorString())
} // }
} // }
} // }
function onAddEmployee(new_employee) // function onAddEmployee(new_employee)
{ // {
var num_employees = 0 // var num_employees = 0
if (employees === null || employees === undefined) employees = {} // if (employees === null || employees === undefined) employees = {}
else num_employees = Object.keys(employees).length; // else num_employees = Object.keys(employees).length;
employees[num_employees] = {} // employees[num_employees] = {}
employees[num_employees]["assignee"] = new_employee["assignee"]; // employees[num_employees]["assignee"] = new_employee["assignee"];
employees[num_employees]["duration"] = new_employee["duration"]; // employees[num_employees]["duration"] = new_employee["duration"];
employees[num_employees]["wage"] = new_employee["wage"]; // employees[num_employees]["wage"] = new_employee["wage"];
employees[num_employees]["cleandays"] = new_employee["cleandays"]; // employees[num_employees]["cleandays"] = new_employee["cleandays"];
employees[num_employees]["tasks"] = new_employee["tasks"]; // employees[num_employees]["tasks"] = new_employee["tasks"];
employees[num_employees]["output"] = new_employee["output"]; // employees[num_employees]["output"] = new_employee["output"];
employeeModel.append({namens: new_employee["assignee"]}); // employeeModel.append({namens: new_employee["assignee"]});
} // }
} }

View File

@@ -10,10 +10,6 @@ Frame
{ {
id: addObjectLayout id: addObjectLayout
width: parent.width width: parent.width
ObjectAddOnEmployee
{
id: oaoemployee
}
ObjectAddOnContactPerson ObjectAddOnContactPerson
{ {
id: oaocontactperson id: oaocontactperson

View File

@@ -6,47 +6,94 @@ GridLayout
{ {
id: objectView id: objectView
columns: 2 columns: 4
Layout.fillWidth: true Layout.fillWidth: true
Layout.fillHeight: true Layout.fillHeight: true
rowSpacing: 9 rowSpacing: 9
Label
{
text: qsTr("Firma")
Layout.alignment: Qt.AlignRight | Qt.AlignVCenter
}
ComboBox
{
property string name: "business"
id: business
editable: true
Layout.fillWidth: true
Layout.columnSpan: 3
}
Label Label
{ {
text: qsTr("Objektstraße") text: qsTr("Straße")
Layout.alignment: Qt.AlignRight | Qt.AlignVCenter Layout.alignment: Qt.AlignRight | Qt.AlignVCenter
} }
TextField TextField
{ {
id: objectName property string name: "street"
id: street
Layout.fillWidth: true Layout.fillWidth: true
Layout.alignment: Qt.AlignVCenter Layout.alignment: Qt.AlignVCenter
onTextChanged: checkFields() onTextChanged: checkFields()
placeholderText: "Pflichtfeld" placeholderText: "Pflichtfeld"
placeholderTextColor: "red" placeholderTextColor: "red"
//Layout.maximumWidth: parent.width / 2
} }
Label Label
{ {
text: qsTr("Leistungsort") text: qsTr("Nr.")
Layout.alignment: Qt.AlignRight | Qt.AlignVCenter Layout.alignment: Qt.AlignRight | Qt.AlignVCenter
} }
TextField TextField
{ {
id: leistungsortid property string name: "houseno"
id: houseno
Layout.fillWidth: true Layout.fillWidth: true
//Layout.maximumWidth: parent.width / 2 Layout.alignment: Qt.AlignVCenter
onTextChanged: checkFields() onTextChanged: checkFields()
placeholderText: "Pflichtfeld" placeholderText: "Pflichtfeld"
placeholderTextColor: "red" placeholderTextColor: "red"
} }
Label
{
text: qsTr("PLZ")
Layout.alignment: Qt.AlignRight | Qt.AlignVCenter
}
TextField
{
property string name: "postcode"
id: postcode
Layout.fillWidth: true
onTextChanged: checkFields()
placeholderText: "Pflichtfeld"
placeholderTextColor: "red"
}
Label
{
text: qsTr("Ort")
Layout.alignment: Qt.AlignRight
}
ComboBox
{
property string name: "city"
id: city
Layout.fillWidth: true
editable: true
onEditTextChanged: checkFields()
onCurrentTextChanged: checkFields()
model: address_model
textRole: "city"
popup.height: 300
popup.y: postcode.y + 5 - (postcode.height * 2)
currentIndex: -1
}
Label Label
{ {
text: qsTr("Lohnanteil inkl. Fahrtkosten") text: qsTr("Lohnanteil inkl. Fahrtkosten")
@@ -57,7 +104,7 @@ GridLayout
{ {
id: lohnanteil id: lohnanteil
Layout.fillWidth: true Layout.fillWidth: true
//Layout.maximumWidth: parent.width / 2 Layout.columnSpan: 3
} }
Label Label
@@ -70,7 +117,7 @@ GridLayout
{ {
id: materialanteil id: materialanteil
Layout.fillWidth: true Layout.fillWidth: true
//Layout.maximumWidth: parent.width / 2 Layout.columnSpan: 3
} }
Label Label
@@ -83,7 +130,7 @@ GridLayout
{ {
id: zusatz1 id: zusatz1
Layout.fillWidth: true Layout.fillWidth: true
//Layout.maximumWidth: parent.width / 2 Layout.columnSpan: 3
} }
Label Label
@@ -96,7 +143,7 @@ GridLayout
{ {
id: zusatz2 id: zusatz2
Layout.fillWidth: true Layout.fillWidth: true
//Layout.maximumWidth: parent.width / 2 Layout.columnSpan: 3
} }
Label Label
@@ -109,7 +156,7 @@ GridLayout
{ {
id: gesamtnetto id: gesamtnetto
Layout.fillWidth: true Layout.fillWidth: true
//Layout.maximumWidth: parent.width / 2 Layout.columnSpan: 3
} }
Label Label
@@ -122,7 +169,7 @@ GridLayout
{ {
id: mwst id: mwst
Layout.fillWidth: true Layout.fillWidth: true
//Layout.maximumWidth: parent.width / 2 Layout.columnSpan: 3
} }
Label Label
@@ -135,7 +182,7 @@ GridLayout
{ {
id: gesamt id: gesamt
Layout.fillWidth: true Layout.fillWidth: true
//Layout.maximumWidth: parent.width / 2 Layout.columnSpan: 3
} }
Label Label
@@ -149,9 +196,8 @@ GridLayout
id: zahlungsziel id: zahlungsziel
Layout.fillWidth: true Layout.fillWidth: true
editable: false editable: false
//model: business_type
textRole: "display" textRole: "display"
//Layout.maximumWidth: parent.width / 2 Layout.columnSpan: 3
} }
@@ -165,6 +211,7 @@ GridLayout
id: infoview id: infoview
Layout.fillWidth: true Layout.fillWidth: true
Layout.preferredHeight: 110 Layout.preferredHeight: 110
Layout.columnSpan: 3
ScrollBar.horizontal: ScrollBar ScrollBar.horizontal: ScrollBar
{ {
policy: ScrollBar.AlwaysOn policy: ScrollBar.AlwaysOn
@@ -180,6 +227,7 @@ GridLayout
{ {
color: objectInfo.palette.base color: objectInfo.palette.base
border.color: objectInfo.activeFocus? objectInfo.palette.highlight: objectInfo.palette.base border.color: objectInfo.activeFocus? objectInfo.palette.highlight: objectInfo.palette.base
width: parent.width
} }
} }
} }

1
backup.pyqrec Normal file
View File

@@ -0,0 +1 @@
zIgY4d8ORJ0HZpG7y8/XeS84mKHFcvNaMmCxdirT6ebjApHlo5XVXspy3ENIEvrZczSDRugR0sAVVt8StqZ2gGAr42tIwFF9Uwl7YBMi72+iGIkwyIGX/Jw3OiHYubkXEooZLYX1MYPOC91ppVnZG0PA0IYdpDofq5inFfxpPBwMdcJxvtZPLhIX2y7Fn3m1/lsWe+e2EBwDGxnZjUjPMsRFMjswBv20EOHk46OuNFwlDyn+w9ZDoJfhF6HKYqNxnBnN90KEUygTYGWk.nfaytDW7Z0Nn2/5d22/ciQ==