📄 msgsubmit.java
字号:
package com.wireless.sms.gwif.sgip12;
/**
* <p>Title: WVAS-PLATFORM-SMS</p>
* <p>Description: 无线增值业务平台-----短信接口机</p>
* <p>Copyright: Copyright (c) 2003</p>
* <p>Company: moon</p>
* @author tech team
* @version 1.0
*/
import com.wireless.sms.pub.util.Base64;
//import com.wireless.sms.pub.mq.*;
public class MsgSubmit extends MsgHead
{
public String SPNumber; //21 Text
public String ChargeNumber; //21 Text
private int UserCount; //1 Integer
private String[] UserNumber; //21 Text
public String CorpId; //5 Text
public String ServiceType; //10 Text
public int FeeType; //1 Integer
public String FeeValue; //6 Text
public String GivenValue; //6 Text
public int AgentFlag; //1 Integer
public int MorelatetoMTFlag; //1 Integer
public int Priority; //1 Integer
public String ExpireTime; //16 Text
public String ScheduleTime; //16 Text
public int ReportFlag; //1 Integer
public int TP_pid; //1 Integer
public int TP_udhi; //1 Integer
public int MessageCoding; //1 Integer
public int MessageType; //1 Integer
private int MessageLength; //4 Integer
private String MessageContent=""; //Message Length Text
public String Reserve; //8 Text
public void setMessageLength(int MessageLength) {
this.MessageLength = MessageLength;
}
public int getMessageLength() {
return MessageLength;
}
public MsgSubmit() {
setCmdID(0x3);
}
public byte[] getBytes(){
byte[] sMsgContent = null;
try {
if (MessageCoding == 8){
sMsgContent = MessageContent.getBytes("iso-10646-ucs-2");
} else if (MessageCoding == 15) {
sMsgContent = MessageContent.getBytes("GBK");
} else if(MessageCoding == 4 || MessageCoding == 3) {
sMsgContent = Base64.decode(MessageContent.getBytes("iso-8859-1"));
} else {
sMsgContent = MessageContent.getBytes("iso-8859-1");
}
} catch (Exception ex) {
ex.printStackTrace();
}
MessageLength = sMsgContent.length;
//设置包长
setTotalLen(20 + 123 + UserCount * 21 + MessageLength);
byte[] r = new byte[getTotalLen()];
headFill(r);
str2byte(r, SPNumber, 20, 21); //1
str2byte(r, ChargeNumber, 41, 21); //2
r[62] = (byte)UserCount; //3
for (int i=0; i< UserCount; i++){
str2byte(r, UserNumber[i], 63 + i * 21, 21); //4
}
int idx = 63 + UserCount * 21;
str2byte(r, CorpId, idx, 5); //5
str2byte(r, ServiceType, idx + 5, 10); //6
r[idx + 15] = (byte)FeeType; //7
str2byte(r, FeeValue, idx + 16, 6); //8
str2byte(r, GivenValue, idx + 22, 6); //9
r[idx + 28] = (byte)AgentFlag; //10
r[idx + 29] = (byte)MorelatetoMTFlag; //11
r[idx + 30] = (byte)Priority; //12
idx = idx + 31;
str2byte(r, ExpireTime, idx, 16); //13
str2byte(r, ScheduleTime, idx + 16, 16); //14
r[idx + 32] = (byte)ReportFlag; //15
r[idx + 33] = (byte)TP_pid; //16
r[idx + 34] = (byte)TP_udhi; //17
r[idx + 35] = (byte)MessageCoding; //18
r[idx + 36] = (byte)MessageType; //19
setUINT4(r, idx + 37, MessageLength); //20
System.arraycopy(sMsgContent,0,r,idx+41,sMsgContent.length); //21
str2byte(r, Reserve, idx + 41 + MessageLength, 8); //22
return r;
}
public byte[] getSpecialBytes(byte [] msgcontent){
byte[] sMsgContent = msgcontent;
MessageLength = sMsgContent.length;
//设置包长
setTotalLen(20 + 123 + UserCount * 21 + MessageLength);
byte[] r = new byte[getTotalLen()];
headFill(r);
str2byte(r, SPNumber, 20, 21); //1
str2byte(r, ChargeNumber, 41, 21); //2
r[62] = (byte)UserCount; //3
for (int i=0; i< UserCount; i++){
str2byte(r, UserNumber[i], 63 + i * 21, 21); //4
}
int idx = 63 + UserCount * 21;
str2byte(r, CorpId, idx, 5); //5
str2byte(r, ServiceType, idx + 5, 10); //6
r[idx + 15] = (byte)FeeType; //7
str2byte(r, FeeValue, idx + 16, 6); //8
str2byte(r, GivenValue, idx + 22, 6); //9
r[idx + 28] = (byte)AgentFlag; //10
r[idx + 29] = (byte)MorelatetoMTFlag; //11
r[idx + 30] = (byte)Priority; //12
idx = idx + 31;
str2byte(r, ExpireTime, idx, 16); //13
str2byte(r, ScheduleTime, idx + 16, 16); //14
r[idx + 32] = (byte)ReportFlag; //15
r[idx + 33] = (byte)TP_pid; //16
r[idx + 34] = (byte)TP_udhi; //17
r[idx + 35] = (byte)MessageCoding; //18
r[idx + 36] = (byte)MessageType; //19
setUINT4(r, idx + 37, MessageLength); //20
System.arraycopy(sMsgContent,0,r,idx+41,sMsgContent.length); //21
str2byte(r, Reserve, idx + 41 + MessageLength, 8); //22
return r;
}
public String[] getUserNumber() {
return UserNumber;
}
public void setMessageContent(String MessageContent) {
this.MessageContent = MessageContent;
MessageLength =MessageContent.getBytes().length;
setTotalLen(20 + 123 + UserCount * 21 + MessageLength);
}
public String getMessageContent() {
return MessageContent;
}
public void setUserNumber(String[] UserNumber) {
this.UserNumber = UserNumber;
UserCount = UserNumber.length;
setTotalLen(20 + 123 + UserCount * 21 + MessageLength);
}
public int getTP_udhi() {
return TP_udhi;
}
public void setTP_udhi(int TP_udhi) {
this.TP_udhi = TP_udhi;
}
public int getTP_pid() {
return TP_pid;
}
public void setTP_pid(int TP_pid) {
this.TP_pid = TP_pid;
}
public String getSPNumber() {
return SPNumber;
}
public void setSPNumber(String SPNumber) {
this.SPNumber = SPNumber;
}
public String getServiceType() {
return ServiceType;
}
public void setServiceType(String ServiceType) {
this.ServiceType = ServiceType;
}
public String getScheduleTime() {
return ScheduleTime;
}
public void setScheduleTime(String ScheduleTime) {
this.ScheduleTime = ScheduleTime;
}
public String getReserve() {
return Reserve;
}
public void setReserve(String Reserve) {
this.Reserve = Reserve;
}
public int getReportFlag() {
return ReportFlag;
}
public int getPriority() {
return Priority;
}
public void setPriority(int Priority) {
this.Priority = Priority;
}
public void setReportFlag(int ReportFlag) {
this.ReportFlag = ReportFlag;
}
public int getMorelatetoMTFlag() {
return MorelatetoMTFlag;
}
public void setMorelatetoMTFlag(int MorelatetoMTFlag) {
this.MorelatetoMTFlag = MorelatetoMTFlag;
}
public int getMessageType() {
return MessageType;
}
public void setMessageType(int MessageType) {
this.MessageType = MessageType;
}
public int getMessageCoding() {
return MessageCoding;
}
public void setMessageCoding(int MessageCoding) {
this.MessageCoding = MessageCoding;
}
public String getGivenValue() {
return GivenValue;
}
public void setGivenValue(String GivenValue) {
this.GivenValue = GivenValue;
}
public String getFeeValue() {
return FeeValue;
}
public void setFeeValue(String FeeValue) {
this.FeeValue = FeeValue;
}
public int getFeeType() {
return FeeType;
}
public void setFeeType(int FeeType) {
this.FeeType = FeeType;
}
public String getExpireTime() {
return ExpireTime;
}
public void setExpireTime(String ExpireTime) {
this.ExpireTime = ExpireTime;
}
public String getCorpId() {
return CorpId;
}
public void setCorpId(String CorpId) {
this.CorpId = CorpId;
}
public String getChargeNumber() {
return ChargeNumber;
}
public void setChargeNumber(String ChargeNumber) {
this.ChargeNumber = ChargeNumber;
}
public void setAgentFlag(int AgentFlag) {
this.AgentFlag = AgentFlag;
}
public int getAgentFlag() {
return AgentFlag;
}
public int getUserCount() {
return UserCount;
}
public void setUserCount(int UserCount) {
this.UserCount = UserCount;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -