private void UpdateState(ComObjectFullEditable source, ComObjectConfigure target) { // target.Id = source.; // musi byt lockle pro edit - musí se vytvářet samo target.AreaOfMemory = source.AreaOfMemory; target.DbNumber = source.DbNumber; target.PeriodOfCheck = source.PeriodOfCheck; target.StartOffset = source.StartOffset; target.WorldLen = source.WorldLen; }
private void NavToAddEditComObjectModule(ComObjectConfigure p_obj) { // jeste zjistit jestli na to ma uzivatel prava AddEditComObjectViewModel Temp = new AddEditComObjectViewModel(p_obj); Temp.Done += NavToComObjectModule; CurrentPage = Temp; CurrentPageName = "Add/Edit ComObject Module"; CurrentPage.IsRightsMode = true; //volani permission modulu }
private void CopyState(ComObjectConfigure source, ComObjectFullEditable target) { if (isEditMode) { target.AreaOfMemory = source.AreaOfMemory; target.DbNumber = source.DbNumber; target.PeriodOfCheck = source.PeriodOfCheck; target.StartOffset = source.StartOffset; target.WorldLen = source.WorldLen; } }
public AddEditComObjectViewModel(ComObjectConfigure p_comObject) { CancelCommand = new RelayCommand(OnCancel); SaveCommand = new RelayCommand(OnSave, CanSave); if (p_comObject != null) { SetComObject(p_comObject); } else { SetComObject(null); } }
// bude použito ve vyšší třídě public int AddComobject(int p_area, int p_wordLen, int p_start, int p_iPeriod, int p_iDbNumber = 1, int p_rw = 0) { var tempConfiguration = new ComObjectConfigure() { AreaOfMemory = p_area, WorldLen = p_wordLen, StartOffset = p_start, PeriodOfCheck = p_iPeriod, DbNumber = p_iDbNumber, ERW = p_rw }; var instance = ComObjectRepository.Instance.Add(tempConfiguration); CommunicationObjects.Add(instance); instance.StateChanged += OnChangeState; //tohle musí být mimo v tom prostředí using (var db = new MES_DATABASE()) { db.ComObjecTable.Add(new COM_ComObject() { ID_COM = instance.Id, Status = (int)instance.EModuleState, AreaMemory = instance.ObjectConfigure.AreaOfMemory, StartOffSet = instance.ObjectConfigure.StartOffset, Period = instance.ObjectConfigure.PeriodOfCheck, ReadWrite = instance.ObjectConfigure.ERW, DBnumber = instance.ObjectConfigure.DbNumber, WorldLen = instance.ObjectConfigure.WorldLen, ID_PLC = Id, P_Created = "Honza", P_Modified = "Honza", TimeCreated = DateTime.Now, TimeModified = DateTime.Now, }); db.SaveChanges(); } GetMinPeriod(); return(0); }
public void SetComObject(ComObjectConfigure p_ComObject) { if (p_ComObject == null) { isEditMode = false; p_ComObject = new ComObjectConfigure(); PLCAll = new ObservableCollection <PLCConnectorModuleConfigure>( PlcConnectorModuleRepository.Instance.PlcConnectorModulesList.Select(x => x.PlcModuleConfigure) .ToList()); } EdditingComObjectConfigure = p_ComObject; if (ComObject != null) { ComObject.ErrorsChanged -= RaiseCanExecuteChanged; } ComObject = new ComObjectFullEditable(); ComObject.ErrorsChanged += RaiseCanExecuteChanged; CopyState(EdditingComObjectConfigure, ComObject); }
private void OnEditComObject(ComObjectConfigure p_state) { AddEditComObjectRequested(p_state); }