/// <summary> /// 更新SEO维护 /// </summary> /// <param name="item"></param> public void UpdateSEOInfo(SEOItem item) { DataCommand dc = DataCommandManager.GetDataCommand("SEO_UpdateSEOMetadata"); dc.SetParameterValue <SEOItem>(item); dc.ExecuteNonQuery(); }
/// <summary> /// 加载SEO /// </summary> /// <param name="sysNo"></param> /// <returns></returns> public virtual SEOItem LoadSEOInfo(int sysNo) { SEOItem item = seoDA.LoadSEOInfo(sysNo); item.ProductList = seoDA.GetProductRangeBySeoSysNo(sysNo); item.CategoryList = seoDA.GetCategoryRangeBySeoSysNo(sysNo); return(item); }
/// <summary> /// 添加SEO维护 /// </summary> /// <param name="item"></param> public SEOItem AddSEOInfo(SEOItem item) { DataCommand dc = DataCommandManager.GetDataCommand("SEO_InsertSEOMetadata"); dc.SetParameterValue <SEOItem>(item); dc.ExecuteNonQuery(); item.SysNo = Convert.ToInt32(dc.GetParameterValue("@SysNo")); return(item); }
/// <summary> /// 扩展生效 /// </summary> /// <param name="item"></param> public List <SEOItem> GetCategoryMetadataByC3SysNo(SEOItem item) { DataCommand dc = DataCommandManager.GetDataCommand("SEO_GetSEOMetadataByC3SysNo"); dc.SetParameterValue("@PageType", item.PageType); dc.SetParameterValue("@C3SysNo", item.PageID); dc.SetParameterValue("@CompanyCode", item.CompanyCode); return(dc.ExecuteEntityList <SEOItem>()); }
/// <summary> /// 加载SEO /// </summary> /// <param name="sysNo"></param> /// <returns></returns> public SEOItem LoadSEOInfo(int sysNo) { DataCommand dc = DataCommandManager.GetDataCommand("SEO_GetSEOMetadata"); dc.SetParameterValue("@SysNo", sysNo); DataTable dt = dc.ExecuteDataTable <ADStatus>("Status"); SEOItem item = DataMapper.GetEntity <SEOItem>(dt.Rows[0]); return(item); }
/// <summary> /// 创建SEO的日志 /// </summary> /// <param name="item"></param> public virtual void CreateCategoryMetadataLog(SEOItem item) { CategoryMetadataLog log = new CategoryMetadataLog(); log.CompanyCode = item.CompanyCode; log.Operation = "Create"; log.Description = item.PageDescription.Content; log.CategoryMetadataInfoSysNo = item.SysNo; seoDA.CreateCategoryMetadataLog(log); }
/// <summary> /// 扩展生效 /// </summary> /// <param name="item"></param> public virtual void Category3ExtendValid(SEOItem item) { var relatedECCategory3List = ObjectFactory <IECCategoryDA> .Instance.GetRelatedECCategory3SysNo(item.PageID.Value); foreach (var rc3 in relatedECCategory3List) { item.PageID = rc3.C3SysNo; if (!seoDA.CheckSEOItem(item)) { seoDA.AddSEOInfo(item); } } }
public string GetCNameFromCategory3(SEOItem item) { DataCommand cmd = DataCommandManager.GetDataCommand("SEO_GetCNameFromCategory3"); cmd.SetParameterValue <SEOItem>(item); DataTable dt = cmd.ExecuteDataTable(); if (dt != null && dt.Rows.Count > 0) { return(dt.Rows[0][0].ToString()); } return(string.Empty); }
/// <summary> /// 判断是否存在该需要创建的对象 /// </summary> /// <param name="item"></param> /// <returns></returns> public bool CheckSEOItem(SEOItem item) { DataCommand dc; if (item.SysNo > 0) { dc = DataCommandManager.GetDataCommand("SEO_CheckSEOItemByUpdate"); } else { dc = DataCommandManager.GetDataCommand("SEO_CheckSEOItem"); } dc.SetParameterValue <SEOItem>(item); return(dc.ExecuteScalar() != null); }
//readonly SEOCommon _seo = new SEOCommon(); //[MinifyHtmlFilter] // nén nội dung html public ActionResult Index(int?pageId, int cateId = 0, string slug = "home", string tag = "") { //var domain = Request.Url.Authority; //if (!string.IsNullOrEmpty(domain) && "localhost:2163" != domain) //{ // var lw = domain.Split('.'); // var key = lw[0]; // var address8 = new Uri(Request.Url.AbsoluteUri); // if (key.ToLower() == "www") // { // var u = "https://" + domain.Substring(4, domain.Length - 4) + Request.Url.AbsolutePath; // return Redirect(u); // } // if (Uri.UriSchemeHttps != address8.Scheme) // { // var u = "https://" + domain + Request.Url.AbsolutePath; // return Redirect(u); // } //} var seo = new SEOItem(); if (tag.Equals("tag")) { seo = _selBL.GetSeoTag(slug); pageId = int.Parse(WebConfig.NewsId); } if (slug == "home") { seo = _selBL.GetSeoPage(2); } var model = pageId != null?_pageDa.GetById((int)pageId) : _pageDa.GetBykey(slug); model.SeoItem = seo; //if (model == null || !WebConfig.LstLang.Contains(lang)) //{ // return Redirect("/"); //} //Config.BeginRequest(lang); return(PartialView(model)); }
public virtual void UpdateSEOInfo(SEOItem item) { seoItemAppService.UpdateSEOInfo(item); }
public virtual QueryResult QuerySEO(SEOQueryFilter filter) { int totalCount; DataTable dataTable = ObjectFactory <ISEOQueryDA> .Instance.QuerySEO(filter, out totalCount); List <CodeNamePair> pair = ObjectFactory <PageTypeAppService> .Instance.GetPageType(filter.CompanyCode, filter.ChannelID.ToString(), ModuleType.SEO); //foreach (DataRow dr in dataTable.Rows) //{ // foreach (CodeNamePair p in pair) // { // if (dr["PageType"].ToString() == p.Code) // { // PageResult pr = ObjectFactory<PageTypeAppService>.Instance.GetPage(filter.CompanyCode, filter.ChannelID.ToString(), ModuleType.SEO, p.Code); // if(pr.PageList!=null && pr.PageList.Count>0) // dr["PageIDName"] = pr.PageList[0].PageName; // dr["PageTypeName"] = p.Name; // //还需要转换页面名称 // } // } //} foreach (DataRow dr in dataTable.Rows) { SEOItem item = new SEOItem(); item.PageType = int.Parse(dr["PageType"].ToString()); item.PageID = int.Parse(dr["PageID"].ToString()); item.CompanyCode = dr["CompanyCode"].ToString(); foreach (CodeNamePair p in pair) { if (dr["PageType"].ToString() == p.Code) { dr["PageTypeName"] = p.Name; } } switch (int.Parse(dr["PageType"].ToString())) { case 1: dr["PageIDName"] = seoItemAppService.GetCNameFromCategory1(item); break; case 2: dr["PageIDName"] = seoItemAppService.GetCNameFromCategory2(item); break; case 3: dr["PageIDName"] = seoItemAppService.GetCNameFromCategory3(item); break; case 4: dr["PageIDName"] = seoItemAppService.GetBrandName(item); break; case 5: dr["PageIDName"] = seoItemAppService.GetSaleAdvertisement(item); break; case 9: dr["PageIDName"] = seoItemAppService.GetBrandNameSpe(item); break; case 29: dr["PageIDName"] = seoItemAppService.GetVendorName(item); break; } } return(new QueryResult() { Data = dataTable, TotalCount = totalCount }); }
/// <summary> /// 添加SEO维护 /// </summary> /// <param name="item"></param> public virtual void AddSEOInfo(SEOItem item) { if (item == null) { throw new BizException(ResouceManager.GetMessageString("MKT.SEOInfo", "SEOInfo_CreatedObjectISNull")); } else if (item.PageType.Value == 0) { item.PageID = 0; } if (!string.IsNullOrEmpty(item.PageTitle) && item.PageTitle.Length > 500) { throw new BizException(ResouceManager.GetMessageString("MKT.SEOInfo", "SEOInfo_MaxTitleLength")); } else if (!string.IsNullOrEmpty(item.PageKeywords.Content) && item.PageKeywords.Content.Length > 1000) { throw new BizException(ResouceManager.GetMessageString("MKT.SEOInfo", "SEOInfo_MaxPageKeywordsLength")); } else if (!string.IsNullOrEmpty(item.PageAdditionContent) && item.PageAdditionContent.Length > 2000) { throw new BizException(ResouceManager.GetMessageString("MKT.SEOInfo", "SEOInfo_MaxPageAdditionContentLength")); } else if (!string.IsNullOrEmpty(item.PageDescription.Content) && item.PageDescription.Content.Length > 2000) { throw new BizException(ResouceManager.GetMessageString("MKT.SEOInfo", "SEOInfo_MaxPageDescriptionLength")); } if (item.PageType != 25) { if (item.Status == ADStatus.Active && seoDA.CheckSEOItem(item)) { throw new BizException(ResouceManager.GetMessageString("MKT.SEOInfo", "SEOInfo_ExsitTheObject")); } } using (TransactionScope scope = new TransactionScope()) { List <SeoCategory> CategordList = new List <SeoCategory>(); List <SeoProductItem> productList = new List <SeoProductItem>(); int pageid = item.PageID.Value; if (item.IsExtendValid == true && item.Status == ADStatus.Active && item.PageType.Value == 3 && item.PageID.Value != -1) { Category3ExtendValid(item); } item.PageID = pageid; item = seoDA.AddSEOInfo(item); CreateCategoryMetadataLog(item); seoDA.DeletetProductRangeBySysNo(item.SysNo); foreach (var c in item.CategoryList) { if (seoDA.IsExistsCategory(c.SysNo)) { seoDA.CreateProductRange(item.SysNo, item.User.UserName, CategorySysNo: c.SysNo); } else { CategordList.Add(c); } } foreach (var p in item.ProductList) { if (seoDA.IsExistsProductByProductId(p.ProductId)) { seoDA.CreateProductRange(item.SysNo, item.User.UserName, productId: p.ProductId); } else { productList.Add(p); } } if (productList.Count > 0) { //throw new BizException(string.Format("商品{0}不存在!", (from p in productList select p.ProductId).ToList().Join("\r"))); throw new BizException(string.Format(ResouceManager.GetMessageString("MKT.SEOInfo", "SEOInfo_NotExsitTheProduct"), (from p in productList select p.ProductId).ToList().Join("\r"))); } if (CategordList.Count > 0) { //throw new BizException(string.Format("类别{0}不存在!", (from p in CategordList select p.CategoryName).ToList().Join("\r"))); throw new BizException(string.Format(ResouceManager.GetMessageString("MKT.SEOInfo", "SEOInfo_NotExsitTheCategory"), (from p in CategordList select p.CategoryName).ToList().Join("\r"))); } scope.Complete(); } }
public virtual string GetCNameFromCategory3(SEOItem item) { return(seoDA.GetCNameFromCategory3(item)); }
public virtual string GetBrandName(SEOItem item) { return(ObjectFactory <SEOItemProcessor> .Instance.GetBrandName(item)); }
public virtual string GetSaleAdvertisement(SEOItem item) { return(seoDA.GetSaleAdvertisement(item)); }
public virtual string GetVendorName(SEOItem item) { return(seoDA.GetVendorName(item)); }
/// <summary> /// 添加SEO维护 /// </summary> /// <param name="item"></param> public void AddSEOInfo(SEOItem item) { ObjectFactory <SEOItemProcessor> .Instance.AddSEOInfo(item); }
/// <summary> /// 更新SEO维护 /// </summary> /// <param name="filter"></param> /// <param name="callback"></param> public void UpdateSEOInfo(SEOItem item, EventHandler <RestClientEventArgs <dynamic> > callback) { string relativeUrl = "/MKTService/SEOInfo/UpdateSEOInfo"; restClient.Update(relativeUrl, item, callback); }
/// <summary> /// 更新SEO维护 /// </summary> /// <param name="item"></param> public void UpdateSEOInfo(SEOItem item) { ObjectFactory <SEOItemProcessor> .Instance.UpdateSEOInfo(item); }
private void btnSave_Click(object sender, RoutedEventArgs e) { if (!ValidationManager.Validate(this.LayoutRoot)) { return; } //vm = LayoutRoot.DataContext as SEOMetadataVM; vm.PageType = ucPageType.PageType; if (vm.PageType == 0) { vm.PageID = ucPageType.PageID ?? 0; } else { vm.PageID = ucPageType.PageID ?? -1; } vm.IsExtendValid = ucPageType.IsExtendValid; //if (vm.PageType > 0 && (vm.PageID == null||vm.PageID==-1)&&vm.PageType!=25) //{ // CPApplication.Current.CurrentPage.Context.Window.Alert("没有选择页面!",MessageType.Error); // return; //} if (vm.PageType.HasValue) { SEOItem item = EntityConvertorExtensions.ConvertVM <SEOMetadataVM, SEOItem>(vm, (v, t) => { t.PageDescription = new BizEntity.LanguageContent(ConstValue.BizLanguageCode, v.PageDescription); t.PageKeywords = new BizEntity.LanguageContent(ConstValue.BizLanguageCode, v.PageKeywords); }); if (!CheckCategoryInput(seoProductDetail.CategoryResult)) { CPApplication.Current.CurrentPage.Context.Window.Alert("类别输入格式不正确!\r格式为:[正整数]字符,ps:[123]abc!"); return; } item.ProductList = new List <SeoProductItem>(); item.CategoryList = GetSeoCategoryList(seoProductDetail.CategoryResult); seoProductDetail.ProductResult.Split('\r').ToList().ForEach(s => { if (!string.IsNullOrEmpty(s)) { item.ProductList.Add(new SeoProductItem() { ProductId = s }); } }); item.CompanyCode = CPApplication.Current.CompanyCode; item.User = new BizEntity.Common.UserInfo() { UserName = CPApplication.Current.LoginUser.LoginName, SysNo = CPApplication.Current.LoginUser.UserSysNo }; if (isAdd) { facade.AddSEOInfo(item, (obj, args) => { if (args.FaultsHandle()) { return; } CloseDialog(DialogResultType.OK); CPApplication.Current.CurrentPage.Context.Window.Alert(ResNewsInfo.Information_CreateSuccessful, Newegg.Oversea.Silverlight.Controls.Components.MessageType.Information); }); } else { item.SysNo = SysNo; facade.UpdateSEOInfo(item, (obj, args) => { if (args.FaultsHandle()) { return; } CloseDialog(DialogResultType.OK); CPApplication.Current.CurrentPage.Context.Window.Alert(ResNewsInfo.Information_UpdateSuccessful, Newegg.Oversea.Silverlight.Controls.Components.MessageType.Information); }); } } else { CPApplication.Current.CurrentPage.Context.Window.Alert(ResNewsInfo.Information_NeedPageType, Newegg.Oversea.Silverlight.Controls.Components.MessageType.Information); } }
public virtual string GetCNameFromCategory3(SEOItem item) { return(ObjectFactory <SEOItemProcessor> .Instance.GetCNameFromCategory3(item)); }
public virtual void AddSEOInfo(SEOItem item) { seoItemAppService.AddSEOInfo(item); }
public virtual string GetBrandName(SEOItem item) { return(seoDA.GetBrandName(item)); }
public virtual string GetSaleAdvertisement(SEOItem item) { return(ObjectFactory <SEOItemProcessor> .Instance.GetSaleAdvertisement(item)); }