Browse Source

修改添加方案的bug

user_lt 1 year ago
parent
commit
8d227af9be

+ 26 - 14
BlankApp1/BlankApp1/ViewModels/BasicConfigViewModel/AddOrEditSchViewModel.cs

@@ -350,22 +350,34 @@ namespace PLCTool.ViewModels.BasicConfigViewModel
             if (Title == "新增方案")
             {
                 var finsSche = _basicPlcTestSchemeService.FindByName(ScheduleName);
+                //测试方案中已有这个名称
                 if (finsSche != null)
                 {
-
-                    MessageBoxResult boxResult = MessageBox.Show("测试方案名称已存在,请填写其他名称", "提示", MessageBoxButton.OK, MessageBoxImage.Information);
-                    return;
+                    long schID = finsSche.scheme_id;
+                    //在测试方案明细表中查找是否有这个测试方案和测试项
+                    var schDtl = _basicPlcTestSchemeDtlService.FindSchDtlIdBySchIdAndItem(schID, TestName);
+                    //在不为空,说明有这个测试方案和测试项了
+                    if (schDtl != null)
+                    {
+                        MessageBoxResult boxResult = MessageBox.Show("此测试方案名称已存在此测试项,请填写其他测试项!", "提示", MessageBoxButton.OK, MessageBoxImage.Warning);
+                        return;
+                    }
+                       
+                }
+                else
+                {
+                    //增加测试方案到数据库
+                    BasicPlcTestSchemeDto schDto = new BasicPlcTestSchemeDto();
+                    schDto.SchemeName = ScheduleName;
+                    schDto.DeviceName = DeviceName;
+                    schDto.CreateBy = Appsession.UserName;
+                    schDto.CreateTime = DateTime.Now;
+                    schDto.UpdateTime = DateTime.Now;
+                    schDto.UpdateBy = Appsession.UserName;
+                    bas_plc_test_scheme schEntity = _mapper.Map<BasicPlcTestSchemeDto, bas_plc_test_scheme>(schDto);
+                    _basicPlcTestSchemeService.Add(schEntity);
                 }
-                //增加测试方案到数据库
-                BasicPlcTestSchemeDto schDto = new BasicPlcTestSchemeDto();
-                schDto.SchemeName = ScheduleName;
-                schDto.DeviceName = DeviceName;
-                schDto.CreateBy = Appsession.UserName;
-                schDto.CreateTime = DateTime.Now;
-                schDto.UpdateTime = DateTime.Now;
-                schDto.UpdateBy = Appsession.UserName;
-                bas_plc_test_scheme schEntity = _mapper.Map<BasicPlcTestSchemeDto, bas_plc_test_scheme>(schDto);
-                _basicPlcTestSchemeService.Add(schEntity);
+               
             }
 
             //查找测试方案id
@@ -416,7 +428,7 @@ namespace PLCTool.ViewModels.BasicConfigViewModel
                 if (isAddSucc)
                 {
                     _logger.LogInformation($"新增方案成功。方案名{ScheduleName},测试项{TestName}");
-                    MessageBoxResult boxResult = MessageBox.Show("新成功", "提示", MessageBoxButton.OK, MessageBoxImage.Information);
+                    MessageBoxResult boxResult = MessageBox.Show("新增方案成功", "提示", MessageBoxButton.OK, MessageBoxImage.Information);
                 }
                 else
                 {