public int Update(ReturJualProduk obj) { var result = 0; try { _context.BeginTransaction(); var transaction = _context.transaction; obj.total_nota = GetTotalNota(obj); // update header result = _context.db.Update <ReturJualProduk>(obj, transaction) ? 1 : 0; // delete detail foreach (var item in obj.item_retur_deleted) { result = _context.db.Delete <ItemReturJualProduk>(item, transaction) ? 1 : 0; } // insert/update detail foreach (var item in obj.item_retur.Where(f => f.Produk != null)) { item.retur_jual_id = obj.retur_jual_id; item.pengguna_id = obj.pengguna_id; if (item.entity_state == EntityState.Added) { item.item_retur_jual_id = _context.GetGUID(); _context.db.Insert <ItemReturJualProduk>(item, transaction); result = 1; } else if (item.entity_state == EntityState.Modified) { result = _context.db.Update <ItemReturJualProduk>(item, transaction) ? 1 : 0; } // update entity state item.entity_state = EntityState.Unchanged; } _context.Commit(); LogicalThreadContext.Properties["NewValue"] = obj.ToJson(); _log.Info("Update data"); result = 1; } catch (Exception ex) { _log.Error("Error:", ex); } return(result); }
public int Save(ReturJualProduk obj) { var result = 0; try { _context.BeginTransaction(); var transaction = _context.transaction; obj.retur_jual_id = _context.GetGUID(); obj.total_nota = GetTotalNota(obj); // insert header _context.db.Insert <ReturJualProduk>(obj, transaction); // insert detil foreach (var item in obj.item_retur.Where(f => f.Produk != null)) { if (item.produk_id.Length > 0) { item.item_retur_jual_id = _context.GetGUID(); item.retur_jual_id = obj.retur_jual_id; item.pengguna_id = obj.pengguna_id; _context.db.Insert <ItemReturJualProduk>(item, transaction); // update entity state item.entity_state = EntityState.Unchanged; } } _context.Commit(); LogicalThreadContext.Properties["NewValue"] = obj.ToJson(); _log.Info("Tambah data"); result = 1; } catch (Exception ex) { _log.Error("Error:", ex); } return(result); }
public int Delete(ReturJualProduk obj) { var result = 0; try { result = _context.db.Delete <ReturJualProduk>(obj) ? 1 : 0; if (result > 0) { LogicalThreadContext.Properties["OldValue"] = obj.ToJson(); _log.Info("Hapus data"); } } catch (Exception ex) { _log.Error("Error:", ex); } return(result); }