def main(): import sys from library.database import connectDataBaseByInfo app = CS11mainApp(sys.argv, False, 'S11App.ini', False) QtGui.qApp = app QtCore.QTextCodec.setCodecForTr(QtCore.QTextCodec.codecForName(u'utf8')) connectionInfo = { 'driverName': 'mysql', 'host': 'pes', 'port': 3306, 'database': 's12', 'user': '******', 'password': '******', 'connectionName': 'vista-med', 'compressData': True, 'afterConnectFunc': None } db = connectDataBaseByInfo(connectionInfo) query = db.query(u''' SELECT o.organisation_id FROM OrgStructure o INNER JOIN Person p ON p.orgStructure_id = o.id ''') if query.first(): record = query.record() print forceStringEx(record.value('organisation_id').toString()), type( int(forceStringEx(record.value('organisation_id').toString()))) QtGui.qApp.currentOrgId = lambda: int( forceStringEx(record.value('organisation_id').toString())) print '229638_4' QtGui.qApp.db = connectDataBaseByInfo(connectionInfo) sys.exit(CRCReportList(None).exec_())
def verifyUserPassword(login, verifiablePassword): isTruePassword = True userId = None db = None if login is None: login = QtGui.qApp.userInfo.login() if hasattr( QtGui.qApp, 'userInfo') and QtGui.qApp.userInfo else '' encodedLogin = unicode(login).encode('utf-8') encodedPassword = unicode(verifiablePassword).encode('utf8') hashedPassword = hashlib.md5(encodedPassword).hexdigest() if hasattr( QtGui.qApp, 'preferences') and QtGui.qApp.preferences.dbNewAuthorizationScheme: connectionInfo = { 'driverName': QtGui.qApp.preferences.dbDriverName, 'host': QtGui.qApp.preferences.dbServerName, 'port': QtGui.qApp.preferences.dbServerPort, 'database': QtGui.qApp.preferences.dbDatabaseName, 'user': createLogin(encodedLogin), 'password': hashedPassword, 'connectionName': 'testPassword', 'compressData': QtGui.qApp.preferences.dbCompressData } try: db = database.connectDataBaseByInfo(connectionInfo) except: isTruePassword = False finally: if isinstance(db, database.CDatabase): db.close() if hasattr(QtGui.qApp, 'db') and QtGui.qApp.db: db = QtGui.qApp.db tableUser = QtGui.qApp.db.table(tblUser) ustsQuery = db.query('SELECT CONCAT(NOW(), RAND())') ustsQuery.first() usts = forceString(ustsQuery.record().value(0)) cond = [ tableUser[usrLogin].eq(login), 'MD5(CONCAT(\'%s\', password))=\'%s\'' % (usts, hashlib.md5(usts + hashedPassword).hexdigest()), tableUser[usrRetired].eq(False) ] cond.append( "(Person.retireDate IS NULL) OR (DATE(Person.retireDate) > DATE(CURDATE()))" ) userIdList = db.getIdList(tableUser, usrId, cond, [usrId]) if len(userIdList) == 1: userId = userIdList[0] else: isTruePassword = False else: isTruePassword = False return (isTruePassword, userId)
def main(): import sys import argparse parser = argparse.ArgumentParser( description='Import IEMC or Reg Data to to specified database.') parser.add_argument( '-c', dest='config', type=str, default='reg_iemc', help='name of config file without extension. reg_iemc by default') args = vars(parser.parse_args(sys.argv[1:])) app = QtCore.QCoreApplication(sys.argv) settings = CRegIemcSettings(args['config']) connectionInfo = settings.getConnectionInfo() loc = IemcServerLocator() webServiceHost = settings.getServiceHost() webServicePort = settings.getServicePort() fp = open('debug.out', 'a') port = loc.getIemcServer(url="http://%s:%s/iemcServer" % (webServiceHost, webServicePort), tracefile=fp) try: db = connectDataBaseByInfo(connectionInfo) except CDatabaseException, e: print u"Couldn't connect to database: %s" % e.message sys.exit(-1)
def __init__(self, args, databaseConnectionInfo): super(CS11MainConsoleApp, self).__init__(args) from library.database import connectDataBaseByInfo QtCore.QTextCodec.setCodecForTr(QtCore.QTextCodec.codecForName(u'utf8')) self.logDir = os.path.join(unicode(QtCore.QDir.toNativeSeparators(QtCore.QDir.homePath())), '.vista-med') self.oldExceptHook = sys.excepthook sys.excepthook = self.logException self.preferences = CPreferences('S11App.ini') self.databaseConnectionInfo = databaseConnectionInfo self.connectionName = self.databaseConnectionInfo['connectionName'] self.db = None self.userId = None self.userSpecialityId = None self.userOrgStructureId = None self.userInfo = None self._defaultKLADR = None self._provinceKLADR = None self._contingentDDEventTypeCodes = None self._contingentDDAgeSelectors = None self._globalPreferences = {} self.db = connectDataBaseByInfo(self.databaseConnectionInfo) self.loadGlobalPreferences()
def main(): import sys from library.database import connectDataBaseByInfo from s11main import CS11mainApp app = CS11mainApp(sys.argv, False, 'S11App.ini', False) QtGui.qApp = app QtCore.QTextCodec.setCodecForTr(QtCore.QTextCodec.codecForName(u'utf8')) QtGui.qApp.currentOrgId = lambda: 229525# 230493 # 229525 # 230226 #229525 #229005 connectionInfo = {'driverName' : 'mysql', 'host' : 'pacs', 'port' : 3306, 'database' : 'novros', 'user' : 'dbuser', 'password' : 'dbpassword', 'connectionName' : 'vista-med', 'compressData' : True, 'afterConnectFunc' : None} """ connectionInfo = {'driverName': 'mysql', 'host': 'pes', 'port': 3306, 'database': 's12', 'user': '******', 'password': '******', 'connectionName': 'vista-med', 'compressData': True, 'afterConnectFunc': None} """ QtGui.qApp.db = connectDataBaseByInfo(connectionInfo) CReportF14DS(None).exec_() sys.exit(app.exec_())
def main(): import sys from s11main import CS11mainApp from library.database import connectDataBaseByInfo QtGui.qApp = CS11mainApp(sys.argv, False, 'S11App.ini', False) QtCore.QTextCodec.setCodecForTr(QtCore.QTextCodec.codecForName(u'utf8')) connectionInfo = { 'driverName': 'mysql', 'host': 'pes', 'port': 3306, 'database': 's12', 'user': '******', 'password': '******', 'connectionName': 'vista-med', 'compressData': True, 'afterConnectFunc': None } QtGui.qApp.db = connectDataBaseByInfo(connectionInfo) QtGui.qApp.userId = 1 w = CHospitalizationTransferPage(None, 1243474) w.show() QtGui.qApp.exec_()
def main(): import sys from s11main import CS11mainApp from library.database import connectDataBaseByInfo from PyQt4 import QtCore QtGui.qApp = CS11mainApp(sys.argv, False, 'S11App.ini', False) QtCore.QTextCodec.setCodecForTr(QtCore.QTextCodec.codecForName(u'utf8')) connectionInfo = { 'driverName': 'mysql', 'host': 'pz12', 'port': 3306, 'database': 's11', 'user': '******', 'password': '******', 'connectionName': 'vista-med', 'compressData': True, 'afterConnectFunc': None } QtGui.qApp.db = connectDataBaseByInfo(connectionInfo) w = CReportSurgical(None) w.exec_() sys.exit(QtGui.qApp.exec_())
def main(): import sys app = QtCore.QCoreApplication(sys.argv) connectionInfo = { 'driverName': 'mysql', 'host': '10.226.1.130', 'port': 3306, 'database': 's11vm2', 'user': '******', 'password': '******', 'connectionName': 'vista-med', 'compressData': True, 'afterConnectFunc': None } db = connectDataBaseByInfo(connectionInfo) sender = CR23RecipeService(4134, url='http://10.0.1.154/', db=db, tracefilename='recipesDebug.log') try: sender.checkClient(2112605) sender.sendClient(2112605) sender.sendRecipes([13940]) except SocketError: print 'connection problem!' db.close()
def main(): import sys app = QtGui.QApplication(sys.argv) QtCore.QTextCodec.setCodecForTr(QtCore.QTextCodec.codecForName(u'utf8')) isTestExport = True connectionInfo = { 'driverName': 'mysql', 'host': '192.168.0.3', 'port': 3306, 'database': 'crimeaMtr_1105', 'user': '******', 'password': '******', 'connectionName': 'vista-med', 'compressData': True, 'afterConnectFunc': None } QtGui.qApp.db = connectDataBaseByInfo(connectionInfo) if isTestExport: accountId = 498 w = CExport85MTR_Refused(QtGui.qApp.db, accountId) w.show() sys.exit(app.exec_())
def getDbConnection(self): dlg = CConnectionDialog(self) db = None self._preferences.load(onlyTheseGroups=[u'db']) dlg.setDriverName(self._preferences.dbDriverName) dlg.setServerName(self._preferences.dbServerName) dlg.setServerPort(self._preferences.dbServerPort) dlg.setDatabaseName(self._preferences.dbDatabaseName) dlg.setCompressData(self._preferences.dbCompressData) dlg.setUserName(self._preferences.dbUserName) dlg.setPassword(self._preferences.dbPassword) dlg.setNewAuthorizationScheme( self._preferences.dbNewAuthorizationScheme) if dlg.exec_(): connectionInfo = { 'driverName': dlg.driverName(), 'host': dlg.serverName(), 'port': dlg.serverPort(), 'database': dlg.databaseName(), 'user': dlg.userName(), 'password': dlg.password(), 'connectionName': u'guiHidder', 'compressData': dlg.compressData(), 'afterConnectFunc': None } db = connectDataBaseByInfo(connectionInfo) return db
def main(): import sys from s11main import CS11mainApp from library.database import connectDataBaseByInfo app = CS11mainApp(sys.argv, False, 'S11App.ini', False) QtGui.qApp = app QtCore.QTextCodec.setCodecForTr(QtCore.QTextCodec.codecForName(u'utf8')) QtGui.qApp.currentOrgId = lambda: 386271 QtGui.qApp.currentOrgStructureId = lambda: 34 QtGui.qApp.db = connectDataBaseByInfo({ 'driverName': 'mysql', 'host': 'mos36', 'port': 3306, 'database': 's11', 'user': '******', 'password': '******', 'connectionName': 'vista-med', 'compressData': True, 'afterConnectFunc': None }) CReportMovingB36Monthly(None).exec_()
def main(): import sys from library.database import connectDataBaseByInfo from s11main import CS11mainApp app = CS11mainApp(sys.argv, False, 'S11App.ini', False) QtGui.qApp = app QtCore.QTextCodec.setCodecForTr(QtCore.QTextCodec.codecForName(u'utf8')) QtGui.qApp.currentOrgId = lambda: 3147 connectionInfo = { 'driverName': 'mysql', 'host': '192.168.0.3', 'port': 3306, 'database': 'pnd5', 'user': '******', 'password': '******', 'connectionName': 'vista-med', 'compressData': True, 'afterConnectFunc': None } QtGui.qApp.db = connectDataBaseByInfo(connectionInfo) CReportReHospitalization(None).exec_() sys.exit(app.exec_())
def main(): import sys from library.database import connectDataBaseByInfo app = CApplication(sys.argv) QtGui.qApp = app QtCore.QTextCodec.setCodecForTr(QtCore.QTextCodec.codecForName(u'utf8')) connectionInfo = { 'driverName': 'mysql', 'host': '192.168.0.207', 'port': 3306, 'database': 's11vm', 'user': '******', 'password': '******', 'connectionName': 'vista-med', 'compressData': True, 'afterConnectFunc': None } QtGui.qApp.db = connectDataBaseByInfo(connectionInfo) w = CExportDialog(QtGui.qApp.db) w.show() sys.exit(app.exec_())
def main(): import sys from s11main import CS11mainApp from library.database import connectDataBaseByInfo QtGui.qApp = CS11mainApp(sys.argv, False, 'S11App.ini', False) QtCore.QTextCodec.setCodecForTr(QtCore.QTextCodec.codecForName(u'utf8')) connectionInfo = { 'driverName': 'mysql', 'host': '192.168.0.207', 'port': 3306, 'database': 's11vm2', 'user': '******', 'password': '******', 'connectionName': 'vista-med', 'compressData': True, 'afterConnectFunc': None } QtGui.qApp.db = connectDataBaseByInfo(connectionInfo) w = CClientDocumentsCheck(None) w.exec_()
def main(): import sys from s11main import CS11mainApp from library.database import connectDataBaseByInfo QtCore.QCoreApplication.setAttribute(QtCore.Qt.AA_X11InitThreads) QtGui.qApp = CS11mainApp(sys.argv, False, 'S11App.ini', False) QtCore.QTextCodec.setCodecForTr(QtCore.QTextCodec.codecForName(u'utf8')) connectionInfo = { 'driverName': 'mysql', 'host': 'pacs', 'port': 3306, 'database': 's11vm', 'user': '******', 'password': '******', 'connectionName': 'vista-med', 'compressData': True, 'afterConnectFunc': None } QtGui.qApp.db = connectDataBaseByInfo(connectionInfo) w = CCashRegisterWindow(None) w.exec_()
def main(): import sys from s11main import CS11mainApp from library.database import connectDataBaseByInfo app = CS11mainApp(sys.argv, False, 'S11App.ini', False) QtGui.qApp = app QtCore.QTextCodec.setCodecForTr(QtCore.QTextCodec.codecForName(u'utf8')) QtGui.qApp.currentOrgId = lambda: 230493 QtGui.qApp.db = connectDataBaseByInfo({ 'driverName': 'mysql', 'host': '192.168.0.207', 'port': 3306, 'database': 'most03-06-2016', 'user': '******', 'password': '******', 'connectionName': 'vista-med', 'compressData': True, 'afterConnectFunc': None }) CEventServicesCheck(None).exec_()
def prepareDatabase(self): connectionInfo = self.settings.getConnectionInfo() self.db = database.connectDataBaseByInfo(connectionInfo) QtGui.qApp.db = self.db
def main(): import argparse import sys parser = argparse.ArgumentParser( description='Export referrals for hospitalization in Krasnodar area.') parser.add_argument('-u', dest='user', default='dbuser') parser.add_argument('-P', dest='password') parser.add_argument('-t', dest='datetime', default=None) parser.add_argument('-a', dest='host', default='127.0.0.1') parser.add_argument('-p', dest='port', type=int, default='3306') parser.add_argument('-d', dest='database', default='s11') parser.add_argument('-D', dest='dir', default=os.getcwd()) parser.add_argument('-T', dest='exportType') parser.add_argument('-c', dest='orgCode', default='07526') args = vars(parser.parse_args(sys.argv[1:])) exportType = forceInt(args['exportType']) if not args['user']: print 'Error: you should specify user name' sys.exit(-1) if not args['password']: print 'Error: you should specify password' sys.exit(-2) if not args['exportType'] or exportType not in (1, 2, 3, 5, 6): print 'Error: you should specify correct export type' sys.exit(-3) if not args['orgCode']: print 'Error: you should specify organisation ID' sys.exit(-5) app = QtCore.QCoreApplication(sys.argv) dateTime = QDateTime.currentDateTime() begDateTime = args['datetime'] begDateTime = QDateTime.fromString( begDateTime, 'yyyy-MM-ddTHH:mm:ss') if begDateTime else QDateTime.currentDateTime( ) # QDateTime.currentDateTime().addSecs(-60) if not (begDateTime is None or begDateTime.isValid()): print 'Error: incorrect base datetime.' sys.exit(-4) connectionInfo = { 'driverName': 'MYSQL', 'host': args['host'], 'port': args['port'], 'database': args['database'], 'user': args['user'], 'password': args['password'], 'connectionName': 'HospRefs', 'compressData': True, 'afterConnectFunc': None } db = connectDataBaseByInfo(connectionInfo) QtGui.qApp.db = db if exportType == 1: refName = u'SendPlanOrdersClinic_%s' elif exportType == 2: refName = u'SendFactOrdersHospital_%s' elif exportType == 3: refName = u'SendOrdersHospitalUrgently_%s' elif exportType == 5: refName = u'SendOrdersLeave_%s' elif exportType == 6: refName = u'SendKDInformation_%s' name = u'ReferralForHospitalization_%s.xml' % refName fileName = name % (dateTime.toString('yyMMddThhmmss.zzz')) fullFileName = os.path.join(forceStringEx(args['dir']), fileName) outFile = QtCore.QFile(fullFileName) outFile.open(QtCore.QFile.WriteOnly | QtCore.QFile.Text) exporter = CReferralForHospitalization(None, args['orgCode'], begDateTime) exporter.setCodec(QtCore.QTextCodec.codecForName('cp1251')) exporter.writeFileHeader(outFile) exporter.writeSend(exportType, dateTime) exporter.writeFileFooter() outFile.close() if exporter.emptyExport: os.remove(fullFileName)
def main(): import argparse import sys parser = argparse.ArgumentParser(description='') parser.add_argument('-u', dest='user', default='dbuser') parser.add_argument('-P', dest='password') parser.add_argument('-t', dest='datetime', default=None) parser.add_argument('-a', dest='host', default='37.44.41.26') parser.add_argument('-p', dest='port', type=int, default='63306') parser.add_argument('-d', dest='database', default='iemk') parser.add_argument('-D', dest='dir', default=os.getcwd()) parser.add_argument('-T', dest='type', default='c') args = vars(parser.parse_args(sys.argv[1:])) if not args['user']: print 'Error: you should specify user name' sys.exit(-1) if not args['password']: print 'Error: you should specify password' sys.exit(-2) app = QtCore.QCoreApplication(sys.argv) connectionInfo = { 'driverName': 'MYSQL', 'host': args['host'], 'port': args['port'], 'database': args['database'], 'user': args['user'], 'password': args['password'], 'connectionName': 'IEMK', 'compressData': True, 'afterConnectFunc': None } db = connectDataBaseByInfo(connectionInfo) QtGui.qApp.db = db curDateTime = QtCore.QDateTime.currentDateTime() dt = args['datetime'] dt = QDateTime.fromString( dt, 'yyyy-MM-ddTHH:mm:ss') if dt else curDateTime.addSecs(-86400) typeDatetime = args['type'] if typeDatetime == 'c': strTypeDatetime = u'Client.createDatetime' typeFlag = 0 elif typeDatetime == 'm': strTypeDatetime = u'Client.modifyDatetime' typeFlag = 1 else: print 'Error: wrong type' sys.exit(-4) stmt = ''' SELECT Client.id as clientId, Client.lastName, Client.firstName, Client.patrName, rbContactType.code as contactTypeCode, ClientContact.contact as contactClient, Client.sex, Client.birthDate, Client.birthTime, AddressHouse.KLADRCode, AddressHouse.KLADRStreetCode, AddressHouse.number as houseNumber, AddressHouse.corpus as houseCorpus, ClientAddress.freeInput as freeInput, Address.flat as flat, Client.SNILS, ClientPolicy.serial as policySerial, ClientPolicy.number as policyNumber, ClientPolicy.begDate as policyBegDate, Organisation.fullName as insurerName, Organisation.obsoleteInfisCode as insurerCode, ClientDocument.serial as documentSerial, ClientDocument.number as documentNumber, ClientDocument.date as documentDate, ClientDocument.origin as documentOrg, Client.birthPlace, Organisation.phone as orgPhone, rbDocumentType.federalCode as docTypeCode FROM Client LEFT JOIN ClientContact ON ClientContact.client_id = Client.id AND ClientContact.deleted = 0 LEFT JOIN rbContactType ON rbContactType.id = ClientContact.contactType_id LEFT JOIN ClientAddress ON ClientAddress.id = getClientRegAddressId(Client.id) LEFT JOIN Address ON Address.id = ClientAddress.address_id AND Address.deleted = 0 LEFT JOIN AddressHouse ON AddressHouse.id = Address.house_id AND AddressHouse.deleted = 0 LEFT JOIN ClientPolicy ON ClientPolicy.id = getClientPolicyId(Client.id, 1) LEFT JOIN Organisation ON Organisation.id = ClientPolicy.insurer_id AND Organisation.deleted = 0 LEFT JOIN ClientDocument ON ClientDocument.client_id = Client.id AND ClientDocument.deleted = 0 LEFT JOIN rbDocumentType ON rbDocumentType.id = ClientDocument.documentType_id AND rbDocumentType.code = 1 WHERE (%s >= TIMESTAMP('%s') OR IFNULL(TIMESTAMP(Client.notes), TIMESTAMP('0000-00-00')) >= TIMESTAMP('%s')) AND Client.deleted = 0 ''' % (strTypeDatetime, dt.toString('yyyy-MM-dd hh:mm:ss'), dt.toString('yyyy-MM-dd hh:mm:ss')) query = db.query(stmt) if query.size() > 0: if typeFlag == 0: fileName = u'RCIEMK_%s.xml' % ( curDateTime.toString('yyMMddThhmmss.zzz')) elif typeFlag == 1: fileName = u'RMIEMK_%s.xml' % ( curDateTime.toString('yyMMddThhmmss.zzz')) if not (dt is None or dt.isValid()): print 'Error: incorrect base datetime.' sys.exit(-4) outFile = QtCore.QFile( os.path.join(forceStringEx(args['dir']), fileName)) outFile.open(QtCore.QFile.WriteOnly | QtCore.QFile.Text) clientsOut = CRegistryClientInIEMK(None) clientsOut.setCodec(QtCore.QTextCodec.codecForName('cp1251')) clientsOut.writeFileHeader(outFile) clientsOut.writeRegistryClientInIEMK(query, curDateTime, typeFlag) clientsOut.writeFileFooter() outFile.close()
def __init__(self): if os.name == 'nt': app = QtCore.QCoreApplication(sys.argv) self.db = connectDataBaseByInfo(config.connectionInfo)
if __name__ == '__main__': import sys from library.database import connectDataBaseByInfo from s11main import CS11mainApp QtGui.qApp = CS11mainApp(sys.argv, False, 'S11App.ini', False) QtCore.QTextCodec.setCodecForTr(QtCore.QTextCodec.codecForName('utf8')) QtGui.qApp.applyDecorPreferences() # QtGui.qApp.db = CDatabase() QtGui.qApp.db = connectDataBaseByInfo({ 'driverName': 'mysql', 'host': '192.168.0.3', 'port': 3306, 'database': 'ant_p17', 'user': '******', 'password': '******', 'connectionName': 'vista-med', 'compressData': True, 'afterConnectFunc': None }) # for print templates dlg = CPharmacyStoreDialog(None) dlg.loadSettings = lambda *a: None dlg._settings = { # 'URL' : 'http://ptd5int:8000', # ПТД5 # 'URL' : 'http://pnd5vm:8000', # ПНД5 # 'URL' : 'http://192.168.0.207:8000', # test 'URL': 'http://localhost:8000', # test 'User': '******', 'Password': '******'