From 0624e884e0de6bf1a405579725e75313e95242e7 Mon Sep 17 00:00:00 2001 From: feng <279202647@qq.com> Date: Tue, 11 Apr 2023 12:05:06 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AF=B9=E6=8E=A5=E5=88=B0=E5=AE=A2=E6=88=B7?= =?UTF-8?q?=E7=AB=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Coldairarrow.Entity/DTO/TeamitemDto.cs | 6 + .../齐越慧眼/齐越慧眼/MainWindow.xaml | 2 +- .../齐越慧眼/Models/CompetingModel.cs | 185 ++++++ .../UserControls/ItemControl.xaml.cs | 15 + .../ViewModels/CompetingWindowViewModel.cs | 34 ++ .../齐越慧眼/Windows/CompetingWindow.xaml | 42 +- .../Windows/CompetingWindow.xaml.cs | 555 +++++++++++++++++- .../Windows/ItemDetailWindow.xaml.cs | 11 +- .../cefhelper/CefRequestHandler.cs | 19 +- .../client/src/views/competing/Index.vue | 17 +- .../vuepage/client/src/views/items/Index.vue | 30 +- .../vuepage/dist/css/app.c6957eae.css | 1 + .../齐越慧眼/vuepage/dist/css/app.css | 2 +- .../齐越慧眼/vuepage/dist/index.html | 2 +- .../齐越慧眼/vuepage/dist/js/app.js | 2 +- .../齐越慧眼/vuepage/dist/js/app.js.map | 2 +- .../齐越慧眼/齐越慧眼.csproj | 4 +- 17 files changed, 903 insertions(+), 26 deletions(-) create mode 100644 客户端/齐越慧眼/齐越慧眼/Models/CompetingModel.cs create mode 100644 客户端/齐越慧眼/齐越慧眼/ViewModels/CompetingWindowViewModel.cs create mode 100644 客户端/齐越慧眼/齐越慧眼/vuepage/dist/css/app.c6957eae.css diff --git a/src/Coldairarrow.Entity/DTO/TeamitemDto.cs b/src/Coldairarrow.Entity/DTO/TeamitemDto.cs index 1131ed2..9468d26 100644 --- a/src/Coldairarrow.Entity/DTO/TeamitemDto.cs +++ b/src/Coldairarrow.Entity/DTO/TeamitemDto.cs @@ -174,5 +174,11 @@ namespace Coldairarrow.Entity.DTO /// 平台 /// public int Platform { get; set; } + + /// + /// 商品Spu + /// + public string Spu { get; set; } + public string Sku { get; set; } } } diff --git a/客户端/齐越慧眼/齐越慧眼/MainWindow.xaml b/客户端/齐越慧眼/齐越慧眼/MainWindow.xaml index 0c94c5b..f47a8f4 100644 --- a/客户端/齐越慧眼/齐越慧眼/MainWindow.xaml +++ b/客户端/齐越慧眼/齐越慧眼/MainWindow.xaml @@ -12,7 +12,7 @@ ActiveGlowColor="{DynamicResource PrimaryColor}" Height="780" Title="慧眼 V1.0.1.9" - Width="1468" Icon="/icon.ico" + Width="1768" Icon="/icon.ico" > diff --git a/客户端/齐越慧眼/齐越慧眼/Models/CompetingModel.cs b/客户端/齐越慧眼/齐越慧眼/Models/CompetingModel.cs new file mode 100644 index 0000000..3e74235 --- /dev/null +++ b/客户端/齐越慧眼/齐越慧眼/Models/CompetingModel.cs @@ -0,0 +1,185 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Text.RegularExpressions; + +namespace 齐越慧眼.Models +{ + + public class TeamItem + { + public String Id { get; set; } + + /// + /// 创建时间 + /// + public DateTime CreateTime { get; set; } + + /// + /// 创建人Id + /// + public String CreatorId { get; set; } + + /// + /// 否已删除 + /// + public Boolean Deleted { get; set; } + + /// + /// 商品表的ID + /// + public String ItemId { get; set; } + + /// + /// 宝贝标题 + /// + public String Title { get; set; } + + /// + /// 宝贝价格 + /// + public Decimal? Price { get; set; } + + /// + /// 收货人数 + /// + public string Sales { get; set; } + + /// + /// 商品图片 + /// + public String ItemImg { get; set; } + + /// + /// 添加人 + /// + public String UserId { get; set; } + + /// + /// 团队Id + /// + public String TeamId { get; set; } + + /// + /// 对标商品标题 + /// + public String RivalTitle { get; set; } + + /// + /// 对标商品价格 + /// + public Decimal? RivalPrice { get; set; } + + /// + /// 对标收货人数 + /// + public String RivalSales { get; set; } + + /// + /// 对标商品图片 + /// + public String RivalImg { get; set; } + + /// + /// 对标商品ID + /// + public String RivalGoodsId { get; set; } + + /// + /// 状态 + /// + public Int32? State { get; set; } + + /// + /// 扩展信息 + /// + public String ExtensionJson { get; set; } + + /// + /// 竞品列表Json + /// + public string CompetingItemJson { get; set; } + + /// + /// 对标商品评价数量 + /// + public string RivalPLCount { get; set; } + + /// + /// 接比价任务的用户ID + /// + public string PriceTaskUserId { get; set; } + /// + /// 品类词ID + /// + public string CatId { get; set; } + + /// + /// 是否合格 + /// + public bool? IsQualified { get; set; } + + /// + /// 完成时间 + /// + public DateTime? UpdateDate { get; set; } + /// + /// 比价发布日期 + /// + public DateTime? PriceTaskCreateDate { get; set; } + } + + + /// + /// 竞品信息 + /// + public class TeamCompetingItem + { + /// + /// 图片地址 + /// + public string ImgUrl { get; set; } + + /// + /// 标题 + /// + public string Title { get; set; } + + /// + /// 价格 + /// + public string Price { get; set; } + + /// + /// 评价数量 + /// + public string CommentCount { get; set; } + + /// + /// 竞品链接 + /// + public string ItemUrl { get; set; } + + /// + /// 平台 + /// + public int Platform { get; set; } + + public string Spu { get; set; } + + private string _Sku; + + public string Sku + { + get + { + if(string.IsNullOrEmpty(_Sku)) + _Sku= Regex.Match(ImgUrl, @"item\.jd\.com/(.*?)\.html").Groups[1].Value; + return _Sku; + } + set { + _Sku = value; + } + } + } +} diff --git a/客户端/齐越慧眼/齐越慧眼/UserControls/ItemControl.xaml.cs b/客户端/齐越慧眼/齐越慧眼/UserControls/ItemControl.xaml.cs index bb6eee5..221f4cf 100644 --- a/客户端/齐越慧眼/齐越慧眼/UserControls/ItemControl.xaml.cs +++ b/客户端/齐越慧眼/齐越慧眼/UserControls/ItemControl.xaml.cs @@ -19,6 +19,7 @@ using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; using 齐越慧眼.cefhelper; +using 齐越慧眼.Models; namespace 齐越慧眼.UserControls { @@ -105,6 +106,20 @@ namespace 齐越慧眼.UserControls public class ItemsAsyncJS { + public bool? onShowWindow(string itemJson,string type) + { + var item = Newtonsoft.Json.JsonConvert.DeserializeObject(itemJson); + if(type== "0") { + bool? result = false; + MainWindow.Main.Dispatcher.Invoke(() => + { + Windows.CompetingWindow window = new Windows.CompetingWindow(item); + result= window.ShowDialog(); + }); + return result; + } + return false; + } public string getToken() { diff --git a/客户端/齐越慧眼/齐越慧眼/ViewModels/CompetingWindowViewModel.cs b/客户端/齐越慧眼/齐越慧眼/ViewModels/CompetingWindowViewModel.cs new file mode 100644 index 0000000..dd2f463 --- /dev/null +++ b/客户端/齐越慧眼/齐越慧眼/ViewModels/CompetingWindowViewModel.cs @@ -0,0 +1,34 @@ +using GalaSoft.MvvmLight; +using System; +using System.Collections.Generic; +using System.Text; +using 齐越慧眼.Models; + +namespace 齐越慧眼.ViewModels +{ + public class CompetingWindowViewModel:ViewModelBase + { + public static CompetingWindowViewModel Instance { get; private set;} + /// + /// 当前操作对象 + /// + TeamItem Item { get; set; } + + public CompetingWindowViewModel(TeamItem item) + { + _ItemList = new System.Collections.ObjectModel.ObservableCollection(); + Item = item; + Instance = this; + } + + private System.Collections.ObjectModel.ObservableCollection _ItemList; + + public System.Collections.ObjectModel.ObservableCollection ItemList + { + get { return _ItemList; } + set { Set(ref _ItemList, value); } + } + + + } +} diff --git a/客户端/齐越慧眼/齐越慧眼/Windows/CompetingWindow.xaml b/客户端/齐越慧眼/齐越慧眼/Windows/CompetingWindow.xaml index 53d6612..db14657 100644 --- a/客户端/齐越慧眼/齐越慧眼/Windows/CompetingWindow.xaml +++ b/客户端/齐越慧眼/齐越慧眼/Windows/CompetingWindow.xaml @@ -5,8 +5,44 @@ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:齐越慧眼.Windows" mc:Ignorable="d" - Title="CompetingWindow" Height="450" Width="800"> - - + Title="CompetingWindow" Height="768" Width="1280"> + + + + + + + + + + + BlurRadius + + + + + + + + + + + + + + + + + + + + + + + diff --git a/客户端/齐越慧眼/齐越慧眼/Windows/CompetingWindow.xaml.cs b/客户端/齐越慧眼/齐越慧眼/Windows/CompetingWindow.xaml.cs index 9431d7d..b2e0bb8 100644 --- a/客户端/齐越慧眼/齐越慧眼/Windows/CompetingWindow.xaml.cs +++ b/客户端/齐越慧眼/齐越慧眼/Windows/CompetingWindow.xaml.cs @@ -1,6 +1,13 @@ -using System; +using CefSharp; +using System; using System.Collections.Generic; +using System.Linq; +using System.Net.Http; +using System.Security.Policy; using System.Text; +using System.Text.RegularExpressions; +using System.Threading; +using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; @@ -9,6 +16,10 @@ using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Shapes; +using 齐越慧眼.cefhelper; +using 齐越慧眼.Models; +using 齐越慧眼.UserControls; +using 齐越慧眼.ViewModels; namespace 齐越慧眼.Windows { @@ -17,9 +28,549 @@ namespace 齐越慧眼.Windows /// public partial class CompetingWindow : Window { - public CompetingWindow() + public ExtChromiumBrowser web; + public CompetingWindow(TeamItem item) { InitializeComponent(); + this.DataContext = new CompetingWindowViewModel(item); + + web = new ExtChromiumBrowser($"https://search.jd.com/Search?keyword={item.Title}") + { + BrowserSettings = + { + DefaultEncoding = "UTF-8", + Plugins = CefState.Enabled, + //关于跨域限制 + //WebSecurity = CefState.Disabled, + ApplicationCache = CefState.Enabled, + LocalStorage = CefState.Enabled, + + + } + }; + + MyResourceRequestHandlerFactory myResourceRequestHandlerFactory = new MyResourceRequestHandlerFactory(this); + myResourceRequestHandlerFactory.Handlers.TryAdd("test", null); + + web.ResourceRequestHandlerFactory = myResourceRequestHandlerFactory; + + grid.Children.Add(web); + Loaded += BrowerControl_Loaded; + + web.JavascriptObjectRepository.Settings.LegacyBindingEnabled = true; + var cjs = new CompetingAsyncJS(); + cjs.Brower = this; + web.JavascriptObjectRepository.Register("hyCoreModel", cjs, BindingOptions.DefaultBinder); + web.StartNewWindow += Web_StartNewWindow; + web.TitleChanged += Web_TitleChanged; + + web.AddressChanged += Web_AddressChanged; + + + + this.KeyUp += BrowerControl_KeyUp; + } + private void BrowerControl_KeyUp(object sender, System.Windows.Input.KeyEventArgs e) + { + + if (e.Key == System.Windows.Input.Key.F12) + { + web.ShowDevTools(); + } } + + private void Web_AddressChanged(object sender, DependencyPropertyChangedEventArgs e) + { + Application.Current.Dispatcher.Invoke(() => + { + txtUrl.Text = e.NewValue.ToString(); + }); + } + + + private void Web_TitleChanged(object sender, DependencyPropertyChangedEventArgs e) + { + Application.Current.Dispatcher.Invoke(() => + { + this.Title = e.NewValue.ToString(); + }); + } + + int nowPatlom = 0; + public void OnUrlEnd(string url) + { + if (url.Contains("s_new.php")) + { + Task.Factory.StartNew(() => + { + nowPatlom = 1; + lastUrl = "search.jd.com"; + DoWork(); + }); + } + + } + + + private void Web_StartNewWindow(object sender, NewWindowEventArgs e) + { + var match = Regex.Match(e.Url, @"item\.jd\.com/(.*?)\.html"); + + if (match.Success) + { + Thread t = new Thread(() => + { + //判断是否添加成功 + if (Windows.ItemDetailWindow.Show(e.Url) == true) + { + WpfNoticeMsg.NoticeMessage.Show("添加成功!"); + } + }); + t.IsBackground = true; + t.Start(); + + return; + } + // + //WpfNoticeMsg.NoticeMessage.Show(e.Url); + BrowerHelper.OpenUrl(e.Url); + //MainWindow.Main.brower.NewTab(e.Url); + //web.Load(e.Url); + } + + private void BrowerControl_Loaded(object sender, RoutedEventArgs e) + { + Thread t = new Thread(() => + { + + IWebBrowser webBrowser = null; + + Application.Current.Dispatcher.Invoke(() => + { + webBrowser = web.WebBrowser; + }); + + while (webBrowser == null) + { + Thread.Sleep(100); + Application.Current.Dispatcher.Invoke(() => + { + webBrowser = web.WebBrowser; + }); + } + + Application.Current.Dispatcher.Invoke(() => + { + web.WebBrowser.LoadingStateChanged += WebBrowser_LoadingStateChanged; + }); + }); + + t.Start(); + } + + private string lastUrl = string.Empty; + + private void WebBrowser_LoadingStateChanged(object sender, LoadingStateChangedEventArgs e) + { + if (lastUrl != e.Browser.MainFrame.Url) + { + lastUrl = e.Browser.MainFrame.Url; + //开始单页查询 + if (lastUrl.StartsWith("https://s.taobao.com/search") || lastUrl.StartsWith("https://search.jd.com/") || lastUrl.StartsWith("https://s.1688.com/selloffer/offer_search.htm") || lastUrl.StartsWith("https://mobile.yangkeduo.com/search_result.html?search_key")) + { + if (lastUrl.StartsWith("https://s.taobao.com/search")) + { + + nowPatlom = 0; + } + if (lastUrl.StartsWith("https://search.jd.com/")) + { + + nowPatlom = 1; + } + if (lastUrl.StartsWith("https://s.1688.com/")) + { + + nowPatlom = 2; + } + if (lastUrl.StartsWith("https://mobile.yangkeduo.com/search_result.html?search_key")) + { + nowPatlom = 3; + } + StartPage(); + } + } + } + + object doWorkObj = new object(); + + private void StartPage() + { + Thread t = new Thread(() => + { + lock (doWorkObj) + { + if (string.IsNullOrEmpty(lastUrl)) + return; + + DoWork(); + } + }); + + t.Start(); + } + + object lockWork = new object(); + + private void DoWork() + { + lock (lockWork) + { + while (true) + { + if (string.IsNullOrEmpty(lastUrl)) + break; + + Task task = null; + + Application.Current.Dispatcher.Invoke(() => + { + task = web.EvaluateScriptAsPromiseAsync("return $(document.body).html();"); + }); + + var result = task.Result; + + //判断是否加载完成 + if (result.Success) + { + AddCss(); + + AddJDOptionDiv(); + + CheckJDPageItem(); + + + break; + } + + Thread.Sleep(100); + } + } + } + + + /// + /// 检测页面商品 + /// + /// + private void CheckJDPageItem() + { + var res = DoJavaScript(@"var ids=[]; $('div#J_goodsList li').each(function(){ids.push($(this).attr(""data-spu""))});return ids.filter(c=>c!=undefined&&c!="""");"); + + //页面的spu列表 + List itemIds = Newtonsoft.Json.JsonConvert.DeserializeObject>(Newtonsoft.Json.JsonConvert.SerializeObject(res.result)); + + //已经添加的spu + var result = CompetingWindowViewModel.Instance.ItemList.Where(d => itemIds.Contains(d.Spu)).ToList(); + + foreach (var item in result) + { + + ////判断是否团队过滤 + //if (item.IsFilter) + //{ + // DoJavaScript($@"$($('div#J_goodsList li[data-sku=""{item.GoodsId}""]')).find('.myitemState').addClass(""falseBg"")"); + // DoJavaScript($@"$($('div#J_goodsList li[data-sku=""{item.GoodsId}""]')).find('.stateGraydiv').addClass(""divshow"")"); + //} + + + //if (item.IsCompeting) + //{ + //
+ //if ((int)DoJavaScript(@$"return $($('div#J_goodsList li[data-sku=""{item.Sku}""]')).find('.stateYellow').length").result <= 0) + //{ + // DoJavaScript($@"$($('div#J_goodsList li[data-sku=""{item.Sku}""]')).find('.myitemState').prepend('
')"); + //} + //DoJavaScript($@"$($('div#J_goodsList li[data-sku=""{item.Sku}""]')).find('.stateGraydiv').addClass(""divshow"")"); + //} + + //if (item.IsScreening) + //{ + DoJavaScript($@"$($('div#J_goodsList li[data-sku=""{item.Sku}""]')).find('.myitemState').addClass(""trueBg"")"); + DoJavaScript($@"$($('div#J_goodsList li[data-sku=""{item.Sku}""]')).find('.stateGraydiv').addClass(""divshow"")"); + //} + + //if (item.IsAdded) + //{ + // DoJavaScript($@"$($('div#J_goodsList li[data-sku=""{item.GoodsId}""]')).find('.myitemState').addClass(""popBg"")"); + // DoJavaScript($@"$($('div#J_goodsList li[data-sku=""{item.GoodsId}""]')).find('.stateGraydiv').addClass(""divshow"")"); + //} + } + + } + + /// + /// 添加操作面板 + /// + /// + private bool AddJDOptionDiv() + { + ///添加js事件 + DoJavaScript(@" + window.optClick= function (ele,type){ + var itemid= $(ele).parent().parent().parent().parent().attr(""data-sku""); + var price=$(ele).parent().parent().parent().parent().find("".p-price i"").text(); + var sales=$(ele).parent().parent().parent().parent().find("".p-commit"").text(); + var title=$(ele).parent().parent().parent().parent().find("".p-name a em"").text(); + var img=$(ele).parent().parent().parent().parent().find("".p-img img"").attr(""src""); + hyCoreModel.setjdItemData({itemid:itemid,price:price,sales:sales,title:title,img:img,type:type}); + }; + "); + + return DoJavaScript(@"$('div#J_goodsList .gl-item').find('.myitemState').remove();$('div#J_goodsList .gl-item').find('.myopdiv').remove(); + $('div#J_goodsList .gl-item .p-img a').before(' +
+
+ +
+ ')").isOk; + + } + + private bool AddCss() + { + ///添加css + return DoJavaScript(@"$('head').append('')".Replace("\n", "").Replace("\r\n", "")).isOk; + } + + /// + /// 执行js + /// + /// + /// + public (bool isOk, object result) DoJavaScript(string js, bool needReplaceLine = true) + { + if (needReplaceLine) + { + js = js.Replace("\n", "").Replace("\r\n", "").Replace(System.Environment.NewLine, "").Replace("\r", ""); + } + Task task = null; + + Application.Current.Dispatcher.Invoke(() => + { + task = web.EvaluateScriptAsPromiseAsync(js); + }); + + var result = task.Result; + + //判断是否加载完成 + return (result.Success, result.Result); + } + private void txtUrl_KeyUp(object sender, System.Windows.Input.KeyEventArgs e) + { + if (e.Key == System.Windows.Input.Key.Enter) + { + lastUrl = string.Empty; + web.Load(txtUrl.Text); + } + } + + private void back_Click(object sender, RoutedEventArgs e) + { + lastUrl = string.Empty; + this.web.Back(); + } + } + + public class CompetingAsyncJS + { + public CompetingWindow Brower { get; set; } } } diff --git a/客户端/齐越慧眼/齐越慧眼/Windows/ItemDetailWindow.xaml.cs b/客户端/齐越慧眼/齐越慧眼/Windows/ItemDetailWindow.xaml.cs index d20e128..b1b9c2a 100644 --- a/客户端/齐越慧眼/齐越慧眼/Windows/ItemDetailWindow.xaml.cs +++ b/客户端/齐越慧眼/齐越慧眼/Windows/ItemDetailWindow.xaml.cs @@ -88,7 +88,6 @@ namespace 齐越慧眼.Windows { if (isWait) { - web.LoadUrlAsync("www.baidu.com"); return; } @@ -125,7 +124,17 @@ namespace 齐越慧眼.Windows } string url = web.Address; + string spu = EvalScript("return $(document.head).html().match(/mainSkuId:'(.*?)',/)==undefined?\"\":$(document.head).html().match(/mainSkuId:'(.*?)',/)[1]"); + ViewModels.CompetingWindowViewModel.Instance.ItemList.Add(new Models.TeamCompetingItem() { + CommentCount=comment, + ImgUrl=imgUrl, + ItemUrl=url, + Platform=0, + Price=price, + Spu=spu, + Title=title, + }); this.DialogResult = true; } diff --git a/客户端/齐越慧眼/齐越慧眼/cefhelper/CefRequestHandler.cs b/客户端/齐越慧眼/齐越慧眼/cefhelper/CefRequestHandler.cs index 219c2e0..d9e0ac9 100644 --- a/客户端/齐越慧眼/齐越慧眼/cefhelper/CefRequestHandler.cs +++ b/客户端/齐越慧眼/齐越慧眼/cefhelper/CefRequestHandler.cs @@ -10,6 +10,7 @@ using System.Text; using System.Text.RegularExpressions; using System.Windows; using 齐越慧眼.UserControls; +using 齐越慧眼.Windows; namespace 齐越慧眼.cefhelper { @@ -49,9 +50,14 @@ namespace 齐越慧眼.cefhelper { Brower2 = brower; } + public MyResourceRequestHandlerFactory(CompetingWindow brower) + { + Brower3 = brower; + } public SomeBrowerControl Brower2; public BrowerControl Brower; + public CompetingWindow Brower3; protected override IResourceRequestHandler GetResourceRequestHandler(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IRequest request, bool isNavigation, bool isDownload, string requestInitiator, ref bool disableDefaultHandling) { @@ -59,7 +65,10 @@ namespace 齐越慧眼.cefhelper { return new MyResourceRequestHandler(Brower); } - + if (Brower3 != null) + { + return new MyResourceRequestHandler(Brower3); + } return new MyResourceRequestHandler(Brower2); } } @@ -74,15 +83,23 @@ namespace 齐越慧眼.cefhelper { Brower2 = brower; } + public MyResourceRequestHandler(CompetingWindow brower) + { + Brower3 = brower; + } public SomeBrowerControl Brower2; public BrowerControl Brower; + public CompetingWindow Brower3; protected override bool OnResourceResponse(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IRequest request, IResponse response) { if (Brower != null) Brower.OnUrlEnd(request.Url); else + if(Brower2!=null) Brower2.OnUrlEnd(request.Url); + else if(Brower3!=null) + Brower3.OnUrlEnd(request.Url); return base.OnResourceResponse(chromiumWebBrowser, browser, frame, request, response); } diff --git a/客户端/齐越慧眼/齐越慧眼/vuepage/client/src/views/competing/Index.vue b/客户端/齐越慧眼/齐越慧眼/vuepage/client/src/views/competing/Index.vue index 7e57597..109900c 100644 --- a/客户端/齐越慧眼/齐越慧眼/vuepage/client/src/views/competing/Index.vue +++ b/客户端/齐越慧眼/齐越慧眼/vuepage/client/src/views/competing/Index.vue @@ -123,9 +123,9 @@
-
查找竞品
+
查找竞品
完成分析
-
编辑修改
+
编辑修改
放弃
@@ -181,6 +181,7 @@ export default { }, mounted() { window.getDatas = this.getDatas; + window.reloaddata=this.reloaddata; this.getDatas(0); this.getTabCount(); }, @@ -195,6 +196,13 @@ export default { } return '未添加竞品' }, + reloaddata(){ + this.getDatas(0); + }, + onShowWindow(item,type){ + if( hyCoreModel.onShowWindow(JSON.stringify(item),type)) + this.reloaddata() + }, getTop1Data(items){ if(items&&items.length>0) { @@ -360,6 +368,11 @@ export default { }) }, changeTab(e) { + if(e!='-1') + { + this.$router.push({name:'item',params:{tabId:e} }) + return + } this.getDatas(e); this.currentTab = e; this.pagination.current = 1; diff --git a/客户端/齐越慧眼/齐越慧眼/vuepage/client/src/views/items/Index.vue b/客户端/齐越慧眼/齐越慧眼/vuepage/client/src/views/items/Index.vue index 9ed761c..39cc8d7 100644 --- a/客户端/齐越慧眼/齐越慧眼/vuepage/client/src/views/items/Index.vue +++ b/客户端/齐越慧眼/齐越慧眼/vuepage/client/src/views/items/Index.vue @@ -1,6 +1,11 @@