?? do_consume.c
字號:
#include "My_head.h"
#include "carddef.h"
//#include "rfic.h"
//#include "sendcard.h"
#include "DS_addr.h"
#include "DataFlash.H"
#include "RfModuleFunc.H"
//#define _DEBUG
#ifdef _DEBUG
#include "Debug.h"
#endif
extern sttCardholderInfo xdata stCardholderInfo; //持卡人信息
extern sttBusinessInfo xdata stBusinessInfo; //交易信息
extern sttOtherTableInfo xdata stOtherTableInfo;
extern unsigned char xdata gcDateTime[7]; //全局時鐘
extern char FillMoneyOrTime();
//保存訂餐記錄
unsigned char SaveFillRecord()
{
Con_Record xdata stFillRecord;
//準備數據
if(stBusinessInfo.stFillInfo.cMode==FILL_MONEY)
{
stFillRecord.balance=stBusinessInfo.lMoney; //卡上余額(本次操作后)
stFillRecord.con_Money=stBusinessInfo.stFillInfo.lMoney; //本次操作(消費、充值等)金額;(不要負數)
stFillRecord.mark = 2; //充值
}else{
stFillRecord.balance=stBusinessInfo.iTimes; //卡上余額(本次操作后)
stFillRecord.con_Money=stBusinessInfo.stFillInfo.iTimes; //本次操作(消費、充值等)金額;(不要負數)
stFillRecord.mark = 12; //充次
}
memcpy(stFillRecord.card_code,stCardholderInfo.cSerialNo,3);//卡編號(卡流水號)
memcpy(stFillRecord.con_time,gcDateTime,6);//本次操作(消費、充值、掛失等)時間;
memcpy((unsigned char*)&stFillRecord.card_count,stBusinessInfo.cIndex,2); //本卡操作(消費、充值、被掛失)累計流水號("卡"平帳用);
stFillRecord.equip_count=stOtherTableInfo.iRecordIndex++;//本機操作(消費、充值、被掛失)累計流水號("機"平帳用);
memset(stFillRecord.reserver,0,2);//保留以后用;
#ifdef _DEBUG
DebugString("stFillRecord Data:\r\n");
DebugData(24,24,(unsigned char *)&stFillRecord);
#endif
//保存訂餐記錄
return Save_ConData_to_Memory(&stFillRecord);
}
BYTE Do_CheckCard_Event_9(BYTE Dat)
{
BYTE i;
if((!equip_addr.ntype) || ((!seedcard_info.unit_code[0])&&(!seedcard_info.unit_code[1])&&(!seedcard_info.unit_code[2])))
{
i=NO_INI_EQUIP;
}
else
if((i=FillMoneyOrTime())==0)
{ //成功
Dis_Consume_Led(TRUE);
#ifdef _DEBUG
DebugString("正常充值\r\n");
#endif
i=SaveFillRecord();
thekey.key_val = stBusinessInfo.lMoney;
KeyVal_Tobuf();
Dis_KeyBuf();
//Dis_Balance_Led(TRUE);
My_Do_Buzzer(250,1);
}
#ifdef _DEBUG
DebugString("Order Dinner Result:");
DebugData(1,1,&i);
#endif
if(i > 1)
{
Dis_Err_Led(TRUE); //FOR 技嘉
if(i==60) //要求重刷卡
do_buzzer(3);
else
do_buzzer(BUZZER_ERROR);
Dis_Err(i);
}
//SendStr("c:",2);SendStr(&i,1);
Stop_Timer(DISPLAY_DELAYEVENT_Tevent);//msut!!
Set_TimerEvent(DISPLAY_DELAYEVENT_Tevent,DISPLAY_DELAYEVENT_TIME);
Do_DisLed_Flash(0x00,0x00,145);
Set_TimerEvent(WAIT_CARD_Tevent,WAIT_CARDCONSUME_TIME);//(1)
SetCurState(IDEL_STATUS);//ActiveState(INIT_STATUS);
Dat=Dat;
return(i);
}
BYTE Do_DisCardVal_Event_7(BYTE Dat)
{
return(Dat);
}
BYTE Do_TestCardWrite_Event_6(BYTE Dat)
{
return(Dat);
}
BYTE Do_CardConsume_Event_8(BYTE Dat)
{
return(Dat);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -