登录日志

这个提交包含在:
xuqm 2023-05-31 17:03:51 +08:00
父节点 0e0fcfb527
当前提交 e6f0bbc4d0
共有 7 个文件被更改,包括 58 次插入160 次删除

查看文件

@ -7,12 +7,12 @@ import com.google.gson.JsonSerializer;
import java.lang.reflect.Type;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.time.ZoneOffset;
public class LocalDateAdapter implements JsonSerializer<LocalDateTime> {
@Override
public JsonElement serialize(LocalDateTime localDateTime, Type type, JsonSerializationContext jsonSerializationContext) {
return new JsonPrimitive(localDateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
return new JsonPrimitive(localDateTime.toInstant(ZoneOffset.ofHours(8)).toEpochMilli());
}
}

查看文件

@ -1,9 +1,13 @@
package cn.org.bjca.trust.java.imserver.entitys;
import jakarta.persistence.Entity;
import lombok.Data;
import org.springframework.lang.NonNull;
public class DeviceEntity {
@Entity
@Data
public class DeviceEntity extends AbstractBaseTimeEntity {
private int _uid;
private String deviceId;
// 厂商 MANUFACTURER
@ -22,100 +26,4 @@ public class DeviceEntity {
private String supported64BitAbis;
// SUPPORTED_ABIS
private String supportedAbis;
public void set_uid(int _uid) {
this._uid = _uid;
}
public int get_uid() {
return _uid;
}
public String getDeviceId() {
return deviceId;
}
public void setDeviceId(String deviceId) {
this.deviceId = deviceId;
}
public String getManufacturer() {
return manufacturer;
}
public void setManufacturer(String manufacturer) {
this.manufacturer = manufacturer;
}
public String getBrand() {
return brand;
}
public void setBrand(String brand) {
this.brand = brand;
}
public String getModel() {
return model;
}
public void setModel(String model) {
this.model = model;
}
public String getCpuAbi() {
return cpuAbi;
}
public void setCpuAbi(String cpuAbi) {
this.cpuAbi = cpuAbi;
}
public String getFingerprint() {
return fingerprint;
}
public void setFingerprint(String fingerprint) {
this.fingerprint = fingerprint;
}
public String getSupported32BitAbis() {
return supported32BitAbis;
}
public void setSupported32BitAbis(String supported32BitAbis) {
this.supported32BitAbis = supported32BitAbis;
}
public String getSupported64BitAbis() {
return supported64BitAbis;
}
public void setSupported64BitAbis(String supported64BitAbis) {
this.supported64BitAbis = supported64BitAbis;
}
public String getSupportedAbis() {
return supportedAbis;
}
public void setSupportedAbis(String supportedAbis) {
this.supportedAbis = supportedAbis;
}
@NonNull
@Override
public String toString() {
return "DeviceEntity{" +
"deviceId='" + deviceId + '\'' +
", manufacturer='" + manufacturer + '\'' +
", brand='" + brand + '\'' +
", model='" + model + '\'' +
", cpuAbi='" + cpuAbi + '\'' +
", fingerprint='" + fingerprint + '\'' +
", supported32BitAbis='" + supported32BitAbis + '\'' +
", supported64BitAbis='" + supported64BitAbis + '\'' +
", supportedAbis='" + supportedAbis + '\'' +
'}';
}
}

查看文件

@ -9,6 +9,7 @@ import cn.org.bjca.trust.java.imserver.im.msg.ConnectMessage;
import cn.org.bjca.trust.java.imserver.im.msg.ConnectedMessage;
import cn.org.bjca.trust.java.imserver.im.msg.msg.SZYXMessage;
import cn.org.bjca.trust.java.imserver.im.msg.msg.SendAckMessage;
import cn.org.bjca.trust.java.imserver.repository.ConnectRepository;
import cn.org.bjca.trust.java.imserver.repository.MessageRepository;
import cn.org.bjca.trust.java.imserver.repository.UserRepository;
import org.eclipse.paho.client.mqttv3.*;
@ -20,6 +21,7 @@ public class ImManager {
private final UserRepository userRepository = SpringUtilsAuTo.getBean(UserRepository.class);
private final MessageRepository messageRepository = SpringUtilsAuTo.getBean(MessageRepository.class);
private final ConnectRepository connectRepository = SpringUtilsAuTo.getBean(ConnectRepository.class);
public static ImManager getInstance() {
return ImManagerHolder.instance;
@ -125,6 +127,11 @@ public class ImManager {
private void sendConnectedMsg(ConnectMessage connectMessage) {
try {
connectRepository.save(connectMessage.copy());
} catch (Exception ignored) {
}
ConnectedMessage message = new ConnectedMessage();
message.setStatus(200);
message.setAppId(connectMessage.getAppId());

查看文件

@ -4,11 +4,21 @@ package cn.org.bjca.trust.java.imserver.im.msg;
import cn.org.bjca.trust.java.imserver.entitys.DeviceEntity;
import cn.org.bjca.trust.java.imserver.enums.PacketType;
import cn.org.bjca.trust.java.imserver.im.bean.PacketMessage;
import jakarta.persistence.CascadeType;
import jakarta.persistence.Entity;
import jakarta.persistence.JoinColumn;
import jakarta.persistence.OneToOne;
import lombok.Data;
@Entity
@Data
public class ConnectMessage extends PacketMessage {
public ConnectMessage() {
super(PacketType.CONNECT);
}
@OneToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "device_id", referencedColumnName = "_id")
private DeviceEntity device;
public ConnectMessage(DeviceEntity device) {
@ -16,11 +26,27 @@ public class ConnectMessage extends PacketMessage {
this.device = device;
}
public DeviceEntity getDevice() {
return device;
}
public ConnectMessage copy() {
ConnectMessage connectMessage = new ConnectMessage();
connectMessage.setMsgId(this.getMsgId());
connectMessage.setPacketType(this.getPacketType());
connectMessage.setTimestamp(this.getTimestamp());
connectMessage.setUserName(this.getUserName());
connectMessage.setAppId(this.getAppId());
DeviceEntity deviceEntity = new DeviceEntity();
public void setDevice(DeviceEntity device) {
this.device = device;
deviceEntity.setDeviceId(this.getDevice().getDeviceId());
deviceEntity.set_uid(this.getDevice().get_uid());
deviceEntity.setModel(this.getDevice().getModel());
deviceEntity.setBrand(this.getDevice().getBrand());
deviceEntity.setCpuAbi(this.getDevice().getCpuAbi());
deviceEntity.setFingerprint(this.getDevice().getFingerprint());
deviceEntity.setManufacturer(this.getDevice().getManufacturer());
deviceEntity.setSupportedAbis(this.getDevice().getSupportedAbis());
deviceEntity.setSupported32BitAbis(this.getDevice().getSupported32BitAbis());
deviceEntity.setSupported64BitAbis(this.getDevice().getSupported64BitAbis());
connectMessage.setDevice(deviceEntity);
return connectMessage;
}
}

查看文件

@ -1,26 +0,0 @@
package cn.org.bjca.trust.java.imserver.im.msg.msg;
import cn.org.bjca.trust.java.imserver.entitys.DeviceEntity;
import cn.org.bjca.trust.java.imserver.enums.PacketType;
import cn.org.bjca.trust.java.imserver.im.bean.PacketMessage;
public class ConnectMessage extends PacketMessage {
public ConnectMessage() {
super(PacketType.CONNECT);
}
private DeviceEntity device;
public ConnectMessage(DeviceEntity device) {
super(PacketType.CONNECT);
this.device = device;
}
public DeviceEntity getDevice() {
return device;
}
public void setDevice(DeviceEntity device) {
this.device = device;
}
}

查看文件

@ -1,30 +0,0 @@
package cn.org.bjca.trust.java.imserver.im.msg.msg;
import cn.org.bjca.trust.java.imserver.enums.PacketType;
import cn.org.bjca.trust.java.imserver.im.bean.PacketMessage;
public class ConnectedMessage extends PacketMessage {
public ConnectedMessage() {
super(PacketType.CONNECTED);
}
private int status;
private String msg;
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
}

查看文件

@ -0,0 +1,13 @@
package cn.org.bjca.trust.java.imserver.repository;
import cn.org.bjca.trust.java.imserver.entitys.UserInfo;
import cn.org.bjca.trust.java.imserver.im.msg.ConnectMessage;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;
import java.util.List;
@Repository
public interface ConnectRepository extends JpaRepository<ConnectMessage, Long> {
}