同卡拿走结束计费
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: