|
@@ -33,14 +33,16 @@ namespace PLCTool.ViewModels.BasicConfigViewModel
|
|
|
private readonly IBasicPlcTestSchemeService _basicPlcTestSchemeService;
|
|
|
private readonly IBasicPlcTestSchemeDtlService _basicPlcTestSchemeDtlService;
|
|
|
private readonly IBasicDeviceKindService _iBasicDeviceKindService;
|
|
|
+ private readonly IBizTestRecordService _bizTestRecordService;
|
|
|
private readonly IMapper _mapper;
|
|
|
private readonly ILogger _logger;
|
|
|
private List<OptionConfigDto> _optionConfigs;
|
|
|
private bas_plc_test_scheme bas_Plc_Test_Scheme;//测试方案
|
|
|
- private int schDtlMainId = 0;//测试方案明细主键id
|
|
|
+ private long schIdGlobal = 0;//测试方案主键id
|
|
|
+ private string schNameBefore;//修改前测试方案名称
|
|
|
public event Action<NavigationResult> RequestClose;
|
|
|
public ObservableCollection<SelectItemModel> allSchProjectList = new ObservableCollection<SelectItemModel>(); //所有测试项
|
|
|
- public EditSchViewModel(IDialogService dialog, IEventAggregator aggregator, IRegionManager regionManager, IOptionConfigService optionConfigService, IBasicPlcTestSchemeService basicPlcTestSchemeService, IBasicPlcTestSchemeDtlService basicPlcTestSchemeDtlService, IBasicDeviceKindService iBasicDeviceKindService, IMapper mapper, ILogger logger)
|
|
|
+ public EditSchViewModel(IDialogService dialog, IEventAggregator aggregator, IRegionManager regionManager, IOptionConfigService optionConfigService, IBasicPlcTestSchemeService basicPlcTestSchemeService, IBasicPlcTestSchemeDtlService basicPlcTestSchemeDtlService, IBasicDeviceKindService iBasicDeviceKindService,IBizTestRecordService bizTestRecordService, IMapper mapper, ILogger logger)
|
|
|
{
|
|
|
_dialog = dialog;
|
|
|
_aggregator = aggregator;
|
|
@@ -49,6 +51,7 @@ namespace PLCTool.ViewModels.BasicConfigViewModel
|
|
|
_basicPlcTestSchemeService = basicPlcTestSchemeService;
|
|
|
_basicPlcTestSchemeDtlService = basicPlcTestSchemeDtlService;
|
|
|
_iBasicDeviceKindService = iBasicDeviceKindService;
|
|
|
+ _bizTestRecordService= bizTestRecordService;
|
|
|
_mapper = mapper;
|
|
|
_logger = logger;
|
|
|
CloseCommand = new DelegateCommand(Close);
|
|
@@ -135,7 +138,7 @@ namespace PLCTool.ViewModels.BasicConfigViewModel
|
|
|
|
|
|
|
|
|
#region idialog接口实现
|
|
|
- public string Title { set; get; } = "新增方案";
|
|
|
+ public string Title { set; get; }
|
|
|
|
|
|
#endregion
|
|
|
|
|
@@ -243,12 +246,31 @@ namespace PLCTool.ViewModels.BasicConfigViewModel
|
|
|
}
|
|
|
|
|
|
}
|
|
|
- MessageBox.Show("保存成功!", "确认", MessageBoxButton.OK, MessageBoxImage.Information);
|
|
|
- //发布消息
|
|
|
- _aggregator.GetEvent<ChangeEvent>().Publish("Change");
|
|
|
- _regionManager.Regions["ContentRegion"].RequestNavigate("BaseConfigView");
|
|
|
- SendLogToDis($"修改测试方案,方案名称为{ScheduleName}");
|
|
|
+
|
|
|
}
|
|
|
+ //修改方案名
|
|
|
+ else
|
|
|
+ {
|
|
|
+ var findScheMsg = _basicPlcTestSchemeService.Find((int)schIdGlobal);
|
|
|
+ if(findScheMsg != null)
|
|
|
+ {
|
|
|
+ findScheMsg.scheme_name = ScheduleName;
|
|
|
+ _basicPlcTestSchemeService.Edit(findScheMsg);
|
|
|
+ //查看测试记录中是否有这个 方案,有的话再改名
|
|
|
+ var finAll=_bizTestRecordService.FindRecorddBySchname(schNameBefore);
|
|
|
+ foreach(var item in finAll)
|
|
|
+ {
|
|
|
+ item.scheme_name = ScheduleName;
|
|
|
+ item.record_name = ScheduleName + "_record";
|
|
|
+ _bizTestRecordService.Edit(item);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ MessageBox.Show("保存成功!", "确认", MessageBoxButton.OK, MessageBoxImage.Information);
|
|
|
+ //发布消息
|
|
|
+ _aggregator.GetEvent<ChangeEvent>().Publish("Change");
|
|
|
+ _regionManager.Regions["ContentRegion"].RequestNavigate("BaseConfigView");
|
|
|
+ SendLogToDis($"修改测试方案,方案名称为{ScheduleName}");
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
@@ -424,6 +446,7 @@ namespace PLCTool.ViewModels.BasicConfigViewModel
|
|
|
|
|
|
Title = "编辑方案";
|
|
|
ScheduleName = item.ToString();
|
|
|
+ schNameBefore = item.ToString();
|
|
|
//获取已经有的测试项
|
|
|
GetExistSchs();
|
|
|
|
|
@@ -446,6 +469,15 @@ namespace PLCTool.ViewModels.BasicConfigViewModel
|
|
|
DeviceKindName = item;
|
|
|
}
|
|
|
}
|
|
|
+ ///方案id
|
|
|
+ var getMsg3 = navigationContext.Parameters.GetValues<long>("Key3");
|
|
|
+ if (getMsg3 != null)
|
|
|
+ {
|
|
|
+ foreach (var item in getMsg3)
|
|
|
+ {
|
|
|
+ schIdGlobal = item;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
public bool IsNavigationTarget(NavigationContext navigationContext)
|