From 4123147e45c43fbd09176036775a30729e93f0c9 Mon Sep 17 00:00:00 2001 From: shanj <18996038927@163.com> Date: Thu, 23 Feb 2023 04:22:05 +0800 Subject: [PATCH] 1 --- BBWY.Client/APIServices/PurchaseService.cs | 19 ++++++- BBWY.Client/Models/Enums.cs | 3 +- BBWY.Client/Models/Product/Product.cs | 12 ++++ .../Models/Product/PurchasePlatformModel.cs | 9 +++ BBWY.Client/Models/Product/Purchaser.cs | 2 + .../ViewModels/Ware/WareManagerViewModel.cs | 1 + BBWY.Client/Views/Ware/WareManager.xaml | 20 ++++--- .../PurchaseScheme/PurchaseSchemeBusiness.cs | 56 ++++++++++++------- .../Db/PurchaseScheme/Purchaser.cs | 6 ++ .../PurchaseScheme/QuerySchemeRequest.cs | 16 ++++-- BBWY.Server.Model/Enums.cs | 3 +- 11 files changed, 109 insertions(+), 38 deletions(-) create mode 100644 BBWY.Client/Models/Product/PurchasePlatformModel.cs diff --git a/BBWY.Client/APIServices/PurchaseService.cs b/BBWY.Client/APIServices/PurchaseService.cs index b8f32a3b..df4a63fa 100644 --- a/BBWY.Client/APIServices/PurchaseService.cs +++ b/BBWY.Client/APIServices/PurchaseService.cs @@ -13,15 +13,28 @@ namespace BBWY.Client.APIServices /// /// 获取采购方案 /// - /// + /// /// /// + /// + /// /// - public ApiResponse> GetPurchaseSchemeList(IList skuIdList, string purchaserId, long shopId) + public ApiResponse> GetPurchaseSchemeList(IList skuIdList = null, + string purchaserId = "", + long? shopId = null, + long? schemeId = null, + Platform? platform = null) { return SendRequest>(globalContext.BBYWApiHost, "api/PurchaseScheme/GetPurchaseSchemeList", - new { skuIdList, purchaserId, shopId }, + new + { + skuIdList, + purchaserId, + shopId, + schemeId, + platform + }, null, HttpMethod.Post); } diff --git a/BBWY.Client/Models/Enums.cs b/BBWY.Client/Models/Enums.cs index b1c8e629..0aa105f0 100644 --- a/BBWY.Client/Models/Enums.cs +++ b/BBWY.Client/Models/Enums.cs @@ -9,7 +9,8 @@ 京东 = 1, 阿里巴巴 = 2, 拼多多 = 3, - 微信 = 4 + 微信 = 4, + 拳探 = 10 } /// diff --git a/BBWY.Client/Models/Product/Product.cs b/BBWY.Client/Models/Product/Product.cs index e2e26f22..2f8cfebc 100644 --- a/BBWY.Client/Models/Product/Product.cs +++ b/BBWY.Client/Models/Product/Product.cs @@ -8,6 +8,7 @@ namespace BBWY.Client.Models public Product() { PurchaserList = new ObservableCollection(); + PurchasePlatformList = new List(); } /// @@ -34,5 +35,16 @@ namespace BBWY.Client.Models /// 采购商集合 /// public IList PurchaserList { get; set; } + + /// + /// 采购平台集合 + /// + public IList PurchasePlatformList { get; set; } + + public void CreatePlatformList() + { + PurchasePlatformList.Add(new PurchasePlatformModel() { ProductId = this.Id, PurchasePlatform = Platform.阿里巴巴 }); + PurchasePlatformList.Add(new PurchasePlatformModel() { ProductId = this.Id, PurchasePlatform = Platform.拳探 }); + } } } diff --git a/BBWY.Client/Models/Product/PurchasePlatformModel.cs b/BBWY.Client/Models/Product/PurchasePlatformModel.cs new file mode 100644 index 00000000..73ae3509 --- /dev/null +++ b/BBWY.Client/Models/Product/PurchasePlatformModel.cs @@ -0,0 +1,9 @@ +namespace BBWY.Client.Models +{ + public class PurchasePlatformModel + { + public string ProductId { get; set; } + + public Platform PurchasePlatform { get; set; } + } +} diff --git a/BBWY.Client/Models/Product/Purchaser.cs b/BBWY.Client/Models/Product/Purchaser.cs index 850c56c0..c10a6f6d 100644 --- a/BBWY.Client/Models/Product/Purchaser.cs +++ b/BBWY.Client/Models/Product/Purchaser.cs @@ -19,5 +19,7 @@ public string ProductId { get; set; } public string Location { get; set; } + + //public Platform Platform { get; set; } } } diff --git a/BBWY.Client/ViewModels/Ware/WareManagerViewModel.cs b/BBWY.Client/ViewModels/Ware/WareManagerViewModel.cs index c20a6607..4a16e679 100644 --- a/BBWY.Client/ViewModels/Ware/WareManagerViewModel.cs +++ b/BBWY.Client/ViewModels/Ware/WareManagerViewModel.cs @@ -140,6 +140,7 @@ namespace BBWY.Client.ViewModels var waitList = new List(); foreach (var p in productList) { + p.CreatePlatformList(); var ewh = new ManualResetEvent(false); waitList.Add(ewh); Task.Factory.StartNew(() => LoadSku(p, ewh)); diff --git a/BBWY.Client/Views/Ware/WareManager.xaml b/BBWY.Client/Views/Ware/WareManager.xaml index 5f2abc06..c0259d13 100644 --- a/BBWY.Client/Views/Ware/WareManager.xaml +++ b/BBWY.Client/Views/Ware/WareManager.xaml @@ -8,7 +8,7 @@ xmlns:c="clr-namespace:BBWY.Controls;assembly=BBWY.Controls" xmlns:ctr="clr-namespace:BBWY.Client.Converters" mc:Ignorable="d" - d:DesignHeight="450" d:DesignWidth="800" + d:DesignHeight="1080" d:DesignWidth="1920" Title="WareManager" DataContext="{Binding WareManager,Source={StaticResource Locator}}"> @@ -46,7 +46,8 @@ Background="#F2F2F2"> - + + @@ -56,13 +57,14 @@ - - - - - - - + + + + + + + + diff --git a/BBWY.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs b/BBWY.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs index 8534b2cf..eaf0dcfc 100644 --- a/BBWY.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs +++ b/BBWY.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs @@ -21,7 +21,15 @@ namespace BBWY.Server.Business foreach (var scheme in purchaserSchemeList) { if (newPurchaserIdList.Any(p => p == scheme.PurchaserId) && !addPurchaserList.Any(p => p.Id == scheme.PurchaserId)) - addPurchaserList.Add(new Purchaser() { Id = scheme.PurchaserId, Name = scheme.PurchaserName, Location = scheme.PurchaserLocation }); + { + addPurchaserList.Add(new Purchaser() + { + Id = scheme.PurchaserId, + Name = scheme.PurchaserName, + Location = scheme.PurchaserLocation, + Platform = scheme.PurchasePlatform + }); + } } } @@ -48,7 +56,7 @@ namespace BBWY.Server.Business { ExtractNewPurchaser(batchCURDSchemeRequest.AddPurchaseSchemeList, newPurchaserList); - addPurchaseSchemeList = batchCURDSchemeRequest.AddPurchaseSchemeList.Map>(); + addPurchaseSchemeList = batchCURDSchemeRequest.AddPurchaseSchemeList.Map>(); foreach (var scheme in addPurchaseSchemeList) { @@ -130,24 +138,32 @@ namespace BBWY.Server.Business /// public IList GetPurchaseSchemeList(QuerySchemeRequest querySchemeRequest) { - var purchaseSchemeList = fsql.Select().InnerJoin((ps, p) => ps.PurchaserId == p.Id) - .Where((ps, p) => ps.ShopId == querySchemeRequest.ShopId) - .WhereIf(querySchemeRequest.SkuIdList != null && querySchemeRequest.SkuIdList.Count() > 0, (ps, p) => querySchemeRequest.SkuIdList.Contains(ps.SkuId)) - .WhereIf(!string.IsNullOrEmpty(querySchemeRequest.PurchaserId), (ps, p) => ps.PurchaserId == querySchemeRequest.PurchaserId) - .ToList((ps, p) => new PurchaseSchemeResponse() - { - Id = ps.Id, - ProductId = ps.ProductId, - SkuId = ps.SkuId, - ShopId = ps.ShopId, - PurchaserId = p.Id, - PurchaserName = p.Name, - PurchaserLocation = p.Location, - DefaultCost = ps.DefaultCost, - RealCost = ps.RealCost, - CreateTime = ps.CreateTime, - PurchasePlatform = ps.PurchasePlatform - }); + var select = fsql.Select().InnerJoin((ps, p) => ps.PurchaserId == p.Id); + if (querySchemeRequest.SchemeId != null && querySchemeRequest.SchemeId != 0) + select = select.Where((ps, p) => ps.Id == querySchemeRequest.SchemeId); + else + { + select = select.WhereIf(querySchemeRequest.ShopId != null && querySchemeRequest.ShopId != 0, (ps, p) => ps.ShopId == querySchemeRequest.ShopId) + .WhereIf(querySchemeRequest.SkuIdList != null && querySchemeRequest.SkuIdList.Count() > 0, (ps, p) => querySchemeRequest.SkuIdList.Contains(ps.SkuId)) + .WhereIf(!string.IsNullOrEmpty(querySchemeRequest.PurchaserId), (ps, p) => ps.PurchaserId == querySchemeRequest.PurchaserId) + .WhereIf(querySchemeRequest.PurchasePlatform != null, (ps, p) => ps.PurchasePlatform == querySchemeRequest.PurchasePlatform); + } + + var purchaseSchemeList = select.ToList((ps, p) => new PurchaseSchemeResponse + { + Id = ps.Id, + ProductId = ps.ProductId, + SkuId = ps.SkuId, + ShopId = ps.ShopId, + PurchaserId = p.Id, + PurchaserName = p.Name, + PurchaserLocation = p.Location, + DefaultCost = ps.DefaultCost, + RealCost = ps.RealCost, + CreateTime = ps.CreateTime, + PurchasePlatform = ps.PurchasePlatform + }); + if (purchaseSchemeList.Count > 0) { var purchaseSchemeIdList = purchaseSchemeList.Select(p => p.Id).ToList(); diff --git a/BBWY.Server.Model/Db/PurchaseScheme/Purchaser.cs b/BBWY.Server.Model/Db/PurchaseScheme/Purchaser.cs index 6040c374..88fb9cbf 100644 --- a/BBWY.Server.Model/Db/PurchaseScheme/Purchaser.cs +++ b/BBWY.Server.Model/Db/PurchaseScheme/Purchaser.cs @@ -28,6 +28,12 @@ namespace BBWY.Server.Model.Db [Column(StringLength = 50)] public string Location { get; set; } + /// + /// 采购平台 + /// + [Column(MapType = typeof(int?))] + public Enums.Platform? Platform { get; set; } + } } diff --git a/BBWY.Server.Model/Dto/Request/PurchaseScheme/QuerySchemeRequest.cs b/BBWY.Server.Model/Dto/Request/PurchaseScheme/QuerySchemeRequest.cs index b3c92353..9b9062a6 100644 --- a/BBWY.Server.Model/Dto/Request/PurchaseScheme/QuerySchemeRequest.cs +++ b/BBWY.Server.Model/Dto/Request/PurchaseScheme/QuerySchemeRequest.cs @@ -1,12 +1,15 @@ -using System; -using System.Collections.Generic; -using System.Text; +using System.Collections.Generic; namespace BBWY.Server.Model.Dto { public class QuerySchemeRequest { - public long ShopId { get; set; } + /// + /// 采购方案Id + /// + public long? SchemeId { get; set; } + + public long? ShopId { get; set; } public IList SkuIdList { get; set; } @@ -14,5 +17,10 @@ namespace BBWY.Server.Model.Dto /// 采购商Id, 可空 /// public string PurchaserId { get; set; } + + /// + /// 采购平台 + /// + public Enums.Platform? PurchasePlatform { get; set; } } } diff --git a/BBWY.Server.Model/Enums.cs b/BBWY.Server.Model/Enums.cs index 9083a0b2..81653ec0 100644 --- a/BBWY.Server.Model/Enums.cs +++ b/BBWY.Server.Model/Enums.cs @@ -11,7 +11,8 @@ 京东 = 1, 阿里巴巴 = 2, 拼多多 = 3, - 微信 = 4 + 微信 = 4, + 拳探 = 10 } ///