예제 #1
0
        /// <summary>
        /// 请求服务,并将查询结果绑定到DataGrid
        /// </summary>
        void DataGrid_LoadingDataSource(object sender, LoadingDataEventArgs e)
        {
            filter            = viewModel.ConvertVM <CustomerGiftQueryVM, CustomerGiftQueryFilter>();
            filter.PagingInfo = new PagingInfo
            {
                PageIndex = e.PageIndex,
                PageSize  = e.PageSize,
                SortBy    = e.SortField
            };
            _facade.Query(filter, (s, args) =>
            {
                if (args.FaultsHandle())
                {
                    return;
                }

                this.DataGrid.TotalCount = args.Result.TotalCount;

                _rows = DynamicConverter <CustomerGiftListVM> .ConvertToVMList(args.Result.Rows);
                this.DataGrid.ItemsSource = _rows;
                if (_checkBoxAll != null)
                {
                    //重新查询后,将全选CheckBox置为false
                    _checkBoxAll.IsChecked = false;
                }
            });
        }
예제 #2
0
        public virtual QueryResult QueryGift(CustomerGiftQueryFilter msg)
        {
            int totalCount;
            var dataTable = ObjectFactory <IGiftQueryDA> .Instance.Query(msg, out totalCount);

            return(new QueryResult()
            {
                Data = dataTable,
                TotalCount = totalCount
            });
        }
예제 #3
0
        public virtual DataTable Query(CustomerGiftQueryFilter queryEntity, out int totalCount)
        {
            PagingInfoEntity pagingEntity = new PagingInfoEntity();

            pagingEntity.SortField     = queryEntity.PagingInfo.SortBy;
            pagingEntity.MaximumRows   = queryEntity.PagingInfo.PageSize;
            pagingEntity.StartRowIndex = queryEntity.PagingInfo.PageIndex * queryEntity.PagingInfo.PageSize;
            var cmd = DataCommandManager.CreateCustomDataCommandFromConfig("Gift_Query");

            using (var sqlBuilder = new DynamicQuerySqlBuilder(cmd.CommandText, cmd, pagingEntity, "gift.SysNo DESC"))
            {
                sqlBuilder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND,
                                                             "customer.CustomerID", DbType.String, "@CustomerID",
                                                             QueryConditionOperatorType.Equal, queryEntity.CustomerID);

                sqlBuilder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND,
                                                             "gift.Quantity", DbType.Int32, "@Quantity",
                                                             QueryConditionOperatorType.Equal, queryEntity.ProductQty);

                sqlBuilder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND,
                                                             "gift.Status", DbType.Int32, "@Status",
                                                             QueryConditionOperatorType.Equal, queryEntity.Status);

                sqlBuilder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND,
                                                             "gift.CreateDate", DbType.DateTime, "@CreateDateFrom",
                                                             QueryConditionOperatorType.MoreThanOrEqual,
                                                             queryEntity.CreateDateFrom);

                sqlBuilder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND,
                                                             "gift.CreateDate", DbType.DateTime, "@CreateDateTo",
                                                             QueryConditionOperatorType.LessThan,
                                                             queryEntity.CreateDateTo);
                sqlBuilder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND,
                                                             "product.ProductID", DbType.String, "@ProductID",
                                                             QueryConditionOperatorType.Equal, queryEntity.ProductID);

                cmd.CommandText = sqlBuilder.BuildQuerySql();
                DataTable dt = cmd.ExecuteDataTable();
                totalCount = Convert.ToInt32(cmd.GetParameterValue("@TotalCount"));
                return(dt);
            }
        }
예제 #4
0
        public void Query(CustomerGiftQueryFilter filter, EventHandler <RestClientEventArgs <dynamic> > callback)
        {
            string relativeUrl = "/CustomerService/Gift/Query";

            restClient.QueryDynamicData(relativeUrl, filter, callback);
        }