| | |
| | | using CMS.Plugin.PipeLineLems.Domain.CallMaterialOrder; |
| | | using System.Collections.Generic; |
| | | using CMS.Framework.AspNetCore.Users; |
| | | using NPOI.SS.Formula.Functions; |
| | | |
| | | namespace CMS.Plugin.PipeLineLems.ProjectService |
| | | { |
| | |
| | | |
| | | _logger.LogInformation($"{changed.Name} 变量值发生变化,旧值{oldValue}=新值{newValue},TraceId={traceId}"); |
| | | |
| | | if (changed.Name == "请求生成打码产品码信号" && changed.New?.Value.SafeString().ToBool() == true) |
| | | if (changed.Name == "请求生成打码产品码信号") |
| | | { |
| | | |
| | | // TODO: 处理变量值变化 |
| | |
| | | (4)并发管理: 如果业务层并发量大,必须优化代码设计和实施,以减少在高并发情况下的系统资源消耗,防止系统性能问题。 |
| | | (5)代码安全: 安装并使用 CMS.CodeAnalysis 分析器来分析 IVariableDataCache.TagChanged 的使用情况。该工具能在使用不当时提供编译错误,帮助您提高代码质量。*/ |
| | | |
| | | if (changed.New?.Value.SafeString().ToBool() == true) |
| | | { |
| | | _ = Task.Run(async () => |
| | | { |
| | | await HanlderForPringBarCodeByCreateProductAsync(); |
| | | // 例1:同步处理 |
| | | //await ProcessAsync(); |
| | | |
| | | // 例2:调用外部API |
| | | //await ExecuteExternalApiAsync(); |
| | | }); |
| | | } |
| | | else |
| | | { |
| | | |
| | | _ = Task.Run(async () => |
| | | { |
| | | await HanlderForPringBarCodeByCreateProductWhenFalseAsync(); |
| | | }); |
| | | } |
| | | } |
| | | |
| | | if (changed.Name == "打码进站信号" && changed.New?.Value.SafeString().ToBool() == true) |
| | |
| | | } |
| | | |
| | | |
| | | if (changed.Name == "请求生成切割产品码信号" && changed.New?.Value.SafeString().ToBool() == true) |
| | | if (changed.Name == "请求生成切割产品码信号") |
| | | { |
| | | |
| | | // TODO: 处理变量值变化 |
| | |
| | | (4)并发管理: 如果业务层并发量大,必须优化代码设计和实施,以减少在高并发情况下的系统资源消耗,防止系统性能问题。 |
| | | (5)代码安全: 安装并使用 CMS.CodeAnalysis 分析器来分析 IVariableDataCache.TagChanged 的使用情况。该工具能在使用不当时提供编译错误,帮助您提高代码质量。*/ |
| | | |
| | | if (changed.New?.Value.SafeString().ToBool() == true) |
| | | { |
| | | _ = Task.Run(async () => |
| | | { |
| | | await HanlderForCutByCreateProductAsync(); |
| | | // 例1:同步处理 |
| | | //await ProcessAsync(); |
| | | |
| | | // 例2:调用外部API |
| | | //await ExecuteExternalApiAsync(); |
| | | }); |
| | | } |
| | | else |
| | | { |
| | | _ = Task.Run(async () => |
| | | { |
| | | await HanlderForCutByCreateProductWhenFlaseAsync(); |
| | | }); |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | Dictionary<string, object?> keyValuePairs_productID = new Dictionary<string, object?> |
| | | { |
| | | { "打码_ProductID", productID}, |
| | | { "CMS反馈请求生成打码产品码信号结果", true}, |
| | | }; |
| | | var ret = _variableService.WriteValueAsync(keyValuePairs_productID); |
| | | |
| | |
| | | throw; |
| | | } |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 请求生成打码产品码信号(值为false的时候) |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | private async Task HanlderForPringBarCodeByCreateProductWhenFalseAsync() |
| | | { |
| | | Dictionary<string, object?> keyValuePairs_productID = new Dictionary<string, object?> |
| | | { |
| | | { "CMS反馈请求生成打码产品码信号结果", false}, |
| | | }; |
| | | var ret = _variableService.WriteValueAsync(keyValuePairs_productID); |
| | | } |
| | | |
| | | |
| | |
| | | Dictionary<string, object?> keyValuePairs_productID = new Dictionary<string, object?> |
| | | { |
| | | { "切割_ProductID", productID}, |
| | | { "CMS反馈请求生成切割产品码信号结果", true}, |
| | | }; |
| | | var ret = _variableService.WriteValueAsync(keyValuePairs_productID); |
| | | |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 请求生成切割产品码信号(值为false的时候) |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | private async Task HanlderForCutByCreateProductWhenFlaseAsync() |
| | | { |
| | | |
| | | Dictionary<string, object?> keyValuePairs_productID = new Dictionary<string, object?> |
| | | { |
| | | { "CMS反馈请求生成切割产品码信号结果", false}, |
| | | }; |
| | | var ret = _variableService.WriteValueAsync(keyValuePairs_productID); |
| | | } |
| | | } |
| | | } |