diff --git a/BBWY.Client/APIServices/DictionaryService.cs b/BBWY.Client/APIServices/DictionaryService.cs new file mode 100644 index 00000000..b3deba82 --- /dev/null +++ b/BBWY.Client/APIServices/DictionaryService.cs @@ -0,0 +1,27 @@ +using BBWY.Client.Models.APIModel; +using BBWY.Client.Models.APIModel.Request; +using BBWY.Common.Http; +using BBWY.Common.Models; +using System; +using System.Collections.Generic; +using System.Net.Http; +using System.Text; + +namespace BBWY.Client.APIServices +{ + public class DictionaryService : BaseApiService, IDenpendency + { + public DictionaryService(RestApiService restApiService, GlobalContext globalContext) : base(restApiService, globalContext) + { + } + + + + public ApiResponse<GetDictionaryByKeyResponse> GetDictionaryByKey(string key) + { + return SendRequest<GetDictionaryByKeyResponse>(globalContext.QKApiHost, $"api/Dictionary/GetDictionaryByKey?key={key}", + null + , null, HttpMethod.Get); + } + } +} diff --git a/BBWY.Client/APIServices/PackTaskService.cs b/BBWY.Client/APIServices/PackTaskService.cs index ff12be0f..7159590b 100644 --- a/BBWY.Client/APIServices/PackTaskService.cs +++ b/BBWY.Client/APIServices/PackTaskService.cs @@ -331,14 +331,30 @@ namespace BBWY.Client.APIServices /// <returns></returns> public ApiResponse<bool> CompeteSealBox( CompeteSealBox CompeteSealBoxs) { - return SendRequest<bool>(globalContext.QKApiHost, "api/PackTask/CompeteSealBox", new + return SendRequest<bool>(globalContext.QKApiHost, "api/PackTask/CompeteSealBox", CompeteSealBoxs, null, HttpMethod.Post); + } + + + + /// <summary> + /// 获取待落仓列表 + /// </summary> + /// <param name="orderId"></param> + /// <returns></returns> + public ApiResponse<SearchWaitFallWareResponse> SearchWaitFallWareList(string ShopName = null, long? TaskId = null, string SkuId = null, int PageIndex = 1 + , int PageSize = 10) + { + return SendRequest<SearchWaitFallWareResponse>(globalContext.QKApiHost, "api/PackTask/SearchWaitFallWareList", new { - CompeteSealBoxs + ShopName, + TaskId, + SkuId, + PageIndex, + PageSize }, null, HttpMethod.Post); } - } public class CompeteSealBox diff --git a/BBWY.Client/BBWYAppSettings.json b/BBWY.Client/BBWYAppSettings.json index 34888905..9622efaf 100644 --- a/BBWY.Client/BBWYAppSettings.json +++ b/BBWY.Client/BBWYAppSettings.json @@ -4,6 +4,6 @@ "MDSApiHost": "http://mdsapi.qiyue666.com", "JOSApiHost": "", "1688ApiHost": "", - "QKApiHost": "http://localhost:8080" - // "QKApiHost": "http://qiku.qiyue666.com" + //"QKApiHost": "http://localhost:8080" + "QKApiHost": "http://qiku.qiyue666.com" } \ No newline at end of file diff --git a/BBWY.Client/Models/APIModel/Response/Dictionary/GetDictionaryByKeyResponse.cs b/BBWY.Client/Models/APIModel/Response/Dictionary/GetDictionaryByKeyResponse.cs new file mode 100644 index 00000000..491c9a46 --- /dev/null +++ b/BBWY.Client/Models/APIModel/Response/Dictionary/GetDictionaryByKeyResponse.cs @@ -0,0 +1,34 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace BBWY.Client.Models.APIModel +{ + public class GetDictionaryByKeyResponse + { + /// <summary> + /// 字典类型 + /// </summary> + public string Key { get; set; } + /// <summary> + /// 字典类型名称 + /// </summary> + public string KeyName { get; set; } + /// <summary> + /// 字典值列表 + /// </summary> + public IList<DicValue> DicValueList { get; set; } + } + + public class DicValue + { + /// <summary> + /// 字典值 + /// </summary> + public string Value { get; set; } + /// <summary> + /// 字典值标签 + /// </summary> + public string ValueName { get; set; } + } +} diff --git a/BBWY.Client/Models/APIModel/Response/PackTask/ProductSkuCountsResponse.cs b/BBWY.Client/Models/APIModel/Response/PackTask/ProductSkuCountsResponse.cs index e6dd9cd9..51a9a651 100644 --- a/BBWY.Client/Models/APIModel/Response/PackTask/ProductSkuCountsResponse.cs +++ b/BBWY.Client/Models/APIModel/Response/PackTask/ProductSkuCountsResponse.cs @@ -36,5 +36,10 @@ namespace BBWY.Client.Models.APIModel.Response.PackTask /// 待出库数 /// </summary> public int? WaitOutbound { get; set; } + + /// <summary> + /// 待落仓 + /// </summary> + public int? WaitFallWareCount { get; set; } } } diff --git a/BBWY.Client/Models/APIModel/Response/PackTask/SearchWaitFallWareResponse.cs b/BBWY.Client/Models/APIModel/Response/PackTask/SearchWaitFallWareResponse.cs new file mode 100644 index 00000000..c52aec33 --- /dev/null +++ b/BBWY.Client/Models/APIModel/Response/PackTask/SearchWaitFallWareResponse.cs @@ -0,0 +1,111 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace BBWY.Client.Models.APIModel +{ + public class SearchWaitFallWareResponse + { + /// <summary> + /// 数量 + /// </summary> + public int TotalCount { get; set; } + + + public IList<WaitFallWareModelResponse> WaitFallWareList { get; set; } + } + + + + + + + public class WaitFallWareModelResponse + { + /// <summary> + /// 店铺Id + /// </summary> + public string ShopId { get; set; } + /// <summary> + /// 仓库Id(同一个店铺 唯一) + /// </summary> + public string WareId { get; set; } + /// <summary> + /// 店铺名称 + /// </summary> + public string ShopName { get; set; } + /// <summary> + /// 仓库名 + /// </summary> + public string WareName { get; set; } + + /// <summary> + /// 团队名称 + /// </summary> + public string DepartmentName { get; set; } + + /// <summary> + /// 对接人(同团队下) + /// </summary> + public List<string> AcceptUserNames { get; set; } + + /// <summary> + /// 封箱sku列表 + /// </summary> + public List<SealBoxSku> SealBoxSkus { get; set; } + + /// <summary> + /// 封箱的箱子数量 + /// </summary> + public int SealBoxCount { get; set; } + /// <summary> + /// 封箱id + /// </summary> + public long SealBoxId { get; set; } + } + + public class WaitFallWareModel + { + /// <summary> + /// 店铺Id + /// </summary> + public string ShopId { get; set; } + /// <summary> + /// 仓库Id(同一个店铺 唯一) + /// </summary> + public string WareId { get; set; } + /// <summary> + /// 店铺名称 + /// </summary> + public string ShopName { get; set; } + /// <summary> + /// 仓库名 + /// </summary> + public string WareName { get; set; } + + /// <summary> + /// 团队名称 + /// </summary> + public string DepartmentName { get; set; } + + /// <summary> + /// 对接人(同团队下) + /// </summary> + public string AcceptUserNames { get; set; } + + /// <summary> + /// 封箱sku列表 + /// </summary> + public List<SealBoxSku> SealBoxSkus { get; set; } + + /// <summary> + /// 封箱的箱子数量 + /// </summary> + public int SealBoxCount { get; set; } + /// <summary> + /// 封箱id + /// </summary> + public long SealBoxId { get; set; } + } + +} diff --git a/BBWY.Client/Models/APIModel/Response/PackTask/SearchWaitSealBoxResponse.cs b/BBWY.Client/Models/APIModel/Response/PackTask/SearchWaitSealBoxResponse.cs index 97988b82..bcedf94a 100644 --- a/BBWY.Client/Models/APIModel/Response/PackTask/SearchWaitSealBoxResponse.cs +++ b/BBWY.Client/Models/APIModel/Response/PackTask/SearchWaitSealBoxResponse.cs @@ -96,5 +96,6 @@ namespace BBWY.Client.Models.APIModel /// 打包sku产品数量 /// </summary> public int SkuCount { get; set; } + } } diff --git a/BBWY.Client/Models/Enums.cs b/BBWY.Client/Models/Enums.cs index b0da91f3..5cc2ec9c 100644 --- a/BBWY.Client/Models/Enums.cs +++ b/BBWY.Client/Models/Enums.cs @@ -233,7 +233,8 @@ 待封箱 = 4, 待出库 = 5, 已完成 = 6, - 已取消 = 7 + 已取消 = 7, + 待落仓 = 8 } diff --git a/BBWY.Client/Models/PackTask/SealBoxModel.cs b/BBWY.Client/Models/PackTask/SealBoxModel.cs index 7611a399..248d85e5 100644 --- a/BBWY.Client/Models/PackTask/SealBoxModel.cs +++ b/BBWY.Client/Models/PackTask/SealBoxModel.cs @@ -39,5 +39,11 @@ namespace BBWY.Client.Models.PackTask /// 封箱sku列表 /// </summary> public List<SealBoxSku> SealBoxSkus { get; set; } + + + /// <summary> + /// 封箱数 + /// </summary> + public int? SealBoxCount{ get; set; } } } diff --git a/BBWY.Client/ViewModels/PackTask/PublishTaskViewModel.cs b/BBWY.Client/ViewModels/PackTask/PublishTaskViewModel.cs index 6174e294..7f90713c 100644 --- a/BBWY.Client/ViewModels/PackTask/PublishTaskViewModel.cs +++ b/BBWY.Client/ViewModels/PackTask/PublishTaskViewModel.cs @@ -322,7 +322,6 @@ namespace BBWY.Client.ViewModels.PackTask public ICommand OpenSkuDetailCommand { get; set; } public ICommand CreateTaskCommand { get; set; } - public ICommand SearchSkuCommand { get; set; } private void SetBarCode() diff --git a/BBWY.Client/ViewModels/PackTask/WareHouseListViewModel.cs b/BBWY.Client/ViewModels/PackTask/WareHouseListViewModel.cs index 4f5df699..66377368 100644 --- a/BBWY.Client/ViewModels/PackTask/WareHouseListViewModel.cs +++ b/BBWY.Client/ViewModels/PackTask/WareHouseListViewModel.cs @@ -49,13 +49,28 @@ namespace BBWY.Client.ViewModels.PackTask } + + + private ObservableCollection<WaitFallWareModel> waitFallWareList; + /// <summary> + /// 待落仓列表 + /// </summary> + public ObservableCollection<WaitFallWareModel> WaitFallWareList { get => waitFallWareList; set { Set(ref waitFallWareList, value); } } + + + + private ObservableCollection<SealBoxModel> waitSealBoxModels; /// <summary> /// 分箱列表 /// </summary> public ObservableCollection<SealBoxModel> WaitSealBoxModels { get => waitSealBoxModels; set { Set(ref waitSealBoxModels, value); } } - + private ObservableCollection<PackTaskModel> packTaskList; + /// <summary> + /// 打包任务列表 + /// </summary> + public ObservableCollection<PackTaskModel> PackTaskList { get => packTaskList; set { Set(ref packTaskList, value); } } /// <summary> /// 查询时间段 @@ -143,27 +158,30 @@ namespace BBWY.Client.ViewModels.PackTask private string waitPackCount; /// <summary> - /// 待打包数 + /// 待打包任务数 /// </summary> public string WaitPackCount { get => waitPackCount; set { Set(ref waitPackCount, value); } } - private string waitSealBox; + private string waitSealBoxCount; /// <summary> - /// 带封箱数 + /// 带封箱任务数 /// </summary> - public string WaitSealBox { get => waitSealBox; set { Set(ref waitSealBox, value); } } + public string WaitSealBoxCount { get => waitSealBoxCount; set { Set(ref waitSealBoxCount, value); } } + + + + private string waitFallWareCount; + /// <summary> + /// 待落仓任务数 + /// </summary> + public string WaitFallWareCount { get => waitFallWareCount; set { Set(ref waitFallWareCount, value); } } + private string waitOutbound; /// <summary> - /// 待出库数 + /// 待出库任务数 /// </summary> public string WaitOutbound { get => waitOutbound; set { Set(ref waitOutbound, value); } } - //private int totalCount; - ///// <summary> - ///// 全部数量 - ///// </summary> - //public int TotalCount { get => totalCount; set { Set(ref totalCount, value); } } - public int PageIndex { get => pageIndex; set { Set(ref pageIndex, value); } } @@ -177,17 +195,6 @@ namespace BBWY.Client.ViewModels.PackTask private int? IsWorry { get; set; } public int? taskStatus { get; set; } - private ObservableCollection<PackTaskModel> packTaskList; - /// <summary> - /// 动态数据表 - /// </summary> - public ObservableCollection<PackTaskModel> PackTaskList { get => packTaskList; set { Set(ref packTaskList, value); } } - - //private ObservableCollection<FeesItemTypeDTO> feesItems; - ///// <summary> - ///// 动态数据表 - ///// </summary> - //public ObservableCollection<FeesItemTypeDTO> FeesItems { get => feesItems; set { Set(ref feesItems, value); } } public string searchDepartment; @@ -264,13 +271,27 @@ namespace BBWY.Client.ViewModels.PackTask CompeteSealBoxCommand = new RelayCommand<object>(CompeteSealBox); SetSealBoxCommand = new RelayCommand<object>(SetSealBox); + CompeteFallWareCommand = new RelayCommand<object>(CompeteFallWare); + } + + /// <summary> + /// 完成落仓(todo:) + /// </summary> + /// <param name="obj"></param> + private void CompeteFallWare(object obj) + { + //throw new NotImplementedException(); } private void SetSealBox(object obj) { - SetSealBoxWindow setSealBoxWindow = new SetSealBoxWindow(); - setSealBoxWindow.SendBoxCount= boxCount => { - BoxCount = boxCount; + + var model = (SealBoxModel)obj; + + SetSealBoxWindow setSealBoxWindow = new SetSealBoxWindow(model); + setSealBoxWindow.SendBoxCount = boxCount => + { + model.SealBoxCount = boxCount; }; setSealBoxWindow.ShowDialog(); } @@ -278,6 +299,7 @@ namespace BBWY.Client.ViewModels.PackTask #region 事件绑定 + public ICommand CompeteFallWareCommand { get; set; } public ICommand CompeteSealBoxCommand { get; set; } public ICommand SetTaskStatusCommand { get; set; } @@ -323,13 +345,12 @@ namespace BBWY.Client.ViewModels.PackTask BatchPurchaseService batchPurchaseService; - public int BoxCount { get; set; } private void CompeteSealBox(object obj) { + var model = (SealBoxModel)obj; - - if (BoxCount<=0) + if (model.SealBoxCount == null || model.SealBoxCount.Value <= 0) { System.Windows.MessageBox.Show("请先设置封箱数量"); return; @@ -339,7 +360,7 @@ namespace BBWY.Client.ViewModels.PackTask CompeteSealBox competeSealBox = new CompeteSealBox(); competeSealBox.WareId = objList.WareId; - competeSealBox.BoxCount = BoxCount; + competeSealBox.BoxCount = model.SealBoxCount.Value; competeSealBox.TaskId = objList.SealBoxSkus.Select(s => s.TaskId).ToArray(); var res = packTaskService.CompeteSealBox(competeSealBox); if (res != null && res.Success) @@ -362,7 +383,7 @@ namespace BBWY.Client.ViewModels.PackTask case PackTaskState.未到货: case PackTaskState.部分到货: - if (System.Windows.MessageBox.Show("是否确认收货?","提示", + if (System.Windows.MessageBox.Show("是否确认收货?", "提示", MessageBoxButton.YesNo, MessageBoxImage.Warning) != MessageBoxResult.Yes) return; @@ -476,7 +497,50 @@ namespace BBWY.Client.ViewModels.PackTask IsLoading = true; - if (TaskState == PackTaskState.待封箱) + if (TaskState == PackTaskState.待落仓) + Task.Factory.StartNew(() => + { + + + WaitFallWareList = new ObservableCollection<WaitFallWareModel>(); + var datas = packTaskService.SearchWaitFallWareList(SearchShopName, taskId, SearchSkuId, PageIndex, PageSize); + if (datas != null && datas.Data != null && datas.Success) + { + var dataModel = datas.Data; + OrderCount = dataModel.TotalCount; + foreach (var item in dataModel.WaitFallWareList) + { + App.Current.Dispatcher.Invoke(new Action(() => + { + WaitFallWareList.Add(new WaitFallWareModel + { + AcceptUserNames = string.Join("|", item.AcceptUserNames), + DepartmentName = item.DepartmentName, + SealBoxSkus = item.SealBoxSkus, + ShopId = item.ShopId, + ShopName = item.ShopName, + WareId = item.WareId, + WareName = item.WareName, + SealBoxCount = item.SealBoxCount, + SealBoxId = item.SealBoxId, + + }); + })); + + } + } + else + { + //App.Current.Dispatcher.BeginInvoke(new Action(() => + //{ + // new TipsWindow("查不到数据").Show(); + //})); + } + IsLoadCount(); + IsLoading = false; + + }); + else if (TaskState == PackTaskState.待封箱) Task.Factory.StartNew(() => { @@ -518,7 +582,6 @@ namespace BBWY.Client.ViewModels.PackTask }); else - Task.Factory.StartNew(() => { PackTaskList = new ObservableCollection<PackTaskModel>();//初始化数据 @@ -604,10 +667,6 @@ namespace BBWY.Client.ViewModels.PackTask } else { - //App.Current.Dispatcher.BeginInvoke(new Action(() => - //{ - // new TipsWindow("查不到数据").Show(); - //})); } IsLoadCount(); IsLoading = false; @@ -622,9 +681,9 @@ namespace BBWY.Client.ViewModels.PackTask private void IsLoadCount() { var packTaskResult = packTaskService.GetWareAllCount(); - if (packTaskResult != null && packTaskResult.Success) + if (packTaskResult != null && packTaskResult.Success && packTaskResult.Data != null) { - App.Current.Dispatcher.Invoke(() => + App.Current.Dispatcher.Invoke(new Action(() => { ArrivedCount = packTaskResult.Data.ArrivedCount.ToString(); NoArrivedCount = packTaskResult.Data.NoArrivedCount.ToString(); @@ -632,8 +691,9 @@ namespace BBWY.Client.ViewModels.PackTask WorryCount = packTaskResult.Data.WorryCount.ToString(); WaitOutbound = packTaskResult.Data.WaitOutbound?.ToString(); WaitPackCount = packTaskResult.Data.WaitPackCount?.ToString(); - WaitSealBox = packTaskResult.Data.WaitSealBox?.ToString(); - }); + WaitSealBoxCount = packTaskResult.Data.WaitSealBox?.ToString(); + WaitFallWareCount= packTaskResult.Data.WaitFallWareCount?.ToString(); + })); } } private void LoadIndex(int pageIndex) diff --git a/BBWY.Client/Views/PackTask/WaitFallWareControl.xaml b/BBWY.Client/Views/PackTask/WaitFallWareControl.xaml new file mode 100644 index 00000000..f78b1f81 --- /dev/null +++ b/BBWY.Client/Views/PackTask/WaitFallWareControl.xaml @@ -0,0 +1,296 @@ +<UserControl x:Class="BBWY.Client.Views.PackTask.WaitFallWareControl" + 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:BBWY.Client.Views.PackTask" + mc:Ignorable="d" Background="white" + xmlns:c="clr-namespace:BBWY.Controls;assembly=BBWY.Controls" + xmlns:ctr="clr-namespace:BBWY.Client.Converters" + xmlns:sys="clr-namespace:System;assembly=mscorlib" + xmlns:cmodel="clr-namespace:BBWY.Client.Models" + DataContext="{Binding WareHouseList,Source={StaticResource Locator}}" + xmlns:b="http://schemas.microsoft.com/xaml/behaviors" + d:DesignHeight="450" d:DesignWidth="1500"> + <UserControl.Resources> + <ObjectDataProvider x:Key="storageTypeProvider" MethodName="GetValues" ObjectType="{x:Type sys:Enum}"> + <ObjectDataProvider.MethodParameters> + <x:Type TypeName="cmodel:StorageType"/> + </ObjectDataProvider.MethodParameters> + </ObjectDataProvider> + <ctr:OrderStorageTypeOptionConverter x:Key="ostConverter"/> + <ctr:ProfitRatioConverter x:Key="profitRatioConverter"/> + <ctr:WaybillNoConverter x:Key="waybillConverter"/> + <ctr:MultiParameterTransferConverter x:Key="mptConverter"/> + <ctr:SaleGrossProfitConverter x:Key="sgpcConverter"/> + </UserControl.Resources> + <Grid> + <Grid.RowDefinitions> + <RowDefinition Height="35"/> + <RowDefinition /> + </Grid.RowDefinitions> + <Border BorderBrush="{StaticResource Border.Brush}" BorderThickness="1,1,1,0" + Background="#F2F2F2"> + <Grid> + <Grid.ColumnDefinitions> + <ColumnDefinition Width="400"/> + <ColumnDefinition Width="80"/> + <ColumnDefinition Width="110"/> + <ColumnDefinition MinWidth="80"/> + <ColumnDefinition Width="100"/> + </Grid.ColumnDefinitions> + <TextBlock Text="商品信息" Style="{StaticResource middleTextBlock}"/> + <TextBlock Text="数量" Grid.Column="1" Style="{StaticResource middleTextBlock}"/> + <TextBlock Text="落仓材料" Grid.Column="2" Style="{StaticResource middleTextBlock}"/> + <TextBlock Text=" " Grid.Column="3" Style="{StaticResource middleTextBlock}"/> + <TextBlock Text="操作" Grid.Column="4" Style="{StaticResource middleTextBlock}"/> + <!--<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}"/>--> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="1"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="2"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="3"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="4"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="5"/> + <!--<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="5"/>--> + <!--<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="6"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="7"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="8"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="9"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="10"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="11"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="12"/>--> + </Grid> + </Border> + <!--ItemsSource="{Binding OrderList}"--> + <ListBox x:Name="listbox_order" + Grid.Row="7" + ItemsSource="{Binding WaitFallWareList}" + ItemContainerStyle="{StaticResource NoBgListBoxItemStyle}" + BorderBrush="{StaticResource Border.Brush}" + BorderThickness="1,1,1,0" + Foreground="{StaticResource Text.Color}"> + <ListBox.ItemTemplate> + <DataTemplate> + <Grid Width="{Binding ActualWidth,ElementName=listbox_order,Converter={StaticResource widthConverter},ConverterParameter=-0}" + MinHeight="100"> + <Grid.RowDefinitions> + <RowDefinition Height="30"/> + <RowDefinition MinHeight="90"/> + </Grid.RowDefinitions> + <Grid Background="#F2F2F2" > + <Grid.ColumnDefinitions> + <ColumnDefinition Width="400"/> + <ColumnDefinition Width="80"/> + <ColumnDefinition Width="110"/> + <ColumnDefinition MinWidth="80"/> + <ColumnDefinition Width="100"/> + </Grid.ColumnDefinitions> + <StackPanel Orientation="Horizontal" Grid.Column="0" Grid.ColumnSpan="11"> + + <TextBlock Text="店铺:" Style="{StaticResource middleTextBlock}" Margin="10 0 0 0"/> + <c:BButton Content="{Binding ShopName}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center" + Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}" + CommandParameter="{Binding ShopName}" + Margin=" 5,0,7,0"/> + + + <TextBlock VerticalAlignment="Center" Text="仓库:" Margin="16,0,0,0" /> + <c:BButton Content="{Binding WareName}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center" + Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}" + CommandParameter="{Binding WareName}" + Margin=" 5,0,7,0"/> + + <Label Width="70" Height="25" HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="{Binding TaskState}" Foreground="White" Background="{Binding TaskState,Converter={StaticResource objConverter} , ConverterParameter=已完成:#02a7f0:#facd91 }" Margin="5,0,0,0"/> + + <TextBlock VerticalAlignment="Center" Text="部门:" Margin="14,0,0,0" /> + <c:BButton Content="{Binding DepartmentName}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center" + Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}" + CommandParameter="{Binding DepartmentName}" + Margin=" 5,0,0,0"/> + + <TextBlock VerticalAlignment="Center" Text="对接人:" Margin="16,0,0,0" /> + <TextBlock VerticalAlignment="Center" Text="{Binding AcceptUserName}" Margin="5,0,0,0" /> + </StackPanel> + + </Grid> + <Grid Grid.Row="1"> + <Grid.ColumnDefinitions> + <ColumnDefinition Width="400"/> + <ColumnDefinition Width="80"/> + <ColumnDefinition Width="110"/> + <ColumnDefinition MinWidth="80"/> + <ColumnDefinition Width="100"/> + </Grid.ColumnDefinitions> + + <ListBox x:Name="listbox_orerSku" ItemsSource="{Binding SealBoxSkus}" + Style="{StaticResource NoScrollViewListBoxStyle}" + ItemContainerStyle="{StaticResource NoBgListBoxItemStyle}" > + <ListBox.ItemTemplate> + <DataTemplate> + <Grid MinHeight="100" Width="{Binding ActualWidth,ElementName=listbox_orerSku}"> + <Grid> + <Grid.ColumnDefinitions> + <ColumnDefinition Width="90"/> + <ColumnDefinition/> + <ColumnDefinition/> + </Grid.ColumnDefinitions> + + <!--{Binding Logo}--> + <c:BAsyncImage UrlSource="{Binding Logo}" + Width="80" DecodePixelWidth="80" + VerticalAlignment="Top" Margin="11,10,0,10" + Cursor="Hand"> + <b:Interaction.Triggers> + <b:EventTrigger EventName="PreviewMouseLeftButtonDown"> + <b:InvokeCommandAction Command="{Binding DataContext.OpenSkuDetailCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type Page}}}"> + <b:InvokeCommandAction.CommandParameter> + <MultiBinding Converter="{StaticResource mptConverter}"> + <Binding Path="DataContext.Id" RelativeSource="{RelativeSource Mode=FindAncestor,AncestorType={x:Type ListBox},AncestorLevel=1}"/> + <Binding Path="Id"/> + </MultiBinding> + </b:InvokeCommandAction.CommandParameter> + </b:InvokeCommandAction> + </b:EventTrigger> + </b:Interaction.Triggers> + </c:BAsyncImage> + + <StackPanel Grid.Column="1" Orientation="Vertical" Margin="8,15,0,10"> + <StackPanel Orientation="Horizontal" Margin="0 0 0 13"> + <TextBlock Text="SKU:" Style="{StaticResource middleTextBlock}" /> + <c:BButton Content="{Binding SkuId}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" + Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}" + CommandParameter="{Binding SkuId}" + Margin=" 5,0,0,0"/> + </StackPanel> + <TextBlock Foreground="{StaticResource Text.Gray}" TextTrimming="CharacterEllipsis"> + <TextBlock.ToolTip> + <ToolTip Style="{StaticResource OrderCouponToolipStyle}"> + <TextBlock Text="{Binding SkuTitle,Mode=TwoWay}"/> + </ToolTip> + </TextBlock.ToolTip> + <Run Text="SKU名称:"/> + <Run Text="{Binding SkuTitle}"/> + </TextBlock> + <TextBlock Foreground="{StaticResource Text.Gray}" TextWrapping="Wrap" Margin="0,13,0 0"> + <Run Text="品名:"/> + <Run Text="{Binding BrandName}"/> + </TextBlock> + + + + + </StackPanel> + <StackPanel Orientation="Vertical" Grid.Column="2" Margin="20,15,0,10"> + <StackPanel Orientation="Horizontal" > + <TextBlock Foreground="{StaticResource Text.Gray}"> + <Run Text="货号:" /> + </TextBlock> + <c:BButton Content="{Binding ProductNo}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Top" + Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}" + CommandParameter="{Binding ProductNo}" + Margin=" 5,0,0,0"/> + </StackPanel> + <StackPanel Grid.Column="2" Orientation="Horizontal" Margin="0,13,0,5"> + <TextBlock Foreground="{StaticResource Text.Gray}"> + <Run Text="任务ID:" /> + </TextBlock> + <c:BButton Content="{Binding TaskId}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Top" + Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}" + CommandParameter="{Binding TaskId}" + Margin=" 5,0,0,0"/> + </StackPanel> + + </StackPanel> + + </Grid> + + <Border Grid.Row="0" VerticalAlignment="Bottom" Height="1" Background="{StaticResource Border.Brush}"/> + </Grid> + </DataTemplate> + </ListBox.ItemTemplate> + </ListBox> + + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="0"/> + <ListBox x:Name="listbox_skuCount" ItemsSource="{Binding SealBoxSkus}" + Style="{StaticResource NoScrollViewListBoxStyle}" Grid.Column="1" + ItemContainerStyle="{StaticResource NoBgListBoxItemStyle}" > + <ListBox.ItemTemplate> + <DataTemplate> + <Grid MinHeight="100" Width="{Binding ActualWidth,ElementName=listbox_skuCount}"> + <Grid> + <TextBlock x:Name="txt_storeName" + Text="{Binding SkuCount}" + TextWrapping="Wrap" + HorizontalAlignment="Center" VerticalAlignment="Center" + /> + </Grid> + + <Border Grid.Row="0" VerticalAlignment="Bottom" Height="1" Background="{StaticResource Border.Brush}"/> + </Grid> + + </DataTemplate> + </ListBox.ItemTemplate> + </ListBox> + + + + + <Grid Grid.Column="2" > + <StackPanel VerticalAlignment="Center" HorizontalAlignment="Center"> + + + <!--<c:BButton Grid.Column="11" HorizontalAlignment="Stretch" Style="{StaticResource LinkButton}" VerticalAlignment="Center" Content="设置" + Command="{Binding DataContext.SetSealBoxCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type Page}}}" + CommandParameter="{Binding}" + > + + </c:BButton>--> + + + + </StackPanel> + </Grid> + <Grid Grid.Column="3" > + + </Grid> + + <Grid Grid.Column="4" > + <StackPanel VerticalAlignment="Center" HorizontalAlignment="Center"> + + + <c:BButton Grid.Column="11" HorizontalAlignment="Stretch" Style="{StaticResource LinkButton}" VerticalAlignment="Center" Content="完成" + Command="{Binding DataContext.CompeteFallWareCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type Page}}}" + CommandParameter="{Binding}" + > + + </c:BButton> + + + + </StackPanel> + </Grid> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="1"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="2"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="3"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="4"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="5"/> + <!--<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="5"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="6"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="7"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="8"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="9"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="10"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="11"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="12"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="13"/>--> + + </Grid> + <Border Grid.Row="1" VerticalAlignment="Bottom" Height="1" Background="{StaticResource Border.Brush}"/> + </Grid> + + </DataTemplate> + </ListBox.ItemTemplate> + </ListBox> + </Grid> +</UserControl> diff --git a/BBWY.Client/Views/PackTask/WaitFallWareControl.xaml.cs b/BBWY.Client/Views/PackTask/WaitFallWareControl.xaml.cs new file mode 100644 index 00000000..ff4a7f1f --- /dev/null +++ b/BBWY.Client/Views/PackTask/WaitFallWareControl.xaml.cs @@ -0,0 +1,26 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Navigation; +using System.Windows.Shapes; + +namespace BBWY.Client.Views.PackTask +{ + /// <summary> + /// WaitFallWareControl.xaml 的交互逻辑 + /// </summary> + public partial class WaitFallWareControl : UserControl + { + public WaitFallWareControl() + { + InitializeComponent(); + } + } +} diff --git a/BBWY.Client/Views/PackTask/WareHouseList.xaml b/BBWY.Client/Views/PackTask/WareHouseList.xaml index d28b50bc..a97aceb7 100644 --- a/BBWY.Client/Views/PackTask/WareHouseList.xaml +++ b/BBWY.Client/Views/PackTask/WareHouseList.xaml @@ -153,7 +153,9 @@ <RadioButton Height="35" Width="126" VerticalAlignment="Center" Command="{Binding SetTaskStateCommand}" CommandParameter="{x:Static cmodel:PackTaskState.待打包}" Content="待打包" Tag="{Binding WaitPackCount,Mode=TwoWay}"/> - <RadioButton Height="35" Width="126" VerticalAlignment="Center" Command="{Binding SetTaskStateCommand}" CommandParameter="{x:Static cmodel:PackTaskState.待封箱}" Content="待封箱" Tag="{Binding WaitSealBox,Mode=TwoWay}"/> + <RadioButton Height="35" Width="126" VerticalAlignment="Center" Command="{Binding SetTaskStateCommand}" CommandParameter="{x:Static cmodel:PackTaskState.待封箱}" Content="待封箱" Tag="{Binding WaitSealBoxCount,Mode=TwoWay}"/> + + <RadioButton Height="35" Width="126" VerticalAlignment="Center" Command="{Binding SetTaskStateCommand}" CommandParameter="{x:Static cmodel:PackTaskState.待落仓}" Content="待落仓" Tag="{Binding WaitFallWareCount,Mode=TwoWay}"/> <RadioButton Height="35" Width="126" VerticalAlignment="Center" Command="{Binding SetTaskStateCommand}" CommandParameter="{x:Static cmodel:PackTaskState.待出库}" Content="待出库" Tag="{Binding WaitOutbound,Mode=TwoWay}"/> @@ -169,8 +171,10 @@ <Border Grid.Row="2" Margin="0,5,0,0" BorderBrush="{StaticResource Border.Brush}" BorderThickness="0,1,0,0"/> <Grid Grid.Row="2" Margin="0,5,0,0"> - <local:WareHouseListControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待封箱:Collapsed:Visible}" x:Name="listbox_task" /> + <local:WaitFallWareControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待落仓:Visible:Collapsed}" /> + <local:WareHouseListControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待封箱|待落仓:Collapsed:Visible}" /> <local:WaitSealBoxControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待封箱:Visible:Collapsed}" /> + </Grid> diff --git a/BBWY.Client/Views/SealBox/SetSealBoxWindow.xaml.cs b/BBWY.Client/Views/SealBox/SetSealBoxWindow.xaml.cs index 704c5da2..c84d2c4b 100644 --- a/BBWY.Client/Views/SealBox/SetSealBoxWindow.xaml.cs +++ b/BBWY.Client/Views/SealBox/SetSealBoxWindow.xaml.cs @@ -1,6 +1,15 @@ -using BBWY.Controls; +using BBWY.Client.Extensions; +using BBWY.Client.Models.PackTask; +using BBWY.Controls; +using NPOI.HSSF.UserModel; +using NPOI.SS.UserModel; +using NPOI.XSSF.UserModel; using System; using System.Collections.Generic; +using System.Diagnostics; +using System.Drawing.Printing; +using System.IO; +using System.Reflection; using System.Text; using System.Windows; using System.Windows.Controls; @@ -9,7 +18,6 @@ using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; -using System.Windows.Shapes; namespace BBWY.Client.Views.SealBox { @@ -18,15 +26,51 @@ namespace BBWY.Client.Views.SealBox /// </summary> public partial class SetSealBoxWindow : BWindow { - public SetSealBoxWindow() + public SetSealBoxWindow(SealBoxModel sealBoxModel) { + SealBoxModel = sealBoxModel; InitializeComponent(); + LoadPrints(); + } + + + SealBoxModel SealBoxModel { get; set; } + /// <summary> + /// 获取打印机名称 + /// </summary> + private void LoadPrints() + { + var printingNames = PrinterSettings.InstalledPrinters;//获取本机的打印机数据 + int index = -1; + int selectIndex = 0; + foreach (string name in printingNames) + { + if (name == "Microsoft XPS Document Writer" || name == "Microsoft Print to PDF" || name == "Fax") + { + continue; + } + index++; + if (name.Contains("Deli")) + { + selectIndex = index; + } + cbPrint.Items.Add(name); + } + if (cbPrint.Items.Count > selectIndex) + { + cbPrint.SelectedIndex = selectIndex; + } } public Action<int> SendBoxCount { get; set; } private void BButton_Click(object sender, RoutedEventArgs e) { + + + + + int boxCount = 0; try { @@ -38,12 +82,103 @@ namespace BBWY.Client.Views.SealBox return; } - + PrintSealboxModel(cbPrint.Text, boxCount); //todo: 打印单子 if (SendBoxCount != null) SendBoxCount(boxCount); + this.Close(); + } + + private void PrintSealboxModel(string printName, int boxCount) + { + var applicationPath = System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); + + var excel = $"{applicationPath}/Resources/ExccelModel/sealbox.xlsx"; + + var newExccel = $"{applicationPath}/Resources/ExccelModel/newsealbox.xlsx"; + if (File.Exists(newExccel)) + { + File.Delete(newExccel); + } + FileStream fs = new FileStream(excel, FileMode.Open, FileAccess.Read); + XSSFWorkbook wb = new XSSFWorkbook(fs); + var sheet = wb.GetSheetAt(0); // 得到第一个sheet + + var nameCell = sheet.GetRow(0).GetCell(0); // name列,第2行 + var ageCell = sheet.GetRow(3).GetCell(0); // age列,第2行 + + + XSSFWorkbook wb2 = new XSSFWorkbook(); + //wb2.CreateSheet("Sheet1"); + sheet.CopyTo(wb2, "Sheet1", true, false); + var sheet2 = wb2.GetSheet("Sheet1"); + + + var nameCell2 = sheet2.GetRow(0).GetCell(1); + nameCell2.SetCellValue(SealBoxModel.ShopName); + + sheet2.GetRow(3).GetCell(1).SetCellValue(SealBoxModel.WareName); + + StringBuilder sb = new StringBuilder(); + int totalCount = 0; + for (int i = 0; i < SealBoxModel.SealBoxSkus.Count; i++) + { + var title = SealBoxModel.SealBoxSkus[i].SkuTitle; + //if (title.Length>5) + //{ + // title = title.Substring(0,5); + //} + totalCount += SealBoxModel.SealBoxSkus[i].SkuCount; + sheet2.GetRow(i + 6).GetCell(1).SetCellValue($"名称:{title}"); + sheet2.GetRow(i + 6).GetCell(2).SetCellValue($"SKU:{SealBoxModel.SealBoxSkus[i].SkuId}"); + sheet2.GetRow(i + 6).GetCell(3).SetCellValue($"数量:{SealBoxModel.SealBoxSkus[i].SkuCount}"); + + } + sheet2.GetRow(25).GetCell(1).SetCellValue(totalCount); + sheet2.GetRow(28).GetCell(1).SetCellValue(boxCount); + FileStream fs1 = new FileStream(newExccel, FileMode.OpenOrCreate, FileAccess.ReadWrite); + wb2.Write(fs1); + fs1.Close(); + fs1.Dispose(); + } + + } + + public class PrintDocumentAdapter : PrintDocument + { + FileStream fs; + public PrintDocumentAdapter(FileStream fs) + { + this.fs = fs; + } + + protected override void OnPrintPage(PrintPageEventArgs e) + { + if (fs == null) return; + + IWorkbook workbook = null; + if (fs.Name.EndsWith(".xls")) // XLS文件 + { + workbook = new HSSFWorkbook(fs); + } + else if (fs.Name.EndsWith(".xlsx")) // XLSX文件 + { + workbook = new XSSFWorkbook(fs); + } + + if (workbook != null) + { + ISheet sheet = workbook.GetSheetAt(0); // 第一个sheet + + // 使用NPOI的ExcelPrinting类打印sheet + ExcelPrinting printer = new ExcelPrinting(sheet); + printer.PrintArea(e.Graphics, e.MarginBounds, sheet.SheetName); + + fs.Close(); + } + base.OnPrintPage(e); } } } diff --git a/BBWY.Client/Views/PackTask/WaitSealBoxControl.xaml b/BBWY.Client/Views/SealBox/WaitSealBoxControl.xaml similarity index 86% rename from BBWY.Client/Views/PackTask/WaitSealBoxControl.xaml rename to BBWY.Client/Views/SealBox/WaitSealBoxControl.xaml index e9d6efa6..08d8d329 100644 --- a/BBWY.Client/Views/PackTask/WaitSealBoxControl.xaml +++ b/BBWY.Client/Views/SealBox/WaitSealBoxControl.xaml @@ -29,36 +29,42 @@ <RowDefinition Height="35"/> <RowDefinition /> </Grid.RowDefinitions> - <Grid> - <Grid.ColumnDefinitions> - <ColumnDefinition Width="400"/> - <ColumnDefinition Width="80"/> - <ColumnDefinition Width="80"/> - <ColumnDefinition MinWidth="80"/> - <ColumnDefinition Width="100"/> - </Grid.ColumnDefinitions> - <TextBlock Text="商品信息" Style="{StaticResource middleTextBlock}"/> - <TextBlock Text="数量" Grid.Column="1" Style="{StaticResource middleTextBlock}"/> - <TextBlock Text="封箱数量" Grid.Column="2" Style="{StaticResource middleTextBlock}"/> - <TextBlock Text=" " Grid.Column="3" Style="{StaticResource middleTextBlock}"/> - <TextBlock Text="操作" Grid.Column="4" Style="{StaticResource middleTextBlock}"/> - <Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}"/> - <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}"/> - <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="1"/> - <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="2"/> - <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="3"/> - <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="4"/> - <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="5"/> - <!--<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="5"/>--> - <!--<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="6"/> + + + <Border BorderBrush="{StaticResource Border.Brush}" BorderThickness="1,1,1,0" + Background="#F2F2F2"> + <Grid> + <Grid.ColumnDefinitions> + <ColumnDefinition Width="400"/> + <ColumnDefinition Width="80"/> + <ColumnDefinition Width="80"/> + <ColumnDefinition MinWidth="80"/> + <ColumnDefinition Width="100"/> + </Grid.ColumnDefinitions> + <TextBlock Text="商品信息" Style="{StaticResource middleTextBlock}"/> + <TextBlock Text="数量" Grid.Column="1" Style="{StaticResource middleTextBlock}"/> + <TextBlock Text="封箱数量" Grid.Column="2" Style="{StaticResource middleTextBlock}"/> + <TextBlock Text=" " Grid.Column="3" Style="{StaticResource middleTextBlock}"/> + <TextBlock Text="操作" Grid.Column="4" Style="{StaticResource middleTextBlock}"/> + <!--<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}"/>--> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="1"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="2"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="3"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="4"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="5"/> + <!--<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="5"/>--> + <!--<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="6"/> <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="7"/> <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="8"/> <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="9"/> <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="10"/> <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="11"/> <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="12"/>--> - </Grid> - <!--ItemsSource="{Binding OrderList}"--> + + <!--<Border Height="1" VerticalAlignment="Top" Background="{StaticResource Border.Brush}" Grid.ColumnSpan="6"/>--> + </Grid> + </Border> <ListBox x:Name="listbox_order" Grid.Row="7" ItemsSource="{Binding WaitSealBoxModels}" @@ -97,7 +103,7 @@ CommandParameter="{Binding WareName}" Margin=" 5,0,7,0"/> - <Label Width="70" Height="25" HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="{Binding TaskState}" Foreground="White" Background="{Binding TaskState,Converter={StaticResource objConverter} , ConverterParameter=已完成:#02a7f0:#facd91 }" Margin="5,0,0,0"/> + <!--<Label Width="70" Height="25" HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="{Binding TaskState}" Foreground="White" Background="{Binding TaskState,Converter={StaticResource objConverter} , ConverterParameter=已完成:#02a7f0:#facd91 }" Margin="5,0,0,0"/>--> <TextBlock VerticalAlignment="Center" Text="部门:" Margin="14,0,0,0" /> <c:BButton Content="{Binding DepartmentName}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center" @@ -142,8 +148,7 @@ <b:InvokeCommandAction Command="{Binding DataContext.OpenSkuDetailCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type Page}}}"> <b:InvokeCommandAction.CommandParameter> <MultiBinding Converter="{StaticResource mptConverter}"> - <Binding Path="DataContext.Id" RelativeSource="{RelativeSource Mode=FindAncestor,AncestorType={x:Type ListBox},AncestorLevel=1}"/> - <Binding Path="Id"/> + <Binding Path="SkuId"/> </MultiBinding> </b:InvokeCommandAction.CommandParameter> </b:InvokeCommandAction> @@ -258,11 +263,11 @@ <c:BButton Grid.Column="11" HorizontalAlignment="Stretch" Style="{StaticResource LinkButton}" VerticalAlignment="Center" Content="完成" Command="{Binding DataContext.CompeteSealBoxCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type Page}}}" CommandParameter="{Binding}" - Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待打包:Visible:Collapsed}" + > </c:BButton> - + <!-- Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待打包:Visible:Collapsed}" --> </StackPanel> @@ -270,9 +275,9 @@ <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}"/> <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="1"/> <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="2"/> - <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="3"/> - <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="4"/> - <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="5"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="3" Margin="0 0 2 0"/> + <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="4" Margin="0 0 1 0"/> + <!--<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="5"/>--> <!--<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="5"/> <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="6"/> <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="7"/> diff --git a/BBWY.Client/Views/PackTask/WaitSealBoxControl.xaml.cs b/BBWY.Client/Views/SealBox/WaitSealBoxControl.xaml.cs similarity index 100% rename from BBWY.Client/Views/PackTask/WaitSealBoxControl.xaml.cs rename to BBWY.Client/Views/SealBox/WaitSealBoxControl.xaml.cs