private TreeNode AddDeviceGroupNode(DeviceGroup group) { TreeNode node = new TreeNode(); node.Tag = group; List<DeviceGroup> children = _Groups.Where(item => item.ParentID == group.ID).ToList(); if (children != null && children.Count > 0) { foreach (DeviceGroup child in children) { TreeNode dnode = AddDeviceGroupNode(child); FreshNode(dnode); node.Nodes.Add(dnode); _AllGroupNodes.Add(dnode); } } if (_Devices != null && _Devices.Count > 0) { foreach (DeviceInfo device in _Devices) { if (device.GroupID == group.ID) { TreeNode unode = new TreeNode(device.Name); unode.Tag = device; FreshNode(unode); node.Nodes.Add(unode); _AllDeviceNodes.Add(unode); } } } return node; }
public CommandResult Delete(DeviceGroup info) { List<DeviceGroup> depts = ProviderFactory.Create<IDeviceGroupProvider>(_RepoUri).GetItems(null).QueryObjects; IUnitWork unitWork = ProviderFactory.Create<IUnitWork>(_RepoUri); foreach (DeviceGroup dept in depts.Where(item => item.ID.IndexOf(info.ID, 0) == 0)) { ProviderFactory.Create<IDeviceGroupProvider>(_RepoUri).Delete(dept, unitWork); } return unitWork.Commit(); }
public CommandResult Update(DeviceGroup info) { DeviceGroup original = ProviderFactory.Create<IDeviceGroupProvider>(_RepoUri).GetByID(info.ID).QueryObject; if (original != null) { return ProviderFactory.Create<IDeviceGroupProvider>(_RepoUri).Update(info, original); } else { return new CommandResult(ResultCode.NoRecord, ResultCodeDecription.GetDescription(ResultCode.NoRecord)); } }
public CommandResult Add(DeviceGroup info) { string id = ProviderFactory.Create<IStringIDCreater>(_RepoUri).CreateID("G", 3, "DeviceGroup"); if (!string.IsNullOrEmpty(id)) { info.ID = id; return ProviderFactory.Create<IDeviceGroupProvider>(_RepoUri).Insert(info); } else { return new CommandResult(ResultCode.Fail, "创建ID失败"); } }
protected override Object GetItemFromInput() { DeviceGroup info; if (UpdatingItem == null) { info = new DeviceGroup(); info.ParentID = ParentGroup != null ? ParentGroup.ID : null; } else { info = UpdatingItem as DeviceGroup; } info.Name = txtDeptName.Text; info.Memo = txtMemo.Text; return info; }