public IHttpActionResult Get(string vehicleRegistration)
        {
            if (string.IsNullOrEmpty(vehicleRegistration))
            {
                return(BadRequest());
            }

            using (var context = new ConnectContext())
            {
                vehicleRegistration = vehicleRegistration.ToUpper().Trim().Replace(" ", "");

                var allDocuments = context.GetAllDocuments(ConnectUser)
                                   .OfType <TachographDocument>()
                                   .OrderByDescending(c => c.CalibrationTime.GetValueOrDefault())
                                   .Where(c => c.RegistrationNumber == vehicleRegistration)
                                   .ToList();

                var result = new InspectionDataViewModel();
                result.Parse(allDocuments.FirstOrDefault());

                if (allDocuments.Count > 0)
                {
                    var documents = allDocuments.Where(c => !string.IsNullOrEmpty(c.InspectionInfo)).Skip(1)
                                    .Select(c => new HistoryViewModel(c.CalibrationTime.GetValueOrDefault(), c.InspectionInfo));

                    foreach (var item in documents)
                    {
                        result.History.Add(item);
                    }
                }

                return(Ok(result));
            }
        }
        public IHttpActionResult Get()
        {
            var from = DateTime.Now.StartOfMonth();
            var to   = DateTime.Now.EndOfNextMonth();

            using (var context = new ConnectContext())
            {
                return(Ok(context.GetAllDocuments(ConnectUser, from, to).Select(c => new CalibrationsDueViewModel(c))));
            }
        }
Exemplo n.º 3
0
        public IHttpActionResult Get(DateTime dateFrom, DateTime to, string filter = null)
        {
            using (var context = new ConnectContext())
            {
                var documents = from document in context.GetAllDocuments(ConnectUser)
                                where document.Created.Date >= dateFrom.Date && document.Created.Date <= to.Date
                                where string.IsNullOrEmpty(filter) || (!string.IsNullOrEmpty(document.DepotName) && document.DepotName.ToUpper().Contains(filter.ToUpper()))
                                orderby document.Created descending
                                select new RecentCalibrationsViewModel(document, null);

                return(Ok(documents.ToList()));
            }
        }