Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in
Toggle navigation
E
entity-to-db-doc
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
zhangjunyong
entity-to-db-doc
Commits
bd88cfc2
Commit
bd88cfc2
authored
Apr 14, 2023
by
June
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
v2- 新增 iotdata
parent
5f02e5d2
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
712 additions
and
0 deletions
+712
-0
pom.xml
pom.xml
+12
-0
RecordStatusEnum.java
...m/jiankangyouyi/cloud/iotdata/enums/RecordStatusEnum.java
+51
-0
DeviceActiveDO.java
...ouyi/cloud/iotdata/model/entity/mongo/DeviceActiveDO.java
+122
-0
DeviceBatteryDO.java
...uyi/cloud/iotdata/model/entity/mongo/DeviceBatteryDO.java
+99
-0
DeviceLocationDO.java
...yi/cloud/iotdata/model/entity/mongo/DeviceLocationDO.java
+119
-0
IotRecordBodyIndicatorDO.java
.../iotdata/model/entity/mongo/IotRecordBodyIndicatorDO.java
+149
-0
BizIotUserBindingDO.java
...cloud/iotdata/model/entity/mysql/BizIotUserBindingDO.java
+160
-0
No files found.
pom.xml
View file @
bd88cfc2
...
...
@@ -53,6 +53,18 @@
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>
com.jiankangyouyi.cloud
</groupId>
<artifactId>
health-cloud-iot-data-api
</artifactId>
<version>
1.0-TK-SNAPSHOT
</version>
<exclusions>
<exclusion>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-log4j2
</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>
com.jiankangyouyi.cloud
</groupId>
<artifactId>
health-cloud-assessment-api
</artifactId>
...
...
src/main/java/com/jiankangyouyi/cloud/iotdata/enums/RecordStatusEnum.java
0 → 100644
View file @
bd88cfc2
package
com
.
jiankangyouyi
.
cloud
.
iotdata
.
enums
;
import
lombok.AllArgsConstructor
;
import
lombok.Getter
;
/**
* 记录状态
*
* @author yangsongbo
*/
@AllArgsConstructor
@Getter
public
enum
RecordStatusEnum
{
/**
* 待认领
*/
WAITING_FOR_CLAIM
(
"0"
,
"待认领"
),
/**
* 已认领(有效数据)
*/
CLAIMED_VALID
(
"1"
,
"有效"
),
/**
* 无效
*/
INVALID
(
"2"
,
"无效"
),
;
private
String
status
;
private
String
describe
;
public
static
RecordStatusEnum
getEnum
(
String
status
)
{
RecordStatusEnum
[]
values
=
values
();
if
(
status
==
null
)
{
return
null
;
}
for
(
RecordStatusEnum
value
:
values
)
{
if
(
status
.
equals
(
value
.
status
))
{
return
value
;
}
}
return
null
;
}
}
src/main/java/com/jiankangyouyi/cloud/iotdata/model/entity/mongo/DeviceActiveDO.java
0 → 100644
View file @
bd88cfc2
package
com
.
jiankangyouyi
.
cloud
.
iotdata
.
model
.
entity
.
mongo
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.bson.types.ObjectId
;
import
org.springframework.data.annotation.Id
;
import
org.springframework.data.mongodb.core.index.CompoundIndex
;
import
org.springframework.data.mongodb.core.index.CompoundIndexes
;
import
org.springframework.data.mongodb.core.mapping.Document
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* 设备激活表
*
* @author : yangsongbo
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@CompoundIndexes
(
value
=
{
@CompoundIndex
(
name
=
"appId_-1_deviceId_1_bizType_1"
,
def
=
"{'appId':-1,'deviceId':1,'bizType':1}"
,
unique
=
true
),
@CompoundIndex
(
name
=
"appId_-1_bizType_1_activeDate_-1"
,
def
=
"{'appId':-1,'bizType':1,'activeDate':-1}"
)
}
)
@Document
(
collection
=
"v3.device.active"
)
public
class
DeviceActiveDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键
*/
@Id
private
ObjectId
id
;
/**
* 更新时间
*/
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@JsonFormat
(
timezone
=
"GMT+8"
,
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
updateTime
;
/**
* 创建时间
*/
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@JsonFormat
(
timezone
=
"GMT+8"
,
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
createTime
;
/**
* 创建日期
*/
private
String
createDate
;
/**
* 应用ID
*/
private
String
appId
;
/**
* 设备ID
*/
private
String
deviceId
;
/**
* 业务类型
*/
private
String
bizType
;
/**
* 最后使用用户ID
*/
private
String
userId
;
/**
* 激活状态 1 已激活 2 未激活
*/
private
String
activeStatus
;
/**
* 激活时间
*/
private
Date
activeTime
;
/**
* 激活日期 yyyy-MM-dd
*/
private
String
activeDate
;
/**
* 最后活跃日期 yyyy-MM-dd
*/
private
String
lastDate
;
public
static
final
String
FIELD_ID
=
"_id"
;
public
static
final
String
FIELD_UPDATETIME
=
"updateTime"
;
public
static
final
String
FIELD_CREATETIME
=
"createTime"
;
public
static
final
String
FIELD_CREATEDATE
=
"createDate"
;
public
static
final
String
FIELD_APPID
=
"appId"
;
public
static
final
String
FIELD_DEVICEID
=
"deviceId"
;
public
static
final
String
FIELD_BIZTYPE
=
"bizType"
;
public
static
final
String
FIELD_USERID
=
"userId"
;
public
static
final
String
FIELD_ACTIVESTATUS
=
"activeStatus"
;
public
static
final
String
FIELD_ACTIVETIME
=
"activeTime"
;
public
static
final
String
FIELD_ACTIVEDATE
=
"activeDate"
;
public
static
final
String
FIELD_LASTDATE
=
"lastDate"
;
}
src/main/java/com/jiankangyouyi/cloud/iotdata/model/entity/mongo/DeviceBatteryDO.java
0 → 100644
View file @
bd88cfc2
package
com
.
jiankangyouyi
.
cloud
.
iotdata
.
model
.
entity
.
mongo
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.bson.types.ObjectId
;
import
org.springframework.data.annotation.Id
;
import
org.springframework.data.mongodb.core.index.CompoundIndex
;
import
org.springframework.data.mongodb.core.index.CompoundIndexes
;
import
org.springframework.data.mongodb.core.mapping.Document
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* 设备电量表
*
* @author : yangsongbo
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@CompoundIndexes
(
value
=
{
@CompoundIndex
(
name
=
"appId_-1_deviceId_1_bizType_1_createTime_-1"
,
def
=
"{'appId':-1,'deviceId':1,'bizType':1,'createTime':-1}"
)
}
)
@Document
(
collection
=
"v3.device.battery"
)
public
class
DeviceBatteryDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键
* <p>
* 当主键设置为id时,执行DeviceBatteryService.findList(String appId, Collection<String> deviceIds, String bizType, int rangeHours)
* 方法时,报 org.springframework.data.mapping.context.InvalidPersistentPropertyPath: No property '_id' found on...错误,定义成_id
* 后执行成功。
* <p>
* 因此,主键定义为_id,与数据库字段一致
*/
@Id
private
ObjectId
_id
;
/**
* 创建时间
*/
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@JsonFormat
(
timezone
=
"GMT+8"
,
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
createTime
;
/**
* 创建日期
*/
private
String
createDate
;
/**
* 应用ID
*/
private
String
appId
;
/**
* 设备ID
*/
private
String
deviceId
;
/**
* 业务类型
*/
private
String
bizType
;
/**
* 电量(百分比)
*/
private
Integer
battery
;
/**
* 保存的用户,可以为空
*/
private
String
userId
;
public
static
final
String
FIELD_ID
=
"_id"
;
public
static
final
String
FIELD_CREATETIME
=
"createTime"
;
public
static
final
String
FIELD_CREATEDATE
=
"createDate"
;
public
static
final
String
FIELD_APPID
=
"appId"
;
public
static
final
String
FIELD_DEVICEID
=
"deviceId"
;
public
static
final
String
FIELD_BIZTYPE
=
"bizType"
;
public
static
final
String
FIELD_BATTERY
=
"battery"
;
public
static
final
String
FIELD_USERID
=
"userId"
;
}
src/main/java/com/jiankangyouyi/cloud/iotdata/model/entity/mongo/DeviceLocationDO.java
0 → 100644
View file @
bd88cfc2
package
com
.
jiankangyouyi
.
cloud
.
iotdata
.
model
.
entity
.
mongo
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.bson.types.ObjectId
;
import
org.springframework.data.annotation.Id
;
import
org.springframework.data.mongodb.core.index.CompoundIndex
;
import
org.springframework.data.mongodb.core.index.CompoundIndexes
;
import
org.springframework.data.mongodb.core.mapping.Document
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* 设备定位数据表
*
* @author : yangsongbo
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@CompoundIndexes
(
value
=
{
@CompoundIndex
(
name
=
"appId_-1_bizType_1_deviceId_-1_userId_-1_createDate_-1_validStatus_1"
,
def
=
"{ 'appId': -1,'bizType': 1,'deviceId':-1,'userId':-1,'createDate':-1,'validStatus':1}"
)
}
)
@Document
(
collection
=
"v3.device.location"
)
public
class
DeviceLocationDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键
*/
@Id
private
ObjectId
id
;
/**
* 更新时间
*/
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@JsonFormat
(
timezone
=
"GMT+8"
,
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
updateTime
;
/**
* 创建时间
*/
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@JsonFormat
(
timezone
=
"GMT+8"
,
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
createTime
;
/**
* 创建日期
*/
private
String
createDate
;
/**
* 应用ID
*/
private
String
appId
;
/**
* 业务类型
*/
private
String
bizType
;
/**
* 设备ID
*/
private
String
deviceId
;
/**
* 用户ID
*/
private
String
userId
;
/**
* 地图类型
*/
private
String
mapType
;
/**
* 经度
*/
private
String
longitude
;
/**
* 纬度
*/
private
String
latitude
;
/**
* 有效标识
*/
private
String
validStatus
;
public
static
final
String
FIELD_ID
=
"_id"
;
public
static
final
String
FIELD_UPDATETIME
=
"updateTime"
;
public
static
final
String
FIELD_CREATETIME
=
"createTime"
;
public
static
final
String
FIELD_CREATEDATE
=
"createDate"
;
public
static
final
String
FIELD_APPID
=
"appId"
;
public
static
final
String
FIELD_BIZTYPE
=
"bizType"
;
public
static
final
String
FIELD_DEVICEID
=
"deviceId"
;
public
static
final
String
FIELD_USERID
=
"userId"
;
public
static
final
String
FIELD_MAPTYPE
=
"mapType"
;
public
static
final
String
FIELD_LONGITUDE
=
"longitude"
;
public
static
final
String
FIELD_LATITUDE
=
"latitude"
;
public
static
final
String
FIELD_VALIDSTATUS
=
"validStatus"
;
}
src/main/java/com/jiankangyouyi/cloud/iotdata/model/entity/mongo/IotRecordBodyIndicatorDO.java
0 → 100644
View file @
bd88cfc2
package
com
.
jiankangyouyi
.
cloud
.
iotdata
.
model
.
entity
.
mongo
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.bson.types.ObjectId
;
import
org.springframework.data.annotation.Id
;
import
org.springframework.data.mongodb.core.index.CompoundIndex
;
import
org.springframework.data.mongodb.core.index.CompoundIndexes
;
import
org.springframework.data.mongodb.core.index.Indexed
;
import
org.springframework.data.mongodb.core.mapping.Document
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
java.io.Serializable
;
import
java.util.Date
;
import
java.util.List
;
/**
* 设备指标记录表
*
* @author : yangsongbo
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@CompoundIndexes
(
value
=
{
@CompoundIndex
(
name
=
"appId_-1_userId_-1_deviceId_1_bizType_1_indicatorType_1"
,
def
=
"{'appId':-1,'userId':-1,'deviceId':1,'bizType':1,'indicatorType':1}"
)
}
)
@Document
(
collection
=
"v3.iot.record.body.indicator"
)
@Builder
public
class
IotRecordBodyIndicatorDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键
*/
@Id
private
ObjectId
_id
;
/**
* 更新时间
*/
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@JsonFormat
(
timezone
=
"GMT+8"
,
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
updateTime
;
/**
* 创建时间
*/
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@JsonFormat
(
timezone
=
"GMT+8"
,
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
createTime
;
/**
* 记录状态 {@link com.jiankangyouyi.cloud.iot.enums.common.RecordStatusEnum}
*/
private
String
recordStatus
;
/**
* 记录ID
*/
@Indexed
(
unique
=
true
)
private
String
recordId
;
/**
* 批次号
*/
@Indexed
private
String
batchId
;
/**
* 记录日期 yyyy-MM-dd
*/
private
String
recordDate
;
/**
* 记录时间,与创建时间有区别,记录时间表示当前记录数据产生的时间
*/
private
Date
recordTime
;
/**
* 应用ID,当记录状态为待认领时,appId设置为默认值 "0"
*/
private
String
appId
;
/**
* 用户ID,当记录状态为待认领时,userId设置为默认值 "0"
*/
private
String
userId
;
/**
* 业务类型
*/
private
String
bizType
;
/**
* 设备ID
*/
private
String
deviceId
;
/**
* 设备名称
*/
private
String
deviceName
;
/**
* 指标类型 {@link com.jiankangyouyi.cloud.data.center.api.enums.IndicatorEnum}
*/
private
String
indicatorType
;
/**
* 指标值
*/
private
String
indicatorValue
;
/**
* 身体指标标签 目前血糖用药情况 分类 {@link com.jiankangyouyi.cloud.data.center.api.enums.BloodGlucoseTagEnum}
*/
private
List
<
Integer
>
indicatorTagCodes
;
public
static
final
String
FIELD_ID
=
"_id"
;
public
static
final
String
FIELD_UPDATETIME
=
"updateTime"
;
public
static
final
String
FIELD_CREATETIME
=
"createTime"
;
public
static
final
String
FIELD_VALIDSTATUS
=
"recordStatus"
;
public
static
final
String
FIELD_RECORDID
=
"recordId"
;
public
static
final
String
FIELD_BATCH_ID
=
"batchId"
;
public
static
final
String
FIELD_RECORDDATE
=
"recordDate"
;
public
static
final
String
FIELD_RECORDTIME
=
"recordTime"
;
public
static
final
String
FIELD_APPID
=
"appId"
;
public
static
final
String
FIELD_USERID
=
"userId"
;
public
static
final
String
FIELD_BIZTYPE
=
"bizType"
;
public
static
final
String
FIELD_DEVICEID
=
"deviceId"
;
public
static
final
String
FIELD_INDICATORTYPE
=
"indicatorType"
;
public
static
final
String
FIELD_INDICATORVALUE
=
"indicatorValue"
;
public
static
final
String
FIELD_RECORD_STATUS
=
"recordStatus"
;
public
static
final
String
FIELD_INDICATOR_TAG_CODES
=
"indicatorTagCodes"
;
public
static
final
String
FIELD_VERSION_ID
=
"batchId"
;
public
static
final
String
FIELD_DEVICE_NAME
=
"deviceName"
;
}
src/main/java/com/jiankangyouyi/cloud/iotdata/model/entity/mysql/BizIotUserBindingDO.java
0 → 100644
View file @
bd88cfc2
package
com
.
jiankangyouyi
.
cloud
.
iotdata
.
model
.
entity
.
mysql
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.extension.activerecord.Model
;
import
lombok.*
;
import
lombok.experimental.Accessors
;
import
java.io.Serializable
;
import
java.sql.Date
;
import
java.sql.Timestamp
;
/**
* <p>
* IOT用户设备绑定表
* </p>
*
* @author
* @since 2021-12-07
*/
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode
(
callSuper
=
true
)
@Accessors
(
chain
=
true
)
@TableName
(
"biz_iot_user_binding"
)
public
class
BizIotUserBindingDO
extends
Model
<
BizIotUserBindingDO
>
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键
*/
@TableId
(
value
=
"id"
,
type
=
IdType
.
AUTO
)
private
Integer
id
;
/**
* 更新时间
*/
@TableField
(
"update_time"
)
private
Timestamp
updateTime
;
/**
* 创建时间
*/
@TableField
(
"create_time"
)
private
Timestamp
createTime
;
/**
* 创建日期
*/
@TableField
(
"create_date"
)
private
Date
createDate
;
/**
* 有效标识 1 有效 UUID 无效
*/
@TableField
(
"valid_status"
)
private
String
validStatus
;
/**
* 应用ID
*/
@TableField
(
"app_id"
)
private
String
appId
;
/**
* 用户ID
*/
@TableField
(
"user_id"
)
private
String
userId
;
/**
* 设备ID
*/
@TableField
(
"device_id"
)
private
String
deviceId
;
/**
* 设备序列号
*/
@TableField
(
"device_sn"
)
private
String
deviceSn
;
/**
* 业务类型
*/
@TableField
(
"biz_type"
)
private
String
bizType
;
/**
* 设备扩展数据
*/
@TableField
(
"device_extra"
)
private
String
deviceExtra
;
/**
* 设备名称
*/
@TableField
(
"device_name"
)
private
String
deviceName
;
/**
* 最后上报数据时间
*/
@TableField
(
"upload_data_time"
)
private
Timestamp
uploadDataTime
;
/**
* 解绑时间
*/
@TableField
(
"unbind_time"
)
private
Timestamp
unbindTime
;
/**
* 解绑账号
*/
@TableField
(
"unbind_account"
)
private
String
unbindAccount
;
public
static
final
String
ID
=
"id"
;
public
static
final
String
UPDATE_TIME
=
"update_time"
;
public
static
final
String
CREATE_TIME
=
"create_time"
;
public
static
final
String
CREATE_DATE
=
"create_date"
;
public
static
final
String
VALID_STATUS
=
"valid_status"
;
public
static
final
String
APP_ID
=
"app_id"
;
public
static
final
String
USER_ID
=
"user_id"
;
public
static
final
String
DEVICE_ID
=
"device_id"
;
public
static
final
String
DEVICE_SN
=
"device_sn"
;
public
static
final
String
BIZ_TYPE
=
"biz_type"
;
public
static
final
String
DEVICE_EXTRA
=
"device_extra"
;
public
static
final
String
DEVICE_NAME
=
"device_name"
;
public
static
final
String
UPLOAD_DATA_TIME
=
"upload_data_time"
;
public
static
final
String
UNBIND_TIME
=
"unbind_time"
;
public
static
final
String
UNBIND_ACCOUNT
=
"unbind_account"
;
@Override
protected
Serializable
pkVal
()
{
return
this
.
id
;
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment