Пример #1
0
        public List <ClientEx> AllClientExes(string sortExpression = "")
        {
            List <Client>   allClients    = Client.AllClients();
            List <ClientEx> allClientExes = new List <ClientEx>();
            ObjectSortField osf           = null;

            foreach (Client client in allClients)
            {
                ClientEx clientEx = new ClientEx(client);
                allClientExes.Add(clientEx);
            }

            if (!String.IsNullOrEmpty(sortExpression))
            {
                if (sortExpression.ToUpper().EndsWith(" DESC"))
                {
                    osf = new ObjectSortField(sortExpression.Substring(0, sortExpression.Length - 5), ObjectSortField.SortOrders.Descending);
                }
                else
                {
                    osf = new ObjectSortField(sortExpression, ObjectSortField.SortOrders.Ascending);
                }

                allClientExes.Sort(new ObjectComparer <ClientEx>(new ObjectSortField[] { osf }));
            }

            return(allClientExes);
        }
Пример #2
0
        public static IList <Job> JobsFromSearch(Client client, List <string> searchTerms, bool isAdmin, string sortExpression = "")
        {
            Debug.WriteLine("Job.JobsFromSearch()");

            if (searchTerms.Count == 0)
            {
                return(null);
            }

            DataTable  dtJobsFromSearch = ClientData.Current.JobsFromSearchTermDataTable(client.ClientId, searchTerms, isAdmin);
            List <Job> jobs             = new List <Job>();

            foreach (DataRow drJob in dtJobsFromSearch.Rows)
            {
                Job job = new Job();
                job.SetFieldsFromDataRow(drJob);

                // need to do parent objs here
                job.Client  = client;
                job.JobType = JobType.JobTypeFromId(job.JobTypeId);
                jobs.Add(job);
            }

            // remove dupes (caused by join query)
            jobs = jobs.Distinct().ToList();

            if (!String.IsNullOrEmpty(sortExpression))
            {
                ObjectSortField osf;
                if (sortExpression.ToUpper().EndsWith(" DESC"))
                {
                    osf = new ObjectSortField(sortExpression.Substring(0, sortExpression.Length - 5), ObjectSortField.SortOrders.Descending);
                }
                else
                {
                    osf = new ObjectSortField(sortExpression, ObjectSortField.SortOrders.Ascending);
                }
                jobs.Sort(new ObjectComparer <Job>(new ObjectSortField[] { osf }));
            }

            return(jobs);
        }