222
schangxiang@126.com
2025-04-29 00686ff488ea7305b58e99066dd3fb9f5e68ef1b
222
已添加3个文件
已修改2个文件
65 ■■■■■ 文件已修改
PipeLineLems/server/src/CMS.Plugin.PipeLineLems/CMS.Plugin.PipeLineLems.csproj 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
PipeLineLems/server/src/CMS.Plugin.PipeLineLems/ProjectService/PipeLineLemsProjectService.cs 48 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
README.md 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
管子线LMESDemo_V2.cmsproj 补丁 | 查看 | 原始文档 | blame | 历史
随手记.txt 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
PipeLineLems/server/src/CMS.Plugin.PipeLineLems/CMS.Plugin.PipeLineLems.csproj
@@ -40,10 +40,10 @@
    </ItemGroup>
    <ItemGroup>
        <PackageReference Include="CMS.Framework.AspNetCore" Version="2.16.1" />
        <PackageReference Include="CMS.Extensions.Variable" Version="2.16.1" />
        <PackageReference Include="CMS.Extensions.Data" Version="2.16.1" />
        <PackageReference Include="CMS.Data.Stressing" Version="2.16.1" />
        <PackageReference Include="CMS.Framework.AspNetCore" Version="2.28.3" />
        <PackageReference Include="CMS.Extensions.Variable" Version="2.28.3" />
        <PackageReference Include="CMS.Extensions.Data" Version="2.28.3" />
        <PackageReference Include="CMS.Data.Stressing" Version="2.28.3" />
        <PackageReference Include="CMS.Extensions.Abp" Version="1.4.0" />
        <PackageReference Include="WebApiClientCore" Version="2.0.4" />
    </ItemGroup>
PipeLineLems/server/src/CMS.Plugin.PipeLineLems/ProjectService/PipeLineLemsProjectService.cs
@@ -27,7 +27,7 @@
        private IServiceProvider _serviceProvider;
        private readonly ILogger<PipeLineLemsProjectService> _logger;
        private readonly IVariableDataCache _variableDataCache;
        private readonly IWorkSectionManager _workSectionManager;
        /// <summary>
        /// å˜é‡æœåŠ¡
        /// </summary>
@@ -56,7 +56,6 @@
        /// <param name="logger">The logger.</param>
        /// <param name="variableDataCache">The variable data cache.</param>
        public PipeLineLemsProjectService(
            IWorkSectionManager workSectionManager,
            VariableService variableService,
            IServiceProvider serviceProvider, ILogger<PipeLineLemsProjectService> logger, IVariableDataCache variableDataCache)
        {
@@ -64,7 +63,6 @@
            _logger = logger;
            _variableDataCache = variableDataCache;
            _variableService = variableService;
            _workSectionManager = workSectionManager;
        }
        /// <summary>
@@ -82,6 +80,7 @@
            _monitorVariableNames = new Dictionary<string, string>
            {
                { "打码进站信号", "打码进站信号(描述)" },
                { "切割进站信号", "切割进站信号(描述)" },
            };
            // åˆ›å»ºé€šé“监听
@@ -154,7 +153,7 @@
                    _ = Task.Run(async () =>
                    {
                        //await HanlderForPringBarCodeAsync();
                        await HanlderForPringBarCodeAsync();
                        // ä¾‹1:同步处理
                        //await ProcessAsync();
@@ -163,29 +162,29 @@
                    });
                }
                //if (changed.Name == "切割进站信号" && changed.New?.Value.SafeString().ToBool() == true)
                //{
                if (changed.Name == "切割进站信号" && changed.New?.Value.SafeString().ToBool() == true)
                {
                //    // TODO: å¤„理变量值变化
                //    // Tips:https://cms-docs.shengyc.com/cms/api/%E5%90%8E%E7%AB%AF#3-%E5%8F%98%E9%87%8F%E6%A8%A1%E5%9D%97
                //    /* è¯´æ˜Žï¼šé€šè¿‡è®¢é˜… IVariableDataCache.TagChanged äº‹ä»¶ï¼Œæ‚¨å¯ä»¥å®žæ—¶ç›‘控变量的变化。此事件会传递所有变量至事件处理函数,因此,业务层需在函数中筛选关注的变量。
                //        æ³¨æ„äº‹é¡¹ï¼š
                //        ï¼ˆ1)性能影响: å‘布事件时,事件的发送者将阻塞流程。因此,强烈建议避免在事件处理函数中执行 I/ O æ“ä½œã€HTTP æŽ¥å£è®¿é—®æˆ–其他耗时操作,以防止对系统性能产生严重影响,导致整个系统响应延迟。
                //        ï¼ˆ2)高频率触发: ç”±äºŽäº‹ä»¶è®¢é˜…了全量变量,触发频率可能非常高。
                //        ï¼ˆ3)异步处理: é‰´äºŽäº‹ä»¶è§¦å‘频率很高,建议业务层在筛选关注变量后,使用 Task å¯åŠ¨æ–°çº¿ç¨‹å¤„ç†ä¸šåŠ¡é€»è¾‘ï¼Œä»¥é¿å…é˜»å¡žæ ¸å¿ƒçš„å˜é‡ç›‘å¬åŠŸèƒ½ï¼Œå®žçŽ°ä¸šåŠ¡å±‚ä¸Žå¹³å°åŸºåº§çš„è§£è€¦ã€‚
                //        ï¼ˆ4)并发管理: å¦‚果业务层并发量大,必须优化代码设计和实施,以减少在高并发情况下的系统资源消耗,防止系统性能问题。
                //        ï¼ˆ5)代码安全: å®‰è£…并使用 CMS.CodeAnalysis åˆ†æžå™¨æ¥åˆ†æž IVariableDataCache.TagChanged çš„使用情况。该工具能在使用不当时提供编译错误,帮助您提高代码质量。*/
                    // TODO: å¤„理变量值变化
                    // Tips:https://cms-docs.shengyc.com/cms/api/%E5%90%8E%E7%AB%AF#3-%E5%8F%98%E9%87%8F%E6%A8%A1%E5%9D%97
                    /* è¯´æ˜Žï¼šé€šè¿‡è®¢é˜… IVariableDataCache.TagChanged äº‹ä»¶ï¼Œæ‚¨å¯ä»¥å®žæ—¶ç›‘控变量的变化。此事件会传递所有变量至事件处理函数,因此,业务层需在函数中筛选关注的变量。
                        æ³¨æ„äº‹é¡¹ï¼š
                        ï¼ˆ1)性能影响: å‘布事件时,事件的发送者将阻塞流程。因此,强烈建议避免在事件处理函数中执行 I/ O æ“ä½œã€HTTP æŽ¥å£è®¿é—®æˆ–其他耗时操作,以防止对系统性能产生严重影响,导致整个系统响应延迟。
                        ï¼ˆ2)高频率触发: ç”±äºŽäº‹ä»¶è®¢é˜…了全量变量,触发频率可能非常高。
                        ï¼ˆ3)异步处理: é‰´äºŽäº‹ä»¶è§¦å‘频率很高,建议业务层在筛选关注变量后,使用 Task å¯åŠ¨æ–°çº¿ç¨‹å¤„ç†ä¸šåŠ¡é€»è¾‘ï¼Œä»¥é¿å…é˜»å¡žæ ¸å¿ƒçš„å˜é‡ç›‘å¬åŠŸèƒ½ï¼Œå®žçŽ°ä¸šåŠ¡å±‚ä¸Žå¹³å°åŸºåº§çš„è§£è€¦ã€‚
                        ï¼ˆ4)并发管理: å¦‚果业务层并发量大,必须优化代码设计和实施,以减少在高并发情况下的系统资源消耗,防止系统性能问题。
                        ï¼ˆ5)代码安全: å®‰è£…并使用 CMS.CodeAnalysis åˆ†æžå™¨æ¥åˆ†æž IVariableDataCache.TagChanged çš„使用情况。该工具能在使用不当时提供编译错误,帮助您提高代码质量。*/
                //    _ = Task.Run(async () =>
                //    {
                //        await HanlderForCutAsync();
                //        // ä¾‹1:同步处理
                //        //await ProcessAsync();
                    _ = Task.Run(async () =>
                    {
                        await HanlderForCutAsync();
                        // ä¾‹1:同步处理
                        //await ProcessAsync();
                //        // ä¾‹2:调用外部API
                //        //await ExecuteExternalApiAsync();
                //    });
                //}
                        // ä¾‹2:调用外部API
                        //await ExecuteExternalApiAsync();
                    });
                }
            }
        }
@@ -306,6 +305,7 @@
                //TODO:暂时生成产品ID
                //获取上一个工序的产品ID
                //根据工序名获取工序对象
                var _workSectionManager = _serviceProvider.GetRequiredService<IWorkSectionManager>();
                var lastWorkSection = "打码工序";
                var workSection = await _workSectionManager.GetByNameAsync(lastWorkSection);
README.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
Dotnet new cms-ddd -n MyPlugionName -e MyEntityName
¹Ü×ÓÏßLMESDemo_V2.cmsproj
Binary files differ
ËæÊÖ¼Ç.txt
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Dotnet new cms-ddd -n PipeLineLems -e MyTestEntityName
dotnet new install CMS.Plugin.Template.Ddd::2.19.0
dotnet new install CMS.Plugin.Template.Ddd::2.18.0