|
@@ -63,20 +63,32 @@ namespace FurnaceUI.Views.Recipes
|
|
|
}
|
|
|
public void Clear()
|
|
|
{
|
|
|
+ if (SelectedIndex < 0)
|
|
|
+ {
|
|
|
+ DialogBox.ShowWarning("No table is selected");
|
|
|
+ return;
|
|
|
+ }
|
|
|
if (!DialogBox.Confirm("Clear this table?"))
|
|
|
return;
|
|
|
// SelectedTable.Name = "";
|
|
|
SelectedTable.EndStatus = "";
|
|
|
- if (SelectedTable.TableData.Steps.Count > 1)
|
|
|
+ if (SelectedTable.TableData.Steps.Count > 0)
|
|
|
{
|
|
|
- while (SelectedTable.TableData.Steps.Count > 1)
|
|
|
+ if (SelectedIndex == 0)
|
|
|
{
|
|
|
- SelectedTable.TableData.Steps.RemoveAt(1);
|
|
|
+ if (SelectedTable.TableData.Steps.Count < 2)
|
|
|
+ {
|
|
|
+ DialogBox.ShowInfo("Table1 have one step at least");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ var step = SelectedTable.TableData.Steps.First();
|
|
|
+ if (step != null)
|
|
|
+ {
|
|
|
+ SelectedTable.TableData.Steps.Clear();
|
|
|
+ SelectedTable.TableData.Steps.Add(step);
|
|
|
+ }
|
|
|
}
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- SelectedTable.TableData = new RecipeDataBase();
|
|
|
+ else SelectedTable.TableData.Steps.Clear();
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -99,6 +111,25 @@ namespace FurnaceUI.Views.Recipes
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
+ //table名不能重复
|
|
|
+ for (int i = 0; i < Recipe.Tables.Count; i++)
|
|
|
+ {
|
|
|
+ if (Recipe.Tables[i].TableData?.Steps?.Count > 0)
|
|
|
+ {
|
|
|
+ var tablename = Recipe.Tables[i].Name.Trim();
|
|
|
+ for (int j = i + 1; j < Recipe.Tables.Count; j++)
|
|
|
+ {
|
|
|
+ if (Recipe.Tables[j].TableData?.Steps?.Count > 0)
|
|
|
+ {
|
|
|
+ if (tablename == Recipe.Tables[j].Name.Trim())
|
|
|
+ {
|
|
|
+ DialogBox.ShowError($"Table{i + 1} and Table{j + 1} couldn't have same table name [{tablename}]");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
Recipe.TableIndex = SelectedTable.Index;
|
|
|
Recipe.Steps.Clear();
|
|
|
SelectedTable.TableData.Steps.ToList().ForEach(x =>
|