package com.example.agvcontroller;
|
|
import static android.content.ContentValues.TAG;
|
|
import androidx.appcompat.app.AppCompatActivity;
|
import androidx.recyclerview.widget.RecyclerView;
|
|
import android.content.Context;
|
import android.content.Intent;
|
import android.content.res.ColorStateList;
|
import android.graphics.Color;
|
import android.os.Bundle;
|
import android.os.Handler;
|
import android.os.Message;
|
import android.os.Vibrator;
|
import android.util.Log;
|
import android.view.KeyEvent;
|
import android.view.MotionEvent;
|
import android.view.View;
|
import android.widget.Button;
|
import android.widget.CompoundButton;
|
import android.widget.GridLayout;
|
import android.widget.RelativeLayout;
|
import android.widget.Switch;
|
|
import com.example.agvcontroller.action.AllResetAction;
|
import com.example.agvcontroller.action.BackPaddle;
|
import com.example.agvcontroller.action.CameraResetAction;
|
import com.example.agvcontroller.action.ForkResetAction;
|
import com.example.agvcontroller.action.ForwardBackAction;
|
import com.example.agvcontroller.action.FrontPaddle;
|
import com.example.agvcontroller.action.GyroResetAction;
|
import com.example.agvcontroller.action.HandExtendCollect;
|
import com.example.agvcontroller.action.HandForkRotatopn;
|
import com.example.agvcontroller.action.HandInAction;
|
import com.example.agvcontroller.action.HandLift;
|
import com.example.agvcontroller.action.LiftResetAction;
|
import com.example.agvcontroller.action.LoadResetAction;
|
import com.example.agvcontroller.action.RotatopnLeftRight;
|
import com.example.agvcontroller.action.SingleSwitchAction;
|
import com.example.agvcontroller.action.SingleSwitchRunAction;
|
import com.example.agvcontroller.protocol.AgvAction;
|
import com.example.agvcontroller.action.HandOutAction;
|
import com.example.agvcontroller.socket.NettyServerHandler;
|
import com.example.agvcontroller.socket.SocketManager;
|
import com.example.agvcontroller.utils.DialogUtil;
|
import com.example.agvcontroller.utils.SnowflakeIdWorker;
|
|
import java.net.Socket;
|
import java.util.List;
|
import java.util.Map;
|
import java.util.concurrent.ConcurrentHashMap;
|
|
|
public class MainActivity extends AppCompatActivity {
|
|
public static final Map<String, Object> map = new ConcurrentHashMap();
|
public static final Map<String, Object> car_num = new ConcurrentHashMap();
|
|
private RecyclerView recyclerView;
|
private ItemAdapter itemAdapter;
|
private List<Item> itemList;
|
private Vibrator vibrator;
|
private Button stopBtn; // 急停按钮
|
// private Button forceSwitchBtn; // 手自动强制开关
|
private Button rotatopnLeftBtn; // 左旋转
|
private Button rotatopnRightBtn; // 右旋转
|
private Button goForwardBtn; // 前进
|
private Button goBackwardBtn; // 后退
|
private Button modelSwitchBtn; // 进入、退出 手动
|
|
private Button frontPaddleExtendBtn;
|
private Button frontPaddleCollectBtn;
|
private Button backPaddleExtendBtn;
|
private Button backPaddleCollectBtn;
|
private Button riseBtn;
|
private Button dropBtn;
|
private Button extendForkBtn;
|
private Button collectForkBtn;
|
private Button turnLeftBtn;
|
private Button turnRightBtn;
|
|
private Button cameraResetBtn;
|
private Button loadResetBtn;
|
private Button forkResetBtn;
|
private Button gyroResetBtn;
|
private Button liftResetBtn;
|
private Button allResetBtn;
|
|
private Switch switchBtn1; // 单轴使能
|
private Switch switchBtn2; // 单轴使能
|
private Switch switchBtn3; // 单轴使能
|
private Switch switchBtn4; // 单轴使能
|
private Switch switchBtn5; // 单轴使能
|
private Switch switchBtn6; // 单轴使能
|
private Switch switchBtn7; // 单轴使能
|
private Switch switchBtn8; // 单轴使能
|
private Switch switchBtn9; // 单轴使能
|
|
private Button axleFrontBtn1;
|
private Button axleBackBtn1;
|
private Button axleFrontBtn2;
|
private Button axleBackBtn2;
|
private Button axleFrontBtn3;
|
private Button axleBackBtn3;
|
private Button axleFrontBtn4;
|
private Button axleBackBtn4;
|
private Button axleFrontBtn5;
|
private Button axleBackBtn5;
|
private Button axleFrontBtn6;
|
private Button axleBackBtn6;
|
private Button axleFrontBtn7;
|
private Button axleBackBtn7;
|
private Button axleFrontBtn8;
|
private Button axleBackBtn8;
|
private Button axleFrontBtn9;
|
private Button axleBackBtn9;
|
|
|
|
private Button bodySwitchBtn; // 底盘/货叉切换
|
private Socket socket;
|
private String AgvNo = "1";
|
private RelativeLayout layout_bottom;
|
private RelativeLayout layout_top;
|
private GridLayout layout_single;
|
private RelativeLayout layout_reset;
|
|
int liftHeight = 400;
|
int extendWidth = -450;
|
int angle = -91; // 7 度
|
|
|
SocketManager socketManager;
|
|
|
// 按钮长按事件
|
private int autoVal = 1;
|
private boolean isAuto = true;
|
private boolean isGoForward = false;
|
private boolean isGoBackward = false;
|
private boolean isRotatopnRight = false;
|
private boolean isRotatopnLeft = false;
|
private boolean isFront1 = false;
|
private boolean isBack1 = false;
|
private boolean isFront2 = false;
|
private boolean isBack2 = false;
|
private boolean isFront3 = false;
|
private boolean isBack3 = false;
|
private boolean isFront4 = false;
|
private boolean isBack4 = false;
|
private boolean isFront5 = false;
|
private boolean isBack5 = false;
|
private boolean isFront6 = false;
|
private boolean isBack6 = false;
|
private boolean isFront7 = false;
|
private boolean isBack7 = false;
|
private boolean isFront8 = false;
|
private boolean isBack8 = false;
|
private boolean isFront9 = false;
|
private boolean isBack9 = false;
|
|
|
|
|
// 底盘前进、后退、左旋转、右旋转
|
private Handler handler = new Handler(new Handler.Callback() {
|
@Override
|
public boolean handleMessage(Message msg) {
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
short pwd = 0;
|
if (isGoForward) {
|
AgvAction agvAction = new AgvAction<>(ForwardBackAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) 50));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
handler.sendEmptyMessageDelayed(0, 100); // 100ms 后发送下一条消息
|
}
|
if (isGoBackward) {
|
AgvAction agvAction = new AgvAction<>(ForwardBackAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) -50));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
handler.sendEmptyMessageDelayed(0, 100);
|
}
|
if (isRotatopnRight) {
|
AgvAction agvAction = new AgvAction<>(RotatopnLeftRight.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) 50));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
handler.sendEmptyMessageDelayed(0, 100);
|
}
|
if (isRotatopnLeft) {
|
AgvAction agvAction = new AgvAction<>(RotatopnLeftRight.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) -50 ));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
handler.sendEmptyMessageDelayed(0, 100);
|
}
|
|
if (isRotatopnRight) {
|
AgvAction agvAction = new AgvAction<>(RotatopnLeftRight.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) 50));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
handler.sendEmptyMessageDelayed(0, 100);
|
}
|
if (isRotatopnLeft) {
|
AgvAction agvAction = new AgvAction<>(RotatopnLeftRight.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) -50 ));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
handler.sendEmptyMessageDelayed(0, 100);
|
}
|
return false;
|
}
|
});
|
|
String clientId;
|
NettyServerHandler nettyServerHandler;
|
|
@Override
|
protected void onCreate(Bundle savedInstanceState) {
|
super.onCreate(savedInstanceState);
|
setContentView(R.layout.activity_main);
|
|
// 按钮震动
|
vibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
|
stopBtn = findViewById(R.id.btn_stop);
|
// forceSwitchBtn = findViewById(R.id.btn_force_switch);
|
goForwardBtn = findViewById(R.id.btn_go_forward);
|
goBackwardBtn = findViewById(R.id.btn_go_backward);
|
rotatopnLeftBtn = findViewById(R.id.btn_rotatopn_left);
|
rotatopnRightBtn = findViewById(R.id.btn_rotatopn_right);
|
modelSwitchBtn = findViewById(R.id.btn_model_switch);
|
|
frontPaddleExtendBtn = findViewById(R.id.btn_front_paddle_extend); // 前拨杆
|
frontPaddleCollectBtn = findViewById(R.id.btn_front_paddle_collect); // 前拨杆
|
backPaddleExtendBtn = findViewById(R.id.btn_back_paddle_extend); // 后拨杆
|
backPaddleCollectBtn = findViewById(R.id.btn_back_paddle_collect); // 后拨杆
|
riseBtn = findViewById(R.id.btn_rise);
|
dropBtn = findViewById(R.id.btn_drop);
|
extendForkBtn = findViewById(R.id.btn_extend_fork);
|
collectForkBtn = findViewById(R.id.btn_collect_fork);
|
turnLeftBtn = findViewById(R.id.btn_turn_left);
|
turnRightBtn = findViewById(R.id.btn_turn_right);
|
|
bodySwitchBtn = findViewById(R.id.btn_body_switch);
|
|
layout_bottom = findViewById(R.id.layout_bottom);
|
layout_top = findViewById(R.id.layout_top);
|
layout_single = findViewById(R.id.layout_single);
|
layout_reset = findViewById(R.id.layout_reset);
|
|
switchBtn1 = findViewById(R.id.switch1);
|
switchBtn2 = findViewById(R.id.switch2);
|
switchBtn3 = findViewById(R.id.switch3);
|
switchBtn4 = findViewById(R.id.switch4);
|
switchBtn5 = findViewById(R.id.switch5);
|
switchBtn6 = findViewById(R.id.switch6);
|
switchBtn7 = findViewById(R.id.switch7);
|
switchBtn8 = findViewById(R.id.switch8);
|
switchBtn9 = findViewById(R.id.switch9);
|
|
axleFrontBtn1 =findViewById(R.id.btn_axle_1_front);
|
axleBackBtn1 =findViewById(R.id.btn_axle_1_back);
|
axleFrontBtn2 =findViewById(R.id.btn_axle_2_front);
|
axleBackBtn2 =findViewById(R.id.btn_axle_2_back);
|
axleFrontBtn3 =findViewById(R.id.btn_axle_3_front);
|
axleBackBtn3 =findViewById(R.id.btn_axle_3_back);
|
axleFrontBtn4 =findViewById(R.id.btn_axle_4_front);
|
axleBackBtn4 =findViewById(R.id.btn_axle_4_back);
|
axleFrontBtn5 =findViewById(R.id.btn_axle_5_front);
|
axleBackBtn5 =findViewById(R.id.btn_axle_5_back);
|
axleFrontBtn6 =findViewById(R.id.btn_axle_6_front);
|
axleBackBtn6 =findViewById(R.id.btn_axle_6_back);
|
axleFrontBtn7 =findViewById(R.id.btn_axle_7_front);
|
axleBackBtn7 =findViewById(R.id.btn_axle_7_back);
|
axleFrontBtn8 =findViewById(R.id.btn_axle_8_front);
|
axleBackBtn8 =findViewById(R.id.btn_axle_8_back);
|
axleFrontBtn9 =findViewById(R.id.btn_axle_9_front);
|
axleBackBtn9 =findViewById(R.id.btn_axle_9_back);
|
|
|
|
|
cameraResetBtn = findViewById(R.id.btn_camera_reset);
|
loadResetBtn = findViewById(R.id.btn_load_reset);
|
forkResetBtn = findViewById(R.id.btn_fork_reset);
|
gyroResetBtn = findViewById(R.id.btn_gyro_reset);
|
liftResetBtn = findViewById(R.id.btn_lift_reset);
|
allResetBtn = findViewById(R.id.btn_all_reset);
|
|
|
|
Intent intent = getIntent();
|
clientId = intent.getStringExtra("ip");
|
AgvNo = intent.getStringExtra("agvNo");
|
Log.i("message1",clientId);
|
|
// 前拨杆伸出
|
frontPaddleExtendBtn.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(FrontPaddle.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) 1));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
// 前拨杆收起
|
frontPaddleCollectBtn.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(FrontPaddle.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) 0));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
// 后拨杆伸出
|
backPaddleExtendBtn.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(BackPaddle.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) 1));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
// 后拨杆收起
|
backPaddleCollectBtn.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(BackPaddle.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) 0));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
// 上升
|
riseBtn.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
if (liftHeight <= 3200) {
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(HandLift.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) liftHeight));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
liftHeight += 100;
|
} else {
|
DialogUtil.showAlertDialog(MainActivity.this, "提示", "已超最大值!");
|
}
|
|
}
|
});
|
|
// 下降
|
dropBtn.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
|
if (liftHeight >= 400) {
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(HandLift.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) liftHeight));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
liftHeight -= 100;
|
} else {
|
DialogUtil.showAlertDialog(MainActivity.this, "提示", "已超最小值!");
|
}
|
}
|
});
|
|
// 伸出
|
extendForkBtn.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
if (extendWidth <= 450) {
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(HandExtendCollect.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) extendWidth));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
extendWidth += 50;
|
} else {
|
DialogUtil.showAlertDialog(MainActivity.this, "提示", "已超最大值!");
|
}
|
|
}
|
});
|
|
// 收叉
|
collectForkBtn.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
if (extendWidth >= -450) {
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(HandExtendCollect.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) extendWidth));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端户端
|
extendWidth -= 50;
|
} else {
|
DialogUtil.showAlertDialog(MainActivity.this, "提示", "已超最大值!");
|
}
|
}
|
});
|
|
// 左旋
|
turnLeftBtn.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
if (angle <= 91) {
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(HandForkRotatopn.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) 21));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
angle += 7;
|
} else {
|
DialogUtil.showAlertDialog(MainActivity.this, "提示", "已超最大值!");
|
}
|
}
|
});
|
|
// 右旋
|
turnRightBtn.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
if (angle >= -91) {
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(HandForkRotatopn.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) 21));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
angle -= 7;
|
} else {
|
DialogUtil.showAlertDialog(MainActivity.this, "提示", "已超最小值!");
|
}
|
|
}
|
});
|
|
// 相机复位按钮
|
cameraResetBtn.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(CameraResetAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) 1));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
// 路径清除按钮
|
loadResetBtn.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(LoadResetAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) 1));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
// 货叉归零按钮
|
forkResetBtn.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(ForkResetAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) 1));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
// 陀螺仪复位按钮
|
gyroResetBtn.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(GyroResetAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) 1));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
// 升降归零按钮
|
liftResetBtn.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(LiftResetAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) 1));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
// 整机复位按钮
|
allResetBtn.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(AllResetAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) 1));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
// 手自动模式开关
|
modelSwitchBtn.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
boolean result = false;
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
if (isAuto) {
|
AgvAction agvAction = new AgvAction<>(HandInAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(autoVal)
|
.bodySync((action) -> action.setPwd((short) 21));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
result = true;
|
isAuto = !isAuto;
|
} else {
|
AgvAction agvAction = new AgvAction<>(HandOutAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(autoVal)
|
.bodySync((action) -> action.setPwd((short) 21));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
result = true;
|
isAuto = !isAuto;
|
}
|
|
|
// long timestamp = System.currentTimeMillis();
|
// while (System.currentTimeMillis() - timestamp < 5000) {
|
//
|
// Object o = map.get(substring);
|
//
|
// if (null != o) {
|
// result = true;
|
// isAuto = !isAuto;
|
// map.remove(o);
|
// break;
|
// }
|
// }
|
|
if (result) {
|
// alert ok 修改按钮样式 名称
|
if (isAuto) {
|
modelSwitchBtn.setText("自动模式");
|
autoVal = 0;
|
// modelSwitchBtn.setBackgroundTintList(ColorStateList.valueOf(Color.RED));
|
} else {
|
autoVal = 1;
|
modelSwitchBtn.setText("手动模式");
|
}
|
|
} else {
|
// throw new TimeoutException("超时");
|
DialogUtil.showAlertDialog(MainActivity.this, "提示", "请求应答超时!");
|
}
|
}
|
});
|
|
switchBtn1.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
|
@Override
|
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
Log.d(TAG, "onCheckedChanged: " + isChecked);
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0, 16);
|
if (isChecked) {
|
AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) 0));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
axleFrontBtn1.setVisibility(View.VISIBLE);
|
axleBackBtn1.setVisibility(View.VISIBLE);
|
} else {
|
AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) 1));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
axleFrontBtn1.setVisibility(View.GONE);
|
axleBackBtn1.setVisibility(View.GONE);
|
}
|
}
|
});
|
|
switchBtn2.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
|
@Override
|
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
|
Log.d(TAG, "onCheckedChanged: " + isChecked);
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0, 16);
|
if (isChecked) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(2)
|
.bodySync((action) -> action.setPwd((short) 0));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
} else {
|
AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(2)
|
.bodySync((action) -> action.setPwd((short) 1));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
}
|
});
|
|
switchBtn3.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
|
@Override
|
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
|
Log.d(TAG, "onCheckedChanged: " + isChecked);
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0, 16);
|
if (isChecked) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(3)
|
.bodySync((action) -> action.setPwd((short) 0));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
} else {
|
AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(3)
|
.bodySync((action) -> action.setPwd((short) 1));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
}
|
});
|
|
switchBtn4.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
|
@Override
|
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
|
Log.d(TAG, "onCheckedChanged: " + isChecked);
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0, 16);
|
if (isChecked) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(4)
|
.bodySync((action) -> action.setPwd((short) 0));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
} else {
|
AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(4)
|
.bodySync((action) -> action.setPwd((short) 1));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
}
|
});
|
|
switchBtn5.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
|
@Override
|
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
|
Log.d(TAG, "onCheckedChanged: " + isChecked);
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0, 16);
|
if (isChecked) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(5)
|
.bodySync((action) -> action.setPwd((short) 1));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
axleFrontBtn5.setVisibility(View.VISIBLE);
|
axleBackBtn5.setVisibility(View.VISIBLE);
|
} else {
|
AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(5)
|
.bodySync((action) -> action.setPwd((short) 0));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
axleFrontBtn5.setVisibility(View.GONE);
|
axleBackBtn5.setVisibility(View.GONE);
|
}
|
}
|
});
|
|
switchBtn6.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
|
@Override
|
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
|
Log.d(TAG, "onCheckedChanged: " + isChecked);
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0, 16);
|
if (isChecked) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(6)
|
.bodySync((action) -> action.setPwd((short) 0));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
} else {
|
AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(6)
|
.bodySync((action) -> action.setPwd((short) 1));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
}
|
});
|
|
switchBtn7.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
|
@Override
|
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
|
Log.d(TAG, "onCheckedChanged: " + isChecked);
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0, 16);
|
if (isChecked) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(7)
|
.bodySync((action) -> action.setPwd((short) 0));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
} else {
|
AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(7)
|
.bodySync((action) -> action.setPwd((short) 1));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
}
|
});
|
|
switchBtn8.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
|
@Override
|
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
|
Log.d(TAG, "onCheckedChanged: " + isChecked);
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0, 16);
|
if (isChecked) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(8)
|
.bodySync((action) -> action.setPwd((short) 0));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
} else {
|
AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(8)
|
.bodySync((action) -> action.setPwd((short) 1));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
}
|
});
|
|
switchBtn9.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
|
@Override
|
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
|
Log.d(TAG, "onCheckedChanged: " + isChecked);
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0, 16);
|
if (isChecked) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(9)
|
.bodySync((action) -> action.setPwd((short) 0));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
} else {
|
AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(9)
|
.bodySync((action) -> action.setPwd((short) 1));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
}
|
});
|
|
|
axleFrontBtn1.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(SingleSwitchRunAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) 100));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
axleBackBtn1.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(SingleSwitchRunAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(1)
|
.bodySync((action) -> action.setPwd((short) -100));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
axleFrontBtn2.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(SingleSwitchRunAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(2)
|
.bodySync((action) -> action.setPwd((short) 100));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
axleBackBtn2.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(SingleSwitchRunAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(2)
|
.bodySync((action) -> action.setPwd((short) -100));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
axleFrontBtn3.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(SingleSwitchRunAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(3)
|
.bodySync((action) -> action.setPwd((short) 100));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
axleBackBtn3.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(SingleSwitchRunAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(3)
|
.bodySync((action) -> action.setPwd((short) -100));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
axleFrontBtn4.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(SingleSwitchRunAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(4)
|
.bodySync((action) -> action.setPwd((short) 100));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
axleBackBtn4.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(SingleSwitchRunAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(4)
|
.bodySync((action) -> action.setPwd((short) -100));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
axleFrontBtn5.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(SingleSwitchRunAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(5)
|
.bodySync((action) -> action.setPwd((short) 99));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
axleBackBtn5.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(SingleSwitchRunAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(5)
|
.bodySync((action) -> action.setPwd((short) -99));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
axleFrontBtn6.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(SingleSwitchRunAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(6)
|
.bodySync((action) -> action.setPwd((short) 100));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
axleBackBtn6.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(SingleSwitchRunAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(6)
|
.bodySync((action) -> action.setPwd((short) -100));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
axleFrontBtn7.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(SingleSwitchRunAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(7)
|
.bodySync((action) -> action.setPwd((short) 100));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
axleBackBtn7.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(SingleSwitchRunAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(7)
|
.bodySync((action) -> action.setPwd((short) -100));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
axleFrontBtn8.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(SingleSwitchRunAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(8)
|
.bodySync((action) -> action.setPwd((short) 100));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
axleBackBtn8.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(SingleSwitchRunAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(8)
|
.bodySync((action) -> action.setPwd((short) -100));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
axleFrontBtn9.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(SingleSwitchRunAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(9)
|
.bodySync((action) -> action.setPwd((short) 100));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
axleBackBtn9.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View v) {
|
if (vibrator != null && vibrator.hasVibrator()) {
|
vibrator.vibrate(500);
|
}
|
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
|
AgvAction agvAction = new AgvAction<>(SingleSwitchRunAction.class)
|
.setAgvNo(AgvNo)
|
.setSerialNo(substring)
|
.setVal(9)
|
.bodySync((action) -> action.setPwd((short) -100));
|
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端
|
}
|
});
|
|
// 点动按钮
|
stopBtn.setOnTouchListener(new CarTouchButton());
|
goForwardBtn.setOnTouchListener(new CarTouchButton());
|
goBackwardBtn.setOnTouchListener(new CarTouchButton());
|
rotatopnLeftBtn.setOnTouchListener(new CarTouchButton());
|
rotatopnRightBtn.setOnTouchListener(new CarTouchButton());
|
|
axleFrontBtn1.setOnTouchListener(new CarTouchButton());
|
axleBackBtn1.setOnTouchListener(new CarTouchButton());
|
axleFrontBtn2.setOnTouchListener(new CarTouchButton());
|
axleBackBtn2.setOnTouchListener(new CarTouchButton());
|
axleFrontBtn3.setOnTouchListener(new CarTouchButton());
|
axleBackBtn3.setOnTouchListener(new CarTouchButton());
|
axleFrontBtn4.setOnTouchListener(new CarTouchButton());
|
axleBackBtn4.setOnTouchListener(new CarTouchButton());
|
axleFrontBtn5.setOnTouchListener(new CarTouchButton());
|
axleBackBtn5.setOnTouchListener(new CarTouchButton());
|
axleFrontBtn6.setOnTouchListener(new CarTouchButton());
|
axleBackBtn6.setOnTouchListener(new CarTouchButton());
|
axleFrontBtn7.setOnTouchListener(new CarTouchButton());
|
axleBackBtn7.setOnTouchListener(new CarTouchButton());
|
axleFrontBtn8.setOnTouchListener(new CarTouchButton());
|
axleBackBtn8.setOnTouchListener(new CarTouchButton());
|
axleFrontBtn9.setOnTouchListener(new CarTouchButton());
|
axleBackBtn9.setOnTouchListener(new CarTouchButton());
|
|
|
}
|
|
private class CarTouchButton implements View.OnTouchListener {
|
|
@Override
|
public boolean onTouch(View view, MotionEvent motionEvent) {
|
if (view.getId() == R.id.btn_go_forward) {
|
// 前进
|
if (motionEvent.getAction() == KeyEvent.ACTION_DOWN) {
|
isGoForward = true;
|
handler.sendEmptyMessage(0);
|
} else if (motionEvent.getAction() == KeyEvent.ACTION_UP) {
|
isGoForward = false;
|
}
|
} else if (view.getId() == R.id.btn_go_backward) {
|
// 后退
|
if (motionEvent.getAction() == KeyEvent.ACTION_DOWN) {
|
isGoBackward = true;
|
handler.sendEmptyMessage(0);
|
} else if (motionEvent.getAction() == KeyEvent.ACTION_UP) {
|
isGoBackward = false;
|
}
|
|
} else if (view.getId() == R.id.btn_rotatopn_left) {
|
// 左旋转
|
if (motionEvent.getAction() == KeyEvent.ACTION_DOWN) {
|
isRotatopnLeft = true;
|
handler.sendEmptyMessage(0);
|
} else if (motionEvent.getAction() == KeyEvent.ACTION_UP) {
|
isRotatopnLeft = false;
|
}
|
|
} else if (view.getId() == R.id.btn_rotatopn_right) {
|
// 右旋转
|
if (motionEvent.getAction() == KeyEvent.ACTION_DOWN) {
|
isRotatopnRight = true;
|
handler.sendEmptyMessage(0);
|
} else if (motionEvent.getAction() == KeyEvent.ACTION_UP) {
|
isRotatopnRight = false;
|
}
|
} else if (view.getId() == R.id.btn_rotatopn_right) {
|
// 轴动按钮
|
if (motionEvent.getAction() == KeyEvent.ACTION_DOWN) {
|
isRotatopnRight = true;
|
handler.sendEmptyMessage(0);
|
} else if (motionEvent.getAction() == KeyEvent.ACTION_UP) {
|
isRotatopnRight = false;
|
}
|
}
|
|
|
return false;
|
|
}
|
}
|
|
private boolean isVisble = true;
|
|
// 货叉等按钮
|
public void switchover(View view) {
|
if (isVisble) {
|
layout_bottom.setVisibility(View.GONE);
|
layout_top.setVisibility(View.VISIBLE);
|
bodySwitchBtn.setText("货叉");
|
} else {
|
layout_bottom.setVisibility(View.VISIBLE);
|
layout_top.setVisibility(View.GONE);
|
bodySwitchBtn.setText("底盘");
|
}
|
isVisble = !isVisble;
|
|
layout_single.setVisibility(View.GONE);
|
layout_reset.setVisibility(View.GONE);
|
|
}
|
|
// 单轴使能按钮
|
public void switchSingle(View view) {
|
layout_bottom.setVisibility(View.GONE);
|
layout_top.setVisibility(View.GONE);
|
layout_single.setVisibility(View.VISIBLE);
|
layout_reset.setVisibility(View.GONE);
|
}
|
|
// 复位按钮
|
public void switchRest(View view) {
|
layout_bottom.setVisibility(View.GONE);
|
layout_top.setVisibility(View.GONE);
|
layout_single.setVisibility(View.GONE);
|
layout_reset.setVisibility(View.VISIBLE);
|
}
|
|
@Override
|
protected void onDestroy() {
|
super.onDestroy();
|
//SocketManager.getInstance().disconnect();
|
//SocketManager.getInstance().stopServer();
|
//socketManager.stopServer(); // 停止服务器
|
}
|
}
|