package jp.mosp.payroll.bonus.dto;

import java.util.Date;

import jp.mosp.common.common.BaseDto;

public class PhIndividualDto extends BaseDto {

	private static final long serialVersionUID = -4805898982549159384L;
	
	// フィールド
	private String kCode             = "";	// 社員コード
	private Date   expectedDate          ;	// 適用予定日
	private Date   appliedDate           ;	// 適用日
	private String businessType      = "";	// 事業区分
	private String calendarType      = "";	// カレンダー区分
	private String effortType        = "";	// 成果率区分
	private int    grade             = 0 ;	// 号数
	private int    notch             = 0 ;	// 等級
	private int    basicSalary       = 0 ;	// 基本給
	private int    abilityAllowance  = 0 ;	// 職能手当
	private int    abilityAllowance2 = 0 ;	// 職能手当2
	private String paymentType       = "";	// 支払区分
	private String overtimeType      = "";	// 残業区分
	private String paidHolidayType   = "";	// 有給区分
	private Date   paidHolidayMonth      ;	// 有給休暇起算月

	/**
	 * コンストラクタ
	 */
	public PhIndividualDto(){
		super();
	}
	
	// アクセサメソッド
	public String getKCode            () { return kCode                         ; }	// 社員コード
	public Date   getExpectedDate     () { return getDateField(expectedDate)    ; }	// 適用予定日
	public Date   getAppliedDate      () { return getDateField(appliedDate)     ; }	// 適用日
	public String getBusinessType     () { return businessType                  ; }	// 事業区分
	public String getCalendarType     () { return calendarType                  ; }	// カレンダー区分
	public String getEffortType       () { return effortType                    ; }	// 成果率区分
	public int    getGrade            () { return grade                         ; }	// 号数
	public int    getNotch            () { return notch                         ; }	// 等級
	public int    getBasicSalary      () { return basicSalary                   ; }	// 基本給
	public int    getAbilityAllowance () { return abilityAllowance              ; }	// 職能手当
	public int    getAbilityAllowance2() { return abilityAllowance2             ; }	// 職能手当2
	public String getPaymentType      () { return paymentType                   ; }	// 支払区分
	public String getOvertimeType     () { return overtimeType                  ; }	// 残業区分
	public String getPaidHolidayType  () { return paidHolidayType               ; }	// 有給区分
	public Date   getPaidHolidayMonth () { return getDateField(paidHolidayMonth); }	// 有給休暇起算月
	
	public void setKCode            (String kCode            ) { this.kCode             = kCode                         ; }	// 社員コード
	public void setExpectedDate     (Date   expectedDate     ) { this.expectedDate      = getDateField(expectedDate)    ; }	// 適用予定日
	public void setAppliedDate      (Date   appliedDate      ) { this.appliedDate       = getDateField(appliedDate)     ; }	// 適用日
	public void setBusinessType     (String businessType     ) { this.businessType      = businessType                  ; }	// 事業区分
	public void setCalendarType     (String calendarType     ) { this.calendarType      = calendarType                  ; }	// カレンダー区分
	public void setEffortType       (String effortType       ) { this.effortType        = effortType                    ; }	// 成果率区分
	public void setGrade            (int    grade            ) { this.grade             = grade                         ; }	// 号数
	public void setNotch            (int    notch            ) { this.notch             = notch                         ; }	// 等級
	public void setBasicSalary      (int    basicSalary      ) { this.basicSalary       = basicSalary                   ; }	// 基本給
	public void setAbilityAllowance (int    abilityAllowance ) { this.abilityAllowance  = abilityAllowance              ; }	// 職能手当
	public void setAbilityAllowance2(int    abilityAllowance2) { this.abilityAllowance2 = abilityAllowance2             ; }	// 職能手当2
	public void setPaymentType      (String paymentType      ) { this.paymentType       = paymentType                   ; }	// 支払区分
	public void setOvertimeType     (String overtimeType     ) { this.overtimeType      = overtimeType                  ; }	// 残業区分
	public void setPaidHolidayType  (String paidHolidayType  ) { this.paidHolidayType   = paidHolidayType               ; }	// 有給区分
	public void setPaidHolidayMonth (Date   paidHolidayMonth ) { this.paidHolidayMonth  = getDateField(paidHolidayMonth); }	// 有給休暇起算月
	
}
