Пример #1
0
 def __init__(self, parent):
     CRecordListModel.__init__(self, parent)
     self.addCol(
         CRBInDocTableCol(u'Подразделение',
                          'orgStructure_id',
                          50,
                          'OrgStructure',
                          showFields=CRBComboBox.showCode))
     self.addCol(
         CNomenclatureInDocTableCol(u'ЛСиИМН',
                                    'nomenclature_id',
                                    50,
                                    showFields=CRBComboBox.showName))
     self.addCol(CInDocTableCol(u'Партия', 'batch', 16))
     self.addCol(
         CDateInDocTableCol(u'Годен до', 'shelfTime', 12, canBeEmpty=True))
     self.addCol(
         CRBInDocTableCol(u'Тип финансирования', 'finance_id', 15,
                          'rbFinance'))
     self.addCol(CFloatInDocTableCol(u'Кол-во', 'qnt', 12))
     self.addCol(CFloatInDocTableCol(u'Сумма', 'sum', 12))
     self.addCol(
         CFloatInDocTableCol(u'Гантированный запас', 'constrainedQnt', 12))
     self.addCol(CFloatInDocTableCol(u'Точка заказа', 'orderQnt', 12))
     self._cachedRow = None
     self._cachedRowColor = None
Пример #2
0
 def __init__(self, parent):
     CInDocTableModel.__init__(self, 'StockMotion_Item', 'id', 'master_id', parent)
     self.addCol(CNomenclatureInDocTableCol(u'ЛСиИМН', 'nomenclature_id', 50, showFields = CRBComboBox.showName))
     self.addCol(CInDocTableCol( u'Партия', 'batch', 16))
     self.addCol(CDateInDocTableCol( u'Годен до', 'shelfTime', 12, canBeEmpty=True))
     self.addCol(CRBInDocTableCol(    u'Прежний тип финансирования', 'oldFinance_id', 15, 'rbFinance'))
     self.addCol(CRBInDocTableCol(    u'Новый тип финансирования', 'finance_id', 15, 'rbFinance'))
     self.addCol(CFloatInDocTableCol( u'Кол-во', 'qnt', 12))
     self.addCol(CFloatInDocTableCol( u'Сумма',  'sum', 12))
Пример #3
0
 def addPriceAndSumColumn(self):
     self.addExtCol(CBoolInDocTableCol(u'Нал.', 'cash', 10),
                    QtCore.QVariant.Int)
     self.addExtCol(CFloatInDocTableCol(u'Цена', 'price', 7, precision=2),
                    QtCore.QVariant.Double).setReadOnly()
     self.addExtCol(CInDocTableCol(u'Кол-во', 'amount', 7, precision=2),
                    QtCore.QVariant.Double).setReadOnly(False)
     self.addExtCol(CFloatInDocTableCol(u'Сумма', 'sum', 7, precision=2),
                    QtCore.QVariant.Double).setReadOnly()
Пример #4
0
 def __init__(self, parent):
     CInDocTableModel.__init__(self, 'OrgStructure_Stock', 'id',
                               'master_id', parent)
     self.addCol(
         CNomenclatureInDocTableCol(u'ЛСиИМН',
                                    'nomenclature_id',
                                    50,
                                    showFields=CRBComboBox.showName))
     self.addCol(
         CRBInDocTableCol(u'Тип финансирования', 'finance_id', 20,
                          'rbFinance'))
     self.addCol(
         CFloatInDocTableCol(u'Гарантийный запас', 'constrainedQnt', 20))
     self.addCol(CFloatInDocTableCol(u'Точка заказа', 'orderQnt', 20))
Пример #5
0
 def __init__(self, parent):
     CInDocTableModel.__init__(self, 'StockRequisition_Item', 'id',
                               'master_id', parent)
     self.addCol(
         CNomenclatureInDocTableCol(u'ЛСиИМН',
                                    'nomenclature_id',
                                    50,
                                    showFields=CRBComboBox.showName))
     self.addCol(
         CRBInDocTableCol(u'Тип финансирования', 'finance_id', 15,
                          'rbFinance'))
     self.addCol(CFloatInDocTableCol(u'Кол-во', 'qnt', 12))
     self.addCol(CFloatInDocTableCol(u'Отпущено', 'satisfiedQnt',
                                     12)).setReadOnly()
Пример #6
0
 def __init__(self, parent):
     CInDocTableModel.__init__(self, 'StockMotion_Item', 'id', 'master_id',
                               parent)
     self.addCol(
         CNomenclatureInDocTableCol(u'ЛСиИМН',
                                    'nomenclature_id',
                                    50,
                                    showFields=CRBComboBox.showName))
     self.addCol(
         CRBInDocTableCol(u'Тип финансирования', 'finance_id', 15,
                          'rbFinance'))
     self.addCol(CFloatInDocTableCol(u'Кол-во по документам', 'oldQnt', 12))
     self.addCol(CFloatInDocTableCol(u'Сумма по документам', 'oldSum', 12))
     self.addCol(CFloatInDocTableCol(u'Фактическое кол-во', 'qnt', 12))
     self.addCol(CFloatInDocTableCol(u'Фактическая сумма', 'sum', 12))
Пример #7
0
    def __init__(self, parent):
        CAnalysesRecommendationMixin.__init__(self)
        CInDocTableModel.__init__(self, 'Recommendation', 'id', 'setEvent_id',
                                  parent)
        self.__parent = parent
        self.clientId = None
        self.personId = None
        self.contractId = None
        self.addCol(
            CRBInDocTableCol(u'Врач',
                             'person_id',
                             10,
                             'vrbPersonWithSpeciality',
                             parent=parent).setReadOnly())
        self.addCol(
            CDateInDocTableCol(u'Дата рекомендации', 'setDate',
                               15).setReadOnly())
        self.addCol(
            CActionTypeTableCol(u'Рекомендация',
                                'actionType_id',
                                15,
                                None,
                                classesVisible=True).setReadOnly())
        self.addCol(
            CFloatInDocTableCol(u'Цена', 'price', 7,
                                precision=2).setReadOnly())
        self.addCol(CInDocTableCol(u'Количество', 'amount', 7, precision=2))
        self.addCol(CSumCol(u'Сумма', 'price', 7, precision=2).setReadOnly())
        self.addCol(
            CDateInDocTableCol(u'Актуально до', 'expireDate',
                               15).setReadOnly())

        self.ActionTypeColIndex = self.getColIndex('actionType_id')
Пример #8
0
 def __init__(self, parent):
     CInDocTableModel.__init__(self, 'Event_Payment', 'id', 'master_id',
                               parent)
     self._parent = parent
     self.addCol(CInDocTableCol(u'Касса', 'cashBox',
                                15)).setToolTip(u'').setReadOnly()
     self.addCol(CDateInDocTableCol(
         u'Дата', 'date', 15, canBeEmpty=True)).setToolTip(u'Дата платежа')
     self.addCol(
         CRBInDocTableCol(u'Операция',
                          'cashOperation_id',
                          10,
                          rbCashOperation,
                          addNone=True,
                          prefferedWidth=150))
     self.addCol(CInDocTableCol(u'№ чека', 'cheque', 20))
     self.addCol(CFloatInDocTableCol(u'Сумма', 'sum',
                                     15)).setToolTip(u'Сумма платежа')
     self.addCol(
         CEnumInDocTableCol(u'Тип оплаты', 'typePayment', 12,
                            [u'наличный', u'безналичный']))
     self.addCol(CInDocTableCol(u'Расчетный счет', 'settlementAccount', 22))
     self.addCol(CBankInDocTableCol(u'Реквизиты банка', 'bank_id', 22))
     self.addCol(
         CInDocTableCol(u'Номер кредитной карты', 'numberCreditCard', 22))
Пример #9
0
 def __init__(self, parent, isOut):
     CInDocTableModel.__init__(self, 'rbStockRecipe_Item', 'id', 'master_id', parent)
     self.isOut = isOut
     self.addCol(CNomenclatureInDocTableCol(u'ЛСиИМН', 'nomenclature_id', 50, showFields = CRBComboBox.showName))
     self.addCol(CFloatInDocTableCol( u'Кол-во', 'qnt', 12))
     self.addHiddenCol('isOut')
     self.setFilter('isOut!=0' if isOut else 'isOut=0')
Пример #10
0
 def __init__(self, parent=None):
     super(CClientAntrophometricModel,
           self).__init__(u'ClientAnthropometric', u'id', u'client_id',
                          parent)
     self.addCol(CDateInDocTableCol(u'Дата', 'date', 50))
     #atronah: возможно лучше текстом, так как CIntInDocTableCol вроде не допускает пустого значения
     self.addCol(
         CFloatInDocTableCol(u'Рост, см',
                             'height',
                             15,
                             min=30,
                             max=290,
                             precision=1))
     self.addCol(
         CFloatInDocTableCol(u'Вес, кг',
                             'weight',
                             15,
                             min=0.200,
                             max=700,
                             precision=3))
     self.addCol(
         CFloatInDocTableCol(u'Об. талии, см',
                             'waist',
                             15,
                             min=30,
                             max=500,
                             precision=1))
     self.addCol(
         CFloatInDocTableCol(u'Об. груди, см',
                             'bust',
                             15,
                             min=30,
                             max=500,
                             precision=1))
     self.addCol(
         CCalculatedInDocTableCol(
             u'Индекс массы тела',
             'height',
             50,
             additionalFieldList=['weight'],
             calculateFunc=lambda h, w: round(
                 w.toDouble()[0] /
                 (max(h.toDouble()[0] / 100, 0.001)**2), 1)))
Пример #11
0
 def __init__(self, parent, isOut):
     CInDocTableModel.__init__(self, 'StockMotion_Item', 'id', 'master_id',
                               parent)
     self.isOut = isOut
     self.addCol(
         CNomenclatureInDocTableCol(u'ЛСиИМН',
                                    'nomenclature_id',
                                    50,
                                    showFields=CRBComboBox.showName))
     self.addCol(CInDocTableCol(u'Партия', 'batch', 16))
     self.addCol(
         CDateInDocTableCol(u'Годен до', 'shelfTime', 12, canBeEmpty=True))
     self.addCol(
         CRBInDocTableCol(u'Тип финансирования', 'finance_id', 15,
                          'rbFinance'))
     self.addCol(CFloatInDocTableCol(u'Кол-во', 'qnt', 12))
     self.addCol(CFloatInDocTableCol(u'Сумма', 'sum', 12))
     self.addHiddenCol('isOut')
     self.setFilter('isOut!=0' if isOut else 'isOut=0')
Пример #12
0
    def __init__(self, parent, existsActionTypeIdList=None):
        if not existsActionTypeIdList:
            existsActionTypeIdList = []
        CRecordListModel.__init__(self, parent)
        self.addCol(CBoolInDocTableCol(u'Включить', 'checked', 10))
        self.addCol(
            CRBInDocTableCol(u'Тип действия',
                             'actionType_id',
                             14,
                             'ActionType',
                             showFields=2).setReadOnly())
        self.addCol(
            CFloatInDocTableCol(u'Количество', 'amount', 12, precision=2))
        #        self.addCol(CIntInDocTableCol(  u'Группа выбора', 'selectionGroup', 12).setReadOnly())

        self._existsActionTypeIdList = existsActionTypeIdList

        self._cacheItemsByGroup = {}
Пример #13
0
 def __init__(self, title, fieldName, width, **params):
     CFloatInDocTableCol.__init__(self, title, fieldName, width, **params)
Пример #14
0
 def __init__(self, parent):
     self.retranslate()
     CInDocTableModel.__init__(self, 'Contract_Tariff', 'id', 'master_id',
                               parent)
     self.parent = parent
     self.addCol(
         CRBInDocTableCol(u'Событие', 'eventType_id', 30,
                          'EventType')).setSortable(True)
     self.addCol(
         CEnumInDocTableCol(u'Тарифицируется', 'tariffType', 5,
                            CTariffModel.tariffTypeNames)).setSortable(True)
     self.addCol(
         CRBInDocTableCol(
             u'Услуга',
             'service_id',
             30,
             'rbService',
             showFields=CRBComboBox.showCodeAndName)).setSortable(True)
     self.addCol(
         CRBInDocTableCol(u'Специальность', 'speciality_id', 30,
                          'rbSpeciality')).setSortable(True)
     self.addCol(
         CRBInDocTableCol(u'Тарифная категория', 'tariffCategory_id', 30,
                          'rbTariffCategory')).setSortable(True)
     self.addCol(CInDocTableCol(u'Код по МКБ', 'MKB', 8)).setSortable(True)
     self.addCol(
         CDateInDocTableCol(u'Дата начала', 'begDate', 10,
                            canBeEmpty=True)).setSortable(True)
     self.addCol(
         CDateInDocTableCol(u'Дата окончания',
                            'endDate',
                            10,
                            canBeEmpty=True)).setSortable(True)
     self.addCol(CEnumInDocTableCol(u'Пол', 'sex', 3, [u'', u'М', u'Ж']))
     self.addCol(CInDocTableCol(u'Возраст', 'age', 8))
     self.addCol(
         CRBInDocTableCol(u'Тип', 'attachType_id', 30, 'rbAttachType'))
     self.addCol(CPolyclinicInDocTableCol(u'ЛПУ', 'attachLPU_id', 15))
     self.addCol(
         CRBInDocTableCol(u'Ед.Уч.', 'unit_id', 8, 'rbMedicalAidUnit'))
     self.addCol(CFloatInDocTableCol(u'Кол-во', 'amount', 8))
     self.addCol(
         CFloatInDocTableCol(u'УЕТ',
                             'uet',
                             4,
                             precision=self.pricePrecision))
     self.addCol(
         CFloatInDocTableCol(u'Цена',
                             'price',
                             8,
                             precision=self.pricePrecision))
     self.addCol(
         CFloatInDocTableCol(u'Второй тариф с',
                             'frag1Start',
                             8,
                             precision=0))
     self.addCol(
         CFloatInDocTableCol(u'Сумма второго тарифа',
                             'frag1Sum',
                             8,
                             precision=self.pricePrecision))
     self.addCol(
         CFloatInDocTableCol(u'Цена второго тарифа',
                             'frag1Price',
                             8,
                             precision=self.pricePrecision))
     self.addCol(
         CFloatInDocTableCol(u'Третий тариф с',
                             'frag2Start',
                             8,
                             precision=0))
     self.addCol(
         CFloatInDocTableCol(u'Сумма третьего тарифа',
                             'frag2Sum',
                             8,
                             precision=self.pricePrecision))
     self.addCol(
         CFloatInDocTableCol(u'Цена третьего тарифа',
                             'frag2Price',
                             8,
                             precision=self.pricePrecision))
     self.addCol(
         CFloatInDocTableCol(u'Фед.цена',
                             'federalPrice',
                             8,
                             precision=self.pricePrecision))
     self.addCol(CFloatInDocTableCol(u'Фед.предел', 'federalLimitation', 8))
     self.addCol(
         CEnumInDocTableCol(u'НДС',
                            'vat',
                            8,
                            CTariffModel.vat,
                            precision=self.pricePrecision))
Пример #15
0
    def __init__(self, parent, existsActionsModel):
        CRecordListModel.__init__(self, parent)
        currentDateDict = {'currentDate': True}
        self.addExtCol(CInDocTableCol(u'№', '__serialNumber', 5),
                       QtCore.QVariant.Int)
        self.addExtCol(CCheckedActionsModel.CLocEnableCol(parent),
                       QtCore.QVariant.Bool)
        self.addExtCol(
            CRBInDocTableCol(u'Действие',
                             'actionType_id',
                             15,
                             'ActionType',
                             showFields=2).setReadOnly(), QtCore.QVariant.Int)
        self.addExtCol(
            CCheckedActionsModel.CLocDateTimeInDocTableCol(
                u'Назначить', 'directionDate', 10), QtCore.QVariant.DateTime)
        self.addExtCol(
            CCheckedActionsModel.CLocDateTimeInDocTableCol(
                u'Начать', 'begDate', 10), QtCore.QVariant.DateTime)
        self.addExtCol(
            CCheckedActionsModel.CLocDateTimeInDocTableCol(
                u'Выполнено', 'endDate', 10, **currentDateDict),
            QtCore.QVariant.DateTime)
        self.addExtCol(
            CPersonFindInDocTableCol(u'Врач',
                                     'person_id',
                                     10,
                                     'vrbPersonWithSpeciality',
                                     parent=parent), QtCore.QVariant.Int)
        self.addExtCol(
            CFloatInDocTableCol(u'Количество', 'amount', 10, precision=2),
            QtCore.QVariant.Double)
        self.addExtCol(
            CFloatInDocTableCol(u'ЧП', 'necessity', 10, precision=2),
            QtCore.QVariant.Double)
        self.addExtCol(CIntInDocTableCol(u'Длительность', 'duration', 10),
                       QtCore.QVariant.Int)
        self.addExtCol(CIntInDocTableCol(u'Интервал', 'periodicity', 10),
                       QtCore.QVariant.Int)
        self.addExtCol(CIntInDocTableCol(u'Кратность', 'aliquoticity', 10),
                       QtCore.QVariant.Int)
        self.addExtCol(CDateInDocTableCol(u'План', 'plannedEndDate', 10),
                       QtCore.QVariant.Date)
        self.addExtCol(
            CRBInDocTableCol(u'Тип финансирования',
                             'finance_id',
                             10,
                             'rbFinance',
                             showFields=2), QtCore.QVariant.Int)
        self.addExtCol(CCheckedActionsModel.CContractInDocTableCol(self),
                       QtCore.QVariant.Int)
        self.addExtCol(CFloatInDocTableCol(u'Сумма', 'price', 10, precision=2),
                       QtCore.QVariant.Double)
        self.addExtCol(
            CFloatInDocTableCol(u'Закупочная стоимость упаковки',
                                'packPurchasePrice',
                                10,
                                precision=2), QtCore.QVariant.Double)
        self.addExtCol(
            CFloatInDocTableCol(u'Стоимость курсовой дозы',
                                'doseRatePrice',
                                10,
                                precision=2), QtCore.QVariant.Double)
        self.addHiddenCol('parent_id')

        self._existsActionsModel = existsActionsModel
        self.clientId = None
        self.defaultFinanceId = None
        self.defaultContractFilterPart = None
        self._idToRow = {}
        self.parentWidget = parent
        self._table = QtGui.qApp.db.table('Action')
        self._dbFieldNamesList = [
            field.fieldName.replace('`', '') for field in self._table.fields
        ]
        self.prices = []
        self._mapPropertyTypeCellsActivity = {}
        self._propertyColsNames = ['recipe', 'doses', 'signa']
        self._propertyColsIndexes = [
            self.getColIndex(name) for name in self._propertyColsNames
        ]
        self._mapActionTypeIdToPropertyValues = {}
        self._idToAction = {}
        self._parent = parent
        self._mainActionTypesAnalyses = set(getMainActionTypesAnalyses())

        boldFont = QtGui.QFont()
        boldFont.setWeight(QtGui.QFont.Bold)
        self._qBoldFont = QtCore.QVariant(boldFont)