Package ke.go.moh.oec

Examples of ke.go.moh.oec.Person


        removeTestData();
       
        // Create test person - used in subsequent tests
        int requestTypeId = RequestTypeId.CREATE_PERSON_MPI;
        //PersonRequest requestData = new PersonRequest();
        Person p = new Person();
        requestData.setPerson(p);
        Object result;
        PersonResponse pr;

        p.setFirstName("Cain");
        p.setMiddleName("Human");
        p.setLastName("One");
        p.setMothersFirstName("Eve");
        p.setMothersMiddleName("Human");
        p.setMothersLastName("One");
        p.setFathersFirstName("Adam");
        p.setFathersMiddleName("Human");
        p.setFathersLastName("One");
        p.setCompoundHeadFirstName("God");
        p.setCompoundHeadMiddleName("The");
        p.setCompoundHeadLastName("Creator");
        p.setVillageName("Eden");
        p.setClanName("Human");
        p.setBirthdate(parseDate("1986-06-15"));
        p.setSex(Person.Sex.M);

        Visit v = new Visit();
        v.setVisitDate(new Date());
        v.setAddress("ke.go.moh.test.address");
        v.setFacilityName("Test Facility");
        p.setLastRegularVisit(v);
       
        result = mpi.getData(requestTypeId, requestData);
        assertNull(result);
    }
View Full Code Here


    private String searchTerm(String label, String term) {
        return term == null || term.isEmpty() ? "" : " " + label + ": " + term;
    }

    private PersonResponse callFindPerson(PersonRequest personRequest) {
        Person p = personRequest.getPerson();
        String log = "Searching for"
                + searchTerm("guid", p.getPersonGuid())
                + searchTerm("fname", p.getFirstName())
                + searchTerm("mname", p.getMiddleName())
                + searchTerm("lname", p.getLastName())
                + searchTerm("clan", p.getClanName())
                + searchTerm("other", p.getOtherName())
                + searchTerm("mfname", p.getMothersFirstName())
                + searchTerm("mmname", p.getMothersMiddleName())
                + searchTerm("mlname", p.getMothersLastName())
                + searchTerm("ffname", p.getFathersFirstName())
                + searchTerm("fmname", p.getFathersMiddleName())
                + searchTerm("flname", p.getFathersLastName())
                + searchTerm("cfname", p.getCompoundHeadFirstName())
                + searchTerm("cmname", p.getCompoundHeadMiddleName())
                + searchTerm("clname", p.getCompoundHeadLastName())
                + searchTerm("sex", n(p.getSex()))
                + searchTerm("birth", n(p.getBirthdate()))
                + searchTerm("death", n(p.getDeathdate()))
                + searchTerm("marital", n(p.getMaritalStatus()))
                + searchTerm("village", p.getVillageName())
                + searchTerm("clname", p.getCompoundHeadLastName()
                + searchTerm("site", p.getSiteName()));
        List<PersonIdentifier> piList = p.getPersonIdentifierList();
        if (piList != null) {
            for (PersonIdentifier pi : piList) {
                log += " pi(" + pi.getIdentifierType().name() + "): " + pi.getIdentifier();
            }
        }
View Full Code Here

     * @param s The scorecard in which to record the score.
     * @param p1 One person identifier list to compare.
     * @param p2 The other person identifier list to compare.
     */
    private void scorePersonIdentifiers(Scorecard s, Person p) {
        Person pSearch = this.getPerson();
        List<PersonIdentifier> list1 = pSearch.getPersonIdentifierList();
        List<PersonIdentifier> list2 = p.getPersonIdentifierList();
        if (list1 == null) {
            s.addScore(Scorecard.SEARCH_TERM_MISSING_WEIGHT, 0, Scorecard.SearchTerm.MISSING);
        } else if (list2 == null) {
            s.addScore(Scorecard.MPI_VALUE_MISSING_WEIGHT, 0);
View Full Code Here

    @Test
    public void testFindPerson() {
        MpiTest.logger.fine("testFindPerson");

        PersonRequest requestData = new PersonRequest();
        Person p = new Person();
        requestData.setPerson(p);
        Object result;
        PersonResponse pr;

        // Clan name that will not be found
        MpiTest.logger.fine("testFindPerson - Clan name that will not be found");
        p.setClanName("ThisClanNameWillNotBeFound");
        pr = callFindPerson(requestData);
        assertNull(pr.getPersonList());

        // Clan name from test person
        MpiTest.logger.fine("testFindPerson - Clan name returning 1 match");
        p.setClanName("Human");
        pr = callFindPerson(requestData);
        List<Person> pList = pr.getPersonList();
        assertNotNull(pList);
        int pCount = pList.size();
        assertEquals(1, pCount);
        Person p0 = pList.get(0);
        int score = p0.getMatchScore();
        assertTrue(score >= 80);

        // Birthdate alone (.4) or sex (.25) don't count as match
        // together they should meet the threshold
        MpiTest.logger.fine("testFindPerson - Search by sex & birthdate");
        p = new Person(); // Start fresh
        p.setBirthdate(parseDate("1986-06-15"));
        p.setSex(Person.Sex.M);
        String birthdate = p.getBirthdate().toString();
        requestData.setPerson(p);
        pr = callFindPerson(requestData);
        assertNotNull(pr.getPersonList());
        int listSize = pr.getPersonList().size();
        for (Person q : pr.getPersonList()) {
            score = q.getMatchScore();
            Date dq = q.getBirthdate();
            String ds = dq.toString();
            ds = "DOB: " + dq.toString();
        }

        // Search by a fake GUID should match nobody.
        p = new Person(); // Start fresh
        p.setPersonGuid("fake GUID");
        requestData.setPerson(p);
        pr = callFindPerson(requestData);
        assertNull(pr.getPersonList());
    }
View Full Code Here

    @Test
    public void testFindSomePeople() {
        MpiTest.logger.fine("testFindSomePeople");

        PersonRequest requestData = new PersonRequest();
        Person p = new Person();
        requestData.setPerson(p);
        Object result;
        PersonResponse pr;

        // Clan name that will not be found
        PersonIdentifier pi = new PersonIdentifier();
        pi.setIdentifier("00007/2004");
        pi.setIdentifierType(PersonIdentifier.Type.cccLocalId);
        List<PersonIdentifier> piList = new ArrayList<PersonIdentifier>();
        piList.add(pi);
        p.setPersonIdentifierList(piList);
        p.setSiteName("Siaya");
        requestData.setPerson(p);
        pr = callFindPerson(requestData);
        // Inspect for results -- expect results if LPI data.
    }
View Full Code Here

     */
    @Test
    public void testCreatePerson() {
        MpiTest.logger.fine("testCreatePerson");

        Person p = new Person();
        pr = callFindPerson(requestData);
        List<Person> pList = pr.getPersonList();
        assertNotNull(pList);
        int pCount = pList.size();
//        assertEquals(1, pCount);

        MpiTest.logger.fine("Exepect a high score: Edit distance = 1 and SOUNDEX Match.");
        p.setMiddleName("Hunan");
        pr = callFindPerson(requestData);

        MpiTest.logger.fine("Slightly lower score: Edit distance = 1 but no SOUNDEX Match.");
        p.setMiddleName("Huxan"); // Slightly lower score: SOUN
        pr = callFindPerson(requestData);

        MpiTest.logger.fine("Somewhat lower score: Edit distance = 3");
        p.setMiddleName("Humanism");
        pr = callFindPerson(requestData);

        MpiTest.logger.fine("Still lower score: Edit distance = 5");
        p.setMiddleName("Hmuanities");
        pr = callFindPerson(requestData);

        MpiTest.logger.fine("Lower score, string completely different (but still other strings matching.)");
        p.setMiddleName("XXXXXXXXX");
        pr = callFindPerson(requestData);

    }
View Full Code Here

    public void testModifyPerson() {
        MpiTest.logger.fine("testModifyPerson");

        int requestTypeId;
        PersonRequest requestData = new PersonRequest();
        Person p;
        List<Person> pList;
        int pCount;
        Object result;
        PersonResponse pr;

        // Find the person to modify.
        p = new Person();
        requestData.setPerson(p);
        p.setVillageName("Eden");
        pr = callFindPerson(requestData);

        pList = pr.getPersonList();
        assertNotNull(pList);
        pCount = pList.size();
        assertEquals(1, pCount);
        Person p0 = pList.get(0);
        assertEquals("Cain", p0.getFirstName());
        assertEquals("Human", p0.getMiddleName());
        assertEquals("One", p0.getLastName());

        MpiTest.logger.fine("Modify the village name.");
        requestTypeId = RequestTypeId.MODIFY_PERSON_MPI;
        p0.setVillageName("OutOfEden");
        requestData.setPerson(p0);
        result = mpi.getData(requestTypeId, requestData);
        assertNull(result); // MODIFY PERSON returns no result object.

        MpiTest.logger.fine("Search for residents of village Eden -- should find none at 100%.");
        p = new Person();
        p.setVillageName("Eden");
        requestData.setPerson(p);
        pr = callFindPerson(requestData);
        pList = pr.getPersonList();
        if (pList != null) {
            for (Person per : pList) {
                assertTrue(per.getMatchScore() < 100);
            }
        }

        MpiTest.logger.fine("Search for residents of village OutOfEden -- should find one at 100%.");
        p = new Person();
        p.setVillageName("OutOfEden");
        requestData.setPerson(p);
        pr = callFindPerson(requestData);
        pList = pr.getPersonList();
        assertNotNull(pList);
        pCount = 0;
        for (Person per : pList) {
            if (per.getMatchScore() >= 80) {
                pCount++;
            }
        }
        assertEquals(1, pCount);

        MpiTest.logger.fine("Set marital status to single.");
        p0.setMaritalStatus(Person.MaritalStatus.single);
        requestData.setPerson(p0);
        result = mpi.getData(RequestTypeId.MODIFY_PERSON_MPI, requestData);

    }
View Full Code Here

    private boolean lastResortSearchDone;

    public Session(ClientType clientType) {
        this.clientType = clientType;
        this.reference = OECReception.generateSessionReference();
        searchPersonWrapper = new PersonWrapper(new Person());
        mpiRequestResult = new RequestResult();
        lpiRequestResult = new RequestResult();
        fingerprint = true;
        imagedFingerprintList = new ArrayList<ImagedFingerprint>();
        clinicName = (clientType == ClientType.VISITOR || clientType == ClientType.TRANSFER_IN);
View Full Code Here

        return searchPersonWrapper;
    }

    public void setSearchPersonWrapper(PersonWrapper personWrapper) {
        if (personWrapper == null) {
            this.searchPersonWrapper = new PersonWrapper(new Person());
        } else {
            this.searchPersonWrapper = personWrapper;
        }
    }
View Full Code Here

     */
    public Object getData(int requestTypeId, Object requestData) {
        if (requestData != null) {
            if (requestTypeId == RequestTypeId.NOTIFY_PERSON_CHANGED) {
                PersonRequest personRequest = (PersonRequest) requestData;
                Person person = personRequest.getPerson();
                PersonWrapper personWrapper = new PersonWrapper(person);
                personWrapper.setReference(personRequest.getRequestReference());
                notificationManager.addNotifications(personWrapper.getNotificationList());
            } else {
                Logger.getLogger(NotificationListener.class.getName()).log(Level.SEVERE,
View Full Code Here

TOP

Related Classes of ke.go.moh.oec.Person

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.