Example #1
0
def init_db():
    if not SyncLog.table_exists():
        SyncLog.create_table()
    if not User.table_exists():
        User.create_table()
        User.create(username='******',
                    password=make_password('admin'),
                    admin=True)
    for mod_class in MASTER_CLASSES.keys():
        if not MODELS_CLASS[mod_class].table_exists():
            MODELS_CLASS[mod_class].create_table()
    for mod_class in sorted(DEPENDENT_CLASSES.keys()):
        if not MODELS_CLASS[mod_class].table_exists():
            MODELS_CLASS[mod_class].create_table()
Example #2
0
def init_db():
    if not SyncLog.table_exists():
        SyncLog.create_table()
    if not User.table_exists():
        User.create_table()
        User.create(username='******',
                    password=make_password('admin'),
                    admin=True)
    for mod_class in MASTER_CLASSES.keys():
        if not MODELS_CLASS[mod_class].table_exists():
            MODELS_CLASS[mod_class].create_table()
    for mod_class in sorted(DEPENDENT_CLASSES.keys()):
        if not MODELS_CLASS[mod_class].table_exists():
            MODELS_CLASS[mod_class].create_table()
Example #3
0
 def save(self, force_insert=False, only=None, is_update=False):
     from sync_log import SyncLog
     from implemented_models import MODELS_CLASS
     if is_update and self.MOD_NAME in MODELS_CLASS.keys():
         exist_id = SyncLog.select().where(SyncLog.to_sync == True, SyncLog.operation == "update",
                                           SyncLog.odoo_id == self.odoo_id, SyncLog.model == self.MOD_NAME).limit(1)
         if not exist_id: 
             sync_date = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
             log = SyncLog.create(odoo_id=self.odoo_id, model=self.MOD_NAME,
                                  operation='update', sync_date=sync_date, to_sync=True)
     res = super(SyncModel, self).save(force_insert, only)
     #if is_update and self.MOD_NAME in MODELS_CLASS.keys():
     #    log.launch_sync()
     return res
Example #4
0
 def save(self, force_insert=False, only=None, is_update=False):
     from sync_log import SyncLog
     from implemented_models import MODELS_CLASS
     if is_update and self.MOD_NAME in list(MODELS_CLASS.keys()):
         exist_id = SyncLog.select().where(
             SyncLog.to_sync == True, SyncLog.operation == "update",
             SyncLog.odoo_id == self.odoo_id,
             SyncLog.model == self.MOD_NAME).limit(1)
         if not exist_id:
             sync_date = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
             log = SyncLog.create(odoo_id=self.odoo_id,
                                  model=self.MOD_NAME,
                                  operation='update',
                                  sync_date=sync_date,
                                  to_sync=True)
     res = super(SyncModel, self).save(force_insert, only)
     #if is_update and self.MOD_NAME in MODELS_CLASS.keys():
     #    log.launch_sync()
     return res
Example #5
0
 def create(cls, **query):
     from sync_log import SyncLog
     from implemented_models import MODELS_CLASS
     res = super(SyncModel, cls).create(**query)
     if cls.MOD_NAME in MODELS_CLASS.keys():
         sync_date = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
         log = SyncLog.create(odoo_id=query['odoo_id'], model=cls.MOD_NAME,
                              operation='create', sync_date=sync_date, to_sync=True)
         #log.launch_sync()
     return res
Example #6
0
def check_sync_data():
    print "DENTRO"
    to_sync_objs = []
    for x in SyncLog.select().where(SyncLog.to_sync == True).\
            order_by(SyncLog.sync_date).limit(100):
        to_sync_objs.append(x)
    print "LEN: ", len(to_sync_objs)
    if to_sync_objs:
        res = to_sync_objs[0].multisync_client(to_sync_objs)
        print "RES: ", res
        if res:
            for sync_obj in to_sync_objs:
                for oth in SyncLog.select().\
                        where(SyncLog.to_sync == True,
                              SyncLog.model == sync_obj.model,
                              SyncLog.odoo_id == sync_obj.odoo_id,
                              SyncLog.id != sync_obj.id):
                    oth.sync = True
                    oth.to_sync = False
                    oth.save()
Example #7
0
 def delete_instance(self, *args, **kwargs):
     from sync_log import SyncLog
     from implemented_models import MODELS_CLASS
     if self.MOD_NAME in MODELS_CLASS.keys():
         sync_date = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
         log = SyncLog.create(odoo_id=self.odoo_id, model=self.MOD_NAME,
                              operation='delete', sync_date=sync_date, to_sync=True)
     res = super(SyncModel, self).delete_instance(*args, **kwargs)
     #if self.MOD_NAME in MODELS_CLASS.keys():
     #    log.launch_sync()
     return res
Example #8
0
 def create(cls, **query):
     from sync_log import SyncLog
     from implemented_models import MODELS_CLASS
     res = super(SyncModel, cls).create(**query)
     if cls.MOD_NAME in list(MODELS_CLASS.keys()):
         sync_date = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
         log = SyncLog.create(odoo_id=query['odoo_id'],
                              model=cls.MOD_NAME,
                              operation='create',
                              sync_date=sync_date,
                              to_sync=True)
         #log.launch_sync()
     return res
Example #9
0
 def delete_instance(self, *args, **kwargs):
     from sync_log import SyncLog
     from implemented_models import MODELS_CLASS
     if self.MOD_NAME in list(MODELS_CLASS.keys()):
         sync_date = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
         log = SyncLog.create(odoo_id=self.odoo_id,
                              model=self.MOD_NAME,
                              operation='delete',
                              sync_date=sync_date,
                              to_sync=True)
     res = super(SyncModel, self).delete_instance(*args, **kwargs)
     #if self.MOD_NAME in MODELS_CLASS.keys():
     #    log.launch_sync()
     return res