001 /*
002 * Copyright 2011 The Kuali Foundation.
003 *
004 * Licensed under the Educational Community License, Version 2.0 (the "License");
005 * you may not use this file except in compliance with the License.
006 * You may obtain a copy of the License at
007 *
008 * http://www.opensource.org/licenses/ecl2.php
009 *
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS,
012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013 * See the License for the specific language governing permissions and
014 * limitations under the License.
015 */
016 package org.kuali.kfs.module.bc.document.dataaccess;
017
018 /**
019 * This interface defines the methods a BudgetOrganizationPushPullDao must provide.
020 */
021 public interface BudgetOrganizationPushPullDao {
022
023 /**
024 * Pulls up Budget Construction documents based on user selected Organizations and the current point of view Organization
025 * on the Organization Selection screen running in Pullup mode.
026 *
027 * @param principalId
028 * @param FiscalYear
029 * @param pointOfViewCharOfAccountsCode
030 * @param pointOfViewOrganizationCode
031 */
032 public void pullupSelectedOrganizationDocuments(String principalId, Integer fiscalYear, String pointOfViewCharOfAccountsCode, String pointOfViewOrganizationCode);
033
034 /**
035 * Pushes down Budget Construction documents based on user selected Organizations and the current point of view Organization
036 * on the Organization Selection screen running in Pushdown mode.
037 *
038 * @param principalId
039 * @param FiscalYear
040 * @param pointOfViewCharOfAccountsCode
041 * @param pointOfViewOrganizationCode
042 */
043 public void pushdownSelectedOrganizationDocuments(String principalId, Integer fiscalYear, String pointOfViewCharOfAccountsCode, String pointOfViewOrganizationCode);
044
045 /**
046 * Builds list of budget documents that are in the selected organizations and above the user's point of view. Called from the Org Pull Up screen to display the documents
047 * that will be affected by the pull up.
048 *
049 * @param principalId current user doing the pullup
050 * @param fiscalYear budget fiscal year
051 * @param pointOfViewCharOfAccountsCode user's point of view chart
052 * @param pointOfViewOrganizationCode user's point of view org
053 * @return int number of rows affected (number of documents)
054 */
055 public int buildPullUpBudgetedDocuments(String principalId, Integer fiscalYear, String pointOfViewCharOfAccountsCode, String pointOfViewOrganizationCode);
056
057 /**
058 * Builds list of budget documents that are in the selected organizations and at the user's point of view. Called from the Org Push Down screen to display the documents
059 * that will be affected by the push down.
060 *
061 * @param principalId current user doing the pushdown
062 * @param fiscalYear budget fiscal year
063 * @param pointOfViewCharOfAccountsCode user's point of view chart
064 * @param pointOfViewOrganizationCode user's point of view org
065 * @return int number of rows affected (number of documents)
066 */
067 public int buildPushDownBudgetedDocuments(String principalId, Integer fiscalYear, String pointOfViewCharOfAccountsCode, String pointOfViewOrganizationCode);
068 }
069