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

📄 cmtbase.hpp

📁 液晶电视完整代码可实现人机界面
💻 HPP
字号:
//------------------------------------------------------------------- // 系统名:小额批量支付系统MBFE// 文件名:CMTBase.hpp// 描  述:MBFE后台服务基础类// 版  本:v1.0// Copyright (c) 2005  YLINK//------------------------------------------------------------------- #ifndef __CMTBASE__#define __CMTBASE__// 公共头文件#include "SvrDef.hpp"#include "BepsMbfePub.hpp"// 系统错#define E_ReadBigDataFail     			21753001			// CB0S5001 查询大文本数据存储表失败#define E_UpdateBigDataFail  			21753002			// CB0S5003 更新大文本数据存储表失败#define E_SaveBigDataFail     			21753003			// CB0S5002 保存大文本数据存储表失败#define E_GetCmtAttrFail     			21753004			// CB0S5001 查询报文属性表失败#define E_SaveRunInfoFail         		21753005			// CB0S5002 保存运行信息通知表失败	#define E_GetQueueNoFail      			21753006			// CB0S5013 产生队列序号失败 #define E_SaveAPIMBRQFail     			21753007			// CB0S5002 保存接口数据来帐队列失败#define E_DelBigDataFail      			21753008			// CB0S5004 删除大文本数据存储表失败#define E_DelAPIMBSQFail      			21753009			// CB0S5004 删除接口数据往帐队列失败#define E_DelAPIMBRQFail     			21753010			// CB0S5004 删除接口数据来帐队列失败#define E_SaveCOMMBFESQFail  			21753011			// CB0S5002 保存通讯数据往帐队列失败#define E_DelCOMMBFERQFail   			21753012			// CB0S5004 删除通讯数据来帐队列失败#define E_MdyCOMMBFERQFail   			21753013			// CB0S5003 修改通讯数据来帐队列失败#define E_BuildMsgHeaderFail 			21753014			// CB0S2004 组报文头失败#define E_UnknownAppCode     			21753015			// CB0S9999 错误的系统编码#define E_Pack911HeaderFail   			21753016			// CB0S2004 组911报文头失败#define E_Pack911BusinessFail 			21753017			// CB0S2004 组911正文失败//#define E_CallMacError     	            21753018            // CB0S9008 密押卡工作异常#define E_MdyAPIMBSQFail                21753019            // CB0S5003 更新接口数据往帐表失败#define E_MsgHeaderError                21753020            // CB0S2003 报文头错#define E_GetSysWorkDateFail            21753021            // CB0S5001 取系统工作日期失败#define E_MdyRecordStateError           21753022            // CB0S5003 修改状态失败// 业务错#define E_CheckRecvNodeLegFail          21753501            // CB0O1407 接收节点关系合法性检查失败#define E_CheckSendNodeLegFail          21753502            // CB0O1406 发起节点关系合法性检查失败#define E_CheckRdfiCodeStatusFail 		21753503           	// CB0O2004 接收行状态合法性检查失败#define E_CheckOdfiCodeStatusFail 		21753504           	// CB0O2003 发起行状态合法性检查失败#define E_CheckPubRecvFail        		21753505           	// CB0O1999 来帐检查失败#define E_CheckOdfiCodeRecvGrantFail 	21753506       		// CB0O5002 接收清算行接收业务权限合法性检查失败#define E_CheckSdfiCodeSendGrantFail 	21753507			// CB0O5001 发起清算行发起业务权限合法性检查失败#define E_CheckOsdfiCodeFail        	21753508			// CB0O2004 接收清算行状态合法性检查失败#define E_CheckIsdfiCodeFail 			21753509			// CB0O2003 发起清算行状态合法性检查失败#define E_CheckOdfiCenterFail 			21753510			// CB0O1101 发报中心状态合法性检查失败#define E_CheckDateFail 				21753511			// CB0O1005 日期合法性检查失败#define E_CheckSdfiCenterFail 			21753512			// CB0O1102 收报中心状态合法性检查失败#define E_CheckNpcLegFail 				21753513			// CB0O3001 NPC状态合法性检查#define E_SendIsdfiCodeNotEq 			21753514			// CB0O1103 报文头发起清算行和正文发起清算行是否一致#define E_SendRdfiCodeNotEq 			21753515			// CB0O1102 报文头收报中心和正文收报中心是否一致#define E_SendOsdfiCodeNotEq 			21753516			// CB0O1104 报文头中接收清算行和正文接收清算行是否一致#define E_GetCcpcCenterFail 			21753517			// CB0O1309 取CCPC号码失败#define E_MsgHeaderReceiverLengthErr 	21753518 			// CB0O1999 报文头中接收方长度错误#define E_CheckMacError                 21753519            // CB0O4001 核地方押失败#define E_MakeMacError   	            21753520            // CB0O4002 加地方押失败#define E_CallMacError     	            21753521            // CB0O4999 密押卡工作异常 extern  MainCtlToSo * strMainCtlToSo;class CMTBase{public:     	CMTBase();    	virtual ~CMTBase(){};        void    CmtHdle();	        protected:		//嵌套定义		struct strRecordState		{			char sCmtNo[4];     	// 报文编号			char sSendNet[13];  	// 发起节点号			char sPreDate[9];   	// 包委托日期委托日期					char sSerialNo[21];     // 包序号查询号查复号退回申请号退回应答号等等			char sProcState[3];		// 处理状态 			char sDealCode[8];  	// 业务处理码			char sRollNet[2];		// 轧差节点 0:NPC、1:CCPC			int  nRollNo;         	// 轧差场次				char sRollDate[9];		// 轧差日期				char sSapsDate[9];		// 清算日期			};        			protected:/*      	功能    :解析正文并填充strCheckGrant:公共权限检查结构。正文中没有的不要填。            	入口参数:sCmtNo:报文编号 sBusinessData:正文报文		出口参数:strCheckGrant:公共权限检查结构*/		virtual void ParseMBMsgBody(char *sBusinessData) = 0;/*      	功能    :解析正文并填充strCheckGrant:公共权限检查结构。正文中没有的不要填。            	入口参数:sCmtNo:报文编号 sBusinessData:正文报文		出口参数:strCheckGrant:公共权限检查结构*/		virtual void ParseMsgBody(const char *sCmtNo,char *sBusinessData, CheckGrant &strCheckGrant) = 0;				virtual void BuildMBMsgBody(char *sBusinessData) = 0;		virtual void BuildMsgBody(char *sBusinessData) = 0;		/*        功能    :往帐检查( 原业务检查,重帐检查,重发检查等)                 入口参数:无		出口参数:无*/                            		virtual void SendPrvCheckGrant()  = 0; /*        功能    :往帐保存数据 修改原业务的状态          入口参数:		出口参数:sPreDate:委托日期 sSendNet:发起节点号 sMsgSno:业务序号*/         virtual void SaveSendData(char *sPreDate, char *sSendNet, int &nMsgSno)  ;/*        功能    :来帐检查(重帐检查等)           入口参数:无		出口参数:无*/                            		virtual void RecvPrvCheckGrant()  = 0; 	/*        功能    :来帐保存数据          入口参数:无		出口参数:无*/                          virtual void SaveRecvData()  ;		                virtual void ProcSendBusiness(char *sMsgHeader, char *sQueueNo);         virtual void ProcRecvBusiness();          // 对于321,323,327在MBFE端可发应答的情况特别处理        virtual BOOL SpecialProcSend(){return TRUE;}        // 对于920,911等不需要转发到行内的报文特别处理。        virtual BOOL SpecialProcRecv(){return TRUE;}/*        功能    :修改原业务的状态           入口参数: 		出口参数:无*/     		void MdyRecordState(strRecordState & strState) throw (CommException);                void BuilderHeader(char *strMsgHeader);             void BuilderMBHeader(char *strMsgHeader);     /*        功能    :判断业务是否要转发        入口参数:无		出口参数:无		返回    :true: false: */         		BOOL TestRouteFlag();        /*        功能    :判断业务是来帐还是往帐        入口参数:无		出口参数:无		返回    :true:往帐 false:来帐*/  		BOOL TestTransWay();		private:                void SendCmtHdle();		void RecvCmtHdle();		void ReadBigData();			    void SendPubCheckGrant(); 		void RecvPubCheckGrant();   	                      void SendRspMb(char *sAppCode);        void Build912BusinessData(char *sAppCode, char *strBusinessData);		void SendMsgToMb();		void CreateCMT();				void SendCMT();        protected:	    SybServer          *m_clsSybServer;                  // 数据库对象	    QueueData   	   *m_strQueueData;                  // 数据队列结构    	BepsInit		   *m_strBepsInit;		             // 系统配置参数      	SysCtlPar   	   *m_strSysCtlPar;                  // 系统控制参数    	BepsPub  		m_clsMbfePub;                    // 数据库执行类     	CheckGrant          m_strCheckGrant;	    int                 m_nModuleNo;                     // 模块编号	    char                m_sModuleNo[21];                 // 模块名称		MbfeToMbHeader		m_clsMbfeMsgHeader;				//MBFE发来的报文头		CMTMsgHeader        m_strMsgHeader;         		 // 报文头		BigData             m_strBigData;                    // 大文本数据		SybCommand          m_clsSybCommand;                 // 		CString				m_clsMBMsgHeader;				 //行内报文头		CString				m_clsMBMsgBody;						//行内报文体		MsgHeader		    m_strMBMsgHeader;				//MB报文头结构		CMTMsg				m_clsCMTMsg;					//CMTMSG类		char m_sProcState[3];			//处理状态 		};	#endif

⌨️ 快捷键说明

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