Esempio n. 1
0
 def __init__(self, table_name, s_model=None, t_model=None, m_model=None):
     self.table_name = table_name
     if s_model:
         self.s_api = DbApi(get_source_db(), s_model)
     if t_model:
         self.t_api = DbApi(get_target_db(), t_model)
     if m_model:
         self.m_api = DbApi(get_migration_db(), m_model)
Esempio n. 2
0
class MigrationClient(object):
    s_id = app.config['SYNC_LAST_PK']
    t_id = None
    m_id = None

    s_data = None
    t_data = None
    m_data = None

    latest_time = None
    limit_num = app.config['SYNC_LIMIT_NUM']

    def __init__(self, table_name, s_model=None, t_model=None, m_model=None):
        self.table_name = table_name
        if s_model:
            self.s_api = DbApi(get_source_db(), s_model)
        if t_model:
            self.t_api = DbApi(get_target_db(), t_model)
        if m_model:
            self.m_api = DbApi(get_migration_db(), m_model)

    def t_create(self):
        self.t_id = self.t_api.add(self.t_data)

    def t_update(self):
        self.t_api.edit(self.t_id, self.t_data)

    def m_detail(self):
        self.m_data = self.m_api.get_row(
            table_name=self.table_name,
            pk_source=self.s_id,
        )
        if self.m_data:
            self.m_id = self.m_data.id

    def m_create(self):
        current_time = datetime.utcnow()
        m_data = {
            'table_name': self.table_name,
            'pk_source': self.s_id,
            'pk_target': self.t_id,
            'latest_time': self.latest_time,
            'create_time': current_time,
            'update_time': current_time,
        }
        self.m_id = self.m_api.add(m_data)

    def m_update(self):
        current_time = datetime.utcnow()
        m_data = {
            'table_name': self.table_name,
            'pk_source': self.s_id,
            'pk_target': self.t_id,
            'latest_time': self.latest_time,
            # 'create_time': current_time,
            'update_time': current_time,
        }
        self.m_api.edit(self.m_id, m_data)
def test03():
    """独立连接"""
    print(test03.__doc__)
    target_user_api = DbApi(get_target_db(), User)
    print(target_user_api.count())
    target_user_api = DbApi(get_target_db(), User)
    print(target_user_api.count())
def test01():
    """共用连接"""
    print(test01.__doc__)
    target_user_api = DbApi(target_db, User)
    print(target_user_api.count())
    target_user_api = DbApi(target_db, User)
    print(target_user_api.count())
def test02():
    """独立连接"""
    print(test02.__doc__)
    source_user_api = DbApi(get_source_db(), EAPUser)
    print(source_user_api.count())
    source_user_api = DbApi(get_source_db(), EAPUser)
    print(source_user_api.count())
def test01():
    """共用连接"""
    print(test01.__doc__)
    source_user_api = DbApi(source_db, EAPUser)
    print(source_user_api.count())
    source_user_api = DbApi(source_db, EAPUser)
    print(source_user_api.count())
def test04():
    """独立连接"""
    print(test04.__doc__)
    print(DbApi(get_target_db(), User).count())
    print(DbApi(get_target_db(), User).count())
def test02():
    """共用连接"""
    print(test02.__doc__)
    print(DbApi(target_db, User).count())
    print(DbApi(target_db, User).count())