修复刷卡报错问题和二维码有效期bug
diff --git a/supwisdom/sp_communicate.c b/supwisdom/sp_communicate.c
index e52ec0f..c86690a 100644
--- a/supwisdom/sp_communicate.c
+++ b/supwisdom/sp_communicate.c
@@ -80,7 +80,15 @@
while(size-- > 0)
{
sp_unpack_value(&unpack,&field);
- if(IS_KEY(PK_INT_WATERLIMIT,field.key))
+ if(IS_KEY(PK_INT_PERMIT, field.key))
+ {
+ card->permit = field.val.intval;
+ }
+ else if(IS_KEY(PK_STR_LIMITMSG, field.key))
+ {
+ MEMCPY(card->limitmsg, field.val.strval, field.strlen);
+ }
+ else if(IS_KEY(PK_INT_WATERLIMIT,field.key))
{
card->waterlimit = field.val.intval;
}
@@ -270,7 +278,11 @@
while(size-- > 0)
{
sp_unpack_value(&unpack,&field);
- if(IS_KEY(PK_INT_COBILLNO, field.key))
+ if(IS_KEY(PK_INT_PERMIT, field.key))
+ {
+ card->permit = field.val.intval;
+ }
+ else if(IS_KEY(PK_INT_COBILLNO, field.key))
{
card->cobillno = field.val.intval;
}
@@ -294,6 +306,10 @@
{
card->feepara.fee_unit = field.val.intval;
}
+ else if(IS_KEY(PK_INT_WATERLIMIT, field.key))
+ {
+ card->waterlimit = field.val.intval;
+ }
}
return resp.retcode;
}
@@ -558,23 +574,16 @@
if(ticker - pos->last_comm_status.sendtime > COMM_WAIT_TIME)
{
if(pos->devlogin.last_login_ticker == 0 || pos->devlogin.login_flag == 0
- || ticker - pos->devlogin.last_login_ticker > DELAY_TIME60s*30)
+ || ticker - pos->devlogin.last_login_ticker > DELAY_TIME60s*30)
{
- if(ticker - pos->devlogin.last_login_ticker > DELAY_TIME60s*60)
- {
pos->devlogin.last_login_ticker = ticker;
sp_async_equipment_login(pos);
- }
}
- else if(ticker < pos->heartbeat.last_heartbeat_ticker
- || pos->heartbeat.last_heartbeat_ticker == 0
- || ticker - pos->heartbeat.last_heartbeat_ticker > DELAY_TIME15s*2)
+ if(pos->heartbeat.last_heartbeat_ticker == 0
+ || ticker - pos->heartbeat.last_heartbeat_ticker > DELAY_TIME60s)
{
- if(ticker - pos->heartbeat.last_heartbeat_ticker > DELAY_TIME60s)
- {
pos->heartbeat.last_heartbeat_ticker = ticker;
sp_async_heartbeat(pos);
- }
}
else
{