Exemplo n.º 1
0
        public virtual QueryResult QueryGroupbuyingFeedback(GroupBuyingFeedbackQueryFilter filter)
        {
            int totalCount;
            var dt = ObjectFactory <IGroupBuyingQueryDA> .Instance.QueryFeedback(filter, out totalCount);

            return(new QueryResult()
            {
                Data = dt,
                TotalCount = totalCount
            });
        }
Exemplo n.º 2
0
        public DataTable QueryFeedback(GroupBuyingFeedbackQueryFilter filter, out int totalCount)
        {
            PagingInfoEntity pagingEntity = new PagingInfoEntity();

            pagingEntity.SortField     = filter.PagingInfo.SortBy;
            pagingEntity.MaximumRows   = filter.PagingInfo.PageSize;
            pagingEntity.StartRowIndex = filter.PagingInfo.PageIndex * filter.PagingInfo.PageSize;

            var cmd = DataCommandManager.CreateCustomDataCommandFromConfig("QueryGroupBuyingFeedback");

            using (var sqlBuilder = new DynamicQuerySqlBuilder(cmd.CommandText, cmd, pagingEntity, "SysNo DESC"))
            {
                sqlBuilder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND,
                                                             "Type", DbType.Int32, "@FeedbackType",
                                                             QueryConditionOperatorType.Equal, filter.FeedbackType);

                sqlBuilder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND,
                                                             "CreateDate", DbType.DateTime, "@CreateDateFrom",
                                                             QueryConditionOperatorType.MoreThanOrEqual, filter.CreateDateFrom);
                sqlBuilder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND,
                                                             "CreateDate", DbType.DateTime, "@CreateDateTo",
                                                             QueryConditionOperatorType.LessThanOrEqual, filter.CreateDateTo);

                sqlBuilder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND,
                                                             "Status", DbType.Int32, "@Status",
                                                             QueryConditionOperatorType.Equal, filter.Status);
                sqlBuilder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND,
                                                             "EditDate", DbType.DateTime, "@ReadDateFrom",
                                                             QueryConditionOperatorType.MoreThanOrEqual, filter.ReadDateFrom);
                sqlBuilder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND,
                                                             "EditDate", DbType.DateTime, "@ReadDateTo",
                                                             QueryConditionOperatorType.LessThanOrEqual, filter.ReadDateTo);

                sqlBuilder.ConditionConstructor.AddCondition(
                    QueryConditionRelationType.AND,
                    "CompanyCode",
                    DbType.AnsiStringFixedLength,
                    "@CompanyCode",
                    QueryConditionOperatorType.Equal,
                    filter.CompanyCode);

                cmd.CommandText = sqlBuilder.BuildQuerySql();
                var cnList = new CodeNamePairColumnList();
                cnList.Add("Type", "MKT", "GroupBuyingFeedBackType");
                var dt = cmd.ExecuteDataTable(new EnumColumnList {
                    { "Status", typeof(GroupBuyingFeedbackStatus) }
                }, cnList);

                totalCount = Convert.ToInt32(cmd.GetParameterValue("@TotalCount"));
                return(dt);
            }
        }