public static void SaveTransaction(ORPC_SupplierCreditNotes obj) { lock (Extensions.Locker) { var db = ContextFactory.GetDBContext(); var transfers = obj.RPC1_SupplierCreditNoteDetail.Select(t => new OINM_Transaction(obj, t)).ToList(); transfers.ForEach(t => db.OINM_Transaction.Add(t)); ContextFactory.SaveChanges(); //Actualizar existencias //var articles = (from detail in obj.RPC1_SupplierCreditNoteDetail // join article in db.OITW_BranchArticles on detail.ItemCode equals article.ItemCode // where article.WhsCode == detail.WhsCode // select article).ToList(); //articles.ForEach(a => //{ // var detail = obj.RPC1_SupplierCreditNoteDetail.FirstOrDefault(d => d.ItemCode == a.ItemCode); // a.OnHand = a.OnHand - detail.Quantity; // a.OnHand1 = a.OnHand1 - detail.Quantity; //}); //ContextFactory.SaveChanges(); StoredCallbackProcessor.UpdateStock(); } }
private static ORPC_SupplierCreditNotes SyncUpload(ORPC_SupplierCreditNotes note) { var result = WebApiClient.AddCreditNote(note).Result; note.UpdateModelPropertiesFrom(result.Model); note.StateL = LocalStatus.Procesado; result.UpdateEntityVersion(); SupplierCreditNoteHelper.SaveTransaction(note); return(note); }
public static void Add(ORPC_SupplierCreditNotes creditNote) { lock (Extensions.Locker) { var db = ContextFactory.GetDBContext(); using (var scope = new TransactionScope()) { db.ORPC_SupplierCreditNotes.Add(creditNote); db.SaveChanges(); scope.Complete(); } } }
public static ORPC_SupplierCreditNotes Synchronize(ORPC_SupplierCreditNotes model) { CheckForUpdates();// Actualizar cambios antes de subir y verificar si el objeto no fue ya procesado model = SupplierCreditNoteHelper.Get(model.IdSupplierCreditNote); if (model.StateL != LocalStatus.Procesado) { return(model.Upload(SyncUpload)); } else { return(model); } }
//public static void Update() //{ // lock (Extensions.Locker) // { // var db = ContextFactory.GetDBContext(); // using (var scope = new TransactionScope()) // { // db.SaveChanges(); // scope.Complete(); // } // } //} public static void Delete(ORPC_SupplierCreditNotes creditNote) { lock (Extensions.Locker) { var db = ContextFactory.GetDBContext(); using (var scope = new TransactionScope()) { creditNote.RPC1_SupplierCreditNoteDetail.ToList().ForEach(t => db.RPC1_SupplierCreditNoteDetail.Remove(t)); db.ORPC_SupplierCreditNotes.Remove(creditNote); db.SaveChanges(); scope.Complete(); } } }
public static Task <Synchro <ORPC_SupplierCreditNotes> > AddCreditNote(ORPC_SupplierCreditNotes creditNote) { return(PostAsync <ORPC_SupplierCreditNotes, Synchro <ORPC_SupplierCreditNotes> >("api/SupplierCreditNotes", creditNote)); }