diff --git a/Admin.Core.Api/Admin.Core.Model.xml b/Admin.Core.Api/Admin.Core.Model.xml index e88535bf..90160ab3 100644 --- a/Admin.Core.Api/Admin.Core.Model.xml +++ b/Admin.Core.Api/Admin.Core.Model.xml @@ -3371,14 +3371,24 @@ 产品编号 + + + 订单数量 + + - 产品名称 + 产品型号 - + - 订单量 + 内胆数量 + + + + + 箱体数量 @@ -3406,12 +3416,12 @@ 异常量 - + 内胆码已打量 - + 箱壳码已打量 diff --git a/Admin.Core.Extensions/Middlewares/AucmaTaskMildd.cs b/Admin.Core.Extensions/Middlewares/AucmaTaskMildd.cs new file mode 100644 index 00000000..2284aba7 --- /dev/null +++ b/Admin.Core.Extensions/Middlewares/AucmaTaskMildd.cs @@ -0,0 +1,32 @@ +using Admin.Core.Common; +using log4net; +using Microsoft.AspNetCore.Builder; +using System; + +namespace Admin.Core.Extensions +{ + /// + ///扫码器服务 + /// + public static class AucmaTaskMildd + { + private static readonly ILog log = LogManager.GetLogger(typeof(AucmaTaskMildd)); + public static async void AucmaTaskMildds(this IApplicationBuilder app) + { + if (app == null) throw new ArgumentNullException(nameof(app)); + + try + { + if (Appsettings.app("Middleware", "Scanner", "Enabled").ObjToBool()) + { + Console.WriteLine("扫码器服务已开启"); + } + } + catch (Exception e) + { + log.Error($"An error was reported when starting the job service.\n{e.Message}"); + throw; + } + } + } +} diff --git a/Admin.Core.Extensions/Middlewares/ScannerMildd.cs b/Admin.Core.Extensions/Middlewares/ScannerMildd.cs index 4f49d703..40aacd5d 100644 --- a/Admin.Core.Extensions/Middlewares/ScannerMildd.cs +++ b/Admin.Core.Extensions/Middlewares/ScannerMildd.cs @@ -1,16 +1,8 @@ using Admin.Core.Common; -using Admin.Core.IService.ISys; -using Admin.Core.Model.Sys; -using Admin.Core.Tasks; using Aucma.Core.Scanner; using log4net; using Microsoft.AspNetCore.Builder; -using Microsoft.AspNetCore.Http; -using StackExchange.Profiling.Internal; using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; namespace Admin.Core.Extensions { diff --git a/Admin.Core.Extensions/ServiceExtensions/AucmaTaskSetup.cs b/Admin.Core.Extensions/ServiceExtensions/AucmaTaskSetup.cs new file mode 100644 index 00000000..dca324c9 --- /dev/null +++ b/Admin.Core.Extensions/ServiceExtensions/AucmaTaskSetup.cs @@ -0,0 +1,39 @@ +using Admin.Core.Common; +using Admin.Core.Tasks; +using Aucma.Core.Scanner; +using Microsoft.Extensions.DependencyInjection; +using Quartz; +using Quartz.Spi; +using SqlSugar; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Reflection; +using System.Threading.Tasks; + +namespace Admin.Core.Extensions +{ + /// + /// 启动服务 + /// + public static class AucmaTaskSetup + { + public static void AddAucmaTaskSetup(this IServiceCollection services) + { + services.AddSingleton(); + + var baseType = typeof(IScannerService); + var path = AppDomain.CurrentDomain.RelativeSearchPath ?? AppDomain.CurrentDomain.BaseDirectory; + var referencedAssemblies = System.IO.Directory.GetFiles(path, "Aucma.Core.Tasks.dll").Select(Assembly.LoadFrom).ToArray(); + var types = referencedAssemblies + .SelectMany(a => a.DefinedTypes) + .Select(type => type.AsType()) + .Where(x => x != baseType && baseType.IsAssignableFrom(x)).ToArray(); + var implementTypes = types.Where(x => x.IsClass).ToArray(); + foreach (var implementType in implementTypes) + { + services.AddTransient(implementType); + } + } + } +} \ No newline at end of file diff --git a/Admin.Core.Model/ViewModels/PrintPlanInfoView.cs b/Admin.Core.Model/ViewModels/PrintPlanInfoView.cs index 9c10c52f..5a87e56d 100644 --- a/Admin.Core.Model/ViewModels/PrintPlanInfoView.cs +++ b/Admin.Core.Model/ViewModels/PrintPlanInfoView.cs @@ -20,17 +20,25 @@ namespace Admin.Core.Model.ViewModels /// public string ProductCode { get; set; } /// - /// 产品名称 + /// 订单数量 + /// + public int PlanAmount { get; set; } = 0; + /// + /// 产品型号 /// public string ProductName { get; set; } /// - /// 订单量 + /// 内胆数量 + /// + public int LinerAmount { get; set; } = 0; + /// + /// 箱体数量 /// - public int PlanAmount { get; set; } + public int BoxAmount { get; set; } = 0; /// /// 完成量 /// - public int CompleteAmount { get; set; } + public int CompleteAmount { get; set; } = 0; /// /// 物料编码 /// @@ -50,11 +58,11 @@ namespace Admin.Core.Model.ViewModels /// /// 内胆码已打量 /// - public int LinerAmount { get; set; } = 0; + public int PrintLinerAmount { get; set; } = 0; /// /// 箱壳码已打量 /// - public int BoxAmount { get; set; } = 0; + public int PrintBoxAmount { get; set; } = 0; /// /// 剩余数量 /// diff --git a/Admin.Core.RealTimeService/Admin.Core.RealTimeService.csproj b/Admin.Core.RealTimeService/Admin.Core.RealTimeService.csproj index db09931c..0289941a 100644 --- a/Admin.Core.RealTimeService/Admin.Core.RealTimeService.csproj +++ b/Admin.Core.RealTimeService/Admin.Core.RealTimeService.csproj @@ -35,6 +35,7 @@ + diff --git a/Admin.Core.RealTimeService/Startup.cs b/Admin.Core.RealTimeService/Startup.cs index 3eaa29ac..6b3027a1 100644 --- a/Admin.Core.RealTimeService/Startup.cs +++ b/Admin.Core.RealTimeService/Startup.cs @@ -8,6 +8,7 @@ using Admin.Core.Repository; using Admin.Core.Service; using Admin.Core.Tasks; using Aucma.Core.ScannerGun; +using Aucma.Core.Tasks; using Autofac; using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Hosting; @@ -62,7 +63,7 @@ namespace Admin.Core.RealTimeService AddServices(services); // - services.AddJobSetup(); + services.AddAucmaTaskSetup(); //ֱ֧ȫ :֧ System.Text.Encoding.GetEncoding("GB2312") System.Text.Encoding.GetEncoding("GB18030") Encoding.RegisterProvider(CodePagesEncodingProvider.Instance); @@ -84,16 +85,12 @@ namespace Admin.Core.RealTimeService /// /// /// - public void Configure(IApplicationBuilder app, ISysTasksQzService tasksQzService, - ISchedulerCenter schedulerCenter) + public void Configure(IApplicationBuilder app) { // ʹþ̬ļ app.UseStaticFiles(); - // ȻȨм - //app.UseAuthorization(); - // QuartzNetJobȷ - app.UseQuartzJobMildd(tasksQzService, schedulerCenter); - //app.UseScannerGunMildd(scannerGunService); + + app.AucmaTaskMildds(); } #region ע diff --git a/Admin.Core.Service/Service_New/BaseOrderInfoServices.cs b/Admin.Core.Service/Service_New/BaseOrderInfoServices.cs index d25b3f64..cb172546 100644 --- a/Admin.Core.Service/Service_New/BaseOrderInfoServices.cs +++ b/Admin.Core.Service/Service_New/BaseOrderInfoServices.cs @@ -50,7 +50,6 @@ namespace Admin.Core.Service List list = new List(); List orderList = await _baseOrderInfoRepository.QueryAsync(); List orderBomInfoList = await _orderBomInfoRepository.QueryAsync(); - //List bomInfoList = await _baseBomInfoRepository.QueryAsync(); List printOrderInfoList = await _printOrderInfoRepository.QueryAsync(); bbinfolist.Clear(); foreach (BaseOrderInfo order in orderList) @@ -58,22 +57,28 @@ namespace Admin.Core.Service var bomList = await _orderBomInfoRepository.QueryAsync(d => d.ParentId.Equals(order.MaterialCode)); if (bomList != null) { + bomList.ForEach(b => { List bbList = RecursionFn(orderBomInfoList, b.MaterialCode); - if (b.ParentId.IsNotEmptyOrNull()) + if (b.ParentId.IsNotEmptyOrNull() && (b.MaterialName.Contains("箱体") || b.MaterialName.Contains("内胆"))) { - PrintPlanInfoView view = new PrintPlanInfoView(); - view.OrderCode = order.OrderCode; - view.ProductCode = order.MaterialCode; - view.ProductName = order.MaterialName; - view.PlanAmount = order.OrderAmount; - view.MaterialCode = b.MaterialCode; - view.MaterialName = b.MaterialName; - view.StandardAmount = b.StandardAmount; - view.CreateTime = order.CreatedTime; - - list.Add(view); + bbList.ForEach(bb => + { + list.Add(new PrintPlanInfoView() + { + OrderCode = order.OrderCode, + ProductCode = order.MaterialCode, + ProductName = order.MaterialName, + PlanAmount = order.OrderAmount, + MaterialCode = bb.MaterialCode, + MaterialName = bb.MaterialName, + LinerAmount = bb.StandardAmount, + BoxAmount = bb.StandardAmount, + StandardAmount = bb.StandardAmount, + CreateTime = order.CreatedTime + }); + }); } }); } diff --git a/Admin.Core.sln b/Admin.Core.sln index 4218a113..550e8dc8 100644 --- a/Admin.Core.sln +++ b/Admin.Core.sln @@ -65,8 +65,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Aucma.Core.Scanner", "Aucma EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "8.Other", "8.Other", "{F8FB57F6-5465-4E60-B052-D3A63C3C56AE}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Aucma.Core.Zebra", "Aucma.Core.Zebra\Aucma.Core.Zebra.csproj", "{C24510B9-90E2-46FA-937B-AB291EAAA7CD}" -EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Aucma.Core.PLc", "Aucma.Core.PLc\Aucma.Core.PLc.csproj", "{9EE12F11-F9E4-46DD-935D-F6EDD495A6FC}" EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Aucma.Core.RunPlc", "Aucma.Core.RunPlc\Aucma.Core.RunPlc.csproj", "{680718C5-E39C-442F-AC9E-4A56E15AF261}" @@ -81,6 +79,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Aucam.Core.PerfusionService EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Aucma.Scada.UI", "Aucma.Scada.UI\Aucma.Scada.UI.csproj", "{434F9CE2-2225-4893-9BA2-2681C29E9056}" EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Aucma.Core.Tasks", "Aucma.Core.Tasks\Aucma.Core.Tasks.csproj", "{A7FF5119-A6DE-4947-A1F2-90FE0C628A88}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -167,10 +167,6 @@ Global {5CF85AD7-DBC9-4466-952B-6742F37E417D}.Debug|Any CPU.Build.0 = Debug|Any CPU {5CF85AD7-DBC9-4466-952B-6742F37E417D}.Release|Any CPU.ActiveCfg = Release|Any CPU {5CF85AD7-DBC9-4466-952B-6742F37E417D}.Release|Any CPU.Build.0 = Release|Any CPU - {C24510B9-90E2-46FA-937B-AB291EAAA7CD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {C24510B9-90E2-46FA-937B-AB291EAAA7CD}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C24510B9-90E2-46FA-937B-AB291EAAA7CD}.Release|Any CPU.ActiveCfg = Release|Any CPU - {C24510B9-90E2-46FA-937B-AB291EAAA7CD}.Release|Any CPU.Build.0 = Release|Any CPU {9EE12F11-F9E4-46DD-935D-F6EDD495A6FC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {9EE12F11-F9E4-46DD-935D-F6EDD495A6FC}.Debug|Any CPU.Build.0 = Debug|Any CPU {9EE12F11-F9E4-46DD-935D-F6EDD495A6FC}.Release|Any CPU.ActiveCfg = Release|Any CPU @@ -199,6 +195,10 @@ Global {434F9CE2-2225-4893-9BA2-2681C29E9056}.Debug|Any CPU.Build.0 = Debug|Any CPU {434F9CE2-2225-4893-9BA2-2681C29E9056}.Release|Any CPU.ActiveCfg = Release|Any CPU {434F9CE2-2225-4893-9BA2-2681C29E9056}.Release|Any CPU.Build.0 = Release|Any CPU + {A7FF5119-A6DE-4947-A1F2-90FE0C628A88}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A7FF5119-A6DE-4947-A1F2-90FE0C628A88}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A7FF5119-A6DE-4947-A1F2-90FE0C628A88}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A7FF5119-A6DE-4947-A1F2-90FE0C628A88}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -227,7 +227,6 @@ Global {EC1A6A43-1B6B-42AF-B00E-94DF4DF42111} = {BD987F3A-4E6C-4C47-B28F-1671F875EAE3} {563882EC-C110-4BCB-B913-3B62124BF680} = {BD987F3A-4E6C-4C47-B28F-1671F875EAE3} {5CF85AD7-DBC9-4466-952B-6742F37E417D} = {F8FB57F6-5465-4E60-B052-D3A63C3C56AE} - {C24510B9-90E2-46FA-937B-AB291EAAA7CD} = {F8FB57F6-5465-4E60-B052-D3A63C3C56AE} {9EE12F11-F9E4-46DD-935D-F6EDD495A6FC} = {F8FB57F6-5465-4E60-B052-D3A63C3C56AE} {680718C5-E39C-442F-AC9E-4A56E15AF261} = {A4C60BC6-0120-48F4-A60D-C73160B122AA} {61EE37C2-A9C2-40DE-A96E-D7E4DEB5FEC3} = {F8FB57F6-5465-4E60-B052-D3A63C3C56AE} @@ -235,6 +234,7 @@ Global {C70810CE-041A-4880-99B3-FFCC8B672B42} = {BD987F3A-4E6C-4C47-B28F-1671F875EAE3} {BFABE9E5-C71D-42FE-94AE-934B9F74B3D0} = {FA2FF2A3-135E-4CA2-9042-76BB71623D5A} {434F9CE2-2225-4893-9BA2-2681C29E9056} = {BD987F3A-4E6C-4C47-B28F-1671F875EAE3} + {A7FF5119-A6DE-4947-A1F2-90FE0C628A88} = {F8FB57F6-5465-4E60-B052-D3A63C3C56AE} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {8047AB56-042B-4AE4-B06A-34137067A86A} diff --git a/Aucma.Core.BoxFoam/Views/MainWindow.xaml b/Aucma.Core.BoxFoam/Views/MainWindow.xaml index af5e143f..a6e56940 100644 --- a/Aucma.Core.BoxFoam/Views/MainWindow.xaml +++ b/Aucma.Core.BoxFoam/Views/MainWindow.xaml @@ -68,6 +68,9 @@