private int LogSyncObject(object entity, int shopId, string action) { var objName = entity.GetType().Name; Guid syncId = Guid.Empty; if (objName.Contains("ShoppingCartItem")) { ShoppingCartItem cart = (ShoppingCartItem)entity; entity = cart; syncId = cart.SyncTrackId; } if (objName.Contains("ShoppingCart")) { ShoppingCart cart = (ShoppingCart)entity; entity = cart; syncId = cart.SyncTrackId; } if (objName.Contains("Expenses")) { Expenses cart = (Expenses)entity; entity = cart; syncId = cart.SyncTrackId; } if (objName.Contains("Customer")) { Customer cart = (Customer)entity; entity = cart; syncId = cart.SyncTrackId; } if (objName == "staff") { staff cart = (staff)entity; entity = cart; syncId = cart.SyncTrackId; } if (objName.ToLower() == "product") { Product cart = (Product)entity; entity = cart; syncId = cart.SyncTrackId; } SyncManager man = new Core.SyncManager { Action = action, DateLogged = DateTime.Now, Entity = objName, ShopId = shopId, SourceDataStore = "Remote", SourceDataStoreType = "SQLServer", DestinationDataStore = "Local", DestinationDataStoreType = "SQLLite", State = Newtonsoft.Json.JsonConvert.SerializeObject(entity), SyncTrackId = syncId, SyncExecutionStatus = 0, SyncManagerId = Guid.NewGuid() }; int c = DAL.GenericOperation <SyncManager>(man, action, objName); return(c); }
private object SetSyncDataPost(object entity, string action) { var objName = entity.GetType().Name; if (objName.Contains("ShoppingCartItem")) { ShoppingCartItem cart = (ShoppingCartItem)entity; cart.DateSynced = DateTime.Now; cart.SyncStatus = 0; cart.SyncTrackId = cart.SyncTrackId; cart.UnSyncedEvents = 1; entity = cart; DAL.UpdateShoppingCartitemsSync(cart); } if (objName.Contains("ShoppingCart")) { ShoppingCart cart = (ShoppingCart)entity; cart.DateSynced = DateTime.Now; cart.SyncStatus = 0; //cart.SyncTrackId = Guid.NewGuid(); cart.SyncTrackId = cart.SyncTrackId; cart.UnSyncedEvents = 1; entity = cart; DAL.UpdateShoppingCartSync(cart); } if (objName.Contains("Expenses")) { Expenses cart = (Expenses)entity; cart.DateSynced = DateTime.Now; cart.SyncStatus = 0; //cart.SyncTrackId = Guid.NewGuid(); cart.SyncTrackId = cart.SyncTrackId; cart.UnSyncedEvents = 1; entity = cart; DAL.UpdateExpenseSync(cart); } if (objName.Contains("Customer")) { Customer cart = (Customer)entity; cart.DateSynced = DateTime.Now; cart.SyncStatus = 0; //cart.SyncTrackId = Guid.NewGuid(); cart.SyncTrackId = cart.SyncTrackId; cart.UnSyncedEvents = 1; entity = cart; DAL.UpdateCustomerSync(cart); } if (objName == "Product") { Product cart = (Product)entity; cart.DateSynced = DateTime.Now; cart.SyncStatus = 0; //cart.SyncTrackId = Guid.NewGuid(); cart.SyncTrackId = cart.SyncTrackId; cart.UnSyncedEvents = 1; entity = cart; DAL.UpdateProductSync(cart); } if (objName == "staff") { staff cart = (staff)entity; cart.DateSynced = DateTime.Now; cart.SyncStatus = 0; //cart.SyncTrackId = Guid.NewGuid(); cart.SyncTrackId = cart.SyncTrackId; cart.UnSyncedEvents = 1; entity = cart; DAL.UpdateStaffSync(cart); } return(entity); }