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

📄 hfcjyykvar.h

📁 170话费催交系统
💻 H
字号:
#if !defined(__HFCJYYKVAR_H__)
#define __HFCJYYKVAR_H__

MAIN_CJDATA maincjdata[MAINDATA_COUNTS];	//主缓存区
int readmain;								//读指针(0-199)
//int rmjishu;								//读指针基数
int writemain;								//写指针(0-199)
//int wmjishu;								//写指针基数
int maincounts;								//未读的记录数(0-200)

APPEND_CJDATA appendcjdata[APPENDDATA_COUNTS];	//辅助缓存区
int readappend;								//读指针(0-29)
//int rajishu;								//读指针基数
int writeappend;							//写指针(0-29)
//int wajishu;								//写指针基数
int appendcounts;							//未读的记录数(0-30)

TCB	 datarecord;				//写数据库线程通信块
TCB  datacon;				//数据库连接控制块数组

long cjchdev[MAXDEVS*2];		//催缴通道指针队列
int cjdevcounts;				//当前用于催缴的通道数目

OLD_SIGNLIGHT oldsignlight[MAXDEVS];	//信号灯原工作模式
SEMAPHORE  signlight[MAXDEVS];			//信号灯 

//此处尚需定义消息传递变量

CJ_ARG  cjarg;            //催缴程序参数

TELE_COUNT telecount;     //催缴成功次数,总次数

CH_INFO dxinfo[MAXDEVS];		//语音卡通道数组
TELE_INFO teleinfo[MAXDEVS];	//各通道使用的催缴数据数组
SZ_FILE  szfile[MAXFILES];		//语音文件数组

NUMBER_FILEWZ numberfilewz[]={          //0-9在语音文件中位置的数组
	{"0",ZERO_OFFSET,ZERO_LENGTH},
	{"1",ONE_OFFSET,ONE_LENGTH},
	{"2",TWO_OFFSET,TWO_LENGTH},
	{"3",THREE_OFFSET,THREE_LENGTH},
	{"4",FOUR_OFFSET,FOUR_LENGTH},
	{"5",FIVE_OFFSET,FIVE_LENGTH},
	{"6",SIX_OFFSET,SIX_LENGTH},
	{"7",SEVEN_OFFSET,SEVEN_LENGTH},
	{"8",EIGHT_OFFSET,EIGHT_LENGTH},
	{"9",NINE_OFFSET,NINE_LENGTH}
};

char* szfilename[]={    //语音文件名
	{"hfcjbase.vox"},
	{"hfcj1.vox"},
	{"hfcj2.vox"},
	{"hfcj3.vox"}
};

char*	chdevztmx[]={	
	{"空闲"},
	{"摘机"},
	{"信号交互"},
	{"振铃"},
	{"用户接听,播放催缴语音"},
	{"记录催缴日志"},
	{"用户挂机"},
	{"记录日志成功"},
	{"记录日志失败"},
	{"线路忙"},
	{"无此号码"}
};

_CAP capDflt = {100, 300, 10, 3000, DX_PVDENABLE};       // PerfectCall params

DV_TPT tptplay[] = {
	{IO_CONT, DX_MAXTIME, 30000, TF_10MS},
	{IO_EOT, DX_LCOFF, 1, TF_LCOFF}
};

Tone_T DefaultTones[MAX_TONES] = {
   {{": Local dial tone"}, {TID_DIAL_LCL},  {400,125},  {400,125}, {0,0},     {0,0}, 0},
   {{": Int'l dial tone"}, {TID_DIAL_INTL}, {402,125},  {402,125}, {0,0},     {0,0}, 0},
   {{": Extra dial tone"}, {TID_DIAL_XTRA}, {401,125},  {401,125}, {0,0},     {0,0}, 0},
   {{": Busy tone 1"},     {TID_BUSY1},     {500,200},  {0,0},     {55,40},   {55,40}, 4},
   {{": Busy tone 2"},     {TID_BUSY2},     {500,200},  {500,200}, {55,40},   {55,40}, 4},
   {{": Ringback tone 1"}, {TID_RNGBK1},    {450,150},  {0,0},     {130,105}, {580,415}, 0},
   {{": Ringback tone 2"}, {TID_RNGBK2},    {450,150},  {450,150}, {130,105}, {580,415}, 0},
   {{": Faxtone 1"},       {TID_FAX1},      {2150,150}, {0,0},     {25,-25},  {0,0}, 0},
   {{": Faxtone 2"},       {TID_FAX2},      {1100, 50}, {0,0},     {25,-25},  {0,0}, 0}
};

DX_XPB xpbVox = {FILE_FORMAT_VOX, DATA_FORMAT_DIALOGIC_ADPCM, DRT_8KHZ, 4};

//月份的英文字符与数字的对照
char* tbMon[12][2]={
		{"Jan","01"},
		{"Feb","02"},
		{"Mar","03"},
		{"Apr","04"},
		{"May","05"},
		{"Jun","06"},
		{"Jul","07"},
		{"Aug","08"},
		{"Sep","09"},
		{"Oct","10"},
		{"Nov","11"},
		{"Dec","12"}
};

char qssj_time[32];
char dqsj_time[32];

CMydatabase pDatabase;				//数据库类定义
//CMydatabase* lpDatabase;			//指向数据库的指针
//CMutex* lpMutex;					//指向mutex类的指针 
CMydatabase pWritebase;				//写数据库用到的数据源
CEvent pRecordData;					//写数据库事件
CEvent JiaoYan;						//校验数据库连接的线程工作事件
//CRecordset pCuijiaoSet(&pDatabase);	//t_data_cuijiao催缴表
CMyrecordset pCuijiaoSet;	//t_data_cuijiao催缴表
CRecordset pDakehuSet(&pDatabase);	//t_data_dakehu大客户表
CRecordset pMiancuiSet(&pDatabase);	//t_data_miancui免催表
CRecordset pHetongSet(&pDatabase);	//t_data_hetong用户合同号对照表
CRecordset pCjadminSet(&pDatabase);	//t_data_cjadmin催缴设置表
CRecordset pCjtimeSet(&pDatabase);	//t_data_cjtime催缴时间设置表
CRecordset pSysappSet(&pDatabase);	//t_sys_app 催缴app_id设置表
//CSingleLock sLock(&pDatabase.m_myMutex);	//同步锁类
//CSingleLock sLock(&m_otherSemaphore);
CSingleLock sLock(&pDatabase.m_mySemaphore);	//同步锁类
CSingleLock sWritelock(&pWritebase.m_mySemaphore);	//写数据库的同步锁类

char hth[]="HTH";
char qianfei[]="QIANFEI";
char qfmonth[]="QFMONTH";
char flag[]="FLAG";
char cjcount[]="CJCOUNT";
char cjmonth[]="CJMONTH";
char cjyinflag[]="CJYIN_FLAG";
char num[]="NUM";
char tele[]="TELE";
//cjadmin参数
char cb_count[]="CB_COUNT";
char max_count[]="MAX_COUNT";
char maxcount_flag[]="MAXCOUNT_FLAG";
char max_ringtime[]="MAX_RINGTIME";
char bohao_time[]="BOHAO_TIME";
//cjtime参数
char cjtimeflag[]="CJTIMEFLAG";
char start_month[]="START_MONTH";
char end_month[]="END_MONTH";
char start_day[]="START_DAY";
char end_day[]="END_DAY";
char start_hour[]="START_HOUR";
char end_hour[]="END_HOUR";
char start_minute[]="START_MINUTE";
char end_minute[]="END_MINUTE";
//信号灯参数
char port[]="PORT";
char owner[]="OWNER";
char used[]="USED";

char cuijiaoSQL[100]="select Hth, Qianfei, Qfmonth, Flag, Cjcount, Cjmonth, Cjyin_Flag from t_data_cuijiao";
//char dakehuSQL[100]="select num from t_data_dakehu where hth=";
//char hetongSQL[100]="select tele from t_data_hetong where hetong=";
//char miancuiSQL[100]="select hth from t_data_miancui where num=";
char cjadminSQL[100]="Select cb_count, max_count, maxcount_flag, max_ringtime, bohao_time from t_data_cjadmin";
char cjsysappSQL[100]="select port, owner, used from t_sys_ports";

int stopdata;							//各数据库线程终止标志
long lcuijiaocurrent;					//催缴记录的当前指针
int cjdata_flag;						//是否有催缴数据(CJDATA_NO表示无,CJDATA_YES表示有)
int dba_connect;						//数据库连接状态(DBA_FALSE表示异常,DBA_TRUE表示正常)
int dbawrite_connect;					//写数据库连接状态
int datajy_counts;						//校验数据库连接的计数器
int init_count[MAXDEVS];				//初始化屏显信息的计数器

//HINSTANCE lpxhddll;						//指向DLL的指针
//GETSHOWWINPROC* pGetshowwin;			//返回显示程序(即主控程序)的窗口句柄
//SETXHDPROC* pSetxhd;					//给信号灯赋值
//READXHDPROC* pReadxhd;					//读取信号灯的值

static char appid[]="app_id";
static char chnvalue[]="chn_value";
static char txt[]="txt";

char cjappid[]="101";		//催缴程序识别号
static char Ani[]="170";			//telephone number for this D/300SC-E1 board
int ani_len;			//=strlen(Ani)

int zdcj_action=0;
int first_action=0;

TN_GEN  tngen[15];
DV_TPT  r2_tpt[6];

//R2MF forward signal tones pairs
int fsig[15][2]={
	{1380,1500},{1380,1620},{1500,1620},{1380,1740},{1500,1740},
	{1620,1740},{1380,1860},{1500,1860},{1620,1860},{1740,1860},
	{1380,1980},{1500,1980},{1620,1980},{1740,1980},{1860,1980}
};
//R2MF backward signal tones pairs
int bsig[15][2]={
	{1140,1020},{1140, 900},{1020, 900},{1140, 780},{1020, 780},
	{ 900, 780},{1140, 660},{1020, 660},{ 900, 660},{ 780, 660},
	{1140, 540},{1020, 540},{ 900, 540},{ 780, 540},{ 660, 540}
}; //only the first 6 are used for China No.1 Signaling

HWND myhwnd;

char ls_htharg[200];
char ls_fjhth[500];
char gs_htharg[100][10];
int hthcounts;
int pauseflag;		//暂停读数据的标志(1暂停,0继续)
int minchannel;		//最小通道号

#endif

⌨️ 快捷键说明

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