public OOB.Resultado.FichaId Venta_Item_Registrar(OOB.Venta.Item.Registrar.Ficha ficha) { var result = new OOB.Resultado.FichaId(); var fichaDTO = new DtoLibPos.Venta.Item.Registrar.Ficha() { validarExistencia = ficha.validarExistencia, deposito = new DtoLibPos.Venta.Item.Registrar.FichaDeposito() { autoDeposito = ficha.deposito.autoDeposito, autoPrd = ficha.deposito.autoPrd, cantBloq = ficha.deposito.cantBloq, }, item = new DtoLibPos.Venta.Item.Registrar.FichaItem() { autoDepartamento = ficha.item.autoDepartamento, autoGrupo = ficha.item.autoGrupo, autoProducto = ficha.item.autoProducto, autoSubGrupo = ficha.item.autoSubGrupo, autoTasa = ficha.item.autoTasa, cantidad = ficha.item.cantidad, categoria = ficha.item.categoria, codigo = ficha.item.codigo, costoCompra = ficha.item.costoCompra, costoPromedio = ficha.item.costoPromedio, costoPromedioUnd = ficha.item.costoPromedioUnd, costoUnd = ficha.item.costoUnd, decimales = ficha.item.decimales, empaqueContenido = ficha.item.empaqueContenido, empaqueDescripcion = ficha.item.empaqueDescripcion, estatusPesado = ficha.item.estatusPesado, idOperador = ficha.item.idOperador, nombre = ficha.item.nombre, pfullDivisa = ficha.item.pfullDivisa, pneto = ficha.item.pneto, tarifaPrecio = ficha.item.tarifaPrecio, tasaIva = ficha.item.tasaIva, tipoIva = ficha.item.tipoIva, autoDeposito = ficha.item.autoDeposito, }, }; var r01 = MyData.Venta_Item_Registrar(fichaDTO); if (r01.Result == DtoLib.Enumerados.EnumResult.isError) { result.Mensaje = r01.Mensaje; result.Result = OOB.Resultado.Enumerados.EnumResult.isError; return(result); } result.Id = r01.Id; return(result); }
public DtoLib.ResultadoId Venta_Item_Registrar(DtoLibPos.Venta.Item.Registrar.Ficha ficha) { var result = new DtoLib.ResultadoId(); try { using (var cnn = new PosEntities(_cnPos.ConnectionString)) { using (var ts = new TransactionScope()) { var entDeposito = cnn.productos_deposito.FirstOrDefault(f => f.auto_producto == ficha.deposito.autoPrd && f.auto_deposito == ficha.deposito.autoDeposito); if (entDeposito == null) { result.Mensaje = "PRODUCTO/DEPOSITO NO ENCONTRADO"; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } if (ficha.validarExistencia) { if (ficha.deposito.cantBloq > entDeposito.disponible) { result.Mensaje = "EXISTENCIA A BLOQUEAR NO DISPONIBLE"; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } } entDeposito.reservada += ficha.deposito.cantBloq; entDeposito.disponible -= ficha.deposito.cantBloq; cnn.SaveChanges(); var entVenta = new p_venta() { auto_departamento = ficha.item.autoDepartamento, auto_grupo = ficha.item.autoGrupo, auto_producto = ficha.item.autoProducto, auto_subGrupo = ficha.item.autoSubGrupo, auto_tasa = ficha.item.autoTasa, cantidad = ficha.item.cantidad, categoria = ficha.item.categoria, codigo = ficha.item.codigo, costoCompra = ficha.item.costoCompra, costoPromedio = ficha.item.costoPromedio, costoPromedioUnd = ficha.item.costoPromedioUnd, costoUnd = ficha.item.costoUnd, decimales = ficha.item.decimales, empaqueContenido = ficha.item.empaqueContenido, empaqueDescripcion = ficha.item.empaqueDescripcion, estatusPesado = ficha.item.estatusPesado, id_p_operador = ficha.item.idOperador, nombre = ficha.item.nombre, pdivisaFull = ficha.item.pfullDivisa, pneto = ficha.item.pneto, tarifaPrecio = ficha.item.tarifaPrecio, tasaIva = ficha.item.tasaIva, tipoIva = ficha.item.tipoIva, auto_deposito = ficha.item.autoDeposito, id_p_pendiente = -1, }; cnn.p_venta.Add(entVenta); cnn.SaveChanges(); result.Id = entVenta.id; ts.Complete(); } } } catch (Exception e) { result.Mensaje = e.Message; result.Result = DtoLib.Enumerados.EnumResult.isError; } return(result); }
public DtoLib.ResultadoId Venta_Item_Registrar(DtoLibPos.Venta.Item.Registrar.Ficha ficha) { return(ServiceProv.Venta_Item_Registrar(ficha)); }