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

📄 smsdeliverthread.java

📁 WAP PUSH后台源码,WAP PUSH后台源码
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
package com.tssx.ebiz.sgip;import java.sql.*;import java.io.*;import java.util.*;import com.tssx.ebiz.smscenter.SMSQueue;import com.tssx.ebiz.common.*;/** * <p>Title: </p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2003</p> * <p>Company: </p> * @author unascribed * @version 1.0 */public class SMSDeliverThread implements Runnable {//     Connection m_dbConn=null;     private int m_seqAddr;     private int m_seqDate;     private int m_sequence;     private int m_messageLength;     private int m_commandID;     private String m_spNumber;     private String m_userNumber;     private int m_tp_pid;     private int m_tp_udhi;     private int m_messageCoding;     private int m_msgLen;     private String m_messageContent;     private String m_reserve;     public SMSDeliverThread(String messageContent,String userNumber,int messageCoding) {          super();          m_messageContent=messageContent;          m_userNumber=userNumber;          m_messageCoding=messageCoding;     }//     public SMSDeliverThread(Connection con,String messageContent,String userNumber,int messageCoding) {//          super();//          m_dbConn=con;//          m_messageContent=messageContent;//          m_userNumber=userNumber;//          m_messageCoding=messageCoding;//     }     public SMSDeliverThread(int seqAddr,int seqDate,int sequence,int messageLength,int commandID,                             String spNumber,String userNumber,int tp_pid,int tp_udhi,int messageCoding,                             int msgLen,String messageContent,String reserve) {          super();          m_seqAddr=seqAddr;          m_seqDate=seqDate;          m_sequence=sequence;          m_messageLength=messageLength;          m_commandID=commandID;          m_spNumber=spNumber;          m_userNumber=userNumber;          m_tp_pid=tp_pid;          m_tp_udhi=tp_udhi;          m_messageCoding=messageCoding;          m_msgLen=msgLen;          m_messageContent=messageContent;          m_reserve=reserve;     }//     public SMSDeliverThread(Connection con,int seqAddr,int seqDate,int sequence,int messageLength,int commandID,//                             String spNumber,String userNumber,int tp_pid,int tp_udhi,int messageCoding,//                             int msgLen,String messageContent,String reserve) {//          super();//          m_dbConn=con;//          m_seqAddr=seqAddr;//          m_seqDate=seqDate;//          m_sequence=sequence;//          m_messageLength=messageLength;//          m_commandID=commandID;//          m_spNumber=spNumber;//          m_userNumber=userNumber;//          m_tp_pid=tp_pid;//          m_tp_udhi=tp_udhi;//          m_messageCoding=messageCoding;//          m_msgLen=msgLen;//          m_messageContent=messageContent;//          m_reserve=reserve;//     }     protected static Connection getConnection() throws Exception {          String driverName = SMReceiver.driverName;          String url = SMReceiver.url;          String user=SMReceiver.user;          String password=SMReceiver.password;          Connection con = null;          //连接数据库          Class.forName(driverName).newInstance();          con = DriverManager.getConnection(url,user,password);          return con;     }     public static String uncode(String strInput) {          if (strInput == null) return null;          char[] chardata1=new char[strInput.length()];          strInput.getChars(0, strInput.length(), chardata1, 0);          char[] chardata2=new char[chardata1.length/2];          int i,j;          i=0;          j=0;          while(i<chardata1.length){               chardata2[j]=(char)((chardata1[i]<<8) & 0xff00);               chardata2[j]=(char)((chardata1[i+1] & 0xff) | chardata2[j]);               i=i+2;               j=j+1;          }          return new String(chardata2);     }     public void run() {          Connection m_dbConn=null;          PreparedStatement stmt=null;          try{               m_dbConn = getConnection();               Calendar myDate=java.util.Calendar.getInstance();               String myDay=Integer.toString(myDate.get(myDate.DATE));               if(myDay.length()==1) myDay="0"+myDay;               String biao="TSMS20"+myDay;               ResultSet rs=null;               String sql="";               sql="insert into "+biao+" "                  +"(seqAddr,seqDate,sequence,messageLength,commandID,"                  +"spNumber,userNumber,tp_pid,tp_udhi,messageCoding,"                  +"msgLen,messageContent,reserve) values (?,?,?,?,?,?,?,?,?,?,?,?,?)";               stmt=m_dbConn.prepareStatement(sql);               stmt.setInt(1,m_seqAddr);               stmt.setInt(2,m_seqDate);               stmt.setInt(3,m_sequence);               stmt.setInt(4,m_messageLength);               stmt.setInt(5,m_commandID);               stmt.setString(6,m_spNumber);               stmt.setString(7,m_userNumber);               stmt.setInt(8,m_tp_pid);               stmt.setInt(9,m_tp_udhi);               stmt.setInt(10,m_messageCoding);               stmt.setInt(11,m_msgLen);               if(m_messageCoding==8){                    m_messageContent=uncode(m_messageContent);               }               stmt.setString(12,m_messageContent);               stmt.setString(13,m_reserve);               stmt.executeUpdate();               stmt.close();               if(m_userNumber.indexOf("86")==0){                    m_userNumber=m_userNumber.substring(2,m_userNumber.length());                    m_userNumber=m_userNumber.trim();               }               if(m_messageContent!=null){                    m_messageContent=m_messageContent.trim();               }else{                    m_messageContent="";               }               System.out.println(m_userNumber);               System.out.println(m_messageContent);//               if(m_messageContent.toUpperCase().indexOf("AMK")==0){//湖南买卡//                    CardSellBySMS cardsellbysms=new CardSellBySMS();//                    System.out.println("init cardsellbysms");//                    cardsellbysms.sellCardBySMS(m_dbConn,m_userNumber,m_messageContent);//                    System.out.println("succ");//                    System.out.println("买卡业务");//               }else{//                    moSendBean mosendbean=new moSendBean();//                    mosendbean.insertSmscust(m_dbConn,m_messageContent,m_userNumber);//                    System.out.println("其他业务");//               }               String content="";               int bj=0;               int bj1=0;               int bj2=0;               int bj3=0;               int i=0;               //SysConfig sysconfig=new SysConfig();               if(m_messageContent.toUpperCase().indexOf("0000")==0){//显示用户所有定制信息                    sql="select serverName,dropOrder from tsrvspsv where serverID in (select serverID from tsmscust where mobileNo=? and statusID=0)";                    stmt=m_dbConn.prepareStatement(sql);                    stmt.setString(1,m_userNumber);                    rs=stmt.executeQuery();                    while(rs.next()){                         content=content+"您定制了:"+rs.getString("serverName").trim()+"服务,取消定制发"+rs.getString("dropOrder").trim()+"到81662\r\n";                    }                    if(content==null || content.equals("")){                         content="您没有定制任何信息,请参考www.165xj.com";                    }                    stmt.close();                    long queueID=KeyContainer.getNewSequence(m_dbConn,"tsmsqueuid");                    String destination=m_userNumber;                    //String sourceAddr="";                    //String destinationAddr=mobileNo;                    //String content="";                    short submitMulti=0;                    int fileNum=0;                    //long userID=myMember.getUserID();                    String spNumber=SysConfig.getParamValue(m_dbConn,"ASMS","spNumber");                    String serviceType=SysConfig.getParamValue(m_dbConn,"ASMS","serviceType");//mf                    String corpID=SysConfig.getParamValue(m_dbConn,"ASMS","corpID");                    int feeType=1;//0 1免费 2收费 3包月费 4sp实现收费                    String feeValue="0";                    String givenValue="0";                    int morelatetoMTFlag=0;//0mo的第一条 1mo引起的不是第一条 2普通mt 3系统mt                    int reportFlag=1;//0出错返回 1一定返回 2不返回 3报月                    SMSQueue smsqueue=new SMSQueue();                    smsqueue.insert(m_dbConn,queueID,"86"+spNumber,"86"+destination,content,submitMulti,fileNum,                             spNumber,corpID,serviceType,feeType,feeValue,givenValue,morelatetoMTFlag,reportFlag);               }else{                    if(m_messageContent.toUpperCase().indexOf("QX0")==0){//取消用户所有定制信息                         sql="update tsmscust set statusID=8 where mobileNo=? and (serverID in (select serverID from tsrvspsv where spid in (select userID from topmusrs where (corpID is null or corpID='')))) ";                         stmt=m_dbConn.prepareStatement(sql);                         stmt.setString(1,m_userNumber);                         bj=stmt.executeUpdate();                         if(bj==0){                              content="您没有定制任何信息,请参考www.165xj.com";                         }else{                              content="您已经取消您在www.165xj.com的定制所有服务,欢迎您下次再次使用";                         }                         stmt.close();                         long queueID=KeyContainer.getNewSequence(m_dbConn,"tsmsqueuid");                         String destination=m_userNumber;                         //String sourceAddr="";                         //String destinationAddr=mobileNo;                         //String content="";                         short submitMulti=0;                         int fileNum=0;                         //long userID=myMember.getUserID();                         String spNumber=SysConfig.getParamValue(m_dbConn,"ASMS","spNumber");                         String serviceType=SysConfig.getParamValue(m_dbConn,"ASMS","serviceType");//mf                         String corpID=SysConfig.getParamValue(m_dbConn,"ASMS","corpID");                         int feeType=1;//0 1免费 2收费 3包月费 4sp实现收费                         String feeValue="0";                         String givenValue="0";                         int morelatetoMTFlag=0;//0mo的第一条 1mo引起的不是第一条 2普通mt 3系统mt                         int reportFlag=1;//0出错返回 1一定返回 2不返回 3报月                         SMSQueue smsqueue=new SMSQueue();                         smsqueue.insert(m_dbConn,queueID,"86"+spNumber,"86"+destination,content,submitMulti,fileNum,                                  spNumber,corpID,serviceType,feeType,feeValue,givenValue,morelatetoMTFlag,reportFlag);                    }else{                         int serverID=0;                         int payType=0;                         double pays=0.0;                         String serverType="";                         sql="select serverID,serverName,orderCustomize,orderGuide,dropOrder,payType,pays,serverType from tsrvspsv where orderCustomize=? or orderGuide=? or dropOrder=?";                         stmt=m_dbConn.prepareStatement(sql);                         stmt.setString(1,m_messageContent);                         stmt.setString(2,m_messageContent);                         stmt.setString(3,m_messageContent);                         rs=stmt.executeQuery();                         if(rs.next()){                              serverID=rs.getInt("serverID");                              payType=rs.getInt("payType");

⌨️ 快捷键说明

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