Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
I
iot-service
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Container Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
SuperHive
back-end
iot-service
Commits
30ed0144
Commit
30ed0144
authored
Aug 10, 2020
by
huangcb
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
调整设备实例接口
parent
28f9e05d
Changes
9
Show whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
109 additions
and
22 deletions
+109
-22
ValidatorListById.java
...center/iot/common/validator/groups/ValidatorListById.java
+15
-0
DataModelDetailVO.java
...datacenter/iot/module/datamodel/vo/DataModelDetailVO.java
+24
-0
DeviceInstanceController.java
...dule/devicemodel/controller/DeviceInstanceController.java
+17
-4
DeviceInstanceForm.java
...enter/iot/module/devicemodel/form/DeviceInstanceForm.java
+3
-6
DeviceInstanceService.java
...iot/module/devicemodel/service/DeviceInstanceService.java
+12
-0
DeviceTypeService.java
...ter/iot/module/devicemodel/service/DeviceTypeService.java
+3
-2
DeviceInstanceServiceImpl.java
...e/devicemodel/service/impl/DeviceInstanceServiceImpl.java
+21
-2
DeviceTypeServiceImpl.java
...odule/devicemodel/service/impl/DeviceTypeServiceImpl.java
+9
-3
DeviceInstanceDao.xml
src/main/resources/mapper/devicemodel/DeviceInstanceDao.xml
+5
-5
No files found.
src/main/java/com/esv/datacenter/iot/common/validator/groups/ValidatorListById.java
0 → 100644
View file @
30ed0144
package
com
.
esv
.
datacenter
.
iot
.
common
.
validator
.
groups
;
import
javax.validation.groups.Default
;
/**
* @description: 参数校验分组:通过ID获取记录列表
* @project: SpringCloudTemplate
* @name: com.esv.springcloud.template.common.validator.groups.ValidatorDelete
* @author: 黄朝斌
* @email: huangchaobin@esvtek.com
* @createTime: 2020/03/12 17:58
* @version:1.0
*/
public
interface
ValidatorListById
extends
Default
{
}
src/main/java/com/esv/datacenter/iot/module/datamodel/vo/DataModelDetailVO.java
0 → 100644
View file @
30ed0144
package
com
.
esv
.
datacenter
.
iot
.
module
.
datamodel
.
vo
;
import
lombok.Data
;
import
org.apache.commons.lang3.builder.ToStringBuilder
;
import
org.apache.commons.lang3.builder.ToStringStyle
;
import
java.util.List
;
/**
* @description:
* @author: huangchaobin@esvtek.com
* @createTime: 2020/08/10 14:44
* @version:1.0
*/
@Data
public
class
DataModelDetailVO
extends
DataModelBriefVO
{
List
<
DataModelPropertyVO
>
propertyList
;
@Override
public
String
toString
()
{
return
ToStringBuilder
.
reflectionToString
(
this
,
ToStringStyle
.
JSON_STYLE
);
}
}
src/main/java/com/esv/datacenter/iot/module/devicemodel/controller/DeviceInstanceController.java
View file @
30ed0144
...
@@ -4,10 +4,7 @@ import com.alibaba.fastjson.JSONObject;
...
@@ -4,10 +4,7 @@ import com.alibaba.fastjson.JSONObject;
import
com.esv.datacenter.iot.common.exception.EException
;
import
com.esv.datacenter.iot.common.exception.EException
;
import
com.esv.datacenter.iot.common.response.ECode
;
import
com.esv.datacenter.iot.common.response.ECode
;
import
com.esv.datacenter.iot.common.response.EResponse
;
import
com.esv.datacenter.iot.common.response.EResponse
;
import
com.esv.datacenter.iot.common.validator.groups.ValidatorDelete
;
import
com.esv.datacenter.iot.common.validator.groups.*
;
import
com.esv.datacenter.iot.common.validator.groups.ValidatorInsert
;
import
com.esv.datacenter.iot.common.validator.groups.ValidatorList
;
import
com.esv.datacenter.iot.common.validator.groups.ValidatorUpdate
;
import
com.esv.datacenter.iot.module.devicemodel.form.DeviceInstanceForm
;
import
com.esv.datacenter.iot.module.devicemodel.form.DeviceInstanceForm
;
import
com.esv.datacenter.iot.module.devicemodel.service.DeviceInstanceService
;
import
com.esv.datacenter.iot.module.devicemodel.service.DeviceInstanceService
;
import
com.esv.datacenter.iot.module.devicemodel.service.DeviceTypeService
;
import
com.esv.datacenter.iot.module.devicemodel.service.DeviceTypeService
;
...
@@ -105,4 +102,20 @@ public class DeviceInstanceController {
...
@@ -105,4 +102,20 @@ public class DeviceInstanceController {
public
EResponse
list
(
@RequestBody
@Validated
(
ValidatorList
.
class
)
DeviceInstanceForm
form
)
throws
EException
{
public
EResponse
list
(
@RequestBody
@Validated
(
ValidatorList
.
class
)
DeviceInstanceForm
form
)
throws
EException
{
return
EResponse
.
ok
(
deviceInstanceService
.
getInstance4Page
(
form
));
return
EResponse
.
ok
(
deviceInstanceService
.
getInstance4Page
(
form
));
}
}
/**
* @description 通过设备类型ID获取设备列表
* @param form:
* @return com.esv.datacenter.iot.common.response.EResponse
* @author huangChaobin@esvtek.com
* @createTime 2020/08/10 10:24
**/
@PostMapping
(
"/getInstanceByDeviceTypeId"
)
public
EResponse
getInstanceByDeviceTypeId
(
@RequestBody
@Validated
(
ValidatorListById
.
class
)
DeviceInstanceForm
form
)
throws
EException
{
if
(!
deviceTypeService
.
isValidTypeId
(
form
.
getDeviceTypeId
()))
{
throw
new
EException
(
ECode
.
BIZ_PARAM_ERROR
.
code
(),
"无效的设备类型ID"
);
}
return
EResponse
.
ok
(
deviceInstanceService
.
getInstanceListByTypeId
(
form
.
getDeviceTypeId
()));
}
}
}
src/main/java/com/esv/datacenter/iot/module/devicemodel/form/DeviceInstanceForm.java
View file @
30ed0144
package
com
.
esv
.
datacenter
.
iot
.
module
.
devicemodel
.
form
;
package
com
.
esv
.
datacenter
.
iot
.
module
.
devicemodel
.
form
;
import
com.esv.datacenter.iot.common.validator.groups.ValidatorDelete
;
import
com.esv.datacenter.iot.common.validator.groups.*
;
import
com.esv.datacenter.iot.common.validator.groups.ValidatorInsert
;
import
com.esv.datacenter.iot.common.validator.groups.ValidatorList
;
import
com.esv.datacenter.iot.common.validator.groups.ValidatorUpdate
;
import
lombok.Data
;
import
lombok.Data
;
import
org.apache.commons.lang3.builder.ToStringBuilder
;
import
org.apache.commons.lang3.builder.ToStringBuilder
;
import
org.apache.commons.lang3.builder.ToStringStyle
;
import
org.apache.commons.lang3.builder.ToStringStyle
;
...
@@ -30,7 +27,7 @@ public class DeviceInstanceForm {
...
@@ -30,7 +27,7 @@ public class DeviceInstanceForm {
/**
/**
* 设备类型ID
* 设备类型ID
*/
*/
@NotNull
(
message
=
"[设备类型ID]不能为空"
,
groups
=
{
ValidatorInsert
.
class
,
ValidatorList
.
class
})
@NotNull
(
message
=
"[设备类型ID]不能为空"
,
groups
=
{
ValidatorInsert
.
class
,
ValidatorList
.
class
,
ValidatorListById
.
class
})
private
Long
deviceTypeId
;
private
Long
deviceTypeId
;
/**
/**
* 设备名称
* 设备名称
...
@@ -47,7 +44,7 @@ public class DeviceInstanceForm {
...
@@ -47,7 +44,7 @@ public class DeviceInstanceForm {
/**
/**
* 设备业务ID
* 设备业务ID
*/
*/
@Length
(
max
=
50
,
message
=
"[设备
名称
]长度不合法"
,
groups
=
{
ValidatorInsert
.
class
,
ValidatorUpdate
.
class
,
ValidatorList
.
class
})
@Length
(
max
=
50
,
message
=
"[设备
业务ID
]长度不合法"
,
groups
=
{
ValidatorInsert
.
class
,
ValidatorUpdate
.
class
,
ValidatorList
.
class
})
private
String
businessId
;
private
String
businessId
;
/**
/**
* 设备型号
* 设备型号
...
...
src/main/java/com/esv/datacenter/iot/module/devicemodel/service/DeviceInstanceService.java
View file @
30ed0144
...
@@ -4,6 +4,9 @@ import com.baomidou.mybatisplus.extension.service.IService;
...
@@ -4,6 +4,9 @@ import com.baomidou.mybatisplus.extension.service.IService;
import
com.esv.datacenter.iot.common.vo.PageResultVO
;
import
com.esv.datacenter.iot.common.vo.PageResultVO
;
import
com.esv.datacenter.iot.module.devicemodel.entity.DeviceInstanceEntity
;
import
com.esv.datacenter.iot.module.devicemodel.entity.DeviceInstanceEntity
;
import
com.esv.datacenter.iot.module.devicemodel.form.DeviceInstanceForm
;
import
com.esv.datacenter.iot.module.devicemodel.form.DeviceInstanceForm
;
import
com.esv.datacenter.iot.module.devicemodel.vo.DeviceInstanceVO
;
import
java.util.List
;
/**
/**
* 设备实例Service
* 设备实例Service
...
@@ -77,5 +80,14 @@ public interface DeviceInstanceService extends IService<DeviceInstanceEntity> {
...
@@ -77,5 +80,14 @@ public interface DeviceInstanceService extends IService<DeviceInstanceEntity> {
**/
**/
PageResultVO
getInstance4Page
(
DeviceInstanceForm
form
);
PageResultVO
getInstance4Page
(
DeviceInstanceForm
form
);
/**
* @description 查询指定设备类型ID的设备实例列表
* @param deviceTypeId:
* @return int
* @author huangChaobin@esvtek.com
* @createTime 2020/08/06 20:25
**/
List
<
DeviceInstanceVO
>
getInstanceListByTypeId
(
Long
deviceTypeId
);
}
}
src/main/java/com/esv/datacenter/iot/module/devicemodel/service/DeviceTypeService.java
View file @
30ed0144
...
@@ -3,6 +3,7 @@ package com.esv.datacenter.iot.module.devicemodel.service;
...
@@ -3,6 +3,7 @@ package com.esv.datacenter.iot.module.devicemodel.service;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.esv.datacenter.iot.common.vo.PageResultVO
;
import
com.esv.datacenter.iot.common.vo.PageResultVO
;
import
com.esv.datacenter.iot.module.datamodel.vo.DataModelBriefVO
;
import
com.esv.datacenter.iot.module.datamodel.vo.DataModelBriefVO
;
import
com.esv.datacenter.iot.module.datamodel.vo.DataModelDetailVO
;
import
com.esv.datacenter.iot.module.devicemodel.entity.DeviceTypeEntity
;
import
com.esv.datacenter.iot.module.devicemodel.entity.DeviceTypeEntity
;
import
com.esv.datacenter.iot.module.devicemodel.form.DeviceTypeForm
;
import
com.esv.datacenter.iot.module.devicemodel.form.DeviceTypeForm
;
import
com.esv.datacenter.iot.module.devicemodel.vo.DeviceTypeBriefVO
;
import
com.esv.datacenter.iot.module.devicemodel.vo.DeviceTypeBriefVO
;
...
@@ -84,11 +85,11 @@ public interface DeviceTypeService extends IService<DeviceTypeEntity> {
...
@@ -84,11 +85,11 @@ public interface DeviceTypeService extends IService<DeviceTypeEntity> {
/**
/**
* @description 通过设备类型ID获取对应的数据模型列表
* @description 通过设备类型ID获取对应的数据模型列表
* @param deviceTypeId:
* @param deviceTypeId:
* @return java.util.List<com.esv.datacenter.iot.module.datamodel.vo.DataModel
Brief
VO>
* @return java.util.List<com.esv.datacenter.iot.module.datamodel.vo.DataModel
Detail
VO>
* @author huangChaobin@esvtek.com
* @author huangChaobin@esvtek.com
* @createTime 2020/08/07 14:34
* @createTime 2020/08/07 14:34
**/
**/
List
<
DataModel
Brief
VO
>
getDataModelByDeviceTypeId
(
Long
deviceTypeId
);
List
<
DataModel
Detail
VO
>
getDataModelByDeviceTypeId
(
Long
deviceTypeId
);
}
}
src/main/java/com/esv/datacenter/iot/module/devicemodel/service/impl/DeviceInstanceServiceImpl.java
View file @
30ed0144
...
@@ -12,6 +12,7 @@ import com.esv.datacenter.iot.module.devicemodel.dto.DeviceInstanceDto;
...
@@ -12,6 +12,7 @@ import com.esv.datacenter.iot.module.devicemodel.dto.DeviceInstanceDto;
import
com.esv.datacenter.iot.module.devicemodel.entity.DeviceInstanceEntity
;
import
com.esv.datacenter.iot.module.devicemodel.entity.DeviceInstanceEntity
;
import
com.esv.datacenter.iot.module.devicemodel.form.DeviceInstanceForm
;
import
com.esv.datacenter.iot.module.devicemodel.form.DeviceInstanceForm
;
import
com.esv.datacenter.iot.module.devicemodel.service.DeviceInstanceService
;
import
com.esv.datacenter.iot.module.devicemodel.service.DeviceInstanceService
;
import
com.esv.datacenter.iot.module.devicemodel.vo.DeviceInstanceVO
;
import
com.esv.datacenter.iot.module.devicemodel.vo.DeviceTypeVO
;
import
com.esv.datacenter.iot.module.devicemodel.vo.DeviceTypeVO
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.BeanUtils
;
...
@@ -88,9 +89,9 @@ public class DeviceInstanceServiceImpl extends ServiceImpl<DeviceInstanceDao, De
...
@@ -88,9 +89,9 @@ public class DeviceInstanceServiceImpl extends ServiceImpl<DeviceInstanceDao, De
this
.
baseMapper
.
select4Page
(
page
,
form
);
this
.
baseMapper
.
select4Page
(
page
,
form
);
List
<
DeviceInstanceDto
>
entityList
=
page
.
getRecords
();
List
<
DeviceInstanceDto
>
entityList
=
page
.
getRecords
();
List
<
Device
Typ
eVO
>
voList
=
new
ArrayList
<>();
List
<
Device
Instanc
eVO
>
voList
=
new
ArrayList
<>();
for
(
DeviceInstanceDto
entity
:
entityList
)
{
for
(
DeviceInstanceDto
entity
:
entityList
)
{
Device
TypeVO
vo
=
new
DeviceTyp
eVO
();
Device
InstanceVO
vo
=
new
DeviceInstanc
eVO
();
BeanUtils
.
copyProperties
(
entity
,
vo
);
BeanUtils
.
copyProperties
(
entity
,
vo
);
vo
.
setCreateTime
(
entity
.
getCreateTime
().
getTime
());
vo
.
setCreateTime
(
entity
.
getCreateTime
().
getTime
());
vo
.
setUpdateTime
(
entity
.
getUpdateTime
().
getTime
());
vo
.
setUpdateTime
(
entity
.
getUpdateTime
().
getTime
());
...
@@ -99,4 +100,22 @@ public class DeviceInstanceServiceImpl extends ServiceImpl<DeviceInstanceDao, De
...
@@ -99,4 +100,22 @@ public class DeviceInstanceServiceImpl extends ServiceImpl<DeviceInstanceDao, De
return
new
PageResultVO
(
page
,
voList
);
return
new
PageResultVO
(
page
,
voList
);
}
}
@Override
public
List
<
DeviceInstanceVO
>
getInstanceListByTypeId
(
Long
deviceTypeId
)
{
List
<
DeviceInstanceEntity
>
entityList
=
this
.
getBaseMapper
().
selectList
(
new
LambdaQueryWrapper
<
DeviceInstanceEntity
>()
.
eq
(
DeviceInstanceEntity:
:
getDeviceTypeId
,
deviceTypeId
)
.
orderByAsc
(
DeviceInstanceEntity:
:
getName
));
List
<
DeviceInstanceVO
>
voList
=
new
ArrayList
<>();
for
(
DeviceInstanceEntity
entity
:
entityList
)
{
DeviceInstanceVO
vo
=
new
DeviceInstanceVO
();
BeanUtils
.
copyProperties
(
entity
,
vo
);
vo
.
setCreateTime
(
entity
.
getCreateTime
().
getTime
());
vo
.
setUpdateTime
(
entity
.
getUpdateTime
().
getTime
());
voList
.
add
(
vo
);
}
return
voList
;
}
}
}
\ No newline at end of file
src/main/java/com/esv/datacenter/iot/module/devicemodel/service/impl/DeviceTypeServiceImpl.java
View file @
30ed0144
...
@@ -8,7 +8,10 @@ import com.esv.datacenter.iot.common.exception.EException;
...
@@ -8,7 +8,10 @@ import com.esv.datacenter.iot.common.exception.EException;
import
com.esv.datacenter.iot.common.response.ECode
;
import
com.esv.datacenter.iot.common.response.ECode
;
import
com.esv.datacenter.iot.common.vo.PageResultVO
;
import
com.esv.datacenter.iot.common.vo.PageResultVO
;
import
com.esv.datacenter.iot.module.datamodel.entity.DataModelEntity
;
import
com.esv.datacenter.iot.module.datamodel.entity.DataModelEntity
;
import
com.esv.datacenter.iot.module.datamodel.service.DataModelPropertyService
;
import
com.esv.datacenter.iot.module.datamodel.vo.DataModelBriefVO
;
import
com.esv.datacenter.iot.module.datamodel.vo.DataModelBriefVO
;
import
com.esv.datacenter.iot.module.datamodel.vo.DataModelDetailVO
;
import
com.esv.datacenter.iot.module.datamodel.vo.DataModelPropertyVO
;
import
com.esv.datacenter.iot.module.devicemodel.dao.DeviceTypeDao
;
import
com.esv.datacenter.iot.module.devicemodel.dao.DeviceTypeDao
;
import
com.esv.datacenter.iot.module.devicemodel.entity.DeviceTypeEntity
;
import
com.esv.datacenter.iot.module.devicemodel.entity.DeviceTypeEntity
;
import
com.esv.datacenter.iot.module.devicemodel.form.DeviceTypeForm
;
import
com.esv.datacenter.iot.module.devicemodel.form.DeviceTypeForm
;
...
@@ -31,6 +34,8 @@ public class DeviceTypeServiceImpl extends ServiceImpl<DeviceTypeDao, DeviceType
...
@@ -31,6 +34,8 @@ public class DeviceTypeServiceImpl extends ServiceImpl<DeviceTypeDao, DeviceType
@Autowired
@Autowired
private
DeviceDataMapService
deviceDataMapService
;
private
DeviceDataMapService
deviceDataMapService
;
@Autowired
private
DataModelPropertyService
dataModelPropertyService
;
@Override
@Override
public
Long
insertDeviceType
(
DeviceTypeForm
form
)
{
public
Long
insertDeviceType
(
DeviceTypeForm
form
)
{
...
@@ -120,13 +125,14 @@ public class DeviceTypeServiceImpl extends ServiceImpl<DeviceTypeDao, DeviceType
...
@@ -120,13 +125,14 @@ public class DeviceTypeServiceImpl extends ServiceImpl<DeviceTypeDao, DeviceType
}
}
@Override
@Override
public
List
<
DataModel
Brief
VO
>
getDataModelByDeviceTypeId
(
Long
deviceTypeId
)
{
public
List
<
DataModel
Detail
VO
>
getDataModelByDeviceTypeId
(
Long
deviceTypeId
)
{
List
<
DataModelEntity
>
entityList
=
deviceDataMapService
.
getDataModelByDeviceTypeId
(
deviceTypeId
);
List
<
DataModelEntity
>
entityList
=
deviceDataMapService
.
getDataModelByDeviceTypeId
(
deviceTypeId
);
List
<
DataModel
Brief
VO
>
voList
=
new
ArrayList
<>();
List
<
DataModel
Detail
VO
>
voList
=
new
ArrayList
<>();
for
(
DataModelEntity
entity
:
entityList
)
{
for
(
DataModelEntity
entity
:
entityList
)
{
DataModel
BriefVO
vo
=
new
DataModelBrief
VO
();
DataModel
DetailVO
vo
=
new
DataModelDetail
VO
();
BeanUtils
.
copyProperties
(
entity
,
vo
);
BeanUtils
.
copyProperties
(
entity
,
vo
);
vo
.
setPropertyList
(
dataModelPropertyService
.
getModelPropertyList
(
entity
.
getId
()));
voList
.
add
(
vo
);
voList
.
add
(
vo
);
}
}
...
...
src/main/resources/mapper/devicemodel/DeviceInstanceDao.xml
View file @
30ed0144
...
@@ -27,18 +27,18 @@
...
@@ -27,18 +27,18 @@
from device_instance a, device_type b
from device_instance a, device_type b
where a.device_type_id = b.id and a.deleted = false
where a.device_type_id = b.id and a.deleted = false
<if
test=
"queryObj.deviceTypeId != null"
>
<if
test=
"queryObj.deviceTypeId != null"
>
and device_type_id = #{queryObj.deviceTypeId}
and
a.
device_type_id = #{queryObj.deviceTypeId}
</if>
</if>
<if
test=
"queryObj.name != null"
>
<if
test=
"queryObj.name != null"
>
and name like CONCAT('%', #{queryObj.name}, '%')
and
a.
name like CONCAT('%', #{queryObj.name}, '%')
</if>
</if>
<if
test=
"queryObj.businessId != null"
>
<if
test=
"queryObj.businessId != null"
>
and business_id like CONCAT('%', #{queryObj.businessId}, '%')
and
a.
business_id like CONCAT('%', #{queryObj.businessId}, '%')
</if>
</if>
<if
test=
"queryObj.deviceModel != null"
>
<if
test=
"queryObj.deviceModel != null"
>
and device_model like CONCAT('%', #{queryObj.deviceModel}, '%')
and
a.
device_model like CONCAT('%', #{queryObj.deviceModel}, '%')
</if>
</if>
ORDER BY name ASC
ORDER BY
a.
name ASC
</select>
</select>
</mapper>
</mapper>
\ No newline at end of file
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