lmw
2024-09-04 f4a6d4f0996238f9c85e4986deffe69a1c8256e6
app/src/main/java/com/lotaai/canguiayw/MainActivity.java
@@ -1,51 +1,210 @@
package com.lotaai.canguiayw;
import androidx.appcompat.app.AppCompatActivity;
import androidx.arch.core.executor.DefaultTaskExecutor;
import android.content.Context;
import android.content.Intent;
import android.os.Build;
import android.os.Build.VERSION;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
import android.view.View;
import android.widget.ImageView;
import com.alibaba.fastjson.JSONObject;
import com.blankj.utilcode.util.CacheDiskUtils;
import com.blankj.utilcode.util.DeviceUtils;
import com.blankj.utilcode.util.LogUtils;
import com.lotaai.canguiayw.common.HttpLoggerInterceptor;
import com.lotaai.canguiayw.common.HttpUrlDefine;
import com.lotaai.canguiayw.common.SettingConfig;
import com.lotaai.canguiayw.device.CanGuiCommand;
import com.lotaai.canguiayw.device.CanguiStatus;
import com.lotaai.canguiayw.device.DeviceMessage;
import com.lotaai.canguiayw.device.DeviceType;
import com.lotaai.canguiayw.device.MessageType;
import com.lotaai.canguiayw.device.service.CanGuiService;
import com.lotaai.canguiayw.mqtt.MyMQTTService;
import com.pranavpandey.android.dynamic.toasts.DynamicToast;
import org.greenrobot.eventbus.EventBus;
import java.io.IOException;
import java.util.concurrent.TimeUnit;
import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.FormBody;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;
/* 262743  员工号*/
public class MainActivity extends AppCompatActivity {
    private Context context;
    private ImageView logoView;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        LogUtils.i("VERSION.SDK_INT:" +VERSION.SDK_INT);
        LogUtils.i("VERSION.SDK_INT:" + VERSION.SDK_INT);
        logoView = findViewById(R.id.logo);
        context = MainActivity.this;
        /*new Thread(new Runnable() {
            @Override
            public void run() {
                while (true){
                    try {
                        Thread.sleep(2000);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                    CThreadPoolExecutor.runOnMainThread(new Runnable() {
                        @Override
                        public void run() {
                            DynamicToast.makeSuccess(getApplicationContext(), "测试!", 3).show();
                        }
                    });
                }
            }
        }).start();*/
        Intent startIntent = new Intent(context, CanGuiService.class);
        startService(startIntent);
        /* */
      /*  Intent startMqttIntent = new Intent(context, MyMQTTService.class);
        startService(startMqttIntent);*/
        // login();
       /* logoView.setOnLongClickListener(new View.OnLongClickListener() {
            @Override
            public boolean onLongClick(View view) {
                Intent intent = new Intent();
                intent.setClass(MainActivity.this, ManageActivity.class);
                startActivity(intent);
                return true;
            }
        });*/
//        testData();
    }
    public void gotoSetting(View view){
//    public void  testData(){
//        Random random = new Random();
//        int rt= random.nextInt(10000-1000+1)  + 1000;
//        Order order = new Order();
//        order.setOrderNo("GB"+ rt);
//        order.setGridNo("1");
//        order.setTakeCode("526895");
//        order.setState(0);
//        Date time = new Date();
//        order.setPutInDate(TimeUtils.date2String(time,"yyyy-MM-dd HH:mm:ss"));
//        SqlliteDbManage.getInstance().insertOrderInfo(order);
//        for (int p = 0; p < 3;p ++){
//            OrderDetail detail = new OrderDetail();
//            detail.setItemName("项目"+p);
//            detail.setNum(p);
//            detail.setOrderNo(order.getOrderNo());
//            SqlliteDbManage.getInstance().insertOrUpdateOrderDetailInfo(detail);
//        }
//        LogUtils.i("插入订单数据:" + order.getOrderNo());
//    }
    public void gotoSetting(View view) {
//        Intent intent = new Intent();
//        intent.setClass(MainActivity.this, AdminLoginActivity.class);
//        startActivity(intent);
    }
    public void putIn(View view) {
        Intent intent = new Intent();
        intent.setClass(MainActivity.this, ManageActivity.class);
        intent.putExtra("type",1);
        intent.setClass(MainActivity.this, CheckUserIdActivity.class);
        startActivity(intent);
    }
    public void take(View view){
    public void take(View view) {
        Intent intent = new Intent();
        intent.setClass(MainActivity.this, TakeActivity.class);
        startActivity(intent);
    }
    public void putIn(View view){
    public void login() {
        HttpLoggerInterceptor loggingInterceptor = new HttpLoggerInterceptor(true);
        OkHttpClient client = new OkHttpClient.Builder()
                .connectTimeout(20, TimeUnit.SECONDS)//响应时间,读取时间
                .readTimeout(20, TimeUnit.SECONDS)
                .callTimeout(20, TimeUnit.SECONDS)
                .addInterceptor(loggingInterceptor)//添加日志拦截器
                .build();
        RequestBody body = new FormBody.Builder()
                .add("equipmentUid", DeviceUtils.getUniqueDeviceId()).build();
        final Request request = new Request.Builder()
                .url(HttpUrlDefine.equipmentLogin)
                .addHeader("language", "zh-CN")
                .post(body)
                .build();
        client.newCall(request).enqueue(new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {
                Message msg = new Message();
                msg.what = 0;
                msg.obj = "登录失败";
                showHandler.sendMessage(msg);
                LogUtils.e(e);
            }
            @Override
            public void onResponse(Call call, Response response) throws IOException {
                String result = response.body().string();
                LogUtils.i("获取到的数据:" + result);
                JSONObject obj = JSONObject.parseObject(result);
                if ("0".equals(obj.getString("code"))) {
                    JSONObject dataObj = obj.getJSONObject("data");
                    String name = dataObj.getString("name");
                    Message msg = new Message();
                    msg.what = 1;
                    msg.obj = "登录成功!" + name;
                    showHandler.sendMessage(msg);
                    //equipmentCode
                    String code = dataObj.getString("equipmentCode");
                    CacheDiskUtils.getInstance().put(SettingConfig.getInstance().Cache_Device_Code, code);
                } else {
                    Message msg = new Message();
                    msg.what = 0;
                    msg.obj = "登录失败:请重新激活!";
                    showHandler.sendMessage(msg);
                }
            }
        });
    }
    private Handler showHandler = new Handler() {
        @Override
        public void handleMessage(Message msg) {
            if (msg.what == 0) {
                DynamicToast.makeError(context, msg.obj.toString(), 3).show();
            } else if (msg.what == 1) {
                DynamicToast.makeSuccess(context, msg.obj.toString(), 3).show();
            } else {
                DynamicToast.makeWarning(context, msg.obj.toString(), 3).show();
            }
        }
    };
    public void toset(View view) {
        Intent intent = new Intent();
        intent.setClass(MainActivity.this, ManageActivity.class);
        startActivity(intent);
    }
}