use of org.kuali.kfs.kim.impl.identity.PersonImpl in project cu-kfs by CU-CommunityApps.
the class SubmitTripWebServiceImpl method buildDisbursementVoucher.
/**
* @param dvDescription
* @param dvExplanation
* @param tripNumber
* @param travelerNetId
* @param initiatorNetId
* @param totalAmount
* @param checkStubText
* @return
* @throws Exception
*/
private String buildDisbursementVoucher(String dvDescription, String dvExplanation, String tripNumber, String travelerNetId, String initiatorNetId, double totalAmount, String checkStubText) throws Exception {
try {
if (!isValidDocumentInitiator(initiatorNetId, DISBURSEMENT_VOUCHER)) {
throw new RuntimeException("Initiator identified does not have permission to create a DV.");
}
} catch (Exception ex) {
throw new RuntimeException("Initiator identified does not have permission to create a DV.", ex);
}
// create and route doc as system user
GlobalVariables.setUserSession(new UserSession(initiatorNetId));
MessageMap documentErrorMap = new MessageMap();
GlobalVariables.setMessageMap(documentErrorMap);
// Create document with description provided
CuDisbursementVoucherDocument dvDoc = null;
try {
dvDoc = (CuDisbursementVoucherDocument) SpringContext.getBean(DocumentService.class).getNewDocument(DisbursementVoucherDocument.class);
} catch (WorkflowException e) {
throw new RuntimeException("Error creating new disbursement voucher document: " + e.getMessage(), e);
}
if (dvDoc != null) {
dvDoc.getDocumentHeader().setDocumentDescription(dvDescription);
dvDoc.getDocumentHeader().setExplanation(dvExplanation);
dvDoc.getDocumentHeader().setOrganizationDocumentNumber(tripNumber);
dvDoc.initiateDocument();
// Set vendor to traveler using netID provided
Person traveler = SpringContext.getBean(PersonService.class).getPersonByPrincipalName(travelerNetId);
for (EntityAffiliation entityAffiliation : ((PersonImpl) traveler).getAffiliations()) {
if (entityAffiliation.isDefaultValue()) {
if (StringUtils.equalsIgnoreCase(entityAffiliation.getAffiliationType().getCode(), CuDisbursementVoucherConstants.PayeeAffiliations.STUDENT)) {
dvDoc.templateStudent(traveler);
} else if (StringUtils.equalsIgnoreCase(entityAffiliation.getAffiliationType().getCode(), CuDisbursementVoucherConstants.PayeeAffiliations.ALUMNI)) {
dvDoc.templateAlumni(traveler);
} else if (StringUtils.equalsIgnoreCase(entityAffiliation.getAffiliationType().getCode(), CuDisbursementVoucherConstants.PayeeAffiliations.FACULTY) || StringUtils.equalsIgnoreCase(entityAffiliation.getAffiliationType().getCode(), CuDisbursementVoucherConstants.PayeeAffiliations.STAFF)) {
dvDoc.templateEmployee(traveler);
}
}
}
dvDoc.setPayeeAssigned(true);
dvDoc.getDvPayeeDetail().setDisbVchrPaymentReasonCode("J");
dvDoc.setDisbVchrCheckTotalAmount(new KualiDecimal(totalAmount));
dvDoc.setDisbVchrPaymentMethodCode("P");
dvDoc.setDisbVchrCheckStubText(checkStubText);
dvDoc.setTripId(tripNumber);
dvDoc.setTripAssociationStatusCode(CULegacyTravelServiceImpl.TRIP_ASSOCIATIONS.IS_TRIP_DOC);
// Persist document
SpringContext.getBean(DocumentService.class).saveDocument(dvDoc);
return dvDoc.getDocumentNumber();
} else {
return "";
}
}
use of org.kuali.kfs.kim.impl.identity.PersonImpl in project cu-kfs by CU-CommunityApps.
the class CuBatchInputFileServiceImplTest method testIllegalArguments.
/*
* test several potential IllegalArgumentException
*/
public void testIllegalArguments() {
runTestIllegalArgument();
user = new PersonImpl();
runTestIllegalArgument();
batchInputFileType = new VendorInactivateConvertBatchCsvInputFileType();
runTestIllegalArgument();
fileContents = new InputStream() {
@Override
public int read() throws IOException {
return 0;
}
};
// Only allow alphanumeric
fileUserIdentifier = " 123.abc";
runTestIllegalArgument();
}
use of org.kuali.kfs.kim.impl.identity.PersonImpl in project cu-kfs by CU-CommunityApps.
the class MockDocumentUtils method buildMockAdHocRoutePerson.
/*
* If you use this function you must add the following annotation to your unit test
* @PrepareForTest({MockDocumentUtils.TestAdHocRoutePerson.class})
*/
public static AdHocRoutePerson buildMockAdHocRoutePerson() {
PowerMockito.suppress(PowerMockito.constructor(AdHocRoutePerson.class));
TestAdHocRoutePerson adHocPerson = PowerMockito.spy(new TestAdHocRoutePerson());
adHocPerson.setType(AdHocRouteRecipient.PERSON_TYPE);
adHocPerson.setPerson(new PersonImpl());
return adHocPerson;
}
use of org.kuali.kfs.kim.impl.identity.PersonImpl in project cu-kfs by CU-CommunityApps.
the class CuDisbursementPayeeLookupableHelperServiceImpl method getPersonAsPayees.
@Override
protected List<DisbursementPayee> getPersonAsPayees(Map<String, String> fieldValues) {
List<DisbursementPayee> payeeList = new ArrayList<DisbursementPayee>();
Map<String, String> fieldsForLookup = this.getPersonFieldValues(fieldValues);
List<Person> persons = SpringContext.getBean(PersonService.class).findPeople(fieldsForLookup);
boolean warningExists = false;
for (Person personDetail : persons) {
for (EntityAffiliation entityAffiliation : ((PersonImpl) personDetail).getAffiliations()) {
if (entityAffiliation.isDefaultValue()) {
if (StringUtils.equalsIgnoreCase(entityAffiliation.getAffiliationType().getCode(), CuDisbursementVoucherConstants.PayeeAffiliations.STUDENT)) {
CuDisbursementPayee payee = getPayeeFromPerson(personDetail, fieldValues, CuDisbursementVoucherConstants.DV_PAYEE_TYPE_STUDENT);
payeeList.add(payee);
} else if (StringUtils.equalsIgnoreCase(entityAffiliation.getAffiliationType().getCode(), CuDisbursementVoucherConstants.PayeeAffiliations.ALUMNI)) {
CuDisbursementPayee payee = getPayeeFromPerson(personDetail, fieldValues, CuDisbursementVoucherConstants.DV_PAYEE_TYPE_ALUMNI);
payeeList.add(payee);
} else if (StringUtils.equalsIgnoreCase(entityAffiliation.getAffiliationType().getCode(), CuDisbursementVoucherConstants.PayeeAffiliations.FACULTY) || StringUtils.equalsIgnoreCase(entityAffiliation.getAffiliationType().getCode(), CuDisbursementVoucherConstants.PayeeAffiliations.STAFF)) {
if (StringUtils.isNotBlank(personDetail.getEmployeeStatusCode()) && (personDetail.getEmployeeStatusCode().equals(ACTIVE)) || personDetail.getEmployeeStatusCode().equals(RETIRED)) {
CuDisbursementPayee payee = getPayeeFromPerson(personDetail, fieldValues, KFSConstants.PaymentPayeeTypes.EMPLOYEE);
payeeList.add(payee);
} else {
if (GlobalVariables.getMessageMap().containsMessageKey(CUKFSKeyConstants.WARNING_DV_PAYEE_MUST_BE_ACTIVE)) {
warningExists = true;
break;
}
}
if (!warningExists) {
GlobalVariables.getMessageMap().putWarningWithoutFullErrorPath(KFSPropertyConstants.PRINCIPAL_ID, CUKFSKeyConstants.WARNING_DV_PAYEE_MUST_BE_ACTIVE);
}
}
break;
}
}
}
return payeeList;
}
use of org.kuali.kfs.kim.impl.identity.PersonImpl in project cu-kfs by CU-CommunityApps.
the class PersonInquirableImpl method getSections.
/**
* Add Role Qualifier Attributes to Roles section of Person Inquiry.
*/
@Override
public List<Section> getSections(BusinessObject businessObject) {
List<Section> sections = new ArrayList<>();
if (getBusinessObjectClass() == null) {
LOG.error("Business object class not set in inquirable.");
throw new RuntimeException("Business object class not set in inquirable.");
}
InquiryRestrictions inquiryRestrictions = KNSServiceLocator.getBusinessObjectAuthorizationService().getInquiryRestrictions(businessObject, GlobalVariables.getUserSession().getPerson());
Collection<InquirySectionDefinition> inquirySections = getBusinessObjectDictionaryService().getInquirySections(getBusinessObjectClass());
for (InquirySectionDefinition inquirySection : inquirySections) {
String sectionId = inquirySection.getId();
if (!inquiryRestrictions.isHiddenSectionId(sectionId)) {
Section section = SectionBridge.toSection(this, inquirySection, businessObject, inquiryRestrictions);
if (StringUtils.equals(sectionId, "rolesSection") || StringUtils.equals(sectionId, "delegationsSection")) {
int memberIndex = 0;
for (Row containerRow : section.getRows()) {
List<Row> containerRows = containerRow.getFields().get(0).getContainerRows();
Row lastRow = containerRows.get(containerRows.size() - 1);
// we want the new fields added before any sub-sections (i.e. container fields)
if (Field.CONTAINER.equals(lastRow.getField(0).getFieldType())) {
containerRows.addAll(containerRows.size() - 1, buildRowsWithQualifierFields(sectionId, (PersonImpl) businessObject, memberIndex));
} else {
containerRows.addAll(buildRowsWithQualifierFields(sectionId, (PersonImpl) businessObject, memberIndex));
}
memberIndex++;
}
}
sections.add(section);
}
}
return sections;
}
Aggregations