From 0b38918fc4c1021d63689108fbcddc87593aae36 Mon Sep 17 00:00:00 2001 From: xcd <834800634@qq.com> Date: 星期四, 02 七月 2020 18:11:46 +0800 Subject: [PATCH] 板卡操作配置可获取板卡初始配置中的IO定义 --- src/Bro.Process/ProcessControl.cs | 39 ++++++++++++++++++++++++++++++++------- 1 files changed, 32 insertions(+), 7 deletions(-) diff --git a/src/Bro.Process/ProcessControl.cs b/src/Bro.Process/ProcessControl.cs index 474d0c0..29d3170 100644 --- a/src/Bro.Process/ProcessControl.cs +++ b/src/Bro.Process/ProcessControl.cs @@ -32,8 +32,8 @@ #region AutoFac娉ㄥ唽 GlobalVar.Builder.RegisterInstance(this).As<IProcess>().ExternallyOwned(); GlobalVar.Builder.RegisterInstance(IConfig).As<IProcessConfig>().ExternallyOwned(); - GlobalVar.Builder.RegisterInstance(DeviceCollection); - GlobalVar.Builder.RegisterInstance(ProcessMethodCollection); + GlobalVar.Builder.RegisterInstance(DeviceCollection).ExternallyOwned(); + GlobalVar.Builder.RegisterInstance(ProcessMethodCollection).ExternallyOwned(); //if (isBuild) //{ @@ -342,6 +342,31 @@ } } + public void CreateNewConfig(IProcessConfig config, string newProductionCode) + { + try + { + if (config == null) + throw new ProcessException("淇濆瓨鐨勯厤缃俊鎭笉鑳戒负绌�"); + ProductionCode = newProductionCode; + //鐢熸垚config.json + string newConfig = JsonConvert.SerializeObject(config, new JsonSerializerSettings() { TypeNameHandling = TypeNameHandling.All }); + using (StreamWriter writer = new StreamWriter(_configPath, false, System.Text.Encoding.UTF8)) + { + writer.Write(newConfig); + writer.Flush(); + writer.Close(); + } + + //娣诲姞鍒癝etting.json + SettingHelper.AddNewProductionCode(ProductionCode); + } + catch (Exception ex) + { + throw new ProcessException(ex.Message, null); + } + } + private void SaveBackupConfig() { string backPath = Path.GetDirectoryName(_configPath); @@ -484,7 +509,7 @@ #endregion #region IMonitor鐩戝惉 - protected virtual void OnMonitorInvoke(DateTime dt, string deviceId, IDevice sourceDevice, MonitorSet monitorSet) + protected virtual void OnMonitorInvoke(DateTime dt, string deviceId, IDevice sourceDevice, IMonitorSet monitorSet) { string methodCode = monitorSet.MethodCode; @@ -581,7 +606,7 @@ #region 鍥惧儚澶勭悊 protected HImage CollectHImage(CameraBase camera, IOperationConfig opConfig, out string imgSetId, [CallerMemberName]string methodCode = "") { - ImageSet set = null; + IImageSet set = null; if (IConfig.IsImageOffline) { @@ -628,7 +653,7 @@ TimeRecordCSV(DateTime.Now, camera.Name, methodCode + "閲囧浘", (int)sw.ElapsedMilliseconds); } - imgSetId = set.Id; + imgSetId = set?.Id; return set.HImage; } @@ -642,9 +667,9 @@ #endregion #region 鎶ヨ鍜孌ownTime - ObservableCollection<WarningSet> _warningRemains = new ObservableCollection<WarningSet>(); + ObservableCollection<IWarningSet> _warningRemains = new ObservableCollection<IWarningSet>(); - protected virtual void OnMonitorAlarm(DateTime dt, IDevice device, WarningSet warning) + protected virtual void OnMonitorAlarm(DateTime dt, IDevice device, IWarningSet warning) { if (warning.CurrentStatus) { -- Gitblit v1.8.0