同卡拿走结束计费
diff --git a/supwisdom/sp_consume.c b/supwisdom/sp_consume.c
index e7359e3..da6ab83 100644
--- a/supwisdom/sp_consume.c
+++ b/supwisdom/sp_consume.c
@@ -326,17 +326,24 @@
static uint16 do_stop(sp_pos_t* pos, sp_card_t* card)
{
uint16 ret;
+ char msg[32];
sp_transdtl_t record;
sp_valve_off();
- if(pos->purchase.paid_num > 0)
+ MEMCLEAR(&record, sizeof(record));
+ ret = sp_prepare_below_transdtl(pos, card, &record);
+ if(ret)
{
- MEMCLEAR(&record, sizeof(record));
- ret = sp_prepare_below_transdtl(pos, card, &record);
- if(ret)
- {
- return ret;
- }
+ return ret;
+ }
+ if(pos->purchase.paid_sum > 0)
+ {
+ sprintf(msg,"¹²¼Æ %0.2fÔª",pos->purchase.paid_sum/100.0f);
+ disp_hint_info_two(pos,"½áÊø¼Æ·Ñ",msg,DELAY_TIME2s);
+ }
+ else
+ {
+ disp_hint_info_two(pos,"½áÊø¼Æ·Ñ","Ãâ·ÑʹÓÃ",DELAY_TIME2s);
}
pos->paymode = PAYMODE_INIT;
pos->sysconf.work_mode = 0;
@@ -353,11 +360,11 @@
if(pos->purchase.paid_sum > 0)
{
sprintf(msg,"¹²¼Æ %0.2fÔª",pos->purchase.paid_sum/100.0f);
- disp_hint_info_two(pos,"½áÊø¼Æ·Ñ",msg,DELAY_TIME2s);
+ disp_hint_info_two(pos,"ÔÝÍ£¼Æ·Ñ",msg,DELAY_TIME2s);
}
else
{
- disp_hint_info_two(pos,"½áÊø¼Æ·Ñ","Ãâ·ÑʹÓÃ",DELAY_TIME2s);
+ disp_hint_info_two(pos,"ÔÝÍ£¼Æ·Ñ","Ãâ·ÑʹÓÃ",DELAY_TIME2s);
}
}
@@ -492,7 +499,7 @@
cardWorkState->current_state = CARDWORKSTATUS_NONE;
break;
case CARDWORKSTATUS_WORKING:
- cardWorkState->current_state = CARDWORKSTATUS_PAUSE;
+ cardWorkState->current_state = CARDWORKSTATUS_STOPPING;
break;
case CARDWORKSTATUS_PAUSE:
if(MEMCMP(pos->cardState.snr, card->cardphyid, 4) == 0)
@@ -528,7 +535,7 @@
cardWorkState->current_state = CARDWORKSTATUS_ERROR;
break;
}
- cardWorkState->current_state = CARDWORKSTATUS_STOPPED;
+ cardWorkState->current_state = CARDWORKSTATUS_NONE;
cardWorkState->tick = timer_get_ticker();
break;
case CARDWORKSTATUS_STOPPED: