⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chushikaoqinyilanbiaostatistic.java

📁 一个真实项目的源代码。有一个比较优秀的时间类
💻 JAVA
字号:
package com.zx.kaoqin;

import java.util.List;

import com.sys.deptuser.Dept;
import com.work.db.DbUtil;
import com.work.util.DateUtil;

public class ChuShiKaoQinYiLanBiaoStatistic {

	/**
	 * 根据年份和月份来查询考勤月度的开始日期和结束日期
	 * 
	 * @param nd
	 *            yyyy 年度
	 * @param yd
	 *            MM 月度
	 * @return 日期字符串数组,日期的格式为yyyy/MM/dd
	 */
	public String[] getKqyd(String nd, String yd) {
		if (nd == null || nd.trim().equals("")) {
			nd = DateUtil.getCurrentYear();
		}
		if (yd == null || yd.trim().equals("")) {
			yd = DateUtil.getCurrentMonth();
		}

		List l = DbUtil
				.executeQueryStringList(" select kqksrq,kqjsrq from zx_kqyddy where nd="
						+ nd + " and yd=" + yd + "");
		if (l != null) {
			String[] result = new String[2];
			result[0] = ((String[]) l.get(0))[0];
			result[1] = ((String[]) l.get(0))[1];
			System.out.println(result[0] + result[1]);
			return result;
		}
		return null;
	}

	/**
	 * 返回两个日期之间的详细日期数组(包括开始日期和结束日期)。 例如:2007/07/01 到2007/07/03 ,那么返回数组为
	 * {"2007/07/01","2007/07/02","2007/07/03"}
	 * 只要结束日期大于开始日期,且参数的格式正确,永远不会返回一个null对象。
	 * 
	 * @param startDate
	 *            格式"yyyy/MM/dd"
	 * @param endDate
	 *            格式"yyyy/MM/dd"
	 * @return 日期的字符串数组。
	 */
	public String[] getDays(String startDate, String endDate) {
		return DateUtil.getArrayDiffDays(startDate, endDate);

	}

	//
	// /**
	// * 根据一级处室名称来查询所有当前处室员工的考勤信息。
	// * @param deptname
	// * @return
	// */
	// public List getKqInfo(String deptname){
	// Dept t = new Dept();
	// String[] username = t.searchUserInFirstLevelDept(deptname);
	// if(username == null) return null; //如果当前处室下面无用户,返回null空对象
	// int LEN = username.length;
	// String tempStr = "";//('张三','李四')
	// for(int i=0;i<LEN-1;i++){
	// tempStr = tempStr + "'"+username[i]+"',";
	// }
	// tempStr = "(" +tempStr+"'"+username[LEN-1]+"')";
	//		
	// String sql = "select * from zx_kq where xm in"+tempStr +" order by
	// xm,kqrq ";
	// System.out.println(sql);
	// return null;
	// }

	/**
	 * 根据一级处室名称来查询所有当前处室员工的考勤信息。
	 * 
	 * @param startDate
	 *            格式为yyyy/MM/dd
	 * @param endDate
	 *            格式为yyyy/MM/dd
	 * @param deptname
	 * @return list中包含String【6】字符串数组对象,xm+kqrq,姓名和考勤日期 所在一级处室、上午考勤状态、上午考勤时间、下午考勤状态、下午考勤时间。
	 */
	public List getKqInfo(String startDate, String endDate, String deptname) {
		if(startDate ==null || startDate.equals("")){
			throw new NullPointerException("开始日期不能为null空对象或者空字符串!");
		}
		if(endDate ==null || endDate.equals("")){
			throw new NullPointerException("结束日期不能为null空对象或者空字符串!");
		}
			
		// SELECT xm + kqrq AS Expr1, xm, kqrq, szcs, swkqzt, swkqsj, xwkqzt,
		// xwkqsj
		// FROM zx_kq
		// WHERE (szcs = '办公室') AND (kqrq >= '2007/07/01') AND (kqrq <=
		// '2007/07/31')
		// ORDER BY xm, kqrq
		String sql = "";
		if(deptname ==null || deptname.equals("")){
			sql = "	SELECT xm + kqrq AS xmkqrq, szcs, swkqzt, swkqsj, xwkqzt, xwkqsj "
				+ " FROM zx_kq "
				+ " WHERE (kqrq >= '"+startDate+"') AND (kqrq <= '"+endDate+"') "
				+ " ORDER BY xm, kqrq ";
		}	else{		
		sql = "	SELECT xm + kqrq AS xmkqrq, szcs, swkqzt, swkqsj, xwkqzt, xwkqsj "
				+ " FROM zx_kq "
				+ " WHERE (szcs = '"+deptname+"') AND (kqrq >= '"+startDate+"') AND (kqrq <= '"+endDate+"') "
				+ " ORDER BY xm, kqrq ";
		}
		List l = null;
		l = DbUtil.executeQueryStringList(sql);
		return l;
	}

	public static void main(String[] args) {
		ChuShiKaoQinYiLanBiaoStatistic t = new ChuShiKaoQinYiLanBiaoStatistic();

	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -