protected override List <ReporteVencimientoVo> GetResults() { //var empresas = new List<int>(); //var lineas = new List<int>(); var data = SearchData.Load(ViewState); //if(data.Empresa > 0)empresas.Add(data.Empresa); //if(data.Linea > 0)lineas.Add(data.Linea); //if(data.Empresa <= 0 && data.Linea <= 0) //{ // empresas.AddRange((from Empresa e in DAOFactory.EmpresaDAO.GetList() select e.Id).ToList()); // lineas.AddRange((from Linea l in DAOFactory.LineaDAO.GetList(new[]{-1}) select l.Id).ToList()); //} var list = DAOFactory.DocumentoDAO.FindByTipo(data.TiposDocumento, new List <int> { data.Empresa }, new List <int> { data.Linea }); if (data.SoloConAviso) { return((from Documento d in list where d.Vencimiento.HasValue && d.Vencimiento.Value.Subtract(data.Fecha).TotalDays < data.DiasAviso orderby d.Vencimiento select new ReporteVencimientoVo(d, data.Fecha)).ToList()); } return((from Documento d in list orderby !d.Vencimiento.HasValue, d.Vencimiento select new ReporteVencimientoVo(d, data.Fecha)).ToList()); }
protected IList GetAllPartes() { var search = SearchData.Load(ViewState); var usuario = DAOFactory.UsuarioDAO.FindById(Usuario.Id); return(DAOFactory.DocumentoDAO.FindList(search.aseguradora, -1, -1, search.inicio.ToDataBaseDateTime(), search.fin.ToDataBaseDateTime(), 0, -1, usuario)); }
private List <PartePersonal> GetPartes() { var data = SearchData.Load(ViewState); var list = Reporter.GetData(data.Transportista, data.Locacion, data.Planta, data.Movil, data.Equipo, data.Inicio.ToDataBaseDateTime(), data.Fin.ToDataBaseDateTime(), data.Estado); if (data.Planta <= 0) { var user = DAOFactory.UsuarioDAO.FindById(Usuario.Id); var lineas = user.Lineas.OfType <Linea>().Select(l => l.Id).ToList(); var empresas = user.Empresas.OfType <Empresa>().Select(l => l.Id).ToList(); return(list.OfType <PartePersonal>() .Where(p => empresas.Count == 0 || (data.Locacion <= 0 || empresas.Contains(data.Locacion))) .Where(p => lineas.Count == 0 || (data.Planta <= 0 || lineas.Contains(data.Planta))).ToList()); } return(list.OfType <PartePersonal>().ToList()); }
protected override void OnRowDataBound(C1GridView grid, C1GridViewRowEventArgs e, ReporteVencimientoVo dataItem) { var data = SearchData.Load(ViewState); if (dataItem.DiasAlVencimiento == 9999) { GridUtils.GetCell(e.Row, ReporteVencimientoVo.IndexDiasAlVencimiento).Text = ""; } else if (dataItem.DiasAlVencimiento < 0) { e.Row.BackColor = Color.Red; } else if (dataItem.DiasAlVencimiento < data.DiasAviso) { e.Row.BackColor = Color.Yellow; } else { e.Row.BackColor = Color.Green; } }
protected void CancelarEdicionDePartes() { Search(SearchData.Load(ViewState)); }
protected IList GetPartesAVerificar() { var search = SearchData.Load(ViewState); var documentos = DAOFactory.DocumentoDAO.FindPartesControladosOVerificados(search.aseguradora, search.inicio.ToDataBaseDateTime(), search.fin.ToDataBaseDateTime()); var partes = from Documento d in documentos select new PartePersonal(d, DAOFactory); var byEquipo = new Dictionary <string, List <PartePersonal> >(); foreach (var parte in partes) { if (!byEquipo.ContainsKey(parte.Grupo)) { byEquipo.Add(parte.Grupo, new List <PartePersonal>()); } byEquipo[parte.Grupo].Add(parte); } var transportista = DAOFactory.TransportistaDAO.FindById(search.aseguradora); foreach (var equipo in byEquipo.Keys) { var oEquipo = DAOFactory.EquipoDAO.FindById(byEquipo[equipo][0].IdEquipo); var tarifa = DAOFactory.TarifaTransportistaDAO.GetTarifaParaCliente(transportista.Id, oEquipo.Cliente.Id); var tarifaCorto = tarifa != null ? tarifa.TarifaTramoCorto : transportista.TarifaTramoCorto; var tarifaLargo = tarifa != null ? tarifa.TarifaTramoLargo : transportista.TarifaTramoLargo; double kms = (from p in byEquipo[equipo] select p.KmTotal).Sum(); var kmsc = (from p in byEquipo[equipo] select p.KmTotalCalculado).Sum(); foreach (var parte in byEquipo[equipo]) { parte.Importe = parte.KmTotal * (kms < 14000 ? tarifaCorto : tarifaLargo); parte.ImporteControlado = parte.KmTotalCalculado * (kmsc < 14000 ? tarifaCorto : tarifaLargo); } } var sums = new Dictionary <string, string>(); var partesOrdenados = new List <PartePersonal>(); foreach (var list in byEquipo.Values) { partesOrdenados.AddRange(list); var horas = TimeSpan.Zero; var horasControladas = TimeSpan.Zero; var horasDiff = TimeSpan.Zero; var km = 0; double kmControlado = 0; double kmDiff = 0; double importe = 0; double importeControlado = 0; double importeDiff = 0; foreach (var parte in list) { horas = horas.Add(parte.Horas); horasControladas = horasControladas.Add(parte.HorasControladas); horasDiff = horasDiff.Add(parte.DiffHoras); km += parte.KmTotal; kmControlado += parte.KmTotalCalculado; kmDiff += parte.DiffKmTotal; importe += parte.Importe; importeControlado += parte.ImporteControlado; importeDiff += parte.DiffImporte; } var totales = string.Format(TotalesTemplate, list[0].Grupo, string.Format(HeaderHorasTemplate, horas, horasControladas, horasDiff), string.Format(HeaderKmTemplate, km, kmControlado, kmDiff), string.Format(HeaderImporteTemplate, importe, importeControlado, importeDiff) ); sums.Add(list[0].Grupo, totales); } foreach (var ordenado in partesOrdenados) { if (ordenado.TipoServicio == ParteCampos.ListaTipoServicios[0]) { ordenado.Equipo = sums[ordenado.Grupo]; } else { ordenado.TipoServicio = sums[ordenado.Grupo]; } } return(partesOrdenados); }