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

📄 submitrequest.java

📁 采用JAVA开发
💻 JAVA
字号:
package com.gctech.cmpp3.msg;

import java.io.File;
import java.io.FileOutputStream;

import org.apache.log4j.Logger;

import com.gctech.cmpp3.util.Util;
import com.gctech.util.IOUtility;
import com.gctech.util.Tools;

/**
 * <p>Title: 短信 API</p>
 * <p>Description: 短信SP API</p>
 * <p>Copyright: Copyright (c) 2004</p>
 * <p>Company: GCTECH</p>
 * @author 王红宝
 * @version $Id: SubmitRequest.java,v 1.4 2004/07/16 08:33:16 wanghb Exp $
 */

public class SubmitRequest extends CmppMsg {
	private byte[] msgId = new byte[8];
	private byte pkTotal = (byte) 1;
	private byte pkNumber = (byte) 1;
	private byte registeredDelivery;
	private byte msgLevel;
	private String serviceId;
	private byte feeUserType;
	private byte feeTermType;
	private String feeTermId;
	private byte tpPid;
	private byte tpUdhi;
	private byte msgFmt;
	private String msgSrc;
	private String feeType;
	private String feeCode;
	private String validTime;
	private String atTime;
	private String srcId;
	private byte destNum;
	private byte destTermType;
	private String destTermId;
	private String msgContent;
	//private String reserve;
	private String linkID;
	private int msgLength;
	public SubmitRequest() {
		super();
		this.head.setCommandId(CommandID.CMPP_SUBMIT);
	}
	public byte[] getMsgId() {
		return msgId;
	}
	public void setMsgId(byte[] msgId) {
		this.msgId = msgId;
	}
	public byte getPkTotal() {
		return pkTotal;
	}
	public void setPkTotal(byte pkTotal) {
		this.pkTotal = pkTotal;
	}
	public byte getPkNumber() {
		return pkNumber;
	}
	public void setPkNumber(byte pkNumber) {
		this.pkNumber = pkNumber;
	}
	public byte getRegisteredDelivery() {
		return registeredDelivery;
	}
	public void setRegisteredDelivery(byte registeredDelivery) {
		this.registeredDelivery = registeredDelivery;
	}
	public byte getMsgLevel() {
		return msgLevel;
	}
	public void setMsgLevel(byte msgLevel) {
		this.msgLevel = msgLevel;
	}
	public String getServiceId() {
		return serviceId;
	}
	public void setServiceId(String serviceId) {
		this.serviceId = serviceId;
	}
	public byte getFeeUserType() {
		return feeUserType;
	}
	public void setFeeUserType(byte feeUserType) {
		this.feeUserType = feeUserType;
	}
	public String getFeeTermId() {
		return feeTermId;
	}
	public void setFeeTermId(String feeTermId) {
		this.feeTermId = feeTermId;
	}
	public byte getTpPid() {
		return tpPid;
	}
	public void setTpPid(byte tpPid) {
		this.tpPid = tpPid;
	}
	public byte getTpUdhi() {
		return tpUdhi;
	}
	public void setTpUdhi(byte tpUdhi) {
		this.tpUdhi = tpUdhi;
	}
	public byte getMsgFmt() {
		return msgFmt;
	}
	public void setMsgFmt(byte msgFmt) {
		this.msgFmt = msgFmt;
	}
	public String getMsgSrc() {
		return msgSrc;
	}
	public void setMsgSrc(String msgSrc) {
		this.msgSrc = msgSrc;
	}
	public String getFeeType() {
		return feeType;
	}
	public void setFeeType(String feeType) {
		this.feeType = feeType;
	}
	public String getFeeCode() {
		return feeCode;
	}
	public void setFeeCode(String feeCode) {
		this.feeCode = feeCode;
	}
	public String getValidTime() {
		return validTime;
	}
	public void setValidTime(String validTime) {
		this.validTime = validTime;
	}
	public String getAtTime() {
		return atTime;
	}
	public void setAtTime(String atTime) {
		this.atTime = atTime;
	}
	public String getSrcId() {
		return srcId;
	}
	public void setSrcId(String srcId) {
		this.srcId = srcId;
	}
	public byte getDestNum() {
		return destNum;
	}
	public void setDestNum(byte destNum) {
		this.destNum = destNum;
	}
	public String getDestTermId() {
		return destTermId;
	}
	public void setDestTermId(String destTermId) {
		this.destTermId = destTermId;
	}
	public int getMsgLength() {
		return msgLength;
	}
	public void setMsgLength(int msgLength) {
		this.msgLength = msgLength;
	}
	public String getMsgContent() {
		return msgContent;
	}
	public void setMsgContent(String msgContent) {
		this.msgContent = msgContent;
	}
	public String getLinkID() {
		return linkID;
	}
	public void setLinkID(String linkID) {
		this.linkID = linkID;
	}

	//转化成一个数组。
	protected void toByteArray(byte[] data) {
		System.out.println("data length:" + data.length);
		data[20] = (byte) 1;
		data[21] = (byte) 1;
		data[22] = this.getRegisteredDelivery();
		data[23] = this.getMsgLevel();
		byte[] temp = this.getServiceId().getBytes();
		System.arraycopy(temp, 0, data, 24, temp.length);
		data[34] = this.getFeeUserType();
		//计费手机
		temp = getFeeTermId().getBytes();
		System.arraycopy(temp, 0, data, 35, temp.length);
		data[67] = this.getFeeTermType();
		//中间两位没有填
		data[70] = this.getMsgFmt();
		temp = this.getMsgSrc().getBytes();
		System.arraycopy(temp, 0, data, 71, temp.length);

		temp = this.getFeeType().getBytes();
		System.arraycopy(temp, 0, data, 77, temp.length);

		temp = this.getFeeCode().getBytes();
		System.arraycopy(temp, 0, data, 79, temp.length);

		Util.copy(this.getValidTime(), data, 85);
		Util.copy(this.getAtTime(), data, 102);
		Util.copy(this.getSrcId(), data, 119);
		data[140] = 1;
		Util.copy(this.getDestTermId(), data, 141);
		data[173] = this.getDestTermType();

		data[174] = (byte) getMsgLength();
		System.out.println("msg getMsgContent():=======================" + getMsgContent());
		Util.copy(getMsgContent(), data, 175);
		System.out.println("data length:" + data.length);
		System.out.println("getMsgLength():" + getMsgLength());
		Util.copy(this.getLinkID(), data, 175 + getMsgLength());
		System.out.println("submit this.linkID:" + this.linkID);
		for (int i = 175 + getMsgLength(); i < data.length; i++) {
			System.out.println(data[i]);
		}
		try {
			File file = new File("out.txt");
			file.createNewFile();
			IOUtility.copy(data, new FileOutputStream(file));
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	public String toString() {
		return "submit request:" + super.toString();
	}
	public void fromByteArray(byte[] data, int offset) {
		super.fromByteArray(data, offset);
		try {
			System.arraycopy(data, 8 + offset, this.msgId, 0, 8);
			//this.pkTotal = data[16 + offset];
			//this.pkNumber = data[17 + offset];
			this.registeredDelivery = data[18 + offset];
			this.msgLevel = data[19 + offset];
			this.serviceId = new String(data, offset + 20, 10).trim();
			this.feeUserType = data[30];
			this.feeTermId = new String(data, offset + 31, 32).trim();
			this.feeTermType = data[63];
			this.tpPid = data[64];
			this.tpUdhi = data[65];
			this.msgFmt = data[66];
			this.msgSrc = new String(data, offset + 67, 6).trim();
			this.feeType = new String(data, offset + 73, 2).trim();
			this.feeCode = new String(data, offset + 75, 6).trim();
			this.validTime = new String(data, offset + 81, 17).trim();
			this.atTime = new String(data, offset + 98, 17).trim();
			this.srcId = new String(data, offset + 115, 21).trim();
			this.destNum = data[136];
			this.destTermId = new String(data, offset + 137, 32).trim();
			this.destTermType = data[169];
			this.msgLength = Tools.unsignedByte2int(data[170]);
			int contentLen = msgContent.getBytes().length;
			this.msgContent = new String(data, offset + 171, this.msgLength);
			this.linkID = new String(data, offset + 171 + contentLen, 20);
		} catch (Throwable ex) {
			logger.error("", ex);
		}

		//start += msgLength;
		//this.reserve = new String(data, start, 8);
		//super.fromByteArray(data, offset);
	}

	//add by liya
	public SubmitRequest(CmppMsg cmppmsg) {

		super(cmppmsg);
	}
	static Logger logger = Logger.getLogger(SubmitRequest.class);
	/**
	 * @return
	 */
	public byte getDestTermType() {
		return destTermType;
	}

	/**
	 * @return
	 */
	public byte getFeeTermType() {
		return feeTermType;
	}

	/**
	 * @param b
	 */
	public void setDestTermType(byte b) {
		destTermType = b;
	}

	/**
	 * @param b
	 */
	public void setFeeTermType(byte b) {
		feeTermType = b;
	}

}

⌨️ 快捷键说明

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