style: 代码格式化

This commit is contained in:
niushuai233 2022-10-25 14:56:22 +08:00
parent 3f376200e5
commit 1968904318
17 changed files with 148 additions and 179 deletions

View File

@ -7,8 +7,6 @@ import androidx.navigation.NavController;
import androidx.navigation.Navigation; import androidx.navigation.Navigation;
import androidx.navigation.ui.NavigationUI; import androidx.navigation.ui.NavigationUI;
import com.google.android.material.bottomnavigation.BottomNavigationView;
import cc.niushuai.project.devcontrol.base.App; import cc.niushuai.project.devcontrol.base.App;
import cc.niushuai.project.devcontrol.databinding.ActivityMainBinding; import cc.niushuai.project.devcontrol.databinding.ActivityMainBinding;

View File

@ -1,7 +1,5 @@
package cc.niushuai.project.devcontrol.base.enums; package cc.niushuai.project.devcontrol.base.enums;
import android.widget.TextView;
import cc.niushuai.project.devcontrol.R; import cc.niushuai.project.devcontrol.R;
import cc.niushuai.project.devcontrol.base.ui.BaseActivity; import cc.niushuai.project.devcontrol.base.ui.BaseActivity;
import cc.niushuai.project.devcontrol.ui.custom.DeviceCustomActivity; import cc.niushuai.project.devcontrol.ui.custom.DeviceCustomActivity;

View File

@ -14,14 +14,6 @@ public enum OnOffEnum {
this.text = text; this.text = text;
} }
public String getValue() {
return value;
}
public String getText() {
return text;
}
public static OnOffEnum matchByValue(String value) { public static OnOffEnum matchByValue(String value) {
for (OnOffEnum onOffEnum : OnOffEnum.values()) { for (OnOffEnum onOffEnum : OnOffEnum.values()) {
if (onOffEnum.getValue().equals(value)) { if (onOffEnum.getValue().equals(value)) {
@ -30,4 +22,12 @@ public enum OnOffEnum {
} }
return null; return null;
} }
public String getValue() {
return value;
}
public String getText() {
return text;
}
} }

View File

@ -3,7 +3,7 @@ package cc.niushuai.project.devcontrol.base.enums;
public enum YesNoEnum { public enum YesNoEnum {
YES("1", 1, ""), YES("1", 1, ""),
NO("0",0, ""), NO("0", 0, ""),
; ;
private String value; private String value;
@ -16,6 +16,15 @@ public enum YesNoEnum {
this.text = text; this.text = text;
} }
public static YesNoEnum matchByValue(String value) {
for (YesNoEnum onOffEnum : YesNoEnum.values()) {
if (onOffEnum.getValue().equals(value)) {
return onOffEnum;
}
}
return null;
}
public String getValue() { public String getValue() {
return value; return value;
} }
@ -27,13 +36,4 @@ public enum YesNoEnum {
public String getText() { public String getText() {
return text; return text;
} }
public static YesNoEnum matchByValue(String value) {
for (YesNoEnum onOffEnum : YesNoEnum.values()) {
if (onOffEnum.getValue().equals(value)) {
return onOffEnum;
}
}
return null;
}
} }

View File

@ -9,11 +9,11 @@ import androidx.appcompat.widget.AppCompatImageButton;
import java.util.Map; import java.util.Map;
import cc.niushuai.project.devcontrol.R; import cc.niushuai.project.devcontrol.R;
import cc.niushuai.project.devcontrol.base.util.GlobalVariables;
import cc.niushuai.project.devcontrol.vo.DeviceInfo;
import cc.niushuai.project.devcontrol.base.util.ActivityUtil; import cc.niushuai.project.devcontrol.base.util.ActivityUtil;
import cc.niushuai.project.devcontrol.base.util.GlobalVariables;
import cc.niushuai.project.devcontrol.base.util.Keys; import cc.niushuai.project.devcontrol.base.util.Keys;
import cc.niushuai.project.devcontrol.base.util.UiUtil; import cc.niushuai.project.devcontrol.base.util.UiUtil;
import cc.niushuai.project.devcontrol.vo.DeviceInfo;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
/** /**

View File

@ -2,7 +2,6 @@ package cc.niushuai.project.devcontrol.base.util;
import android.app.Activity; import android.app.Activity;
import android.content.Intent; import android.content.Intent;
import android.os.Bundle;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;

View File

@ -4,10 +4,10 @@ import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import cc.niushuai.project.devcontrol.base.ui.BaseActivity;
import cc.niushuai.project.devcontrol.db.DB; import cc.niushuai.project.devcontrol.db.DB;
import cc.niushuai.project.devcontrol.db.entity.Device; import cc.niushuai.project.devcontrol.db.entity.Device;
import cc.niushuai.project.devcontrol.vo.DeviceInfo; import cc.niushuai.project.devcontrol.vo.DeviceInfo;
import cc.niushuai.project.devcontrol.base.ui.BaseActivity;
public class GlobalVariables { public class GlobalVariables {
@ -35,6 +35,7 @@ public class GlobalVariables {
public static Class<? extends BaseActivity> getDeviceAddActivity(String deviceId) { public static Class<? extends BaseActivity> getDeviceAddActivity(String deviceId) {
return getDeviceInfo(deviceId).getDeviceType().getDeviceAddActivity(); return getDeviceInfo(deviceId).getDeviceType().getDeviceAddActivity();
} }
public static Class<? extends BaseActivity> getDeviceOperateActivity(String deviceId) { public static Class<? extends BaseActivity> getDeviceOperateActivity(String deviceId) {
return getDeviceInfo(deviceId).getDeviceType().getDeviceOperateActivity(); return getDeviceInfo(deviceId).getDeviceType().getDeviceOperateActivity();
} }

View File

@ -9,6 +9,26 @@ public class IdWorker {
private long datacenterId; //数据id private long datacenterId; //数据id
//12位的序列号 //12位的序列号
private long sequence; private long sequence;
//初始时间戳
private long twepoch = 1288834974657L;
//长度为5位
private long workerIdBits = 5L;
private long datacenterIdBits = 5L;
//最大值
private long maxWorkerId = -1L ^ (-1L << workerIdBits);
private long maxDatacenterId = -1L ^ (-1L << datacenterIdBits);
//序列号id长度
private long sequenceBits = 12L;
//序列号最大值
private long sequenceMask = -1L ^ (-1L << sequenceBits);
//工作id需要左移的位数12位
private long workerIdShift = sequenceBits;
//数据id需要左移位数 12+5=17位
private long datacenterIdShift = sequenceBits + workerIdBits;
//时间戳需要左移位数 12+5+5=22位
private long timestampLeftShift = sequenceBits + workerIdBits + datacenterIdBits;
//上次时间戳初始值为负数
private long lastTimestamp = -1L;
public IdWorker(long workerId, long datacenterId, long sequence) { public IdWorker(long workerId, long datacenterId, long sequence) {
// sanity check for workerId // sanity check for workerId
@ -26,29 +46,21 @@ public class IdWorker {
this.sequence = sequence; this.sequence = sequence;
} }
//初始时间戳 //---------------测试---------------
private long twepoch = 1288834974657L; public static void main(String[] args) {
IdWorker worker = new IdWorker(1, 1, 1);
for (int i = 0; i < 30; i++) {
System.out.println(worker.nextId());
}
}
//长度为5位 public static long getNextId() {
private long workerIdBits = 5L; return INSTANCE.nextId();
private long datacenterIdBits = 5L; }
//最大值
private long maxWorkerId = -1L ^ (-1L << workerIdBits);
private long maxDatacenterId = -1L ^ (-1L << datacenterIdBits);
//序列号id长度
private long sequenceBits = 12L;
//序列号最大值
private long sequenceMask = -1L ^ (-1L << sequenceBits);
//工作id需要左移的位数12位 public static String getNextIdStr() {
private long workerIdShift = sequenceBits; return getNextId() + "";
//数据id需要左移位数 12+5=17位 }
private long datacenterIdShift = sequenceBits + workerIdBits;
//时间戳需要左移位数 12+5+5=22位
private long timestampLeftShift = sequenceBits + workerIdBits + datacenterIdBits;
//上次时间戳初始值为负数
private long lastTimestamp = -1L;
public long getWorkerId() { public long getWorkerId() {
return workerId; return workerId;
@ -113,20 +125,4 @@ public class IdWorker {
private long timeGen() { private long timeGen() {
return System.currentTimeMillis(); return System.currentTimeMillis();
} }
//---------------测试---------------
public static void main(String[] args) {
IdWorker worker = new IdWorker(1, 1, 1);
for (int i = 0; i < 30; i++) {
System.out.println(worker.nextId());
}
}
public static long getNextId() {
return INSTANCE.nextId();
}
public static String getNextIdStr() {
return getNextId() + "";
}
} }

View File

@ -4,7 +4,6 @@ import android.app.Activity;
import android.content.Context; import android.content.Context;
import android.content.res.Resources; import android.content.res.Resources;
import android.util.TypedValue; import android.util.TypedValue;
import android.view.View;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.TextView; import android.widget.TextView;

View File

@ -19,7 +19,10 @@ public class DB {
private static boolean INIT_FLAG = false; private static boolean INIT_FLAG = false;
private static DB db; private static DB db;
private Context context;
private DaoMaster.OpenHelper openHelper;
private DaoMaster daoMaster;
private DaoSession daoSession;
private DB() { private DB() {
} }
@ -30,10 +33,27 @@ public class DB {
return db; return db;
} }
private Context context; /**
private DaoMaster.OpenHelper openHelper; * daoSession 对外暴漏入口
private DaoMaster daoMaster; *
private DaoSession daoSession; * @author niushuai
* @date: 2022/10/24 11:04
* @return: {@link DaoSession}
*/
public static DaoSession session() {
return DB.getInstance().getDaoSession();
}
/**
* 设备操作入口
*
* @author niushuai
* @date: 2022/10/24 11:05
* @return: {@link DeviceDao}
*/
public static DeviceDao getDeviceDao() {
return session().getDeviceDao();
}
/** /**
* 初始化数据库表结构 * 初始化数据库表结构
@ -80,26 +100,4 @@ public class DB {
} }
return daoSession; return daoSession;
} }
/**
* daoSession 对外暴漏入口
*
* @author niushuai
* @date: 2022/10/24 11:04
* @return: {@link DaoSession}
*/
public static DaoSession session() {
return DB.getInstance().getDaoSession();
}
/**
* 设备操作入口
*
* @author niushuai
* @date: 2022/10/24 11:05
* @return: {@link DeviceDao}
*/
public static DeviceDao getDeviceDao() {
return session().getDeviceDao();
}
} }

View File

@ -1,8 +1,8 @@
package cc.niushuai.project.devcontrol.db.entity; package cc.niushuai.project.devcontrol.db.entity;
import org.greenrobot.greendao.annotation.Entity; import org.greenrobot.greendao.annotation.Entity;
import org.greenrobot.greendao.annotation.Id;
import org.greenrobot.greendao.annotation.Generated; import org.greenrobot.greendao.annotation.Generated;
import org.greenrobot.greendao.annotation.Id;
import org.greenrobot.greendao.annotation.Index; import org.greenrobot.greendao.annotation.Index;
/** /**
@ -52,7 +52,7 @@ public class CommandExt {
@Generated(hash = 704236641) @Generated(hash = 704236641)
public CommandExt(Long id, Long deviceId, String key, String command, public CommandExt(Long id, Long deviceId, String key, String command,
Integer order, String remark, String createTime) { Integer order, String remark, String createTime) {
this.id = id; this.id = id;
this.deviceId = deviceId; this.deviceId = deviceId;
this.key = key; this.key = key;

View File

@ -1,7 +1,6 @@
package cc.niushuai.project.devcontrol.db.entity; package cc.niushuai.project.devcontrol.db.entity;
import org.greenrobot.greendao.annotation.Entity; import org.greenrobot.greendao.annotation.Entity;
import org.greenrobot.greendao.annotation.Generated; import org.greenrobot.greendao.annotation.Generated;
import org.greenrobot.greendao.annotation.Id; import org.greenrobot.greendao.annotation.Id;
@ -86,9 +85,9 @@ public class Device implements Serializable {
@Generated(hash = 1723639212) @Generated(hash = 1723639212)
public Device(Long id, Integer order, String deviceName, String deviceType, public Device(Long id, Integer order, String deviceName, String deviceType,
String onOff, Integer iconId, String commandPath, String commandStatus, String onOff, Integer iconId, String commandPath, String commandStatus,
String commandOpen, String commandClose, Integer isDeleted, String commandOpen, String commandClose, Integer isDeleted,
String remark, String createTime) { String remark, String createTime) {
this.id = id; this.id = id;
this.order = order; this.order = order;
this.deviceName = deviceName; this.deviceName = deviceName;

View File

@ -3,29 +3,22 @@ package cc.niushuai.project.devcontrol.ui.deviceadd;
import android.os.Bundle; import android.os.Bundle;
import android.view.View; import android.view.View;
import android.widget.TextView;
import androidx.annotation.NonNull;
import cc.niushuai.project.devcontrol.R; import cc.niushuai.project.devcontrol.R;
import cc.niushuai.project.devcontrol.base.enums.YesNoEnum;
import cc.niushuai.project.devcontrol.base.util.CommonUiUtil;
import cc.niushuai.project.devcontrol.base.util.IdWorker;
import cc.niushuai.project.devcontrol.base.util.UiUtil;
import cc.niushuai.project.devcontrol.db.DB;
import cc.niushuai.project.devcontrol.db.entity.Device;
import cc.niushuai.project.devcontrol.vo.DeviceInfo;
import cc.niushuai.project.devcontrol.base.enums.DeviceTypeEnum; import cc.niushuai.project.devcontrol.base.enums.DeviceTypeEnum;
import cc.niushuai.project.devcontrol.base.enums.OnOffEnum; import cc.niushuai.project.devcontrol.base.enums.OnOffEnum;
import cc.niushuai.project.devcontrol.base.enums.YesNoEnum;
import cc.niushuai.project.devcontrol.base.ui.BaseActivity; import cc.niushuai.project.devcontrol.base.ui.BaseActivity;
import cc.niushuai.project.devcontrol.base.util.ActivityUtil; import cc.niushuai.project.devcontrol.base.util.ActivityUtil;
import cc.niushuai.project.devcontrol.base.util.GlobalVariables; import cc.niushuai.project.devcontrol.base.util.CommonUiUtil;
import cc.niushuai.project.devcontrol.base.util.IdWorker;
import cc.niushuai.project.devcontrol.base.util.Keys; import cc.niushuai.project.devcontrol.base.util.Keys;
import cc.niushuai.project.devcontrol.base.util.ToastUtil; import cc.niushuai.project.devcontrol.base.util.ToastUtil;
import cc.niushuai.project.devcontrol.databinding.ActivityDeviceAddPowerSwitchBinding; import cc.niushuai.project.devcontrol.databinding.ActivityDeviceAddPowerSwitchBinding;
import cc.niushuai.project.devcontrol.db.DB;
import cc.niushuai.project.devcontrol.db.entity.Device;
import cc.niushuai.project.devcontrol.ui.powerswitch.PowerSwitchActivity; import cc.niushuai.project.devcontrol.ui.powerswitch.PowerSwitchActivity;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
public class DeviceAddPowerSwitchActivity extends BaseActivity { public class DeviceAddPowerSwitchActivity extends BaseActivity {

View File

@ -16,7 +16,6 @@ import androidx.fragment.app.Fragment;
import androidx.lifecycle.ViewModelProvider; import androidx.lifecycle.ViewModelProvider;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Comparator;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;

View File

@ -2,7 +2,6 @@ package cc.niushuai.project.devcontrol.ui.powerswitch;
import android.os.Bundle; import android.os.Bundle;
import android.view.View; import android.view.View;
import android.widget.Toast;
import java.util.HashMap; import java.util.HashMap;

View File

@ -2,24 +2,15 @@ package cc.niushuai.project.devcontrol.ui.powerswitch;
import android.os.Bundle; import android.os.Bundle;
import android.view.View; import android.view.View;
import android.widget.TextView;
import android.widget.Toast;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import java.util.Date;
import cc.niushuai.project.devcontrol.R; import cc.niushuai.project.devcontrol.R;
import cc.niushuai.project.devcontrol.base.enums.DeviceTypeEnum;
import cc.niushuai.project.devcontrol.base.enums.OnOffEnum;
import cc.niushuai.project.devcontrol.base.ui.BaseActivity; import cc.niushuai.project.devcontrol.base.ui.BaseActivity;
import cc.niushuai.project.devcontrol.base.util.CommonUiUtil; import cc.niushuai.project.devcontrol.base.util.CommonUiUtil;
import cc.niushuai.project.devcontrol.base.util.GlobalVariables; import cc.niushuai.project.devcontrol.base.util.GlobalVariables;
import cc.niushuai.project.devcontrol.base.util.ToastUtil;
import cc.niushuai.project.devcontrol.base.util.UiUtil;
import cc.niushuai.project.devcontrol.databinding.ActivityPowerSwitchSetParamBinding; import cc.niushuai.project.devcontrol.databinding.ActivityPowerSwitchSetParamBinding;
import cc.niushuai.project.devcontrol.db.DB; import cc.niushuai.project.devcontrol.db.DB;
import cc.niushuai.project.devcontrol.db.entity.Device;
import cc.niushuai.project.devcontrol.vo.DeviceInfo; import cc.niushuai.project.devcontrol.vo.DeviceInfo;
public class PowerSwitchSetParamActivity extends BaseActivity { public class PowerSwitchSetParamActivity extends BaseActivity {

View File

@ -72,6 +72,63 @@ public class DeviceInfo extends BaseVO {
*/ */
private Integer order; private Integer order;
/**
* mock 假数据
*
* @author niushuai
* @date: 2022/10/17 17:02
* @return: {@link List<DeviceInfo>}
*/
public static List<DeviceInfo> mock(int size, int iconId) {
List<DeviceInfo> list = new ArrayList<>();
for (int i = 0; i < size; i++) {
DeviceInfo device = new DeviceInfo();
device.setId(IdWorker.getNextIdStr());
device.setDeviceName("卧室灯开关" + (i + 1));
device.setIconId(iconId);
device.setRemark("卧室灯开关-树莓派");
device.setDeviceType(DeviceTypeEnum.Power_Switch);
device.setOnOff(OnOffEnum.OFF);
device.setCommandPath("/path/file");
device.setCommandOpen("-c light -t 1");
device.setCommandClose("-c light -t 0");
list.add(device);
GlobalVariables.DEVICE_INFO_MAP.put(device.getId(), device);
}
return list;
}
/**
* device to deviceInfo
*
* @param device
* @author niushuai
* @date: 2022/10/25 14:13
* @return: {@link DeviceInfo}
*/
public static DeviceInfo parseDevice(Device device) {
DeviceInfo _this = new DeviceInfo();
_this.setId(device.getId() + "");
_this.setDeviceName(device.getDeviceName());
_this.setDeviceType(DeviceTypeEnum.matchByValue(device.getDeviceType()));
_this.setOnOff(OnOffEnum.matchByValue(device.getOnOff()));
_this.setRemark(device.getRemark());
_this.setIconId(device.getIconId());
_this.setCommandPath(device.getCommandPath());
_this.setCommandStatus(device.getCommandStatus());
_this.setCommandOpen(device.getCommandOpen());
_this.setCommandClose(device.getCommandClose());
_this.setOrder(device.getOrder());
_this.setIsDeleted(device.getIsDeleted());
_this.setCreateTime(DateFormatUtil.parseDateTime(device.getCreateTime()));
return _this;
}
public Integer getOrder() { public Integer getOrder() {
return order; return order;
} }
@ -152,64 +209,6 @@ public class DeviceInfo extends BaseVO {
this.commandExtra = commandExtra; this.commandExtra = commandExtra;
} }
/**
* mock 假数据
*
* @author niushuai
* @date: 2022/10/17 17:02
* @return: {@link List<DeviceInfo>}
*/
public static List<DeviceInfo> mock(int size, int iconId) {
List<DeviceInfo> list = new ArrayList<>();
for (int i = 0; i < size; i++) {
DeviceInfo device = new DeviceInfo();
device.setId(IdWorker.getNextIdStr());
device.setDeviceName("卧室灯开关" + (i + 1));
device.setIconId(iconId);
device.setRemark("卧室灯开关-树莓派");
device.setDeviceType(DeviceTypeEnum.Power_Switch);
device.setOnOff(OnOffEnum.OFF);
device.setCommandPath("/path/file");
device.setCommandOpen("-c light -t 1");
device.setCommandClose("-c light -t 0");
list.add(device);
GlobalVariables.DEVICE_INFO_MAP.put(device.getId(), device);
}
return list;
}
/**
* device to deviceInfo
*
* @param device
* @author niushuai
* @date: 2022/10/25 14:13
* @return: {@link DeviceInfo}
*/
public static DeviceInfo parseDevice(Device device) {
DeviceInfo _this = new DeviceInfo();
_this.setId(device.getId() + "");
_this.setDeviceName(device.getDeviceName());
_this.setDeviceType(DeviceTypeEnum.matchByValue(device.getDeviceType()));
_this.setOnOff(OnOffEnum.matchByValue(device.getOnOff()));
_this.setRemark(device.getRemark());
_this.setIconId(device.getIconId());
_this.setCommandPath(device.getCommandPath());
_this.setCommandStatus(device.getCommandStatus());
_this.setCommandOpen(device.getCommandOpen());
_this.setCommandClose(device.getCommandClose());
_this.setOrder(device.getOrder());
_this.setIsDeleted(device.getIsDeleted());
_this.setCreateTime(DateFormatUtil.parseDateTime(device.getCreateTime()));
return _this;
}
/** /**
* deviceInfo to device * deviceInfo to device
* *