diff --git a/iot-modules/iot-customer-http-api/src/test/tmp/UserHomeEntity.java b/iot-modules/iot-customer-http-api/src/test/tmp/UserHomeEntity.java
deleted file mode 100644
index b6150b1..0000000
--- a/iot-modules/iot-customer-http-api/src/test/tmp/UserHomeEntity.java
+++ /dev/null
@@ -1,44 +0,0 @@
-package com.qiuguo.iot.data.entity;
-import org.hswebframework.ezorm.rdb.mapping.annotation.Comment;
-import org.hswebframework.web.crud.annotation.EnableEntityEvent;
-import org.hswebframework.web.api.crud.entity.GenericEntity;
-import javax.persistence.Column;
-import javax.persistence.Table;import lombok.Data;
-import java.util.Date;
-/**
-*
-*
*用户家庭表
-* @author wulin
-* @since 2023-09-20
-*/
-
-@Data
-@Comment("用户家庭表")
-@Table(name = "user_home")
-@EnableEntityEvent
-public class UserHomeEntity extends GenericEntity {
- @Comment("id")
- @Column(name = "id", length = 11, nullable = false, unique = true)
- private Long id;
-
- @Comment("用户id")
- @Column(name = "user_id", nullable = false)
- private Long userId;
-
- @Comment("家庭名称")
- @Column(name = "home_name", length = 100)
- private String homeName;
-
- @Comment("is_delete")
- @Column(name = "is_delete")
- private Integer isDelete;
-
- @Comment("create_time")
- @Column(name = "create_time")
- private Date createTime;
-
- @Comment("modify_time")
- @Column(name = "modify_time")
- private Date modifyTime;
-
-}
\ No newline at end of file
diff --git a/iot-modules/iot-customer-http-api/src/test/tmp/UserHomeRequest.java b/iot-modules/iot-customer-http-api/src/test/tmp/UserHomeRequest.java
deleted file mode 100644
index 0ea4655..0000000
--- a/iot-modules/iot-customer-http-api/src/test/tmp/UserHomeRequest.java
+++ /dev/null
@@ -1,43 +0,0 @@
-package com.qiuguo.iot.data.entity;
-import lombok.Data;
-import java.util.Date;
-/**
-*
-*用户家庭请求类
-* @author wulin
-* @since 2023-09-20
-*/
-
-
-@Data
-public class UserHomeRequest implements java.io.Serializable {
-
- private int currPage = 1;
- private int pageSize = 10;
- private String sort;
- private String order;
- //
- private Long id;
- //用户id
- private Long userId;
- //家庭名称
- private String homeName;
- //
- private Integer isDelete;
- //
- private Date createTime;
- //搜索开始
-
- private Date createTimeStart;
-
- //搜索结束
- private Date createTimeEnd;
- //
- private Date modifyTime;
- //搜索开始
-
- private Date modifyTimeStart;
-
- //搜索结束
- private Date modifyTimeEnd;
-}
\ No newline at end of file
diff --git a/iot-modules/iot-customer-http-api/src/test/tmp/UserHomeResp.java b/iot-modules/iot-customer-http-api/src/test/tmp/UserHomeResp.java
deleted file mode 100644
index 22cc808..0000000
--- a/iot-modules/iot-customer-http-api/src/test/tmp/UserHomeResp.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package com.qiuguo.iot.data.entity;
-import lombok.Data;
-import java.util.Date;
-/**
-*
-*
*用户家庭返回类
-* @author wulin
-* @since 2023-09-20
-*/
-
-@Data
-public class UserHomeResp {
- public UserHomeResp(){
- }
- public UserHomeResp(UserHomeEntity entity){
- id = entity.getId();
- userId = entity.getUserId();
- homeName = entity.getHomeName();
- createTime = entity.getCreateTime();
- modifyTime = entity.getModifyTime();
- }
-
- //
- private Long id;
- //用户id
- private Long userId;
- //家庭名称
- private String homeName;
- //
- private Date createTime;
- //
- private Date modifyTime;
-}
\ No newline at end of file
diff --git a/iot-modules/iot-customer-http-api/src/test/tmp/UserHomeService.java b/iot-modules/iot-customer-http-api/src/test/tmp/UserHomeService.java
deleted file mode 100644
index c45bcf8..0000000
--- a/iot-modules/iot-customer-http-api/src/test/tmp/UserHomeService.java
+++ /dev/null
@@ -1,157 +0,0 @@
-package com.admin.service.impl;
-
-
-
-import org.apache.commons.lang3.StringUtils;
-import java.util.Date;
-/**
-*
-* 用户家庭服务类
-*
-*
-* @author wulin
-* @since 2023-09-20
-*/
-
-@Service
-@Slf4j
-public class UserHomeService extends GenericReactiveCrudService {
-
-
- public Mono selectUserHomeByRequest(UserHomeRequest request){
- ReactiveQuery reactiveQuery = createQuery();
- reactiveQuery = reactiveQuery.and("is_delete", 0);
- if(request.getId() != null){
- reactiveQuery = reactiveQuery.and(UserHomeRequest::getId, request.getId());
- }
- if(request.getUserId() != null){
- reactiveQuery = reactiveQuery.and(UserHomeRequest::getUserId, request.getUserId());
- }
- if(StringUtils.isNotEmpty(request.getHomeName())){
- reactiveQuery = reactiveQuery.and(UserHomeRequest::getHomeName, request.getHomeName());
- }
- if(request.getIsDelete() != null){
- reactiveQuery = reactiveQuery.and(UserHomeRequest::getIsDelete, request.getIsDelete());
- }
- if(request.getCreateTime() != null){
- reactiveQuery = reactiveQuery.and(UserHomeRequest::getCreateTime, request.getCreateTime());
- }
- if(request.getModifyTime() != null){
- reactiveQuery = reactiveQuery.and(UserHomeRequest::getModifyTime, request.getModifyTime());
- }
- SortOrder sortOrder = null;
- if(StringUtils.isNotEmpty(request.getOrder())){
- if(StringUtils.isNotEmpty(request.getSort()) && request.getSort().compareTo("0") == 0){
- sortOrder = SortOrder.desc(request.getOrder());
- }else{
- sortOrder = SortOrder.asc(request.getOrder());
- }
- reactiveQuery = reactiveQuery.orderBy(sortOrder);
- }
- return reactiveQuery.fetchOne();
- }
-
-
-
- public Mono selectUserHomesByRequest(UserHomeRequest request){
- ReactiveQuery reactiveQuery = createQuery();
- reactiveQuery = reactiveQuery.and("is_delete", 0);
- if(request.getId() != null){
- reactiveQuery = reactiveQuery.and(UserHomeRequest::getId, request.getId());
- }
- if(request.getUserId() != null){
- reactiveQuery = reactiveQuery.and(UserHomeRequest::getUserId, request.getUserId());
- }
- if(StringUtils.isNotEmpty(request.getHomeName())){
- reactiveQuery = reactiveQuery.like(UserHomeRequest::getHomeName, request.getHomeName());
- }
- if(request.getIsDelete() != null){
- reactiveQuery = reactiveQuery.and(UserHomeRequest::getIsDelete, request.getIsDelete());
- }
- if(request.getCreateTimeStart() != null){
- reactiveQuery = reactiveQuery.gte(UserHomeRequest::getCreateTime, request.getCreateTimeStart());
- }
- if(request.getCreateTimeEnd() != null){
- reactiveQuery = reactiveQuery.lte(UserHomeRequest::getCreateTime, request.getCreateTimeEnd());
- }
- if(request.getModifyTimeStart() != null){
- reactiveQuery = reactiveQuery.gte(UserHomeRequest::getModifyTime, request.getModifyTimeStart());
- }
- if(request.getModifyTimeEnd() != null){
- reactiveQuery = reactiveQuery.lte(UserHomeRequest::getModifyTime, request.getModifyTimeEnd());
- }
- SortOrder sortOrder = null;
- if(StringUtils.isNotEmpty(request.getOrder())){
- if(StringUtils.isNotEmpty(request.getSort()) && request.getSort().compareTo("0") == 0){
- sortOrder = SortOrder.desc(request.getOrder());
- }else{
- sortOrder = SortOrder.asc(request.getOrder());
- }
- reactiveQuery = reactiveQuery.orderBy(sortOrder);
- }
- QueryParamEntity param = QueryParamEntity.of(reactiveQuery.getParam());
- param.setPageIndex(request.getCurrPage() - 1);
- param.setPageSize(request.getPageSize());
- param.setPaging(true);
- param.setFirstPageIndex(0);
- return queryPager(param);
- }
-
-
-
- public Mono selectUserHomeById(Long id){
- return createQuery()
- .and("is_delete", 0)
- .and("id", id)
- .fetchOne();
- }
-
-
-
- public Mono insertUserHome(UserHomeEntity entity){
- entity.setCreateTime(null);
- entity.setModifyTime(null);
- return insert(entity);
- }
-
-
-
- public Mono updateUserHomeById(UserHomeEntity entity){
- ReactiveUpdate update = createUpdate()
- .set(UserHomeEntity::getModifyTime, new Date());
- if(entity.getUserId() != null){
- update = update.set(UserHomeEntity::getUserId, entity.getUserId());
- }
- if(StringUtils.isNotEmpty(entity.getHomeName())){
- update = update.set(UserHomeEntity::getHomeName, entity.getHomeName());
- }
- if(entity.getIsDelete() != null){
- update = update.set(UserHomeEntity::getIsDelete, entity.getIsDelete());
- }
- return update.where(UserHomeEntity::getId, entity.getId()).and("is_delete", 0).execute();
- }
-
-
-
- public Mono updateCoverUserHomeById(UserHomeEntity entity){
- ReactiveUpdate update = createUpdate()
- .set(UserHomeEntity::getModifyTime, new Date());
- update = update.set(UserHomeEntity::getUserId, entity.getUserId());
- update = update.set(UserHomeEntity::getHomeName, entity.getHomeName());
- update = update.set(UserHomeEntity::getIsDelete, entity.getIsDelete());
- return update.where(UserHomeEntity::getId, entity.getId()).and("is_delete", 0).execute();
- }
-
-
-
- public Mono deleteUserHomeById(Long id){
- return createUpdate()
- .set("is_delete", 1)
- .set("modify_time", new Date())
- .where("id", id)
- .execute();
- }
-
-
-
-}
diff --git a/iot-modules/iot-customer-http-api/src/test/tmp/UserRoomEntity.java b/iot-modules/iot-customer-http-api/src/test/tmp/UserRoomEntity.java
deleted file mode 100644
index a218e91..0000000
--- a/iot-modules/iot-customer-http-api/src/test/tmp/UserRoomEntity.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package com.qiuguo.iot.data.entity;
-import org.hswebframework.ezorm.rdb.mapping.annotation.Comment;
-import org.hswebframework.web.crud.annotation.EnableEntityEvent;
-import org.hswebframework.web.api.crud.entity.GenericEntity;
-import javax.persistence.Column;
-import javax.persistence.Table;import lombok.Data;
-import java.util.Date;
-/**
-*
-*
*用户房间表
-* @author wulin
-* @since 2023-09-20
-*/
-
-@Data
-@Comment("用户房间表")
-@Table(name = "user_room")
-@EnableEntityEvent
-public class UserRoomEntity extends GenericEntity {
- @Comment("id")
- @Column(name = "id", length = 11, nullable = false, unique = true)
- private Long id;
-
- @Comment("家庭id")
- @Column(name = "home_id", nullable = false)
- private Long homeId;
-
- @Comment("房间名称")
- @Column(name = "room_name", length = 100)
- private String roomName;
-
- @Comment("涂鸦空间id")
- @Column(name = "space_id", length = 100)
- private Long spaceId;
-
- @Comment("is_delete")
- @Column(name = "is_delete")
- private Integer isDelete;
-
- @Comment("create_time")
- @Column(name = "create_time")
- private Date createTime;
-
- @Comment("modify_time")
- @Column(name = "modify_time")
- private Date modifyTime;
-
-}
\ No newline at end of file
diff --git a/iot-modules/iot-customer-http-api/src/test/tmp/UserRoomRequest.java b/iot-modules/iot-customer-http-api/src/test/tmp/UserRoomRequest.java
deleted file mode 100644
index 2144097..0000000
--- a/iot-modules/iot-customer-http-api/src/test/tmp/UserRoomRequest.java
+++ /dev/null
@@ -1,45 +0,0 @@
-package com.qiuguo.iot.data.entity;
-import lombok.Data;
-import java.util.Date;
-/**
-*
-*用户房间请求类
-* @author wulin
-* @since 2023-09-20
-*/
-
-
-@Data
-public class UserRoomRequest implements java.io.Serializable {
-
- private int currPage = 1;
- private int pageSize = 10;
- private String sort;
- private String order;
- //
- private Long id;
- //家庭id
- private Long homeId;
- //房间名称
- private String roomName;
- //涂鸦空间id
- private Long spaceId;
- //
- private Integer isDelete;
- //
- private Date createTime;
- //搜索开始
-
- private Date createTimeStart;
-
- //搜索结束
- private Date createTimeEnd;
- //
- private Date modifyTime;
- //搜索开始
-
- private Date modifyTimeStart;
-
- //搜索结束
- private Date modifyTimeEnd;
-}
\ No newline at end of file
diff --git a/iot-modules/iot-customer-http-api/src/test/tmp/UserRoomResp.java b/iot-modules/iot-customer-http-api/src/test/tmp/UserRoomResp.java
deleted file mode 100644
index b160f3c..0000000
--- a/iot-modules/iot-customer-http-api/src/test/tmp/UserRoomResp.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package com.qiuguo.iot.data.entity;
-import lombok.Data;
-import java.util.Date;
-/**
-*
-*
*用户房间返回类
-* @author wulin
-* @since 2023-09-20
-*/
-
-@Data
-public class UserRoomResp {
- public UserRoomResp(){
- }
- public UserRoomResp(UserRoomEntity entity){
- id = entity.getId();
- homeId = entity.getHomeId();
- roomName = entity.getRoomName();
- spaceId = entity.getSpaceId();
- createTime = entity.getCreateTime();
- modifyTime = entity.getModifyTime();
- }
-
- //
- private Long id;
- //家庭id
- private Long homeId;
- //房间名称
- private String roomName;
- //涂鸦空间id
- private Long spaceId;
- //
- private Date createTime;
- //
- private Date modifyTime;
-}
\ No newline at end of file
diff --git a/iot-modules/iot-customer-http-api/src/test/tmp/UserRoomService.java b/iot-modules/iot-customer-http-api/src/test/tmp/UserRoomService.java
deleted file mode 100644
index 385ea09..0000000
--- a/iot-modules/iot-customer-http-api/src/test/tmp/UserRoomService.java
+++ /dev/null
@@ -1,167 +0,0 @@
-package com.admin.service.impl;
-
-
-
-import org.apache.commons.lang3.StringUtils;
-import java.util.Date;
-/**
-*
-* 用户房间服务类
-*
-*
-* @author wulin
-* @since 2023-09-20
-*/
-
-@Service
-@Slf4j
-public class UserRoomService extends GenericReactiveCrudService {
-
-
- public Mono selectUserRoomByRequest(UserRoomRequest request){
- ReactiveQuery reactiveQuery = createQuery();
- reactiveQuery = reactiveQuery.and("is_delete", 0);
- if(request.getId() != null){
- reactiveQuery = reactiveQuery.and(UserRoomRequest::getId, request.getId());
- }
- if(request.getHomeId() != null){
- reactiveQuery = reactiveQuery.and(UserRoomRequest::getHomeId, request.getHomeId());
- }
- if(StringUtils.isNotEmpty(request.getRoomName())){
- reactiveQuery = reactiveQuery.and(UserRoomRequest::getRoomName, request.getRoomName());
- }
- if(request.getSpaceId() != null){
- reactiveQuery = reactiveQuery.and(UserRoomRequest::getSpaceId, request.getSpaceId());
- }
- if(request.getIsDelete() != null){
- reactiveQuery = reactiveQuery.and(UserRoomRequest::getIsDelete, request.getIsDelete());
- }
- if(request.getCreateTime() != null){
- reactiveQuery = reactiveQuery.and(UserRoomRequest::getCreateTime, request.getCreateTime());
- }
- if(request.getModifyTime() != null){
- reactiveQuery = reactiveQuery.and(UserRoomRequest::getModifyTime, request.getModifyTime());
- }
- SortOrder sortOrder = null;
- if(StringUtils.isNotEmpty(request.getOrder())){
- if(StringUtils.isNotEmpty(request.getSort()) && request.getSort().compareTo("0") == 0){
- sortOrder = SortOrder.desc(request.getOrder());
- }else{
- sortOrder = SortOrder.asc(request.getOrder());
- }
- reactiveQuery = reactiveQuery.orderBy(sortOrder);
- }
- return reactiveQuery.fetchOne();
- }
-
-
-
- public Mono selectUserRoomsByRequest(UserRoomRequest request){
- ReactiveQuery reactiveQuery = createQuery();
- reactiveQuery = reactiveQuery.and("is_delete", 0);
- if(request.getId() != null){
- reactiveQuery = reactiveQuery.and(UserRoomRequest::getId, request.getId());
- }
- if(request.getHomeId() != null){
- reactiveQuery = reactiveQuery.and(UserRoomRequest::getHomeId, request.getHomeId());
- }
- if(StringUtils.isNotEmpty(request.getRoomName())){
- reactiveQuery = reactiveQuery.like(UserRoomRequest::getRoomName, request.getRoomName());
- }
- if(request.getSpaceId() != null){
- reactiveQuery = reactiveQuery.and(UserRoomRequest::getSpaceId, request.getSpaceId());
- }
- if(request.getIsDelete() != null){
- reactiveQuery = reactiveQuery.and(UserRoomRequest::getIsDelete, request.getIsDelete());
- }
- if(request.getCreateTimeStart() != null){
- reactiveQuery = reactiveQuery.gte(UserRoomRequest::getCreateTime, request.getCreateTimeStart());
- }
- if(request.getCreateTimeEnd() != null){
- reactiveQuery = reactiveQuery.lte(UserRoomRequest::getCreateTime, request.getCreateTimeEnd());
- }
- if(request.getModifyTimeStart() != null){
- reactiveQuery = reactiveQuery.gte(UserRoomRequest::getModifyTime, request.getModifyTimeStart());
- }
- if(request.getModifyTimeEnd() != null){
- reactiveQuery = reactiveQuery.lte(UserRoomRequest::getModifyTime, request.getModifyTimeEnd());
- }
- SortOrder sortOrder = null;
- if(StringUtils.isNotEmpty(request.getOrder())){
- if(StringUtils.isNotEmpty(request.getSort()) && request.getSort().compareTo("0") == 0){
- sortOrder = SortOrder.desc(request.getOrder());
- }else{
- sortOrder = SortOrder.asc(request.getOrder());
- }
- reactiveQuery = reactiveQuery.orderBy(sortOrder);
- }
- QueryParamEntity param = QueryParamEntity.of(reactiveQuery.getParam());
- param.setPageIndex(request.getCurrPage() - 1);
- param.setPageSize(request.getPageSize());
- param.setPaging(true);
- param.setFirstPageIndex(0);
- return queryPager(param);
- }
-
-
-
- public Mono selectUserRoomById(Long id){
- return createQuery()
- .and("is_delete", 0)
- .and("id", id)
- .fetchOne();
- }
-
-
-
- public Mono insertUserRoom(UserRoomEntity entity){
- entity.setCreateTime(null);
- entity.setModifyTime(null);
- return insert(entity);
- }
-
-
-
- public Mono updateUserRoomById(UserRoomEntity entity){
- ReactiveUpdate update = createUpdate()
- .set(UserRoomEntity::getModifyTime, new Date());
- if(entity.getHomeId() != null){
- update = update.set(UserRoomEntity::getHomeId, entity.getHomeId());
- }
- if(StringUtils.isNotEmpty(entity.getRoomName())){
- update = update.set(UserRoomEntity::getRoomName, entity.getRoomName());
- }
- if(entity.getSpaceId() != null){
- update = update.set(UserRoomEntity::getSpaceId, entity.getSpaceId());
- }
- if(entity.getIsDelete() != null){
- update = update.set(UserRoomEntity::getIsDelete, entity.getIsDelete());
- }
- return update.where(UserRoomEntity::getId, entity.getId()).and("is_delete", 0).execute();
- }
-
-
-
- public Mono updateCoverUserRoomById(UserRoomEntity entity){
- ReactiveUpdate update = createUpdate()
- .set(UserRoomEntity::getModifyTime, new Date());
- update = update.set(UserRoomEntity::getHomeId, entity.getHomeId());
- update = update.set(UserRoomEntity::getRoomName, entity.getRoomName());
- update = update.set(UserRoomEntity::getSpaceId, entity.getSpaceId());
- update = update.set(UserRoomEntity::getIsDelete, entity.getIsDelete());
- return update.where(UserRoomEntity::getId, entity.getId()).and("is_delete", 0).execute();
- }
-
-
-
- public Mono deleteUserRoomById(Long id){
- return createUpdate()
- .set("is_delete", 1)
- .set("modify_time", new Date())
- .where("id", id)
- .execute();
- }
-
-
-
-}
diff --git a/logs/iot-user-api/error.log b/logs/iot-user-api/error.log
index b2a5df9..499fe6a 100644
--- a/logs/iot-user-api/error.log
+++ b/logs/iot-user-api/error.log
@@ -1812,3 +1812,78 @@ java.lang.ClassCastException: org.hswebframework.ezorm.core.param.QueryParam can
2023-09:56:46.184 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,43] []- ==> Native: update qiuguo_iot.s_system set `framework_version` = '{"name":"hsweb framework","comment":"","website":"http://www.hsweb.io","majorVersion":4,"minorVersion":0,"revisionVersion":0,"snapshot":true}' , `website` = '' , `major_version` = 1 , `name` = 'default' , `revision_version` = 0 , `dependencies` = '[]' , `minor_version` = 0 where `name` = 'default'
2023-09:56:46.196 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [lambda$null$9,146] []- ==> Updated: 1
2023-09:57:30.889 [background-preinit] INFO o.h.v.i.util.Version - [,21] []- HV000001: Hibernate Validator 6.2.5.Final
+2023-09:57:33.132 [main] INFO c.q.i.u.a.IotBoxUserApiApplication - [logStartupProfileInfo,637] []- The following 1 profile is active: "dev"
+2023-09:57:33.552 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - [multipleStoresDetected,262] []- Multiple Spring Data modules found, entering strict repository configuration mode
+2023-09:57:33.553 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - [registerRepositoriesIn,132] []- Bootstrapping Spring Data R2DBC repositories in DEFAULT mode.
+2023-09:57:33.560 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - [registerRepositoriesIn,201] []- Finished Spring Data repository scanning in 2 ms. Found 0 R2DBC repository interfaces.
+2023-09:57:33.566 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - [multipleStoresDetected,262] []- Multiple Spring Data modules found, entering strict repository configuration mode
+2023-09:57:33.567 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - [registerRepositoriesIn,132] []- Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+2023-09:57:33.573 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - [registerRepositoriesIn,201] []- Finished Spring Data repository scanning in 0 ms. Found 0 Redis repository interfaces.
+2023-09:57:33.686 [main] INFO o.s.c.c.s.GenericScope - [setSerializationId,283] []- BeanFactory id=e80a3f20-d7c3-3127-8ba7-1a826dbadf4a
+2023-09:57:33.763 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.hswebframework.web.datasource.AopDataSourceSwitcherAutoConfiguration' of type [org.hswebframework.web.datasource.AopDataSourceSwitcherAutoConfiguration$$EnhancerBySpringCGLIB$$49c8be90] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.772 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.springframework.cloud.commons.config.CommonsConfigAutoConfiguration' of type [org.springframework.cloud.commons.config.CommonsConfigAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.773 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.springframework.cloud.client.loadbalancer.LoadBalancerDefaultMappingsProviderAutoConfiguration' of type [org.springframework.cloud.client.loadbalancer.LoadBalancerDefaultMappingsProviderAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.773 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'loadBalancerClientsDefaultsMappingsProvider' of type [org.springframework.cloud.client.loadbalancer.LoadBalancerDefaultMappingsProviderAutoConfiguration$$Lambda$431/1006398046] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.774 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'defaultsBindHandlerAdvisor' of type [org.springframework.cloud.commons.config.DefaultsBindHandlerAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.776 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'expressionDataSourceSwitchStrategyMatcher' of type [org.hswebframework.web.datasource.strategy.ExpressionDataSourceSwitchStrategyMatcher] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.777 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'annotationDataSourceSwitchStrategyMatcher' of type [org.hswebframework.web.datasource.strategy.AnnotationDataSourceSwitchStrategyMatcher] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.779 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'alwaysNoMatchStrategyMatcher' of type [org.hswebframework.web.datasource.AopDataSourceSwitcherAutoConfiguration$1] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.780 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'switcherMethodMatcherPointcutAdvisor' of type [org.hswebframework.web.datasource.AopDataSourceSwitcherAutoConfiguration$SwitcherMethodMatcherPointcutAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.781 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.hswebframework.web.authorization.simple.DefaultAuthorizationAutoConfiguration' of type [org.hswebframework.web.authorization.simple.DefaultAuthorizationAutoConfiguration$$EnhancerBySpringCGLIB$$a46aeea2] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.800 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'easyorm-org.hswebframework.web.crud.configuration.EasyormProperties' of type [org.hswebframework.web.crud.configuration.EasyormProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.802 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.hswebframework.web.crud.configuration.EasyormConfiguration' of type [org.hswebframework.web.crud.configuration.EasyormConfiguration$$EnhancerBySpringCGLIB$$7357bdbe] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.804 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.hswebframework.web.crud.configuration.R2dbcSqlExecutorConfiguration' of type [org.hswebframework.web.crud.configuration.R2dbcSqlExecutorConfiguration$$EnhancerBySpringCGLIB$$73e4dd2c] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.811 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.springframework.boot.autoconfigure.r2dbc.ConnectionFactoryConfigurations$PoolConfiguration$PooledConnectionFactoryConfiguration' of type [org.springframework.boot.autoconfigure.r2dbc.ConnectionFactoryConfigurations$PoolConfiguration$PooledConnectionFactoryConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.813 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'spring.r2dbc-org.springframework.boot.autoconfigure.r2dbc.R2dbcProperties' of type [org.springframework.boot.autoconfigure.r2dbc.R2dbcProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.886 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'connectionFactory' of type [io.r2dbc.pool.ConnectionPool] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.888 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'reactiveSqlExecutor' of type [org.hswebframework.web.crud.sql.DefaultR2dbcExecutor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.903 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'syncSqlExecutor' of type [org.hswebframework.ezorm.rdb.executor.reactive.ReactiveSyncSqlExecutor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.926 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'databaseMetadata' of type [org.hswebframework.ezorm.rdb.metadata.RDBDatabaseMetadata] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.932 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.hswebframework.web.datasource.DynamicDataSourceAutoConfiguration' of type [org.hswebframework.web.datasource.DynamicDataSourceAutoConfiguration$$EnhancerBySpringCGLIB$$1852f894] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:34.317 [main] INFO c.t.c.s.c.ConnectorFactoryBean - [registerErrorProcessor,80] []- register processor for error code: 1010
+2023-09:57:34.323 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/commons/messages_en.properties -> messages
+2023-09:57:34.323 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/commons/messages_zh.properties -> messages
+2023-09:57:34.324 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/authentication/messages_en.properties -> messages
+2023-09:57:34.324 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/authentication/messages_zh.properties -> messages
+2023-09:57:34.324 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/core/messages_en.properties -> messages
+2023-09:57:34.324 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/core/messages_zh.properties -> messages
+2023-09:57:34.324 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/authentication-default/messages_en.properties -> messages
+2023-09:57:34.324 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/authentication-default/messages_zh.properties -> messages
+2023-09:57:37.850 [main] INFO o.s.c.c.u.InetUtils - [convertAddress,170] []- Cannot determine local hostname
+2023-09:57:39.829 [main] INFO o.s.c.c.u.InetUtils - [convertAddress,170] []- Cannot determine local hostname
+2023-09:57:40.673 [main] INFO o.s.b.w.e.n.NettyWebServer - [start,111] []- Netty started on port 9701
+2023-09:57:42.650 [main] INFO o.s.c.c.u.InetUtils - [convertAddress,170] []- Cannot determine local hostname
+2023-09:57:42.800 [reactor-http-nio-2] INFO c.q.i.u.a.f.LogWebFilter - [filter,46] [db6148e7-1]- api start time:1695175062800 ip:192.168.8.246 method:GET url:/device/list param:{pageIndex=[1], pageSize=[10]} headers:[Host:"192.168.8.175:9701", User-Agent:"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36 Edg/116.0.1938.81", Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", Accept-Encoding:"gzip, deflate", Accept-Language:"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6", Cache-Control:"max-age=0", Connection:"close", Upgrade-Insecure-Requests:"1"]
+2023-09:57:42.949 [reactor-http-nio-2] DEBUG o.h.w.c.w.ResponseMessageWrapper - [selectMediaType,161] [db6148e7-1]- [db6148e7-1] Using 'application/json' given [text/html, application/xhtml+xml, image/webp, image/apng, application/xml;q=0.9, application/signed-exchange;v=b3;q=0.7, */*;q=0.8] and supported [application/json, application/*+json, application/x-ndjson, text/event-stream]
+2023-09:57:42.950 [reactor-http-nio-2] DEBUG o.h.w.c.w.ResponseMessageWrapper - [writeBody,174] [db6148e7-1]- [db6148e7-1] 0..1 [org.hswebframework.web.crud.web.ResponseMessage>]
+2023-09:57:43.183 [reactor-tcp-nio-2] DEBUG c.q.i.d.e.d.DeviceInfoEntity - [printSql,39] [db6148e7-1]- ==> Preparing: select count(1) as `_total` from qiuguo_iot.device_info device_info where device_info.`is_delete` = ?
+2023-09:57:43.183 [reactor-tcp-nio-2] DEBUG c.q.i.d.e.d.DeviceInfoEntity - [printSql,41] [db6148e7-1]- ==> Parameters: 0(Integer)
+2023-09:57:43.183 [reactor-tcp-nio-2] DEBUG c.q.i.d.e.d.DeviceInfoEntity - [printSql,43] [db6148e7-1]- ==> Native: select count(1) as `_total` from qiuguo_iot.device_info device_info where device_info.`is_delete` = 0
+2023-09:57:43.259 [reactor-tcp-nio-2] DEBUG c.q.i.d.e.d.DeviceInfoEntity - [printSql,39] [db6148e7-1]- ==> Preparing: select device_info.`id` as `id` , device_info.`is_delete` as `isDelete` , device_info.`create_time` as `createTime` , device_info.`modify_time` as `modifyTime` , device_info.`batch_id` as `batchId` , device_info.`name` as `name` , device_info.`sn` as `sn` , device_info.`key` as `key` , device_info.`status` as `status` , device_info.`bt_mac` as `btMac` , device_info.`wifi_mac` as `wifiMac` , device_info.`firmware_version` as `firmwareVersion` , device_info.`device_type` as `deviceType` , device_info.`on_line` as `onLine` , device_info.`last_on_line_time` as `lastOnLineTime` , device_info.`protocol_type` as `protocolType` , device_info.`operating_mode_id` as `operatingModeId` , device_info.`ota_type` as `otaType` , device_info.`ota_start_time` as `otaStartTime` , device_info.`ota_end_time` as `otaEndTime` , device_info.`factory_time` as `factoryTime` , device_info.`sale_time` as `saleTime` from qiuguo_iot.device_info device_info where device_info.`is_delete` = ? limit ?,?
+2023-09:57:43.260 [reactor-tcp-nio-2] DEBUG c.q.i.d.e.d.DeviceInfoEntity - [printSql,41] [db6148e7-1]- ==> Parameters: 0(Integer),0(Integer),10(Integer)
+2023-09:57:43.260 [reactor-tcp-nio-2] DEBUG c.q.i.d.e.d.DeviceInfoEntity - [printSql,43] [db6148e7-1]- ==> Native: select device_info.`id` as `id` , device_info.`is_delete` as `isDelete` , device_info.`create_time` as `createTime` , device_info.`modify_time` as `modifyTime` , device_info.`batch_id` as `batchId` , device_info.`name` as `name` , device_info.`sn` as `sn` , device_info.`key` as `key` , device_info.`status` as `status` , device_info.`bt_mac` as `btMac` , device_info.`wifi_mac` as `wifiMac` , device_info.`firmware_version` as `firmwareVersion` , device_info.`device_type` as `deviceType` , device_info.`on_line` as `onLine` , device_info.`last_on_line_time` as `lastOnLineTime` , device_info.`protocol_type` as `protocolType` , device_info.`operating_mode_id` as `operatingModeId` , device_info.`ota_type` as `otaType` , device_info.`ota_start_time` as `otaStartTime` , device_info.`ota_end_time` as `otaEndTime` , device_info.`factory_time` as `factoryTime` , device_info.`sale_time` as `saleTime` from qiuguo_iot.device_info device_info where device_info.`is_delete` = 0 limit 0,10
+2023-09:57:43.311 [reactor-tcp-nio-2] DEBUG o.h.w.s.j.CustomJackson2jsonEncoder - [debug,127] [db6148e7-1]- [db6148e7-1] Encoding [org.hswebframework.web.crud.web.ResponseMessage@64ba7a23]
+2023-09:57:43.322 [reactor-tcp-nio-2] INFO c.q.i.u.a.f.LogWebFilter - [lambda$writeWith$1,109] [db6148e7-1]- response:{"message":"success","result":{"pageIndex":1,"pageSize":10,"total":3,"data":[{"id":1,"batchId":1,"name":"果Box","sn":"SN234","key":null,"status":null,"btMac":"mac","wifiMac":"wifi","firmwareVersion":"1.0","deviceType":0,"onLine":null,"lastOnLineTime":null,"protocolType":0,"operatingModeId":0,"otaType":0,"otaStartTime":null,"otaEndTime":null,"factoryTime":"2023-08-09T06:47:57.000+00:00","saleTime":null},{"id":2,"batchId":1,"name":"果box","sn":"QGBOX230918180137OFT","key":"Lvkm35wGaH","status":null,"btMac":"adcfbe234568","wifiMac":"adcfbe234567","firmwareVersion":null,"deviceType":0,"onLine":null,"lastOnLineTime":null,"protocolType":0,"operatingModeId":0,"otaType":0,"otaStartTime":null,"otaEndTime":null,"factoryTime":"2023-09-18T10:01:38.000+00:00","saleTime":null},{"id":3,"batchId":1,"name":"果box","sn":"QGBOX230919163545yS9","key":"SFmkcz4oAi","status":null,"btMac":"f2:36:e3:e5:27:48","wifiMac":"02:00:00:00:00:00","firmwareVersion":null,"deviceType":0,"onLine":null,"lastOnLineTime":null,"protocolType":0,"operatingModeId":0,"otaType":0,"otaStartTime":null,"otaEndTime":null,"factoryTime":"2023-09-19T08:35:46.000+00:00","saleTime":null}]},"status":200,"timestamp":1695175063308}
+2023-09:57:43.329 [reactor-http-nio-2] INFO c.q.i.u.a.f.LogWebFilter - [lambda$filter$1,70] [db6148e7-1]- api end time:1695175063329, total time:529
+2023-09:57:44.662 [main] INFO o.s.c.c.u.InetUtils - [convertAddress,170] []- Cannot determine local hostname
+2023-09:57:44.672 [main] INFO c.q.i.u.a.IotBoxUserApiApplication - [logStarted,61] []- Started IotBoxUserApiApplication in 16.098 seconds (JVM running for 17.357)
+2023-09:57:44.675 [main] DEBUG o.h.e.c.m.AbstractSchemaMetadata - [lambda$loadMetadata$2,94] []- load table metadata s_system ,use parser:MysqlTableMetadataParser
+2023-09:57:44.704 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,39] []- ==> Preparing: select count(1) as 'total' from information_schema.`TABLES` where table_schema=? and table_name=?
+2023-09:57:44.705 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,41] []- ==> Parameters: qiuguo_iot(String),s_system(String)
+2023-09:57:44.705 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,43] []- ==> Native: select count(1) as 'total' from information_schema.`TABLES` where table_schema='qiuguo_iot' and table_name='s_system'
+2023-09:57:44.786 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,39] []- ==> Preparing: select column_name as `name`, data_type as `data_type`, character_maximum_length as `data_length`, numeric_precision as `data_precision`, numeric_scale as `data_scale`, column_comment as `comment`, table_name as `table_name`, case when is_nullable='YES' then 0 else 1 end as 'not_null' from information_schema.columns where table_schema=? and table_name like ?
+2023-09:57:44.786 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,41] []- ==> Parameters: qiuguo_iot(String),s_system(String)
+2023-09:57:44.787 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,43] []- ==> Native: select column_name as `name`, data_type as `data_type`, character_maximum_length as `data_length`, numeric_precision as `data_precision`, numeric_scale as `data_scale`, column_comment as `comment`, table_name as `table_name`, case when is_nullable='YES' then 0 else 1 end as 'not_null' from information_schema.columns where table_schema='qiuguo_iot' and table_name like 's_system'
+2023-09:57:44.873 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,39] []- ==> Preparing: select table_comment as `comment` ,table_name as `table_name` from information_schema.tables where table_schema=? and table_name like ?
+2023-09:57:44.874 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,41] []- ==> Parameters: qiuguo_iot(String),s_system(String)
+2023-09:57:44.874 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,43] []- ==> Native: select table_comment as `comment` ,table_name as `table_name` from information_schema.tables where table_schema='qiuguo_iot' and table_name like 's_system'
+2023-09:57:44.947 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,39] []- ==> Preparing: SELECT * FROM INFORMATION_SCHEMA.STATISTICS WHERE TABLE_SCHEMA = ? and TABLE_NAME like ?
+2023-09:57:44.947 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,41] []- ==> Parameters: qiuguo_iot(String),s_system(String)
+2023-09:57:44.947 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,43] []- ==> Native: SELECT * FROM INFORMATION_SCHEMA.STATISTICS WHERE TABLE_SCHEMA = 'qiuguo_iot' and TABLE_NAME like 's_system'
+2023-09:57:45.014 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,39] []- ==> Preparing: select s_system.`framework_version` as `frameworkVersion` , s_system.`website` as `website` , s_system.`major_version` as `majorVersion` , s_system.`name` as `name` , s_system.`revision_version` as `revisionVersion` , s_system.`comment` as `comment` , s_system.`dependencies` as `dependencies` , s_system.`minor_version` as `minorVersion` from qiuguo_iot.s_system s_system where s_system.`name` = ? limit ?,?
+2023-09:57:45.014 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,41] []- ==> Parameters: default(String),0(Integer),1(Integer)
+2023-09:57:45.015 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,43] []- ==> Native: select s_system.`framework_version` as `frameworkVersion` , s_system.`website` as `website` , s_system.`major_version` as `majorVersion` , s_system.`name` as `name` , s_system.`revision_version` as `revisionVersion` , s_system.`comment` as `comment` , s_system.`dependencies` as `dependencies` , s_system.`minor_version` as `minorVersion` from qiuguo_iot.s_system s_system where s_system.`name` = 'default' limit 0,1
+2023-09:57:45.136 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,39] []- ==> Preparing: update qiuguo_iot.s_system set `framework_version` = ? , `website` = ? , `major_version` = ? , `name` = ? , `revision_version` = ? , `dependencies` = ? , `minor_version` = ? where `name` = ?
+2023-09:57:45.136 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,41] []- ==> Parameters: {"name":"hsweb framework","comment":"","website":"http://www.hsweb.io","majorVersion":4,"minorVersion":0,"revisionVersion":0,"snapshot":true}(String),(String),1(Integer),default(String),0(Integer),[](String),0(Integer),default(String)
+2023-09:57:45.136 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,43] []- ==> Native: update qiuguo_iot.s_system set `framework_version` = '{"name":"hsweb framework","comment":"","website":"http://www.hsweb.io","majorVersion":4,"minorVersion":0,"revisionVersion":0,"snapshot":true}' , `website` = '' , `major_version` = 1 , `name` = 'default' , `revision_version` = 0 , `dependencies` = '[]' , `minor_version` = 0 where `name` = 'default'
+2023-09:57:45.159 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [lambda$null$9,146] []- ==> Updated: 1
diff --git a/logs/iot-user-api/info.log b/logs/iot-user-api/info.log
index b2a5df9..499fe6a 100644
--- a/logs/iot-user-api/info.log
+++ b/logs/iot-user-api/info.log
@@ -1812,3 +1812,78 @@ java.lang.ClassCastException: org.hswebframework.ezorm.core.param.QueryParam can
2023-09:56:46.184 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,43] []- ==> Native: update qiuguo_iot.s_system set `framework_version` = '{"name":"hsweb framework","comment":"","website":"http://www.hsweb.io","majorVersion":4,"minorVersion":0,"revisionVersion":0,"snapshot":true}' , `website` = '' , `major_version` = 1 , `name` = 'default' , `revision_version` = 0 , `dependencies` = '[]' , `minor_version` = 0 where `name` = 'default'
2023-09:56:46.196 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [lambda$null$9,146] []- ==> Updated: 1
2023-09:57:30.889 [background-preinit] INFO o.h.v.i.util.Version - [,21] []- HV000001: Hibernate Validator 6.2.5.Final
+2023-09:57:33.132 [main] INFO c.q.i.u.a.IotBoxUserApiApplication - [logStartupProfileInfo,637] []- The following 1 profile is active: "dev"
+2023-09:57:33.552 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - [multipleStoresDetected,262] []- Multiple Spring Data modules found, entering strict repository configuration mode
+2023-09:57:33.553 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - [registerRepositoriesIn,132] []- Bootstrapping Spring Data R2DBC repositories in DEFAULT mode.
+2023-09:57:33.560 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - [registerRepositoriesIn,201] []- Finished Spring Data repository scanning in 2 ms. Found 0 R2DBC repository interfaces.
+2023-09:57:33.566 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - [multipleStoresDetected,262] []- Multiple Spring Data modules found, entering strict repository configuration mode
+2023-09:57:33.567 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - [registerRepositoriesIn,132] []- Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+2023-09:57:33.573 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - [registerRepositoriesIn,201] []- Finished Spring Data repository scanning in 0 ms. Found 0 Redis repository interfaces.
+2023-09:57:33.686 [main] INFO o.s.c.c.s.GenericScope - [setSerializationId,283] []- BeanFactory id=e80a3f20-d7c3-3127-8ba7-1a826dbadf4a
+2023-09:57:33.763 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.hswebframework.web.datasource.AopDataSourceSwitcherAutoConfiguration' of type [org.hswebframework.web.datasource.AopDataSourceSwitcherAutoConfiguration$$EnhancerBySpringCGLIB$$49c8be90] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.772 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.springframework.cloud.commons.config.CommonsConfigAutoConfiguration' of type [org.springframework.cloud.commons.config.CommonsConfigAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.773 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.springframework.cloud.client.loadbalancer.LoadBalancerDefaultMappingsProviderAutoConfiguration' of type [org.springframework.cloud.client.loadbalancer.LoadBalancerDefaultMappingsProviderAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.773 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'loadBalancerClientsDefaultsMappingsProvider' of type [org.springframework.cloud.client.loadbalancer.LoadBalancerDefaultMappingsProviderAutoConfiguration$$Lambda$431/1006398046] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.774 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'defaultsBindHandlerAdvisor' of type [org.springframework.cloud.commons.config.DefaultsBindHandlerAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.776 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'expressionDataSourceSwitchStrategyMatcher' of type [org.hswebframework.web.datasource.strategy.ExpressionDataSourceSwitchStrategyMatcher] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.777 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'annotationDataSourceSwitchStrategyMatcher' of type [org.hswebframework.web.datasource.strategy.AnnotationDataSourceSwitchStrategyMatcher] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.779 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'alwaysNoMatchStrategyMatcher' of type [org.hswebframework.web.datasource.AopDataSourceSwitcherAutoConfiguration$1] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.780 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'switcherMethodMatcherPointcutAdvisor' of type [org.hswebframework.web.datasource.AopDataSourceSwitcherAutoConfiguration$SwitcherMethodMatcherPointcutAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.781 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.hswebframework.web.authorization.simple.DefaultAuthorizationAutoConfiguration' of type [org.hswebframework.web.authorization.simple.DefaultAuthorizationAutoConfiguration$$EnhancerBySpringCGLIB$$a46aeea2] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.800 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'easyorm-org.hswebframework.web.crud.configuration.EasyormProperties' of type [org.hswebframework.web.crud.configuration.EasyormProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.802 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.hswebframework.web.crud.configuration.EasyormConfiguration' of type [org.hswebframework.web.crud.configuration.EasyormConfiguration$$EnhancerBySpringCGLIB$$7357bdbe] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.804 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.hswebframework.web.crud.configuration.R2dbcSqlExecutorConfiguration' of type [org.hswebframework.web.crud.configuration.R2dbcSqlExecutorConfiguration$$EnhancerBySpringCGLIB$$73e4dd2c] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.811 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.springframework.boot.autoconfigure.r2dbc.ConnectionFactoryConfigurations$PoolConfiguration$PooledConnectionFactoryConfiguration' of type [org.springframework.boot.autoconfigure.r2dbc.ConnectionFactoryConfigurations$PoolConfiguration$PooledConnectionFactoryConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.813 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'spring.r2dbc-org.springframework.boot.autoconfigure.r2dbc.R2dbcProperties' of type [org.springframework.boot.autoconfigure.r2dbc.R2dbcProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.886 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'connectionFactory' of type [io.r2dbc.pool.ConnectionPool] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.888 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'reactiveSqlExecutor' of type [org.hswebframework.web.crud.sql.DefaultR2dbcExecutor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.903 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'syncSqlExecutor' of type [org.hswebframework.ezorm.rdb.executor.reactive.ReactiveSyncSqlExecutor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.926 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'databaseMetadata' of type [org.hswebframework.ezorm.rdb.metadata.RDBDatabaseMetadata] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.932 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.hswebframework.web.datasource.DynamicDataSourceAutoConfiguration' of type [org.hswebframework.web.datasource.DynamicDataSourceAutoConfiguration$$EnhancerBySpringCGLIB$$1852f894] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:34.317 [main] INFO c.t.c.s.c.ConnectorFactoryBean - [registerErrorProcessor,80] []- register processor for error code: 1010
+2023-09:57:34.323 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/commons/messages_en.properties -> messages
+2023-09:57:34.323 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/commons/messages_zh.properties -> messages
+2023-09:57:34.324 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/authentication/messages_en.properties -> messages
+2023-09:57:34.324 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/authentication/messages_zh.properties -> messages
+2023-09:57:34.324 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/core/messages_en.properties -> messages
+2023-09:57:34.324 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/core/messages_zh.properties -> messages
+2023-09:57:34.324 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/authentication-default/messages_en.properties -> messages
+2023-09:57:34.324 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/authentication-default/messages_zh.properties -> messages
+2023-09:57:37.850 [main] INFO o.s.c.c.u.InetUtils - [convertAddress,170] []- Cannot determine local hostname
+2023-09:57:39.829 [main] INFO o.s.c.c.u.InetUtils - [convertAddress,170] []- Cannot determine local hostname
+2023-09:57:40.673 [main] INFO o.s.b.w.e.n.NettyWebServer - [start,111] []- Netty started on port 9701
+2023-09:57:42.650 [main] INFO o.s.c.c.u.InetUtils - [convertAddress,170] []- Cannot determine local hostname
+2023-09:57:42.800 [reactor-http-nio-2] INFO c.q.i.u.a.f.LogWebFilter - [filter,46] [db6148e7-1]- api start time:1695175062800 ip:192.168.8.246 method:GET url:/device/list param:{pageIndex=[1], pageSize=[10]} headers:[Host:"192.168.8.175:9701", User-Agent:"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36 Edg/116.0.1938.81", Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", Accept-Encoding:"gzip, deflate", Accept-Language:"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6", Cache-Control:"max-age=0", Connection:"close", Upgrade-Insecure-Requests:"1"]
+2023-09:57:42.949 [reactor-http-nio-2] DEBUG o.h.w.c.w.ResponseMessageWrapper - [selectMediaType,161] [db6148e7-1]- [db6148e7-1] Using 'application/json' given [text/html, application/xhtml+xml, image/webp, image/apng, application/xml;q=0.9, application/signed-exchange;v=b3;q=0.7, */*;q=0.8] and supported [application/json, application/*+json, application/x-ndjson, text/event-stream]
+2023-09:57:42.950 [reactor-http-nio-2] DEBUG o.h.w.c.w.ResponseMessageWrapper - [writeBody,174] [db6148e7-1]- [db6148e7-1] 0..1 [org.hswebframework.web.crud.web.ResponseMessage>]
+2023-09:57:43.183 [reactor-tcp-nio-2] DEBUG c.q.i.d.e.d.DeviceInfoEntity - [printSql,39] [db6148e7-1]- ==> Preparing: select count(1) as `_total` from qiuguo_iot.device_info device_info where device_info.`is_delete` = ?
+2023-09:57:43.183 [reactor-tcp-nio-2] DEBUG c.q.i.d.e.d.DeviceInfoEntity - [printSql,41] [db6148e7-1]- ==> Parameters: 0(Integer)
+2023-09:57:43.183 [reactor-tcp-nio-2] DEBUG c.q.i.d.e.d.DeviceInfoEntity - [printSql,43] [db6148e7-1]- ==> Native: select count(1) as `_total` from qiuguo_iot.device_info device_info where device_info.`is_delete` = 0
+2023-09:57:43.259 [reactor-tcp-nio-2] DEBUG c.q.i.d.e.d.DeviceInfoEntity - [printSql,39] [db6148e7-1]- ==> Preparing: select device_info.`id` as `id` , device_info.`is_delete` as `isDelete` , device_info.`create_time` as `createTime` , device_info.`modify_time` as `modifyTime` , device_info.`batch_id` as `batchId` , device_info.`name` as `name` , device_info.`sn` as `sn` , device_info.`key` as `key` , device_info.`status` as `status` , device_info.`bt_mac` as `btMac` , device_info.`wifi_mac` as `wifiMac` , device_info.`firmware_version` as `firmwareVersion` , device_info.`device_type` as `deviceType` , device_info.`on_line` as `onLine` , device_info.`last_on_line_time` as `lastOnLineTime` , device_info.`protocol_type` as `protocolType` , device_info.`operating_mode_id` as `operatingModeId` , device_info.`ota_type` as `otaType` , device_info.`ota_start_time` as `otaStartTime` , device_info.`ota_end_time` as `otaEndTime` , device_info.`factory_time` as `factoryTime` , device_info.`sale_time` as `saleTime` from qiuguo_iot.device_info device_info where device_info.`is_delete` = ? limit ?,?
+2023-09:57:43.260 [reactor-tcp-nio-2] DEBUG c.q.i.d.e.d.DeviceInfoEntity - [printSql,41] [db6148e7-1]- ==> Parameters: 0(Integer),0(Integer),10(Integer)
+2023-09:57:43.260 [reactor-tcp-nio-2] DEBUG c.q.i.d.e.d.DeviceInfoEntity - [printSql,43] [db6148e7-1]- ==> Native: select device_info.`id` as `id` , device_info.`is_delete` as `isDelete` , device_info.`create_time` as `createTime` , device_info.`modify_time` as `modifyTime` , device_info.`batch_id` as `batchId` , device_info.`name` as `name` , device_info.`sn` as `sn` , device_info.`key` as `key` , device_info.`status` as `status` , device_info.`bt_mac` as `btMac` , device_info.`wifi_mac` as `wifiMac` , device_info.`firmware_version` as `firmwareVersion` , device_info.`device_type` as `deviceType` , device_info.`on_line` as `onLine` , device_info.`last_on_line_time` as `lastOnLineTime` , device_info.`protocol_type` as `protocolType` , device_info.`operating_mode_id` as `operatingModeId` , device_info.`ota_type` as `otaType` , device_info.`ota_start_time` as `otaStartTime` , device_info.`ota_end_time` as `otaEndTime` , device_info.`factory_time` as `factoryTime` , device_info.`sale_time` as `saleTime` from qiuguo_iot.device_info device_info where device_info.`is_delete` = 0 limit 0,10
+2023-09:57:43.311 [reactor-tcp-nio-2] DEBUG o.h.w.s.j.CustomJackson2jsonEncoder - [debug,127] [db6148e7-1]- [db6148e7-1] Encoding [org.hswebframework.web.crud.web.ResponseMessage@64ba7a23]
+2023-09:57:43.322 [reactor-tcp-nio-2] INFO c.q.i.u.a.f.LogWebFilter - [lambda$writeWith$1,109] [db6148e7-1]- response:{"message":"success","result":{"pageIndex":1,"pageSize":10,"total":3,"data":[{"id":1,"batchId":1,"name":"果Box","sn":"SN234","key":null,"status":null,"btMac":"mac","wifiMac":"wifi","firmwareVersion":"1.0","deviceType":0,"onLine":null,"lastOnLineTime":null,"protocolType":0,"operatingModeId":0,"otaType":0,"otaStartTime":null,"otaEndTime":null,"factoryTime":"2023-08-09T06:47:57.000+00:00","saleTime":null},{"id":2,"batchId":1,"name":"果box","sn":"QGBOX230918180137OFT","key":"Lvkm35wGaH","status":null,"btMac":"adcfbe234568","wifiMac":"adcfbe234567","firmwareVersion":null,"deviceType":0,"onLine":null,"lastOnLineTime":null,"protocolType":0,"operatingModeId":0,"otaType":0,"otaStartTime":null,"otaEndTime":null,"factoryTime":"2023-09-18T10:01:38.000+00:00","saleTime":null},{"id":3,"batchId":1,"name":"果box","sn":"QGBOX230919163545yS9","key":"SFmkcz4oAi","status":null,"btMac":"f2:36:e3:e5:27:48","wifiMac":"02:00:00:00:00:00","firmwareVersion":null,"deviceType":0,"onLine":null,"lastOnLineTime":null,"protocolType":0,"operatingModeId":0,"otaType":0,"otaStartTime":null,"otaEndTime":null,"factoryTime":"2023-09-19T08:35:46.000+00:00","saleTime":null}]},"status":200,"timestamp":1695175063308}
+2023-09:57:43.329 [reactor-http-nio-2] INFO c.q.i.u.a.f.LogWebFilter - [lambda$filter$1,70] [db6148e7-1]- api end time:1695175063329, total time:529
+2023-09:57:44.662 [main] INFO o.s.c.c.u.InetUtils - [convertAddress,170] []- Cannot determine local hostname
+2023-09:57:44.672 [main] INFO c.q.i.u.a.IotBoxUserApiApplication - [logStarted,61] []- Started IotBoxUserApiApplication in 16.098 seconds (JVM running for 17.357)
+2023-09:57:44.675 [main] DEBUG o.h.e.c.m.AbstractSchemaMetadata - [lambda$loadMetadata$2,94] []- load table metadata s_system ,use parser:MysqlTableMetadataParser
+2023-09:57:44.704 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,39] []- ==> Preparing: select count(1) as 'total' from information_schema.`TABLES` where table_schema=? and table_name=?
+2023-09:57:44.705 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,41] []- ==> Parameters: qiuguo_iot(String),s_system(String)
+2023-09:57:44.705 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,43] []- ==> Native: select count(1) as 'total' from information_schema.`TABLES` where table_schema='qiuguo_iot' and table_name='s_system'
+2023-09:57:44.786 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,39] []- ==> Preparing: select column_name as `name`, data_type as `data_type`, character_maximum_length as `data_length`, numeric_precision as `data_precision`, numeric_scale as `data_scale`, column_comment as `comment`, table_name as `table_name`, case when is_nullable='YES' then 0 else 1 end as 'not_null' from information_schema.columns where table_schema=? and table_name like ?
+2023-09:57:44.786 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,41] []- ==> Parameters: qiuguo_iot(String),s_system(String)
+2023-09:57:44.787 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,43] []- ==> Native: select column_name as `name`, data_type as `data_type`, character_maximum_length as `data_length`, numeric_precision as `data_precision`, numeric_scale as `data_scale`, column_comment as `comment`, table_name as `table_name`, case when is_nullable='YES' then 0 else 1 end as 'not_null' from information_schema.columns where table_schema='qiuguo_iot' and table_name like 's_system'
+2023-09:57:44.873 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,39] []- ==> Preparing: select table_comment as `comment` ,table_name as `table_name` from information_schema.tables where table_schema=? and table_name like ?
+2023-09:57:44.874 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,41] []- ==> Parameters: qiuguo_iot(String),s_system(String)
+2023-09:57:44.874 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,43] []- ==> Native: select table_comment as `comment` ,table_name as `table_name` from information_schema.tables where table_schema='qiuguo_iot' and table_name like 's_system'
+2023-09:57:44.947 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,39] []- ==> Preparing: SELECT * FROM INFORMATION_SCHEMA.STATISTICS WHERE TABLE_SCHEMA = ? and TABLE_NAME like ?
+2023-09:57:44.947 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,41] []- ==> Parameters: qiuguo_iot(String),s_system(String)
+2023-09:57:44.947 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,43] []- ==> Native: SELECT * FROM INFORMATION_SCHEMA.STATISTICS WHERE TABLE_SCHEMA = 'qiuguo_iot' and TABLE_NAME like 's_system'
+2023-09:57:45.014 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,39] []- ==> Preparing: select s_system.`framework_version` as `frameworkVersion` , s_system.`website` as `website` , s_system.`major_version` as `majorVersion` , s_system.`name` as `name` , s_system.`revision_version` as `revisionVersion` , s_system.`comment` as `comment` , s_system.`dependencies` as `dependencies` , s_system.`minor_version` as `minorVersion` from qiuguo_iot.s_system s_system where s_system.`name` = ? limit ?,?
+2023-09:57:45.014 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,41] []- ==> Parameters: default(String),0(Integer),1(Integer)
+2023-09:57:45.015 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,43] []- ==> Native: select s_system.`framework_version` as `frameworkVersion` , s_system.`website` as `website` , s_system.`major_version` as `majorVersion` , s_system.`name` as `name` , s_system.`revision_version` as `revisionVersion` , s_system.`comment` as `comment` , s_system.`dependencies` as `dependencies` , s_system.`minor_version` as `minorVersion` from qiuguo_iot.s_system s_system where s_system.`name` = 'default' limit 0,1
+2023-09:57:45.136 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,39] []- ==> Preparing: update qiuguo_iot.s_system set `framework_version` = ? , `website` = ? , `major_version` = ? , `name` = ? , `revision_version` = ? , `dependencies` = ? , `minor_version` = ? where `name` = ?
+2023-09:57:45.136 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,41] []- ==> Parameters: {"name":"hsweb framework","comment":"","website":"http://www.hsweb.io","majorVersion":4,"minorVersion":0,"revisionVersion":0,"snapshot":true}(String),(String),1(Integer),default(String),0(Integer),[](String),0(Integer),default(String)
+2023-09:57:45.136 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,43] []- ==> Native: update qiuguo_iot.s_system set `framework_version` = '{"name":"hsweb framework","comment":"","website":"http://www.hsweb.io","majorVersion":4,"minorVersion":0,"revisionVersion":0,"snapshot":true}' , `website` = '' , `major_version` = 1 , `name` = 'default' , `revision_version` = 0 , `dependencies` = '[]' , `minor_version` = 0 where `name` = 'default'
+2023-09:57:45.159 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [lambda$null$9,146] []- ==> Updated: 1
diff --git a/logs/iot-user-api/warn.log b/logs/iot-user-api/warn.log
index b2a5df9..499fe6a 100644
--- a/logs/iot-user-api/warn.log
+++ b/logs/iot-user-api/warn.log
@@ -1812,3 +1812,78 @@ java.lang.ClassCastException: org.hswebframework.ezorm.core.param.QueryParam can
2023-09:56:46.184 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,43] []- ==> Native: update qiuguo_iot.s_system set `framework_version` = '{"name":"hsweb framework","comment":"","website":"http://www.hsweb.io","majorVersion":4,"minorVersion":0,"revisionVersion":0,"snapshot":true}' , `website` = '' , `major_version` = 1 , `name` = 'default' , `revision_version` = 0 , `dependencies` = '[]' , `minor_version` = 0 where `name` = 'default'
2023-09:56:46.196 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [lambda$null$9,146] []- ==> Updated: 1
2023-09:57:30.889 [background-preinit] INFO o.h.v.i.util.Version - [,21] []- HV000001: Hibernate Validator 6.2.5.Final
+2023-09:57:33.132 [main] INFO c.q.i.u.a.IotBoxUserApiApplication - [logStartupProfileInfo,637] []- The following 1 profile is active: "dev"
+2023-09:57:33.552 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - [multipleStoresDetected,262] []- Multiple Spring Data modules found, entering strict repository configuration mode
+2023-09:57:33.553 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - [registerRepositoriesIn,132] []- Bootstrapping Spring Data R2DBC repositories in DEFAULT mode.
+2023-09:57:33.560 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - [registerRepositoriesIn,201] []- Finished Spring Data repository scanning in 2 ms. Found 0 R2DBC repository interfaces.
+2023-09:57:33.566 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - [multipleStoresDetected,262] []- Multiple Spring Data modules found, entering strict repository configuration mode
+2023-09:57:33.567 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - [registerRepositoriesIn,132] []- Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+2023-09:57:33.573 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - [registerRepositoriesIn,201] []- Finished Spring Data repository scanning in 0 ms. Found 0 Redis repository interfaces.
+2023-09:57:33.686 [main] INFO o.s.c.c.s.GenericScope - [setSerializationId,283] []- BeanFactory id=e80a3f20-d7c3-3127-8ba7-1a826dbadf4a
+2023-09:57:33.763 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.hswebframework.web.datasource.AopDataSourceSwitcherAutoConfiguration' of type [org.hswebframework.web.datasource.AopDataSourceSwitcherAutoConfiguration$$EnhancerBySpringCGLIB$$49c8be90] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.772 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.springframework.cloud.commons.config.CommonsConfigAutoConfiguration' of type [org.springframework.cloud.commons.config.CommonsConfigAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.773 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.springframework.cloud.client.loadbalancer.LoadBalancerDefaultMappingsProviderAutoConfiguration' of type [org.springframework.cloud.client.loadbalancer.LoadBalancerDefaultMappingsProviderAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.773 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'loadBalancerClientsDefaultsMappingsProvider' of type [org.springframework.cloud.client.loadbalancer.LoadBalancerDefaultMappingsProviderAutoConfiguration$$Lambda$431/1006398046] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.774 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'defaultsBindHandlerAdvisor' of type [org.springframework.cloud.commons.config.DefaultsBindHandlerAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.776 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'expressionDataSourceSwitchStrategyMatcher' of type [org.hswebframework.web.datasource.strategy.ExpressionDataSourceSwitchStrategyMatcher] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.777 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'annotationDataSourceSwitchStrategyMatcher' of type [org.hswebframework.web.datasource.strategy.AnnotationDataSourceSwitchStrategyMatcher] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.779 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'alwaysNoMatchStrategyMatcher' of type [org.hswebframework.web.datasource.AopDataSourceSwitcherAutoConfiguration$1] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.780 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'switcherMethodMatcherPointcutAdvisor' of type [org.hswebframework.web.datasource.AopDataSourceSwitcherAutoConfiguration$SwitcherMethodMatcherPointcutAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.781 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.hswebframework.web.authorization.simple.DefaultAuthorizationAutoConfiguration' of type [org.hswebframework.web.authorization.simple.DefaultAuthorizationAutoConfiguration$$EnhancerBySpringCGLIB$$a46aeea2] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.800 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'easyorm-org.hswebframework.web.crud.configuration.EasyormProperties' of type [org.hswebframework.web.crud.configuration.EasyormProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.802 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.hswebframework.web.crud.configuration.EasyormConfiguration' of type [org.hswebframework.web.crud.configuration.EasyormConfiguration$$EnhancerBySpringCGLIB$$7357bdbe] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.804 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.hswebframework.web.crud.configuration.R2dbcSqlExecutorConfiguration' of type [org.hswebframework.web.crud.configuration.R2dbcSqlExecutorConfiguration$$EnhancerBySpringCGLIB$$73e4dd2c] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.811 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.springframework.boot.autoconfigure.r2dbc.ConnectionFactoryConfigurations$PoolConfiguration$PooledConnectionFactoryConfiguration' of type [org.springframework.boot.autoconfigure.r2dbc.ConnectionFactoryConfigurations$PoolConfiguration$PooledConnectionFactoryConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.813 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'spring.r2dbc-org.springframework.boot.autoconfigure.r2dbc.R2dbcProperties' of type [org.springframework.boot.autoconfigure.r2dbc.R2dbcProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.886 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'connectionFactory' of type [io.r2dbc.pool.ConnectionPool] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.888 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'reactiveSqlExecutor' of type [org.hswebframework.web.crud.sql.DefaultR2dbcExecutor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.903 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'syncSqlExecutor' of type [org.hswebframework.ezorm.rdb.executor.reactive.ReactiveSyncSqlExecutor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.926 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'databaseMetadata' of type [org.hswebframework.ezorm.rdb.metadata.RDBDatabaseMetadata] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:33.932 [main] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,376] []- Bean 'org.hswebframework.web.datasource.DynamicDataSourceAutoConfiguration' of type [org.hswebframework.web.datasource.DynamicDataSourceAutoConfiguration$$EnhancerBySpringCGLIB$$1852f894] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-09:57:34.317 [main] INFO c.t.c.s.c.ConnectorFactoryBean - [registerErrorProcessor,80] []- register processor for error code: 1010
+2023-09:57:34.323 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/commons/messages_en.properties -> messages
+2023-09:57:34.323 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/commons/messages_zh.properties -> messages
+2023-09:57:34.324 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/authentication/messages_en.properties -> messages
+2023-09:57:34.324 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/authentication/messages_zh.properties -> messages
+2023-09:57:34.324 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/core/messages_en.properties -> messages
+2023-09:57:34.324 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/core/messages_zh.properties -> messages
+2023-09:57:34.324 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/authentication-default/messages_en.properties -> messages
+2023-09:57:34.324 [main] INFO o.h.w.s.i.I18nConfiguration - [autoResolveI18nMessageSource,42] []- register i18n message resource i18n/authentication-default/messages_zh.properties -> messages
+2023-09:57:37.850 [main] INFO o.s.c.c.u.InetUtils - [convertAddress,170] []- Cannot determine local hostname
+2023-09:57:39.829 [main] INFO o.s.c.c.u.InetUtils - [convertAddress,170] []- Cannot determine local hostname
+2023-09:57:40.673 [main] INFO o.s.b.w.e.n.NettyWebServer - [start,111] []- Netty started on port 9701
+2023-09:57:42.650 [main] INFO o.s.c.c.u.InetUtils - [convertAddress,170] []- Cannot determine local hostname
+2023-09:57:42.800 [reactor-http-nio-2] INFO c.q.i.u.a.f.LogWebFilter - [filter,46] [db6148e7-1]- api start time:1695175062800 ip:192.168.8.246 method:GET url:/device/list param:{pageIndex=[1], pageSize=[10]} headers:[Host:"192.168.8.175:9701", User-Agent:"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36 Edg/116.0.1938.81", Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", Accept-Encoding:"gzip, deflate", Accept-Language:"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6", Cache-Control:"max-age=0", Connection:"close", Upgrade-Insecure-Requests:"1"]
+2023-09:57:42.949 [reactor-http-nio-2] DEBUG o.h.w.c.w.ResponseMessageWrapper - [selectMediaType,161] [db6148e7-1]- [db6148e7-1] Using 'application/json' given [text/html, application/xhtml+xml, image/webp, image/apng, application/xml;q=0.9, application/signed-exchange;v=b3;q=0.7, */*;q=0.8] and supported [application/json, application/*+json, application/x-ndjson, text/event-stream]
+2023-09:57:42.950 [reactor-http-nio-2] DEBUG o.h.w.c.w.ResponseMessageWrapper - [writeBody,174] [db6148e7-1]- [db6148e7-1] 0..1 [org.hswebframework.web.crud.web.ResponseMessage>]
+2023-09:57:43.183 [reactor-tcp-nio-2] DEBUG c.q.i.d.e.d.DeviceInfoEntity - [printSql,39] [db6148e7-1]- ==> Preparing: select count(1) as `_total` from qiuguo_iot.device_info device_info where device_info.`is_delete` = ?
+2023-09:57:43.183 [reactor-tcp-nio-2] DEBUG c.q.i.d.e.d.DeviceInfoEntity - [printSql,41] [db6148e7-1]- ==> Parameters: 0(Integer)
+2023-09:57:43.183 [reactor-tcp-nio-2] DEBUG c.q.i.d.e.d.DeviceInfoEntity - [printSql,43] [db6148e7-1]- ==> Native: select count(1) as `_total` from qiuguo_iot.device_info device_info where device_info.`is_delete` = 0
+2023-09:57:43.259 [reactor-tcp-nio-2] DEBUG c.q.i.d.e.d.DeviceInfoEntity - [printSql,39] [db6148e7-1]- ==> Preparing: select device_info.`id` as `id` , device_info.`is_delete` as `isDelete` , device_info.`create_time` as `createTime` , device_info.`modify_time` as `modifyTime` , device_info.`batch_id` as `batchId` , device_info.`name` as `name` , device_info.`sn` as `sn` , device_info.`key` as `key` , device_info.`status` as `status` , device_info.`bt_mac` as `btMac` , device_info.`wifi_mac` as `wifiMac` , device_info.`firmware_version` as `firmwareVersion` , device_info.`device_type` as `deviceType` , device_info.`on_line` as `onLine` , device_info.`last_on_line_time` as `lastOnLineTime` , device_info.`protocol_type` as `protocolType` , device_info.`operating_mode_id` as `operatingModeId` , device_info.`ota_type` as `otaType` , device_info.`ota_start_time` as `otaStartTime` , device_info.`ota_end_time` as `otaEndTime` , device_info.`factory_time` as `factoryTime` , device_info.`sale_time` as `saleTime` from qiuguo_iot.device_info device_info where device_info.`is_delete` = ? limit ?,?
+2023-09:57:43.260 [reactor-tcp-nio-2] DEBUG c.q.i.d.e.d.DeviceInfoEntity - [printSql,41] [db6148e7-1]- ==> Parameters: 0(Integer),0(Integer),10(Integer)
+2023-09:57:43.260 [reactor-tcp-nio-2] DEBUG c.q.i.d.e.d.DeviceInfoEntity - [printSql,43] [db6148e7-1]- ==> Native: select device_info.`id` as `id` , device_info.`is_delete` as `isDelete` , device_info.`create_time` as `createTime` , device_info.`modify_time` as `modifyTime` , device_info.`batch_id` as `batchId` , device_info.`name` as `name` , device_info.`sn` as `sn` , device_info.`key` as `key` , device_info.`status` as `status` , device_info.`bt_mac` as `btMac` , device_info.`wifi_mac` as `wifiMac` , device_info.`firmware_version` as `firmwareVersion` , device_info.`device_type` as `deviceType` , device_info.`on_line` as `onLine` , device_info.`last_on_line_time` as `lastOnLineTime` , device_info.`protocol_type` as `protocolType` , device_info.`operating_mode_id` as `operatingModeId` , device_info.`ota_type` as `otaType` , device_info.`ota_start_time` as `otaStartTime` , device_info.`ota_end_time` as `otaEndTime` , device_info.`factory_time` as `factoryTime` , device_info.`sale_time` as `saleTime` from qiuguo_iot.device_info device_info where device_info.`is_delete` = 0 limit 0,10
+2023-09:57:43.311 [reactor-tcp-nio-2] DEBUG o.h.w.s.j.CustomJackson2jsonEncoder - [debug,127] [db6148e7-1]- [db6148e7-1] Encoding [org.hswebframework.web.crud.web.ResponseMessage@64ba7a23]
+2023-09:57:43.322 [reactor-tcp-nio-2] INFO c.q.i.u.a.f.LogWebFilter - [lambda$writeWith$1,109] [db6148e7-1]- response:{"message":"success","result":{"pageIndex":1,"pageSize":10,"total":3,"data":[{"id":1,"batchId":1,"name":"果Box","sn":"SN234","key":null,"status":null,"btMac":"mac","wifiMac":"wifi","firmwareVersion":"1.0","deviceType":0,"onLine":null,"lastOnLineTime":null,"protocolType":0,"operatingModeId":0,"otaType":0,"otaStartTime":null,"otaEndTime":null,"factoryTime":"2023-08-09T06:47:57.000+00:00","saleTime":null},{"id":2,"batchId":1,"name":"果box","sn":"QGBOX230918180137OFT","key":"Lvkm35wGaH","status":null,"btMac":"adcfbe234568","wifiMac":"adcfbe234567","firmwareVersion":null,"deviceType":0,"onLine":null,"lastOnLineTime":null,"protocolType":0,"operatingModeId":0,"otaType":0,"otaStartTime":null,"otaEndTime":null,"factoryTime":"2023-09-18T10:01:38.000+00:00","saleTime":null},{"id":3,"batchId":1,"name":"果box","sn":"QGBOX230919163545yS9","key":"SFmkcz4oAi","status":null,"btMac":"f2:36:e3:e5:27:48","wifiMac":"02:00:00:00:00:00","firmwareVersion":null,"deviceType":0,"onLine":null,"lastOnLineTime":null,"protocolType":0,"operatingModeId":0,"otaType":0,"otaStartTime":null,"otaEndTime":null,"factoryTime":"2023-09-19T08:35:46.000+00:00","saleTime":null}]},"status":200,"timestamp":1695175063308}
+2023-09:57:43.329 [reactor-http-nio-2] INFO c.q.i.u.a.f.LogWebFilter - [lambda$filter$1,70] [db6148e7-1]- api end time:1695175063329, total time:529
+2023-09:57:44.662 [main] INFO o.s.c.c.u.InetUtils - [convertAddress,170] []- Cannot determine local hostname
+2023-09:57:44.672 [main] INFO c.q.i.u.a.IotBoxUserApiApplication - [logStarted,61] []- Started IotBoxUserApiApplication in 16.098 seconds (JVM running for 17.357)
+2023-09:57:44.675 [main] DEBUG o.h.e.c.m.AbstractSchemaMetadata - [lambda$loadMetadata$2,94] []- load table metadata s_system ,use parser:MysqlTableMetadataParser
+2023-09:57:44.704 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,39] []- ==> Preparing: select count(1) as 'total' from information_schema.`TABLES` where table_schema=? and table_name=?
+2023-09:57:44.705 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,41] []- ==> Parameters: qiuguo_iot(String),s_system(String)
+2023-09:57:44.705 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,43] []- ==> Native: select count(1) as 'total' from information_schema.`TABLES` where table_schema='qiuguo_iot' and table_name='s_system'
+2023-09:57:44.786 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,39] []- ==> Preparing: select column_name as `name`, data_type as `data_type`, character_maximum_length as `data_length`, numeric_precision as `data_precision`, numeric_scale as `data_scale`, column_comment as `comment`, table_name as `table_name`, case when is_nullable='YES' then 0 else 1 end as 'not_null' from information_schema.columns where table_schema=? and table_name like ?
+2023-09:57:44.786 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,41] []- ==> Parameters: qiuguo_iot(String),s_system(String)
+2023-09:57:44.787 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,43] []- ==> Native: select column_name as `name`, data_type as `data_type`, character_maximum_length as `data_length`, numeric_precision as `data_precision`, numeric_scale as `data_scale`, column_comment as `comment`, table_name as `table_name`, case when is_nullable='YES' then 0 else 1 end as 'not_null' from information_schema.columns where table_schema='qiuguo_iot' and table_name like 's_system'
+2023-09:57:44.873 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,39] []- ==> Preparing: select table_comment as `comment` ,table_name as `table_name` from information_schema.tables where table_schema=? and table_name like ?
+2023-09:57:44.874 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,41] []- ==> Parameters: qiuguo_iot(String),s_system(String)
+2023-09:57:44.874 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,43] []- ==> Native: select table_comment as `comment` ,table_name as `table_name` from information_schema.tables where table_schema='qiuguo_iot' and table_name like 's_system'
+2023-09:57:44.947 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,39] []- ==> Preparing: SELECT * FROM INFORMATION_SCHEMA.STATISTICS WHERE TABLE_SCHEMA = ? and TABLE_NAME like ?
+2023-09:57:44.947 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,41] []- ==> Parameters: qiuguo_iot(String),s_system(String)
+2023-09:57:44.947 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,43] []- ==> Native: SELECT * FROM INFORMATION_SCHEMA.STATISTICS WHERE TABLE_SCHEMA = 'qiuguo_iot' and TABLE_NAME like 's_system'
+2023-09:57:45.014 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,39] []- ==> Preparing: select s_system.`framework_version` as `frameworkVersion` , s_system.`website` as `website` , s_system.`major_version` as `majorVersion` , s_system.`name` as `name` , s_system.`revision_version` as `revisionVersion` , s_system.`comment` as `comment` , s_system.`dependencies` as `dependencies` , s_system.`minor_version` as `minorVersion` from qiuguo_iot.s_system s_system where s_system.`name` = ? limit ?,?
+2023-09:57:45.014 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,41] []- ==> Parameters: default(String),0(Integer),1(Integer)
+2023-09:57:45.015 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,43] []- ==> Native: select s_system.`framework_version` as `frameworkVersion` , s_system.`website` as `website` , s_system.`major_version` as `majorVersion` , s_system.`name` as `name` , s_system.`revision_version` as `revisionVersion` , s_system.`comment` as `comment` , s_system.`dependencies` as `dependencies` , s_system.`minor_version` as `minorVersion` from qiuguo_iot.s_system s_system where s_system.`name` = 'default' limit 0,1
+2023-09:57:45.136 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,39] []- ==> Preparing: update qiuguo_iot.s_system set `framework_version` = ? , `website` = ? , `major_version` = ? , `name` = ? , `revision_version` = ? , `dependencies` = ? , `minor_version` = ? where `name` = ?
+2023-09:57:45.136 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,41] []- ==> Parameters: {"name":"hsweb framework","comment":"","website":"http://www.hsweb.io","majorVersion":4,"minorVersion":0,"revisionVersion":0,"snapshot":true}(String),(String),1(Integer),default(String),0(Integer),[](String),0(Integer),default(String)
+2023-09:57:45.136 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [printSql,43] []- ==> Native: update qiuguo_iot.s_system set `framework_version` = '{"name":"hsweb framework","comment":"","website":"http://www.hsweb.io","majorVersion":4,"minorVersion":0,"revisionVersion":0,"snapshot":true}' , `website` = '' , `major_version` = 1 , `name` = 'default' , `revision_version` = 0 , `dependencies` = '[]' , `minor_version` = 0 where `name` = 'default'
+2023-09:57:45.159 [reactor-tcp-nio-2] DEBUG o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor - [lambda$null$9,146] []- ==> Updated: 1