/* * The Kuali Financial System, a comprehensive financial management system for higher education. * * Copyright 2005-2014 The Kuali Foundation * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ package org.kuali.kfs.module.bc.batch.dataaccess; import java.util.Map; public interface GenesisDao { /* * return a map of values for the budget construction control flags for the fiscal year (flag name, flag value) */ public Map<String, String> getBudgetConstructionControlFlags(Integer universityFiscalYear); /* * fetch the fiscal year corresponding to today's date */ public Integer fiscalYearFromToday(); /* * check the value of a specific budget construction control flag (on = true, off = false) */ public boolean getBudgetConstructionControlFlag(Integer universityFiscalYear, String FlagID); // clear locks in headers public void clearHangingBCLocks(Integer currentFiscalYear); // control flags public void setControlFlagsAtTheStartOfGenesis(Integer currentFiscalYear); public void setControlFlagsAtTheEndOfGenesis(Integer currentFiscalYear); // chart and organization hierarchy public void createChartForNextBudgetCycle(); public void rebuildOrganizationHierarchy(Integer currentFiscalYear); // intialization for genesis public void clearDBForGenesis(Integer BaseYear); // pending budget construction general ledger public void ensureObjectClassRIForBudget(Integer BaseYear); public void initialLoadToPBGL(Integer currentFiscalYear); public void updateToPBGL(Integer currentFiscalYear); public Map verifyAccountsAreAccessible(Integer requestFiscalYear); // document creation // create document with embedded workflow public void createNewBCDocumentsFromGLCSF(Integer BaseYear, boolean GLUpdatesAllowed, boolean CSFUpdatesAllowed); // budget construction CSF and budget construction appointment funding public void buildAppointmentFundingAndBCSF(Integer BaseYear); }