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<User_sms> listd=new ArrayList();
|
int index=0;
|
///System.out.println(list.size());
|
for(int i=(usms.getPage().getPageCurr()-1)*usms.getPage().getPageSize();i<usms.getPage().getPageSize()*usms.getPage().getPageCurr()&&i<list.size();i++){
|
listd.add((User_sms) list.get(i));
|
//system.out.println(list.get(i));
|
((User_sms)listd.get(index++)).getPage().setPageAll(list.size());
|
}
|
return listd;
|
}
|
//4.9短信息查询
|
@SuppressWarnings("unchecked")
|
public List serchByCondition(Object obj) {
|
User_sms usms=(User_sms) obj;
|
String sql="";
|
String numberSql=" SELECT FOUND_ROWS() number";
|
Connection conn=DBUtil.getConn();
|
String baseSql = "select SQL_CALC_FOUND_ROWS 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";
|
String limitSql=" limit ?,? ";
|
sql=baseSql+endSql+limitSql;
|
//System.out.println(sql);
|
List<User_sms> 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<User_sms> listd=new ArrayList();
|
int index=0;
|
///System.out.println(list.size());
|
for(int i=(usms.getPage().getPageCurr()-1)*usms.getPage().getPageSize();i<usms.getPage().getPageSize()*usms.getPage().getPageCurr()&&i<list.size();i++){
|
listd.add((User_sms) list.get(i));
|
//system.out.println(list.get(i));
|
((User_sms)listd.get(index++)).getPage().setPageAll(list.size());
|
}*/
|
//去掉limit条件后的总数
|
int number=LimitNumberFactory.GetLimtitNumber(conn, numberSql);
|
//System.out.println("number: "+number);
|
if(list!=null&&list.size()>0){
|
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<User_sms> list=us.serchByCondition(u);
|
for(User_sms uu:list){
|
System.out.println(uu);
|
}
|
System.out.println(list.size());
|
}
|
}
|