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

📄 acc_file.h

📁 国际标准协议的
💻 H
字号:
#ifndef _TS_FILE_H
#define	_TS_FILE_H
/* 计费系统头文件 */
#include "account.h"
#include <netinet/in.h>
/********************************交易数据文件*************************************/
#define L_MAXPASS 80
/* 用户基本信息表 */
/* 记录每个用户的基本信息和计费信息 */
typedef struct _user
{
  BYTE	Uname[L_ACCID];		/* 用户名 */		
  BYTE	Passwd[L_MAXPASS];	/* 密码 */
  INT32 Uid;			/* 用户标识码 */ 
  INT32 Gid;			/* 用户组标识码 */
  BYTE  Ulevel;			/* 用户级别: 1-VIP, 2-SP, 3-HC, 4-normal */
  INT32 Cid;   BYTE  Status;			/* 帐号状态 */
  BYTE  Type;			/* 帐号类型 */
  BYTE  CostType;		/* 交费方式 */
  BYTE  Reserve[L_RESERVE];	/* 保留 */
  INT32 PeriodTm;		/* In可使用时段,0~23bit对应24小时置1为允许
  					使用 */
  BYTE	Wday;
	 	  		/* In 0~6bit对应一周各天,置1为允许使用 */
  INT32 AccvalidTm;		/* 帐号起始有效时间 */
  INT32 AccexpTm;		/* 帐号失效时间 */
  INT32 Last_time;               /* 最后交易时间 */
  INT32 CashAmt;		/* 现金余额 */
  INT32 PointAmt;		/* 积分余额 */
  INT32 Credit;			/* 信用额 */
  INT32 Auth;			/* 已签发授权额 */
  INT32 PerLimit;		/* 每次最大消费额 */
  INT32 DayLimit;		/* 每天最大消费额 */
  INT32 Amount;			/* 当天累计消费额 */
  INT32 ListPtr;         /* 交易明细表头指针 没有为-1*/
  INT32 UertPtr;          /* 用户综合信息表项指针 没有为-1 */
}stru_user;

/* 用户综合信息表 */
/* */
typedef struct _uext
{
  INT32 Uid;			/* 用户标识码 */
  BYTE Name[L_NAME];		/* 用户名 */	
  BYTE DocId[L_DOCID];		/* 证件号码 */
  BYTE BirthDay[L_BIRTH];	/* 生日YYYYMMDD */
  BYTE Sex[L_SEX];		/* 性别 */
  BYTE Email[L_EMAIL];		/* 电子邮件地址 */
  BYTE Addr[L_ADDR];		/* 通信地址 */
  BYTE Phone[L_PHONE];		/* 电话 */
  BYTE OriBank[L_BANK];		/* 开户银行 */
  BYTE Account[L_ACCOUNT];	/* 银行帐号 */
  BYTE Question[L_QUESTION];	/* 取回密码要提问的问题 */
  BYTE Answer[L_QUESTION];	/* 问题预设答案 */
  BYTE Craft[L_CRAFT];		/* 行业 */
  BYTE IntQuestion[L_INTQUESTION];	/* 感兴趣的话题 */
  BYTE Note[L_NOTE];		/* in 说明 */
}stru_uext;

/* 交易流水表 */
/* 每一笔成功的交易生成一条记录 */
typedef struct _tlist
{
  INT32	Tsn;		/* 交易流水号 */
  INT32 Uid;		/* 交易发生的用户帐号 */
  INT32 offset;		/* 上一交易记录的偏移量 */
  INT32 Date;		/* 交易发生时间 */
  INT32	CashAmt;	/* 现金交易量 */
  INT32	PointAmt;	/* 积分交易量 */
  INT32 OperId;		/* 交易操作员名 */
  INT16 Tcode;		/* 交易类型编码 */
  BYTE	Note[L_NOTE];	/* 说明 */	
}stru_tlist;

/* 用户组权限表 */
/* 记录各用户组的操作权限 */
typedef struct _group
{
  INT32 Gid;			/* 用户组编码 */
  INT32 GpMask;		/* 组掩码,在进行权限判断时,仅比较掩码为1
 					的位,这样可同时对多个组设置权限 */
  INT32 Ip;		/* 信任主机IP */
  INT32 IpMask;		/* IP掩码 */
  INT32 PeriodTm;	/* 可使用时段,0~23bit对应24小时置1为允许使用 */
  BYTE  Wday;		/* 0~6bit对应一周各天,置1为允许使用 */
  BYTE  Reserve[L_RESERVE];	/* 保留 */
  INT32 SmgMask;		/* 系统管理功能掩码,每个bit对应一个功能号 */
  INT32 UmgMask;		/* 对自己帐号使用用户管理功能掩码 */
  INT32 UquMask;              /* 对自己帐号使用查询功能掩码 */						
  INT32 OquMask;		/* 对其它帐号使用查询功能掩码 */
  INT32 MgaGid;		/* 可管理的GID */
  INT32 GidMask;		/* GID掩码 */
  INT32 MumgMask;		/* 对被管理的组使用用户管理功能掩码 */
  INT32 MquMask;		/* 对被管理的组使用查询功能掩码 */
  INT32 MtradMask;		/* 对被管理的组使用交易功能掩码 */
  BYTE  Note[L_NOTE];		/* 说明 */
}stru_group;

/* 消费类型表*/
/* */
typedef struct _ctype
{
  INT16 CsuType;		/* 消费类型编码 */
  BYTE  Ecredit;		/* 允许使用信用额标志,1-允许 */
  BYTE  Status;		        /* 状态,0-正常,1-锁定,2-注销 */
  INT32 PerCash;		/* 每单位消费扣减现金额,0为不允许使用现金消费 */
  INT32 PerPoint;  		/* 每单位消费扣减积分额,0为不允许使用积分消费 */
  float VipDis;			/* VIP用户优惠率*/
  float SpDis;			/* SP用户优惠率*/		
  float HcDis;			/* HC用户优惠率*/
  float NormalDis;		/* Normal用户优惠率*/
  INT32 TypeMask;		/* 可使用的用户类型掩码*/
  BYTE  Note[L_NOTE];		/* 说明 */	
}stru_ctype;

/* 系统事务记录表 */
/* 记录所有系统活动的关键资料 */
typedef struct _log
{
  INT32 Optime;        		/* 操作时间 年/月/日 时:分:秒 */
  BYTE	User[L_ACCID];		/* 用户名 */
  BYTE	Operator[L_ACCID];	/* 操作员的用户名 */
  struct in_addr sin_addr;	/* 请求本服务器操作的客户机IP地址 */
  INT16 Tcode;			/* 操作类型 */
  BYTE 	Note[256];		/* 说明 */
}TLOG;

/*****************************code:常量定义*********************************/
#define DPERMS 0755             /* 创建目录的权限 */
#define PERMS 0644		/* 操作二进制文件的权限 */
#define NOFOUND 0		/* 未找到该记录 */
#define FOUND   1		/* 找到该记录 */
#define	SUCCESS	0		/* 操作成功 */
#define NODEINSERT 1            /* 已插入索引结点标志 */
#define NOTINSERT  0            /*  没有插入索引结点标志 */
#define MAXRECNO 30000         /* 每次读的最大记录数 */
/* append by hgt */
#define PWDMODE  "./"           /* 加密模式 */
/* end */
/********************************交易参数************************************/
#define INITAMOUNT  0		    /* 开户时最小余额 */
#define INITCREDIT  0		    /* 最小信用额 */
#define LIMIT      0x7fffffff	/* 每次消费最高额 */
#define DAY_LIMIT  0x7fffffff   /* 每天消费最高额 */

/******************************文件路径长度**********************************/
#define	TS_MaxPathLen	80

/*******************************文件名定义***********************************/
#define	TS_User	        "user.dat"		/* 用户基本信息表 */
#define TS_Uext		"uext.dat"		/* 用户综合信息表 */
#define TS_Group        "group.dat"     	/* 用户组权限表 */
#define TS_Tlist	"tlist.dat"		/* 交易流水表 */
#define TS_Ctype	"ctype.dat"		/* 消费类型表 */
#define	TS_log		"log.dat"		/* 系统事务表 */
/* 定义结束 */
#endif                                                                                                                                                                                                                                                                                                           ct.PointAmt),(pkg+i),L_INT32);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       #include <stdio.h>

⌨️ 快捷键说明

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