/// <summary> /// Function for update store /// </summary> /// <param name="store_VM"></param> /// <param name="loginUserId"></param> /// <returns></returns> public int Update(Store_VM store_VM, int loginUserId) { var ret = 1; using (var dbcxtransaction = _context.Database.BeginTransaction()) { try { var store = _context.Set_Stores.Where(x => x.Id == store_VM.Id && x.IsDeleted == false).FirstOrDefault(); if (store != null) { store.StoreCode = store_VM.StoreCode; store.StoreName = store_VM.StoreName; store.Status = store_VM.Status; store.RegionId = store_VM.RegionId; store.CountryCode = store_VM.CountryCode; store.ModifiedBy = loginUserId; store.ModifiedOn = DateTime.Now; store.ClientId = store_VM.ClientId; _context.SaveChanges(); //Remove old stores concepts var oldStoresConcepts = _context.Set_StoresConcepts.Where(x => x.StoreId == store.Id).ToList(); if (oldStoresConcepts.Any()) { _context.Set_StoresConcepts.RemoveRange(oldStoresConcepts); _context.SaveChanges(); } // Add Stores Concepts var storesConcepts = new List <Set_StoresConcepts>(); foreach (var concept in store_VM.ConceptIds) { var obj = new Set_StoresConcepts(); obj.StoreId = store.Id; obj.ClientId = store.ClientId; obj.ConceptId = concept; storesConcepts.Add(obj); } _context.Set_StoresConcepts.AddRange(storesConcepts); _context.SaveChanges(); dbcxtransaction.Commit(); } else { ret = 0; } } catch (Exception ex) { dbcxtransaction.Rollback(); ret = 0; } } return(ret); }
/// <summary> /// Function for add store /// </summary> /// <param name="store_VM"></param> /// <param name="loginUserId"></param> /// <returns></returns> public int Add(Store_VM store_VM, int loginUserId) { var ret = 1; using (var dbcxtransaction = _context.Database.BeginTransaction()) { try { var store = new Set_Stores(); store.StoreGuid = Guid.NewGuid(); store.StoreCode = store_VM.StoreCode; store.StoreName = store_VM.StoreName; store.Status = store_VM.Status; store.RegionId = store_VM.RegionId; store.CountryCode = store_VM.CountryCode; store.CreatedOn = DateTime.Now; store.CreatedBy = loginUserId; store.DeletedBy = 0; store.ClientId = store_VM.ClientId; _context.Set_Stores.Add(store); _context.SaveChanges(); // Add Stores Concepts var storesConcepts = new List <Set_StoresConcepts>(); foreach (var concept in store_VM.ConceptIds) { var obj = new Set_StoresConcepts(); obj.StoreId = store.Id; obj.ClientId = store.ClientId; obj.ConceptId = concept; storesConcepts.Add(obj); } _context.Set_StoresConcepts.AddRange(storesConcepts); _context.SaveChanges(); dbcxtransaction.Commit(); } catch (Exception ex) { dbcxtransaction.Rollback(); ret = 0; } } return(ret); }