示例#1
0
        private IFilter CreateFilter(CV_PM_ALT_EVENT_LOGQueryParam qp)
        {
            ArgumentValidator.CheckForNullArgument(qp, "CV_PM_ALT_EVENT_LOGQueryParam");

            AndFilter      af = new AndFilter();
            MatchingFilter mf = new MatchingFilter();

            if (!qp.IsDefaultValue("CreatedOn"))
            {
                mf.AddGreatEqualThan("CreatedOn", qp.CreatedOn.Value.Date);
                mf.AddLessThan("CreatedOn", qp.CreatedOn.Value.Date.AddDays(1));
            }

            if (!qp.IsDefaultValue("EventTypeID"))
            {
                mf.AddMatching("EventTypeID", qp.EventTypeID);
            }

            if (!qp.IsDefaultValue("EventTypeName"))
            {
                mf.AddMatching("EventTypeName", qp.EventTypeName);
            }

            if (!qp.IsDefaultValue("IsFinished"))
            {
                mf.AddMatching("IsFinished", qp.IsFinished);
            }

            if (!qp.IsDefaultValue("CreatedBy"))
            {
                mf.AddMatching("CreatedBy", qp.CreatedBy);
            }

            //
            af.AddFilter(mf);
            //
            return(af);
        }
        //
        public IList <PM_ALT_MESSAGE> GetEntitiesToSend()
        {
            long totalRecords = 0;
            IList <PM_ALT_MESSAGE> entities = null;

            try
            {
                AndFilter      af = new AndFilter();
                MatchingFilter mf = new MatchingFilter();
                mf.AddLessThan("SentCnt", 1);
                af.AddFilter(mf);

                Sort sort = new Sort();
                sort.OrderBy("ModifiedOn", Sort.Direction.ASC);

                entities = _PM_ALT_MESSAGEDAO.Find(0, -1, af, sort, out totalRecords);
            }
            catch (Exception ex)
            {
                ExceptionPolicy.HandleException(ex, ExceptionPolicy.BusinessLogicDefaultPolicy);
            }

            return(entities);
        }