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, )
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)
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)
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()