예제 #1
0
        public QueryResult QueryTariffInfo(TariffInfoQueryFilter request)
        {
            int totalCount;
            var dataTable = ObjectFactory <ITariffInfoQueryDA> .Instance.QueryTariffInfo(request, out totalCount);

            return(new QueryResult()
            {
                Data = dataTable,
                TotalCount = totalCount
            });
        }
예제 #2
0
        /// <summary>
        /// 税率规格信息查询
        /// </summary>
        /// <param name="queryVM"></param>
        /// <param name="PageSize"></param>
        /// <param name="PageIndex"></param>
        /// <param name="SortField"></param>
        /// <param name="callback"></param>
        public void TariffInfoQuery(TariffInfoQueryFilterVM queryVM, int PageSize, int PageIndex, string SortField, EventHandler <RestClientEventArgs <dynamic> > callback)
        {
            TariffInfoQueryFilter queryFilter = new TariffInfoQueryFilter();

            queryFilter            = queryVM.ConvertVM <TariffInfoQueryFilterVM, TariffInfoQueryFilter>();
            queryFilter.PagingInfo = new PagingInfo
            {
                PageSize  = PageSize,
                PageIndex = PageIndex,
                SortBy    = SortField
            };
            string relativeUrl = "/CommonService/Tariff/Query";

            restClient.QueryDynamicData(relativeUrl, queryFilter, (obj, args) =>
            {
                if (args.FaultsHandle())
                {
                    return;
                }
                callback(obj, args);
            });
        }
예제 #3
0
        /// <summary>
        /// 查询税率规则
        /// </summary>
        /// <param name="queryCriteria"></param>
        /// <param name="totalCount"></param>
        /// <returns></returns>
        public DataTable QueryTariffInfo(TariffInfoQueryFilter queryCriteria, out int totalCount)
        {
            PagingInfoEntity pagingEntity = new PagingInfoEntity();

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

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

            using (var sqlBuilder = new DynamicQuerySqlBuilder(cmd.CommandText, cmd, pagingEntity, "SysNo desc"))
            {
                //系统编号
                if (queryCriteria.SysNo.HasValue)
                {
                    sqlBuilder.ConditionConstructor.AddCondition(
                        QueryConditionRelationType.AND,
                        "SysNo",
                        DbType.Int32,
                        "@SysNo",
                        QueryConditionOperatorType.Equal,
                        queryCriteria.SysNo.Value);
                }

                if (queryCriteria.Status.HasValue)
                {
                    sqlBuilder.ConditionConstructor.AddCondition(
                        QueryConditionRelationType.AND,
                        "Status",
                        DbType.Int32,
                        "@Status",
                        QueryConditionOperatorType.Equal,
                        queryCriteria.Status.Value);
                }

                if (!string.IsNullOrEmpty(queryCriteria.ItemCategoryName))
                {
                    sqlBuilder.ConditionConstructor.AddCondition(
                        QueryConditionRelationType.AND,
                        "ItemCategoryName",
                        DbType.String,
                        "@ItemCategoryName",
                        QueryConditionOperatorType.Equal,
                        queryCriteria.ItemCategoryName);
                }

                if (!string.IsNullOrEmpty(queryCriteria.TariffCode))
                {
                    sqlBuilder.ConditionConstructor.AddCondition(
                        QueryConditionRelationType.AND,
                        "TariffCode",
                        DbType.String,
                        "@TariffCode",
                        QueryConditionOperatorType.Equal,
                        queryCriteria.TariffCode);
                }

                if (!string.IsNullOrEmpty(queryCriteria.TariffRate))
                {
                    sqlBuilder.ConditionConstructor.AddCondition(
                        QueryConditionRelationType.AND,
                        "TariffRate",
                        DbType.String,
                        "@TariffRate",
                        QueryConditionOperatorType.Equal,
                        queryCriteria.TariffRate);
                }

                if (queryCriteria.ParentSysNo.HasValue)
                {
                    sqlBuilder.ConditionConstructor.AddCondition(
                        QueryConditionRelationType.AND,
                        "ParentSysNo",
                        DbType.Int32,
                        "@ParentSysNo",
                        QueryConditionOperatorType.Equal,
                        queryCriteria.ParentSysNo.Value);
                }

                if (queryCriteria.SearchCode.HasValue)
                {
                    if (string.IsNullOrEmpty(queryCriteria.TariffCode) && string.IsNullOrEmpty(queryCriteria.ItemCategoryName) &&
                        !queryCriteria.ParentSysNo.HasValue)
                    {
                        cmd.CommandText = sqlBuilder.BuildQuerySql().Replace("#RepalceWhere#", "where TariffPrice>0");
                    }
                    else
                    {
                        cmd.CommandText = sqlBuilder.BuildQuerySql().Replace("#RepalceWhere#", "and TariffPrice>0");
                    }
                }
                else
                {
                    cmd.CommandText = sqlBuilder.BuildQuerySql().Replace("#RepalceWhere#", "");
                }



                EnumColumnList enumConfig = new EnumColumnList();
                enumConfig.Add("Status", typeof(TariffStatus));
                DataTable dt = cmd.ExecuteDataTable(enumConfig);
                totalCount = int.Parse(cmd.GetParameterValue("TotalCount").ToString());

                return(dt);
            }
        }