docs: @Override
      public DepartmentalPersonDto getDepartmentalPerson(ProposalDevelopmentDocumentContract pdDoc) {
          int count = 0;
          DepartmentalPersonDto depPerson = new DepartmentalPersonDto();
          ProposalAdminDetailsContract proposalAdminDetails = proposalAdminDetailsService.findProposalAdminDetailsByPropDevNumber(pdDoc.getDevelopmentProposal().getProposalNumber()).stream()
          		.findFirst().orElse(null);
          if (proposalAdminDetails == null || StringUtils.isBlank(proposalAdminDetails.getSignedBy())) {
              // Proposal has not been submitted
  
              OrganizationContract organization = pdDoc.getDevelopmentProposal().getApplicantOrganization().getOrganization();
              RolodexContract rolodex = organization == null ? null : rolodexService.getRolodex(organization.getContactAddressId());
              if (rolodex != null) {
                  depPerson.setFirstName(rolodex.getFirstName());
                  depPerson.setMiddleName(rolodex.getMiddleName());
                  depPerson.setLastName(rolodex.getLastName());
                  StringBuilder fullName = new StringBuilder();
                  if (rolodex.getFirstName() != null) {
                      fullName.append(rolodex.getFirstName());
                      fullName.append(" ");
                  }
                  if (rolodex.getMiddleName() != null) {
                      fullName.append(rolodex.getMiddleName());
                      fullName.append(" ");
                  }
                  if (rolodex.getLastName() != null) {
                      fullName.append(rolodex.getLastName());
                  }
                  depPerson.setFullName(fullName.toString());
  
                  depPerson.setEmailAddress(rolodex.getEmailAddress());
                  depPerson.setOfficePhone(rolodex.getPhoneNumber());
                  depPerson.setPrimaryTitle(rolodex.getTitle());
                  depPerson.setAddress1(rolodex.getAddressLine1());
                  depPerson.setAddress2(rolodex.getAddressLine2());
                  depPerson.setAddress3(rolodex.getAddressLine3());
                  depPerson.setCity(rolodex.getCity());
                  depPerson.setCounty(rolodex.getCounty());
                  depPerson.setCountryCode(rolodex.getCountryCode());
                  depPerson.setFaxNumber(rolodex.getFaxNumber());
                  depPerson.setPostalCode(rolodex.getPostalCode());
                  depPerson.setState(rolodex.getState());
                  depPerson.setPersonId(Integer.toString(rolodex.getRolodexId()));
                  depPerson.setDirDept(organization.getOrganizationName());
              }
          }
          else {
              KcPersonContract person = this.kcPersonRepositoryService.findKcPersonByUserName(proposalAdminDetails.getSignedBy());
  
              if (person != null) {
                  depPerson.setFirstName(person.getFirstName());
                  depPerson.setMiddleName(person.getMiddleName());
                  depPerson.setLastName(person.getLastName());
                  depPerson.setFullName(person.getFullName());
                  depPerson.setEmailAddress(person.getEmailAddress());
                  depPerson.setOfficePhone(person.getPhoneNumber());
                  depPerson.setPrimaryTitle(person.getPrimaryTitle());
                  depPerson.setAddress1(person.getAddressLine1());
                  depPerson.setAddress2(person.getAddressLine2());
                  depPerson.setAddress3(person.getAddressLine3());
                  depPerson.setCity(person.getCity());
                  depPerson.setCounty(person.getCounty());
                  depPerson.setCountryCode(person.getCountryCode());
                  depPerson.setFaxNumber(person.getFaxNumber());
                  depPerson.setPostalCode(person.getPostalCode());
                  depPerson.setState(person.getState());
                  depPerson.setPersonId(person.getPersonId());
                  depPerson.setDirDept(person.getContactOrganizationName());
              }
          }
          return depPerson;
      }