using MercatorPenguin; using MercatorPenguin.EditCustomizers; namespace TestPenguinCustomizerInventory { public class CustomizerInventory : BaseEditInventoryCustomizer { public CustomizerInventory(ConstructorParams constructorParams) : base(constructorParams) { } public override async Task OnBeforeSaveAsync(BeforeSaveEventArgs e) { string lignes = string.Format("{0} ligne{1}", Lignes.Rows.Count, Lignes.Rows.Count > 1 ? "s" : ""); if (!await Dialogs.AnswerYesNo(Page, $"Voulez-vous vraiment enregistrer les modifications sur cet inventaire contenant {lignes} ?")) { e.CancelSave = true; } } public override async Task OnBeforeDeleteLineAsync(BeforeDeleteLineEventArgs e) { if (!await Dialogs.AnswerYesNo(Page, $"Voulez-vous vraiment supprimer cette ligne {e.Ligne["id_art"]} sur ce picking ?")) { e.CancelDeleteLine = true; } } public override async void OnAfterDeleteLine(AfterDeleteLineEventArgs e) { await Dialogs.Stop(Page, $"La ligne a été sumprimée avec succès !"); } public override async Task OnBeforeChangeLineAsync(BeforeChangeLineEventArgs e) { if (!await Dialogs.AnswerYesNo(Page, $"Voulez-vous vraiment modifier la colonne {e.ColumnToChange} de cette ligne {e.Line["id_art"]} avec cette nouvelle valeur {e.NewValue} ?")) { e.CancelChangeLine = true; } } } }