Example #1
0
 def _createItem(self, adr):
     notes = adr.notes() or ""
     shortnotes = notes if len(notes) <= self.shortNoteLen else notes[: self.shortNoteLen - 3] + "..."
     return dict(
         address=adr,
         display=adr.display(),
         id=adr.id(),
         roadname=adr.roadname(),
         rna_id=adr.rna_id(),
         par_id=adr.par_id(),
         rna_par_id=str(adr.rna_id()) + "/" + str(adr.par_id()),
         src_roadname=adr.src_roadname(),
         rna_roadname=adr.rna_roadname(),
         housenumber=adr.housenumber(),
         sad_id=adr.sad_id(),
         sad_address=adr.sad_address(),
         sad_offset=adr.sad_offset(),
         warnings="Yes" if adr.warning_codes() else "No",
         status=CodeLookup.lookup("address_status", adr.status()),
         src_id=adr.src_id(),
         notes=notes,
         shortnotes=shortnotes,
         cluster_id=adr.cluster_id(),
         notmerged=adr.merge_adr_id() == None,
     )
Example #2
0
 def loadJob( self, job ):
     # If this is not the controllers main job then don't do anything
     if job != self.job():
         return
     if job:
         createdate = job.creation_time().strftime('%d-%b-%Y')
         createdate += ' by ' + job.created_by()
         self.uCreationLabel.setText(createdate)
         self.uSupplierLabel.setText(job.supplier().name())
         self.uStatusLabel.setText( CodeLookup.lookup('job_status',job.status()))
         self.uDescription.setText(job.description())
         self.uNotes.setPlainText(job.notes())
         self.uNotes.setPlainText(job.notes())
         self.uSetCompleted.setEnabled(job.status() == JobStatus.Working)
     else:
         self.uCreationLabel.setText('')
         self.uSupplierLabel.setText('')
         self.uStatusLabel.setText('')
         self.uDescription.setText('')
         self.uNotes.setPlainText('')
         self.uSetCompleted.setEnabled(False)
Example #3
0
 def setStatusLabel(self):
     label = CodeLookup.lookup("address_status", self._status, "None")
     if self._delete and self._status != AddressStatus.Delete:
         label += " (delete)"
     self.uStatus.setText(label)
Example #4
0
    def load(self, reload=False):
        address = self._address
        self.uAcceptButton.setEnabled(False)
        self.uAcceptButton.setChecked(False)
        self.uNewButton.setEnabled(False)
        self.uNewButton.setChecked(False)
        self.uReplaceButton.setEnabled(False)
        self.uReplaceButton.setChecked(False)
        self.uReplaceButton.setText("Replace")
        self.uIgnoreButton.setEnabled(False)
        self.uIgnoreButton.setChecked(False)
        if not address:
            self._status0 = None
            self._housenumber0 = None
            self._sad_id0 = None
            self._notes0 = None

            self._status = AddressStatus.Undefined
            self._sad_id = None
            self._delete = False
            self.uAddressBeingEdited.setText("No address selected")
            self.uStatus.setText("")
            self.uReplaceLabel.setText("Landonline address to replace")
            self.uHouseNumber.setText("")
            self.uSourceNumber.setText("")
            self.uNotes.setPlainText("")
            self.uWarnings.setText("")
            self.uHouseNumber.setEnabled(False)
            self.uNotes.setEnabled(False)
            self.uSrcComment.setText("")
            self._replacementList.setList([])
            self.uSelectReplacementButton.setEnabled(False)
            self.uUnselectReplacementButton.setEnabled(False)
            return
        self._status0 = address.status()
        self._housenumber0 = address.housenumber()
        self._sad_id0 = address.sad_id()
        self._notes0 = address.notes()

        self._status = address.status()
        self._sad_id = address.sad_id()
        self._delete = address.src_status == AddressStatus.Delete
        self._badroad = not address.roadIsValid()
        self._badgeometry = not address.geometryIsValid()
        self.uIgnoreButton.setEnabled(True)
        if self._delete:
            self.uReplaceButton.setText("Delete")
        else:
            self.uNewButton.setEnabled(True)
        if self._sad_id != None:
            self.uReplaceButton.setEnabled(True)
        if self._status == AddressStatus.New:
            self.uNewButton.setChecked(True)
        elif self._status in (AddressStatus.Replace, AddressStatus.Delete):
            self.uReplaceButton.setChecked(True)
        elif self._status == AddressStatus.Ignore:
            self.uIgnoreButton.setChecked(True)
        if self._badroad:
            self.uNewButton.setEnabled(False)
            self.uReplaceButton.setEnabled(False)
        if self._badgeometry:
            self.uNewButton.setEnabled(False)
            self.uReplaceButton.setEnabled(False)
        self.setStatusLabel()
        self.setRangeLabel()

        self.uAddressBeingEdited.setText(address.address())
        if self._delete:
            self.uReplaceLabel.setText("Landonline address to delete")
        else:
            self.uReplaceLabel.setText("Landonline address to replace with " + address.address())
        self.uHouseNumber.setText(address.housenumber())
        srcnumber = ""
        if address.ismerged():
            srcnumber = "(from merge)"
        else:
            srcnumber = "(Supplied as " + address.src_housenumber() + ")"
        self.uSourceNumber.setText(srcnumber)
        warnings = ", ".join(
            str(CodeLookup.lookup("address_warning", code)) for code in address.warning_codes().split()
        )
        self.uWarnings.setText(warnings)
        if warnings:
            self.uAcceptButton.setEnabled(True)
            self.setWarningColour()
        self.uSrcComment.setText(address.src_comment())
        self.uNotes.setPlainText(address.notes())
        self.uHouseNumber.setEnabled(True)
        self.uNotes.setEnabled(True)
        self.searchForAddresses()