shanji 1 year ago
parent
commit
b9e83bd712
  1. 2
      BBWY.Client/GlobalContext.cs
  2. 3
      BBWY.Client/Views/FallWare/PrintLSOrderWindow.xaml.cs
  3. 9
      BBWY.Client/Views/SealBox/SealBoxPolicyDetailsWindow.xaml
  4. 4
      BBWY.Client/Views/SealBox/SealBoxPolicyDetailsWindow.xaml.cs
  5. 6
      BBWY.Server.API/Controllers/TestController.cs
  6. 53
      BBWY.Server.Business/EvaluationAssistant/EvaluationAssistantBusiness.cs
  7. 3
      BBWY.Server.Business/PlatformSDK/JDBusiness.cs
  8. 11
      BBWY.Server.Business/Sync/JD/JDServiceOrderSyncBusiness.cs
  9. 2
      BBWY.Server.Business/Sync/ProductSyncBusiness.cs
  10. 43
      BBWY.Server.Business/TestBusiness.cs
  11. 5
      BBWY.Server.Model/Db/Product/ProductSku.cs
  12. 5
      BBWY.Server.Model/Dto/Response/PromotionTask/StartPromotionTaskResponse.cs

2
BBWY.Client/GlobalContext.cs

@ -13,7 +13,7 @@ namespace BBWY.Client
{
ShopServiceGroupList = new List<string>();
ShopServiceGroupLowerList = new List<string>();
ClientVersion = "10232";
ClientVersion = "10234";
}

3
BBWY.Client/Views/FallWare/PrintLSOrderWindow.xaml.cs

@ -156,9 +156,6 @@ namespace BBWY.Client.Views.FallWare
//lSAcceptOrderWindow.Show();
lSAcceptOrderWindow.PrintLSOrder(PrintName);
});
//SealBoxPolicyDetailsWindow policyDetailsWindow = new SealBoxPolicyDetailsWindow(sealBoxSkus, SealBoxModel.ShopName, SealBoxModel.WareName, SealBoxModel.SealBoxId);
//policyDetailsWindow.PrintBox(PrintName);
}
}
}

9
BBWY.Client/Views/SealBox/SealBoxPolicyDetailsWindow.xaml

@ -34,15 +34,18 @@
<TextBlock Text="/"/>
<TextBlock Text="2"/>-->
<TextBlock Text="店铺:" Margin="50 0 0 0"/>
<TextBlock Text="店铺:" Margin="20 0 0 0"/>
<TextBlock Text="{Binding ShopName}"/>
<TextBlock Text="仓库:" Margin="50 0 0 0"/>
<TextBlock Text="仓库:" Margin="20 0 0 0"/>
<TextBlock Text="{Binding WareName}"/>
<TextBlock Text="对接人:" Margin="50 0 0 0"/>
<TextBlock Text="对接人:" Margin="20 0 0 0"/>
<TextBlock Text="{Binding AcceptUserName}"/>
<TextBlock Text="打印时间:" Margin="20 0 0 0"/>
<TextBlock Text="{Binding NowDateTime,StringFormat=yyyy-MM-dd HH:mm:ss}"/>
</StackPanel>
<Grid Grid.Row="2" >

4
BBWY.Client/Views/SealBox/SealBoxPolicyDetailsWindow.xaml.cs

@ -33,6 +33,7 @@ namespace BBWY.Client.Views.SealBox
WareName = wareName;
AcceptUserName = acceptUserName;
SealBoxId = sealBoxId;
NowDateTime = DateTime.Now;
this.UpdateLayout();
}
@ -47,6 +48,7 @@ namespace BBWY.Client.Views.SealBox
public string AcceptUserName { get; set; }
public DateTime? NowDateTime { get; set; }
public long SealBoxId { get; set; }
public void PrintBox(string printName)
@ -62,6 +64,8 @@ namespace BBWY.Client.Views.SealBox
System.Windows.MessageBox.Show("打印机处于错误状态");
return;
}
NowDateTime = DateTime.Now;
this.UpdateLayout();
MyPrintHelper.SetDefaultPrint(printName);//设置默认打印机
PrintDialog printDialog = new PrintDialog();
printDialog.PrintTicket.PageOrientation = PageOrientation.Portrait;//设置为横向打印 PageOrientation.Landscape Portrait为纵向

6
BBWY.Server.API/Controllers/TestController.cs

@ -54,5 +54,11 @@ namespace BBWY.Server.API.Controllers
{
testBusiness.Test_20231221();
}
[HttpPost]
public void UpdateSkuGift()
{
testBusiness.UpdateSkuGift();
}
}
}

53
BBWY.Server.Business/EvaluationAssistant/EvaluationAssistantBusiness.cs

@ -1,6 +1,7 @@
using BBWY.Common.Extensions;
using BBWY.Common.Http;
using BBWY.Common.Models;
using BBWY.Server.Business.Sync;
using BBWY.Server.Model;
using BBWY.Server.Model.Db;
using BBWY.Server.Model.Dto;
@ -32,10 +33,22 @@ namespace BBWY.Server.Business
private List<Enums.PromitionTaskStatus> preTaskStateList;
private ProductBusiness productBusiness;
private FreeSqlMultiDBManager freeSqlMultiDBManager;
private ProductSyncBusiness productSyncBusiness;
private char[] spliter;
public EvaluationAssistantBusiness(RestApiService restApiService, IOptions<GlobalConfig> options, YunDingBusiness yunDingBusiness, IFreeSql fsql, IIdGenerator idGenerator, TaskSchedulerManager taskSchedulerManager, VenderBusiness venderBusiness, QYMessageCenterBusiness qyMessageCenterBusiness, NLogManager nLogManager, ProductBusiness productBusiness, FreeSqlMultiDBManager freeSqlMultiDBManager) : base(restApiService, options, yunDingBusiness)
public EvaluationAssistantBusiness(RestApiService restApiService,
IOptions<GlobalConfig> options,
YunDingBusiness yunDingBusiness,
IFreeSql fsql,
IIdGenerator idGenerator,
TaskSchedulerManager taskSchedulerManager,
VenderBusiness venderBusiness,
QYMessageCenterBusiness qyMessageCenterBusiness,
NLogManager nLogManager,
ProductBusiness productBusiness,
FreeSqlMultiDBManager freeSqlMultiDBManager,
ProductSyncBusiness productSyncBusiness) : base(restApiService, options, yunDingBusiness)
{
this.fsql = fsql;
@ -47,6 +60,7 @@ namespace BBWY.Server.Business
this.nLogManager = nLogManager;
this.productBusiness = productBusiness;
this.freeSqlMultiDBManager = freeSqlMultiDBManager;
this.productSyncBusiness = productSyncBusiness;
validOrderStateList = new List<Enums.OrderState>()
{
Enums.OrderState.,
@ -723,15 +737,6 @@ namespace BBWY.Server.Business
pt.PreTaskId == -1)).Any();
if (!haveNextTask)
{
//if (!string.IsNullOrEmpty(shop.PJZSDingDingKey) && !string.IsNullOrEmpty(shop.PJZSDingDingWebHook))
//{
// try
// {
// dingDingBusiness.SendDingDingBotMessage(shop.PJZSDingDingKey, shop.PJZSDingDingWebHook, $"评价助手\n店铺:{shop.ShopName}\n任务列表无后续任务,为避免空档请及时设置后续任务");
// }
// catch { }
//}
try
{
qyMessageCenterBusiness.SendMessage(shop.TeamId, shop.TeamId, shop.ShopId, "PJZS", shop.ShopName, "任务列表无后续任务,为避免空档请及时设置后续任务", "NOTASK", "PJZS API", string.Empty);
@ -739,6 +744,34 @@ namespace BBWY.Server.Business
catch { }
}
#endregion
#region 立即同步赠品到产品库
{
if (startResponse.GiftSkuList != null && startResponse.GiftSkuList.Count() > 0)
{
var insertGiftSkuList = startResponse.GiftSkuList.Select(x => new ProductSku()
{
Id = x.Id,
IsGift = true,
Logo = x.Logo,
Platform = Enums.Platform.,
Price = x.Price,
ProductId = x.ProductId,
ShopId = shopId,
State = x.State,
Title = x.Title,
CategoryId = x.Source.Value<int>("categoryId"),
CategoryName = productSyncBusiness.GetCategoryName(shop, x.Source.Value<string>("categoryId")),
CreateTime = x.CreateTime
});
try
{
fsql.Insert(insertGiftSkuList).ExecuteAffrows();
}
catch { }
}
}
#endregion
}
/// <summary>

3
BBWY.Server.Business/PlatformSDK/JDBusiness.cs

@ -1620,7 +1620,8 @@ namespace BBWY.Server.Business
{
BrandName = brandName,
JDPromotionId = promotionId,
DeleteGiftSkuList = giftSkuIdList
DeleteGiftSkuList = giftSkuIdList,
GiftSkuList = giftSkuList
};
}
catch (Exception ex)

11
BBWY.Server.Business/Sync/JD/JDServiceOrderSyncBusiness.cs

@ -25,6 +25,7 @@ namespace BBWY.Server.Business.Sync
private IList<int> kuaiDi100PushStateList_qianshou;
private IList<int> kuaiDi100PushStateList_paijian;
private Dictionary<int, Enums.ServiceResult> processResultDic;
private List<string> subscribeKD100ShopNames;
public JDServiceOrderSyncBusiness(RestApiService restApiService, IOptions<GlobalConfig> options, NLogManager nLogManager, IFreeSql fsql, IIdGenerator idGenerator, TaskSchedulerManager taskSchedulerManager, VenderBusiness venderBusiness, YunDingBusiness yunDingBusiness) : base(restApiService, options, nLogManager, fsql, idGenerator, taskSchedulerManager, venderBusiness, yunDingBusiness)
@ -92,6 +93,14 @@ huitongkuaidi 百世快递
{ 90,Enums.ServiceResult.线},
{ 110,Enums.ServiceResult.}
};
subscribeKD100ShopNames = new List<string>()
{
"知礼家居专营店",
"墨森玩具专营店",
"可优车品专营店",
"灵动母婴玩具专营店",
"佳尤汽车用品专营店"
};
}
public void SyncServiceOrder()
@ -164,7 +173,7 @@ huitongkuaidi 百世快递
var isTuiHuoCang = false;
Enums.ServiceResult? serviceResult = null;
#region 待收货服务单,检查是否需要订阅快递100
if (status == Enums.ServiceOrderState.)
if (status == Enums.ServiceOrderState.) //&& subscribeKD100ShopNames.Contains(shop.ShopName)
{
try
{

2
BBWY.Server.Business/Sync/ProductSyncBusiness.cs

@ -276,7 +276,7 @@ namespace BBWY.Server.Business.Sync
}
}
private string GetCategoryName(ShopResponse shop, string categoryId)
public string GetCategoryName(ShopResponse shop, string categoryId)
{
if (categoryCache.TryGetValue(categoryId, out string name))
return name;

43
BBWY.Server.Business/TestBusiness.cs

@ -6,6 +6,7 @@ using BBWY.Server.Model.Db;
using BBWY.Server.Model.Db.Mds;
using BBWY.Server.Model.Dto;
using FreeSql;
using Jd.Api.Request;
using Microsoft.Extensions.Caching.Memory;
using Microsoft.Extensions.Options;
using Newtonsoft.Json;
@ -425,6 +426,48 @@ namespace BBWY.Server.Business
Console.WriteLine(b["123"]);
}
public void UpdateSkuGift()
{
var dbSkuIdList = fsql.Select<ProductSku>().Where(ps => ps.IsGift == false).ToList(ps => ps.Id); //非赠品sku
Console.WriteLine($"非赠品sku {dbSkuIdList.Count()}");
var ptList = fsql.Select<PromotionTask>().Where(pt => !string.IsNullOrEmpty(pt.GiftTemplatePutNewSku)).ToList();
var giftSkuList = new List<string>();
var splitChar = new char[] { ',' };
foreach (var pt in ptList)
{
giftSkuList.AddRange(pt.GiftTemplatePutNewSku.Split(splitChar, StringSplitOptions.RemoveEmptyEntries));
}
Console.WriteLine($"pjzs任务赠品sku {giftSkuList.Count()}");
var updateGiftSkuIdList = dbSkuIdList.Intersect(giftSkuList).ToList();
Console.WriteLine($"两者交集 Intersect {updateGiftSkuIdList.Count()}");
var updateList = new List<string>();
var index = 1;
foreach (var skuId in updateGiftSkuIdList)
{
updateList.Add(skuId);
if (updateList.Count() == 20)
{
fsql.Transaction(() =>
{
fsql.Update<ProductSku>(updateList).Set(ps => ps.IsGift, true).ExecuteAffrows();
});
updateList.Clear();
Console.WriteLine($"update productsku gift {index}");
index++;
}
}
if (updateList.Count() > 0)
{
fsql.Transaction(() =>
{
fsql.Update<ProductSku>(updateList).Set(ps => ps.IsGift, true).ExecuteAffrows();
});
updateList.Clear();
Console.WriteLine($"last update productsku gift");
}
}
}

5
BBWY.Server.Model/Db/Product/ProductSku.cs

@ -57,6 +57,11 @@ namespace BBWY.Server.Model.Db
/// 1:业务团队 2:供应链
/// </summary>
public int? Purchaser { get; set; }
/// <summary>
/// 是否为赠品
/// </summary>
public bool IsGift { get; set; } = false;
}
}

5
BBWY.Server.Model/Dto/Response/PromotionTask/StartPromotionTaskResponse.cs

@ -1,4 +1,5 @@
using System.Collections.Generic;
using BBWY.Server.Model.Db;
using System.Collections.Generic;
namespace BBWY.Server.Model.Dto
{
@ -9,6 +10,8 @@ namespace BBWY.Server.Model.Dto
public long JDPromotionId { get; set; }
public IList<string> DeleteGiftSkuList { get; set; }
public IList<ProductSkuResponse> GiftSkuList { get; set; }
}
public class StartPromotionDelayTaskResponse

Loading…
Cancel
Save