shanji 2 years ago
parent
commit
4123147e45
  1. 19
      BBWY.Client/APIServices/PurchaseService.cs
  2. 3
      BBWY.Client/Models/Enums.cs
  3. 12
      BBWY.Client/Models/Product/Product.cs
  4. 9
      BBWY.Client/Models/Product/PurchasePlatformModel.cs
  5. 2
      BBWY.Client/Models/Product/Purchaser.cs
  6. 1
      BBWY.Client/ViewModels/Ware/WareManagerViewModel.cs
  7. 20
      BBWY.Client/Views/Ware/WareManager.xaml
  8. 56
      BBWY.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs
  9. 6
      BBWY.Server.Model/Db/PurchaseScheme/Purchaser.cs
  10. 16
      BBWY.Server.Model/Dto/Request/PurchaseScheme/QuerySchemeRequest.cs
  11. 3
      BBWY.Server.Model/Enums.cs

19
BBWY.Client/APIServices/PurchaseService.cs

@ -13,15 +13,28 @@ namespace BBWY.Client.APIServices
/// <summary> /// <summary>
/// 获取采购方案 /// 获取采购方案
/// </summary> /// </summary>
/// <param name="productIdList"></param> /// <param name="skuIdList"></param>
/// <param name="purchaserId"></param> /// <param name="purchaserId"></param>
/// <param name="shopId"></param> /// <param name="shopId"></param>
/// <param name="schemeId"></param>
/// <param name="platform"></param>
/// <returns></returns> /// <returns></returns>
public ApiResponse<IList<PurchaseSchemeResponse>> GetPurchaseSchemeList(IList<string> skuIdList, string purchaserId, long shopId) public ApiResponse<IList<PurchaseSchemeResponse>> GetPurchaseSchemeList(IList<string> skuIdList = null,
string purchaserId = "",
long? shopId = null,
long? schemeId = null,
Platform? platform = null)
{ {
return SendRequest<IList<PurchaseSchemeResponse>>(globalContext.BBYWApiHost, return SendRequest<IList<PurchaseSchemeResponse>>(globalContext.BBYWApiHost,
"api/PurchaseScheme/GetPurchaseSchemeList", "api/PurchaseScheme/GetPurchaseSchemeList",
new { skuIdList, purchaserId, shopId }, new
{
skuIdList,
purchaserId,
shopId,
schemeId,
platform
},
null, null,
HttpMethod.Post); HttpMethod.Post);
} }

3
BBWY.Client/Models/Enums.cs

@ -9,7 +9,8 @@
= 1, = 1,
= 2, = 2,
= 3, = 3,
= 4 = 4,
= 10
} }
/// <summary> /// <summary>

12
BBWY.Client/Models/Product/Product.cs

@ -8,6 +8,7 @@ namespace BBWY.Client.Models
public Product() public Product()
{ {
PurchaserList = new ObservableCollection<Purchaser>(); PurchaserList = new ObservableCollection<Purchaser>();
PurchasePlatformList = new List<PurchasePlatformModel>();
} }
/// <summary> /// <summary>
@ -34,5 +35,16 @@ namespace BBWY.Client.Models
/// 采购商集合 /// 采购商集合
/// </summary> /// </summary>
public IList<Purchaser> PurchaserList { get; set; } public IList<Purchaser> PurchaserList { get; set; }
/// <summary>
/// 采购平台集合
/// </summary>
public IList<PurchasePlatformModel> PurchasePlatformList { get; set; }
public void CreatePlatformList()
{
PurchasePlatformList.Add(new PurchasePlatformModel() { ProductId = this.Id, PurchasePlatform = Platform. });
PurchasePlatformList.Add(new PurchasePlatformModel() { ProductId = this.Id, PurchasePlatform = Platform. });
}
} }
} }

9
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; }
}
}

2
BBWY.Client/Models/Product/Purchaser.cs

@ -19,5 +19,7 @@
public string ProductId { get; set; } public string ProductId { get; set; }
public string Location { get; set; } public string Location { get; set; }
//public Platform Platform { get; set; }
} }
} }

1
BBWY.Client/ViewModels/Ware/WareManagerViewModel.cs

@ -140,6 +140,7 @@ namespace BBWY.Client.ViewModels
var waitList = new List<EventWaitHandle>(); var waitList = new List<EventWaitHandle>();
foreach (var p in productList) foreach (var p in productList)
{ {
p.CreatePlatformList();
var ewh = new ManualResetEvent(false); var ewh = new ManualResetEvent(false);
waitList.Add(ewh); waitList.Add(ewh);
Task.Factory.StartNew(() => LoadSku(p, ewh)); Task.Factory.StartNew(() => LoadSku(p, ewh));

20
BBWY.Client/Views/Ware/WareManager.xaml

@ -8,7 +8,7 @@
xmlns:c="clr-namespace:BBWY.Controls;assembly=BBWY.Controls" xmlns:c="clr-namespace:BBWY.Controls;assembly=BBWY.Controls"
xmlns:ctr="clr-namespace:BBWY.Client.Converters" xmlns:ctr="clr-namespace:BBWY.Client.Converters"
mc:Ignorable="d" mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="800" d:DesignHeight="1080" d:DesignWidth="1920"
Title="WareManager" Title="WareManager"
DataContext="{Binding WareManager,Source={StaticResource Locator}}"> DataContext="{Binding WareManager,Source={StaticResource Locator}}">
<b:Interaction.Triggers> <b:Interaction.Triggers>
@ -46,7 +46,8 @@
Background="#F2F2F2"> Background="#F2F2F2">
<Grid> <Grid>
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="351"/> <ColumnDefinition Width="300"/>
<ColumnDefinition Width="80"/>
<ColumnDefinition/> <ColumnDefinition/>
<ColumnDefinition/> <ColumnDefinition/>
<ColumnDefinition/> <ColumnDefinition/>
@ -56,13 +57,14 @@
<ColumnDefinition Width="110"/> <ColumnDefinition Width="110"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<TextBlock Text="商品信息" Style="{StaticResource middleTextBlock}"/> <TextBlock Text="商品信息" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="商品1" Grid.Column="1" Style="{StaticResource middleTextBlock}"/> <TextBlock Text="采购平台" Grid.Column="1" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="商品2" Grid.Column="2" Style="{StaticResource middleTextBlock}"/> <TextBlock Text="商品1" Grid.Column="2" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="商品3" Grid.Column="3" Style="{StaticResource middleTextBlock}"/> <TextBlock Text="商品2" Grid.Column="3" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="商品4" Grid.Column="4" Style="{StaticResource middleTextBlock}"/> <TextBlock Text="商品3" Grid.Column="4" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="毛利" Grid.Column="5" Style="{StaticResource middleTextBlock}"/> <TextBlock Text="商品4" Grid.Column="5" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="采购商" Grid.Column="6" Style="{StaticResource middleTextBlock}"/> <TextBlock Text="毛利" Grid.Column="6" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="操作" Grid.Column="7" Style="{StaticResource middleTextBlock}"/> <TextBlock Text="采购商" Grid.Column="7" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="操作" Grid.Column="8" Style="{StaticResource middleTextBlock}"/>
<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}"/> <Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}"/>

56
BBWY.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs

@ -21,7 +21,15 @@ namespace BBWY.Server.Business
foreach (var scheme in purchaserSchemeList) foreach (var scheme in purchaserSchemeList)
{ {
if (newPurchaserIdList.Any(p => p == scheme.PurchaserId) && !addPurchaserList.Any(p => p.Id == scheme.PurchaserId)) 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); ExtractNewPurchaser(batchCURDSchemeRequest.AddPurchaseSchemeList, newPurchaserList);
addPurchaseSchemeList = batchCURDSchemeRequest.AddPurchaseSchemeList.Map<List<Model.Db.PurchaseScheme>>(); addPurchaseSchemeList = batchCURDSchemeRequest.AddPurchaseSchemeList.Map<List<PurchaseScheme>>();
foreach (var scheme in addPurchaseSchemeList) foreach (var scheme in addPurchaseSchemeList)
{ {
@ -130,24 +138,32 @@ namespace BBWY.Server.Business
/// <returns></returns> /// <returns></returns>
public IList<PurchaseSchemeResponse> GetPurchaseSchemeList(QuerySchemeRequest querySchemeRequest) public IList<PurchaseSchemeResponse> GetPurchaseSchemeList(QuerySchemeRequest querySchemeRequest)
{ {
var purchaseSchemeList = fsql.Select<PurchaseScheme, Purchaser>().InnerJoin((ps, p) => ps.PurchaserId == p.Id) var select = fsql.Select<PurchaseScheme, Purchaser>().InnerJoin((ps, p) => ps.PurchaserId == p.Id);
.Where((ps, p) => ps.ShopId == querySchemeRequest.ShopId) if (querySchemeRequest.SchemeId != null && querySchemeRequest.SchemeId != 0)
.WhereIf(querySchemeRequest.SkuIdList != null && querySchemeRequest.SkuIdList.Count() > 0, (ps, p) => querySchemeRequest.SkuIdList.Contains(ps.SkuId)) select = select.Where((ps, p) => ps.Id == querySchemeRequest.SchemeId);
.WhereIf(!string.IsNullOrEmpty(querySchemeRequest.PurchaserId), (ps, p) => ps.PurchaserId == querySchemeRequest.PurchaserId) else
.ToList((ps, p) => new PurchaseSchemeResponse() {
{ select = select.WhereIf(querySchemeRequest.ShopId != null && querySchemeRequest.ShopId != 0, (ps, p) => ps.ShopId == querySchemeRequest.ShopId)
Id = ps.Id, .WhereIf(querySchemeRequest.SkuIdList != null && querySchemeRequest.SkuIdList.Count() > 0, (ps, p) => querySchemeRequest.SkuIdList.Contains(ps.SkuId))
ProductId = ps.ProductId, .WhereIf(!string.IsNullOrEmpty(querySchemeRequest.PurchaserId), (ps, p) => ps.PurchaserId == querySchemeRequest.PurchaserId)
SkuId = ps.SkuId, .WhereIf(querySchemeRequest.PurchasePlatform != null, (ps, p) => ps.PurchasePlatform == querySchemeRequest.PurchasePlatform);
ShopId = ps.ShopId, }
PurchaserId = p.Id,
PurchaserName = p.Name, var purchaseSchemeList = select.ToList((ps, p) => new PurchaseSchemeResponse
PurchaserLocation = p.Location, {
DefaultCost = ps.DefaultCost, Id = ps.Id,
RealCost = ps.RealCost, ProductId = ps.ProductId,
CreateTime = ps.CreateTime, SkuId = ps.SkuId,
PurchasePlatform = ps.PurchasePlatform 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) if (purchaseSchemeList.Count > 0)
{ {
var purchaseSchemeIdList = purchaseSchemeList.Select(p => p.Id).ToList(); var purchaseSchemeIdList = purchaseSchemeList.Select(p => p.Id).ToList();

6
BBWY.Server.Model/Db/PurchaseScheme/Purchaser.cs

@ -28,6 +28,12 @@ namespace BBWY.Server.Model.Db
[Column(StringLength = 50)] [Column(StringLength = 50)]
public string Location { get; set; } public string Location { get; set; }
/// <summary>
/// 采购平台
/// </summary>
[Column(MapType = typeof(int?))]
public Enums.Platform? Platform { get; set; }
} }
} }

16
BBWY.Server.Model/Dto/Request/PurchaseScheme/QuerySchemeRequest.cs

@ -1,12 +1,15 @@
using System; using System.Collections.Generic;
using System.Collections.Generic;
using System.Text;
namespace BBWY.Server.Model.Dto namespace BBWY.Server.Model.Dto
{ {
public class QuerySchemeRequest public class QuerySchemeRequest
{ {
public long ShopId { get; set; } /// <summary>
/// 采购方案Id
/// </summary>
public long? SchemeId { get; set; }
public long? ShopId { get; set; }
public IList<string> SkuIdList { get; set; } public IList<string> SkuIdList { get; set; }
@ -14,5 +17,10 @@ namespace BBWY.Server.Model.Dto
/// 采购商Id, 可空 /// 采购商Id, 可空
/// </summary> /// </summary>
public string PurchaserId { get; set; } public string PurchaserId { get; set; }
/// <summary>
/// 采购平台
/// </summary>
public Enums.Platform? PurchasePlatform { get; set; }
} }
} }

3
BBWY.Server.Model/Enums.cs

@ -11,7 +11,8 @@
= 1, = 1,
= 2, = 2,
= 3, = 3,
= 4 = 4,
= 10
} }
/// <summary> /// <summary>

Loading…
Cancel
Save