weimingfei
16 小时以前 4e4017b2e55c70c32bd725fc9c9bda335ddc59f6
钥匙柜酒精检测控制
已修改5个文件
109 ■■■■ 文件已修改
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/bean/DevConfigBean.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/FaceActivity.java 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/OfflineActivationActivity.java 69 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/main/MainActivity.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
keyCabinet-android/app/src/main/res/layout/offline_activation_activity.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/bean/DevConfigBean.java
@@ -12,8 +12,13 @@
    private String linkPhone;
    //设备ID
    private String devId;
    //是否双重验证 0否 1是
    private int doubleAuth;
    //酒精检测开启:0=开启;1=关闭
    private int  alcoholStatus;
    //主键
    private Integer id;
    //备注
@@ -113,4 +118,12 @@
    public void setActivateFileUrl(String activateFileUrl) {
        this.activateFileUrl = activateFileUrl;
    }
    public int getAlcoholStatus() {
        return alcoholStatus;
    }
    public void setAlcoholStatus(int alcoholStatus) {
        this.alcoholStatus = alcoholStatus;
    }
}
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/FaceActivity.java
@@ -297,7 +297,14 @@
                //司机ic卡成功
                if(flag==0) {
                    //取
                    statusFsm(4);
                    if(MApplication.getConfigBean()!=null&&MApplication.getConfigBean().getAlcoholStatus()==1) {
                        //非酒精检测
                        startActivity(KeyCabinetActivity.class);
                        finish();
                    }else {
                        //酒精检测
                        statusFsm(4);
                    }
                }else {
                    //还
                    startActivity(KeyCabinetActivity.class);
@@ -651,7 +658,14 @@
                            MApplication.getLoginBean().setMemberId(Integer.parseInt(user.getUserId()));
                            MApplication.getLoginBean().setAuthType(0);
                            //handler.sendEmptyMessageDelayed(8,0);
                            EventBus.getDefault().post(new FaceStatusChangeEvent(4));
                            if(MApplication.getConfigBean()!=null&&MApplication.getConfigBean().getAlcoholStatus()==1) {
                                //非酒精检测
                                startActivity(KeyCabinetActivity.class);
                                finish();
                            }else {
                                //酒精检测
                                EventBus.getDefault().post(new FaceStatusChangeEvent(4));
                            }
                        }else if(status==7){
                            //还-司机
                            MApplication.getLoginBean().setMemberId(Integer.parseInt(user.getUserId()));
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/OfflineActivationActivity.java
@@ -2,12 +2,18 @@
import androidx.annotation.Nullable;
import android.app.DownloadManager;
import android.content.BroadcastReceiver;
import android.content.ClipboardManager;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.text.TextUtils;
import android.view.View;
import android.widget.Toast;
import com.baidu.idl.main.facesdk.FaceAuth;
import com.baidu.idl.main.facesdk.callback.Callback;
@@ -68,6 +74,8 @@
        getDB().accreditOffBtn.setOnClickListener(this);
        getDB().btnDown.setOnClickListener(this);
        setupDownloadManager();
        setupDownloadReceiver();
    }
    @Subscribe
@@ -127,19 +135,7 @@
                }
                if(!TextUtils.isEmpty(MApplication.getConfigBean().getActivateFileUrl())){
                    isDownLoad = true;
                    FileUtil.downLoadFile(filePath, MApplication.getConfigBean().getActivateFileUrl(), new FileUtil.DownLoadCallBack() {
                        @Override
                        public void sucess() {
                            ToastView.show(MApplication.mContext,"下载成功");
                            isDownLoad = false;
                        }
                        @Override
                        public void err(String e) {
                            ToastView.show(MApplication.mContext,e);
                            isDownLoad = false;
                        }
                    });
                    startDownload(MApplication.getConfigBean().getActivateFileUrl());
                }
                break;
            // 离线激活
@@ -186,5 +182,52 @@
    @Override
    protected void onDestroy() {
        super.onDestroy();
        if (downloadReceiver != null) {
            unregisterReceiver(downloadReceiver);
        }
    }
    private BroadcastReceiver downloadReceiver;
    private DownloadManager downloadManager;
    private long downloadId;
    private void setupDownloadManager() {
        downloadManager = (DownloadManager) getSystemService(DOWNLOAD_SERVICE);
    }
    private void startDownload(String url) {
        try {
            DownloadManager.Request request = new DownloadManager.Request(Uri.parse(url));
            // 设置下载参数
            request.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI | DownloadManager.Request.NETWORK_MOBILE);
            request.setTitle("文件下载");
            request.setDescription("正在下载文件...");
            request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
            request.setDestinationInExternalPublicDir("", "License.zip");
            // 开始下载
            downloadId = downloadManager.enqueue(request);
            Toast.makeText(mContext, "下载已开始", Toast.LENGTH_SHORT).show();
        } catch (Exception e) {
            isDownLoad = false;
            Toast.makeText(this, "下载失败: " + e.getMessage(), Toast.LENGTH_LONG).show();
        }
    }
    private void setupDownloadReceiver() {
        downloadReceiver = new BroadcastReceiver() {
            @Override
            public void onReceive (Context context, Intent intent){
                long id = intent.getLongExtra(DownloadManager.EXTRA_DOWNLOAD_ID, -1);
                if (id == downloadId) {
                    isDownLoad = false;
                    Toast.makeText(context, "文件下载完成", Toast.LENGTH_LONG).show();
                }
            }
        };
        registerReceiver(downloadReceiver,new IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE));
    }
}
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/main/MainActivity.java
@@ -1305,7 +1305,7 @@
            getVM().addInfo(e.getMsg());
        }
    }
    private long lastCloseDoorTime;
    @Subscribe(threadMode = ThreadMode.MAIN)
    public void CLGridEvent(CLGridEvent e){
        if(!isFinishing()){
@@ -1378,6 +1378,7 @@
                String open = data.substring(6,8);
                String key = bh+tdh;
                CabinetGridDo gridDo = DaoManager.getCabinetGridDao().getGridByKey(key);
                lastCloseDoorTime = System.currentTimeMillis();
                if(gridDo!=null){
                    gridDo.setIsOpen("00".equals(open)?1:0);
                    gridDo.setUpdateTime(StringUtil.DateToStr(new Date()));
@@ -1542,10 +1543,10 @@
                    }else {
                        gridDo.setCurKeyCode("");
                    }
                    if("0101".equals(key)) {
                    /*if("0101".equals(key)) {
                        getVM().addInfo(key+" , "+isHaveKey+"  "+keyCode);
                        getVM().addInfo(key + "设置钥匙:" + gridDo.getCurKeyCode());
                    }
                    }*/
                    gridDo.setUpdateTime(StringUtil.DateToStr(new Date()));
                    updateList.add(gridDo);
                }
keyCabinet-android/app/src/main/res/layout/offline_activation_activity.xml
@@ -191,7 +191,7 @@
                    android:layout_below="@+id/accredit_setTv"
                    android:layout_marginTop="20dp"
                    android:gravity="center"
                    android:textColor="@color/white" />
                    android:textColor="@color/black" />
                <View
                    android:id="@+id/aaccredit_view"