package com.csc.library.utility; import com.csc.library.utilities.CscCalendar; import com.csc.library.utilities.CscTime; import com.csc.library.utilities.MyLog; public class DiffTime { /* * ������Ѻ�ӡ��ź ���������������͡�ͧ��ѡ�ҹ * ���� �ѹ���ҷ���������͡�ҡ�ҹ����� * ������ѹ���ҷ���繪�ǧ�ͧ��þѡ���§����Ҵ��� * ��觨�����Ѿ���� �ӹǹ���ҷ��� �ӧҹ ��Ѻ�͡� * */ public float TimeOutDiffTimeIn(CscCalendar time_in, CscCalendar time_out, CscCalendar break_in, CscCalendar break_out) { CscTime result = new CscTime(0f); if (!time_in.equals(time_out) && time_out.after(time_in)) { if (time_in.beforeEquals(break_in) && time_out.afterEquals(break_out)) { //8.xx-17.xx //MyLog.debug("====> CASE 1 [8.xx-17.xx]"); result.add(break_in.subForHour(time_in)); result.add(time_out.subForHour(break_out)); } else if (time_in.beforeEquals(break_in) && time_out.beforeEquals(break_in)) { //8.xx-11.xx //MyLog.debug("====> CASE 2 [8.xx-11.xx]"); result.add(time_out.subForHour(time_in)); } else if (time_in.afterEquals(break_out) && time_out.afterEquals(break_out)) { //13.xx-16.xx //MyLog.debug("====> CASE 3 [13.xx-16.xx ]"); result.add(time_out.subForHour(time_in)); } else if (time_in.beforeEquals(break_in) && time_out.beforeEquals(break_out) && time_out.afterEquals(break_in)) { //8.xx-12.xx //MyLog.debug("====> CASE 4 [8.xx-12.xx]"); result.add(break_in.subForHour(time_in)); } else if (time_out.afterEquals(break_out) && time_in.afterEquals(break_in) && time_in.beforeEquals(break_out)) { //12.xx-14.xx //MyLog.debug("====> CASE 5 [12.xx-14.xx]"); result.add(time_out.subForHour(break_out)); } } //else MyLog.debug("====> IN AND OUT IS EQUALS !!!"); return result.getFloat(); } public float TimeOutDiffTimeIn(CscCalendar time_in, CscCalendar time_out){ CscTime result = new CscTime(0f); result.add(time_out.subForHour(time_in)); return result.getFloat(); }//end TimeOutDiffTimeIn }