001/** 002 * Copyright 2004-2014 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 */ 016package org.kuali.kpme.core.block; 017 018import java.math.BigDecimal; 019import java.sql.Timestamp; 020import java.util.Date; 021 022import javax.persistence.Transient; 023 024import org.kuali.kpme.core.api.block.CalendarBlockContract; 025import org.kuali.rice.krad.bo.PersistableBusinessObjectBase; 026 027public abstract class CalendarBlockBase extends PersistableBusinessObjectBase implements CalendarBlockContract { 028 029 private static final long serialVersionUID = -4067369587522388260L; 030 031 @Transient 032 protected String hrCalendarBlockId; 033 protected String principalId; 034 protected String userPrincipalId; 035 protected String documentId; 036 protected Timestamp beginTimestamp; 037 protected Timestamp endTimestamp; 038 protected Timestamp timestamp; 039 protected boolean lunchDeleted; 040 protected BigDecimal hours; 041 protected BigDecimal amount; 042 protected String overtimePref; 043 protected String earnCode; 044 protected Long workArea; 045 protected Long jobNumber; 046 protected Long task; 047 @Transient 048 protected String concreteBlockType; 049 @Transient 050 protected String concreteBlockId; 051 052 public CalendarBlockBase() { 053 this.concreteBlockType = this.getClass().getName(); 054 } 055 056 public abstract String getConcreteBlockType(); 057 058 059 public abstract void setConcreteBlockType(String concreteBlockType); 060 061 062 public abstract String getConcreteBlockId(); 063 064 065 public abstract void setConcreteBlockId(String concreteBlockId); 066 067 public String getHrCalendarBlockId() { 068 return hrCalendarBlockId; 069 } 070 071 public void setHrCalendarBlockId(String hrCalendarBlockId) { 072 this.hrCalendarBlockId = hrCalendarBlockId; 073 } 074 075}