Browse Source

Merge branch 'associatPurchaseOrder'

updatebug
shanji 2 years ago
parent
commit
c7a9392dcc
  1. 2
      BBWYB.Client/Views/Order/OrderList.xaml.cs
  2. 9
      BBWYB.Client/Views/WebB/WebB.xaml.cs
  3. 58
      BBWYB.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs
  4. 6
      BBWYB.Server.Model/Db/Order/OrderPurchaseInfo.cs
  5. 44
      BBWYB.Server.Model/Dto/Response/PurchaseOrder/AssocationOrderCostDetailResponse.cs
  6. 53
      BBWYB.Server.Model/Dto/Response/PurchaseOrder/AssociationPurchaseOrderResponse.cs

2
BBWYB.Client/Views/Order/OrderList.xaml.cs

@ -19,7 +19,7 @@ namespace BBWYB.Client.Views.Order
{
this.Dispatcher.Invoke(() =>
{
scrollviewer_OrderList.Dispatcher.Invoke(() => scrollviewer_OrderList.ScrollToTop());
scrollviewer_OrderList.Dispatcher?.Invoke(() => scrollviewer_OrderList.ScrollToTop());
});
});
}

9
BBWYB.Client/Views/WebB/WebB.xaml.cs

@ -23,6 +23,14 @@ namespace BBWYB.Client.Views.WebB
{
InitializeComponent();
this.Loaded += WebB_Loaded;
this.Unloaded += WebB_Unloaded;
}
private void WebB_Unloaded(object sender, RoutedEventArgs e)
{
grid.Children.Remove(w2m.wb2);
//w2m.wb2.Dispose();
w2m.Close();
}
private void WebB_Loaded(object sender, System.Windows.RoutedEventArgs e)
@ -48,6 +56,7 @@ namespace BBWYB.Client.Views.WebB
w2m.Init();
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)

58
BBWYB.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs

@ -71,6 +71,12 @@ namespace BBWYB.Server.Business
return orderProductParamList;
}
/// <summary>
/// 预览采购单
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
/// <exception cref="BusinessException"></exception>
public PreviewOrderResponse PreviewPurchaseOrder(PreviewOrderRequest request)
{
nLogManager.Default().Info($"PreviewPurchaseOrder {JsonConvert.SerializeObject(request)}");
@ -145,6 +151,11 @@ namespace BBWYB.Server.Business
};
}
/// <summary>
/// 创建采购单
/// </summary>
/// <param name="request"></param>
/// <exception cref="BusinessException"></exception>
public void CreatePurchaseOrder(CreateOrderRequest request)
{
nLogManager.Default().Info($"CreatePurchaseOrder\r\n{JsonConvert.SerializeObject(request)}");
@ -304,6 +315,7 @@ namespace BBWYB.Server.Business
PurchaseMethod = Enums.PurchaseMethod.线,
PurchaseOrderId = createOrderResponse.OrderId,
PurchasePlatform = cargoParamGroup.PurchasePlatform,
PurchaserId = cargoParamGroup.PurchaserId,
PurchaserName = cargoParamGroup.PurchaserName,
ShopId = request.ShopId,
BelongSkuIds = string.Join(",", belongSkuGroups.Select(bsg => bsg.Key))
@ -373,6 +385,52 @@ namespace BBWYB.Server.Business
});
}
/// <summary>
/// 获取关联订单列表
/// </summary>
/// <param name="orderId"></param>
/// <returns></returns>
public IList<AssociationPurchaseOrderResponse> GetAssociationPurchaseOrderList(string orderId)
{
IList<AssociationPurchaseOrderResponse> list = new List<AssociationPurchaseOrderResponse>();
var purchaseOrderList = fsql.Select<OrderPurchaseInfo>().Where(opi => opi.OrderId == orderId).ToList();
var orderSkuList = fsql.Select<OrderSku>().Where(osku => osku.OrderId == orderId).ToList();
var orderCostDetailList = fsql.Select<OrderCostDetail>().Where(ocd => ocd.OrderId == orderId).ToList();
foreach (var purchaseOrder in purchaseOrderList)
{
var associationPurchaseOrder = new AssociationPurchaseOrderResponse()
{
PurchaseAccountId = purchaseOrder.PurchaseAccountId,
PurchaseAccountName = purchaseOrder.PurchaseAccountName,
PurchasePlatform = purchaseOrder.PurchasePlatform.Value,
PurchaserId = purchaseOrder.PurchaserId,
PurchaserName = purchaseOrder.PurchaserName,
PurchaserOrderId = purchaseOrder.PurchaseOrderId
};
var currentOrderCostDetailList = orderCostDetailList.Where(ocd => ocd.PurchaseOrderId == purchaseOrder.PurchaseOrderId).ToList();
foreach (var orderCostDetail in currentOrderCostDetailList)
{
var orderSku = orderSkuList.FirstOrDefault(osku => osku.SkuId == orderCostDetail.SkuId);
var assocationOrderCostDetail = new AssocationOrderCostDetailResponse()
{
Id = orderCostDetail.Id,
Logo = orderSku.Logo,
Title = orderSku.Title,
OrderId = orderSku.OrderId,
SkuId = orderSku.SkuId,
PurchaseQuantity = orderCostDetail.DeductionQuantity ?? 0,
PurchaseFreight = orderCostDetail.PurchaseFreight ?? 0M,
SkuAmount = orderCostDetail.SkuAmount ?? 0M,
};
if (assocationOrderCostDetail.PurchaseQuantity != 0)
assocationOrderCostDetail.PurchasePrice = assocationOrderCostDetail.SkuAmount / assocationOrderCostDetail.PurchaseQuantity;
}
list.Add(associationPurchaseOrder);
}
return list;
}
#region 1688CallBack
public void CallbackFrom1688(string jsonStr)
{

6
BBWYB.Server.Model/Db/Order/OrderPurchaseInfo.cs

@ -39,6 +39,12 @@ namespace BBWYB.Server.Model.Db
[Column(MapType = typeof(int?))]
public Enums.Platform? PurchasePlatform { get; set; }
/// <summary>
/// ²É¹ºÉÌId
/// </summary>
[Column(StringLength = 100)]
public string PurchaserId { get; set; }
/// <summary>
/// ²É¹ºÉÌÃû³Æ
/// </summary>

44
BBWYB.Server.Model/Dto/Response/PurchaseOrder/AssocationOrderCostDetailResponse.cs

@ -0,0 +1,44 @@
namespace BBWYB.Server.Model.Dto
{
public class AssocationOrderCostDetailResponse
{
/// <summary>
/// SKU成本Id
/// </summary>
public long Id { get; set; }
/// <summary>
/// 订单Id
/// </summary>
public string OrderId { get; set; }
public string SkuId { get; set; }
/// <summary>
/// SKU标题
/// </summary>
public string Title { get; set; }
public string Logo { get; set; }
/// <summary>
/// 采购货款
/// </summary>
public decimal SkuAmount { get; set; }
/// <summary>
/// 采购运费
/// </summary>
public decimal PurchaseFreight { get; set; }
/// <summary>
/// 采购数量
/// </summary>
public int PurchaseQuantity { get; set; }
/// <summary>
/// 采购单价
/// </summary>
public decimal PurchasePrice { get; set; }
}
}

53
BBWYB.Server.Model/Dto/Response/PurchaseOrder/AssociationPurchaseOrderResponse.cs

@ -0,0 +1,53 @@
namespace BBWYB.Server.Model.Dto
{
public class AssociationPurchaseOrderResponse
{
public AssociationPurchaseOrderResponse()
{
AssocationOrderCostDetailList = new List<AssocationOrderCostDetailResponse>();
}
/// <summary>
/// 采购单号
/// </summary>
public string PurchaserOrderId { get; set; }
public Enums.Platform PurchasePlatform { get; set; }
/// <summary>
/// 买家账号Id (如果采购平台为不支持的平台,此Id可填空)
/// </summary>
public string PurchaseAccountId { get; set; }
/// <summary>
/// 买家账号
/// </summary>
public string PurchaseAccountName { get; set; }
/// <summary>
/// 商家Id
/// </summary>
public string PurchaserId { get; set; }
/// <summary>
/// 商家名称
/// </summary>
public string PurchaserName { get; set; }
/// <summary>
/// 采购金额
/// </summary>
public decimal PurchaseAmount { get; set; }
/// <summary>
/// 采购运费
/// </summary>
public decimal PurchaseFreight { get; set; }
/// <summary>
/// 订单成本明细列表
/// </summary>
public IList<AssocationOrderCostDetailResponse> AssocationOrderCostDetailList { get; set; }
}
}
Loading…
Cancel
Save