package com.lotaai.canguiayw;
|
|
import android.content.Context;
|
import android.content.Intent;
|
import android.os.Build.VERSION;
|
import android.os.Bundle;
|
import android.os.Handler;
|
import android.os.Message;
|
import android.view.View;
|
import android.widget.EditText;
|
import android.widget.ImageView;
|
import android.widget.TextView;
|
|
import androidx.appcompat.app.AppCompatActivity;
|
|
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.service.CanGuiService;
|
import com.pranavpandey.android.dynamic.toasts.DynamicToast;
|
|
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 LoginActivity extends AppCompatActivity {
|
private Context context;
|
private TextView tv_action;
|
private EditText et_acc;
|
private EditText et_pwd;
|
private EditText et_device;
|
private TextView tv_type;
|
private View bg_type;
|
private View ll_type;
|
private View tv_user;
|
private View tv_staff;
|
private String side = "1"; //1用户 2员工
|
|
@Override
|
protected void onCreate(Bundle savedInstanceState) {
|
super.onCreate(savedInstanceState);
|
setContentView(R.layout.activity_login);
|
String _side = CacheDiskUtils.getInstance().getString(SettingConfig.getInstance().Cache_Device_Side, "");
|
if (_side.equals("1")){
|
Intent intent = new Intent();
|
intent.setClass(LoginActivity.this, TakeActivity.class);
|
startActivity(intent);
|
}else if (_side.equals("2")){
|
|
}
|
LogUtils.i("VERSION.SDK_INT:" + VERSION.SDK_INT);
|
context = LoginActivity.this;
|
tv_action = findViewById(R.id.tv_action);
|
et_acc = findViewById(R.id.et_acc);
|
et_pwd = findViewById(R.id.et_pwd);
|
et_device = findViewById(R.id.et_device);
|
tv_type = findViewById(R.id.tv_type);
|
bg_type = findViewById(R.id.bg_type);
|
ll_type = findViewById(R.id.ll_type);
|
tv_user = findViewById(R.id.tv_user);
|
tv_staff = findViewById(R.id.tv_staff);
|
// Intent startIntent = new Intent(context, CanGuiService.class);
|
// startService(startIntent);
|
tv_type.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View view) {
|
bg_type.setVisibility(View.VISIBLE);
|
ll_type.setVisibility(View.VISIBLE);
|
}
|
});
|
bg_type.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View view) {
|
bg_type.setVisibility(View.GONE);
|
ll_type.setVisibility(View.GONE);
|
}
|
});
|
tv_user.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View view) {
|
bg_type.setVisibility(View.GONE);
|
ll_type.setVisibility(View.GONE);
|
tv_type.setText("User Side");
|
side = "1";
|
}
|
});
|
tv_staff.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View view) {
|
bg_type.setVisibility(View.GONE);
|
ll_type.setVisibility(View.GONE);
|
tv_type.setText("Staff Side");
|
side = "2";
|
}
|
});
|
tv_action.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View view) {
|
String acc = et_acc.getText().toString();
|
if (acc.isEmpty()){
|
Message msg = new Message();
|
msg.what = 1;
|
msg.obj = "Please enter account";
|
showHandler.sendMessage(msg);
|
return;
|
}
|
String pwd = et_pwd.getText().toString();
|
if (pwd.isEmpty()){
|
Message msg = new Message();
|
msg.what = 1;
|
msg.obj = "Please enter password";
|
showHandler.sendMessage(msg);
|
return;
|
}
|
String device = et_device.getText().toString();
|
if (device.isEmpty()){
|
Message msg = new Message();
|
msg.what = 1;
|
msg.obj = "Please enter device number";
|
showHandler.sendMessage(msg);
|
return;
|
}
|
login(acc,pwd,device);
|
}
|
});
|
}
|
|
|
public void login(String acc, String pwd, final String device) {
|
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()
|
.build();
|
final Request request = new Request.Builder()
|
.url(HttpUrlDefine.login + "?account=" + acc+"&deviceNumber="+device+"&deviceType=1&password="+pwd)
|
.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 = "Login failed";
|
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 ("200".equals(obj.getString("code"))) {
|
Message msg = new Message();
|
msg.what = 1;
|
msg.obj = "Login successful!";
|
showHandler.sendMessage(msg);
|
//equipmentCode
|
CacheDiskUtils.getInstance().put(SettingConfig.getInstance().Cache_Device_Code, device);
|
CacheDiskUtils.getInstance().put(SettingConfig.getInstance().Cache_Device_Side, side);
|
if (side.equals("1")){
|
Intent intent = new Intent();
|
intent.setClass(LoginActivity.this, TakeActivity.class);
|
startActivity(intent);
|
}else if (side.equals("2")){
|
|
}
|
} else {
|
Message msg = new Message();
|
msg.what = 0;
|
msg.obj = obj.getString("msg");
|
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(LoginActivity.this, ManageActivity.class);
|
startActivity(intent);
|
}
|
}
|