新增原料入场记录功能,包含免密接口和数据同步,更新相关控制器、实体和服务,支持条码/批次号生成及管理,优化用户体验和系统实时数据处理能力。

This commit is contained in:
geht
2026-05-09 15:55:11 +08:00
parent 64e978a618
commit 16bb22a113
38 changed files with 2398 additions and 10 deletions

View File

@@ -13,11 +13,13 @@ using YY.Admin.Infrastructure.Hubs;
using YY.Admin.Infrastructure.Network;
using YY.Admin.Infrastructure.Storage;
using YY.Admin.Infrastructure.Sync;
using YY.Admin.Services.Service;
using YY.Admin.Services.Service.Category;
using YY.Admin.Services.Service.Customer;
using YY.Admin.Services.Service.Dict;
using YY.Admin.Services.Service.MixerMaterial;
using YY.Admin.Services.Service.Supplier;
using YY.Admin.Services.Service.RawMaterialEntry;
using YY.Admin.Services.Service.Vehicle;
using YY.Admin.Services.Service.WeightRecord;
@@ -52,10 +54,15 @@ public class SyncModule : IModule
// 密炼物料信息API直连 + STOMP实时通知
containerRegistry.RegisterSingleton<IMixerMaterialService, MixerMaterialService>();
containerRegistry.RegisterSingleton<MixerMaterialSyncCoordinator>();
// 原料入场记录:免密 API 直连 + STOMP 实时通知
containerRegistry.RegisterSingleton<IRawMaterialEntryService, RawMaterialEntryService>();
containerRegistry.RegisterSingleton<RawMaterialEntrySyncCoordinator>();
// 分类字典:启动同步 + 断线重连补刷
containerRegistry.RegisterSingleton<CategorySyncCoordinator>();
// 数据字典:启动同步 + 断线重连补刷
containerRegistry.RegisterSingleton<DictSyncCoordinator>();
// 统一轮询管理器(修改 SyncPollManager.PollInterval 即可调整所有模块的轮询间隔)
containerRegistry.RegisterSingleton<SyncPollManager>();
var serviceCollection = new ServiceCollection();
serviceCollection.AddTransient<DisconnectGuardHandler>();
@@ -100,6 +107,8 @@ public class SyncModule : IModule
_ = Task.Run(() => signalService.ConnectUnifiedDeviceChannelAsync(CancellationToken.None));
// 强制实例化事件订阅器(单例,构造函数内完成订阅注册)
_ = containerProvider.Resolve<SysUserEventSubscriber>();
// 统一轮询管理器必须在各协调器之前实例化,确保 Register() 能正常接收注册
_ = containerProvider.Resolve<SyncPollManager>();
// 强制实例化车辆同步协调器(构造函数内订阅 STOMP 车辆变更事件)
_ = containerProvider.Resolve<VehicleSyncCoordinator>();
// 强制实例化客户同步协调器
@@ -110,6 +119,8 @@ public class SyncModule : IModule
_ = containerProvider.Resolve<WeightRecordSyncCoordinator>();
// 强制实例化密炼物料同步协调器
_ = containerProvider.Resolve<MixerMaterialSyncCoordinator>();
// 强制实例化原料入场记录同步协调器
_ = containerProvider.Resolve<RawMaterialEntrySyncCoordinator>();
// 强制实例化分类字典同步协调器
_ = containerProvider.Resolve<CategorySyncCoordinator>();
// 强制实例化数据字典同步协调器