| | |
| | | private IServiceProvider _serviceProvider; |
| | | private readonly ILogger<PipeLineLemsProjectService> _logger; |
| | | private readonly IVariableDataCache _variableDataCache; |
| | | private readonly IWorkSectionManager _workSectionManager; |
| | | |
| | | /// <summary> |
| | | /// åéæå¡ |
| | | /// </summary> |
| | |
| | | /// <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) |
| | | { |
| | |
| | | _logger = logger; |
| | | _variableDataCache = variableDataCache; |
| | | _variableService = variableService; |
| | | _workSectionManager = workSectionManager; |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | _monitorVariableNames = new Dictionary<string, string> |
| | | { |
| | | { "æç è¿ç«ä¿¡å·", "æç è¿ç«ä¿¡å·(æè¿°)" }, |
| | | { "åå²è¿ç«ä¿¡å·", "åå²è¿ç«ä¿¡å·(æè¿°)" }, |
| | | }; |
| | | |
| | | // å建ééçå¬ |
| | |
| | | |
| | | _ = Task.Run(async () => |
| | | { |
| | | //await HanlderForPringBarCodeAsync(); |
| | | await HanlderForPringBarCodeAsync(); |
| | | // ä¾1ï¼åæ¥å¤ç |
| | | //await ProcessAsync(); |
| | | |
| | |
| | | }); |
| | | } |
| | | |
| | | //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(); |
| | | }); |
| | | } |
| | | } |
| | | } |
| | | |
| | |
| | | //TODO:ææ¶çæäº§åID |
| | | //è·åä¸ä¸ä¸ªå·¥åºç产åID |
| | | //æ ¹æ®å·¥åºåè·åå·¥åºå¯¹è±¡ |
| | | var _workSectionManager = _serviceProvider.GetRequiredService<IWorkSectionManager>(); |
| | | var lastWorkSection = "æç å·¥åº"; |
| | | var workSection = await _workSectionManager.GetByNameAsync(lastWorkSection); |
| | | |