public OOB.ResultadoEntidad <OOB.LibInventario.Visor.Ajuste.Ficha> Visor_Ajuste(OOB.LibInventario.Visor.Ajuste.Filtro filtro) { var rt = new OOB.ResultadoEntidad <OOB.LibInventario.Visor.Ajuste.Ficha>(); var filtroDto = new DtoLibInventario.Visor.Ajuste.Filtro(); filtroDto.ano = filtro.ano; filtroDto.mes = filtro.mes; var r01 = MyData.Visor_Ajuste(filtroDto); if (r01.Result == DtoLib.Enumerados.EnumResult.isError) { rt.Mensaje = r01.Mensaje; rt.Result = OOB.Enumerados.EnumResult.isError; return(rt); } rt.Entidad = new OOB.LibInventario.Visor.Ajuste.Ficha(); var list = new List <OOB.LibInventario.Visor.Ajuste.FichaDetalle>(); rt.Entidad.montoVentaNeto = 0.0m; if (r01.Entidad != null) { var se = r01.Entidad; if (se.detalles != null) { if (se.detalles.Count > 0) { list = se.detalles.Select(s => { return(new OOB.LibInventario.Visor.Ajuste.FichaDetalle() { autoDepositoOrigen = s.autoDepositoOrigen, autoPrd = s.autoPrd, autoUsuario = s.autoUsuario, cantidadUnd = s.cantidadUnd, codigoDepositoOrigen = s.codigoDepositoOrigen, codigoPrd = s.codigoPrd, codigoUsuario = s.codigoUsuario, costoUnd = s.costoUnd, decimales = s.decimales, documentoNro = s.documentoNro, fecha = s.fecha, hora = s.hora, importe = s.importe, nombreDepositoOrigen = s.nombreDepositoOrigen, nombrePrd = s.nombrePrd, nombreUsuario = s.nombreUsuario, nota = s.nota, signo = s.signo, }); }).ToList(); } } rt.Entidad.montoVentaNeto = se.montoVentaNeto; } rt.Entidad.detalles = list; return(rt); }
public DtoLib.ResultadoEntidad <DtoLibInventario.Visor.Ajuste.Ficha> Visor_Ajuste(DtoLibInventario.Visor.Ajuste.Filtro filtro) { return(ServiceProv.Visor_Ajuste(filtro)); }
public DtoLib.ResultadoEntidad <DtoLibInventario.Visor.Ajuste.Ficha> Visor_Ajuste(DtoLibInventario.Visor.Ajuste.Filtro filtro) { var rt = new DtoLib.ResultadoEntidad <DtoLibInventario.Visor.Ajuste.Ficha>(); try { var list = new List <DtoLibInventario.Visor.Ajuste.FichaDetalle>(); var totalVentasNeta = 0.0m; using (var cnn = new invEntities(_cnInv.ConnectionString)) { var p1 = new MySql.Data.MySqlClient.MySqlParameter("@p1", filtro.mes.ToString().Trim().PadLeft(2, '0')); var p2 = new MySql.Data.MySqlClient.MySqlParameter("@p2", filtro.ano.ToString().Trim().PadLeft(4, '0')); var sql = "select sum(neto*signo) as total from ventas " + "where mes_relacion=@p1 and ano_relacion=@p2 " + "and (tipo='01' or tipo='02' or tipo='03') " + "and estatus_anulado='0' "; var total = cnn.Database.SqlQuery <decimal?>(sql, p1, p2).FirstOrDefault(); if (total.HasValue) { totalVentasNeta = total.Value; } var q = cnn.productos_movimientos_detalle. Join(cnn.productos_movimientos, pmd => pmd.auto_documento, pm => pm.auto, (pmd, pm) => new { pmd, pm }). Where(w => w.pm.fecha.Year == filtro.ano && w.pm.estatus_anulado == "0" && (w.pm.tipo == "04" || ((w.pm.tipo == "01" || w.pm.tipo == "02") && w.pm.auto_concepto == "0000000007")) ).ToList(); if (filtro.mes != 0) { q = q.Where(w => w.pm.fecha.Month == filtro.mes).ToList(); } if (q != null) { if (q.Count > 0) { list = q.Select(s => { var rg = new DtoLibInventario.Visor.Ajuste.FichaDetalle() { autoDepositoOrigen = s.pm.auto_deposito, autoPrd = s.pmd.auto_producto, autoUsuario = s.pm.auto_usuario, cantidadUnd = s.pmd.cantidad_und, codigoDepositoOrigen = s.pm.codigo_deposito, codigoPrd = s.pmd.codigo, codigoUsuario = s.pm.codigo_usuario, decimales = s.pmd.decimales, documentoNro = s.pm.documento, fecha = s.pm.fecha, hora = s.pm.hora, nombreDepositoOrigen = s.pm.deposito, nombrePrd = s.pmd.nombre, nombreUsuario = s.pm.usuario, nota = s.pm.nota, costoUnd = s.pmd.costo_und, importe = s.pmd.total, signo = s.pmd.signo, }; return(rg); }).ToList(); } } } rt.Entidad = new DtoLibInventario.Visor.Ajuste.Ficha(); rt.Entidad.detalles = list; rt.Entidad.montoVentaNeto = totalVentasNeta; } catch (Exception e) { rt.Mensaje = e.Message; rt.Result = DtoLib.Enumerados.EnumResult.isError; } return(rt); }