Browse Source

增加货源管理web菜单

yijia
shanji 2 years ago
parent
commit
25ed48e5eb
  1. 13
      BBWYB.Client/BBWYB.Client.csproj
  2. 2
      BBWYB.Client/GlobalContext.cs
  3. 3
      BBWYB.Client/ViewModels/MainViewModel.cs
  4. 14
      BBWYB.Client/Views/WebB/WebB_GoodsSource.xaml
  5. 104
      BBWYB.Client/Views/WebB/WebB_GoodsSource.xaml.cs

13
BBWYB.Client/BBWYB.Client.csproj

@ -53,4 +53,17 @@
<Resource Include="Resources\Images\defaultItem.png" />
</ItemGroup>
<ItemGroup>
<Compile Update="Views\WebB\WebB_GoodsSource.xaml.cs">
<SubType>Code</SubType>
</Compile>
</ItemGroup>
<ItemGroup>
<Page Update="Views\WebB\WebB_GoodsSource.xaml">
<XamlRuntime>$(DefaultXamlRuntime)</XamlRuntime>
<SubType>Designer</SubType>
</Page>
</ItemGroup>
</Project>

2
BBWYB.Client/GlobalContext.cs

@ -22,7 +22,7 @@ namespace BBWYB.Client
{
public GlobalContext()
{
BBWYBApiVersion = "10035";
BBWYBApiVersion = "10036";
}
private User user;

3
BBWYB.Client/ViewModels/MainViewModel.cs

@ -109,7 +109,8 @@ namespace BBWYB.Client.ViewModels
ChildList = new List<MenuModel>()
{
new MenuModel(){ Name="订单列表Bata",Url="/Views/WebB/WebB.xaml" },
new MenuModel(){ Name="绩效考核",Url="/Views/WebB/WebB_KPI.xaml" }
new MenuModel(){ Name="绩效考核",Url="/Views/WebB/WebB_KPI.xaml" },
new MenuModel(){ Name="货源管理",Url="/Views/WebB/WebB_GoodsSource.xaml" }
}
});
MenuList.Add(new MenuModel()

14
BBWYB.Client/Views/WebB/WebB_GoodsSource.xaml

@ -0,0 +1,14 @@
<Page x:Class="BBWYB.Client.Views.WebB.WebB_GoodsSource"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:BBWYB.Client.Views.WebB"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="800"
Title="WebB">
<Grid x:Name="grid">
</Grid>
</Page>

104
BBWYB.Client/Views/WebB/WebB_GoodsSource.xaml.cs

@ -0,0 +1,104 @@
using CommunityToolkit.Mvvm.Messaging;
using CommunityToolkit.Mvvm.Messaging.Messages;
using Microsoft.Extensions.DependencyInjection;
using System.Windows;
using System.Windows.Controls;
namespace BBWYB.Client.Views.WebB
{
/// <summary>
/// WebB.xaml 的交互逻辑
/// </summary>
public partial class WebB_GoodsSource : Page
{
private WebView2Manager w2m;
private bool isNavigated;
private GlobalContext globalContext;
public WebB_GoodsSource()
{
InitializeComponent();
this.Loaded += WebB_Loaded;
this.Unloaded += WebB_Unloaded;
//WeakReferenceMessenger.Default.Register<Message_WebB_Refresh>(this, (o, x) =>
//{
// this.Dispatcher.Invoke(() =>
// {
// _ = w2m.wb2.ExecuteScriptAsync("window.location.reload();");
// });
//});
//WeakReferenceMessenger.Default.Register<Message_WebB_RefreshPack>(this, (o, x) =>
//{
// this.Dispatcher.Invoke(() =>
// {
// _ = w2m.wb2.ExecuteScriptAsync("window.BBWY_B_WebContex('PACK_CONFIG_SUCCESS');");
// });
//});
}
private void WebB_Unloaded(object sender, RoutedEventArgs e)
{
grid.Children.Remove(w2m.wb2);
//w2m.wb2.Dispose();
w2m.Close();
WeakReferenceMessenger.Default.UnregisterAll(this);
}
private void WebB_Loaded(object sender, System.Windows.RoutedEventArgs e)
{
var sp = (App.Current as App).ServiceProvider;
using (var s = sp.CreateScope())
{
w2m = s.ServiceProvider.GetRequiredService<WebView2Manager>();
globalContext = s.ServiceProvider.GetRequiredService<GlobalContext>();
}
#if DEBUG
var url = "http://192.168.1.2/#/goods-source";
var registerName = "webTestContext";
//var url = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "s.html");
#else
var url = "http://qtbbwy.qiyue666.com/#/goods-source";
var registerName = "webContext";
#endif
w2m.CoreWebView2InitializationCompleted = (e) =>
{
w2m.wb2.CoreWebView2.AddHostObjectToScript(registerName, this.globalContext);
isNavigated = true;
w2m.wb2.CoreWebView2.Navigate(url);
};
w2m.Init("bbwyb_web");
w2m.wb2.SetValue(Grid.RowProperty, 1);
w2m.wb2.Margin = new Thickness(1, 0, 1, 0);
//grid.Children.Clear();
grid.Children.Add(w2m.wb2);
if (w2m.IsInitializationCompleted && !isNavigated)
{
w2m.wb2.CoreWebView2.Navigate(url);
//w2m.wb2.CoreWebView2.NavigateToString(content);
isNavigated = true;
}
}
}
//public class Message_WebB_GoodsSource_Refresh : ValueChangedMessage<object>
//{
// public Message_WebB_GoodsSource_Refresh(object value) : base(value)
// {
// }
//}
//public class Message_WebB_GoodsSource_RefreshPack : ValueChangedMessage<object>
//{
// public Message_WebB_GoodsSource_RefreshPack(object value) : base(value)
// {
// }
//}
}
Loading…
Cancel
Save