📄 publ.h
字号:
#define TEXT_LEN 256
#define TYPE_LEN 20
/***** POS命令中的交易码 *****/
#define POS_SALE 'S' /* 消费 */
#define POS_VOID 'V' /* 冲正 */
#define POS_INQ 'Q' /* 查询余额 */
#define POS_INB 'B' /* 查止付 */
#define POS_DIA 'D' /* 预拨号 */
#define POS_REV 'R' /* 重发 */
#define REV_FILE ".\\reversal.txt"
#define PFACE_FILE ".\\pface"
#define LOG_FILE ".\\log"
#define WAIT 2
#define RESPONSE_TIMEOUT 80//59-4
/* ptoh.stat define */
#define STAT_SND '1'
#define STAT_OK '2'
#define STAT_ERR '3'
#define NOCARD -1
#define NETERR -2
#define PSWERR -3
#define SYSERR -4
#define SYBUSI -5
#define BUSIOK 0
#define TRUE 1
#define FALSE 0
#define _MAXTHK 150
#define _MAXXYK 20
/* 前台到后台的传递文件内容 */
typedef struct
{
char TrCode; /* 交易码: 'S'消费, 'V'冲正, 'Q'查询, 'B'查止付, 'D'预拨号 */
char OldCode; /* 原交易代码 */
char PosId[8+1]; /* POS号 */
char OperId[6+1]; /* 操作员号 */
char TrDate[8+1]; /* 交易日期 */
char TrTime[8+1]; /* 交易时间 */
char Amount[12+1]; /* 金额 */
char Track2[37+1]; /* 第二磁道 */
char Track3[104+1]; /* 第三磁道 */
char Pin[16+1]; /* 持卡人密码 */
char AuthNo[6+1]; /* 授权号 */
char Mac[16+1]; /* MAC值 */
char UnitCardFlag; /* 联名卡标志; '0'不是, '1'是 */
char Status;
char Flag[6+1];
} PTOH;
/* 后台到前台的传递文件内容 */
typedef struct
{
char RejCode[2+1]; /* 返回码 */
char ErrDisp[40+1]; /* 返回码含义 */
char PosSer[6+1]; /* POS流水号 */
char VposSer[6+1]; /* 冲正流水号 */
char HostSer[12+1]; /* Gold Ser */
char CardNo[20+1]; /* 卡号 */
char Expiry[4+1]; /* 有效期 */
char Amount[12+1]; /* 金额 */
char AuthNo[6+1]; /* 授权号 */
char BankId; /* 银行号 */
char BankName[20+1]; /* 银行名 */
char CardName[20+1]; /* 卡名 */
char PrtTimes; /* 打印次数 */
char AwardClass; /* 中奖等级; '0'未中奖 */
char Note1[20+1]; /*暂存放:余额 */
char Status;
char Flag[6+1];
} HTOP;
// --- 结构:优惠卡 ---
typedef struct {
char kh[11];
char mm[7]; // 卡号,密码
char xm[12];
double yhl,ljss,ljys; // 优惠率,累计实收,累计应收
short update; // 提交状态,-1--提交失败
short VIP;
char lx[2]; //卡类型
} YHK;
// --- 结构:信用卡类别 ---
typedef struct {
char km[3];
char yh[11];
char mc[11];
} XYKLB;
// --- 结构:信用卡 ---
typedef struct {
short xh;
char km[3];
char yh[13];
char mc[11]; // 信用卡代码,银行,信用卡名称
double je;
short update; // 提交状态,-1--提交失败
char kh[17]; //lijing 卡号
} XYK;
// --- 结构:提货卡 ---
typedef struct {
short xh;
char kh[11];
char mm[7];
char cklx[2]; // 卡号,密码,类型
double fkje,dqye,xzje,xye; // 发卡金额,当前余额
short update; // 提交状态,-1--提交失败
}THK;
//
typedef struct
{
char spbm[9],spmc[51],fkfs[2];
double sl,je;
}JYXX;
//付款结构表
typedef struct
{
double xjje;
double zpje;
double xykje;
YHK yhk;
XYK xyk[_MAXXYK];
double thkje;
THK thk[_MAXTHK];
double qtje;
double ssje; // 实收金额合计
double zbje; // 找补现金金额
short update; // 提交状态,-1--提交失败
} _FKStruct;
//商品数据结构
typedef struct
{
short RecNo; //记录号
char spbm[9]; //商品编码
char sptm[14]; //商品条码
char spmc[53]; //商品名称及规格
char jldw[5]; //单位
char yyybm[5]; //营业员编码
char gzbm[5]; //柜组编码
char csbm[7]; //厂商编码
char splb[7]; //商品类别
char jyfs[3]; //经营方式
double sl; //商品数量
double bzsl; //包装数量
double jj; //进价
double sj; //售价
double yhj; //优惠价
double yhl; //优惠率
double zkl; //折扣
double sjsj; //实际售价
double je; //原价金额合计=sl*sj
double ssje; //实际金额合计=sl*sjsj
double spsl; //商品税率
short bz; //改售价标记
double sswr;
short state; //状态 0-正常 1-条码秤商品 2-二次包装商品
short update; // 提交状态,-1--提交失败
short mark;
}_SPStruct;
//销售商品数据集表
typedef struct
{
short xh; //序号
short state; //状态 0-正常 1-挂起
_SPStruct SPList[102];//最多可以100必销售
int RecordCount; //笔数
double spje; //金额合计
double ysje; //应收金额
double sl; //数量合计
short RecNo; //记录号
_FKStruct fklp; //付款结构指针
int lsh; //流水号
double se[4]; //四种税额
double sehj; //税额合计
}_SPLists;
//挂起的信息
typedef struct
{
int lsh; //流水号
int sps; //记录数
}_GQStruct;
//参数结构
typedef struct{
//收银机控制
char SyjLx[2]; //收银机类型 1
char SyjNo[4]; //收银机号 2
//顾显控制
char Gx[2]; //固显 3
char GxInit[15]; //固显初始化命令 4
char GxDisp[15]; //固显显示命令 5
//钱箱控制
char Qx[2]; //钱箱 6
char QxYx[2]; //允许打开钱箱命令 7
char QxOpen[15]; //钱箱打开命令 8
//打印控制
char Port[9]; //打印端口 9
char ForFile[12];//打印格式控制文件 10
char Dysyt[4]; //打印收银条 11
char PLine[3]; //打印走纸行数 12
char Qz[2]; //切纸 14
char PFeed[11]; //走纸命令 13
char Dyys[5]; //打印延时 15
char Title[21]; //打印标题 16
char Dyspbm[11]; //打印商品编码 17
char Dyyhj[3]; //打印优惠价 18
char Dyssje[2]; //打印实收金额 19
char Wtjdy[2]; //未提交打印 20
char Bdxspz[2]; //补打销售凭证 21
char Dytjb[2]; //打印销售统计表 22
//访问条码控制
char Xzbm[7]; //限制编码 23
char Scan[2]; //扫条码 24
//编辑控制
char Sldjfs[2]; //数量迭加方式 25
char Slbhxs[3]; //数量不含小数 26
char Sswr[2]; //四舍五入处理 27
char Yxscjl[2]; //允许删除记录 28
char Yxxgsl[2]; //允许修改数量 29
char Yxxgsj[2]; //允许修改售价 30
char Xgsjfs[2]; //修改售价方式 31
char NoEdit[2]; // 32
//优惠控制
char Sddz[2]; //时点打折 33
char Bzspdz[2]; //允许二次包装商品打折 34
char Tmspdz[2]; //允许条码秤商品打折 35
char Gbksy[2]; // 36
//功能控制
char Gqjg[2]; //挂起及解挂 37
char Tjfs[3]; //提交方式 38
char Thk[5]; //提货卡 39
char Xykjj[2]; //信用卡实时交易 40
char Djbf[2]; //允许单机备份 41
char Ggmm[2]; //允许修改口令 42
char Yyy[2]; //营业员 43
char Auto[3]; //自动下载数据 44
char PassW[11]; //系统管理员口令 45
char DownLoad[61];
char Yhkh[11]; //固定优惠卡号 47
char bz[11]; // 48
}TOption;
typedef struct
{
char RejCode[2+1]; /* 返回码 "00"成功 */
char ErrDisp[40+1]; /* 返回码含义 */
char CardNo[20+1]; /* 卡号 */
char Expiry[4+1]; /* 有效期 */
char AuthNo[6+1]; /* 授权号 */
char PosSer[6+1]; /* 流水号 */
char VposSer[6+1]; /* 冲流水号 */
char HostSer[12+1]; /* Gold Ser */
char BankId; /* 银行行号
"1"-工 "2"-农 "3"-中 "4"-建 "5"-交 */
char BankName[20+1];/* 银行名字 */
char CardName[20+1];/* 银行卡名 */
char PrtTimes; /* 打印次数 */
char AwardClass; /* 中奖等级
"0"-未中奖 "1"-一等奖 "2"-二等奖 "3"-三等奖 */
char Amount[12+1]; /* 金额 */
char Flag[6+1];
} CARDOUT;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -