示例#1
0
 def _createEditViewAndDialog( self ):
     if not self._mobjList:
         dummy, self._mobjList = BusinessLogic.inst().getAllMietobjekte()
     self._view = GeschaeftsreiseEditView( self._mobjList, self._xgeschaeftsreise )
     self._dlg = OkCancelDialog()
     self._dlg.addWidget( self._view, 1 )
     self._dlg.setValidationFunction( self.validate )
     self._dlg.setCancellationFunction( self.mayCancel )
示例#2
0
 def __init__(self, notiz:XNotiz=None, parent=None ):
     OkCancelDialog.__init__( self, parent )
     self._edi = NotizEditor( notiz )
     self.addWidget( self._edi, 0 )
示例#3
0
 def __init__( self, x:XOffenerPosten, parent=None ):
     OkCancelDialog.__init__( self, parent )
     self._edi = OffenerPostenEditor( x )
     self._edi.debiKrediAuswahlFirmaPressed.connect( self.chooseFirmaSignal.emit )
     self._edi.debiKrediAuswahlVwPressed.connect( self.chooseVerwalterSignal.emit )
     self.addWidget( self._edi, 0 )
示例#4
0
class GeschaeftsreiseEditController:
    def __init__( self, x:XGeschaeftsreise=None ):
        self._xgeschaeftsreise:XGeschaeftsreise = x
        self._view:GeschaeftsreiseEditView = None
        self._dlg = OkCancelDialog()
        self._mobjList:List[str] = None

    def validate( self, x: XGeschaeftsreise ) -> bool:
        msg = ""
        if not x.mobj_id: msg = "Objekt muss angegeben sein."
        if not x.von: msg = "Beginn muss angegeben sein."
        if not x.bis: msg = "Ende muss angegeben sein."
        if x.von > x.bis: msg = "Beginn muss vor dem Ende sein."
        if not x.ziel: msg = "Ziel muss angegeben sein."
        if not x.zweck: msg = "Zweck muss angegeben sein."
        if x.km <= 0: msg = "Kilometerangabe fehlt. Muss angegeben werden."
        if msg:
            box = ErrorBox( "Angaben unvollständig", msg, "" )
            box.exec_()
            return False
        return True

    def _createEditViewAndDialog( self ):
        if not self._mobjList:
            dummy, self._mobjList = BusinessLogic.inst().getAllMietobjekte()
        self._view = GeschaeftsreiseEditView( self._mobjList, self._xgeschaeftsreise )
        self._dlg = OkCancelDialog()
        self._dlg.addWidget( self._view, 1 )
        self._dlg.setValidationFunction( self.validate )
        self._dlg.setCancellationFunction( self.mayCancel )

    def validate( self ) -> bool:
        x = self._view.getDataCopyWithChanges()
        msg = ""
        if not x.mobj_id: msg = "Objekt muss angegeben sein."
        elif not x.von: msg = "Beginn muss angegeben sein."
        elif not x.bis: msg = "Ende muss angegeben sein."
        elif x.von > x.bis: msg = "Beginn muss vor dem Ende sein."
        elif not x.ziel: msg = "Ziel muss angegeben sein."
        elif not x.zweck: msg = "Zweck muss angegeben sein."
        elif x.km <= 0: msg = "Kilometerangabe fehlt. Muss angegeben werden."
        if msg:
            box = ErrorBox( "Angaben unvollständig", msg, "" )
            box.exec_()
            return False
        return True

    def mayCancel( self ) -> bool:
        return False

    def createGeschaeftsreise( self, jahr:int ) -> XGeschaeftsreise or None:
        self._xgeschaeftsreise = XGeschaeftsreise()
        self._xgeschaeftsreise.jahr = jahr
        self._createEditViewAndDialog()
        if self._dlg.exec_():
            self._view.applyChanges()
            return self._xgeschaeftsreise
        else:
            return None

    def editGeschaeftsreise( self ) -> bool:
        self._createEditViewAndDialog()
        if self._dlg.exec_():
            xcopy = self._view.getDataCopyWithChanges()
            if not self._xgeschaeftsreise.equals( xcopy ):
                self._view.applyChanges()
                return True
        return False
示例#5
0
 def __init__( self, x:XGeschaeftsreise=None ):
     self._xgeschaeftsreise:XGeschaeftsreise = x
     self._view:GeschaeftsreiseEditView = None
     self._dlg = OkCancelDialog()
     self._mobjList:List[str] = None
示例#6
0
 def __init__(self, mietverhaeltnis: XMietverhaeltnis = None, parent=None):
     OkCancelDialog.__init__(self, parent)
     self.setWindowTitle("Mietverhältnis " + mietverhaeltnis.mv_id + ": " +
                         mietverhaeltnis.mobj_id)
     self._view = MietverhaeltnisView(mietverhaeltnis)
     self.addWidget(self._view, 0)
示例#7
0
 def __init__(self,
              geschaeftsreiseeditview: GeschaeftsreiseEditView,
              parent=None):
     OkCancelDialog.__init__(self, parent)
     self.view = GeschaeftsreiseEditView()
     self.addWidget(self.view)