using System; using System.Collections.Generic; using System.Text; using IndianHealthService.BMXNet.Model; using System.Data; namespace IndianHealthService.BMXNet.WinForm.Model { internal class WinUser : WinObject, User, IDisposable { public bool HasSecurityKey(String aString) { return "-1".Equals(this.RemoteSession.TransmitRPC("BMX SECURITY KEY", aString)); } public List RequestKeys() { try { List keys = new List(); DataTable result = this.RemoteSession.TableFromCommand("BMXUserKeyRS^" + this.Ien); foreach (DataRow each in result.Rows) { String key = each["KEY"].ToString().Trim(); if (key.Length > 0) { keys.Add(key); } } return keys; } catch (Exception problem) { throw new BMXNetException("User key listing unavailable.", problem); } } public List HasSecurityKeys(string[] keys) { List missingKeys = new List(keys); List keychain = this.RequestKeys(); foreach (string each in keychain) { if (missingKeys.Contains(each.ToUpper())) { missingKeys.Remove(each.ToUpper()); } if (missingKeys.Count == 0) { break; } } return missingKeys; } #region IDisposable Members public void Dispose() { throw new NotImplementedException(); } #endregion public String Duz { get { return this.Ien; } } private String _name; public String Name { get { return _name; } set { _name = value; } } private Division _division = null; public Division Division { get { return _division; } set { _division = value; } } } }