package com.fgkj.dao.impl; import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import com.fgkj.actions.ActionUtil; import com.fgkj.dao.BaseDAO; import com.fgkj.dao.CallBack; import com.fgkj.dao.DAOHelper; import com.fgkj.dao.LimitNumberFactory; import com.fgkj.db.DBUtil; import com.fgkj.db.IDatabaseName; import com.fgkj.dto.Batt_Maint_Dealarm; import com.fgkj.dto.Page; import com.fgkj.dto.User_sms; public class User_smsImpl implements BaseDAO, CallBack { public List getResults(ResultSet rs) { List list = new ArrayList(); try { while (rs.next()) { User_sms usms = new User_sms(); usms.setNum(rs.getInt("num")); usms.setTask_id(rs.getInt("task_id")); usms.setPriority_level(rs.getInt("priority_level")); usms.setUId(rs.getInt("uId")); usms.setPhone_num(rs.getString("phone_num")); usms.setSms(rs.getString("sms")); usms.setSms_add_date(rs.getTimestamp("sms_add_date")); usms.setSms_send_date(rs.getTimestamp("sms_send_date")); usms.setSms_send_err_count(rs.getInt("sms_send_err_count")); usms.setSms_state(rs.getInt("sms_state")); Page page=new Page(); usms.setPage(page); list.add(usms); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return list; } public boolean add(Object obj) { User_sms usms=(User_sms) obj; String sql="insert into db_user.tb_user_sms(task_id,priority_level,uId,phone_num," + "sms,sms_add_date,sms_send_date,sms_send_err_count,sms_state) values(?,?,?,?,?,?,?,?,?)"; Boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{usms.getTask_id(), usms.getPriority_level(),usms.getUId(),usms.getPhone_num(),usms.getSms(),usms.getSms_add_date(), usms.getSms_send_date(),usms.getSms_send_err_count(),usms.getSms_state()}); return bl; } public boolean update(Object obj) { User_sms usms=(User_sms) obj; String sql="update db_user.tb_user_sms set task_id=?,priority_level=?,uId=?,phone_num=?," + "sms=?,sms_add_date=?,sms_send_date=?,sms_send_err_count=?,sms_state=? where num=?"; Boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{usms.getTask_id(), usms.getPriority_level(),usms.getUId(),usms.getPhone_num(),usms.getSms(),usms.getSms_add_date(), usms.getSms_send_date(),usms.getSms_send_err_count(),usms.getSms_state(),usms.getNum()}); return bl; } public boolean del(Object obj) { User_sms usms=(User_sms) obj; String sql="delete from db_user.tb_user_sms where num=?"; Boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{usms.getNum()}); return bl; } public List searchAll() { String sql = "select * from db_user.tb_user_sms"; List list = DAOHelper .executeQuery(sql, DBUtil.getConn(), null, new User_smsImpl()); return list; } //4.9短信息查询 public List serchByCondition1(Object obj) { User_sms usms=(User_sms) obj; String sql=""; String baseSql = "select num,task_id,priority_level,uId,phone_num,sms,sms_add_date,sms_send_date,sms_send_err_count,sms_state " + "from db_user.tb_user_sms " + "where (sms_send_date)>=(?) and (sms_send_date)<=(?) "; //用于选取接收人姓名 String nameSqlT=" and uid!=?"; String nameSqlF=" and uid=?"; if(usms.getUId()==0){ baseSql+=nameSqlT; }else{ baseSql+=nameSqlF; } //用于短信状态 String stateSqlT=" and sms_state!=?"; String stateSqlF=" and sms_state=?"; if(usms.getSms_state()==100){ baseSql+=stateSqlT; }else{ baseSql+=stateSqlF; } //根据uid/sms_add_date升序排序 String endSql=" order by uId asc,sms_add_date asc"; sql=baseSql+endSql; //System.out.println(sql); List list = DAOHelper .executeQuery(sql, DBUtil.getConn(), new Object[]{usms.getSms_send_date(),usms.getSms_send_date1(), usms.getUId(),usms.getSms_state()}, new User_smsImpl()); List listd=new ArrayList(); int index=0; ///System.out.println(list.size()); for(int i=(usms.getPage().getPageCurr()-1)*usms.getPage().getPageSize();i=(?) and (sms_send_date)<=(?) "; //用于选取接收人姓名 String nameSqlT=" and uid!=?"; String nameSqlF=" and uid=?"; if(usms.getUId()==0){ baseSql+=nameSqlT; }else{ baseSql+=nameSqlF; } //用于短信状态 String stateSqlT=" and sms_state!=?"; String stateSqlF=" and sms_state=?"; if(usms.getSms_state()==100){ baseSql+=stateSqlT; }else{ baseSql+=stateSqlF; } //根据uid/sms_add_date升序排序 String endSql=" order by uId asc,sms_add_date asc"; String limitSql=" limit ?,? "; sql=baseSql+endSql+limitSql; //System.out.println(sql); List list = DAOHelper .executeQueryLimit(sql, conn, new Object[]{usms.getSms_send_date(),usms.getSms_send_date1(), usms.getUId(),usms.getSms_state(),(usms.getPage().getPageCurr() - 1)* usms.getPage().getPageSize(), usms.getPage().getPageSize()}, new User_smsImpl()); /* List listd=new ArrayList(); int index=0; ///System.out.println(list.size()); for(int i=(usms.getPage().getPageCurr()-1)*usms.getPage().getPageSize();i0){ list.get(list.size()-1).getPage().setPageAll(number); } return list; } public List serchByInfo(Object obj) { // TODO Auto-generated method stub return null; } public static void main(String[] args) throws ParseException { User_smsImpl us=new User_smsImpl(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date date1 = sdf.parse("2000-01-01"); Date date2 = sdf.parse("2020-01-01"); Page p=new Page(); p.setPageCurr(1); p.setPageSize(10); User_sms u=new User_sms(); u.setUId(1001); u.setSms_state(100); u.setSms_send_date(ActionUtil.getSimpDate(date1)); u.setSms_send_date1(ActionUtil.getSimpDate(date2)); u.setPage(p); List list=us.serchByCondition(u); for(User_sms uu:list){ System.out.println(uu); } System.out.println(list.size()); } }