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

📄 point.cpp

📁 移动梦网平台主程序
💻 CPP
📖 第 1 页 / 共 3 页
字号:
   					}   					else   					{   						sprintf(msg,"用户%s未定制由南京宁网公司提供的业务.感谢您使用我们的短信服务!咨询电话%s",content,service_phone);   					}   				}   				else   				{   					strcat(msg,buf);   				}				sprintf(sp_id_extern,"012%d",getrand(999));				SendUser(msisdn,msg,dcode,fee,1);	//点播下发代码0000				return 0; 			}	    	}	}		trim(content,' ');	//查找这个上行代码的名称、发送频次、点播代码、二次确认下发代码	sprintf(sql,"SELECT NAME,SEND_NUM,PCODE,PARTNER,BITLONG,FEE FROM COD_SERVICE WHERE TRIM(UCODE)='%s'",checksql(code));	retval = QuerySQL(sql,&myconn,&res);	if(retval != 0)	{		writelog(SELF_TYPE,"查询COD_SERVICE失败");		return 0;	}	if(res == NULL)	{		return 0;	}	if(row = mysql_fetch_row(res))	{		strcpy(name,row[0]);		strcpy(send_num,row[1]);		strcpy(pcode,row[2]);			//点播扣费代码		strcpy(partner,row[3]);		bitlong=atoi(row[4]);		fee_p=atof(row[5]);	}	mysql_free_result(res);				switch(content[0])	{	//取消				case 'q':	case 'Q':	case 'o':	case 'O':		type = 0;		break;	//点播	case '\0':		if(code[0] == '+')		{			strcpy(cd,code+1);		}		else		{			strcpy(cd,code);		}		if(strcmp(feetype,"03")==0)		{			strcpy(dcode,pcode);			//包月业务,点播按条扣费			fee=fee_p;		}		sprintf(sql,"SELECT CONTENT FROM INFO_POINT INFO WHERE TRIM(SV_CODE)='%s'",checksql(cd));		retval = QuerySQL(sql,&myconn,&res);		if(retval != 0)		{			writelog(SELF_TYPE,"查询INFO_POINT失败");			return 0;		}		if(res == NULL)		{			return 0;		}		if(row = mysql_fetch_row(res))		{			strcpy(buf,row[0]);		}		else		{			strcpy(buf,"");		}		mysql_free_result(res);		if(code[0] == '+')		{			if(strcmp(buf,"")==0)			{				sprintf(msg,"该业务已停止服务,感谢您的支持,咨询电话%s",service_phone);				sprintf(sp_id_extern,"");				SendUser(msisdn,msg,dcode,fee,0);	//免费				return 0;			}			else			{				sprintf(msg,"%s",buf);				sprintf(sp_id_extern,"");				SendUser(msisdn,msg,dcode,fee,1);	//点播下发代码				return 0;			}		}		else		{			if(strcmp(buf,"")==0)			{				sprintf(msg,"该业务已停止服务,感谢您的支持,咨询电话%s",service_phone);				sprintf(sp_id_extern,"");				SendUser(msisdn,msg,dcode,fee,1);	//免费				return 0;			}			else			{				sprintf(msg,"%s",buf);				sprintf(sp_id_extern,"");				SendUser(msisdn,msg,dcode,fee,1);	//点播下发代码				return 0;			}		}		return 0;	//查询历史信息	case '0':	case '1':	case '2':	case '3':	case '4':	case '5':	case '6':	case '7':	case '8':	case '9':		num = atoi(content);		if(code[0] == '+')		{			strcpy(cd,code+1);		}		else		{			strcpy(cd,code);		}		if(strcmp(feetype,"03")==0)		{			strcpy(dcode,pcode);			//包月业务,点播按条扣费		}		sprintf(sql,"SELECT CONTENT FROM INFO_HIS_POINT WHERE TRIM(SV_CODE)='%s' AND NUM=%d",checksql(cd),num);		retval = QuerySQL(sql,&myconn,&res);		if(retval != 0)		{			writelog(SELF_TYPE,"查询INFO_HIS_POINT失败");			return 0;		}		if(res == NULL)		{			return 0;		}		if(row = mysql_fetch_row(res))		{			strcpy(buf,row[0]);			mysql_free_result(res);			if(code[0] == '+')			{				sprintf(msg,"%s",buf);				sprintf(sp_id_extern,"");				SendUser(msisdn,msg,dcode,fee,1);	//点播下发代码				return 0;			}			else			{				sprintf(msg,"%s 订制方法为%s_D",buf,code);				sprintf(sp_id_extern,"");				SendUser(msisdn,msg,dcode,fee,1);	//点播下发代码				return 0;			}		}		else		{			mysql_free_result(res);			sprintf(msg,"没有%s期的信息,请查实后再发,咨询电话%s",content,service_phone);			sprintf(sp_id_extern,"");			SendUser(msisdn,msg,dcode,fee,1);	//点播下发代码			return 0;		}		return 0;	//申请	default:		type = 1;	}	sprintf(sql,"SELECT FLAG,FREE_FLAG FROM USER_POINT WHERE MSISDN='%s' AND TRIM(SV_CODE)='%s'",checksql(msisdn),checksql(code));	retval = QuerySQL(sql,&myconn,&res);	if(retval != 0)	{		writelog(SELF_TYPE,"查询USER_POINT失败");		return 0;	}	if(res == NULL)	{		return 0;	}	if(row = mysql_fetch_row(res))	//原来有用户资料	{		strcpy(flag,row[0]);		strcpy(free_flag,row[1]);		mysql_free_result(res);		if((flag[0] == '0'||flag[0] == '9')&& type == 0)		{			strcpy(msg,"您还未申请,所以不必取消.");			sprintf(sp_id_extern,"");			SendUser(msisdn,msg,dcode,fee,0);	//错误			return 0;		}		else if(flag[0] == '1' && type == 1)		{			sprintf(msg,"该业务已申请,不必再申请,感谢您使用我们的服务");			sprintf(sp_id_extern,"");			SendUser(msisdn,msg,dcode,fee,0);	//错误			return 0;		}		else if(type == 0)	//取消		{			sprintf(sql,"UPDATE USER_POINT SET FLAG='0',CANCEL_DATE='%s'			             WHERE MSISDN='%s' AND SV_CODE='%s'",			        getnowdate(day),checksql(msisdn),checksql(code));			if(DoSQL(sql,&myconn) != 0)			{				writelog(SELF_TYPE,"取消订制出错!");				return 0;			}			sprintf(msg,"取消订制成功,感谢您使用我们的服务.从现在起,本栏目不再收取任何费用.咨询电话%s",service_phone);			sprintf(sp_id_extern,"");			SendUser(msisdn,msg,dcode,fee,9);	//取消			return 0;		}		else	//订制		{			if(strcmp(feetype,"03")==0)			{				if(bitlong==0)		//不要二次确认				{					sprintf(sql,"UPDATE USER_POINT SET FLAG='1',FREE_FLAG='0',REG_DATE='%s',WANT_NUM=%d,MONTH_FLAG='0',DEMO=''						 WHERE MSISDN='%s' AND SV_CODE='%s'",			        		getnowdate(day),want_num,checksql(msisdn),checksql(code));			        	if(msisdn[2]>'3')       //修改于2004.08.30			        	{			        		sprintf(msg,"申请订制成功,%s资费%.2f元/月,发送频次:%s.退定:发送0000.感谢您使用我们的服务.咨询%s",name,fee,send_num,service_phone);			        	}			        	else			        	{			        		sprintf(msg,"申请订制成功,%s,发送频次:%s.感谢您将此业务推荐给您的朋友.咨询%s",name,send_num,service_phone);					}				}				else if(flag[0] != '9')				//二次确认				{					sprintf(sql,"UPDATE USER_POINT SET FLAG='9',REG_DATE='%s',WANT_NUM=%d,MONTH_FLAG='0'			             		WHERE MSISDN='%s' AND SV_CODE='%s'",			        		getnowdate(day),want_num,checksql(msisdn),checksql(code));			        	sprintf(msg,"您将开通由南京宁网公司提供的%s业务,信息费%.2f元/月,发送频次%s,确认请回复%s",name,fee,send_num,partner);			        	flag_state=1;				}				else				{					sprintf(sql,"UPDATE USER_POINT SET FLAG='1',FREE_FLAG='0',REG_DATE='%s',WANT_NUM=%d,MONTH_FLAG='0',DEMO=''			             		 WHERE MSISDN='%s' AND SV_CODE='%s'",			        		getnowdate(day),want_num,checksql(msisdn),checksql(code));			        	if(msisdn[2]>'3')       //修改于2004.08.30			        	{			        		sprintf(msg,"申请订制成功,%s资费%.2f元/月,发送频次:%s.退定:发送0000.感谢您使用我们的服务.咨询%s",name,fee,send_num,service_phone);			        	}			        	else			        	{			        		sprintf(msg,"申请订制成功,%s,发送频次:%s.感谢您将此业务推荐给您的朋友.咨询%s",name,send_num,service_phone);					}				}			}			else			{				sprintf(sql,"UPDATE USER_POINT SET FLAG='1',FREE_FLAG='0',REG_DATE='%s',WANT_NUM=%d,MONTH_FLAG='0',DEMO='' WHERE MSISDN='%s' AND SV_CODE='%s'",			        	getnowdate(day),want_num,checksql(msisdn),checksql(code));				sprintf(msg,"申请订制成功,%s资费%.2f元/条,发送频次:%s.退定:发送0000.感谢您使用我们的服务.咨询电话%s",name,fee,send_num,service_phone);				sprintf(sp_id_extern,"");			}			if(DoSQL(sql,&myconn) != 0)			{				writelog(SELF_TYPE,"更新USER_POINT FLAG='9'出错!");				return 0;			}			if(flag_state==0)			SendUser(msisdn,msg,dcode,fee,8);	//订购			else			SendUser(msisdn,msg,dcode,fee,2);	//			return 0;		}	}	//原来没有用户资料	else	{		mysql_free_result(res);		if(type == 0)		{			sprintf(msg,"您未申请该业务,无法取消.请发送0查询更多业务,咨询%s",service_phone);			sprintf(sp_id_extern,"");			SendUser(msisdn,msg,dcode,fee,1);	//点播			return 0;		}		else		{			if(strcmp(feetype,"03")==0)			{				if(bitlong==0)		//不要二次确认				{					sprintf(sql,"INSERT INTO USER_POINT(MSISDN,SV_CODE,WANT_NUM,FLAG,FREE_FLAG,REG_DATE) 					VALUES('%s','%s',%d,'1','0','%s')",						msisdn,code,want_num,getnowdate(day));					if(msisdn[2]>'3')   //修改于2004.08.30			        	{			        		sprintf(msg,"申请订制成功,%s资费%.2f元/月,发送频次:%s.退定:发送0000.感谢您使用我们的服务.咨询%s",name,fee,send_num,service_phone);			        	}			        	else			        	{			        		sprintf(msg,"申请订制成功,%s,发送频次:%s.感谢您将此业务推荐给您的朋友.咨询%s",name,send_num,service_phone);					}				}				else			//二次确认				{					sprintf(sql,"INSERT INTO USER_POINT(MSISDN,SV_CODE,WANT_NUM,FLAG,FREE_FLAG,REG_DATE) 						VALUES('%s','%s',%d,'9','0','%s')",msisdn,code,want_num,getnowdate(day));					sprintf(msg,"您将开通由南京宁网公司提供的%s业务,信息费%.2f元/月,发送频次%s,确认请回复%s",name,fee,send_num,partner);					flag_state=1;				}			}			else			{				sprintf(sql,"INSERT INTO USER_POINT(MSISDN,SV_CODE,WANT_NUM,FLAG,FREE_FLAG,REG_DATE) 					VALUES('%s','%s',%d,'1','0','%s')",					msisdn,code,want_num,getnowdate(day));				sprintf(msg,"申请订制成功,%s资费%.2f元/条,发送频次:%s.退定:发送0000.感谢您使用我们的服务.咨询电话%s",name,fee,send_num,service_phone);				sprintf(sp_id_extern,"");			}         			if(DoSQL(sql,&myconn) != 0)			{				writelog(SELF_TYPE,"插入USER_POINT FLAG=9出错!");				return 0;			}			if(flag_state==0)			SendUser(msisdn,msg,dcode,fee,8);	//订购			else			SendUser(msisdn,msg,dcode,fee,2);	//			return 0;		}	}	return 0;}static int ScanMsgSession(){	char sql[1000];	MYSQL_ROW row;	MYSQL_RES *res = NULL,*res1=NULL;	int retval,i,j,k,mode,table_num,count_ph,count;	float fee,fee_mon;	char id[11],icpid[3],code[11],msisdn[22],dcode[11],ocode[11],feetype[3];	char *table_name[30];	char msg[500],msgsend[200],day[20];	char table_name_buf[50],code_buf[11],code_name[50],mode_buf[50],msisdn_buf[22];	char buf[10],code_name_buf[50],buf_num[100];	char tmpbuf[10];		j=0;mode=0;	memset(sql,0,sizeof(sql));		sprintf(sql,	        "SELECT ID,ICPID,UPPER(SERVICECODE),OTHERCODE,MSGCONTENT,SRCTERMID,DCODE,FEE,FEETYPE,FEE_MON,LINKID	         FROM COM_RECV_SESSION RECV,COD_SERVICE_SESSION COD	         WHERE RECV.FLAG='0' AND RECV.SERVICECODE=COD.UCODE AND COD.KIND='DZ' LIMIT 200");	retval = QuerySQL(sql,&myconn,&res);	if(retval != 0)	{		writelog(SELF_TYPE,"查询COM_RECV_SESSION失败");		return 0;	}	if(res == NULL)	{		return 0;	}	while( row = mysql_fetch_row(res))	{		strcpy(id,row[0]);		strcpy(icpid,row[1]);		strcpy(code,row[2]);		strcpy(ocode,row[3]);		strcpy(msg,row[4]);		strcpy(msisdn,row[5]);		strcpy(dcode,row[6]);		fee = atof(row[7]);		strcpy(feetype,row[8]);		fee_mon = atof(row[9]);		strcpy(linkid,row[10]);				sprintf(sql,"UPDATE COM_RECV_SESSION SET FLAG=1,DEAL_DATE='%s' WHERE ID=%s",getnowdate(day),id);		if(DoSQL(sql,&myconn) != 0)		{			writelog(SELF_TYPE,"更新COM_RECV_SESSION表出错!");			return 0;		}		upper(trim(msg,' '));		count_ph=have_mobile(msisdn);			//查找是否有权代取消		if(count_ph==0||strlen(msg)<5)		{			if(strncmp(msg,"QX",2) == 0)			{				if(strcmp(msg,"QX0")==0)				{	    				table_num=have_usertable(table_name);		//取得取消的所有表的表名及个数	    				for (i=0;i<table_num;i++)	    				{	    					sprintf(sql,"SELECT COD.NAME,DCODE,FEETYPE,FEE_MON FROM %s POINT,COD_SERVICE COD\							WHERE POINT.FLAG='1' AND POINT.SV_CODE=COD.UCODE AND POINT.MSISDN='%s'",*(table_name+i),checksql(msisdn));						retval = QuerySQL(sql,&myconn,&res);	   					if(retval != 0)	   					{	   						writelog(SELF_TYPE,"取消业务出错00000!");	   						return 0;		   				}	   					if(res == NULL)	   					{	   						if(msisdn[2]>'3')       //修改于2004.08.30

⌨️ 快捷键说明

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