diff options
| author | Roy Ben-Shabat <Roy@Twine-s.com> | 2018-03-14 17:48:33 +0200 |
|---|---|---|
| committer | Roy Ben-Shabat <Roy@Twine-s.com> | 2018-03-14 17:48:33 +0200 |
| commit | 748d18fe3bfa60a586de151c3bb0d1fd608b1e13 (patch) | |
| tree | 27748a339a8e4e5572a6503cc08324f49aa120b7 /Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.DB/ViewModels | |
| parent | 1ebb6a67c93969f3d3822893d4e191d14f8fd3e3 (diff) | |
| download | Tango-748d18fe3bfa60a586de151c3bb0d1fd608b1e13.tar.gz Tango-748d18fe3bfa60a586de151c3bb0d1fd608b1e13.zip | |
Working on machine events !!!
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.DB/ViewModels')
2 files changed, 42 insertions, 2 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.DB/ViewModels/DbTableViewModel.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.DB/ViewModels/DbTableViewModel.cs index 71e9fad18..de6772bf8 100644 --- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.DB/ViewModels/DbTableViewModel.cs +++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.DB/ViewModels/DbTableViewModel.cs @@ -180,7 +180,6 @@ namespace Tango.MachineStudio.DB.ViewModels ValidationErrors.Clear(); DialogOpenMode = DialogOpenMode.Editing; EditEntity = GetEditableEntity(DialogOpenMode); - //_notification.ShowDialog(DialogOpenMode, this); Messenger.Default.Send(new OpenEntityEditViewMessage(DialogOpenMode, this, typeof(T))); IsDialogOpen = true; } @@ -193,7 +192,18 @@ namespace Tango.MachineStudio.DB.ViewModels ValidationErrors.Clear(); DialogOpenMode = DialogOpenMode.Adding; EditEntity = GetEditableEntity(DialogOpenMode); - //_notification.ShowDialog(DialogOpenMode, this); + + var codeProp = EditEntity.GetType().GetProperty("Code"); + + if (codeProp != null) + { + if (EditEntity.GetDbSet<T>(Adapter.Context).Count() > 0) + { + int lastCode = EditEntity.GetDbSet<T>(Adapter.Context).ToList().Max(x => (int)codeProp.GetValue(x)); + codeProp.SetValue(EditEntity, lastCode + 1); + } + } + Messenger.Default.Send(new OpenEntityEditViewMessage(DialogOpenMode, this, typeof(T))); IsDialogOpen = true; } @@ -208,6 +218,19 @@ namespace Tango.MachineStudio.DB.ViewModels if (ValidationErrors.Count > 0) return; + var codeProp = entity.GetType().GetProperty("Code"); + + if (codeProp != null) + { + int code = (int)codeProp.GetValue(entity); + + if (entity.GetDbSet<T>(Adapter.Context).ToList().Where(x => x.Guid != entity.Guid).Select(x => (int)codeProp.GetValue(x)).Contains(code)) + { + _notification.ShowError("The entity code specified already exists."); + return; + } + } + Messenger.Default.Send(new CloseEntityEditViewMessage()); if (mode == DialogOpenMode.Editing) diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.DB/ViewModels/EventTypesGroupsViewVM.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.DB/ViewModels/EventTypesGroupsViewVM.cs new file mode 100644 index 000000000..abdb00e32 --- /dev/null +++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.DB/ViewModels/EventTypesGroupsViewVM.cs @@ -0,0 +1,17 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Tango.BL.Entities; +using Tango.MachineStudio.Common.Notifications; + +namespace Tango.MachineStudio.DB.ViewModels +{ + public class EventTypesGroupsViewVM : DbTableViewModel<EventTypesGroup> + { + public EventTypesGroupsViewVM(INotificationProvider notification) : base(notification) + { + } + } +} |
