项目初始化创建
This commit is contained in:
729
src/com/seeyon/apps/src_dingding/dao/DingdingDaoImpl.java
Normal file
729
src/com/seeyon/apps/src_dingding/dao/DingdingDaoImpl.java
Normal file
@@ -0,0 +1,729 @@
|
||||
package com.seeyon.apps.src_dingding.dao;
|
||||
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import java.util.Map;
|
||||
import java.util.TimeZone;
|
||||
|
||||
import com.seeyon.apps.src_dingding.service.DingdingService;
|
||||
import com.seeyon.apps.src_dingding.vo.CheckOnWorkAttendanceVo;
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
|
||||
import com.seeyon.apps.src_dingding.util.BaseUtil;
|
||||
import com.seeyon.ctp.common.exceptions.BusinessException;
|
||||
import com.seeyon.ctp.util.JDBCAgent;
|
||||
import com.seeyon.ctp.util.UUIDLong;
|
||||
|
||||
public class DingdingDaoImpl extends BaseUtil implements IDingdingDao{
|
||||
|
||||
private final static Log log = LogFactory.getLog(DingdingDaoImpl.class);
|
||||
|
||||
private String adddept = "insert into SRC_DINGDING_OA_DEPT values (?,?,?,?,?)";
|
||||
private String updateWorkAttendance = "update SRC_CHECK_ON_WORK_ATTENDANCE set SHANGBAN1 = ? ,XIABAN1 = ? ,SHANGBAN2 = ? , XIABAN2 = ? ,STATE = ? where id = ?";
|
||||
private String addmember = "insert into SRC_DINGDING_OA_MEMBER values (?,?,?,?,?)";
|
||||
private String addCheckOnWorkAttendance = "insert into SRC_CHECK_ON_WORK_ATTENDANCE VALUES";
|
||||
private String getdeptBysuperDeptId = "select * from SRC_DINGDING_OA_DEPT where DINGDINGDEPTID = '${dingdingdeptid}'";
|
||||
private String getdeptByPathName = "select NAME,ID from ORG_UNIT where PATH like ? and NAME = ? AND IS_INTERNAL = 1 AND IS_ENABLE = 1 AND IS_DELETED = 0";
|
||||
private String getDingdingOaDept = "select * from SRC_DINGDING_OA_DEPT ";
|
||||
private String getDingdingOaMember = "select * from SRC_DINGDING_OA_MEMBER ";
|
||||
private String getDepartmentById = "select ID,NAME,PATH from ORG_UNIT WHERE ID = ? AND IS_INTERNAL = 1 AND IS_ENABLE = 1 AND IS_DELETED = 0";
|
||||
private String getdeptsizeBydingdingid = "select count(id) as DINGDINGSIZE from src_dingding_oa_dept where dingdingdeptid = '${dingdingdeptid}'";
|
||||
private String getmembersizeBydingdingid = "select count(id) as DINGDINGSIZE from src_dingding_oa_member where dingdingmemberid = '${dingdingmemberid}'";
|
||||
private String getClockInNumBymember = "select COUNT(field0001) as num from formmain_10430 where field0001 = ? and field0006>=to_date(?,'YYYY-MM-DD') group by field0001";
|
||||
private String getClockInBymember = "select * from formson_10431 tb1 left join formmain_10430 tb2 on tb1.formmain_id = tb2.id where tb2.field0001 = ? and tb2.field0006=to_date(?,'YYYY-MM-DD')";
|
||||
private String getLeave = "select * from formmain_10368 where field0003 = ? and field0010 >= to_date(?,'YYYY-MM-DD') and field0009 <= TO_DATE(?,'YYYY-MM-DD')";
|
||||
private String getEvections = "select * from formmain_10367 where field0003 = ? and field0011 >= to_date(?,'YYYY-MM-DD') and field0010 <= to_date(?,'YYYY-MM-DD')";
|
||||
private String getWorkAttendanceByDate = "select * from SRC_CHECK_ON_WORK_ATTENDANCE where MEMBERID = ? and CHECKONWORKATTENDANCEDATE >= to_date(?,'YYYY-MM-DD HH24:MI:SS') and CHECKONWORKATTENDANCEDATE <= to_date(?,'YYYY-MM-DD HH24:MI:SS')";
|
||||
// private String getWorkAttendanceByDate = "select * from SRC_CHECK_ON_WORK_ATTENDANCE where MEMBERID = ? and CHECKONWORKATTENDANCEDATE >= ? and CHECKONWORKATTENDANCEDATE <= ?";
|
||||
private String getAdjustLeave = "select * from formmain_10363 where field0007 = ? and field0013 >= to_date(?,'YYYY-MM-DD') and field0001 <= to_date(?,'YYYY-MM-DD')";
|
||||
private String getOvertime = "select * from formson_10366 where field0033 = ? and field0030 >= to_date(?,'YYYY-MM-DD') and field0029 <= to_date(?,'YYYY-MM-DD')";
|
||||
private String getMakeCard = "select * from formmain_10369 where field0007 = ? and field0001 >= to_date(?,'YYYY-MM-DD') and field0001 <= to_date(?,'YYYY-MM-DD')";
|
||||
private String getGroupName = "select field0002 from formmain_10430 where field0001 = ? and field0002 is not null and rownum = 1";
|
||||
|
||||
|
||||
public int adddept(Map<String, String> map) {
|
||||
int i = 0;
|
||||
try {
|
||||
long id = UUIDLong.longUUID();
|
||||
String sql = adddept;
|
||||
Object[] params = null;
|
||||
params = new Object[] { id,map.get("oadeptid"),map.get("oadeptname"),map.get("dingdingdeptid"),map.get("dingdingdeptname") };
|
||||
i = super.executeUpdate(sql.toString(), params);
|
||||
} finally {
|
||||
super.close();
|
||||
}
|
||||
return i;
|
||||
}
|
||||
|
||||
public Map<String,Object> getdeptBysuperDeptId(String deptid) {
|
||||
Map<String, Object> map = new HashMap<String, Object>();
|
||||
String sql = getdeptBysuperDeptId;
|
||||
sql = sql.replace("${dingdingdeptid}", deptid);
|
||||
System.out.println(sql);
|
||||
Object[] params = new Object[] {};
|
||||
ResultSet rs = super.executeQuery(sql, params);
|
||||
try {
|
||||
while (rs.next()) {
|
||||
map.put("oadeptid", rs.getString("oadeptid"));
|
||||
map.put("oadeptname", rs.getString("oadeptname"));
|
||||
map.put("dingdingdeptid", rs.getString("dingdingdeptid"));
|
||||
map.put("dingdingdeptname", rs.getString("dingdingdeptname"));
|
||||
System.out.println(map);
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
}finally {
|
||||
super.close();
|
||||
}
|
||||
return map;
|
||||
|
||||
}
|
||||
|
||||
|
||||
public Map<String,Object> getdeptByPathName(String path,String name) throws BusinessException, SQLException {
|
||||
Map<String,Object> ret = new HashMap<String, Object>();
|
||||
JDBCAgent agent = new JDBCAgent();
|
||||
try {
|
||||
StringBuilder sql = new StringBuilder(getdeptByPathName);
|
||||
List<Object> p = new ArrayList<Object>();
|
||||
p.add(path);
|
||||
p.add(name);
|
||||
agent.execute(sql.toString(), p);
|
||||
List<Map> list = agent.resultSetToList();
|
||||
System.out.println("getdeptByPathName:"+list.size());
|
||||
if(list.size()==0) {
|
||||
return null;
|
||||
}
|
||||
for (Map map : list) {
|
||||
ret.put("name", map.get("name"));
|
||||
ret.put("id", map.get("id"));
|
||||
System.out.println(ret);
|
||||
}
|
||||
} catch (BusinessException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
} catch (SQLException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}finally {
|
||||
if (agent != null) {
|
||||
agent.close();
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> getDingdingOaDept() throws BusinessException, SQLException {
|
||||
List<Map<String,Object>> ret = new ArrayList<Map<String,Object>>();
|
||||
JDBCAgent agent = new JDBCAgent();
|
||||
try {
|
||||
StringBuilder sql = new StringBuilder(getDingdingOaDept);
|
||||
List<Object> p = new ArrayList<Object>();
|
||||
agent.execute(sql.toString(), p);
|
||||
List<Map> list = agent.resultSetToList();
|
||||
for (Map map : list) {
|
||||
System.out.println(map);
|
||||
Map<String,Object> m = new HashMap<String, Object>();
|
||||
m.put("dingdingdeptid", map.get("dingdingdeptid"));
|
||||
m.put("dingdingdeptname", map.get("dingdingdeptname"));
|
||||
m.put("oadeptid", map.get("oadeptid"));
|
||||
m.put("oadeptname", map.get("oadeptname"));
|
||||
System.out.println(m);
|
||||
ret.add(m);
|
||||
}
|
||||
} catch (BusinessException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
} catch (SQLException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}finally {
|
||||
if (agent != null) {
|
||||
agent.close();
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> getDepartmentById(Long deptid) throws BusinessException, SQLException {
|
||||
JDBCAgent agent = new JDBCAgent();
|
||||
Map<String,Object> ret = new HashMap<String,Object>();
|
||||
try {
|
||||
StringBuilder sql = new StringBuilder(getDepartmentById);
|
||||
List<Object> p = new ArrayList<Object>();
|
||||
p.add(deptid);
|
||||
agent.execute(sql.toString(), p);
|
||||
List<Map> list = agent.resultSetToList();
|
||||
for (Map map : list) {
|
||||
System.out.println(map);
|
||||
ret.put("id", map.get("id"));
|
||||
ret.put("name", map.get("name"));
|
||||
ret.put("path", map.get("path"));
|
||||
}
|
||||
} catch (BusinessException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
} catch (SQLException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}finally {
|
||||
if (agent != null) {
|
||||
agent.close();
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int addmember(Map<String, String> map) {
|
||||
int i = 0;
|
||||
try {
|
||||
long id = UUIDLong.longUUID();
|
||||
String sql = addmember;
|
||||
Object[] params = null;
|
||||
params = new Object[] { id,map.get("oamemberid"),map.get("oamembername"),map.get("dingdingmemberid"),map.get("dingdingmembername") };
|
||||
i = super.executeUpdate(sql.toString(), params);
|
||||
} finally {
|
||||
super.close();
|
||||
}
|
||||
return i;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean getdeptsizeBydingdingid(String dingdingdeptid) {
|
||||
boolean boo = false;
|
||||
String sql = getdeptsizeBydingdingid;
|
||||
sql = sql.replace("${dingdingdeptid}", dingdingdeptid);
|
||||
System.out.println(sql);
|
||||
Object[] params = new Object[] {};
|
||||
ResultSet rs = super.executeQuery(sql, params);
|
||||
try {
|
||||
while (rs.next()) {
|
||||
String dingdingsize = rs.getString("DINGDINGSIZE");
|
||||
int size = Integer.parseInt(dingdingsize);
|
||||
if(size>0) {
|
||||
boo = true;
|
||||
}
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
}finally {
|
||||
super.close();
|
||||
}
|
||||
return boo;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public boolean getmembersizeBydingdingid(String dingdingmemberid) {
|
||||
boolean boo = false;
|
||||
int ii = 0;
|
||||
String sql = getmembersizeBydingdingid;
|
||||
sql = sql.replace("${dingdingmemberid}", dingdingmemberid);
|
||||
Object[] params = new Object[] {};
|
||||
ResultSet rs = super.executeQuery(sql, params);
|
||||
try {
|
||||
while (rs.next()) {
|
||||
String dingdingsize = rs.getString("DINGDINGSIZE");
|
||||
int size = Integer.parseInt(dingdingsize);
|
||||
ii = size;
|
||||
if(size>0) {
|
||||
boo = true;
|
||||
}
|
||||
}
|
||||
log.info(sql+boo+ii);
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
}finally {
|
||||
super.close();
|
||||
}
|
||||
return boo;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getClockInNumBymember(String date, String memberId) {
|
||||
int in = 0;
|
||||
JDBCAgent agent = new JDBCAgent();
|
||||
try {
|
||||
StringBuilder sql = new StringBuilder(getClockInNumBymember);
|
||||
List<Object> p = new ArrayList<Object>();
|
||||
p.add(memberId);
|
||||
p.add(date);
|
||||
agent.execute(sql.toString(), p);
|
||||
List<Map> list = agent.resultSetToList();
|
||||
for (Map map : list) {
|
||||
in = Integer.parseInt(map.get("num").toString());
|
||||
}
|
||||
} catch (BusinessException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
} catch (SQLException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}finally {
|
||||
if (agent != null) {
|
||||
agent.close();
|
||||
}
|
||||
}
|
||||
return in;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String ,Object>> getClockInBymember(String date, String memberId) {
|
||||
List<Map<String,Object>> ret = new ArrayList<Map<String,Object>>();
|
||||
JDBCAgent agent = new JDBCAgent();
|
||||
try {
|
||||
StringBuilder sql = new StringBuilder(getClockInBymember);
|
||||
List<Object> p = new ArrayList<Object>();
|
||||
p.add(memberId);
|
||||
p.add(date);
|
||||
agent.execute(sql.toString(), p);
|
||||
List<Map> list = agent.resultSetToList();
|
||||
for (Map map : list) {
|
||||
System.out.println(map);
|
||||
Map<String,Object> m = new HashMap<String, Object>();
|
||||
m.put("clockInDate", map.get("field0008").toString());
|
||||
m.put("referenceDate", map.get("field0009").toString());
|
||||
m.put("groupName", map.get("field0002").toString());
|
||||
m.put("state", map.get("field0010"));
|
||||
m.put("type", map.get("field0014"));
|
||||
ret.add(m);
|
||||
}
|
||||
} catch (BusinessException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
} catch (SQLException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}finally {
|
||||
if (agent != null) {
|
||||
agent.close();
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int addCheckOnWorkAttendance(CheckOnWorkAttendanceVo checkOnWorkAttendanceVo) {
|
||||
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
System.out.println("开始保存考勤数据");
|
||||
int i = 0 ;
|
||||
JDBCAgent agent = new JDBCAgent();
|
||||
try {
|
||||
StringBuilder sql = new StringBuilder(addCheckOnWorkAttendance);
|
||||
Object[] params = null;
|
||||
sql.append(" ('"+checkOnWorkAttendanceVo.getId()+"','"+checkOnWorkAttendanceVo.getMemberId()+"'");
|
||||
if(checkOnWorkAttendanceVo.getCheckOnWorkAttendanceDate() == null){
|
||||
sql.append(",''");
|
||||
}else{
|
||||
sql.append(",TO_DATE('"+simpleDateFormat.format(checkOnWorkAttendanceVo.getCheckOnWorkAttendanceDate())+"','YYYY-MM-DD HH24:MI:SS')");
|
||||
}
|
||||
// 上班1
|
||||
if(checkOnWorkAttendanceVo.getShangbanDate1() == null){
|
||||
sql.append(",''");
|
||||
}else{
|
||||
sql.append(",TO_DATE('"+simpleDateFormat.format(checkOnWorkAttendanceVo.getShangbanDate1())+"','YYYY-MM-DD HH24:MI:SS')");
|
||||
}
|
||||
if(checkOnWorkAttendanceVo.getShangban1().length()==0){
|
||||
sql.append(",''");
|
||||
}else{
|
||||
sql.append(",'"+checkOnWorkAttendanceVo.getShangban1()+"'");
|
||||
}
|
||||
|
||||
// 下班1
|
||||
if(checkOnWorkAttendanceVo.getXiabanDate1() == null){
|
||||
sql.append(",''");
|
||||
}else{
|
||||
sql.append(",TO_DATE('"+simpleDateFormat.format(checkOnWorkAttendanceVo.getXiabanDate1())+"','YYYY-MM-DD HH24:MI:SS')");
|
||||
}
|
||||
if(checkOnWorkAttendanceVo.getXiaban1().length()==0){
|
||||
sql.append(",''");
|
||||
}else{
|
||||
sql.append(",'"+checkOnWorkAttendanceVo.getXiaban1()+"'");
|
||||
}
|
||||
|
||||
// 上班2
|
||||
if(checkOnWorkAttendanceVo.getShangbanDate2() == null){
|
||||
sql.append(",''");
|
||||
}else{
|
||||
sql.append(",TO_DATE('"+simpleDateFormat.format(checkOnWorkAttendanceVo.getShangbanDate2())+"','YYYY-MM-DD HH24:MI:SS')");
|
||||
}
|
||||
if(checkOnWorkAttendanceVo.getShangban2().length()==0){
|
||||
sql.append(",''");
|
||||
}else{
|
||||
sql.append(",'"+checkOnWorkAttendanceVo.getShangban2()+"'");
|
||||
}
|
||||
|
||||
// 下班2
|
||||
if(checkOnWorkAttendanceVo.getXiabanDate2() == null){
|
||||
sql.append(",''");
|
||||
}else{
|
||||
sql.append(",TO_DATE('"+simpleDateFormat.format(checkOnWorkAttendanceVo.getXiabanDate2())+"','YYYY-MM-DD HH24:MI:SS')");
|
||||
}
|
||||
if(checkOnWorkAttendanceVo.getXiaban2().length()==0){
|
||||
sql.append(",''");
|
||||
}else{
|
||||
sql.append(",'"+checkOnWorkAttendanceVo.getXiaban2()+"'");
|
||||
}
|
||||
|
||||
sql.append(",'"+checkOnWorkAttendanceVo.getState()+"'");
|
||||
sql.append(",'"+checkOnWorkAttendanceVo.getGroupName()+"')");
|
||||
System.out.println("打印参数"+sql.toString());
|
||||
List<Object> p = new ArrayList<Object>();
|
||||
i=agent.execute(sql.toString(), p);
|
||||
} catch (BusinessException e) {
|
||||
e.printStackTrace();
|
||||
System.out.println(e);
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
System.out.println(e);
|
||||
} finally {
|
||||
if (agent != null) {
|
||||
agent.close();
|
||||
}
|
||||
}
|
||||
|
||||
System.out.println("创建数据条数"+i);
|
||||
return i;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> getLeave( String memberId,String startDate, String endDate) {
|
||||
List<Map<String,Object>> ret = new ArrayList<Map<String,Object>>();
|
||||
JDBCAgent agent = new JDBCAgent();
|
||||
try {
|
||||
StringBuilder sql = new StringBuilder(getLeave);
|
||||
List<Object> p = new ArrayList<Object>();
|
||||
p.add(memberId);
|
||||
p.add(startDate);
|
||||
p.add(endDate);
|
||||
agent.execute(sql.toString(), p);
|
||||
List<Map> list = agent.resultSetToList();
|
||||
for (Map map : list) {
|
||||
System.out.println(map);
|
||||
Map<String,Object> m = new HashMap<String, Object>();
|
||||
m.put("member", map.get("field0003"));
|
||||
m.put("type", map.get("field0031"));
|
||||
m.put("startDateStr", map.get("field0009"));
|
||||
m.put("endDateStr", map.get("field0010"));
|
||||
ret.add(m);
|
||||
}
|
||||
} catch (BusinessException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
} catch (SQLException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}finally {
|
||||
if (agent != null) {
|
||||
agent.close();
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public List<CheckOnWorkAttendanceVo> getWorkAttendanceByDate(String memberId, String startDate, String endDate) {
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
log.info("查询的参数"+memberId+startDate+endDate);
|
||||
List<CheckOnWorkAttendanceVo> ret = new ArrayList<CheckOnWorkAttendanceVo>();
|
||||
JDBCAgent agent = new JDBCAgent();
|
||||
try {
|
||||
StringBuilder sql = new StringBuilder(getWorkAttendanceByDate);
|
||||
List<Object> p = new ArrayList<Object>();
|
||||
p.add(memberId);
|
||||
p.add(startDate);
|
||||
p.add(endDate);
|
||||
agent.execute(sql.toString(), p);
|
||||
log.info("执行SQL");
|
||||
List<Map> list = agent.resultSetToList();
|
||||
log.info(list.size());
|
||||
for (Map map : list) {
|
||||
log.info(map);
|
||||
log.info(map.get("shangbandate1")!= null);
|
||||
CheckOnWorkAttendanceVo m = new CheckOnWorkAttendanceVo();
|
||||
m.setId(Long.parseLong( map.get("id").toString()));
|
||||
m.setMemberId(Long.parseLong(map.get("memberid").toString()));
|
||||
log.info(sdf.parse(map.get("checkonworkattendancedate").toString()));
|
||||
m.setCheckOnWorkAttendanceDate(sdf.parse(map.get("checkonworkattendancedate").toString()));
|
||||
log.info("shangban1"+map.get("shangbandate1"));
|
||||
if(map.get("shangbandate1") != null){
|
||||
m.setShangbanDate1(sdf.parse(map.get("shangbandate1").toString()));
|
||||
m.setShangban1(map.get("shangban1").toString());
|
||||
}else{
|
||||
m.setShangbanDate1(null);
|
||||
m.setShangban1("未打卡");
|
||||
}
|
||||
log.info("xiaban1"+map.get("xiabandate1"));
|
||||
if(map.get("xiabandate1") != null){
|
||||
m.setXiabanDate1(sdf.parse(map.get("xiabandate1").toString()));
|
||||
m.setXiaban1(map.get("xiaban1").toString());
|
||||
}else{
|
||||
m.setXiabanDate1(null);
|
||||
m.setXiaban1("未打卡");
|
||||
}
|
||||
log.info("shangban2"+map.get("shangbandate2"));
|
||||
if(map.get("shangbandate2") != null){
|
||||
m.setShangbanDate2(sdf.parse(map.get("shangbandate2").toString()));
|
||||
m.setShangban2(map.get("shangban2").toString());
|
||||
}else{
|
||||
m.setShangbanDate2(null);
|
||||
m.setShangban2("未打卡");
|
||||
}
|
||||
log.info("xiaban2"+map.get("xiabandate2"));
|
||||
if(map.get("xiabandate2") != null){
|
||||
m.setXiabanDate2(sdf.parse(map.get("xiabandate2").toString()));
|
||||
m.setXiaban2(map.get("xiaban2").toString());
|
||||
}else{
|
||||
m.setXiabanDate2(null);
|
||||
m.setXiaban2("未打卡");
|
||||
}
|
||||
log.info(map.get("state"));
|
||||
m.setState(map.get("state").toString());
|
||||
log.info(m.toString());
|
||||
ret.add(m);
|
||||
}
|
||||
} catch (BusinessException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
} catch (SQLException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
} catch (ParseException e) {
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
if (agent != null) {
|
||||
agent.close();
|
||||
}
|
||||
}
|
||||
log.info(ret);
|
||||
return ret;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> getEvections(String memberId, String startDate, String endDate) {
|
||||
List<Map<String, Object>> ret = new ArrayList<Map<String, Object>>();
|
||||
JDBCAgent agent = new JDBCAgent();
|
||||
try {
|
||||
StringBuilder sql = new StringBuilder(getEvections);
|
||||
List<Object> p = new ArrayList<Object>();
|
||||
p.add(memberId);
|
||||
p.add(startDate);
|
||||
p.add(endDate);
|
||||
agent.execute(sql.toString(), p);
|
||||
List<Map> list = agent.resultSetToList();
|
||||
System.out.println(list.size());
|
||||
for (Map map : list) {
|
||||
System.out.println(map);
|
||||
Map<String, Object> m = new HashMap<String, Object>();
|
||||
m.put("member", map.get("field0003"));
|
||||
m.put("type", "出差");
|
||||
m.put("startDateStr", map.get("field0010"));
|
||||
m.put("endDateStr", map.get("field0011"));
|
||||
ret.add(m);
|
||||
}
|
||||
} catch (BusinessException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
} catch (SQLException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
if (agent != null) {
|
||||
agent.close();
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> getAdjustLeave(String memberId, String startDate, String endDate) {
|
||||
List<Map<String,Object>> ret = new ArrayList<Map<String,Object>>();
|
||||
JDBCAgent agent = new JDBCAgent();
|
||||
try {
|
||||
StringBuilder sql = new StringBuilder(getAdjustLeave);
|
||||
List<Object> p = new ArrayList<Object>();
|
||||
p.add(memberId);
|
||||
p.add(startDate);
|
||||
p.add(endDate);
|
||||
agent.execute(sql.toString(), p);
|
||||
List<Map> list = agent.resultSetToList();
|
||||
for (Map map : list) {
|
||||
Map<String,Object> m = new HashMap<String, Object>();
|
||||
m.put("member", map.get("field0007"));
|
||||
m.put("type", "调休");
|
||||
m.put("startDateStr", map.get("field0001"));
|
||||
m.put("endDateStr", map.get("field0013"));
|
||||
ret.add(m);
|
||||
}
|
||||
} catch (BusinessException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
} catch (SQLException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}finally {
|
||||
if (agent != null) {
|
||||
agent.close();
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> getOvertime(String memberId, String startDate, String endDate) {
|
||||
List<Map<String,Object>> ret = new ArrayList<Map<String,Object>>();
|
||||
JDBCAgent agent = new JDBCAgent();
|
||||
try {
|
||||
StringBuilder sql = new StringBuilder(getOvertime);
|
||||
List<Object> p = new ArrayList<Object>();
|
||||
p.add(memberId);
|
||||
p.add(startDate);
|
||||
p.add(endDate);
|
||||
agent.execute(sql.toString(), p);
|
||||
List<Map> list = agent.resultSetToList();
|
||||
for (Map map : list) {
|
||||
log.info("加班查询数据: "+map);
|
||||
Map<String,Object> m = new HashMap<String, Object>();
|
||||
m.put("member", map.get("field0033"));
|
||||
m.put("type", "加班"+map.get("field0031")+"小时" );
|
||||
m.put("startDateStr", map.get("field0029"));
|
||||
m.put("endDateStr", map.get("field0030"));
|
||||
ret.add(m);
|
||||
}
|
||||
} catch (BusinessException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
} catch (SQLException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}finally {
|
||||
if (agent != null) {
|
||||
agent.close();
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> getMakeCard(String memberId, String startDate, String endDate) {
|
||||
List<Map<String,Object>> ret = new ArrayList<Map<String,Object>>();
|
||||
JDBCAgent agent = new JDBCAgent();
|
||||
try {
|
||||
StringBuilder sql = new StringBuilder(getMakeCard);
|
||||
List<Object> p = new ArrayList<Object>();
|
||||
p.add(memberId);
|
||||
p.add(startDate);
|
||||
p.add(endDate);
|
||||
agent.execute(sql.toString(), p);
|
||||
List<Map> list = agent.resultSetToList();
|
||||
for (Map map : list) {
|
||||
System.out.println(map);
|
||||
Map<String,Object> m = new HashMap<String, Object>();
|
||||
m.put("member", map.get("field0007"));
|
||||
m.put("type", "补卡" );
|
||||
m.put("makeCardDateStr", map.get("field0001"));
|
||||
ret.add(m);
|
||||
}
|
||||
} catch (BusinessException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
} catch (SQLException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}finally {
|
||||
if (agent != null) {
|
||||
agent.close();
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getGroupName(String memberId) {
|
||||
String ret = "";
|
||||
JDBCAgent agent = new JDBCAgent();
|
||||
try {
|
||||
StringBuilder sql = new StringBuilder(getGroupName);
|
||||
List<Object> p = new ArrayList<Object>();
|
||||
p.add(memberId);
|
||||
agent.execute(sql.toString(), p);
|
||||
List<Map> list = agent.resultSetToList();
|
||||
for (Map map : list) {
|
||||
ret = map.get("field0002").toString();
|
||||
}
|
||||
} catch (BusinessException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
} catch (SQLException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}finally {
|
||||
if (agent != null) {
|
||||
agent.close();
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int updateWorkAttendance(CheckOnWorkAttendanceVo checkOnWorkAttendanceVo) {
|
||||
int i = 0;
|
||||
try {
|
||||
String sql = updateWorkAttendance;
|
||||
Object[] params = null;
|
||||
params = new Object[] { checkOnWorkAttendanceVo.getShangban1(),
|
||||
checkOnWorkAttendanceVo.getXiaban1(),
|
||||
checkOnWorkAttendanceVo.getShangban2(),
|
||||
checkOnWorkAttendanceVo.getXiaban2(),
|
||||
checkOnWorkAttendanceVo.getState(),checkOnWorkAttendanceVo.getId() };
|
||||
i = super.executeUpdate(sql.toString(), params);
|
||||
} finally {
|
||||
super.close();
|
||||
}
|
||||
return i;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> getDingdingOaMember() throws BusinessException, SQLException {
|
||||
List<Map<String,Object>> ret = new ArrayList<Map<String,Object>>();
|
||||
JDBCAgent agent = new JDBCAgent();
|
||||
try {
|
||||
StringBuilder sql = new StringBuilder(getDingdingOaMember);
|
||||
List<Object> p = new ArrayList<Object>();
|
||||
agent.execute(sql.toString(), p);
|
||||
List<Map> list = agent.resultSetToList();
|
||||
for (Map map : list) {
|
||||
System.out.println(map);
|
||||
Map<String,Object> m = new HashMap<String, Object>();
|
||||
m.put("dingdingmemberid", map.get("dingdingmemberid"));
|
||||
m.put("dingdingmembername", map.get("dingdingmembername"));
|
||||
m.put("oamemberid", map.get("oamemberid"));
|
||||
m.put("oamembername", map.get("oamembername"));
|
||||
ret.add(m);
|
||||
}
|
||||
} catch (BusinessException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
} catch (SQLException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}finally {
|
||||
if (agent != null) {
|
||||
agent.close();
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
}
|
||||
183
src/com/seeyon/apps/src_dingding/dao/IDingdingDao.java
Normal file
183
src/com/seeyon/apps/src_dingding/dao/IDingdingDao.java
Normal file
@@ -0,0 +1,183 @@
|
||||
package com.seeyon.apps.src_dingding.dao;
|
||||
|
||||
import java.sql.SQLException;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import com.seeyon.apps.src_dingding.vo.CheckOnWorkAttendanceVo;
|
||||
import com.seeyon.ctp.common.exceptions.BusinessException;
|
||||
import com.seeyon.ctp.organization.bo.V3xOrgMember;
|
||||
|
||||
public interface IDingdingDao {
|
||||
|
||||
/**
|
||||
* 添加部门对照表信息
|
||||
* @param map
|
||||
* @return
|
||||
*/
|
||||
public int adddept(Map<String, String> map);
|
||||
|
||||
|
||||
/**
|
||||
* 添加人员对照表信息
|
||||
* @param map
|
||||
* @return
|
||||
*/
|
||||
public int addmember(Map<String, String> map);
|
||||
|
||||
/**
|
||||
* 根据部门ID查询部门对照表中的部门信息
|
||||
* @param deptid
|
||||
* @return
|
||||
*/
|
||||
public Map<String,Object> getdeptBysuperDeptId(String deptid);
|
||||
|
||||
/**
|
||||
* 通过部门路径和部门名称查询OA系统中部门信息
|
||||
* @param path
|
||||
* @param name
|
||||
* @return
|
||||
* @throws BusinessException
|
||||
* @throws SQLException
|
||||
*/
|
||||
public Map<String,Object> getdeptByPathName(String path,String name)throws BusinessException, SQLException;
|
||||
|
||||
/**
|
||||
* 查询部门对照表中所有的部门信息
|
||||
* @return
|
||||
* @throws BusinessException
|
||||
* @throws SQLException
|
||||
*/
|
||||
public List<Map<String,Object>> getDingdingOaDept()throws BusinessException, SQLException;
|
||||
|
||||
/**
|
||||
* 查询部门对照表中所有的部门信息
|
||||
* @return
|
||||
* @throws BusinessException
|
||||
* @throws SQLException
|
||||
*/
|
||||
public List<Map<String,Object>> getDingdingOaMember()throws BusinessException, SQLException;
|
||||
|
||||
/**
|
||||
* 根据部门ID查询OA系统中的部门信息
|
||||
* @param deptid
|
||||
* @return
|
||||
* @throws BusinessException
|
||||
* @throws SQLException
|
||||
*/
|
||||
public Map<String,Object> getDepartmentById(Long deptid)throws BusinessException, SQLException;
|
||||
|
||||
/**
|
||||
* 查询当前部门信息是否在部门对照表中存在
|
||||
* @param dingdingdeptid
|
||||
* @return
|
||||
*/
|
||||
public boolean getdeptsizeBydingdingid(String dingdingdeptid);
|
||||
|
||||
/**
|
||||
* 查询当前人员信息是否在人员对照表中存在
|
||||
* @param dingdingmemberid
|
||||
* @return
|
||||
*/
|
||||
public boolean getmembersizeBydingdingid(String dingdingmemberid);
|
||||
|
||||
/**
|
||||
* 获取指定人员近一月的打卡情况
|
||||
* @param date('yyyy-MM-dd')
|
||||
* @param memberId
|
||||
* @return
|
||||
*/
|
||||
public int getClockInNumBymember(String date,String memberId);
|
||||
|
||||
/**
|
||||
* 获取指定人员前一日打卡情况
|
||||
* @param date('yyyy-MM-dd')
|
||||
* @param memberId
|
||||
* @return
|
||||
*/
|
||||
public List<Map<String ,Object>> getClockInBymember(String date,String memberId);
|
||||
|
||||
/**
|
||||
* 将封装的打卡信息保存到考勤表中
|
||||
* @param checkOnWorkAttendanceVo 考勤数据对象
|
||||
* @return
|
||||
*/
|
||||
public int addCheckOnWorkAttendance(CheckOnWorkAttendanceVo checkOnWorkAttendanceVo);
|
||||
|
||||
|
||||
/**
|
||||
* 修改考勤表中的数据
|
||||
* @param checkOnWorkAttendanceVo 考勤数据对象
|
||||
* @return
|
||||
*/
|
||||
public int updateWorkAttendance(CheckOnWorkAttendanceVo checkOnWorkAttendanceVo);
|
||||
|
||||
|
||||
/**
|
||||
* 查询规定时间之内的请假单据
|
||||
* @param memberId 人员ID
|
||||
* @param startDate 查询开始时间
|
||||
* @param endDate 查询结束时间
|
||||
* @return
|
||||
*/
|
||||
public List<Map<String,Object>> getLeave(String memberId, String startDate,String endDate);
|
||||
|
||||
|
||||
/**
|
||||
* 查询指定时间内的考勤情况
|
||||
* @param memberId 人员ID
|
||||
* @param startDate 查询开始时间
|
||||
* @param endDate 查询结束时间
|
||||
* @return
|
||||
*/
|
||||
|
||||
public List<CheckOnWorkAttendanceVo> getWorkAttendanceByDate(String memberId, String startDate,String endDate);
|
||||
|
||||
|
||||
/**
|
||||
* 查询规定时间之内的出差单据
|
||||
* @param memberId 人员ID
|
||||
* @param startDate 查询开始时间
|
||||
* @param endDate 查询结束时间
|
||||
* @return
|
||||
*/
|
||||
public List<Map<String,Object>> getEvections(String memberId, String startDate,String endDate);
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 查询规定时间之内的调休单据
|
||||
* @param memberId 人员ID
|
||||
* @param startDate 查询开始时间
|
||||
* @param endDate 查询结束时间
|
||||
* @return
|
||||
*/
|
||||
public List<Map<String,Object>> getAdjustLeave(String memberId, String startDate,String endDate);
|
||||
|
||||
|
||||
/**
|
||||
* 查询规定时间之内的加班单据
|
||||
* @param memberId 人员ID
|
||||
* @param startDate 查询开始时间
|
||||
* @param endDate 查询结束时间
|
||||
* @return
|
||||
*/
|
||||
public List<Map<String,Object>> getOvertime(String memberId, String startDate,String endDate);
|
||||
|
||||
/**
|
||||
* 查询规定时间之内的补卡单据
|
||||
* @param memberId 人员ID
|
||||
* @param startDate 查询开始时间
|
||||
* @param endDate 查询结束时间
|
||||
* @return
|
||||
*/
|
||||
public List<Map<String,Object>> getMakeCard(String memberId, String startDate,String endDate);
|
||||
|
||||
/**
|
||||
* 查询规定时间之内的补卡单据
|
||||
* @param memberId 人员ID
|
||||
* @return
|
||||
*/
|
||||
public String getGroupName(String memberId);
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user