shanji 2 years ago
parent
commit
f7f78c3234
  1. 2
      BBWY.Client/Models/APIModel/Response/ServiceOrder/ServiceOrderItemResponse.cs
  2. 218
      BBWY.Client/ViewModels/Order/OrderListViewModel.cs
  3. 38
      BBWY.Client/Views/Order/OrderList.xaml
  4. 12
      BBWY.Client/Views/Order/OrderList.xaml.cs
  5. 3
      BBWY.Client/Views/ServiceOrder/EditServiceOrder.xaml.cs
  6. 2
      BBWY.Client/Views/ServiceOrder/ServiceOrderList.xaml
  7. 31
      BBWY.Server.Business/ServiceOrder/ServiceOrderBusiness.cs
  8. 4
      BBWY.Server.Model/Dto/Response/ServiceOrder/ServiceOrderItemResponse.cs

2
BBWY.Client/Models/APIModel/Response/ServiceOrder/ServiceOrderItemResponse.cs

@ -276,6 +276,8 @@ namespace BBWY.Client.Models
public decimal Price { get; set; } public decimal Price { get; set; }
#endregion #endregion
public StorageType? StorageType { get; set; }
} }
public class ServiceOrderResponse public class ServiceOrderResponse

218
BBWY.Client/ViewModels/Order/OrderListViewModel.cs

@ -47,7 +47,7 @@ namespace BBWY.Client.ViewModels
private bool onlyUnhandle; private bool onlyUnhandle;
private Random random; private Random random;
public GlobalContext globalContext { get; set; } public GlobalContext globalContext { get; set; }
private bool? includeAfterOrder; //private bool? includeAfterOrder;
private bool includeExceptionOrder; private bool includeExceptionOrder;
//private decimal currentConditionsTotalProfit; //private decimal currentConditionsTotalProfit;
private string searchServiceId; private string searchServiceId;
@ -90,7 +90,7 @@ namespace BBWY.Client.ViewModels
public bool ExcludeSD { get => excludeSD; set { Set(ref excludeSD, value); } } public bool ExcludeSD { get => excludeSD; set { Set(ref excludeSD, value); } }
public bool ExcludeCanceled { get => excludeCanceled; set { Set(ref excludeCanceled, value); } } public bool ExcludeCanceled { get => excludeCanceled; set { Set(ref excludeCanceled, value); } }
public bool? IncludeAfterOrder { get => includeAfterOrder; set { Set(ref includeAfterOrder, value); } } //public bool? IncludeAfterOrder { get => includeAfterOrder; set { Set(ref includeAfterOrder, value); } }
public string SearchServiceId { get => searchServiceId; set { Set(ref searchServiceId, value); } } public string SearchServiceId { get => searchServiceId; set { Set(ref searchServiceId, value); } }
/// <summary> /// <summary>
@ -128,13 +128,13 @@ namespace BBWY.Client.ViewModels
public ICommand EditVenderRemarkCommand { get; set; } public ICommand EditVenderRemarkCommand { get; set; }
public ICommand SetIncludeAfterOrderCommand { get; set; } //public ICommand SetIncludeAfterOrderCommand { get; set; }
public ICommand FindAfterSaleOrderCommand { get; set; } //public ICommand FindAfterSaleOrderCommand { get; set; }
public ICommand EditAfterSaleOrderCommand { get; set; } //public ICommand EditAfterSaleOrderCommand { get; set; }
public ICommand EditAfterSaleOrderRefundPurchaseAmountCommand { get; set; } //public ICommand EditAfterSaleOrderRefundPurchaseAmountCommand { get; set; }
public ICommand SetIncludeExceptionOrderCommand { get; set; } public ICommand SetIncludeExceptionOrderCommand { get; set; }
@ -227,11 +227,11 @@ namespace BBWY.Client.ViewModels
OutStockCommand = new RelayCommand<Order>((o) => OutStock(o)); OutStockCommand = new RelayCommand<Order>((o) => OutStock(o));
EditVenderRemarkCommand = new RelayCommand<Order>(EditVenderRemark); EditVenderRemarkCommand = new RelayCommand<Order>(EditVenderRemark);
ExportCommand = new RelayCommand(Export); ExportCommand = new RelayCommand(Export);
SetIncludeAfterOrderCommand = new RelayCommand(SetIncludeAfterOrder); //SetIncludeAfterOrderCommand = new RelayCommand(SetIncludeAfterOrder);
SetIncludeExceptionOrderCommand = new RelayCommand(SetIncludeExceptionOrder); SetIncludeExceptionOrderCommand = new RelayCommand(SetIncludeExceptionOrder);
EditAfterSaleOrderCommand = new RelayCommand<AfterSaleOrder>(EditAfterSaleOrder); //EditAfterSaleOrderCommand = new RelayCommand<AfterSaleOrder>(EditAfterSaleOrder);
EditAfterSaleOrderRefundPurchaseAmountCommand = new RelayCommand<AfterSaleOrder>(EditAfterSaleOrderRefundPurchaseAmount); //EditAfterSaleOrderRefundPurchaseAmountCommand = new RelayCommand<AfterSaleOrder>(EditAfterSaleOrderRefundPurchaseAmount);
FindAfterSaleOrderCommand = new RelayCommand<object>(FindAfterSaleOrder); //FindAfterSaleOrderCommand = new RelayCommand<object>(FindAfterSaleOrder);
OpenSkuDetailCommand = new RelayCommand<object>(OpenSkuDetail); OpenSkuDetailCommand = new RelayCommand<object>(OpenSkuDetail);
SearchOrderCommand.Execute(null); SearchOrderCommand.Execute(null);
} }
@ -254,7 +254,7 @@ namespace BBWY.Client.ViewModels
StartDate = DateTime.Now.Date; StartDate = DateTime.Now.Date;
} }
PageIndex = 1; PageIndex = 1;
IncludeAfterOrder = null; //IncludeAfterOrder = null;
IncludeExceptionOrder = false; IncludeExceptionOrder = false;
} }
@ -300,23 +300,23 @@ namespace BBWY.Client.ViewModels
Task.Factory.StartNew(() => LoadOrder(1)); Task.Factory.StartNew(() => LoadOrder(1));
} }
public void SetIncludeAfterOrder() //public void SetIncludeAfterOrder()
{ //{
InitSearchParam(); // InitSearchParam();
IncludeAfterOrder = true; // IncludeAfterOrder = true;
Task.Factory.StartNew(() => LoadOrder(1)); // Task.Factory.StartNew(() => LoadOrder(1));
} //}
public void SetIncludeAfterOrder(string orderId, string skuId, DateTime startDate, DateTime endDate) //public void SetIncludeAfterOrder(string orderId, string skuId, DateTime startDate, DateTime endDate)
{ //{
InitSearchParam(); // InitSearchParam();
SearchOrderId = orderId; // SearchOrderId = orderId;
SearchSku = skuId; // SearchSku = skuId;
StartDate = startDate; // StartDate = startDate;
EndDate = endDate; // EndDate = endDate;
IncludeAfterOrder = true; // IncludeAfterOrder = true;
Task.Factory.StartNew(() => LoadOrder(1)); // Task.Factory.StartNew(() => LoadOrder(1));
} //}
public void RefreshOrder(string orderId, bool isRemoveOrder = false) public void RefreshOrder(string orderId, bool isRemoveOrder = false)
{ {
@ -389,9 +389,9 @@ namespace BBWY.Client.ViewModels
/// <param name="pageIndex"></param> /// <param name="pageIndex"></param>
private void LoadOrder(int pageIndex) private void LoadOrder(int pageIndex)
{ {
if (IncludeAfterOrder == true) //if (IncludeAfterOrder == true)
LoadAfterSaleOrder(pageIndex); // LoadAfterSaleOrder(pageIndex);
else //else
LoadNormalOrder(pageIndex); LoadNormalOrder(pageIndex);
if (!IsSDGroup) if (!IsSDGroup)
@ -1022,84 +1022,84 @@ namespace BBWY.Client.ViewModels
}); });
} }
private void EditAfterSaleOrder(AfterSaleOrder afterSaleOrder) //private void EditAfterSaleOrder(AfterSaleOrder afterSaleOrder)
{ //{
var w = new EditAfterSaleOrderSku(afterSaleOrder); // var w = new EditAfterSaleOrderSku(afterSaleOrder);
w.Closed += EditAfterSaleOrderSku_Closed; // w.Closed += EditAfterSaleOrderSku_Closed;
w.ShowDialog(); // w.ShowDialog();
} //}
private void EditAfterSaleOrderSku_Closed(object sender, EventArgs e) //private void EditAfterSaleOrderSku_Closed(object sender, EventArgs e)
{ //{
var w = sender as EditAfterSaleOrderSku; // var w = sender as EditAfterSaleOrderSku;
if (w.DialogResult != true) // if (w.DialogResult != true)
return; // return;
//
var afterSaleOrder = w.SaleOrder; // var afterSaleOrder = w.SaleOrder;
IsLoading = true; // IsLoading = true;
Task.Factory.StartNew(() => afterOrderService.EditAfterSaleOrder(afterSaleOrder.Id, // Task.Factory.StartNew(() => afterOrderService.EditAfterSaleOrder(afterSaleOrder.Id,
afterSaleOrder.OrderId, // afterSaleOrder.OrderId,
afterSaleOrder.ProductResult.Value, // afterSaleOrder.ProductResult.Value,
afterSaleOrder.ServiceResult.Value, // afterSaleOrder.ServiceResult.Value,
afterSaleOrder.ProductHealth.Value, // afterSaleOrder.ProductHealth.Value,
afterSaleOrder.ReissueAfterSaleAmount, // afterSaleOrder.ReissueAfterSaleAmount,
afterSaleOrder.ReissueFreight, // afterSaleOrder.ReissueFreight,
afterSaleOrder.ReissueProductAmount, // afterSaleOrder.ReissueProductAmount,
afterSaleOrder.SDRefundFreight)).ContinueWith(t => // afterSaleOrder.SDRefundFreight)).ContinueWith(t =>
{ // {
var response = t.Result; // var response = t.Result;
if (!response.Success) // if (!response.Success)
{ // {
IsLoading = false; // IsLoading = false;
App.Current.Dispatcher.Invoke(() => MessageBox.Show(response.Msg, "修改售后")); // App.Current.Dispatcher.Invoke(() => MessageBox.Show(response.Msg, "修改售后"));
return; // return;
} // }
RefreshAfterOrder(afterSaleOrder.Id); // RefreshAfterOrder(afterSaleOrder.Id);
}); // });
} //}
private void EditAfterSaleOrderRefundPurchaseAmount(AfterSaleOrder afterSaleOrder) //private void EditAfterSaleOrderRefundPurchaseAmount(AfterSaleOrder afterSaleOrder)
{ //{
var w = new EditAfterSaleOrderRefundPurchaseAmount(afterSaleOrder); // var w = new EditAfterSaleOrderRefundPurchaseAmount(afterSaleOrder);
w.Closed += EditAfterSaleOrderRefundPurchaseAmount_Closed; // w.Closed += EditAfterSaleOrderRefundPurchaseAmount_Closed;
w.ShowDialog(); // w.ShowDialog();
} //}
private void EditAfterSaleOrderRefundPurchaseAmount_Closed(object sender, EventArgs e) //private void EditAfterSaleOrderRefundPurchaseAmount_Closed(object sender, EventArgs e)
{ //{
var w = sender as EditAfterSaleOrderRefundPurchaseAmount; // var w = sender as EditAfterSaleOrderRefundPurchaseAmount;
if (w.DialogResult != true) // if (w.DialogResult != true)
return; // return;
//
var afterSaleOrder = w.SaleOrder; // var afterSaleOrder = w.SaleOrder;
IsLoading = true; // IsLoading = true;
Task.Factory.StartNew(() => afterOrderService.EditAfterSaleOrderRefundPurchaseAmount(afterSaleOrder.Id, // Task.Factory.StartNew(() => afterOrderService.EditAfterSaleOrderRefundPurchaseAmount(afterSaleOrder.Id,
afterSaleOrder.OrderId, // afterSaleOrder.OrderId,
afterSaleOrder.RefundPurchaseAmount.Value, // afterSaleOrder.RefundPurchaseAmount.Value,
afterSaleOrder.RefundMerchantOrderNo, // afterSaleOrder.RefundMerchantOrderNo,
afterSaleOrder.RefundAlipayOrderNo)) // afterSaleOrder.RefundAlipayOrderNo))
.ContinueWith(t => // .ContinueWith(t =>
{ // {
var response = t.Result; // var response = t.Result;
if (!response.Success) // if (!response.Success)
{ // {
IsLoading = false; // IsLoading = false;
App.Current.Dispatcher.Invoke(() => MessageBox.Show(response.Msg, "修改采购退款")); // App.Current.Dispatcher.Invoke(() => MessageBox.Show(response.Msg, "修改采购退款"));
return; // return;
} // }
RefreshAfterOrder(afterSaleOrder.Id); // RefreshAfterOrder(afterSaleOrder.Id);
}); // });
} //}
private void FindAfterSaleOrder(object param) //private void FindAfterSaleOrder(object param)
{ //{
var paramList = (object[])param; // var paramList = (object[])param;
var orderId = paramList[0].ToString(); // var orderId = paramList[0].ToString();
var skuId = paramList[1].ToString(); // var skuId = paramList[1].ToString();
var startDate = DateTime.Parse(paramList[2].ToString()).Date; // var startDate = DateTime.Parse(paramList[2].ToString()).Date;
var endDate = DateTime.Now.Date; // var endDate = DateTime.Now.Date;
SetIncludeAfterOrder(orderId, skuId, startDate, endDate); // SetIncludeAfterOrder(orderId, skuId, startDate, endDate);
} //}
private void OpenSkuDetail(object param) private void OpenSkuDetail(object param)
{ {

38
BBWY.Client/Views/Order/OrderList.xaml

@ -86,10 +86,10 @@
<c:BButton Content="近30天" Width="50" Height="25" Margin="5,0,0,0" <c:BButton Content="近30天" Width="50" Height="25" Margin="5,0,0,0"
Command="{Binding SetSearchDateCommand}" Command="{Binding SetSearchDateCommand}"
CommandParameter="{StaticResource d30}"/> CommandParameter="{StaticResource d30}"/>
<TextBlock Text="服务单" VerticalAlignment="Center" Margin="5,0,0,0" <!--<TextBlock Text="服务单" VerticalAlignment="Center" Margin="5,0,0,0"
Visibility="{Binding IncludeAfterOrder,ConverterParameter=true:Visible:Collapsed,Converter={StaticResource objConverter}}"/> Visibility="{Binding IncludeAfterOrder,ConverterParameter=true:Visible:Collapsed,Converter={StaticResource objConverter}}"/>-->
<c:BTextBox Width="150" Margin="5,0,0,0" Text="{Binding SearchServiceId}" WaterRemark="精确匹配" <!--<c:BTextBox Width="150" Margin="5,0,0,0" Text="{Binding SearchServiceId}" WaterRemark="精确匹配"
Visibility="{Binding IncludeAfterOrder,ConverterParameter=true:Visible:Collapsed,Converter={StaticResource objConverter}}"/> Visibility="{Binding IncludeAfterOrder,ConverterParameter=true:Visible:Collapsed,Converter={StaticResource objConverter}}"/>-->
<TextBlock Text="快递单" VerticalAlignment="Center" Margin="5,0,0,0" <TextBlock Text="快递单" VerticalAlignment="Center" Margin="5,0,0,0"
Visibility="{Binding Visibility,ElementName=listbox_order}"/> Visibility="{Binding Visibility,ElementName=listbox_order}"/>
<c:BTextBox Width="150" Margin="5,0,0,0" Text="{Binding SearchWaybill}" WaterRemark="前缀模糊匹配" <c:BTextBox Width="150" Margin="5,0,0,0" Text="{Binding SearchWaybill}" WaterRemark="前缀模糊匹配"
@ -140,17 +140,15 @@
Visibility="{Binding IsSDGroup,ConverterParameter=true:Collapsed:Visible,Converter={StaticResource objConverter}}"> Visibility="{Binding IsSDGroup,ConverterParameter=true:Collapsed:Visible,Converter={StaticResource objConverter}}">
<c:BButton.Background> <c:BButton.Background>
<MultiBinding Converter="{StaticResource mobjConverter}" <MultiBinding Converter="{StaticResource mobjConverter}"
ConverterParameter=";;false:&amp;:#8080FF:#F2F2F2:6"> ConverterParameter=";false:&amp;:#8080FF:#F2F2F2:6">
<Binding Path="OrderState"/> <Binding Path="OrderState"/>
<Binding Path="IncludeAfterOrder"/>
<Binding Path="IncludeExceptionOrder"/> <Binding Path="IncludeExceptionOrder"/>
</MultiBinding> </MultiBinding>
</c:BButton.Background> </c:BButton.Background>
<c:BButton.Foreground> <c:BButton.Foreground>
<MultiBinding Converter="{StaticResource mobjConverter}" <MultiBinding Converter="{StaticResource mobjConverter}"
ConverterParameter=";;false:&amp;:White:#4A4A4A:6"> ConverterParameter=";false:&amp;:White:#4A4A4A:6">
<Binding Path="OrderState"/> <Binding Path="OrderState"/>
<Binding Path="IncludeAfterOrder"/>
<Binding Path="IncludeExceptionOrder"/> <Binding Path="IncludeExceptionOrder"/>
</MultiBinding> </MultiBinding>
</c:BButton.Foreground> </c:BButton.Foreground>
@ -216,7 +214,7 @@
</TextBlock> </TextBlock>
</c:BButton.Content> </c:BButton.Content>
</c:BButton> </c:BButton>
<c:BButton Width="100" <!--<c:BButton Width="100"
Background="{Binding IncludeAfterOrder,Converter={StaticResource objConverter},ConverterParameter=true:#8080FF:#F2F2F2}" Background="{Binding IncludeAfterOrder,Converter={StaticResource objConverter},ConverterParameter=true:#8080FF:#F2F2F2}"
Foreground="{Binding IncludeAfterOrder,Converter={StaticResource objConverter},ConverterParameter=true:White:#4A4A4A}" Foreground="{Binding IncludeAfterOrder,Converter={StaticResource objConverter},ConverterParameter=true:White:#4A4A4A}"
Command="{Binding SetIncludeAfterOrderCommand}" Command="{Binding SetIncludeAfterOrderCommand}"
@ -226,7 +224,7 @@
<Run Text="{Binding AfterSaleOrderUnhandleCount,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}" <Run Text="{Binding AfterSaleOrderUnhandleCount,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}"
Foreground="{StaticResource Text.Pink}"/> Foreground="{StaticResource Text.Pink}"/>
</TextBlock> </TextBlock>
</c:BButton> </c:BButton>-->
</StackPanel> </StackPanel>
<Border x:Name="bd_statistics" Grid.RowSpan="3" HorizontalAlignment="Right" Padding="15,0" TextBlock.Foreground="{StaticResource Text.Color}"> <Border x:Name="bd_statistics" Grid.RowSpan="3" HorizontalAlignment="Right" Padding="15,0" TextBlock.Foreground="{StaticResource Text.Color}">
@ -400,18 +398,18 @@
</StackPanel> </StackPanel>
</Border> </Border>
<Border Grid.Row="4" Background="{StaticResource Border.Background}" <Border Grid.Row="4" Background="{StaticResource Border.Background}">
Visibility="{Binding Visibility,ElementName=listbox_afterSaleOrder}">
<StackPanel Orientation="Horizontal"> <StackPanel Orientation="Horizontal">
<CheckBox Content="仅显示未处理" Margin="5,0,0,0" IsChecked="{Binding OnlyUnhandle}"/> <CheckBox Content="仅显示未处理" Margin="5,0,0,0" IsChecked="{Binding OnlyUnhandle}"/>
</StackPanel> </StackPanel>
</Border> </Border>
<local:OrderListControl x:Name="listbox_order" Grid.Row="6" Grid.RowSpan="2"
Visibility="{Binding IncludeAfterOrder,Converter={StaticResource objConverter},ConverterParameter=true:Collapsed:Visible}"/> <!--Visibility="{Binding IncludeAfterOrder,Converter={StaticResource objConverter},ConverterParameter=true:Collapsed:Visible}"-->
<local:OrderListControl x:Name="listbox_order" Grid.Row="6" Grid.RowSpan="2"/>
<Border Grid.Row="6" BorderBrush="{StaticResource Border.Brush}" BorderThickness="1,1,1,0" <!--<Border Grid.Row="6" BorderBrush="{StaticResource Border.Brush}" BorderThickness="1,1,1,0"
Background="#F2F2F2" Background="#F2F2F2"
Visibility="{Binding Visibility,ElementName=listbox_afterSaleOrder}"> Visibility="{Binding Visibility,ElementName=listbox_afterSaleOrder}">
<Grid> <Grid>
@ -598,7 +596,7 @@
<RowDefinition/> <RowDefinition/>
</Grid.RowDefinitions> </Grid.RowDefinitions>
<!--Row 1--> --><!--Row 1--><!--
<Grid Grid.ColumnSpan="2" Background="{StaticResource Border.Background}"> <Grid Grid.ColumnSpan="2" Background="{StaticResource Border.Background}">
<TextBlock Text="商品成本"/> <TextBlock Text="商品成本"/>
</Grid> </Grid>
@ -615,7 +613,7 @@
<TextBlock Text="退款采购成本"/> <TextBlock Text="退款采购成本"/>
</Grid> </Grid>
<!--Row 2--> --><!--Row 2--><!--
<Grid Grid.Row="1" Background="{StaticResource Border.Background}"> <Grid Grid.Row="1" Background="{StaticResource Border.Background}">
<TextBlock Text="商品成本"/> <TextBlock Text="商品成本"/>
</Grid> </Grid>
@ -646,7 +644,7 @@
<Grid Grid.Row="1" Grid.Column="9" Background="{StaticResource Border.Background}"> <Grid Grid.Row="1" Grid.Column="9" Background="{StaticResource Border.Background}">
<TextBlock Text="售后补偿"/> <TextBlock Text="售后补偿"/>
</Grid> </Grid>
<!--Row 3--> --><!--Row 3--><!--
<TextBlock Grid.Row="2" Text="{Binding ReissueProductAmount}" <TextBlock Grid.Row="2" Text="{Binding ReissueProductAmount}"
Visibility="{Binding ReissueProductAmount,ConverterParameter=0|0.0|0.00:Collapsed:Visible,Converter={StaticResource objConverter}}"/> Visibility="{Binding ReissueProductAmount,ConverterParameter=0|0.0|0.00:Collapsed:Visible,Converter={StaticResource objConverter}}"/>
@ -675,7 +673,7 @@
Visibility="{Binding RefundPurchaseAmount,ConverterParameter=0|0.0|0.00:Collapsed:Visible,Converter={StaticResource objConverter}}"/> Visibility="{Binding RefundPurchaseAmount,ConverterParameter=0|0.0|0.00:Collapsed:Visible,Converter={StaticResource objConverter}}"/>
<!--Line--> --><!--Line--><!--
<Border Width="1" Grid.Column="1" Grid.RowSpan="3" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}"/> <Border Width="1" Grid.Column="1" Grid.RowSpan="3" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}"/>
<Border Width="1" Grid.Column="7" Grid.RowSpan="3" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}"/> <Border Width="1" Grid.Column="7" Grid.RowSpan="3" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}"/>
<Border Width="1" Grid.Column="9" Grid.Row="1" Grid.RowSpan="2" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}"/> <Border Width="1" Grid.Column="9" Grid.Row="1" Grid.RowSpan="2" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}"/>
@ -751,7 +749,7 @@
</Grid> </Grid>
</DataTemplate> </DataTemplate>
</ListBox.ItemTemplate> </ListBox.ItemTemplate>
</ListBox> </ListBox>-->
<c:PageControl PageIndex="{Binding PageIndex}" <c:PageControl PageIndex="{Binding PageIndex}"
PageSize="{Binding PageSize}" PageSize="{Binding PageSize}"

12
BBWY.Client/Views/Order/OrderList.xaml.cs

@ -24,12 +24,12 @@ namespace BBWY.Client.Views.Order
scrollviewer_OrderList.Dispatcher.Invoke(() => scrollviewer_OrderList.ScrollToTop()); scrollviewer_OrderList.Dispatcher.Invoke(() => scrollviewer_OrderList.ScrollToTop());
}); });
Messenger.Default.Register<string>(this, "AfterSaleOrderList_ScrollToTop", (x) => //Messenger.Default.Register<string>(this, "AfterSaleOrderList_ScrollToTop", (x) =>
{ //{
if (scrollveewer_AfterSaleOrderList == null) // if (scrollveewer_AfterSaleOrderList == null)
scrollveewer_AfterSaleOrderList = listbox_afterSaleOrder.FindFirstVisualChild<ScrollViewer>(); // scrollveewer_AfterSaleOrderList = listbox_afterSaleOrder.FindFirstVisualChild<ScrollViewer>();
scrollviewer_OrderList.Dispatcher.Invoke(() => scrollveewer_AfterSaleOrderList.ScrollToTop()); // scrollviewer_OrderList.Dispatcher.Invoke(() => scrollveewer_AfterSaleOrderList.ScrollToTop());
}); //});
} }
private void OrderList_Unloaded(object sender, System.Windows.RoutedEventArgs e) private void OrderList_Unloaded(object sender, System.Windows.RoutedEventArgs e)

3
BBWY.Client/Views/ServiceOrder/EditServiceOrder.xaml.cs

@ -15,9 +15,12 @@ namespace BBWY.Client.Views.ServiceOrder
GalaSoft.MvvmLight.Messaging.Messenger.Default.Register<bool>(this, "closeEditServiceOrder", (r) => GalaSoft.MvvmLight.Messaging.Messenger.Default.Register<bool>(this, "closeEditServiceOrder", (r) =>
{ {
if (r) if (r)
{
this.Dispatcher.Invoke(() =>
{ {
this.DialogResult = true; this.DialogResult = true;
this.Close(); this.Close();
});
} }
}); });
} }

2
BBWY.Client/Views/ServiceOrder/ServiceOrderList.xaml

@ -236,7 +236,7 @@
<TextBlock VerticalAlignment="Center" Margin="10,0,0,0"> <TextBlock VerticalAlignment="Center" Margin="10,0,0,0">
<Run Text="仓储类型:"/> <Run Text="仓储类型:"/>
<Run Text="代发" Foreground="{StaticResource Text.Pink}"/> <Run Text="{Binding StorageType}" Foreground="{StaticResource Text.Pink}"/>
</TextBlock> </TextBlock>
<TextBlock Text="订单号:" Margin="10,0,0,0" VerticalAlignment="Center"/> <TextBlock Text="订单号:" Margin="10,0,0,0" VerticalAlignment="Center"/>
<c:BButton Content="{Binding OrderId}" Style="{StaticResource LinkButton}" <c:BButton Content="{Binding OrderId}" Style="{StaticResource LinkButton}"

31
BBWY.Server.Business/ServiceOrder/ServiceOrderBusiness.cs

@ -12,24 +12,27 @@ namespace BBWY.Server.Business
{ {
public ServiceOrderBusiness(IFreeSql fsql, NLogManager nLogManager, IIdGenerator idGenerator) : base(fsql, nLogManager, idGenerator) public ServiceOrderBusiness(IFreeSql fsql, NLogManager nLogManager, IIdGenerator idGenerator) : base(fsql, nLogManager, idGenerator)
{ {
} }
public ServiceOrderResponse GetList(ClientQueryServiceOrderRequest request) public ServiceOrderResponse GetList(ClientQueryServiceOrderRequest request)
{ {
var list = fsql.Select<ServiceOrder, OrderSku>().InnerJoin((s, osku) => s.OrderId == osku.OrderId && s.SkuId == osku.SkuId) var list = fsql.Select<ServiceOrder, Order, OrderSku>()
.Where((s, osku) => s.ShopId == request.ShopId) .InnerJoin((s, o, osku) => s.OrderId == o.Id)
.WhereIf(!string.IsNullOrEmpty(request.Sku), (s, osku) => s.SkuId == request.Sku) .InnerJoin((s, o, osku) => s.OrderId == osku.OrderId && s.SkuId == osku.SkuId)
.WhereIf(!string.IsNullOrEmpty(request.Spu), (s, osku) => s.ProductId == request.Spu) .Where((s, o, osku) => s.ShopId == request.ShopId)
.WhereIf(!string.IsNullOrEmpty(request.OrderId), (s, osku) => s.OrderId == request.OrderId) .WhereIf(!string.IsNullOrEmpty(request.Sku), (s, o, osku) => s.SkuId == request.Sku)
.WhereIf(!string.IsNullOrEmpty(request.ServiceId), (s, osku) => s.ServiceId == request.ServiceId) .WhereIf(!string.IsNullOrEmpty(request.Spu), (s, o, osku) => s.ProductId == request.Spu)
.WhereIf(request.ServiceOrderState != null, (s, osku) => s.Status == request.ServiceOrderState) .WhereIf(!string.IsNullOrEmpty(request.OrderId), (s, o, osku) => s.OrderId == request.OrderId)
.WhereIf(request.ReturnDirection != null, (s, osku) => s.ReturnDirection == request.ReturnDirection) .WhereIf(!string.IsNullOrEmpty(request.ServiceId), (s, o, osku) => s.ServiceId == request.ServiceId)
.WhereIf(request.StartDate != null, (s, osku) => s.ApplyTime >= request.StartDate) .WhereIf(request.ServiceOrderState != null, (s, o, osku) => s.Status == request.ServiceOrderState)
.WhereIf(request.EndDate != null, (s, osku) => s.ApplyTime <= request.EndDate) .WhereIf(request.ReturnDirection != null, (s, o, osku) => s.ReturnDirection == request.ReturnDirection)
.OrderByDescending((s, osku) => s.ApplyTime) .WhereIf(request.StartDate != null, (s, o, osku) => s.ApplyTime >= request.StartDate)
.WhereIf(request.EndDate != null, (s, o, osku) => s.ApplyTime <= request.EndDate)
.OrderByDescending((s, o, osku) => s.ApplyTime)
.Count(out var total) .Count(out var total)
.Page(request.PageIndex, request.PageSize) .Page(request.PageIndex, request.PageSize)
.ToList((s, osku) => new ServiceOrderItemResponse .ToList((s, o, osku) => new ServiceOrderItemResponse
{ {
Id = s.Id, Id = s.Id,
ApplyTime = s.ApplyTime, ApplyTime = s.ApplyTime,
@ -62,7 +65,9 @@ namespace BBWY.Server.Business
ServiceOrderRemark = s.ServiceOrderRemark, ServiceOrderRemark = s.ServiceOrderRemark,
StatusUpdateTime = s.StatusUpdateTime, StatusUpdateTime = s.StatusUpdateTime,
PurchaseOrderId = s.PurchaseOrderId, PurchaseOrderId = s.PurchaseOrderId,
PurchasePlatform = s.PurchasePlatform PurchasePlatform = s.PurchasePlatform,
StorageType = o.StorageType
}); });
return new ServiceOrderResponse() return new ServiceOrderResponse()
{ {

4
BBWY.Server.Model/Dto/Response/ServiceOrder/ServiceOrderItemResponse.cs

@ -276,6 +276,10 @@ namespace BBWY.Server.Model.Dto
public decimal Price { get; set; } public decimal Price { get; set; }
#endregion #endregion
#region Order
public Enums.StorageType? StorageType { get; set; }
#endregion
} }
public class ServiceOrderResponse public class ServiceOrderResponse

Loading…
Cancel
Save