shanji 3 years ago
parent
commit
8f9ff7a878
  1. 2
      BBWY.Client/Models/APIModel/Response/Order/OrderCostDetailResponse.cs
  2. 1
      BBWY.Client/Models/APIModel/Response/Order/OrderResponse.cs
  3. 18
      BBWY.Client/Models/AfterSaleOrder/AfterSaleOrderGroup.cs
  4. 51
      BBWY.Client/Models/Order/Order.cs
  5. 136
      BBWY.Client/Views/Order/OrderList.xaml
  6. 8
      BBWY.Server.Business/Order/OrderBusiness.cs
  7. 8
      BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs
  8. 4
      BBWY.Server.Business/Sync/OrderSyncBusiness.cs
  9. 29
      BBWY.Server.Model/Db/Order/OrderCostDetail.cs

2
BBWY.Client/Models/APIModel/Response/Order/OrderCostDetailResponse.cs

@ -76,7 +76,7 @@ namespace BBWY.Client.Models
public decimal StorageAmount { get; set; } = 0.00M;
/// <summary>
/// 总计(不含发货运费)
/// 总计
/// </summary>
public decimal TotalCost { get; set; } = 0.00M;
}

1
BBWY.Client/Models/APIModel/Response/Order/OrderResponse.cs

@ -153,6 +153,7 @@ namespace BBWY.Client.Models
/// </summary>
public OrderCostResponse OrderCost { get; set; }
public IList<OrderSkuResponse> ItemList { get; set; }
/// <summary>

18
BBWY.Client/Models/AfterSaleOrder/AfterSaleOrderGroup.cs

@ -0,0 +1,18 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace BBWY.Client.Models
{
public class AfterSaleOrderGroup
{
public string SkuId { get; set; }
public IList<AfterSaleOrder> Items { get; set; }
public AfterSaleOrderGroup()
{
Items = new List<AfterSaleOrder>();
}
}
}

51
BBWY.Client/Models/Order/Order.cs

@ -9,6 +9,7 @@ namespace BBWY.Client.Models
public Order()
{
OrderCostDetailGroupList = new List<OrderCostDetailGroup>();
AfterSaleOrderGroupList = new List<AfterSaleOrderGroup>();
}
private StorageType? storageType;
@ -196,14 +197,19 @@ namespace BBWY.Client.Models
/// </summary>
public IList<OrderDropShipping> OrderDropShippingList { get; set; }
/*/// <summary>
/// <summary>
/// 售后信息
/// </summary>*/
//public List<AfterSaleOrder> AfterSaleOrderList { get; set; }
/// </summary>
public IList<AfterSaleOrder> AfterSaleOrderList { get; set; }
/// <summary>
///售后信息分组
/// </summary>
public IList<AfterSaleOrderGroup> AfterSaleOrderGroupList { get; set; }
public void LocalConvert()
{
//ConvertAfterSaleOrderSku();
ConvertAfterSaleOrderToGroup();
ConvertOrderCostDetailToGroup();
}
@ -223,28 +229,21 @@ namespace BBWY.Client.Models
}
}
/*
/// <summary>
/// 处理售后集合,如果Sku没有售后,则赋值一个空对象进行占位,保持售后信息和Sku对位
/// </summary>
*/
//private void ConvertAfterSaleOrderSku()
//{
// if (!IsAfterSaleOrder || AfterSaleOrderList == null || AfterSaleOrderList.Count() == 0 || (ItemList.Count() == AfterSaleOrderList.Count()))
// return;
// var asoList = new List<AfterSaleOrder>();
// asoList.AddRange(AfterSaleOrderList);
// AfterSaleOrderList.Clear();
// foreach (var sku in ItemList)
// {
// var afterSaleOrderSku = asoList.FirstOrDefault(aso => aso.SkuId == sku.Id);
// if (afterSaleOrderSku == null)
// afterSaleOrderSku = new AfterSaleOrder() { IsPlaceholder = true };
// AfterSaleOrderList.Add(afterSaleOrderSku);
// }
// asoList.Clear();
//}
private void ConvertAfterSaleOrderToGroup()
{
if (!IsAfterSaleOrder || AfterSaleOrderList == null || AfterSaleOrderList.Count() == 0)
return;
foreach (var aso in AfterSaleOrderList)
{
var group = AfterSaleOrderGroupList.FirstOrDefault(g => g.SkuId == aso.SkuId);
if (group == null)
{
group = new AfterSaleOrderGroup() { SkuId = aso.SkuId };
AfterSaleOrderGroupList.Add(group);
}
group.Items.Add(aso);
}
}
}
public class OrderList

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

@ -583,8 +583,8 @@
<Border Width="1" Background="{StaticResource Border.Brush}" Grid.Column="5" HorizontalAlignment="Right"/>
<Border Width="1" Background="{StaticResource Border.Brush}" Grid.Column="6" HorizontalAlignment="Right"/>
<StackPanel Grid.Column="3" VerticalAlignment="Center" HorizontalAlignment="Center" Margin="0,0,0,10">
<StackPanel Orientation="Horizontal">
<TextBlock>
<Run Text="实收金额"/>
@ -657,6 +657,7 @@
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock x:Name="txt_isManualed" Text="该订单成本经过手动编辑"
Style="{StaticResource middleTextBlock}"
@ -672,14 +673,13 @@
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="20"/>
<RowDefinition Height="20"/>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding SkuId,StringFormat=SKU {0}}" VerticalAlignment="Center"/>
<Grid Grid.Row="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="120"/>
<ColumnDefinition Width="120"/>
<ColumnDefinition Width="60"/>
<ColumnDefinition Width="60"/>
@ -689,29 +689,76 @@
<ColumnDefinition Width="60"/>
<ColumnDefinition Width="60"/>
<ColumnDefinition Width="60"/>
<ColumnDefinition Width="80"/>
<ColumnDefinition Width="60"/>
<ColumnDefinition Width="120"/>
</Grid.ColumnDefinitions>
<TextBlock Text="成本明细ID" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="库存流水ID" 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}"/>
<TextBlock Text="操作费" Grid.Column="5" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="耗材费" Grid.Column="6" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="仓储费" Grid.Column="7" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="总成本" Grid.Column="8" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="扣减数量" Grid.Column="9" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="扣减时间" Grid.Column="10" Style="{StaticResource middleTextBlock}"/>
<Grid.RowDefinitions>
<RowDefinition Height="25"/>
<RowDefinition Height="25"/>
</Grid.RowDefinitions>
<Grid Background="{StaticResource Border.Background}" Grid.RowSpan="2">
<TextBlock Text="库存流水" Style="{StaticResource middleTextBlock}"/>
</Grid>
<Grid Background="{StaticResource Border.Background}" Grid.Column="1" Grid.ColumnSpan="2">
<TextBlock Text="商品成本" Style="{StaticResource middleTextBlock}"/>
</Grid>
<Grid Background="{StaticResource Border.Background}" Grid.Column="3" Grid.ColumnSpan="6">
<TextBlock Text="期间成本" Style="{StaticResource middleTextBlock}"/>
</Grid>
<Grid Background="{StaticResource Border.Background}" Grid.Column="9" Grid.RowSpan="2">
<TextBlock Text="小计成本" Style="{StaticResource middleTextBlock}"/>
</Grid>
<Grid Background="{StaticResource Border.Background}" Grid.Column="10" Grid.RowSpan="2">
<TextBlock Text="扣减时间" Style="{StaticResource middleTextBlock}"/>
</Grid>
<Grid Background="{StaticResource Border.Background}" Grid.Column="1" Grid.Row="1">
<TextBlock Text="货款成本" Style="{StaticResource middleTextBlock}"/>
</Grid>
<Grid Background="{StaticResource Border.Background}" Grid.Column="2" Grid.Row="1">
<TextBlock Text="采购运费" Style="{StaticResource middleTextBlock}"/>
</Grid>
<Grid Background="{StaticResource Border.Background}" Grid.Column="3" Grid.Row="1">
<TextBlock Text="头程费" Style="{StaticResource middleTextBlock}"/>
</Grid>
<Grid Background="{StaticResource Border.Background}" Grid.Column="4" Grid.Row="1">
<TextBlock Text="打包耗材" Style="{StaticResource middleTextBlock}"/>
</Grid>
<Grid Background="{StaticResource Border.Background}" Grid.Column="5" Grid.Row="1">
<TextBlock Text="快递费" Style="{StaticResource middleTextBlock}"/>
</Grid>
<Grid Background="{StaticResource Border.Background}" Grid.Column="6" Grid.Row="1">
<TextBlock Text="入库操作" Style="{StaticResource middleTextBlock}"/>
</Grid>
<Grid Background="{StaticResource Border.Background}" Grid.Column="7" Grid.Row="1">
<TextBlock Text="出库操作" Style="{StaticResource middleTextBlock}"/>
</Grid>
<Grid Background="{StaticResource Border.Background}" Grid.Column="8" Grid.Row="1">
<TextBlock Text="仓储费" Style="{StaticResource middleTextBlock}"/>
</Grid>
<ListBox Grid.Row="2" ItemsSource="{Binding Items}"
<Border Grid.RowSpan="2" Grid.ColumnSpan="11" BorderBrush="{StaticResource Border.Brush}" BorderThickness="1"/>
<Border Width="1" HorizontalAlignment="Right" Grid.RowSpan="2" Background="{StaticResource Border.Brush}"/>
<Border Width="1" HorizontalAlignment="Right" Grid.Column="1" Grid.Row="1" Background="{StaticResource Border.Brush}"/>
<Border Width="1" HorizontalAlignment="Right" Grid.Column="2" Grid.RowSpan="2" Background="{StaticResource Border.Brush}"/>
<Border Width="1" HorizontalAlignment="Right" Grid.Column="3" Grid.Row="1" Background="{StaticResource Border.Brush}"/>
<Border Width="1" HorizontalAlignment="Right" Grid.Column="4" Grid.Row="1" Background="{StaticResource Border.Brush}"/>
<Border Width="1" HorizontalAlignment="Right" Grid.Column="5" Grid.Row="1" Background="{StaticResource Border.Brush}"/>
<Border Width="1" HorizontalAlignment="Right" Grid.Column="6" Grid.Row="1" Background="{StaticResource Border.Brush}"/>
<Border Width="1" HorizontalAlignment="Right" Grid.Column="7" Grid.Row="1" Background="{StaticResource Border.Brush}"/>
<Border Width="1" HorizontalAlignment="Right" Grid.Column="8" Grid.RowSpan="2" Background="{StaticResource Border.Brush}"/>
<Border Width="1" HorizontalAlignment="Right" Grid.Column="9" Grid.RowSpan="2" Background="{StaticResource Border.Brush}"/>
<Border Height="1" VerticalAlignment="Bottom" Grid.Column="1" Grid.ColumnSpan="8" Background="{StaticResource Border.Brush}"/>
</Grid>
<ListBox Grid.Row="2"
BorderBrush="{StaticResource Border.Brush}"
BorderThickness="1,0,1,0"
Style="{StaticResource NoScrollViewListBoxStyle}"
ItemContainerStyle="{StaticResource NoBgListBoxItemStyle}">
ItemContainerStyle="{StaticResource NoBgListBoxItemStyle}"
ItemsSource="{Binding Items}">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid>
<Grid Height="25">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="120"/>
<ColumnDefinition Width="120"/>
<ColumnDefinition Width="60"/>
<ColumnDefinition Width="60"/>
@ -721,19 +768,31 @@
<ColumnDefinition Width="60"/>
<ColumnDefinition Width="60"/>
<ColumnDefinition Width="60"/>
<ColumnDefinition Width="80"/>
<ColumnDefinition Width="60"/>
<ColumnDefinition Width="120"/>
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding Id}" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding PurchaseOrderPKId}" Grid.Column="1" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding SkuAmount}" Grid.Column="2" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding PurchaseFreight}" Grid.Column="3" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding FirstFreight}" Grid.Column="4" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding OperationAmount}" Grid.Column="5" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding ConsumableAmount}" Grid.Column="6" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding StorageAmount}" Grid.Column="7" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding TotalCost}" Grid.Column="8" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding DeductionQuantity}" Grid.Column="9" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding PurchaseOrderPKId}" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding SkuAmount}" Grid.Column="1" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding PurchaseFreight}" Grid.Column="2" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding FirstFreight}" Grid.Column="3" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding ConsumableAmount}" Grid.Column="4" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding DeliveryExpressFreight}" Grid.Column="5" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding InStorageAmount}" Grid.Column="6" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding OutStorageAmount}" Grid.Column="7" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding StorageAmount}" Grid.Column="8" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding TotalCost,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}" Grid.Column="9" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding CreateTime,StringFormat=yyyy-MM-dd}" Grid.Column="10" Style="{StaticResource middleTextBlock}"/>
<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}"/>
<Border Grid.Column="1" Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Margin="0,0,-1,0"/>
<Border Grid.Column="2" Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Margin="0,0,-1,0"/>
<Border Grid.Column="3" Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Margin="0,0,-1,0"/>
<Border Grid.Column="4" Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Margin="0,0,-1,0"/>
<Border Grid.Column="5" Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Margin="0,0,-1,0"/>
<Border Grid.Column="6" Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Margin="0,0,-1,0"/>
<Border Grid.Column="7" Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Margin="0,0,-1,0"/>
<Border Grid.Column="8" Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Margin="0,0,-1,0"/>
<Border Grid.Column="9" Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Margin="0,0,-1,0"/>
<Border Height="1" VerticalAlignment="Bottom" Grid.ColumnSpan="11" Background="{StaticResource Border.Brush}"/>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
@ -748,23 +807,6 @@
</Path>
</StackPanel>
<TextBlock Visibility="{Binding OrderCost.RefundPurchaseAmount,ConverterParameter=0|0.0|0.00:Collapsed:Visible,Converter={StaticResource objConverter}}"
Foreground="Red">
<Run Text="退采金额"/>
<Run Text="{Binding OrderCost.RefundPurchaseAmount}"/>
</TextBlock>
<TextBlock >
<Run Text="快递费用"/>
<Run Text="{Binding OrderCost.DeliveryExpressFreight}"/>
</TextBlock>
<TextBlock>
<Run Text="平台扣点"/>
<Run Text="{Binding OrderCost.PlatformCommissionAmount}"/>
<Run Text="{Binding OrderCost.PlatformCommissionRatio,StringFormat=({0:P})}"/>
</TextBlock>
<TextBlock x:Name="txt_sdCommissionAmount">
<Run Text="{Binding SDType,Converter={StaticResource objConverter},ConverterParameter=自刷:空单号/刷单号:SD佣金}"/>
<Run Text="{Binding OrderCost.SDCommissionAmount}"/>

8
BBWY.Server.Business/Order/OrderBusiness.cs

@ -483,10 +483,10 @@ namespace BBWY.Server.Business
SkuId = orderSku.SkuId,
CreateTime = DateTime.Now,
PurchaseOrderPKId = purchaseOrder.Id,
UnitCost = purchaseOrder.UnitCost,
//UnitCost = purchaseOrder.UnitCost,
DeductionQuantity = deductionQuantity,
DeliveryExpressFreight = currentSkuDeliveryFreight,
TotalCost = currentPurchaseAmount,
//TotalCost = currentPurchaseAmount,
ConsumableAmount = purchaseOrder.SingleConsumableAmount * deductionQuantity,
FirstFreight = purchaseOrder.SingleFirstFreight * deductionQuantity,
InStorageAmount = purchaseOrder.SingleInStorageAmount * deductionQuantity,
@ -815,8 +815,8 @@ namespace BBWY.Server.Business
SkuAmount = relationOrderSku.SingleSkuAmount * relationOrderSku.Quantity,
SkuId = relationOrderSku.SkuId,
StorageAmount = 0,
TotalCost = relationOrderSku.SingleSkuAmount * relationOrderSku.Quantity + odsRequest.PurchaseFreight / odsRequest.RelationPurchaseOrderSkuList.Count(),
UnitCost = purchaseOrder.UnitCost,
//TotalCost = relationOrderSku.SingleSkuAmount * relationOrderSku.Quantity + odsRequest.PurchaseFreight / odsRequest.RelationPurchaseOrderSkuList.Count(),
//UnitCost = purchaseOrder.UnitCost,
PurchaseOrderPKId = purchaseOrder.Id
});
#endregion

8
BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs

@ -250,8 +250,8 @@ namespace BBWY.Server.Business
SkuAmount = currentOrderSkuProductAmount,
SkuId = orderSku.SkuId,
StorageAmount = 0,
UnitCost = purchaseOrder.UnitCost,
TotalCost = currentOrderSkuProductAmount + currentOrderSkuFreightAmount//purchaseOrder.UnitCost * orderSku.ItemTotal.Value
//UnitCost = purchaseOrder.UnitCost,
//TotalCost = currentOrderSkuProductAmount + currentOrderSkuFreightAmount//purchaseOrder.UnitCost * orderSku.ItemTotal.Value
};
insertOrderCostDetails.Add(orderCostDetail);
#endregion
@ -621,8 +621,8 @@ namespace BBWY.Server.Business
orderCostDetail.SkuAmount = currentOrderSkuProductAmount;
orderCostDetail.PurchaseFreight = currentOrderSkuFreightAmount;
orderCostDetail.UnitCost = purchaseOrder.UnitCost;
orderCostDetail.TotalCost = currentOrderSkuProductAmount + currentOrderSkuFreightAmount;
//orderCostDetail.UnitCost = purchaseOrder.UnitCost;
//orderCostDetail.TotalCost = currentOrderSkuProductAmount + currentOrderSkuFreightAmount;
updatePurchaseOrders.Add(fsql.Update<PurchaseOrder>().SetSource(purchaseOrder));
updateOrderCostDetails.Add(fsql.Update<OrderCostDetail>().SetSource(orderCostDetail));

4
BBWY.Server.Business/Sync/OrderSyncBusiness.cs

@ -462,10 +462,10 @@ namespace BBWY.Server.Business
SkuId = orderSkuId,
CreateTime = DateTime.Now,
PurchaseOrderPKId = purchaseOrder.Id,
UnitCost = purchaseOrder.UnitCost,
//UnitCost = purchaseOrder.UnitCost,
DeductionQuantity = deductionQuantity,
DeliveryExpressFreight = currentSkuDeliveryFreight,
TotalCost = currentPurchaseAmount,
//TotalCost = currentPurchaseAmount,
ConsumableAmount = purchaseOrder.SingleConsumableAmount * deductionQuantity,
FirstFreight = purchaseOrder.SingleFirstFreight * deductionQuantity,
//OperationAmount = purchaseOrder.SingleOperationAmount * deductionQuantity,

29
BBWY.Server.Model/Db/Order/OrderCostDetail.cs

@ -32,11 +32,11 @@ namespace BBWY.Server.Model.Db
[Column(StringLength = 50)]
public string ProductId { get; set; }
/// <summary>
/*/// <summary>
/// 单件成本
/// </summary>
[Column(DbType = "decimal(20,2)")]
public decimal UnitCost { get; set; } = 0.00M;
/// </summary>*/
//[Column(DbType = "decimal(20,2)")]
//public decimal UnitCost { get; set; } = 0.00M;
/// <summary>
/// 采购单流水Id
@ -96,14 +96,23 @@ namespace BBWY.Server.Model.Db
[Column(DbType = "decimal(20,2)")]
public decimal StorageAmount { get; set; } = 0.00M;
/// <summary>
/// 总计(不含发货运费)
/// </summary>
[Column(DbType = "decimal(20,2)")]
public decimal TotalCost { get; set; } = 0.00M;
[Column(DbType = "bit")]
public bool IsEnabled { get; set; } = true;
/// <summary>
/// 总计
/// </summary>
[Column(IsIgnore = true)]
public decimal TotalCost
{
get
{
return SkuAmount + PurchaseFreight + FirstFreight + InStorageAmount + OutStorageAmount + StorageAmount + ConsumableAmount + DeliveryExpressFreight;
}
}
//[Column(DbType = "decimal(20,2)")]
//public decimal TotalCost { get; set; } = 0.00M;
}
}

Loading…
Cancel
Save