예제 #1
0
        public void testDemographicSetHashCode()
        {
            DemographicSet demogs1 = getDemogs1();
            DemographicSet demogs2 = getDemogs2();

            Assert.AreNotEqual(demogs1.GetHashCode(), demogs2.GetHashCode());
        }
예제 #2
0
 void setDemographics(DemographicSet mdo)
 {
     if (mdo.StreetAddresses != null && mdo.StreetAddresses.Count > 0)
     {
         this.addresses = new AddressTO[mdo.StreetAddresses.Count];
         for (int i = 0; i < mdo.StreetAddresses.Count; i++)
         {
             this.addresses[i] = new AddressTO(mdo.StreetAddresses[i]);
         }
     }
     if (mdo.PhoneNumbers != null && mdo.PhoneNumbers.Count > 0)
     {
         this.phones = new PhoneNumTO[mdo.PhoneNumbers.Count];
         for (int i = 0; i < mdo.PhoneNumbers.Count; i++)
         {
             this.phones[i] = new PhoneNumTO(mdo.PhoneNumbers[i]);
         }
     }
     if (mdo.EmailAddresses != null && mdo.EmailAddresses.Count > 0)
     {
         this.emailAddresses = new string[mdo.EmailAddresses.Count];
         for (int i = 0; i < mdo.EmailAddresses.Count; i++)
         {
             this.emailAddresses[i] = mdo.EmailAddresses[i].Address;
         }
     }
     if (mdo.Names != null && mdo.Names.Count > 0)
     {
         this.names = new string[mdo.Names.Count];
         for (int i = 0; i < mdo.Names.Count; i++)
         {
             this.names[i] = mdo.Names[i].getLastNameFirst(); ;
         }
     }
 }
예제 #3
0
        public void testEmptyObjects()
        {
            DemographicSet demogs1 = new DemographicSet();
            DemographicSet demogs2 = new DemographicSet();

            Assert.AreEqual(demogs1.GetHashCode(), demogs2.GetHashCode());
        }
예제 #4
0
        public void testChangedDemographicSetHashCodeValueToNull()
        {
            DemographicSet demogs1 = getDemogs1();
            DemographicSet demogs2 = getDemogs2();

            demogs2.EmailAddresses[0] = null; // null object

            Assert.AreNotEqual(demogs1.GetHashCode(), demogs2.GetHashCode());
        }
예제 #5
0
 private DemographicSet getDemogs1()
 {
     DemographicSet demogs = new DemographicSet();
     demogs.EmailAddresses.Add(new EmailAddress("*****@*****.**"));
     demogs.PhoneNumbers.Add(new PhoneNum("734", "867", "5309"));
     demogs.StreetAddresses.Add(new Address()
     {
         Street1 = "2215 Fuller Rd",
         City = "Ann Arbor",
         State = "MI",
         Zipcode = "48105"
     });
     return demogs;
 }
예제 #6
0
        private DemographicSet getDemogs2()
        {
            DemographicSet demogs = new DemographicSet();

            demogs.EmailAddresses.Add(new EmailAddress("*****@*****.**"));
            demogs.PhoneNumbers.Add(new PhoneNum("734", "867", "5309"));
            demogs.StreetAddresses.Add(new Address()
            {
                Street1 = "2215 Fuller Rd",
                City    = "Ann Arbor",
                State   = "MI",
                Zipcode = "48105"
            });
            return(demogs);
        }
예제 #7
0
파일: NptPatientDao.cs 프로젝트: OSEHRA/mdo
        Patient getNextPatient(SqlDataReader reader)
        {
            Patient p = new Patient();
            p.LocalSiteId = (reader.GetInt16(reader.GetOrdinal("sitecode"))).ToString();

            Decimal d = Convert.ToDecimal(reader.GetDecimal(reader.GetOrdinal("localPid")));
            if ((d - Math.Floor(d)) > 0)
            {
                p.LocalPid = (d).ToString();
            }
            else
            {
                p.LocalPid = (Convert.ToInt64(d)).ToString();
            }
            p.Name = new PersonName(reader.GetString(reader.GetOrdinal("name")));
            p.SSN = new SocSecNum(reader.GetString(reader.GetOrdinal("ssn")));

            if (!reader.IsDBNull(reader.GetOrdinal("gender")))
            {
                p.Gender = reader.GetBoolean(reader.GetOrdinal("gender")) ? "M" : "F"; // 1 or true == male, 0 or false == female
            }
            else
            {
                p.Gender = "";
            }
            if (!reader.IsDBNull(reader.GetOrdinal("vistaDOB")))
            {
                p.DOB = reader.GetString(reader.GetOrdinal("vistaDOB"));
            }
            p.MpiPid = (reader.GetInt32(reader.GetOrdinal("icn"))).ToString();
            p.MpiChecksum = (reader.GetInt32(reader.GetOrdinal("icnx"))).ToString();

            p.Demographics = new Dictionary<string, DemographicSet>();
            DemographicSet demogs = new DemographicSet();
            demogs.PhoneNumbers = new List<PhoneNum>();
            demogs.EmailAddresses = new List<EmailAddress>();
            demogs.StreetAddresses = new List<Address>();

            if (!reader.IsDBNull(reader.GetOrdinal("homePhone")))
            {
                demogs.PhoneNumbers.Add(new PhoneNum(reader.GetString(reader.GetOrdinal("homePhone"))));
            }
            if (!reader.IsDBNull(reader.GetOrdinal("workPhone")))
            {
                demogs.PhoneNumbers.Add(new PhoneNum(reader.GetString(reader.GetOrdinal("workPhone"))));
            }
            if (!reader.IsDBNull(reader.GetOrdinal("cellPhone")))
            {
                demogs.PhoneNumbers.Add(new PhoneNum(reader.GetString(reader.GetOrdinal("cellPhone"))));
            }

            if (!reader.IsDBNull(reader.GetOrdinal("emailAddress")))
            {
                demogs.EmailAddresses.Add(new EmailAddress(reader.GetString(reader.GetOrdinal("emailAddress"))));
            }

            Address address = new Address();
            if (!reader.IsDBNull(reader.GetOrdinal("addressLine1")))
            {
                address.Street1 = reader.GetString(reader.GetOrdinal("addressLine1"));
            }
            if (!reader.IsDBNull(reader.GetOrdinal("addressLine2")))
            {
                address.Street2 = reader.GetString(reader.GetOrdinal("addressLine2"));
            }
            if (!reader.IsDBNull(reader.GetOrdinal("addressLine3")))
            {
                address.Street3 = reader.GetString(reader.GetOrdinal("addressLine3"));
            }
            if (!reader.IsDBNull(reader.GetOrdinal("city")))
            {
                address.City = reader.GetString(reader.GetOrdinal("city"));
            }
            if (!reader.IsDBNull(reader.GetOrdinal("county")))
            {
                address.County = reader.GetString(reader.GetOrdinal("county"));
            }
            if (!reader.IsDBNull(reader.GetOrdinal("state")))
            {
                address.State = reader.GetString(reader.GetOrdinal("state"));
            }
            if (!reader.IsDBNull(reader.GetOrdinal("zipcode")))
            {
                address.Zipcode = reader.GetString(reader.GetOrdinal("zipcode"));
            }
            demogs.StreetAddresses.Add(address);

            p.Demographics.Add(p.LocalSiteId, demogs);

            return p;
        }
예제 #8
0
 public DemographicSetTO(string key, DemographicSet mdo)
 {
     this.tag = key;
     setDemographics(mdo);
 }
예제 #9
0
 public void testEmptyObjects()
 {
     DemographicSet demogs1 = new DemographicSet();
     DemographicSet demogs2 = new DemographicSet();
     Assert.AreEqual(demogs1.GetHashCode(), demogs2.GetHashCode());
 }
예제 #10
0
        /// <summary>
        /// Compares the email addresses, phone numbers and addresses for equality
        /// </summary>
        /// <param name="obj">DemographicSet</param>
        /// <returns>True if all internal objects are equal</returns>
        public override bool Equals(object obj)
        {
            if (!(obj is DemographicSet))
            {
                return(false);
            }
            DemographicSet temp = obj as DemographicSet;

            // first check email addresses for differences
            if (temp.EmailAddresses != null && this.emailAddresses == null)
            {
                return(false);
            }
            if (temp.EmailAddresses == null && this.emailAddresses != null)
            {
                return(false);
            }
            if (temp.EmailAddresses != null && this.emailAddresses != null)
            {
                if (temp.EmailAddresses.Count != this.emailAddresses.Count)
                {
                    return(false);
                }
                foreach (EmailAddress tempAddr in temp.EmailAddresses)
                {
                    bool found = false;
                    foreach (EmailAddress thisAddr in this.emailAddresses)
                    {
                        if (thisAddr.Equals(tempAddr))
                        {
                            found = true;
                        }
                    }
                    if (!found)
                    {
                        return(false);
                    }
                }
            }
            // second check street addresses for differences
            if (temp.StreetAddresses != null && this.addresses == null)
            {
                return(false);
            }
            if (temp.StreetAddresses == null && this.addresses != null)
            {
                return(false);
            }
            if (temp.StreetAddresses != null && this.addresses != null)
            {
                if (temp.StreetAddresses.Count != this.addresses.Count)
                {
                    return(false);
                }
                foreach (Address tempAddr in temp.StreetAddresses)
                {
                    bool found = false;
                    foreach (Address thisAddr in this.addresses)
                    {
                        if (thisAddr.Equals(tempAddr))
                        {
                            found = true;
                        }
                    }
                    if (!found)
                    {
                        return(false);
                    }
                }
            }
            // and third check the phone numbers
            if (temp.PhoneNumbers != null && this.phones == null)
            {
                return(false);
            }
            if (temp.PhoneNumbers == null && this.phones != null)
            {
                return(false);
            }
            if (temp.PhoneNumbers != null && this.phones != null)
            {
                if (temp.PhoneNumbers.Count != this.phones.Count)
                {
                    return(false);
                }
                foreach (PhoneNum tempPhone in temp.PhoneNumbers)
                {
                    bool found = false;
                    foreach (PhoneNum thisPhone in this.phones)
                    {
                        if (thisPhone.Equals(tempPhone))
                        {
                            found = true;
                        }
                    }
                    if (!found)
                    {
                        return(false);
                    }
                }
            }
            // if all these checks pass then return true
            return(true);
        }