From 8d459194e620a691994fb8226fb08c51a3dd8065 Mon Sep 17 00:00:00 2001
From: weimingfei <fei_gaming@sina.com>
Date: 星期三, 29 十月 2025 21:33:24 +0800
Subject: [PATCH] 钥匙柜

---
 keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/FaceActivity.java |   88 ++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 81 insertions(+), 7 deletions(-)

diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/FaceActivity.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/FaceActivity.java
index bcc9095..e935ae4 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/FaceActivity.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/FaceActivity.java
@@ -9,9 +9,11 @@
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.Message;
+import android.text.Editable;
 import android.text.SpannableString;
 import android.text.Spanned;
 import android.text.TextUtils;
+import android.text.TextWatcher;
 import android.text.style.TextAppearanceSpan;
 import android.view.View;
 import android.view.ViewTreeObserver;
@@ -35,6 +37,7 @@
 import com.doumee.lib_coremodel.bean.event.ActionEventData;
 import com.doumee.lib_coremodel.util.SpUtil;
 import com.doumee.lib_coremodel.util.StringUtil;
+import com.doumee.lib_coremodel.view.ToastView;
 import com.example.datalibrary.callback.CameraDataCallback;
 import com.example.datalibrary.callback.FaceDetectCallBack;
 import com.example.datalibrary.gatecamera.CameraPreviewManager;
@@ -137,6 +140,8 @@
                 break;
             case 1:
                 //鍙�-绠$悊鍛樺埛鍗¢獙璇�
+                getDB().etEwm.setText("");
+                getDB().etEwm.requestFocus();
                 getDB().tvTitle.setText("绠$悊鍛樿韩浠介獙璇�");
                 getDB().clFace.setVisibility(View.GONE);
                 getDB().clCard.setVisibility(View.VISIBLE);
@@ -162,6 +167,8 @@
                 break;
             case 3:
                 //鍙�-鍙告満鍒峰崱楠岃瘉
+                getDB().etEwm.setText("");
+                getDB().etEwm.requestFocus();
                 getDB().tvTitle.setText("鍙告満韬唤楠岃瘉");
                 getDB().clFace.setVisibility(View.GONE);
                 getDB().clSjXuan.setVisibility(View.GONE);
@@ -183,14 +190,15 @@
                     //寮�濮嬫娴�
                     EventBus.getDefault().post(new JiujinBeginEvent());
                 }else {
-                    ToastUtils.toast(this,"鏈幏鍙栧埌閰掔簿娴撳害鎶ヨ鍊�");
+                    ToastView.show(this,"鏈幏鍙栧埌閰掔簿娴撳害鎶ヨ鍊�");
                     statusFsm(6);
                 }
                 break;
             case 6:
                 //鍙�-鍙告満閰掔簿妫�娴嬪け璐�
-                Toast.makeText(mContext, "鍙告満閰掔簿妫�娴嬪け璐�", Toast.LENGTH_SHORT).show();
+                //Toast.makeText(mContext, "鍙告満閰掔簿妫�娴嬪け璐�", Toast.LENGTH_SHORT).show();
                 getDB().clJiu.setVisibility(View.GONE);
+                getDB().tvJg1.setText("閰掔簿妫�娴嬪紓甯革紝璇烽噸鏂版娴�");
                 getDB().clTip1.setVisibility(View.VISIBLE);
                 break;
             case 7:
@@ -202,10 +210,18 @@
                 break;
             case 8:
                 //杩�-鍙告満鍒峰崱楠岃瘉
+                getDB().etEwm.setText("");
+                getDB().etEwm.requestFocus();
                 getDB().tvTitle.setText("鍙告満韬唤楠岃瘉");
                 getDB().clFace.setVisibility(View.GONE);
                 getDB().clCard.setVisibility(View.VISIBLE);
                 setFaceModel(2);
+                break;
+            case 9:
+                //鍙�-鍙告満閰掔簿妫�娴嬪け璐�
+                getDB().clJiu.setVisibility(View.GONE);
+                getDB().tvJg1.setText("閰掔簿妫�娴嬭秴鏍�");
+                getDB().clTip1.setVisibility(View.VISIBLE);
                 break;
             default:
                 break;
@@ -266,6 +282,21 @@
             case 5:
                 statusFsm(4);
                 break;
+            case 6:
+                //绠$悊鍛榠c鍗℃垚鍔�
+                statusFsm(5);
+                break;
+            case 7:
+                //鍙告満ic鍗℃垚鍔�
+                if(flag==0) {
+                    //鍙�
+                    statusFsm(4);
+                }else {
+                    //杩�
+                    startActivity(KeyCabinetActivity.class);
+                    finish();
+                }
+                break;
             default:
                 break;
         }
@@ -296,12 +327,39 @@
 
         //ic鍗¤鍙�
         getDB().etEwm.requestFocus();
-        getDB().etEwm.setShowSoftInputOnFocus(false);
+        getDB().etEwm.setFocusable(true);
+        getDB().etEwm.setShowSoftInputOnFocus(true);
         hideSoftKeyboard(getDB().etEwm);
         getDB().etEwm.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
             @Override
             public void onGlobalLayout() {
                 hideSoftKeyboard(getDB().etEwm);
+            }
+        });
+        getDB().etEwm.addTextChangedListener(new TextWatcher() {
+            @Override
+            public void beforeTextChanged(CharSequence s, int start, int count, int after) {
+
+            }
+
+            @Override
+            public void onTextChanged(CharSequence s, int start, int before, int count) {
+
+            }
+
+            @Override
+            public void afterTextChanged(Editable s) {
+                String m = s.toString();
+                if(TextUtils.isEmpty(m)){
+                    return;
+                }
+                if(status!=1&&status!=3&&status!=8){
+                    return;
+                }
+                if(handler.hasMessages(5)){
+                    handler.removeMessages(5);
+                }
+                handler.sendEmptyMessageDelayed(5,500);
             }
         });
     }
@@ -428,7 +486,8 @@
                     //isCheckFace = false;
                     break;
                 case 3:
-                    Toast.makeText(mContext, "閰掔簿妫�鏌ヨ繑鍥�", Toast.LENGTH_SHORT).show();
+                    getDB().clJiujinProgress.setVisibility(View.GONE);
+                    //Toast.makeText(mContext, "閰掔簿妫�鏌ヨ繑鍥�", Toast.LENGTH_SHORT).show();
                     if(new BigDecimal(MApplication.getConfigBean().getCabinetConfigDataVO().getConcentration())
                             .compareTo(resultEvent.getConcentration())>=0){
                         //閰掔簿閫氳繃
@@ -436,14 +495,26 @@
                         handler.sendEmptyMessageDelayed(4,1000);
                     }else {
                         //閰掔簿涓嶉�氳繃
-                        getVM().alcoholTestAlarm("");
-                        Toast.makeText(mContext, "閰掔簿妫�娴嬩笉閫氳繃", Toast.LENGTH_SHORT).show();
-                        statusFsm(6);
+                        getVM().alcoholTestAlarm(resultEvent.getConcentration().toString());
+                        //Toast.makeText(mContext, "閰掔簿妫�娴嬭秴鏍�", Toast.LENGTH_SHORT).show();
+                        statusFsm(9);
                     }
                     break;
                 case 4:
                     startActivity(KeyCabinetActivity.class);
                     finish();
+                    break;
+                case 5:
+                    String m = getDB().etEwm.getText().toString();
+                    int index = m.indexOf("\r");
+                    if(index!=-1){
+                        m = m.substring(0,index);
+                    }
+                    if(!TextUtils.isEmpty(m)){
+                        getVM().getMemberIdByCode(m,status==1?"0":"1");
+                    }
+                    getDB().etEwm.setText("");
+                    getDB().etEwm.requestFocus();
                     break;
                 default:
                     break;
@@ -596,8 +667,10 @@
         if(!isFinishing()){
             //Toast.makeText(mContext, "閰掔簿妫�娴嬭繑鍥烇細"+e.isOk(), Toast.LENGTH_SHORT).show();
             if(!e.isOk()){
+                getDB().clJiujinProgress.setVisibility(View.GONE);
                 statusFsm(6);
             }else {
+                getDB().clJiujinProgress.setVisibility(View.VISIBLE);
                 if(resultEvent==null){
                     resultEvent = e;
                 }else if(resultEvent.getConcentration().compareTo(e.getConcentration())<0){
@@ -611,4 +684,5 @@
             }
         }
     }
+
 }
\ No newline at end of file

--
Gitblit v1.9.3