|
|
@@ -11,12 +11,14 @@ import com.yunfeiyun.agmp.common.core.page.TableDataInfo;
|
|
|
import com.yunfeiyun.agmp.common.core.page.TableSupport;
|
|
|
import com.yunfeiyun.agmp.common.enums.BusinessType;
|
|
|
import com.yunfeiyun.agmp.common.log.LogCore;
|
|
|
+import com.yunfeiyun.agmp.common.utils.JSONUtils;
|
|
|
import com.yunfeiyun.agmp.common.utils.StringUtils;
|
|
|
import com.yunfeiyun.agmp.common.utils.poi.ExcelUtil;
|
|
|
import com.yunfeiyun.agmp.iot.common.constant.IotErrorCode;
|
|
|
import com.yunfeiyun.agmp.iot.common.constant.devicetype.IotDeviceDictConst;
|
|
|
import com.yunfeiyun.agmp.iot.common.domain.IotCbddata;
|
|
|
import com.yunfeiyun.agmp.iot.common.domain.IotCbdimg;
|
|
|
+import com.yunfeiyun.agmp.iot.common.domain.IotDevice;
|
|
|
import com.yunfeiyun.agmp.iot.common.domain.IotXctdata;
|
|
|
import com.yunfeiyun.agmp.iot.common.domain.reqvo.IotCbdConfigEditReqVo;
|
|
|
import com.yunfeiyun.agmp.iot.common.exception.IotBizException;
|
|
|
@@ -25,6 +27,7 @@ import com.yunfeiyun.agmp.iot.common.service.TypeCacheService;
|
|
|
import com.yunfeiyun.agmp.iotm.common.controller.BaseController;
|
|
|
import com.yunfeiyun.agmp.iotm.device.common.domin.IotDeviceDataListReqVo;
|
|
|
import com.yunfeiyun.agmp.iotm.device.common.domin.IotDeviceDataListResVo;
|
|
|
+import com.yunfeiyun.agmp.iotm.device.common.domin.IotDeviceXctDataListResVo;
|
|
|
import com.yunfeiyun.agmp.iotm.device.common.service.IotDeviceRefreshService;
|
|
|
import com.yunfeiyun.agmp.iotm.device.pest.domain.IotCbdModifyDevRecogTypeReqVo;
|
|
|
import com.yunfeiyun.agmp.iotm.device.pest.domain.IotCbdimgCountResVo;
|
|
|
@@ -219,7 +222,7 @@ public class IotDeviceCbdController extends BaseController {
|
|
|
}
|
|
|
@Log(title = "设备数据", businessType = BusinessType.EXPORT)
|
|
|
@PostMapping("/data/export")
|
|
|
- public void dataExport(HttpServletResponse response, @RequestBody IotDeviceDataListReqVo reqVo) {
|
|
|
+ public void dataExport(HttpServletRequest request, HttpServletResponse response, @RequestBody IotDeviceDataListReqVo reqVo) {
|
|
|
ValidateUtil.validateDevBid(reqVo.getDevBid());
|
|
|
String devBid = reqVo.getDevBid();
|
|
|
String startTime = reqVo.getStartTime();
|
|
|
@@ -230,38 +233,44 @@ public class IotDeviceCbdController extends BaseController {
|
|
|
throw new IotBizException(IotErrorCode.PARAM_INVALID.getCode(), "参数不能为空");
|
|
|
}
|
|
|
}
|
|
|
+ IotDevice iotDevice = iIotDeviceService.selectIotDeviceByDevBid(devBid);
|
|
|
+ if (iotDevice == null) {
|
|
|
+ throw new IotBizException(IotErrorCode.PARAM_INVALID.getCode(), "设备不存在");
|
|
|
+ }
|
|
|
|
|
|
- List<IotDeviceDataListResVo> list = new ArrayList<>();
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
+ map.put("devBid", reqVo.getDevBid());
|
|
|
+ if (StringUtils.isNotEmpty(reqVo.getStartTime()) && StringUtils.isEmpty(reqVo.getEndTime())) {
|
|
|
+ map.put("gte_cbddataCreatedDate", reqVo.getStartTime());
|
|
|
+ }
|
|
|
+ if (StringUtils.isEmpty(reqVo.getStartTime()) && StringUtils.isNotEmpty(reqVo.getEndTime())) {
|
|
|
+ map.put("lte_cbddataCreatedDate", reqVo.getEndTime());
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotEmpty(reqVo.getStartTime()) && StringUtils.isNotEmpty(reqVo.getEndTime())) {
|
|
|
+ map.put("time_cbddataCreatedDate", reqVo.getStartTime() + "," + reqVo.getEndTime());
|
|
|
+ }
|
|
|
|
|
|
- Map<String, Object> map = new HashMap<>();
|
|
|
- map.put("devBid", devBid);
|
|
|
- if (StringUtils.isNotEmpty(reqVo.getStartTime()) && StringUtils.isEmpty(reqVo.getEndTime())) {
|
|
|
- map.put("gte_cbddataCreatedDate", reqVo.getStartTime());
|
|
|
- }
|
|
|
- if (StringUtils.isEmpty(reqVo.getStartTime()) && StringUtils.isNotEmpty(reqVo.getEndTime())) {
|
|
|
- map.put("lte_cbddataCreatedDate", reqVo.getEndTime());
|
|
|
- }
|
|
|
- if (StringUtils.isNotEmpty(reqVo.getStartTime()) && StringUtils.isNotEmpty(reqVo.getEndTime())) {
|
|
|
- map.put("time_cbddataCreatedDate", reqVo.getStartTime() + "," + reqVo.getEndTime());
|
|
|
+ if(iotDevice.getDevtypeBid().equals(IotDeviceDictConst.TYPE_YF_XCT)) {
|
|
|
+ List<IotXctdata> xctdataList = mongoService.findAll(IotXctdata.class, map, "cbddataCreatedDate desc");
|
|
|
+ List<IotDeviceXctDataListResVo> list = new ArrayList<>();
|
|
|
+ for(IotXctdata iotXctdata: xctdataList){
|
|
|
+ IotDeviceXctDataListResVo resVo = JSONUtils.toObject(iotXctdata.getCdbdataContent().toJSONString(), IotDeviceXctDataListResVo.class);
|
|
|
+ resVo.setCbddataCreatedDate(iotXctdata.getCbddataCreatedDate());
|
|
|
+ list.add(resVo);
|
|
|
}
|
|
|
-
|
|
|
- List<IotCbddata> all = mongoService.findAll(IotCbddata.class, map);
|
|
|
-
|
|
|
-
|
|
|
- for (IotCbddata iotCbddata : all) {
|
|
|
- IotDeviceDataListResVo resVo = JSONObject.parseObject(iotCbddata.getCdbdataContent().toJSONString(), IotDeviceDataListResVo.class);
|
|
|
-// String stamp = resVo.getStamp();
|
|
|
-// DateTimeFormatter dtf = DateTimeFormatter.ofPattern(CommonEnums.PATTERN_DATETIME.getCode());
|
|
|
-// DateTimeFormatter dtf2 = DateTimeFormatter.ofPattern("yyyyMMddHHmmss");
|
|
|
-// resVo.setStamp(LocalDateTime.parse(stamp, dtf2).format(dtf));
|
|
|
- resVo.setStamp(iotCbddata.getCbddataCreatedDate());
|
|
|
+ ExcelUtil<IotDeviceXctDataListResVo> util = new ExcelUtil<>(IotDeviceXctDataListResVo.class);
|
|
|
+ util.exportExcel(response, list, "设备数据");
|
|
|
+ }else{
|
|
|
+ List<IotCbddata> cbddataList = mongoService.findAll(IotCbddata.class, map, "cbddataCreatedDate desc");
|
|
|
+ List<IotDeviceDataListResVo> list = new ArrayList<>();
|
|
|
+ for(IotCbddata iotCbddata: cbddataList){
|
|
|
+ IotDeviceDataListResVo resVo = JSONUtils.toObject(iotCbddata.getCdbdataContent().toJSONString(), IotDeviceDataListResVo.class);
|
|
|
+ resVo.setCbddataCreatedDate(iotCbddata.getCbddataCreatedDate());
|
|
|
list.add(resVo);
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
ExcelUtil<IotDeviceDataListResVo> util = new ExcelUtil<>(IotDeviceDataListResVo.class);
|
|
|
util.exportExcel(response, list, "设备数据");
|
|
|
-
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
@GetMapping("/refresh/{devBid}")
|