Files
advotracker/advotracker_qml/resources/pages/PageNumberHarm.qml
2020-06-19 17:44:02 +02:00

268 lines
9.5 KiB
QML
Executable File

/*
* AdvoTracker - Hotline tackingtool for Advocats
*
* Copyright (c) 2017 Ralf Zerres <ralf.zerres@networkx.de>
*
* AdvoTracker is free software; you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation; either version 2.1 of the License, or
* (at your option) any later version.
*
* AdvoTracker is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with AdvoTracker; If not, see <http://www.gnu.org/licenses/>.
*/
import QtQuick 2.10 // Qt 5.10
import QtQuick.Controls 2.3 // Qt 5.10
import QtQuick.Layouts 1.3 // Qt 5.10
import QtQuick.Controls.Material 2.3 // Qt 5.10
// AdvoTracker Module
import de.networkx.AdvoTracker 1.0 as Nwx
import SortFilterProxyModel 0.2
/**
* @brief Add relevant NumberHarm informations to db
* @param numberHarm - Schadensnummer
* @param namePolicyowner - Names Versicherungsnehmers
* @param numberPolicyholder - Policennummer des Versicherungsnehmers
* @param switchSB - Selbstbeteiligung
* @param switchSecurity - Deckung
* @param harmReport - Sachverhalt
* @param rightsCouncil - Rechtsrat
* @param switchDone - Erledigt
* @param switchCME - Zentrale Mandats Bearbeitung
* @param switchSurcharge - Zuschlag
* @param numberCallback - Rückrufnummer
* @param dateCallback - Rückrufdatum
* @param dateRecorded - Schadensdatum
* @param clerkId - Id des Benutzer
*
* @return QSqlError
*/
/**
* @brief Add relevant NumberHarmHistory informations to db
* @param numberHarm - Schadensnummer
* @param dateChanged - Änderungsdatum des Datensatzes
* @param userIdChanged - Änderung durch UserId
*
* @return QSqlError
*/
Page {
id: pageNumberHarm
property string numberHarm
property bool doneCME: false
/*
ListModel {
id: modelSwipeTypes
ListElement { itemType: "NumberHarmData"; itemSource: "PaneNumberHarmData.qml"; title: qsTr("Data") }
ListElement { itemType: "NumberHarmAdmin"; itemSource: "PaneNumberHarmAdmin.qml"; title: qsTr("Admin") }
} // modelSwipeTypes
*/
Action {
id: actionNumberHarmData
shortcut: "Ctrl+H"
//onTriggered: Loader {//id: paneNumberHarmBase; source: "PaneNumberHarmBase.qml" }
onTriggered: {
//loaderNumberHarmData.source = "qrc:/pages/PaneNumberHarmData.qml"
swipeNumberHarm.setCurrentIndex(0)
console.log(shortcut)
console.log("numberHarm:", numberHarm)
//console.log(loaderNumberHarmData.source)
//swipeNumberHarm.currentIndex = 0;
//swipeView.currentIndex = Qt.binding(function() {return tabBar.currentIndex})
//modelSwipeTypes.append({ "itemType": "NumberHarmExtended2", "itemSource": "PaneNumberHarmExtended.qml", "title": "Extended2" })
//console.log("itemSource: " + modelSwipeTypes.get(0).itemSource)
//modelSwipeTypes.remove(2)
//modelSwipeTypes.append({ "itemType": "NumberHarmExtended", "itemSource": "PaneNumberHarmExtended.qml", "title": "Extended" })
//console.log("itemSource: " + modelSwipeTypes.get(2).itemSource)
//modelSwipeTypes.remove(2)
//swipeView.currentIndex = 0;
//swipeView.currentIndex = Qt.binding(function() {return tabBar.currentIndex})
}
} // actionNumberHarmData
Action {
id: actionNumberHarmAdmin
shortcut: "Ctrl+D"
//onTriggered: stackViewMain.push("qrc:/NumberHarmPageHistory.qml", { numberHarm: filterModelUser.get(index).numberHarm } )
//onTriggered: stackViewMain.push("qrc:/pages/NumberHarmPageHistory.qml", { numberHarm: "47114711" } )
//onTriggered: Loader { source: "PaneNumberHarmHistory.qml" }
onTriggered: {
//loaderNumberHarmAdmin.source = "qrc:/pages/PaneNumberHarmAdmin.qml"
//swipeNumberHarm.incrementCurrentIndex()
swipeNumberHarm.setCurrentIndex(1)
console.log(shortcut)
//console.log(loaderNumberHarmAdmin.source)
}
} // actionNumberHarmAdmin
header: TabBar {
id: tabBar
//tabView: tabframe
width: parent.width
position: TabBar.Header
contentWidth: 150
padding: 4
spacing: 8
antialiasing: true
//font.pointSize: 12
wheelEnabled: false
background: Rectangle {
//color: tabbar.down ? "#d6d6d6": "#f6f6f6"
border.width: 1
radius: 4
}
currentIndex: swipeNumberHarm.currentIndex
onCurrentIndexChanged: {
swipeNumberHarm.currentIndex = currentIndex
}
TabButton {
//text: Nwx.MdiFont.Icon.helpCircleOutline + " " + qsTr("&Base")
text: qsTr("&Harm data")
action: actionNumberHarmData
}
TabButton {
//text: Nwx.MdiFont.Icon.helpCircleOutline + " " + qsTr("&History")
text: qsTr("Administative &data")
action: actionNumberHarmAdmin
}
} // tabBar
SwipeView {
id: swipeNumberHarm
anchors.fill: parent
Layout.fillWidth: true
Layout.preferredHeight: pageNumberHarm.height * .9
//Layout.fillHeight: true
currentIndex: tabBar.currentIndex
onCurrentIndexChanged: {
tabBar.currentIndex = currentIndex
}
Loader {
id: loaderNumberHarmData
//active: SwipeView.isCurrentItem || SwipeView.isNextItem || SwipeView.isPreviousItem
//source: "PaneNumberHarmData.qml"
sourceComponent: PaneNumberHarmData {
//numberHarm: numberHarm
Component.onCompleted: {
console.log("create: PaneNumberHarmData")
console.log("numberHarm:", numberHarm)
}
Component.onDestruction: console.log("destroyed: PaneNumberHarmData ")
}
//asynchronous: true
//visible: status == Loader.Ready
} // paneNumberHarmHistory
Loader {
id: loaderNumberHarmAdmin
active: SwipeView.isCurrentItem || SwipeView.isNextItem || SwipeView.isPreviousItem
//active: swipeNumberHarm.isCurrentItem || swipeNumberHarm.isNextItem || swipeNumberHarm.isPreviousItem
sourceComponent: PaneNumberHarmAdmin {
//numberHarm: numberHarm
Component.onCompleted: {
console.log("create: PaneNumberHarmAdmin")
console.log("numberHarm:", numberHarm)
}
Component.onDestruction: console.log("destroyed: PaneNumberHarmAdmin")
}
//source: "PaneNumberHarmAdmin.qml"
//asynchronous: true
//visible: status == Loader.Ready
} // paneNumberHarmHistory
/*
Repeater {
id: repeater
model: 2
delegate: ListView {
id: listNumberHarm
anchors.fill: parent
property int listNumberHarmIndex: index
// simple model
model: SortFilterProxyModel {
id: filterNumberHarm
sourceModel: modelNumberHarm
filters: RegExpFilter {
// useRole
roleName: "numberHarm"
pattern: numberHarm
//pattern: "account"
//caseSensitivity: Qt.CaseInsensitive
//caseSensitivity: Qt.Sensitive
}
sorters: [ StringSorter { roleName: "numberHarm" } ]
} // model: filterNumberHarmClerk
delegate:
PaneNumberHarmData {}
//Loader {
// source: "qrc:/pages/PaneNumberHarmAdmin.qml"
//}
} // paneNumberHarmBase
}
*/
//Connections {
// target: paneNumberHarmBase.item
// onMessage: console.log(msg)
//}
/*
ListView {
id: listNumberHarm
//anchors.fill: parent
//currentIndex: 1
model: SortFilterProxyModel {
id: filterNumberHarm
sourceModel: modelNumberHarm
filters: RegExpFilter {
// useRole
roleName: "numberHarm"
pattern: numberHarm
//pattern: "account"
//caseSensitivity: Qt.CaseInsensitive
//caseSensitivity: Qt.Sensitive
}
sorters: [ StringSorter { roleName: "numberHarm" } ]
} // filterNumberHarm
//delegate: paneNumberHarmBase.source: "PaneNumberHarmBase.qml"
paneNumberHarmData.source = "PaneNumberHarmData.qml"
ScrollBar.vertical: ScrollBar {
policy: ScrollBar.AsNeeded
}
}
*/
} // swipeNumberHarm
PageIndicator {
id: indicatorNumberHarm
count: swipeNumberHarm.count
currentIndex: swipeNumberHarm.currentIndex
anchors.bottom: swipeNumberHarm.bottom
anchors.horizontalCenter: parent.horizontalCenter
} // indicatorNumberHarm
} // pageNumberHarm