fix gestione "*" modificato in caso di annulla causa "rimbalzo reset"
This commit is contained in:
@@ -130,10 +130,26 @@ namespace Thermo.Active.Controllers.WebApi
|
||||
|
||||
if (updtRecipe.Count > 0)
|
||||
{
|
||||
// salvo che la ricetta è cambiata
|
||||
NcAdapter.RecipeLiveData.hasChanged = true;
|
||||
// scrivo sul PLC con i parametri specificati x ritardo/raggruppamento
|
||||
ncAdapter.WriteRecipeParams(updtRecipe, ncAdapter.nMaxParamWrite, ncAdapter.delayParamWrite);
|
||||
|
||||
|
||||
// verifico SE siano cambiati rispetto a versione originale...
|
||||
var originalRecipe = NcFileAdapter.LoadRecipe($"{NcAdapter.RecipeLiveData.RecipeDir}{NcAdapter.RecipeLiveData.RecipeName}");
|
||||
// comparazione parametri...
|
||||
bool isEqual = false;
|
||||
ncAdapter.paramsComparer(originalRecipe.RecipeParameters, NcAdapter.RecipeLiveData.RecipeParameters, out isEqual);
|
||||
// salvo se la ricetta SIA cambiata
|
||||
NcAdapter.RecipeLiveData.hasChanged = !isEqual;
|
||||
|
||||
// ora gestisco la lettura della overview di "modificata
|
||||
DTORecipeStatus message = new DTORecipeStatus()
|
||||
{
|
||||
recipeName = NcAdapter.RecipeLiveData.RecipeName,
|
||||
hasChanged = NcAdapter.RecipeLiveData.hasChanged,
|
||||
forceSend = true
|
||||
};
|
||||
MessageServices.Current.Publish(SEND_THERMO_RECIPE_CHANGED, null, message);
|
||||
}
|
||||
|
||||
// ritorno solo fatto!
|
||||
@@ -432,14 +448,6 @@ namespace Thermo.Active.Controllers.WebApi
|
||||
};
|
||||
MessageServices.Current.Publish(SEND_THERMO_RECIPE_CHANGED, null, message);
|
||||
|
||||
#if false
|
||||
// attesa 100ms
|
||||
System.Threading.Thread.Sleep(100);
|
||||
// ora mando vero valore modificata!
|
||||
message.hasChanged = NcAdapter.RecipeLiveData.hasChanged;
|
||||
MessageServices.Current.Publish(SEND_THERMO_RECIPE_CHANGED, null, message);
|
||||
#endif
|
||||
|
||||
// ritorno solo fatto!
|
||||
return Ok();
|
||||
}
|
||||
@@ -628,6 +636,14 @@ namespace Thermo.Active.Controllers.WebApi
|
||||
NcAdapter.RecipeLiveData.hasChanged = !isEqual;
|
||||
// e salvo su disco
|
||||
NcFileAdapter.SaveRecipeCurrent();
|
||||
// ora gestisco la lettura della overview di "modificata
|
||||
DTORecipeStatus message = new DTORecipeStatus()
|
||||
{
|
||||
recipeName = NcAdapter.RecipeLiveData.RecipeName,
|
||||
hasChanged = NcAdapter.RecipeLiveData.hasChanged,
|
||||
forceSend = true
|
||||
};
|
||||
MessageServices.Current.Publish(SEND_THERMO_RECIPE_CHANGED, null, message);
|
||||
}
|
||||
catch (Exception exc)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user