Search in sources :

Example 16 with WorkflowDocument

use of org.kuali.kfs.kew.api.WorkflowDocument in project cu-kfs by CU-CommunityApps.

the class ContractsGrantsInvoiceDocumentServiceImpl method buildDocumentFieldsMap.

private Map<String, Object> buildDocumentFieldsMap(ContractsGrantsInvoiceDocument document) {
    Map<String, Object> documentFieldsMap = new HashMap<>();
    documentFieldsMap.put(KFSPropertyConstants.DOCUMENT_NUMBER, document.getDocumentNumber());
    WorkflowDocument workflowDocument = document.getDocumentHeader().getWorkflowDocument();
    if (ObjectUtils.isNotNull(workflowDocument.getDateCreated())) {
        documentFieldsMap.put(KFSPropertyConstants.DATE, workflowDocument.getDateCreated().toDate());
    }
    if (ObjectUtils.isNotNull(workflowDocument.getDateApproved())) {
        documentFieldsMap.put(ArPropertyConstants.FINAL_STATUS_DATE, workflowDocument.getDateApproved().toDate());
    }
    return documentFieldsMap;
}
Also used : HashMap(java.util.HashMap) WorkflowDocument(org.kuali.kfs.kew.api.WorkflowDocument)

Example 17 with WorkflowDocument

use of org.kuali.kfs.kew.api.WorkflowDocument in project cu-kfs by CU-CommunityApps.

the class CuFinancialMaintenanceDocumentActionTest method createMockWorkflowDocument.

protected WorkflowDocument createMockWorkflowDocument(DocumentStatus documentStatus) {
    WorkflowDocument workflowDocument = mock(WorkflowDocumentImpl.class);
    when(workflowDocument.getStatus()).thenReturn(documentStatus);
    when(workflowDocument.isInitiated()).thenReturn(DocumentStatus.INITIATED.equals(documentStatus));
    when(workflowDocument.isSaved()).thenReturn(DocumentStatus.SAVED.equals(documentStatus));
    when(workflowDocument.isEnroute()).thenReturn(DocumentStatus.ENROUTE.equals(documentStatus));
    when(workflowDocument.isException()).thenReturn(DocumentStatus.EXCEPTION.equals(documentStatus));
    when(workflowDocument.isProcessed()).thenReturn(DocumentStatus.PROCESSED.equals(documentStatus));
    when(workflowDocument.isFinal()).thenReturn(DocumentStatus.FINAL.equals(documentStatus));
    when(workflowDocument.isCanceled()).thenReturn(DocumentStatus.CANCELED.equals(documentStatus));
    when(workflowDocument.isDisapproved()).thenReturn(DocumentStatus.DISAPPROVED.equals(documentStatus));
    when(workflowDocument.isRecalled()).thenReturn(DocumentStatus.RECALLED.equals(documentStatus));
    return workflowDocument;
}
Also used : WorkflowDocument(org.kuali.kfs.kew.api.WorkflowDocument)

Example 18 with WorkflowDocument

use of org.kuali.kfs.kew.api.WorkflowDocument in project cu-kfs by CU-CommunityApps.

the class PurchasingActionBase method doesDocumentAllowImmediateSaveOfNewNote.

private boolean doesDocumentAllowImmediateSaveOfNewNote(Document document, Note note) {
    WorkflowDocument workflowDocument = document.getDocumentHeader().getWorkflowDocument();
    PersistableBusinessObject noteTarget = document.getNoteTarget();
    // This is the same logic used by the KualiDocumentActionBase.insertBONote() method.
    return !workflowDocument.isInitiated() && StringUtils.isNotBlank(noteTarget.getObjectId()) && !(document instanceof MaintenanceDocument && StringUtils.equals(NoteType.BUSINESS_OBJECT.getCode(), note.getNoteTypeCode()));
}
Also used : PersistableBusinessObject(org.kuali.kfs.krad.bo.PersistableBusinessObject) WorkflowDocument(org.kuali.kfs.kew.api.WorkflowDocument) MaintenanceDocument(org.kuali.kfs.kns.document.MaintenanceDocument)

Example 19 with WorkflowDocument

use of org.kuali.kfs.kew.api.WorkflowDocument in project cu-kfs by CU-CommunityApps.

the class DocumentOperationAction method save.

public ActionForward save(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
    DocumentOperationForm docForm = (DocumentOperationForm) form;
    boolean change = false;
    String routeHeaderOp = docForm.getRouteHeaderOp();
    if (!KewApiConstants.UPDATE.equals(routeHeaderOp) && !KewApiConstants.NOOP.equals(routeHeaderOp)) {
        throw new WorkflowServiceErrorException("Document operation not defined", new WorkflowServiceErrorImpl("Document operation not defined", "docoperation.operation.invalid"));
    }
    if (KewApiConstants.UPDATE.equals(routeHeaderOp)) {
        setRouteHeaderTimestamps(docForm);
        DocumentRouteHeaderValue dHeader = docForm.getRouteHeader();
        String initials = docForm.getInitialNodeInstances();
        List<RouteNodeInstance> lInitials = new ArrayList<RouteNodeInstance>();
        if (StringUtils.isNotEmpty(initials)) {
            StringTokenizer tokenInitials = new StringTokenizer(initials, ",");
            while (tokenInitials.hasMoreTokens()) {
                String instanceId = tokenInitials.nextToken().trim();
                LOG.debug(instanceId);
                RouteNodeInstance instance = getRouteNodeService().findRouteNodeInstanceById(instanceId);
                lInitials.add(instance);
            }
        }
        dHeader.setInitialRouteNodeInstances(lInitials);
        /*
             * FINP-7381 changes from KualiCo patch release 2021-02-26 applied to
             * original KEW-to-KFS KualiCo patch release 2021-01-28 version of the file.
             */
        getRouteHeaderService().validateRouteHeader(dHeader);
        getRouteHeaderService().saveRouteHeader(dHeader);
        change = true;
    }
    for (Iterator actionRequestIter = docForm.getActionRequestOps().iterator(); actionRequestIter.hasNext(); ) {
        DocOperationIndexedParameter actionRequestOp = (DocOperationIndexedParameter) actionRequestIter.next();
        int index = actionRequestOp.getIndex();
        String opValue = actionRequestOp.getValue();
        ActionRequest actionRequest = docForm.getActionRequests().get(index);
        String createDateParamName = "actionRequests[" + index + "].createDateString";
        if (!KewApiConstants.UPDATE.equals(opValue) && !KewApiConstants.DELETE.equals(opValue) && !KewApiConstants.NOOP.equals(opValue)) {
            throw new WorkflowServiceErrorException("Action request operation not defined", new WorkflowServiceErrorImpl("Action request operation not defined", "docoperation.actionrequest.operation.invalid"));
        }
        if (KewApiConstants.UPDATE.equals(opValue)) {
            try {
                actionRequest.setCreateDate(new Timestamp(KFSConstants.getDefaultDateFormat().parse(request.getParameter(createDateParamName)).getTime()));
                actionRequest.setCreateDateString(KFSConstants.getDefaultDateFormat().format(actionRequest.getCreateDate()));
                actionRequest.setDocumentId(docForm.getRouteHeader().getDocumentId());
                if (StringUtils.isNotBlank(actionRequest.getParentActionRequestId())) {
                    actionRequest.setParentActionRequest(getActionRequestService().findByActionRequestId(actionRequest.getParentActionRequestId()));
                }
                if (StringUtils.isNotBlank(actionRequest.getActionTakenId())) {
                    actionRequest.setActionTaken(getActionTakenService().findByActionTakenId(actionRequest.getActionTakenId()));
                }
                if (actionRequest.getNodeInstance() != null && actionRequest.getNodeInstance().getRouteNodeInstanceId() == null) {
                    actionRequest.setNodeInstance(null);
                } else if (actionRequest.getNodeInstance() != null && actionRequest.getNodeInstance().getRouteNodeInstanceId() != null) {
                    actionRequest.setNodeInstance(KEWServiceLocator.getRouteNodeService().findRouteNodeInstanceById(actionRequest.getNodeInstance().getRouteNodeInstanceId()));
                }
                getActionRequestService().saveActionRequest(actionRequest);
                change = true;
            } catch (ParseException pe) {
                throw new WorkflowServiceErrorException("Action request create date parsing error", new WorkflowServiceErrorImpl("Action request create date parsing error", "docoperation.actionrequests.dateparsing.error", actionRequest.getActionRequestId()));
            }
        }
        if (KewApiConstants.DELETE.equals(opValue)) {
            getActionRequestService().deleteActionRequestGraph(actionRequest);
            change = true;
        }
    }
    for (Iterator actionTakenIter = docForm.getActionTakenOps().iterator(); actionTakenIter.hasNext(); ) {
        DocOperationIndexedParameter actionTakenOp = (DocOperationIndexedParameter) actionTakenIter.next();
        int index = actionTakenOp.getIndex();
        String opValue = actionTakenOp.getValue();
        String actionDateParamName = "actionsTaken[" + index + "].actionDateString";
        ActionTaken actionTaken = docForm.getActionsTaken().get(index);
        if (!KewApiConstants.UPDATE.equals(opValue) && !KewApiConstants.DELETE.equals(opValue) && !KewApiConstants.NOOP.equals(opValue)) {
            throw new WorkflowServiceErrorException("Action taken operation not defined", new WorkflowServiceErrorImpl("Action taken operation not defined", "docoperation.actiontaken.operation.invalid"));
        }
        if (KewApiConstants.UPDATE.equals(opValue)) {
            try {
                actionTaken.setActionDate(new Timestamp(KFSConstants.getDefaultDateFormat().parse(request.getParameter(actionDateParamName)).getTime()));
                actionTaken.setActionDateString(KFSConstants.getDefaultDateFormat().format(actionTaken.getActionDate()));
                getActionTakenService().saveActionTaken(actionTaken);
                change = true;
            } catch (ParseException pe) {
                throw new WorkflowServiceErrorException("Action taken action date parsing error", new WorkflowServiceErrorImpl("Action taken action date parse error", "docoperation.actionstaken.dateparsing.error", actionTaken.getActionTakenId()));
            }
        }
        if (KewApiConstants.DELETE.equals(opValue)) {
            getActionTakenService().delete(actionTaken);
            change = true;
        }
    }
    for (Iterator actionItemIter = docForm.getActionItemOps().iterator(); actionItemIter.hasNext(); ) {
        DocOperationIndexedParameter actionItemOp = (DocOperationIndexedParameter) actionItemIter.next();
        int index = actionItemOp.getIndex();
        String opValue = actionItemOp.getValue();
        String dateAssignedParamName = "actionItems[" + index + "].dateAssignedStringValue";
        ActionItem actionItem = docForm.getActionItems().get(index);
        if (!KewApiConstants.UPDATE.equals(opValue) && !KewApiConstants.DELETE.equals(opValue) && !KewApiConstants.NOOP.equals(opValue)) {
            throw new WorkflowServiceErrorException("Action Item operation not defined", new WorkflowServiceErrorImpl("Action Item operation not defined", "docoperation.operation.invalid"));
        }
        if (KewApiConstants.UPDATE.equals(opValue)) {
            try {
                actionItem.setDateAssigned(new Timestamp(KFSConstants.getDefaultDateFormat().parse(request.getParameter(dateAssignedParamName)).getTime()));
                actionItem.setDateAssignedStringValue(KFSConstants.getDefaultDateFormat().format(actionItem.getDateAssigned()));
                actionItem.setDocumentId(docForm.getRouteHeader().getDocumentId());
                getActionListService().saveActionItem(actionItem);
                change = true;
            } catch (ParseException pe) {
                throw new WorkflowServiceErrorException("Action item date assigned parsing error", new WorkflowServiceErrorImpl("Action item date assigned parse error", "docoperation.actionitem.dateassignedparsing.error", actionItem.getId()));
            }
        }
        if (KewApiConstants.DELETE.equals(opValue)) {
            try {
                actionItem.setDateAssigned(new Timestamp(KFSConstants.getDefaultDateFormat().parse(request.getParameter(dateAssignedParamName)).getTime()));
                actionItem.setDateAssignedStringValue(KFSConstants.getDefaultDateFormat().format(actionItem.getDateAssigned()));
                actionItem.setDocumentId(docForm.getRouteHeader().getDocumentId());
                getActionListService().deleteActionItem(actionItem);
                change = true;
            } catch (ParseException pe) {
                throw new WorkflowServiceErrorException("Action item date assigned parsing error", new WorkflowServiceErrorImpl("Action item date assigned parse error", "docoperation.actionitem.dateassignedparsing.error", actionItem.getId()));
            }
        }
    }
    List routeNodeInstances = (List) (request.getSession().getAttribute("routeNodeInstances"));
    String ids = (docForm.getNodeStatesDelete() != null) ? docForm.getNodeStatesDelete().trim() : null;
    List statesToBeDeleted = new ArrayList();
    if (ids != null && !"".equals(ids)) {
        StringTokenizer idSets = new StringTokenizer(ids);
        while (idSets.hasMoreTokens()) {
            String id = idSets.nextToken().trim();
            statesToBeDeleted.add(Long.valueOf(id));
        }
    }
    for (Iterator routeNodeInstanceIter = docForm.getRouteNodeInstanceOps().iterator(); routeNodeInstanceIter.hasNext(); ) {
        DocOperationIndexedParameter routeNodeInstanceOp = (DocOperationIndexedParameter) routeNodeInstanceIter.next();
        int index = routeNodeInstanceOp.getIndex();
        String opValue = routeNodeInstanceOp.getValue();
        LOG.debug(opValue);
        RouteNodeInstance routeNodeInstance = (RouteNodeInstance) (routeNodeInstances.get(index));
        RouteNodeInstance routeNodeInstanceNew = docForm.getRouteNodeInstance(index);
        if (!KewApiConstants.UPDATE.equals(opValue) && !KewApiConstants.DELETE.equals(opValue) && !KewApiConstants.NOOP.equals(opValue)) {
            throw new WorkflowServiceErrorException("Route Node Instance Operation not defined", new WorkflowServiceErrorImpl("Route Node Instance Operation not defined", "docoperation.routenodeinstance.operation.invalid"));
        }
        if (KewApiConstants.UPDATE.equals(opValue)) {
            routeNodeInstance.setActive(routeNodeInstanceNew.isActive());
            LOG.debug(Boolean.toString(routeNodeInstanceNew.isActive()));
            routeNodeInstance.setComplete(routeNodeInstanceNew.isComplete());
            routeNodeInstance.setInitial(routeNodeInstanceNew.isInitial());
            List<NodeState> nodeStates = routeNodeInstance.getState();
            List<NodeState> nodeStatesNew = routeNodeInstanceNew.getState();
            if (nodeStates != null) {
                for (int i = 0; i < nodeStates.size(); i++) {
                    NodeState nodeState = nodeStates.get(i);
                    NodeState nodeStateNew = nodeStatesNew.get(i);
                    if (nodeStateNew.getKey() != null && !nodeStateNew.getKey().trim().equals("")) {
                        nodeState.setKey(nodeStateNew.getKey());
                        LOG.debug(nodeState.getKey());
                        nodeState.setValue(nodeStateNew.getValue());
                        LOG.debug(nodeState.getValue());
                    }
                }
            }
            getRouteNodeService().save(routeNodeInstance);
            LOG.debug("saved");
            change = true;
        }
        if (KewApiConstants.DELETE.equals(opValue)) {
            List<NodeState> nodeStates = routeNodeInstance.getState();
            List<NodeState> nodeStatesNew = routeNodeInstanceNew.getState();
            if (nodeStates != null) {
                for (int i = 0; i < nodeStates.size(); i++) {
                    NodeState nodeState = nodeStates.get(i);
                    NodeState nodeStateNew = nodeStatesNew.get(i);
                    if (nodeStateNew.getKey() == null || nodeStateNew.getKey().trim().equals("")) {
                        statesToBeDeleted.remove(nodeState.getNodeStateId());
                    }
                }
            }
            getRouteNodeService().deleteByRouteNodeInstance(routeNodeInstance);
            LOG.debug(routeNodeInstance.getRouteNodeInstanceId() + " is deleted");
            change = true;
            break;
        }
        if (KewApiConstants.NOOP.equals(opValue)) {
            routeNodeInstanceNew.setActive(routeNodeInstance.isActive());
            routeNodeInstanceNew.setComplete(routeNodeInstance.isComplete());
            routeNodeInstanceNew.setInitial(routeNodeInstance.isInitial());
            List<NodeState> nodeStates = routeNodeInstance.getState();
            List<NodeState> nodeStatesNew = routeNodeInstanceNew.getState();
            if (nodeStates != null) {
                for (int i = 0; i < nodeStates.size(); i++) {
                    NodeState nodeState = nodeStates.get(i);
                    NodeState nodeStateNew = nodeStatesNew.get(i);
                    if (nodeStateNew.getKey() == null || nodeStateNew.getKey().trim().equals("")) {
                        statesToBeDeleted.remove(nodeState.getNodeStateId());
                    }
                    nodeStateNew.setKey(nodeState.getKey());
                    nodeStateNew.setValue(nodeState.getValue());
                }
            }
        }
    }
    if (statesToBeDeleted != null && statesToBeDeleted.size() > 0) {
        getRouteNodeService().deleteNodeStates(statesToBeDeleted);
    }
    List branches = (List) request.getSession().getAttribute("branches");
    String branchStateIds = (docForm.getBranchStatesDelete() != null) ? docForm.getBranchStatesDelete().trim() : null;
    List<Long> branchStatesToBeDeleted = new ArrayList<>();
    if (branchStateIds != null && !"".equals(branchStateIds)) {
        StringTokenizer idSets = new StringTokenizer(branchStateIds);
        while (idSets.hasMoreTokens()) {
            String id = idSets.nextToken().trim();
            branchStatesToBeDeleted.add(Long.valueOf(id));
        }
    }
    for (Iterator branchesOpIter = docForm.getBranchOps().iterator(); branchesOpIter.hasNext(); ) {
        DocOperationIndexedParameter branchesOp = (DocOperationIndexedParameter) branchesOpIter.next();
        int index = branchesOp.getIndex();
        String opValue = branchesOp.getValue();
        LOG.debug(opValue);
        Branch branch = (Branch) (branches.get(index));
        Branch branchNew = docForm.getBranche(index);
        if (!KewApiConstants.UPDATE.equals(opValue) && !KewApiConstants.NOOP.equals(opValue)) {
            throw new WorkflowServiceErrorException("Route Node Instance Operation not defined", new WorkflowServiceErrorImpl("Route Node Instance Operation not defined", "docoperation.routenodeinstance.operation.invalid"));
        }
        if (KewApiConstants.UPDATE.equals(opValue)) {
            branch.setName(branchNew.getName());
            List<BranchState> branchStates = branch.getBranchState();
            List<BranchState> branchStatesNew = branchNew.getBranchState();
            if (branchStates != null) {
                for (int i = 0; i < branchStates.size(); i++) {
                    BranchState branchState = branchStates.get(i);
                    if (i < branchStatesNew.size()) {
                        BranchState branchStateNew = branchStatesNew.get(i);
                        if (branchStateNew.getKey() != null && !branchStateNew.getKey().trim().equals("")) {
                            branchState.setKey(branchStateNew.getKey());
                            LOG.debug(branchState.getKey());
                            branchState.setValue(branchStateNew.getValue());
                            LOG.debug(branchState.getValue());
                        }
                    }
                }
            }
            getBranchService().save(branch);
            LOG.debug("branch saved");
            change = true;
        }
        if (KewApiConstants.NOOP.equals(opValue)) {
            branchNew.setName(branch.getName());
            List<BranchState> branchStates = branch.getBranchState();
            List<BranchState> branchStatesNew = branchNew.getBranchState();
            if (branchStates != null) {
                for (int i = 0; i < branchStates.size(); i++) {
                    BranchState branchState = branchStates.get(i);
                    BranchState branchStateNew = branchStatesNew.get(i);
                    if (branchStateNew.getKey() == null || branchStateNew.getKey().trim().equals("")) {
                        branchStatesToBeDeleted.remove(branchState.getBranchStateId());
                    }
                    branchStateNew.setKey(branchState.getKey());
                    LOG.debug(branchState.getKey());
                    branchStateNew.setValue(branchState.getValue());
                    LOG.debug(branchState.getValue());
                }
            }
        }
    }
    if (branchStatesToBeDeleted != null && branchStatesToBeDeleted.size() > 0) {
        List<BranchState> branchStatesToDelete = new ArrayList<>();
        List<String> branchStateIdsToBeDeleted = new ArrayList<>(branchStatesToBeDeleted.size());
        // Converting a list of Long values to list of String values
        for (Long branchStateToBeDeleted : branchStatesToBeDeleted) {
            branchStateIdsToBeDeleted.add(String.valueOf(branchStateToBeDeleted));
        }
        for (String branchStateId : branchStateIdsToBeDeleted) {
            BranchState branchState = getBusinessObjectService().findBySinglePrimaryKey(BranchState.class, branchStateId);
            branchStatesToDelete.add(branchState);
        }
        getBranchService().deleteBranchStates(branchStatesToDelete);
    }
    WorkflowDocument workflowDocument = WorkflowDocumentFactory.loadDocument(GlobalVariables.getUserSession().getPrincipalId(), docForm.getDocumentId());
    String annotation = docForm.getAnnotation();
    if (StringUtils.isEmpty(annotation)) {
        annotation = DEFAULT_LOG_MSG;
    }
    workflowDocument.logAnnotation(annotation);
    ActionMessages messages = new ActionMessages();
    String forward = null;
    if (change) {
        messages.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage("docoperation.operation.saved"));
        docForm.setRouteHeader(getRouteHeaderService().getRouteHeader(docForm.getRouteHeader().getDocumentId()));
        forward = "summary";
    } else {
        messages.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage("docoperation.operation.noop"));
        forward = "basic";
    }
    saveMessages(request, messages);
    return mapping.findForward(forward);
}
Also used : NodeState(org.kuali.kfs.kew.engine.node.NodeState) WorkflowDocument(org.kuali.kfs.kew.api.WorkflowDocument) WorkflowServiceErrorException(org.kuali.kfs.kew.exception.WorkflowServiceErrorException) ArrayList(java.util.ArrayList) RouteNodeInstance(org.kuali.kfs.kew.engine.node.RouteNodeInstance) Timestamp(java.sql.Timestamp) BranchState(org.kuali.kfs.kew.engine.node.BranchState) DocumentRouteHeaderValue(org.kuali.kfs.kew.routeheader.DocumentRouteHeaderValue) ActionMessages(org.apache.struts.action.ActionMessages) Branch(org.kuali.kfs.kew.engine.node.Branch) Iterator(java.util.Iterator) ActionMessage(org.apache.struts.action.ActionMessage) List(java.util.List) ArrayList(java.util.ArrayList) WorkflowServiceErrorImpl(org.kuali.kfs.kew.exception.WorkflowServiceErrorImpl) ActionItem(org.kuali.kfs.kew.actionitem.ActionItem) StringTokenizer(java.util.StringTokenizer) ActionRequest(org.kuali.kfs.kew.actionrequest.ActionRequest) ParseException(java.text.ParseException) ActionTaken(org.kuali.kfs.kew.actiontaken.ActionTaken)

Example 20 with WorkflowDocument

use of org.kuali.kfs.kew.api.WorkflowDocument in project cu-kfs by CU-CommunityApps.

the class PurchaseOrderDocument method prepareForSave.

@Override
public void prepareForSave(KualiDocumentEvent event) {
    WorkflowDocument workFlowDocument = this.getFinancialSystemDocumentHeader().getWorkflowDocument();
    String documentType = workFlowDocument.getDocumentTypeName();
    if ((documentType.equals(PurapConstants.PurchaseOrderDocTypes.PURCHASE_ORDER_DOCUMENT)) || (documentType.equals(PurapConstants.PurchaseOrderDocTypes.PURCHASE_ORDER_SPLIT_DOCUMENT))) {
        if (workFlowDocument.isCanceled()) {
            // if doc is FINAL or canceled, saving should not be creating GL entries
            setGeneralLedgerPendingEntries(new ArrayList<>());
        } else if (!workFlowDocument.isFinal()) {
            super.prepareForSave(event);
        }
    }
}
Also used : WorkflowDocument(org.kuali.kfs.kew.api.WorkflowDocument)

Aggregations

WorkflowDocument (org.kuali.kfs.kew.api.WorkflowDocument)36 Person (org.kuali.kfs.kim.api.identity.Person)5 ArrayList (java.util.ArrayList)4 IWantDocument (edu.cornell.kfs.module.purap.document.IWantDocument)3 Iterator (java.util.Iterator)3 List (java.util.List)3 ActionForward (org.apache.struts.action.ActionForward)3 KualiDocumentFormBase (org.kuali.kfs.kns.web.struts.form.KualiDocumentFormBase)3 CuDisbursementVoucherDocument (edu.cornell.kfs.fp.document.CuDisbursementVoucherDocument)2 PurApFavoriteAccountLineBuilderForIWantDocument (edu.cornell.kfs.module.purap.util.PurApFavoriteAccountLineBuilderForIWantDocument)2 HashMap (java.util.HashMap)2 ActionRequest (org.kuali.kfs.kew.actionrequest.ActionRequest)2 MaintenanceDocument (org.kuali.kfs.kns.document.MaintenanceDocument)2 PurApItem (org.kuali.kfs.module.purap.businessobject.PurApItem)2 PaymentRequestDocument (org.kuali.kfs.module.purap.document.PaymentRequestDocument)2 PurchasingAccountsPayableDocument (org.kuali.kfs.module.purap.document.PurchasingAccountsPayableDocument)2 FinancialSystemWorkflowHelperService (org.kuali.kfs.sys.service.FinancialSystemWorkflowHelperService)2 CheckReconciliation (com.rsmart.kuali.kfs.cr.businessobject.CheckReconciliation)1 RecurringDisbursementVoucherDocument (edu.cornell.kfs.fp.document.RecurringDisbursementVoucherDocument)1 CULegacyTravelService (edu.cornell.kfs.fp.document.service.CULegacyTravelService)1