public DtoLib.Resultado Venta_Anular(DtoLibPos.Venta.Anular.Ficha ficha) { var result = new DtoLib.Resultado(); try { using (var cnn = new PosEntities(_cnPos.ConnectionString)) { using (var ts = new TransactionScope()) { foreach (var it in ficha.itemDeposito) { var entDeposito = cnn.productos_deposito.FirstOrDefault(f => f.auto_producto == it.autoProducto && f.auto_deposito == it.autoDeposito); if (entDeposito == null) { result.Mensaje = "PRODUCTO/DEPOSITO NO ENCONTRADO"; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } entDeposito.reservada -= it.cantUndBloq; entDeposito.disponible += it.cantUndBloq; cnn.SaveChanges(); } foreach (var it in ficha.items) { var ent = cnn.p_venta.Find(it.idItem); if (ent == null) { result.Mensaje = "ITEM NO ENCONTRADO"; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } if (ent.id_p_operador != it.idOperador) { result.Mensaje = "ITEM NO PERTENECE AL OPERADOR ACTUAL"; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } cnn.p_venta.Remove(ent); cnn.SaveChanges(); } ts.Complete(); } } } catch (Exception e) { result.Mensaje = e.Message; result.Result = DtoLib.Enumerados.EnumResult.isError; } return(result); }
public OOB.Resultado.Ficha Venta_Anular(OOB.Venta.Anular.Ficha ficha) { var result = new OOB.Resultado.Ficha(); var fichaDTO = new DtoLibPos.Venta.Anular.Ficha() { items = ficha.items.Select(s => { var nr = new DtoLibPos.Venta.Anular.FichaItem() { idOperador = s.idOperador, idItem = s.idItem, }; return(nr); }).ToList(), itemDeposito = ficha.itemDeposito.Select(s => { var nr = new DtoLibPos.Venta.Anular.FichaDeposito() { autoProducto = s.autoProducto, autoDeposito = s.autoDeposito, cantUndBloq = s.cantUndBloq, }; return(nr); }).ToList(), }; var r01 = MyData.Venta_Anular(fichaDTO); if (r01.Result == DtoLib.Enumerados.EnumResult.isError) { result.Mensaje = r01.Mensaje; result.Result = OOB.Resultado.Enumerados.EnumResult.isError; return(result); } return(result); }
public DtoLib.Resultado Venta_Anular(DtoLibPos.Venta.Anular.Ficha ficha) { return(ServiceProv.Venta_Anular(ficha)); }