268 lines
9.5 KiB
QML
Executable File
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
|