Browse Source

更新采购商经营模式

liangku_skuoptimazation
shanji 1 year ago
parent
commit
6d3392047c
  1. 95
      BBWYB.PurchaserCapture/MainWindow.xaml.cs
  2. 94
      BBWYB.PurchaserCapture/Model/Db/OrderPurchaseInfo.cs
  3. 67
      BBWYB.PurchaserCapture/Model/Db/OrderPurchaseSkuInfo.cs

95
BBWYB.PurchaserCapture/MainWindow.xaml.cs

@ -40,6 +40,7 @@ namespace BBWYB.PurchaserCapture
wb2.CoreWebView2.WebResourceResponseReceived += CoreWebView2_WebResourceResponseReceived;
wb2.CoreWebView2.WebResourceRequested += CoreWebView2_WebResourceRequested;
wb2.CoreWebView2.NavigationCompleted += CoreWebView2_NavigationCompleted;
wb2.CoreWebView2.Navigate("https://www.1688.com");
}
private void CoreWebView2_NavigationCompleted(object? sender, CoreWebView2NavigationCompletedEventArgs e)
@ -65,30 +66,39 @@ namespace BBWYB.PurchaserCapture
Console.WriteLine($"HttpCode {e.Response.StatusCode},已忽略 {e.Request.Uri}");
return;
}
var stream = await e.Response.GetContentAsync();
var sr = new StreamReader(stream);
var content = sr.ReadToEnd();
sr.Dispose();
var match = Regex.Match(content, "\"bizTypeName\":\\s?\"(.*)\",\"isShili");
if (!match.Success)
try
{
Console.WriteLine($"bizTypeName解析失败,已忽略 {e.Request.Uri}");
return;
}
var bizTypeName = match.Groups[1].Value;
Console.WriteLine(bizTypeName);
if (!string.IsNullOrEmpty(purchaserId))
{
if (!string.IsNullOrEmpty(purchaserMemberId))
var stream = await e.Response.GetContentAsync();
var sr = new StreamReader(stream);
var content = sr.ReadToEnd();
sr.Dispose();
var match = Regex.Match(content, "\"bizTypeName\":\\s?\"(.*)\",\"isShili");
if (!match.Success)
{
Console.WriteLine($"bizTypeName解析失败,已忽略 {e.Request.Uri}");
return;
}
var bizTypeName = match.Groups[1].Value;
Console.WriteLine(bizTypeName);
if (!string.IsNullOrEmpty(purchaserId))
{
if (!content.Contains(purchaserMemberId))
if (!string.IsNullOrEmpty(purchaserMemberId))
{
Console.WriteLine($"memberId验证失败,已忽略 {e.Request.Uri}");
return;
if (!content.Contains(purchaserMemberId))
{
Console.WriteLine($"memberId验证失败,已忽略 {e.Request.Uri}");
return;
}
}
Console.ForegroundColor = ConsoleColor.Green;
Console.WriteLine($"更新采购商{purchaserId}");
Console.ResetColor();
fsql.Update<Purchaser>(purchaserId).Set(p => p.ManagmentModeText, bizTypeName).ExecuteAffrows();
}
Console.WriteLine($"更新采购商{purchaserId}");
fsql.Update<Purchaser>(purchaserId).Set(p => p.ManagmentModeText, bizTypeName).ExecuteAffrows();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
@ -123,20 +133,39 @@ namespace BBWYB.PurchaserCapture
{
var sk = "order";
//var sk = "consign";
var pspList = fsql.Select<PurchaseSchemeProduct, Purchaser>()
.InnerJoin((psp2, p) => psp2.PurchaserId == p.Id)
.Where((psp2, p) => string.IsNullOrEmpty(p.ManagmentModeText))
.GroupBy((psp2, p) => new { p.Id, p.MemberId })
.WithTempQuery(g => new { MaxId = g.Max(g.Value.Item1.Id), PurchaserId = g.Key.Id, MemberId = g.Key.MemberId })
.From<PurchaseSchemeProduct>()
.InnerJoin((psp2, psp1) => psp2.MaxId == psp1.Id)
.OrderByDescending((psp2, psp1) => Guid.NewGuid())
.ToList((psp2, psp1) => new
{
psp1.PurchaserId,
psp2.MemberId,
psp1.PurchaseProductId
});
var pspList = fsql.Select<OrderPurchaseInfo, Purchaser>()
.InnerJoin((opi, p) => opi.PurchaserId == p.Id)
.Where((opi, p) => string.IsNullOrEmpty(p.ManagmentModeText))
.GroupBy((opi, p) => new { p.Id, p.MemberId })
.WithTempQuery(g => new
{
MaxPoId = g.Max(g.Value.Item1.PurchaseOrderId),
PurchaserId = g.Key.Id,
g.Key.MemberId
})
.From<OrderPurchaseSkuInfo>()
.InnerJoin((opi1, ops) => opi1.MaxPoId == ops.PurchaseOrderId)
.GroupBy((opi1, ops) => new { opi1.PurchaserId, opi1.MemberId, opi1.MaxPoId, ops.PurchaseProductId })
.ToList(g => new { g.Key.PurchaserId, g.Key.MemberId, g.Key.MaxPoId, g.Key.PurchaseProductId });
//var pspList = fsql.Select<PurchaseSchemeProduct, Purchaser>()
// .InnerJoin((psp2, p) => psp2.PurchaserId == p.Id)
// .Where((psp2, p) => string.IsNullOrEmpty(p.ManagmentModeText))
// .GroupBy((psp2, p) => new { p.Id, p.MemberId })
// .WithTempQuery(g => new { MaxId = g.Max(g.Value.Item1.Id), PurchaserId = g.Key.Id, MemberId = g.Key.MemberId })
// .From<PurchaseSchemeProduct>()
// .InnerJoin((psp2, psp1) => psp2.MaxId == psp1.Id)
// .OrderByDescending((psp2, psp1) => Guid.NewGuid())
// .ToList((psp2, psp1) => new
// {
// psp1.PurchaserId,
// psp2.MemberId,
// psp1.PurchaseProductId
// });
for (var i = 0; i < pspList.Count; i++)
{

94
BBWYB.PurchaserCapture/Model/Db/OrderPurchaseInfo.cs

@ -0,0 +1,94 @@
using FreeSql.DataAnnotations;
namespace BBWYB.Server.Model.Db
{
[Table(Name = "orderpurchaseinfo", DisableSyncStructure = true)]
public partial class OrderPurchaseInfo
{
[Column(IsPrimary = true, IsNullable = false)]
public long Id { get; set; }
[Column(StringLength = 50, IsNullable = false)]
public string OrderId { get; set; }
[Column(DbType = "datetime")]
public DateTime? CreateTime { get; set; }
/// <summary>
/// 꽃뭔瑯뵀Id
/// </summary>
[Column(StringLength = 100)]
public string PurchaseAccountId { get; set; }
/// <summary>
/// 꽃뭔瑯뵀츰냔
/// </summary>
[Column(StringLength = 100)]
public string PurchaseAccountName { get; set; }
[Column(MapType = typeof(int?))]
public Enums.PurchaseMethod? PurchaseMethod { get; set; }
/// <summary>
/// 꽃뭔데Id
/// </summary>
[Column(StringLength = 100)]
public string PurchaseOrderId { get; set; }
[Column(MapType = typeof(int?))]
public Enums.Platform? PurchasePlatform { get; set; }
/// <summary>
/// 꽃뭔�Id
/// </summary>
[Column(StringLength = 100)]
public string PurchaserId { get; set; }
/// <summary>
/// 꽃뭔�츰냔
/// </summary>
[Column(StringLength = 100)]
public string PurchaserName { get; set; }
/// <summary>
/// 듦팟Id
/// </summary>
public long? ShopId { get; set; }
/// <summary>
/// 백橄땐데Sku
/// </summary>
[Column(StringLength = 500)]
public string BelongSkuIds { get; set; }
[Column(DbType = "bit")]
public bool IsEnabled { get; set; } = true;
/// <summary>
/// 꽃뭔데구鬧
/// </summary>
[Column(StringLength = 500)]
public string Remark { get; set; }
/// <summary>
/// �零저袈꽃뭔데珂쇌
/// </summary>
[Column(DbType = "datetime", IsNullable = true)]
public DateTime HistorySettingTime { get; set; }
/// <summary>
/// 꽃뭔데榴檄
/// </summary>
[Column(MapType = typeof(int?))]
public Enums.PurchaseOrderState? OrderState { get; set; }
/// <summary>
/// 角뤠틱송
/// </summary>
[Column(MapType = typeof(int?))]
public Enums.AutoEditOrderPriceType? IsAutoEditOrderPrice { get; set; }
}
}

67
BBWYB.PurchaserCapture/Model/Db/OrderPurchaseSkuInfo.cs

@ -0,0 +1,67 @@
using FreeSql.DataAnnotations;
namespace BBWYB.Server.Model.Db
{
/// <summary>
/// 采购单Sku表
/// </summary>
[Table(Name = "orderpurchaseskuinfo", DisableSyncStructure = true)]
public partial class OrderPurchaseSkuInfo
{
[Column(IsPrimary = true, StringLength = 100)]
public string Id { get; set; }
[Column(DbType = "datetime")]
public DateTime? CreateTime { get; set; }
///// <summary>
///// 物流变更时间
///// </summary>
//[Column(DbType = "datetime")]
//public DateTime? ExpressChangeTime { get; set; }
///// <summary>
///// 物流状态
///// </summary>
//[Column(StringLength = 100)]
//public string ExpressState { get; set; }
/// <summary>
/// 店铺订单Id
/// </summary>
[Column(StringLength = 100)]
public string OrderId { get; set; }
/// <summary>
/// 采购订单Id
/// </summary>
[Column(StringLength = 100)]
public string PurchaseOrderId { get; set; }
/// <summary>
/// 采购商品Id(spu)
/// </summary>
[Column(StringLength = 100)]
public string PurchaseProductId { get; set; }
/// <summary>
/// 采购Sku
/// </summary>
[Column(StringLength = 100)]
public string PurchaseSkuId { get; set; }
/// <summary>
/// 店铺Id
/// </summary>
public long? ShopId { get; set; }
/// <summary>
/// 快递单
/// </summary>
[Column(StringLength = 100)]
public string WaybillNo { get; set; }
}
}
Loading…
Cancel
Save