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

📄 getuser.java

📁 短信定制软件
💻 JAVA
字号:
package smstimer;/** * <p>Title: </p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2004</p> * <p>Company: </p> * @author unascribed * @version 1.0 */import java.util.*;public class GetUser extends Engine {    public static DBConnection db =  null;//new DBConnection();    public GetUser(DBConnection d) {        super("GetUser");        setDaemon(true);        this.db = d;    }    public void run(){        String getUser = "select * from sms_deliver where TO_DAYS(NOW())-TO_DAYS(arrive_time) <= 3 and deal_result = 0 and redeal > 0 and (LOWER(msg_content) like "+                                 "'"+Config.order_text+"%' or LOWER(msg_content) = '0000')" ;        while(true){            Vector v = new Vector();            v = (Vector)db.execute(getUser);            System.out.println(v+getUser);            for(int i = 0;i<v.size() ;i++){                Order oneOrder = new Order((String)((Vector)v.get(i)).get(0),                                            (String)((Vector)v.get(i)).get(1),                                            (String)((Vector)v.get(i)).get(2),                                            (String)((Vector)v.get(i)).get(3),                                            (String)((Vector)v.get(i)).get(4),                                            (String)((Vector)v.get(i)).get(5),                                            (String)((Vector)v.get(i)).get(6));                //0000000000000000000                if(oneOrder.msg_content.equals("0000")){                    DisableUser(oneOrder.src_terminal_id,oneOrder.msg_id );                    SendDisableIsOk(oneOrder);                    continue;                }                //0000000000000000000                StringTokenizer st = new StringTokenizer(oneOrder.msg_content," " );                    String mainOrderText = "";                    String period = "";                    String b = "0",e = "1";                    String cityCode = "";                    String forWho = "";                    if(st.hasMoreElements() ){                        mainOrderText = ((String)st.nextElement()).trim()  ;                    }//yb24                    //确定预报时段                    if(mainOrderText.indexOf("024") != -1 || mainOrderText.indexOf("24") != -1){                        period = "24";                    }else if(mainOrderText.indexOf("048") != -1 || mainOrderText.indexOf("48") != -1){                        period = "48";                        b = "1";                        e = "2";                    }else{                        period = "24";                        b = "0";                        e = "1";                    }                    if(st.hasMoreElements() ){                         cityCode = ((String)st.nextElement()).trim()  ;                    }// 54511 or 010 or 北京                    if(st.hasMoreElements() ){                         forWho = ((String)st.nextElement()).trim()  ;                         System.out.println("forWho : "+forWho);                    }                    if(forWho.startsWith("13") && forWho.length() == 11){                    }else{                        forWho = oneOrder.src_terminal_id ;                    }                    String cityName = getCityName(cityCode);                    if(FindUser(forWho,period,cityName)){                        SendAbleIsOk(oneOrder,forWho,period,cityName);                        WriteUserWhenError(oneOrder.msg_id);                    }else{                        boolean writeUserOk = WriteUser(oneOrder.msg_id ,                                                    oneOrder.src_terminal_id ,                                                    forWho,                                                    cityName,period);                    }            }            try{                sleep(1000*5);            }catch(Exception e){                System.out.println("Exception In GetUser.run() : "+e.toString() );            }        }    }    public String getCityName(String cityCode){        String result = "北京";        String getCityNameSql = "select name from stn where sta_id = '"+cityCode+"' or tel = '"+cityCode+"' or name = '"+cityCode+"'";        Vector v = new Vector();        v = (Vector)db.execute(getCityNameSql) ;        if(v.size() >0){            result = (String)((Vector)v.get(0)).get(0);        }        return result;    }    public boolean WriteUser(String deliver_msg_id,String fee_terminal_id,String dest_terminal_id,                             String city_name,String period){        boolean result = false;        Calendar cld = Calendar.getInstance() ;        cld.add(Calendar.DATE ,-1);        String lastDay = Utility.getDateString(cld);        String insertSql = "insert into sms_forecast_time (fee_terminal_id,dest_terminal_id,"+                           "create_time,city_name,period,done_time_24,done_time_48)values('"+fee_terminal_id+"','"+dest_terminal_id+                           "','"+Utility.getDateString() +" "+Utility.getTimeString() +"','"+city_name+                           "','"+period+"','"+lastDay+"','"+lastDay+"')";        int  insertOk = Integer.parseInt(String.valueOf(db.executeUpdate(insertSql)));        if(insertOk == 1){            String updateSql = "update sms_deliver set deal_result = 1 ,redeal = redeal-1 where msg_id = "+deliver_msg_id;            int i = Integer.parseInt(String.valueOf(db.executeUpdate(updateSql)));            if(i == 1){                result = true;            }        }        return result ;    }public boolean WriteUserWhenError(String deliver_msg_id){    boolean result = false;        String updateSql = "update sms_deliver set deal_result = 1 ,redeal = redeal-1 where msg_id = "+deliver_msg_id;        int i = Integer.parseInt(String.valueOf(db.executeUpdate(updateSql)));        if(i == 1){            result = true;        }    return result ;}    public Fee getFee(String service_code){            Fee fee = null;            for(int i = 0;i<Config.service_list.size() ;i++){                if(((String)((Vector)Config.service_list.get(i)).get(0)).equals(service_code) ){                    fee = new Fee((String)((Vector)Config.service_list.get(i)).get(1),                                   (String)((Vector)Config.service_list.get(i)).get(0),                                   (String)((Vector)Config.service_list.get(i)).get(2),                                   (String)((Vector)Config.service_list.get(i)).get(3));                    break;                }            }            return fee;    }    public void DisableUser(String fee_terminal_id,String deliver_msg_id){        String Sql1 = "update sms_forecast_time set status = 0 where fee_terminal_id ='"+fee_terminal_id+"'";        String Sql2 = "update sms_deliver set deal_result = 1 ,redeal = redeal-1 where msg_id = "+deliver_msg_id;        String Sql3 = "update mms_forecast_time set status = 0 where fee_terminal_id ='"+fee_terminal_id+"'";        db.executeUpdate(Sql1) ;        db.executeUpdate(Sql2) ;        db.executeUpdate(Sql3) ;        System.out.println("%%%%%%%%%%%%%"+Sql1+"\r\n"+Sql2);    }    public void SendDisableIsOk(Order oneOrder){        String service_code = Config.free_service_code  ;        Fee fee = getFee(service_code);        String service_id = fee.service_id;        String fee_type = fee.fee_type;        String fee_code = fee.fee_code ;        String fee_user_type = "3";        String fee_terminal_id = oneOrder.src_terminal_id ;        String msg_fmt = "15";        String src_terminal_id = Config.sp_id ;        String dest_terminal_id = oneOrder.src_terminal_id ;        String msg_content = "";        Vector findUserV = new Vector();        String findSql = "select * from sms_forecast_time where  fee_terminal_id ='"+oneOrder.src_terminal_id+"'";        findUserV = (Vector)db.execute(findSql) ;        try{            if(findUserV.size() >0){                msg_content = "您已经取消了所有订阅!";            }else{                msg_content = "您还没有定制,所以不能取消!";            }        }catch(Exception e){            msg_content = "您还没有定制,所以不能取消!";        }        SubmitPackage submitPackage = new SubmitPackage(service_id,        fee_user_type,        fee_terminal_id,        msg_fmt,        fee_type,        fee_code,        src_terminal_id,        dest_terminal_id,        msg_content,        "",        "");        boolean  dealOk = Config.SubmitV.push(submitPackage);         if(dealOk){          System.out.println("下发取消定制确认段信");              //setDealing(timeUser.id);         }    }public boolean SendAbleIsOk(Order oneOrder,String forWho,String period,String cityName){    boolean result = false;    String service_code = Config.free_service_code  ;    Fee fee = getFee(service_code);    String service_id = fee.service_id;    String fee_type = fee.fee_type;    String fee_code = fee.fee_code ;    String fee_user_type = "3";    String fee_terminal_id = oneOrder.src_terminal_id ;    String msg_fmt = "15";    String src_terminal_id = Config.sp_id ;    String dest_terminal_id = oneOrder.src_terminal_id ;    String msg_content = "";    if(FindUser(forWho,period,cityName)){        msg_content = "重复订阅:您已经为"+forWho+"定制了"+period+"预报服务!";    }else{        msg_content = "成功订阅:您为"+forWho+"成功定制"+period+"预报服务!";    }    SubmitPackage submitPackage = new SubmitPackage(service_id,    fee_user_type,    fee_terminal_id,    msg_fmt,    fee_type,    fee_code,    src_terminal_id,    dest_terminal_id,    msg_content,    "",    "");    boolean  dealOk = Config.SubmitV.push(submitPackage);     if(dealOk){      System.out.println("下发成功定制确认段信");          //setDealing(timeUser.id);     }     return result;}public boolean FindUser(String dest_terminal_id,String period,String cityName){    boolean result = false;    String sql = "select * from sms_forecast_time where status = 1 and city_name = '"+cityName+"' and dest_terminal_id='"+dest_terminal_id+"' and period ="+period;    Vector v = new Vector();    v = (Vector)db.execute(sql) ;    System.out.println(sql);    try{        if(v.size() > 0){            result = true;        }else{        }    }catch(Exception e){        e.printStackTrace() ;    }    return result;}    public static void main(String[] args) {        //GetUser getUser1 = new GetUser();    }}

⌨️ 快捷键说明

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