Beispiel #1
0
        public static StorePage QuerySearchResultPage(int sellerSysNo)
        {
            var filter = new StorePageFilter();

            filter.PageType = "SearchResult";
            return(StoreDA.QueryStorePage(filter));
        }
Beispiel #2
0
        public static StorePage QueryProductListPage(int sellerSysNo)
        {
            var filter = new StorePageFilter();

            filter.PageType = "ProductList";
            return(StoreDA.QueryStorePage(filter));
        }
Beispiel #3
0
        public static StorePage QueryHomePage(int sellerSysNo)
        {
            var filter = new StorePageFilter();

            filter.PageType    = "Home";
            filter.SellerSysNo = sellerSysNo;
            return(StoreDA.QueryStorePage(filter));
        }
Beispiel #4
0
 /// <summary>
 /// 获得店铺的页面,如果是预览则查询ECStore..StorePageInfo,否则查询ECStore..[PublishedStorePageInfo]
 /// </summary>
 /// <param name="filter"></param>
 /// <returns></returns>
 public static StorePage QueryStorePage(StorePageFilter filter)
 {
     return(StoreDA.QueryStorePage(filter));
 }
Beispiel #5
0
        public static StorePage QueryStorePage(StorePageFilter filter)
        {
            CustomDataCommand cmd;

            if (filter.IsPreview)
            {
                //preview
                cmd = DataCommandManager.CreateCustomDataCommandFromConfig("QueryStorePageWithPreview");
                using (var sqlBuild = new DynamicQuerySqlBuilder(cmd))
                {
                    sqlBuild.ConditionConstructor.AddCondition(QueryConditionRelationType.AND,
                                                               "page.[SellerSysNo]", DbType.Int32, "@SellerSysNo",
                                                               QueryConditionOperatorType.Equal, filter.SellerSysNo);

                    sqlBuild.ConditionConstructor.AddCondition(QueryConditionRelationType.AND,
                                                               "page.[SysNo]", DbType.Int32, "@SysNo",
                                                               QueryConditionOperatorType.Equal, filter.PublishPageSysNo);

                    sqlBuild.ConditionConstructor.AddCondition(QueryConditionRelationType.AND,
                                                               "page.[PageTypeKey]", DbType.String, "@PageType",
                                                               QueryConditionOperatorType.Equal, filter.PageType);

                    cmd.CommandText = sqlBuild.BuildQuerySql();
                }
            }
            else
            {
                //not preview
                cmd = DataCommandManager.CreateCustomDataCommandFromConfig("QueryStorePageWithPublish");
                #region build condition
                using (var sqlBuild = new DynamicQuerySqlBuilder(cmd))
                {
                    sqlBuild.ConditionConstructor.AddCondition(QueryConditionRelationType.AND,
                                                               "p.[SellerSysNo]", DbType.Int32, "@SellerSysNo",
                                                               QueryConditionOperatorType.Equal, filter.SellerSysNo);

                    sqlBuild.ConditionConstructor.AddCondition(QueryConditionRelationType.AND,
                                                               "p.[SysNo]", DbType.Int32, "@SysNo",
                                                               QueryConditionOperatorType.Equal, filter.PublishPageSysNo);

                    sqlBuild.ConditionConstructor.AddCondition(QueryConditionRelationType.AND,
                                                               "P.[PageTypeKey]", DbType.String, "@PageType",
                                                               QueryConditionOperatorType.Equal, filter.PageType);

                    sqlBuild.ConditionConstructor.AddCondition(QueryConditionRelationType.AND,
                                                               "p.[Status]", DbType.Int32, "@Status",
                                                               QueryConditionOperatorType.Equal, 1);

                    cmd.CommandText = sqlBuild.BuildQuerySql();
                }
                #endregion
            }


#if DEBUG
            Console.WriteLine("Query Store Page Command is : {0}", cmd.CommandText);
#endif
            var result = cmd.ExecuteEntity <StorePage>();
            if (result == null)
            {
                return(null);
            }

            var page = SerializationUtility.JsonDeserialize2 <StorePage>(result.DataValue);
            page.SysNo       = result.SysNo.Value;
            page.SellerSysNo = filter.SellerSysNo.Value;


            var pageTheme = QueryStorePageTheme(page.StorePageTemplate.StorePageThemeSysNo);
            if (pageTheme != null)
            {
                page.StorePageTemplate.StorePageThemeCssUrl = pageTheme.CssResUrl;
            }

            page.StorePageType = QueryStorePageType(page.StorePageType.Key);

            return(page);
        }