def calcMKBToolTip(MKB, MKBEx=''): result = [] if MKB: result.append(MKB + ': ' + getMKBName(MKB)) if MKBEx: result.append(MKBEx + ': ' + getMKBName(MKBEx)) return u'\n'.join(result)
def setup(self, oldMKB, newMKB): oldMKBName = getMKBName(oldMKB) newMKBName = getMKBName(newMKB) self.lblMessage.setText( u'Ведён код %s (%s)\nРанее был указан код %s (%s)\nИзменить на этот код?' % (newMKB, newMKBName, oldMKB, oldMKBName)) self.btnAcceptOld.setText(u'Изменить на %s' % oldMKB) self.btnAcceptNew.setText(u'Принять %s' % newMKB) self.btnAcceptNewAndModifyOld.setText(u'Применить %s взамен %s' % (newMKB, oldMKB))
def getEventInfo(self): result = {} result['person'] = getPersonInfo(self.personId) result['cardNo'] = forceString(self.edtCardNo.text()) result['order'] = EventOrder.getName(self.cmbOrder.currentIndex()) result['traumaType'] = forceString(self.cmbTraumaType.currentText()) result['MKB'] = forceString(self.edtMKB.text()) result['MKBName'] = getMKBName(result['MKB']) result['MKBEx'] = forceString(self.edtMKBEx.text()) result['MKBExName'] = getMKBName(result['MKBEx']) result['date'] = forceString(self.eventDate) result['client'] = getClientInfoEx(self.clientId, self.eventDate) return result
def toStatusTip(self, val, record): code = forceString(val) if self.cache.has_key(code): descr = self.cache[code] else: descr = getMKBName(code) if code else '' self.cache[code] = descr return toVariant((code + ': ' + descr) if code else '')
def checkAndUpdateDiagnosisCharacter(self, MKB): if self.oldCharacterId: characterIdList = getAvailableCharacterIdByMKB(MKB) db = QtGui.qApp.db codes = set() for id in characterIdList: code = forceString( db.translate('rbDiseaseCharacter', 'id', id, 'replaceInDiagnosis')) codes.add(code) codes = list(codes) codes.sort() characterIdList = [] for code in codes: id = forceRef( db.translate('rbDiseaseCharacter', 'code', code, 'id')) characterIdList.append(id) if self.oldCharacterId in characterIdList: self.characterId = self.oldCharacterId elif not characterIdList or not characterIdList[-1]: self.characterId = None else: newCharacterId = characterIdList[-1] message = u'Заболевание с ранее указанным диагнозом %s (%s) имело характер "%s".\nНовый код диагноза %s (%s) предполагает характер "%s".\nВсё равно исправить код диагноза?' % \ ( self.oldMKB, getMKBName(self.oldMKB), forceString(db.translate('rbDiseaseCharacter', 'id', self.oldCharacterId, 'name')), MKB, getMKBName(MKB), forceString(db.translate('rbDiseaseCharacter', 'id', newCharacterId, 'name')), ) ok = QtGui.QMessageBox.question( self, u'Внимание', message, QtGui.QMessageBox.Ok | QtGui.QMessageBox.Cancel, QtGui.QMessageBox.Cancel) if ok: self.characterId = newCharacterId return ok return True
def getDescr(self): if self._descr is None: self._descr = getMKBName(self.code) if self.code else '' return self._descr
def build(self, params): clientId = params.get('clientId', None) begDate = params.get('begDate', None) endDate = params.get('endDate', None) eventPurposeId = params.get('eventPurposeId', None) specialityId = params.get('specialityId', None) personId = params.get('personId', None) orgStructureId = params.get('orgStructureId', None) doc = QtGui.QTextDocument() cursor = QtGui.QTextCursor(doc) cursor.setCharFormat(CReportBase.ReportTitle) cursor.insertText(self.name) cursor.setCharFormat(CReportBase.TableBody) cursor.insertBlock() cursor.insertHtml(getClientBanner(clientId)) cursor.insertBlock() tableColumns = [ ('10?', [u'Дата'], CReportBase.AlignLeft), ('15?', [u'Врач'], CReportBase.AlignLeft), ('15?', [u'Специальность'], CReportBase.AlignLeft), ('5?', [u'Место'], CReportBase.AlignLeft), ('10?', [u'Код услуги'], CReportBase.AlignLeft), ('10?', [u'Тип события'], CReportBase.AlignLeft), ('5?', [u'МЭС'], CReportBase.AlignLeft), ('5?', [u'Код диагноза'], CReportBase.AlignLeft), ('20?', [u'Расшифровка диагноза'], CReportBase.AlignLeft), ('5?', [u'Результат'], CReportBase.AlignLeft), ] table = createTable(cursor, tableColumns) db = QtGui.qApp.db query = selectData(clientId, begDate, endDate, eventPurposeId, specialityId, personId, orgStructureId) self.setQueryText(forceString(query.lastQuery())) while query.next(): record = query.record() i = table.addRow() table.setText(i, 0, forceString(forceDate(record.value('date')))) table.setText(i, 1, forceString(record.value('person'))) table.setText(i, 2, forceString(record.value('speciality'))) table.setText(i, 3, forceString(record.value('scene'))) table.setText(i, 4, forceString(record.value('service'))) table.setText(i, 5, forceString(record.value('eventType'))) table.setText( i, 6, forceString( db.translate('mes.MES', 'id', forceRef(record.value('mes')), 'code'))) table.setText(i, 9, forceString(record.value('resultName'))) diagnosisCodes = [] diagnosisNames = [] MKB = forceString(record.value('MKB')) MKBEx = forceString(record.value('MKBEx')) if MKB: diagnosisCodes.append(MKB) diagnosisNames.append(getMKBName(MKB)) if MKBEx: diagnosisCodes.append(MKBEx) diagnosisNames.append(getMKBName(MKBEx)) table.setText(i, 7, '\n'.join(diagnosisCodes)) table.setText(i, 8, '\n'.join(diagnosisNames)) return doc