|
|
@@ -21,6 +21,7 @@ import com.zhongshu.iot.server.core.service.device.GateWayInfoService;
|
|
|
import com.zhongshu.iot.server.core.util.bean.BeanUtils;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.commons.lang3.ObjectUtils;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
@@ -81,22 +82,28 @@ public class IotTemplateManagerService extends SuperService {
|
|
|
* @param deviceInfo
|
|
|
* @return
|
|
|
*/
|
|
|
- public ResultContent deviceBindAutoIotTemplate(IotThing iotThing, DeviceInfo deviceInfo) {
|
|
|
+ public ResultContent deviceBindIotTemplate(IotThing iotThing, DeviceInfo deviceInfo) {
|
|
|
if (ObjectUtils.isEmpty(iotThing) || ObjectUtils.isEmpty(deviceInfo)) {
|
|
|
return ResultContent.buildFail("数据不全");
|
|
|
}
|
|
|
+ String projectInfoCode = "";
|
|
|
+ // 分组code
|
|
|
+ if (ObjectUtils.isNotEmpty(deviceInfo)) {
|
|
|
+ projectInfoCode = deviceInfo.getProjectInfoCode();
|
|
|
+ }
|
|
|
+ if (StringUtils.isEmpty(projectInfoCode)) {
|
|
|
+ projectInfoCode = iotThing.getProjectCode();
|
|
|
+ }
|
|
|
// 所属产品信息
|
|
|
IotTemplate iotTemplate = iotTemplateDao.findTopById(iotThing.getIotTemplateId());
|
|
|
- return deviceBindAutoIotTemplate(iotTemplate, deviceInfo, iotThing.getId());
|
|
|
+ return deviceBindAutoIotTemplate(iotTemplate, deviceInfo, iotThing.getId(), projectInfoCode);
|
|
|
}
|
|
|
|
|
|
- public ResultContent deviceBindAutoIotTemplate(IotTemplate iotTemplate, DeviceInfo deviceInfo, String iotThingId) {
|
|
|
- if (ObjectUtils.isEmpty(iotTemplate) || ObjectUtils.isEmpty(deviceInfo)) {
|
|
|
+ public ResultContent deviceBindAutoIotTemplate(IotTemplate iotTemplate, DeviceInfo deviceInfo,
|
|
|
+ String iotThingId, String projectInfoCode) {
|
|
|
+ if (ObjectUtils.isEmpty(iotTemplate)) {
|
|
|
return ResultContent.buildFail("数据不全");
|
|
|
}
|
|
|
- // 分组code
|
|
|
- String projectInfoCode = deviceInfo.getProjectInfoCode();
|
|
|
-
|
|
|
// 判断该设备是否已绑定该模版
|
|
|
IotTemplate temp = iotTemplateDao.findTopByIotThingIdAndIotDataTypeAndIotTemplateId(iotThingId, IotDataType.Device, iotTemplate.getId());
|
|
|
IotTemplate newIotTemplate = null;
|
|
|
@@ -110,7 +117,9 @@ public class IotTemplateManagerService extends SuperService {
|
|
|
newIotTemplate.setIotDataType(IotDataType.Device);
|
|
|
newIotTemplate.setIotThingId(iotThingId);
|
|
|
newIotTemplate.setIotTemplateId(iotTemplate.getId());
|
|
|
- newIotTemplate.setDeviceId(deviceInfo.getDeviceId());
|
|
|
+ if (ObjectUtils.isNotEmpty(deviceInfo)) {
|
|
|
+ newIotTemplate.setDeviceId(deviceInfo.getDeviceId());
|
|
|
+ }
|
|
|
newIotTemplate.setProjectCode(projectInfoCode);
|
|
|
iotTemplateDao.save(newIotTemplate);
|
|
|
|
|
|
@@ -150,7 +159,9 @@ public class IotTemplateManagerService extends SuperService {
|
|
|
main.setIotMainTemplateId(it.getId());
|
|
|
|
|
|
main.setIotDataType(IotDataType.Device);
|
|
|
- main.setDeviceId(deviceInfo.getDeviceId());
|
|
|
+ if (deviceInfo != null) {
|
|
|
+ main.setDeviceId(deviceInfo.getDeviceId());
|
|
|
+ }
|
|
|
main.setProjectCode(projectInfoCode);
|
|
|
main.setAddTime(System.currentTimeMillis());
|
|
|
if (ObjectUtils.isNotEmpty(gateWayInfo)) {
|