Przeglądaj źródła

[大屏][修改]:增加可配置选项

release_toaliyun_real
hupeng 7 lat temu
rodzic
commit
6d033aa549
4 zmienionych plików z 63 dodań i 9 usunięć
  1. +7
    -6
      mallinkAdmin/src/main/java/com/iformall/controller/WxDeviceController.java
  2. +1
    -1
      mallinkAdmin/src/main/java/com/iformall/controller/WxDeviceScreenAdController.java
  3. +2
    -1
      mallinkService/src/main/java/com/iformall/service/WxDeviceService.java
  4. +53
    -1
      mallinkService/src/main/java/com/iformall/service/impl/WxDeviceServiceImpl.java

+ 7
- 6
mallinkAdmin/src/main/java/com/iformall/controller/WxDeviceController.java Wyświetl plik

@@ -53,8 +53,8 @@ public class WxDeviceController extends BaseController {
wxDevice.setStatus(EnumDeviceStatus.VALID.getCode()); wxDevice.setStatus(EnumDeviceStatus.VALID.getCode());
wxDevice.setOnlineStatus(EnumDeviceOnlineStatus.OFFLINE.getCode()); wxDevice.setOnlineStatus(EnumDeviceOnlineStatus.OFFLINE.getCode());
wxDevice.setTenantId(getTenantId()); wxDevice.setTenantId(getTenantId());
wxDeviceService.saveOrUpdate(wxDevice);
return new ResultData();
return wxDeviceService.saveOrUpdate(wxDevice);
} }


@ApiOperation("更新设备") @ApiOperation("更新设备")
@@ -65,8 +65,8 @@ public class WxDeviceController extends BaseController {
if (wxDevice.getId() == null) if (wxDevice.getId() == null)
return new ResultData(ErrorCode.SYS_PARAMETER_ERROR); return new ResultData(ErrorCode.SYS_PARAMETER_ERROR);
wxDevice.setTenantId(getTenantId()); wxDevice.setTenantId(getTenantId());
wxDeviceService.saveOrUpdate(wxDevice);
return new ResultData();
return wxDeviceService.saveOrUpdate(wxDevice);
} }


@ApiOperation("设备详情") @ApiOperation("设备详情")
@@ -90,8 +90,9 @@ public class WxDeviceController extends BaseController {
wxDevice.setId(id); wxDevice.setId(id);
wxDevice.setTenantId(getTenantId()); wxDevice.setTenantId(getTenantId());
wxDevice.setStatus(EnumDeviceStatus.INVALID.getCode()); wxDevice.setStatus(EnumDeviceStatus.INVALID.getCode());
wxDeviceService.saveOrUpdate(wxDevice);
return new ResultData();

return wxDeviceService.saveOrUpdate(wxDevice);

} }


} }

+ 1
- 1
mallinkAdmin/src/main/java/com/iformall/controller/WxDeviceScreenAdController.java Wyświetl plik

@@ -95,7 +95,7 @@ public class WxDeviceScreenAdController extends BaseController {
wxDevice.setLastHbTime(new Date()); wxDevice.setLastHbTime(new Date());
wxDevice.setVersion(paramMap.get("version")); wxDevice.setVersion(paramMap.get("version"));
wxDeviceService.saveOrUpdate(wxDevice); wxDeviceService.saveOrUpdate(wxDevice);
return new ResultData(wxDevice);
return new ResultData(wxDevice.getConfig());
} }


@ApiOperation("基础信息") @ApiOperation("基础信息")


+ 2
- 1
mallinkService/src/main/java/com/iformall/service/WxDeviceService.java Wyświetl plik

@@ -2,6 +2,7 @@ package com.iformall.service;




import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.iformall.common.ResultData;
import com.iformall.domain.po.WxDevice; import com.iformall.domain.po.WxDevice;


import java.util.List; import java.util.List;
@@ -34,7 +35,7 @@ public interface WxDeviceService {
* *
* @param record * @param record
*/ */
void saveOrUpdate(WxDevice record);
ResultData saveOrUpdate(WxDevice record);




/** /**


+ 53
- 1
mallinkService/src/main/java/com/iformall/service/impl/WxDeviceServiceImpl.java Wyświetl plik

@@ -1,11 +1,15 @@
package com.iformall.service.impl; package com.iformall.service.impl;


import com.alibaba.fastjson.JSONObject;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.iformall.common.ErrorCode;
import com.iformall.common.IdWorker; import com.iformall.common.IdWorker;


import com.iformall.common.ResultData;
import com.iformall.domain.po.WxDevice; import com.iformall.domain.po.WxDevice;
import com.iformall.enums.EnumDeviceStatus; import com.iformall.enums.EnumDeviceStatus;
import com.iformall.enums.EnumDeviceType;
import com.iformall.mapper.WxDeviceMapper; import com.iformall.mapper.WxDeviceMapper;
import com.iformall.service.WxDeviceService; import com.iformall.service.WxDeviceService;
import org.slf4j.Logger; import org.slf4j.Logger;
@@ -24,6 +28,14 @@ public class WxDeviceServiceImpl implements WxDeviceService {
@Autowired @Autowired
WxDeviceMapper wxDeviceMapper; WxDeviceMapper wxDeviceMapper;


final String DEVICE_DEFAULT_CONFIG_SCREEN_AD = "{" +
"\"heartBeatIntervel\":300000," + //5MIN
"\"dataRefreshIntervel\":3600000," + //1HOUR
"\"pageChangeInterval\":10000," + //10SEC
"\"animationTheme\":0" +
"}";


@Override @Override
public PageInfo<WxDevice> listAsPage(WxDevice record, Integer pageIndex, Integer pageSize) { public PageInfo<WxDevice> listAsPage(WxDevice record, Integer pageIndex, Integer pageSize) {
return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxDeviceMapper.findList(record)); return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxDeviceMapper.findList(record));
@@ -34,20 +46,60 @@ public class WxDeviceServiceImpl implements WxDeviceService {
return wxDeviceMapper.selectByPrimaryKey(id); return wxDeviceMapper.selectByPrimaryKey(id);
} }



private String getDefaultConfig(int type) {

if (type == EnumDeviceType.SCREEN.getCode()) {
return DEVICE_DEFAULT_CONFIG_SCREEN_AD;
}
return null;
}

private boolean checkConfig(int type, String config) {
JSONObject jConfig;
try {
jConfig = JSONObject.parseObject(config);
} catch (Exception e) {
return false;
}

if (type == EnumDeviceType.SCREEN.getCode()) {
Integer heartBeatIntervel = jConfig.getInteger("heartBeatIntervel");
Integer dataRefreshIntervel = jConfig.getInteger("dataRefreshIntervel");
Integer pageChangeInterval = jConfig.getInteger("pageChangeInterval");
Integer animationTheme = jConfig.getInteger("animationTheme");
if (heartBeatIntervel == null ||
dataRefreshIntervel == null ||
pageChangeInterval == null ||
animationTheme == null) {
return false;
}
}
return true;
}

@Override @Override
public void saveOrUpdate(WxDevice record) {
public ResultData saveOrUpdate(WxDevice record) {
if (record.getId() == null) { if (record.getId() == null) {
final IdWorker idWorker = IdWorker.get(); final IdWorker idWorker = IdWorker.get();
record.setId(idWorker.nextId()); record.setId(idWorker.nextId());
record.setCreateDate(new Date()); record.setCreateDate(new Date());
record.setUpdateDate(new Date()); record.setUpdateDate(new Date());
record.setConfig(getDefaultConfig(record.getType()));
wxDeviceMapper.insertSelective(record); wxDeviceMapper.insertSelective(record);
} else { } else {
record.setUpdateDate(new Date()); record.setUpdateDate(new Date());
if (record.getConfig() != null) {
if (!checkConfig(record.getType(),record.getConfig())) {
return new ResultData(ErrorCode.SYS_PARAMETER_ERROR);
}
}
wxDeviceMapper.updateByPrimaryKeySelective(record); wxDeviceMapper.updateByPrimaryKeySelective(record);
} }
return new ResultData();
} }



@Override @Override
public void deleteById(Long id) { public void deleteById(Long id) {
wxDeviceMapper.deleteByPrimaryKey(id); wxDeviceMapper.deleteByPrimaryKey(id);


Ładowanie…
Anuluj
Zapisz