diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java index f6e0f85..2474a6c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.alarm.controller; import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.core.base.controller.BaseController; @@ -34,7 +35,7 @@ private ICommonPermissionService iCommonPermissionService; @Value("${smartcity.office.maxRowsExcel}") - private int maxRowsExcel; + private int maxRowsExcel; /** * 获取列表 @@ -42,26 +43,22 @@ @RequestMapping(value = "/type") @ResponseBody public List> listAlarmType(String condition) { - List> list = new ArrayList<>(); - list = sysDictService.getTypeViaName("报警状态"); + List> list = sysDictService.getTypeViaName("报警状态"); return list; } @RequestMapping(value = "/contentType") @ResponseBody - public Map listContentType(@RequestParam(value = "alarmType" ,required = true) String alarmType, HttpServletRequest httpServletRequest) { + public Map listContentType(@RequestParam(value = "alarmType", required = true) String alarmType, HttpServletRequest httpServletRequest) { String deviceType = httpServletRequest.getParameter("deviceType"); - if (ToolUtil.isEmpty(deviceType)){ - deviceType=""; - } - Map retMap = new HashMap<>(); - Map listMap = new HashMap<>(); - List> list = new ArrayList<>(); - list = sysDictService.getAlarmContent(alarmType,deviceType); - listMap.put("list",list); - retMap.put("code",200); - retMap.put("message","success"); - retMap.put("data",listMap); + Long deptId = iCommonPermissionService.getCurrLoginUser().getDeptId(); + Map retMap = new HashMap<>(); + Map listMap = new HashMap<>(); + List> list = sysDictService.getAlarmContent(deptId, alarmType, deviceType); + listMap.put("list", list); + retMap.put("code", 200); + retMap.put("message", "success"); + retMap.put("data", listMap); return retMap; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java index f6e0f85..2474a6c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.alarm.controller; import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.core.base.controller.BaseController; @@ -34,7 +35,7 @@ private ICommonPermissionService iCommonPermissionService; @Value("${smartcity.office.maxRowsExcel}") - private int maxRowsExcel; + private int maxRowsExcel; /** * 获取列表 @@ -42,26 +43,22 @@ @RequestMapping(value = "/type") @ResponseBody public List> listAlarmType(String condition) { - List> list = new ArrayList<>(); - list = sysDictService.getTypeViaName("报警状态"); + List> list = sysDictService.getTypeViaName("报警状态"); return list; } @RequestMapping(value = "/contentType") @ResponseBody - public Map listContentType(@RequestParam(value = "alarmType" ,required = true) String alarmType, HttpServletRequest httpServletRequest) { + public Map listContentType(@RequestParam(value = "alarmType", required = true) String alarmType, HttpServletRequest httpServletRequest) { String deviceType = httpServletRequest.getParameter("deviceType"); - if (ToolUtil.isEmpty(deviceType)){ - deviceType=""; - } - Map retMap = new HashMap<>(); - Map listMap = new HashMap<>(); - List> list = new ArrayList<>(); - list = sysDictService.getAlarmContent(alarmType,deviceType); - listMap.put("list",list); - retMap.put("code",200); - retMap.put("message","success"); - retMap.put("data",listMap); + Long deptId = iCommonPermissionService.getCurrLoginUser().getDeptId(); + Map retMap = new HashMap<>(); + Map listMap = new HashMap<>(); + List> list = sysDictService.getAlarmContent(deptId, alarmType, deviceType); + listMap.put("list", list); + retMap.put("code", 200); + retMap.put("message", "success"); + retMap.put("data", listMap); return retMap; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java index 7585fc9..dc92982 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.alarm.service; import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.SysDict; import com.baomidou.mybatisplus.service.IService; @@ -18,7 +19,7 @@ public interface ISysDictService extends IService { List> getTypeViaName(String typeName); List> getTypeViaCode(String code); - List> getAlarmContent(String alarmType,String devType); + List> getAlarmContent(Long deptId, String alarmType, String devType); List> testPage(Page> page); String getDBtime(); // String getUsernameById(long id); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java index f6e0f85..2474a6c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.alarm.controller; import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.core.base.controller.BaseController; @@ -34,7 +35,7 @@ private ICommonPermissionService iCommonPermissionService; @Value("${smartcity.office.maxRowsExcel}") - private int maxRowsExcel; + private int maxRowsExcel; /** * 获取列表 @@ -42,26 +43,22 @@ @RequestMapping(value = "/type") @ResponseBody public List> listAlarmType(String condition) { - List> list = new ArrayList<>(); - list = sysDictService.getTypeViaName("报警状态"); + List> list = sysDictService.getTypeViaName("报警状态"); return list; } @RequestMapping(value = "/contentType") @ResponseBody - public Map listContentType(@RequestParam(value = "alarmType" ,required = true) String alarmType, HttpServletRequest httpServletRequest) { + public Map listContentType(@RequestParam(value = "alarmType", required = true) String alarmType, HttpServletRequest httpServletRequest) { String deviceType = httpServletRequest.getParameter("deviceType"); - if (ToolUtil.isEmpty(deviceType)){ - deviceType=""; - } - Map retMap = new HashMap<>(); - Map listMap = new HashMap<>(); - List> list = new ArrayList<>(); - list = sysDictService.getAlarmContent(alarmType,deviceType); - listMap.put("list",list); - retMap.put("code",200); - retMap.put("message","success"); - retMap.put("data",listMap); + Long deptId = iCommonPermissionService.getCurrLoginUser().getDeptId(); + Map retMap = new HashMap<>(); + Map listMap = new HashMap<>(); + List> list = sysDictService.getAlarmContent(deptId, alarmType, deviceType); + listMap.put("list", list); + retMap.put("code", 200); + retMap.put("message", "success"); + retMap.put("data", listMap); return retMap; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java index 7585fc9..dc92982 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.alarm.service; import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.SysDict; import com.baomidou.mybatisplus.service.IService; @@ -18,7 +19,7 @@ public interface ISysDictService extends IService { List> getTypeViaName(String typeName); List> getTypeViaCode(String code); - List> getAlarmContent(String alarmType,String devType); + List> getAlarmContent(Long deptId, String alarmType, String devType); List> testPage(Page> page); String getDBtime(); // String getUsernameById(long id); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java index 45bc534..1a26ec0 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java @@ -1,6 +1,10 @@ package com.casic.missiles.modular.alarm.service.impl; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.util.EhcacheConstant; +import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; import com.casic.missiles.modular.system.model.SysDict; @@ -8,6 +12,8 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.HashMap; import java.util.List; import java.util.Map; @@ -26,27 +32,39 @@ private SysDictMapper sysDictMapper; @Override - public List> getTypeViaName(String typeName){ + public List> getTypeViaName(String typeName) { return this.baseMapper.getTypeViaName(typeName); } @Override - public List> getTypeViaCode(String code){ + public List> getTypeViaCode(String code) { return this.baseMapper.getTypeViaCode(code); } @Override - public List> getAlarmContent(String alarmType,String devType){ - return this.baseMapper.getAlarmContent(alarmType,devType); + public List> getAlarmContent(Long deptId, String alarmType, String devType) { + + if (ToolUtil.isEmpty(devType)) { + List> alarmContentList = new ArrayList<>(); + String deviceTypes = baseMapper.getDeviceType(deptId); + for (Object deviceType : JSON.parseObject(deviceTypes, List.class)) { + devType = deviceType.toString(); + List> alarmContent = this.baseMapper.getAlarmContent(alarmType, devType); + alarmContentList.addAll(alarmContent); + } + return alarmContentList; + } else { + return this.baseMapper.getAlarmContent(alarmType, devType); + } } @Override - public List> testPage(Page> page){ + public List> testPage(Page> page) { return this.baseMapper.testPage(page); } @Override - public String getDBtime(){ + public String getDBtime() { return this.baseMapper.getDBtime(); } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java index f6e0f85..2474a6c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.alarm.controller; import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.core.base.controller.BaseController; @@ -34,7 +35,7 @@ private ICommonPermissionService iCommonPermissionService; @Value("${smartcity.office.maxRowsExcel}") - private int maxRowsExcel; + private int maxRowsExcel; /** * 获取列表 @@ -42,26 +43,22 @@ @RequestMapping(value = "/type") @ResponseBody public List> listAlarmType(String condition) { - List> list = new ArrayList<>(); - list = sysDictService.getTypeViaName("报警状态"); + List> list = sysDictService.getTypeViaName("报警状态"); return list; } @RequestMapping(value = "/contentType") @ResponseBody - public Map listContentType(@RequestParam(value = "alarmType" ,required = true) String alarmType, HttpServletRequest httpServletRequest) { + public Map listContentType(@RequestParam(value = "alarmType", required = true) String alarmType, HttpServletRequest httpServletRequest) { String deviceType = httpServletRequest.getParameter("deviceType"); - if (ToolUtil.isEmpty(deviceType)){ - deviceType=""; - } - Map retMap = new HashMap<>(); - Map listMap = new HashMap<>(); - List> list = new ArrayList<>(); - list = sysDictService.getAlarmContent(alarmType,deviceType); - listMap.put("list",list); - retMap.put("code",200); - retMap.put("message","success"); - retMap.put("data",listMap); + Long deptId = iCommonPermissionService.getCurrLoginUser().getDeptId(); + Map retMap = new HashMap<>(); + Map listMap = new HashMap<>(); + List> list = sysDictService.getAlarmContent(deptId, alarmType, deviceType); + listMap.put("list", list); + retMap.put("code", 200); + retMap.put("message", "success"); + retMap.put("data", listMap); return retMap; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java index 7585fc9..dc92982 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.alarm.service; import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.SysDict; import com.baomidou.mybatisplus.service.IService; @@ -18,7 +19,7 @@ public interface ISysDictService extends IService { List> getTypeViaName(String typeName); List> getTypeViaCode(String code); - List> getAlarmContent(String alarmType,String devType); + List> getAlarmContent(Long deptId, String alarmType, String devType); List> testPage(Page> page); String getDBtime(); // String getUsernameById(long id); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java index 45bc534..1a26ec0 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java @@ -1,6 +1,10 @@ package com.casic.missiles.modular.alarm.service.impl; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.util.EhcacheConstant; +import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; import com.casic.missiles.modular.system.model.SysDict; @@ -8,6 +12,8 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.HashMap; import java.util.List; import java.util.Map; @@ -26,27 +32,39 @@ private SysDictMapper sysDictMapper; @Override - public List> getTypeViaName(String typeName){ + public List> getTypeViaName(String typeName) { return this.baseMapper.getTypeViaName(typeName); } @Override - public List> getTypeViaCode(String code){ + public List> getTypeViaCode(String code) { return this.baseMapper.getTypeViaCode(code); } @Override - public List> getAlarmContent(String alarmType,String devType){ - return this.baseMapper.getAlarmContent(alarmType,devType); + public List> getAlarmContent(Long deptId, String alarmType, String devType) { + + if (ToolUtil.isEmpty(devType)) { + List> alarmContentList = new ArrayList<>(); + String deviceTypes = baseMapper.getDeviceType(deptId); + for (Object deviceType : JSON.parseObject(deviceTypes, List.class)) { + devType = deviceType.toString(); + List> alarmContent = this.baseMapper.getAlarmContent(alarmType, devType); + alarmContentList.addAll(alarmContent); + } + return alarmContentList; + } else { + return this.baseMapper.getAlarmContent(alarmType, devType); + } } @Override - public List> testPage(Page> page){ + public List> testPage(Page> page) { return this.baseMapper.testPage(page); } @Override - public String getDBtime(){ + public String getDBtime() { return this.baseMapper.getDBtime(); } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java index 04da3e4..668188e 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java @@ -95,6 +95,8 @@ dataGasFlow.setInstantsVelocity(gasFlowData.containsKey("ssls") ? gasFlowData.get("ssls").toString() : ""); //介质温度 dataGasFlow.setAmbocetorTemperture(gasFlowData.containsKey("jzwd") ? gasFlowData.get("jzwd").toString() : ""); + //时间校验 +// Boolean oneDay=dataGasFlow.checklogTime(dataGasFlow); // 保存到数据库 同时计算日/月用水量 double flowAccToday = gasFlowDataService.saveGasFlowData(dataGasFlow); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java index f6e0f85..2474a6c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.alarm.controller; import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.core.base.controller.BaseController; @@ -34,7 +35,7 @@ private ICommonPermissionService iCommonPermissionService; @Value("${smartcity.office.maxRowsExcel}") - private int maxRowsExcel; + private int maxRowsExcel; /** * 获取列表 @@ -42,26 +43,22 @@ @RequestMapping(value = "/type") @ResponseBody public List> listAlarmType(String condition) { - List> list = new ArrayList<>(); - list = sysDictService.getTypeViaName("报警状态"); + List> list = sysDictService.getTypeViaName("报警状态"); return list; } @RequestMapping(value = "/contentType") @ResponseBody - public Map listContentType(@RequestParam(value = "alarmType" ,required = true) String alarmType, HttpServletRequest httpServletRequest) { + public Map listContentType(@RequestParam(value = "alarmType", required = true) String alarmType, HttpServletRequest httpServletRequest) { String deviceType = httpServletRequest.getParameter("deviceType"); - if (ToolUtil.isEmpty(deviceType)){ - deviceType=""; - } - Map retMap = new HashMap<>(); - Map listMap = new HashMap<>(); - List> list = new ArrayList<>(); - list = sysDictService.getAlarmContent(alarmType,deviceType); - listMap.put("list",list); - retMap.put("code",200); - retMap.put("message","success"); - retMap.put("data",listMap); + Long deptId = iCommonPermissionService.getCurrLoginUser().getDeptId(); + Map retMap = new HashMap<>(); + Map listMap = new HashMap<>(); + List> list = sysDictService.getAlarmContent(deptId, alarmType, deviceType); + listMap.put("list", list); + retMap.put("code", 200); + retMap.put("message", "success"); + retMap.put("data", listMap); return retMap; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java index 7585fc9..dc92982 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.alarm.service; import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.SysDict; import com.baomidou.mybatisplus.service.IService; @@ -18,7 +19,7 @@ public interface ISysDictService extends IService { List> getTypeViaName(String typeName); List> getTypeViaCode(String code); - List> getAlarmContent(String alarmType,String devType); + List> getAlarmContent(Long deptId, String alarmType, String devType); List> testPage(Page> page); String getDBtime(); // String getUsernameById(long id); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java index 45bc534..1a26ec0 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java @@ -1,6 +1,10 @@ package com.casic.missiles.modular.alarm.service.impl; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.util.EhcacheConstant; +import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; import com.casic.missiles.modular.system.model.SysDict; @@ -8,6 +12,8 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.HashMap; import java.util.List; import java.util.Map; @@ -26,27 +32,39 @@ private SysDictMapper sysDictMapper; @Override - public List> getTypeViaName(String typeName){ + public List> getTypeViaName(String typeName) { return this.baseMapper.getTypeViaName(typeName); } @Override - public List> getTypeViaCode(String code){ + public List> getTypeViaCode(String code) { return this.baseMapper.getTypeViaCode(code); } @Override - public List> getAlarmContent(String alarmType,String devType){ - return this.baseMapper.getAlarmContent(alarmType,devType); + public List> getAlarmContent(Long deptId, String alarmType, String devType) { + + if (ToolUtil.isEmpty(devType)) { + List> alarmContentList = new ArrayList<>(); + String deviceTypes = baseMapper.getDeviceType(deptId); + for (Object deviceType : JSON.parseObject(deviceTypes, List.class)) { + devType = deviceType.toString(); + List> alarmContent = this.baseMapper.getAlarmContent(alarmType, devType); + alarmContentList.addAll(alarmContent); + } + return alarmContentList; + } else { + return this.baseMapper.getAlarmContent(alarmType, devType); + } } @Override - public List> testPage(Page> page){ + public List> testPage(Page> page) { return this.baseMapper.testPage(page); } @Override - public String getDBtime(){ + public String getDBtime() { return this.baseMapper.getDBtime(); } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java index 04da3e4..668188e 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java @@ -95,6 +95,8 @@ dataGasFlow.setInstantsVelocity(gasFlowData.containsKey("ssls") ? gasFlowData.get("ssls").toString() : ""); //介质温度 dataGasFlow.setAmbocetorTemperture(gasFlowData.containsKey("jzwd") ? gasFlowData.get("jzwd").toString() : ""); + //时间校验 +// Boolean oneDay=dataGasFlow.checklogTime(dataGasFlow); // 保存到数据库 同时计算日/月用水量 double flowAccToday = gasFlowDataService.saveGasFlowData(dataGasFlow); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/SysDictMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/SysDictMapper.java index 7184c28..4c00c45 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/SysDictMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/SysDictMapper.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.system.dao; import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.SysDict; import com.baomidou.mybatisplus.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; @@ -18,22 +19,40 @@ */ public interface SysDictMapper extends BaseMapper { - List> getTypeViaName(@Param("typeName") String typeName); - List> getTypeViaCode(@Param("code") String code); - List> getAlarmContent(@Param("alarmType") String alarmType,@Param("deviceType") String devType); - List> testPage(@Param("page") Page> page); + List> getTypeViaName(@Param("typeName") String typeName); + + List> getTypeViaCode(@Param("code") String code); + + List> getAlarmContent(@Param("alarmType") String alarmType, @Param("deviceType") String devType); + + String getDeviceType(@Param("deptid")Long deptId); + + List> testPage(@Param("page") Page> page); + String getDeviceTypeNameById(@Param("deviceTypeId") String deviceTypeId); + String getDeptNameById(@Param("deptid") long deptid); + String getAlarmTypeNameByCodeNum(@Param("alarmType") String alarmType); + String getAlarmContentName(@Param("id") int id); + int getAlarmContentByName(@Param("sName") String sName); + String getAlarmContentNameById(@Param("alarmContent") int alarmContent); + String getJobStatusNameByCodeNum(@Param("jobStatus") String jobStatus); - String getDictNameByCodeCodeNum(@Param("codeNum") String codeNum,@Param("code") String code); - Map getWellInfoViaCode(@Param("wellCode") String wellCode); -// String getAlarmContentName(@Param("id") int id,@Param("deviceType") int deviceType,@Param("alarmType") int alarmType); + + String getDictNameByCodeCodeNum(@Param("codeNum") String codeNum, @Param("code") String code); + + Map getWellInfoViaCode(@Param("wellCode") String wellCode); + + // String getAlarmContentName(@Param("id") int id,@Param("deviceType") int deviceType,@Param("alarmType") int alarmType); String getDBtime(); + String getUsernameById(@Param("id") long id); - Map getUserInfoById(@Param("id") long id); - Long getUserByDept(@Param("deptid")Long deptid); + + Map getUserInfoById(@Param("id") long id); + + Long getUserByDept(@Param("deptid") Long deptid); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java index f6e0f85..2474a6c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.alarm.controller; import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.core.base.controller.BaseController; @@ -34,7 +35,7 @@ private ICommonPermissionService iCommonPermissionService; @Value("${smartcity.office.maxRowsExcel}") - private int maxRowsExcel; + private int maxRowsExcel; /** * 获取列表 @@ -42,26 +43,22 @@ @RequestMapping(value = "/type") @ResponseBody public List> listAlarmType(String condition) { - List> list = new ArrayList<>(); - list = sysDictService.getTypeViaName("报警状态"); + List> list = sysDictService.getTypeViaName("报警状态"); return list; } @RequestMapping(value = "/contentType") @ResponseBody - public Map listContentType(@RequestParam(value = "alarmType" ,required = true) String alarmType, HttpServletRequest httpServletRequest) { + public Map listContentType(@RequestParam(value = "alarmType", required = true) String alarmType, HttpServletRequest httpServletRequest) { String deviceType = httpServletRequest.getParameter("deviceType"); - if (ToolUtil.isEmpty(deviceType)){ - deviceType=""; - } - Map retMap = new HashMap<>(); - Map listMap = new HashMap<>(); - List> list = new ArrayList<>(); - list = sysDictService.getAlarmContent(alarmType,deviceType); - listMap.put("list",list); - retMap.put("code",200); - retMap.put("message","success"); - retMap.put("data",listMap); + Long deptId = iCommonPermissionService.getCurrLoginUser().getDeptId(); + Map retMap = new HashMap<>(); + Map listMap = new HashMap<>(); + List> list = sysDictService.getAlarmContent(deptId, alarmType, deviceType); + listMap.put("list", list); + retMap.put("code", 200); + retMap.put("message", "success"); + retMap.put("data", listMap); return retMap; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java index 7585fc9..dc92982 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.alarm.service; import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.SysDict; import com.baomidou.mybatisplus.service.IService; @@ -18,7 +19,7 @@ public interface ISysDictService extends IService { List> getTypeViaName(String typeName); List> getTypeViaCode(String code); - List> getAlarmContent(String alarmType,String devType); + List> getAlarmContent(Long deptId, String alarmType, String devType); List> testPage(Page> page); String getDBtime(); // String getUsernameById(long id); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java index 45bc534..1a26ec0 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java @@ -1,6 +1,10 @@ package com.casic.missiles.modular.alarm.service.impl; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.util.EhcacheConstant; +import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; import com.casic.missiles.modular.system.model.SysDict; @@ -8,6 +12,8 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.HashMap; import java.util.List; import java.util.Map; @@ -26,27 +32,39 @@ private SysDictMapper sysDictMapper; @Override - public List> getTypeViaName(String typeName){ + public List> getTypeViaName(String typeName) { return this.baseMapper.getTypeViaName(typeName); } @Override - public List> getTypeViaCode(String code){ + public List> getTypeViaCode(String code) { return this.baseMapper.getTypeViaCode(code); } @Override - public List> getAlarmContent(String alarmType,String devType){ - return this.baseMapper.getAlarmContent(alarmType,devType); + public List> getAlarmContent(Long deptId, String alarmType, String devType) { + + if (ToolUtil.isEmpty(devType)) { + List> alarmContentList = new ArrayList<>(); + String deviceTypes = baseMapper.getDeviceType(deptId); + for (Object deviceType : JSON.parseObject(deviceTypes, List.class)) { + devType = deviceType.toString(); + List> alarmContent = this.baseMapper.getAlarmContent(alarmType, devType); + alarmContentList.addAll(alarmContent); + } + return alarmContentList; + } else { + return this.baseMapper.getAlarmContent(alarmType, devType); + } } @Override - public List> testPage(Page> page){ + public List> testPage(Page> page) { return this.baseMapper.testPage(page); } @Override - public String getDBtime(){ + public String getDBtime() { return this.baseMapper.getDBtime(); } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java index 04da3e4..668188e 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java @@ -95,6 +95,8 @@ dataGasFlow.setInstantsVelocity(gasFlowData.containsKey("ssls") ? gasFlowData.get("ssls").toString() : ""); //介质温度 dataGasFlow.setAmbocetorTemperture(gasFlowData.containsKey("jzwd") ? gasFlowData.get("jzwd").toString() : ""); + //时间校验 +// Boolean oneDay=dataGasFlow.checklogTime(dataGasFlow); // 保存到数据库 同时计算日/月用水量 double flowAccToday = gasFlowDataService.saveGasFlowData(dataGasFlow); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/SysDictMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/SysDictMapper.java index 7184c28..4c00c45 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/SysDictMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/SysDictMapper.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.system.dao; import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.SysDict; import com.baomidou.mybatisplus.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; @@ -18,22 +19,40 @@ */ public interface SysDictMapper extends BaseMapper { - List> getTypeViaName(@Param("typeName") String typeName); - List> getTypeViaCode(@Param("code") String code); - List> getAlarmContent(@Param("alarmType") String alarmType,@Param("deviceType") String devType); - List> testPage(@Param("page") Page> page); + List> getTypeViaName(@Param("typeName") String typeName); + + List> getTypeViaCode(@Param("code") String code); + + List> getAlarmContent(@Param("alarmType") String alarmType, @Param("deviceType") String devType); + + String getDeviceType(@Param("deptid")Long deptId); + + List> testPage(@Param("page") Page> page); + String getDeviceTypeNameById(@Param("deviceTypeId") String deviceTypeId); + String getDeptNameById(@Param("deptid") long deptid); + String getAlarmTypeNameByCodeNum(@Param("alarmType") String alarmType); + String getAlarmContentName(@Param("id") int id); + int getAlarmContentByName(@Param("sName") String sName); + String getAlarmContentNameById(@Param("alarmContent") int alarmContent); + String getJobStatusNameByCodeNum(@Param("jobStatus") String jobStatus); - String getDictNameByCodeCodeNum(@Param("codeNum") String codeNum,@Param("code") String code); - Map getWellInfoViaCode(@Param("wellCode") String wellCode); -// String getAlarmContentName(@Param("id") int id,@Param("deviceType") int deviceType,@Param("alarmType") int alarmType); + + String getDictNameByCodeCodeNum(@Param("codeNum") String codeNum, @Param("code") String code); + + Map getWellInfoViaCode(@Param("wellCode") String wellCode); + + // String getAlarmContentName(@Param("id") int id,@Param("deviceType") int deviceType,@Param("alarmType") int alarmType); String getDBtime(); + String getUsernameById(@Param("id") long id); - Map getUserInfoById(@Param("id") long id); - Long getUserByDept(@Param("deptid")Long deptid); + + Map getUserInfoById(@Param("id") long id); + + Long getUserByDept(@Param("deptid") Long deptid); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml index 2f07c37..c038e8e 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml @@ -150,6 +150,7 @@ AND dv.`AREA` IN (${areaIds}) + + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) - AND code = #{codeNum}; + AND code = #{codeNum} @@ -65,12 +65,19 @@ + + + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) - AND code = #{codeNum}; + AND code = #{codeNum} @@ -65,12 +65,19 @@ + + + DATE_FORMAT (LOGTIME,'%Y-%m-%d %H:%i:%S') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java index f6e0f85..2474a6c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.alarm.controller; import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.core.base.controller.BaseController; @@ -34,7 +35,7 @@ private ICommonPermissionService iCommonPermissionService; @Value("${smartcity.office.maxRowsExcel}") - private int maxRowsExcel; + private int maxRowsExcel; /** * 获取列表 @@ -42,26 +43,22 @@ @RequestMapping(value = "/type") @ResponseBody public List> listAlarmType(String condition) { - List> list = new ArrayList<>(); - list = sysDictService.getTypeViaName("报警状态"); + List> list = sysDictService.getTypeViaName("报警状态"); return list; } @RequestMapping(value = "/contentType") @ResponseBody - public Map listContentType(@RequestParam(value = "alarmType" ,required = true) String alarmType, HttpServletRequest httpServletRequest) { + public Map listContentType(@RequestParam(value = "alarmType", required = true) String alarmType, HttpServletRequest httpServletRequest) { String deviceType = httpServletRequest.getParameter("deviceType"); - if (ToolUtil.isEmpty(deviceType)){ - deviceType=""; - } - Map retMap = new HashMap<>(); - Map listMap = new HashMap<>(); - List> list = new ArrayList<>(); - list = sysDictService.getAlarmContent(alarmType,deviceType); - listMap.put("list",list); - retMap.put("code",200); - retMap.put("message","success"); - retMap.put("data",listMap); + Long deptId = iCommonPermissionService.getCurrLoginUser().getDeptId(); + Map retMap = new HashMap<>(); + Map listMap = new HashMap<>(); + List> list = sysDictService.getAlarmContent(deptId, alarmType, deviceType); + listMap.put("list", list); + retMap.put("code", 200); + retMap.put("message", "success"); + retMap.put("data", listMap); return retMap; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java index 7585fc9..dc92982 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.alarm.service; import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.SysDict; import com.baomidou.mybatisplus.service.IService; @@ -18,7 +19,7 @@ public interface ISysDictService extends IService { List> getTypeViaName(String typeName); List> getTypeViaCode(String code); - List> getAlarmContent(String alarmType,String devType); + List> getAlarmContent(Long deptId, String alarmType, String devType); List> testPage(Page> page); String getDBtime(); // String getUsernameById(long id); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java index 45bc534..1a26ec0 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java @@ -1,6 +1,10 @@ package com.casic.missiles.modular.alarm.service.impl; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.util.EhcacheConstant; +import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; import com.casic.missiles.modular.system.model.SysDict; @@ -8,6 +12,8 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.HashMap; import java.util.List; import java.util.Map; @@ -26,27 +32,39 @@ private SysDictMapper sysDictMapper; @Override - public List> getTypeViaName(String typeName){ + public List> getTypeViaName(String typeName) { return this.baseMapper.getTypeViaName(typeName); } @Override - public List> getTypeViaCode(String code){ + public List> getTypeViaCode(String code) { return this.baseMapper.getTypeViaCode(code); } @Override - public List> getAlarmContent(String alarmType,String devType){ - return this.baseMapper.getAlarmContent(alarmType,devType); + public List> getAlarmContent(Long deptId, String alarmType, String devType) { + + if (ToolUtil.isEmpty(devType)) { + List> alarmContentList = new ArrayList<>(); + String deviceTypes = baseMapper.getDeviceType(deptId); + for (Object deviceType : JSON.parseObject(deviceTypes, List.class)) { + devType = deviceType.toString(); + List> alarmContent = this.baseMapper.getAlarmContent(alarmType, devType); + alarmContentList.addAll(alarmContent); + } + return alarmContentList; + } else { + return this.baseMapper.getAlarmContent(alarmType, devType); + } } @Override - public List> testPage(Page> page){ + public List> testPage(Page> page) { return this.baseMapper.testPage(page); } @Override - public String getDBtime(){ + public String getDBtime() { return this.baseMapper.getDBtime(); } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java index 04da3e4..668188e 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java @@ -95,6 +95,8 @@ dataGasFlow.setInstantsVelocity(gasFlowData.containsKey("ssls") ? gasFlowData.get("ssls").toString() : ""); //介质温度 dataGasFlow.setAmbocetorTemperture(gasFlowData.containsKey("jzwd") ? gasFlowData.get("jzwd").toString() : ""); + //时间校验 +// Boolean oneDay=dataGasFlow.checklogTime(dataGasFlow); // 保存到数据库 同时计算日/月用水量 double flowAccToday = gasFlowDataService.saveGasFlowData(dataGasFlow); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/SysDictMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/SysDictMapper.java index 7184c28..4c00c45 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/SysDictMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/SysDictMapper.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.system.dao; import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.SysDict; import com.baomidou.mybatisplus.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; @@ -18,22 +19,40 @@ */ public interface SysDictMapper extends BaseMapper { - List> getTypeViaName(@Param("typeName") String typeName); - List> getTypeViaCode(@Param("code") String code); - List> getAlarmContent(@Param("alarmType") String alarmType,@Param("deviceType") String devType); - List> testPage(@Param("page") Page> page); + List> getTypeViaName(@Param("typeName") String typeName); + + List> getTypeViaCode(@Param("code") String code); + + List> getAlarmContent(@Param("alarmType") String alarmType, @Param("deviceType") String devType); + + String getDeviceType(@Param("deptid")Long deptId); + + List> testPage(@Param("page") Page> page); + String getDeviceTypeNameById(@Param("deviceTypeId") String deviceTypeId); + String getDeptNameById(@Param("deptid") long deptid); + String getAlarmTypeNameByCodeNum(@Param("alarmType") String alarmType); + String getAlarmContentName(@Param("id") int id); + int getAlarmContentByName(@Param("sName") String sName); + String getAlarmContentNameById(@Param("alarmContent") int alarmContent); + String getJobStatusNameByCodeNum(@Param("jobStatus") String jobStatus); - String getDictNameByCodeCodeNum(@Param("codeNum") String codeNum,@Param("code") String code); - Map getWellInfoViaCode(@Param("wellCode") String wellCode); -// String getAlarmContentName(@Param("id") int id,@Param("deviceType") int deviceType,@Param("alarmType") int alarmType); + + String getDictNameByCodeCodeNum(@Param("codeNum") String codeNum, @Param("code") String code); + + Map getWellInfoViaCode(@Param("wellCode") String wellCode); + + // String getAlarmContentName(@Param("id") int id,@Param("deviceType") int deviceType,@Param("alarmType") int alarmType); String getDBtime(); + String getUsernameById(@Param("id") long id); - Map getUserInfoById(@Param("id") long id); - Long getUserByDept(@Param("deptid")Long deptid); + + Map getUserInfoById(@Param("id") long id); + + Long getUserByDept(@Param("deptid") Long deptid); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml index 2f07c37..c038e8e 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml @@ -150,6 +150,7 @@ AND dv.`AREA` IN (${areaIds}) + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) - AND code = #{codeNum}; + AND code = #{codeNum} @@ -65,12 +65,19 @@ + + + DATE_FORMAT (LOGTIME,'%Y-%m-%d %H:%i:%S') diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/enums/DeviceExportEnum.java b/casic-device/src/main/java/com/casic/missiles/modular/system/enums/DeviceExportEnum.java index 68448d7..fc5c16a 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/enums/DeviceExportEnum.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/enums/DeviceExportEnum.java @@ -15,7 +15,7 @@ TEMPPRESSDATA_EXPORT("tempPressData.xlsx","tempPressData.xlsx","压力数据"), DIGDATA_EXPORT("digData.xlsx","digData.xlsx","开挖数据"), WELLLOCDATA_EXPORT("wellLocData.xlsx","wellLocData.xlsx","井盖定位数据"), - NOISEDATA_EXPORT("noiseData.xlsx","noiseData.xlsx","噪声记录仪数据"), + NOISEDATA_EXPORT("noiseData.xlsx","noiseData.xlsx","供水检测仪数据"), BUSCONCENTRATOR_EXPORT("busConcentrator.xlsx", "busConcentrator.xlsx", "集中器数据"), DEVICE_EXPORT("device.xlsx", "device.xlsx", "设备数据"), LIQUIDGASDATA_EXPORT("gasLiquidData.xlsx", "gasLiquidData.xlsx", "燃气液位一体化数据"), diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java index f6e0f85..2474a6c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.alarm.controller; import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.core.base.controller.BaseController; @@ -34,7 +35,7 @@ private ICommonPermissionService iCommonPermissionService; @Value("${smartcity.office.maxRowsExcel}") - private int maxRowsExcel; + private int maxRowsExcel; /** * 获取列表 @@ -42,26 +43,22 @@ @RequestMapping(value = "/type") @ResponseBody public List> listAlarmType(String condition) { - List> list = new ArrayList<>(); - list = sysDictService.getTypeViaName("报警状态"); + List> list = sysDictService.getTypeViaName("报警状态"); return list; } @RequestMapping(value = "/contentType") @ResponseBody - public Map listContentType(@RequestParam(value = "alarmType" ,required = true) String alarmType, HttpServletRequest httpServletRequest) { + public Map listContentType(@RequestParam(value = "alarmType", required = true) String alarmType, HttpServletRequest httpServletRequest) { String deviceType = httpServletRequest.getParameter("deviceType"); - if (ToolUtil.isEmpty(deviceType)){ - deviceType=""; - } - Map retMap = new HashMap<>(); - Map listMap = new HashMap<>(); - List> list = new ArrayList<>(); - list = sysDictService.getAlarmContent(alarmType,deviceType); - listMap.put("list",list); - retMap.put("code",200); - retMap.put("message","success"); - retMap.put("data",listMap); + Long deptId = iCommonPermissionService.getCurrLoginUser().getDeptId(); + Map retMap = new HashMap<>(); + Map listMap = new HashMap<>(); + List> list = sysDictService.getAlarmContent(deptId, alarmType, deviceType); + listMap.put("list", list); + retMap.put("code", 200); + retMap.put("message", "success"); + retMap.put("data", listMap); return retMap; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java index 7585fc9..dc92982 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.alarm.service; import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.SysDict; import com.baomidou.mybatisplus.service.IService; @@ -18,7 +19,7 @@ public interface ISysDictService extends IService { List> getTypeViaName(String typeName); List> getTypeViaCode(String code); - List> getAlarmContent(String alarmType,String devType); + List> getAlarmContent(Long deptId, String alarmType, String devType); List> testPage(Page> page); String getDBtime(); // String getUsernameById(long id); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java index 45bc534..1a26ec0 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java @@ -1,6 +1,10 @@ package com.casic.missiles.modular.alarm.service.impl; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.util.EhcacheConstant; +import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; import com.casic.missiles.modular.system.model.SysDict; @@ -8,6 +12,8 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.HashMap; import java.util.List; import java.util.Map; @@ -26,27 +32,39 @@ private SysDictMapper sysDictMapper; @Override - public List> getTypeViaName(String typeName){ + public List> getTypeViaName(String typeName) { return this.baseMapper.getTypeViaName(typeName); } @Override - public List> getTypeViaCode(String code){ + public List> getTypeViaCode(String code) { return this.baseMapper.getTypeViaCode(code); } @Override - public List> getAlarmContent(String alarmType,String devType){ - return this.baseMapper.getAlarmContent(alarmType,devType); + public List> getAlarmContent(Long deptId, String alarmType, String devType) { + + if (ToolUtil.isEmpty(devType)) { + List> alarmContentList = new ArrayList<>(); + String deviceTypes = baseMapper.getDeviceType(deptId); + for (Object deviceType : JSON.parseObject(deviceTypes, List.class)) { + devType = deviceType.toString(); + List> alarmContent = this.baseMapper.getAlarmContent(alarmType, devType); + alarmContentList.addAll(alarmContent); + } + return alarmContentList; + } else { + return this.baseMapper.getAlarmContent(alarmType, devType); + } } @Override - public List> testPage(Page> page){ + public List> testPage(Page> page) { return this.baseMapper.testPage(page); } @Override - public String getDBtime(){ + public String getDBtime() { return this.baseMapper.getDBtime(); } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java index 04da3e4..668188e 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java @@ -95,6 +95,8 @@ dataGasFlow.setInstantsVelocity(gasFlowData.containsKey("ssls") ? gasFlowData.get("ssls").toString() : ""); //介质温度 dataGasFlow.setAmbocetorTemperture(gasFlowData.containsKey("jzwd") ? gasFlowData.get("jzwd").toString() : ""); + //时间校验 +// Boolean oneDay=dataGasFlow.checklogTime(dataGasFlow); // 保存到数据库 同时计算日/月用水量 double flowAccToday = gasFlowDataService.saveGasFlowData(dataGasFlow); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/SysDictMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/SysDictMapper.java index 7184c28..4c00c45 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/SysDictMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/SysDictMapper.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.system.dao; import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.SysDict; import com.baomidou.mybatisplus.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; @@ -18,22 +19,40 @@ */ public interface SysDictMapper extends BaseMapper { - List> getTypeViaName(@Param("typeName") String typeName); - List> getTypeViaCode(@Param("code") String code); - List> getAlarmContent(@Param("alarmType") String alarmType,@Param("deviceType") String devType); - List> testPage(@Param("page") Page> page); + List> getTypeViaName(@Param("typeName") String typeName); + + List> getTypeViaCode(@Param("code") String code); + + List> getAlarmContent(@Param("alarmType") String alarmType, @Param("deviceType") String devType); + + String getDeviceType(@Param("deptid")Long deptId); + + List> testPage(@Param("page") Page> page); + String getDeviceTypeNameById(@Param("deviceTypeId") String deviceTypeId); + String getDeptNameById(@Param("deptid") long deptid); + String getAlarmTypeNameByCodeNum(@Param("alarmType") String alarmType); + String getAlarmContentName(@Param("id") int id); + int getAlarmContentByName(@Param("sName") String sName); + String getAlarmContentNameById(@Param("alarmContent") int alarmContent); + String getJobStatusNameByCodeNum(@Param("jobStatus") String jobStatus); - String getDictNameByCodeCodeNum(@Param("codeNum") String codeNum,@Param("code") String code); - Map getWellInfoViaCode(@Param("wellCode") String wellCode); -// String getAlarmContentName(@Param("id") int id,@Param("deviceType") int deviceType,@Param("alarmType") int alarmType); + + String getDictNameByCodeCodeNum(@Param("codeNum") String codeNum, @Param("code") String code); + + Map getWellInfoViaCode(@Param("wellCode") String wellCode); + + // String getAlarmContentName(@Param("id") int id,@Param("deviceType") int deviceType,@Param("alarmType") int alarmType); String getDBtime(); + String getUsernameById(@Param("id") long id); - Map getUserInfoById(@Param("id") long id); - Long getUserByDept(@Param("deptid")Long deptid); + + Map getUserInfoById(@Param("id") long id); + + Long getUserByDept(@Param("deptid") Long deptid); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml index 2f07c37..c038e8e 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml @@ -150,6 +150,7 @@ AND dv.`AREA` IN (${areaIds}) + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) - AND code = #{codeNum}; + AND code = #{codeNum} @@ -65,12 +65,19 @@ + + + DATE_FORMAT (LOGTIME,'%Y-%m-%d %H:%i:%S') diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/enums/DeviceExportEnum.java b/casic-device/src/main/java/com/casic/missiles/modular/system/enums/DeviceExportEnum.java index 68448d7..fc5c16a 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/enums/DeviceExportEnum.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/enums/DeviceExportEnum.java @@ -15,7 +15,7 @@ TEMPPRESSDATA_EXPORT("tempPressData.xlsx","tempPressData.xlsx","压力数据"), DIGDATA_EXPORT("digData.xlsx","digData.xlsx","开挖数据"), WELLLOCDATA_EXPORT("wellLocData.xlsx","wellLocData.xlsx","井盖定位数据"), - NOISEDATA_EXPORT("noiseData.xlsx","noiseData.xlsx","噪声记录仪数据"), + NOISEDATA_EXPORT("noiseData.xlsx","noiseData.xlsx","供水检测仪数据"), BUSCONCENTRATOR_EXPORT("busConcentrator.xlsx", "busConcentrator.xlsx", "集中器数据"), DEVICE_EXPORT("device.xlsx", "device.xlsx", "设备数据"), LIQUIDGASDATA_EXPORT("gasLiquidData.xlsx", "gasLiquidData.xlsx", "燃气液位一体化数据"), diff --git a/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/service/impl/GasFlowDataServiceImpl.java b/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/service/impl/GasFlowDataServiceImpl.java index 7aa3b2b..677ff1e 100644 --- a/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/service/impl/GasFlowDataServiceImpl.java +++ b/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/service/impl/GasFlowDataServiceImpl.java @@ -51,9 +51,11 @@ // 1. 保存原始记录 this.baseMapper.insert(dataGasFlow); Calendar lastDay = Calendar.getInstance(); + Calendar checkDay = Calendar.getInstance(); if (null != lastDayAcc) { try { lastDay.setTime(sdf.parse(lastDayAcc.get("uptime").toString())); + checkDay.setTime(sdf.parse(lastDayAcc.get("uptime").toString())); } catch (Exception ex) { log.error("主题:供气表接收展示,日期转换出错{},异常信息{}", lastDayAcc.get("uptime").toString(), ex); } @@ -70,11 +72,12 @@ // 计算间隔时差 long delhour = delta / (3600 * 1000); int dateDelta = (int) delhour / 24; - totalFlowDayRet = totalFlowDelta / delhour * 24; + totalFlowDayRet = delhour == 0 ? 0 : totalFlowDelta / delhour * 24; + checkDay.add(Calendar.DATE, 1); //如果间隔为0,可能是同一天,或者是间隔一天,进行天的进一步判断 if (dayDel == 0 && dateDelta == 0 && delhour > 0) { - noIntervalDayGasFlow(gasFlowDay, lastDayAcc, totalFlowDayRet, totalFlowDelta, gasFlowMonth, dataGasFlow); - } else if (dayDel == 1||dateDelta == 1 ) { + noIntervalDayGasFlow(gasFlowDay, delhour,lastDayAcc, totalFlowDayRet, totalFlowDelta, gasFlowMonth, dataGasFlow); + } else if (today.get(Calendar.DATE) - checkDay.get(Calendar.DATE) == 0) { intervalOfDayGasFlow(gasFlowDay, lastDay, totalFlowDayRet, totalFlowDelta, lastDayAcc, gasFlowMonth, dataGasFlow); } else { intervalManyDayGasFlow(gasFlowDay, lastDay, lastDayAcc, gasFlowMonth, totalFlowDayRet, delhour, dateDelta); @@ -95,9 +98,11 @@ * 没有间隔 */ private void noIntervalDayGasFlow(DataGasFlowDay gasFlowDay, + long delhour, Map lastDayAcc, Double flowAccDayRet, Double flowAccDelta, DataGasFlowMonth gasFlowMonth, DataGasFlow dataGasFlow) { + gasFlowDay.setTotalFlowDate(df2.format(flowAccDayRet)); gasFlowDay.setTotalFlow(dataGasFlow.getTotalFlow()); this.baseMapper.updateDataGasFlowDay(gasFlowDay.getDevcode(), gasFlowDay.getWellCode(), gasFlowDay.getDate(), @@ -110,8 +115,8 @@ gasFlowMonth.setId((Long) monthExist.get("id")); dataGasFlowMonthMapper.updateById(gasFlowMonth); } else { - Double totalFlowMonth=flowAccDelta-Double.valueOf(gasFlowMonth.getFirstTotal()); - gasFlowMonth.setTotalFlowMonth(totalFlowMonth.toString()); + Double totalFlowMonth = flowAccDelta - Double.valueOf(gasFlowMonth.getFirstTotal()); + gasFlowMonth.setTotalFlowMonth(df2.format(Double.parseDouble(totalFlowMonth.toString()))); gasFlowMonth.setFirstTotal(lastDayAcc.get("totalFlow").toString()); gasFlowMonth.setEndTotal(dataGasFlow.getTotalFlow()); dataGasFlowMonthMapper.insert(gasFlowMonth); @@ -135,7 +140,7 @@ gasFlowDay.setTotalFlow(dataGasFlow.getTotalFlow()); dataGasFlowDayMapper.insert(gasFlowDay); if (lastDay.get(Calendar.DATE) == 1) { - gasFlowMonth.setTotalFlowMonth(flowAccDelta.toString()); + gasFlowMonth.setTotalFlowMonth(df2.format(Double.parseDouble(flowAccDelta.toString()))); gasFlowMonth.setFirstTotal(lastDayAcc.get("totalFlow").toString()); gasFlowMonth.setEndTotal(dataGasFlow.getTotalFlow()); dataGasFlowMonthMapper.insert(gasFlowMonth); @@ -148,7 +153,7 @@ gasFlowMonth.setId((Long) monthExist.get("id")); dataGasFlowMonthMapper.updateById(gasFlowMonth); } else { - gasFlowMonth.setTotalFlowMonth(flowAccDelta.toString()); + gasFlowMonth.setTotalFlowMonth(df2.format(Double.parseDouble(flowAccDelta.toString()))); gasFlowMonth.setFirstTotal(lastDayAcc.get("totalFlow").toString()); gasFlowMonth.setEndTotal(dataGasFlow.getTotalFlow()); dataGasFlowMonthMapper.insert(gasFlowMonth); @@ -170,14 +175,14 @@ Double totalFlow = Double.parseDouble(lastDayAcc.get("totalFlow").toString()) + avgFlowDay * (i + 1); gasFlowDay.setTotalFlow(totalFlow.toString()); // 当日用气量 = (当日气表读数 - 昨日气表读数) / 天数 - gasFlowDay.setTotalFlowDate(df2.format(avgFlowDay)); + gasFlowDay.setTotalFlowDate(df2.format(df2.format(avgFlowDay))); lastDay.add(Calendar.DATE, 1); gasFlowDay.setDate(sdfDate.format(lastDay.getTime())); dataGasFlowDayMapper.insert(gasFlowDay); gasFlowMonth.setMonth(sdfDate.format(lastDay.getTime()).substring(0, 7)); if (lastDay.get(Calendar.DATE) == 1) { // 是每月的第一天 则新增月用气量 - gasFlowMonth.setTotalFlowMonth(gasFlowDay.getTotalFlowDate()); + gasFlowMonth.setTotalFlowMonth(df2.format(Double.parseDouble(gasFlowDay.getTotalFlowDate()))); gasFlowMonth.setFirstTotal(df2.format(Double.parseDouble(lastDayAcc.get("totalFlow").toString()) + avgFlowDay * i)); gasFlowMonth.setEndTotal(gasFlowDay.getTotalFlow()); dataGasFlowMonthMapper.insert(gasFlowMonth); @@ -190,17 +195,17 @@ gasFlowMonth.setId((Long) monthExist.get("id")); dataGasFlowMonthMapper.updateById(gasFlowMonth); } else { - gasFlowMonth.setTotalFlowMonth(gasFlowDay.getTotalFlowDate()); + gasFlowMonth.setTotalFlowMonth(df2.format(Double.parseDouble(gasFlowDay.getTotalFlowDate()))); gasFlowMonth.setFirstTotal(lastDayAcc.get("totalFlow").toString()); gasFlowMonth.setEndTotal(gasFlowDay.getTotalFlow()); dataGasFlowMonthMapper.insert(gasFlowMonth); } } } - if (dayDelta != 0) { + if (dayDelta > 0) { //修正月统计最后的累计 Double lastTimeDiff = avgFlowDay + Double.valueOf(dayDelta * 24 - delhour) / 24 * avgFlowDay; - Double flowMonth=lastDay.get(Calendar.DATE)==1?lastTimeDiff:Double.parseDouble(monthExist.get("totalFlowMonth").toString())+lastTimeDiff; + Double flowMonth = lastDay.get(Calendar.DATE) == 1 ? lastTimeDiff : Double.parseDouble(monthExist.get("totalFlowMonth").toString()) + lastTimeDiff; //更新最后月累计量 gasFlowMonth.setTotalFlowMonth(df2.format(flowMonth)); dataGasFlowMonthMapper.updateById(gasFlowMonth); @@ -214,13 +219,13 @@ DataGasFlow dataGasFlow, DataGasFlowMonth gasFlowMonth) { // 没有找到最近的日用气量记录 则新增日及月用气量 - gasFlowDay.setTotalFlow(dataGasFlow.getTotalFlow()); + gasFlowDay.setTotalFlow(df2.format(Double.parseDouble(dataGasFlow.getTotalFlow()))); gasFlowDay.setTotalFlowDate(dataGasFlow.getTotalFlow()); dataGasFlowDayMapper.insert(gasFlowDay); // 没有上一条记录 日用气量 = 当前读数 Double totalFlowDayRet = Double.parseDouble(dataGasFlow.getTotalFlow()); - gasFlowMonth.setTotalFlowMonth(dataGasFlow.getTotalFlow()); - gasFlowMonth.setFirstTotal("0"); + gasFlowMonth.setTotalFlowMonth(df2.format(Double.parseDouble(dataGasFlow.getTotalFlow()))); + gasFlowMonth.setFirstTotal("0.00"); gasFlowMonth.setEndTotal(dataGasFlow.getTotalFlow()); dataGasFlowMonthMapper.insert(gasFlowMonth); return totalFlowDayRet; diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java index f6e0f85..2474a6c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/SysDictController.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.alarm.controller; import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.core.base.controller.BaseController; @@ -34,7 +35,7 @@ private ICommonPermissionService iCommonPermissionService; @Value("${smartcity.office.maxRowsExcel}") - private int maxRowsExcel; + private int maxRowsExcel; /** * 获取列表 @@ -42,26 +43,22 @@ @RequestMapping(value = "/type") @ResponseBody public List> listAlarmType(String condition) { - List> list = new ArrayList<>(); - list = sysDictService.getTypeViaName("报警状态"); + List> list = sysDictService.getTypeViaName("报警状态"); return list; } @RequestMapping(value = "/contentType") @ResponseBody - public Map listContentType(@RequestParam(value = "alarmType" ,required = true) String alarmType, HttpServletRequest httpServletRequest) { + public Map listContentType(@RequestParam(value = "alarmType", required = true) String alarmType, HttpServletRequest httpServletRequest) { String deviceType = httpServletRequest.getParameter("deviceType"); - if (ToolUtil.isEmpty(deviceType)){ - deviceType=""; - } - Map retMap = new HashMap<>(); - Map listMap = new HashMap<>(); - List> list = new ArrayList<>(); - list = sysDictService.getAlarmContent(alarmType,deviceType); - listMap.put("list",list); - retMap.put("code",200); - retMap.put("message","success"); - retMap.put("data",listMap); + Long deptId = iCommonPermissionService.getCurrLoginUser().getDeptId(); + Map retMap = new HashMap<>(); + Map listMap = new HashMap<>(); + List> list = sysDictService.getAlarmContent(deptId, alarmType, deviceType); + listMap.put("list", list); + retMap.put("code", 200); + retMap.put("message", "success"); + retMap.put("data", listMap); return retMap; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java index 7585fc9..dc92982 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/ISysDictService.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.alarm.service; import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.SysDict; import com.baomidou.mybatisplus.service.IService; @@ -18,7 +19,7 @@ public interface ISysDictService extends IService { List> getTypeViaName(String typeName); List> getTypeViaCode(String code); - List> getAlarmContent(String alarmType,String devType); + List> getAlarmContent(Long deptId, String alarmType, String devType); List> testPage(Page> page); String getDBtime(); // String getUsernameById(long id); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java index 45bc534..1a26ec0 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/SysDictServiceImpl.java @@ -1,6 +1,10 @@ package com.casic.missiles.modular.alarm.service.impl; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.core.util.EhcacheConstant; +import com.casic.missiles.core.util.ToolUtil; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; import com.casic.missiles.modular.system.model.SysDict; @@ -8,6 +12,8 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.HashMap; import java.util.List; import java.util.Map; @@ -26,27 +32,39 @@ private SysDictMapper sysDictMapper; @Override - public List> getTypeViaName(String typeName){ + public List> getTypeViaName(String typeName) { return this.baseMapper.getTypeViaName(typeName); } @Override - public List> getTypeViaCode(String code){ + public List> getTypeViaCode(String code) { return this.baseMapper.getTypeViaCode(code); } @Override - public List> getAlarmContent(String alarmType,String devType){ - return this.baseMapper.getAlarmContent(alarmType,devType); + public List> getAlarmContent(Long deptId, String alarmType, String devType) { + + if (ToolUtil.isEmpty(devType)) { + List> alarmContentList = new ArrayList<>(); + String deviceTypes = baseMapper.getDeviceType(deptId); + for (Object deviceType : JSON.parseObject(deviceTypes, List.class)) { + devType = deviceType.toString(); + List> alarmContent = this.baseMapper.getAlarmContent(alarmType, devType); + alarmContentList.addAll(alarmContent); + } + return alarmContentList; + } else { + return this.baseMapper.getAlarmContent(alarmType, devType); + } } @Override - public List> testPage(Page> page){ + public List> testPage(Page> page) { return this.baseMapper.testPage(page); } @Override - public String getDBtime(){ + public String getDBtime() { return this.baseMapper.getDBtime(); } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java index 04da3e4..668188e 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/controller/GasFlowDataReceiver.java @@ -95,6 +95,8 @@ dataGasFlow.setInstantsVelocity(gasFlowData.containsKey("ssls") ? gasFlowData.get("ssls").toString() : ""); //介质温度 dataGasFlow.setAmbocetorTemperture(gasFlowData.containsKey("jzwd") ? gasFlowData.get("jzwd").toString() : ""); + //时间校验 +// Boolean oneDay=dataGasFlow.checklogTime(dataGasFlow); // 保存到数据库 同时计算日/月用水量 double flowAccToday = gasFlowDataService.saveGasFlowData(dataGasFlow); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/SysDictMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/SysDictMapper.java index 7184c28..4c00c45 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/SysDictMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/SysDictMapper.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.system.dao; import com.baomidou.mybatisplus.plugins.Page; +import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.modular.system.model.SysDict; import com.baomidou.mybatisplus.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; @@ -18,22 +19,40 @@ */ public interface SysDictMapper extends BaseMapper { - List> getTypeViaName(@Param("typeName") String typeName); - List> getTypeViaCode(@Param("code") String code); - List> getAlarmContent(@Param("alarmType") String alarmType,@Param("deviceType") String devType); - List> testPage(@Param("page") Page> page); + List> getTypeViaName(@Param("typeName") String typeName); + + List> getTypeViaCode(@Param("code") String code); + + List> getAlarmContent(@Param("alarmType") String alarmType, @Param("deviceType") String devType); + + String getDeviceType(@Param("deptid")Long deptId); + + List> testPage(@Param("page") Page> page); + String getDeviceTypeNameById(@Param("deviceTypeId") String deviceTypeId); + String getDeptNameById(@Param("deptid") long deptid); + String getAlarmTypeNameByCodeNum(@Param("alarmType") String alarmType); + String getAlarmContentName(@Param("id") int id); + int getAlarmContentByName(@Param("sName") String sName); + String getAlarmContentNameById(@Param("alarmContent") int alarmContent); + String getJobStatusNameByCodeNum(@Param("jobStatus") String jobStatus); - String getDictNameByCodeCodeNum(@Param("codeNum") String codeNum,@Param("code") String code); - Map getWellInfoViaCode(@Param("wellCode") String wellCode); -// String getAlarmContentName(@Param("id") int id,@Param("deviceType") int deviceType,@Param("alarmType") int alarmType); + + String getDictNameByCodeCodeNum(@Param("codeNum") String codeNum, @Param("code") String code); + + Map getWellInfoViaCode(@Param("wellCode") String wellCode); + + // String getAlarmContentName(@Param("id") int id,@Param("deviceType") int deviceType,@Param("alarmType") int alarmType); String getDBtime(); + String getUsernameById(@Param("id") long id); - Map getUserInfoById(@Param("id") long id); - Long getUserByDept(@Param("deptid")Long deptid); + + Map getUserInfoById(@Param("id") long id); + + Long getUserByDept(@Param("deptid") Long deptid); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml index 2f07c37..c038e8e 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml @@ -150,6 +150,7 @@ AND dv.`AREA` IN (${areaIds}) + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) - AND code = #{codeNum}; + AND code = #{codeNum} @@ -65,12 +65,19 @@ + + + DATE_FORMAT (LOGTIME,'%Y-%m-%d %H:%i:%S') diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/enums/DeviceExportEnum.java b/casic-device/src/main/java/com/casic/missiles/modular/system/enums/DeviceExportEnum.java index 68448d7..fc5c16a 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/enums/DeviceExportEnum.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/enums/DeviceExportEnum.java @@ -15,7 +15,7 @@ TEMPPRESSDATA_EXPORT("tempPressData.xlsx","tempPressData.xlsx","压力数据"), DIGDATA_EXPORT("digData.xlsx","digData.xlsx","开挖数据"), WELLLOCDATA_EXPORT("wellLocData.xlsx","wellLocData.xlsx","井盖定位数据"), - NOISEDATA_EXPORT("noiseData.xlsx","noiseData.xlsx","噪声记录仪数据"), + NOISEDATA_EXPORT("noiseData.xlsx","noiseData.xlsx","供水检测仪数据"), BUSCONCENTRATOR_EXPORT("busConcentrator.xlsx", "busConcentrator.xlsx", "集中器数据"), DEVICE_EXPORT("device.xlsx", "device.xlsx", "设备数据"), LIQUIDGASDATA_EXPORT("gasLiquidData.xlsx", "gasLiquidData.xlsx", "燃气液位一体化数据"), diff --git a/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/service/impl/GasFlowDataServiceImpl.java b/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/service/impl/GasFlowDataServiceImpl.java index 7aa3b2b..677ff1e 100644 --- a/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/service/impl/GasFlowDataServiceImpl.java +++ b/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/service/impl/GasFlowDataServiceImpl.java @@ -51,9 +51,11 @@ // 1. 保存原始记录 this.baseMapper.insert(dataGasFlow); Calendar lastDay = Calendar.getInstance(); + Calendar checkDay = Calendar.getInstance(); if (null != lastDayAcc) { try { lastDay.setTime(sdf.parse(lastDayAcc.get("uptime").toString())); + checkDay.setTime(sdf.parse(lastDayAcc.get("uptime").toString())); } catch (Exception ex) { log.error("主题:供气表接收展示,日期转换出错{},异常信息{}", lastDayAcc.get("uptime").toString(), ex); } @@ -70,11 +72,12 @@ // 计算间隔时差 long delhour = delta / (3600 * 1000); int dateDelta = (int) delhour / 24; - totalFlowDayRet = totalFlowDelta / delhour * 24; + totalFlowDayRet = delhour == 0 ? 0 : totalFlowDelta / delhour * 24; + checkDay.add(Calendar.DATE, 1); //如果间隔为0,可能是同一天,或者是间隔一天,进行天的进一步判断 if (dayDel == 0 && dateDelta == 0 && delhour > 0) { - noIntervalDayGasFlow(gasFlowDay, lastDayAcc, totalFlowDayRet, totalFlowDelta, gasFlowMonth, dataGasFlow); - } else if (dayDel == 1||dateDelta == 1 ) { + noIntervalDayGasFlow(gasFlowDay, delhour,lastDayAcc, totalFlowDayRet, totalFlowDelta, gasFlowMonth, dataGasFlow); + } else if (today.get(Calendar.DATE) - checkDay.get(Calendar.DATE) == 0) { intervalOfDayGasFlow(gasFlowDay, lastDay, totalFlowDayRet, totalFlowDelta, lastDayAcc, gasFlowMonth, dataGasFlow); } else { intervalManyDayGasFlow(gasFlowDay, lastDay, lastDayAcc, gasFlowMonth, totalFlowDayRet, delhour, dateDelta); @@ -95,9 +98,11 @@ * 没有间隔 */ private void noIntervalDayGasFlow(DataGasFlowDay gasFlowDay, + long delhour, Map lastDayAcc, Double flowAccDayRet, Double flowAccDelta, DataGasFlowMonth gasFlowMonth, DataGasFlow dataGasFlow) { + gasFlowDay.setTotalFlowDate(df2.format(flowAccDayRet)); gasFlowDay.setTotalFlow(dataGasFlow.getTotalFlow()); this.baseMapper.updateDataGasFlowDay(gasFlowDay.getDevcode(), gasFlowDay.getWellCode(), gasFlowDay.getDate(), @@ -110,8 +115,8 @@ gasFlowMonth.setId((Long) monthExist.get("id")); dataGasFlowMonthMapper.updateById(gasFlowMonth); } else { - Double totalFlowMonth=flowAccDelta-Double.valueOf(gasFlowMonth.getFirstTotal()); - gasFlowMonth.setTotalFlowMonth(totalFlowMonth.toString()); + Double totalFlowMonth = flowAccDelta - Double.valueOf(gasFlowMonth.getFirstTotal()); + gasFlowMonth.setTotalFlowMonth(df2.format(Double.parseDouble(totalFlowMonth.toString()))); gasFlowMonth.setFirstTotal(lastDayAcc.get("totalFlow").toString()); gasFlowMonth.setEndTotal(dataGasFlow.getTotalFlow()); dataGasFlowMonthMapper.insert(gasFlowMonth); @@ -135,7 +140,7 @@ gasFlowDay.setTotalFlow(dataGasFlow.getTotalFlow()); dataGasFlowDayMapper.insert(gasFlowDay); if (lastDay.get(Calendar.DATE) == 1) { - gasFlowMonth.setTotalFlowMonth(flowAccDelta.toString()); + gasFlowMonth.setTotalFlowMonth(df2.format(Double.parseDouble(flowAccDelta.toString()))); gasFlowMonth.setFirstTotal(lastDayAcc.get("totalFlow").toString()); gasFlowMonth.setEndTotal(dataGasFlow.getTotalFlow()); dataGasFlowMonthMapper.insert(gasFlowMonth); @@ -148,7 +153,7 @@ gasFlowMonth.setId((Long) monthExist.get("id")); dataGasFlowMonthMapper.updateById(gasFlowMonth); } else { - gasFlowMonth.setTotalFlowMonth(flowAccDelta.toString()); + gasFlowMonth.setTotalFlowMonth(df2.format(Double.parseDouble(flowAccDelta.toString()))); gasFlowMonth.setFirstTotal(lastDayAcc.get("totalFlow").toString()); gasFlowMonth.setEndTotal(dataGasFlow.getTotalFlow()); dataGasFlowMonthMapper.insert(gasFlowMonth); @@ -170,14 +175,14 @@ Double totalFlow = Double.parseDouble(lastDayAcc.get("totalFlow").toString()) + avgFlowDay * (i + 1); gasFlowDay.setTotalFlow(totalFlow.toString()); // 当日用气量 = (当日气表读数 - 昨日气表读数) / 天数 - gasFlowDay.setTotalFlowDate(df2.format(avgFlowDay)); + gasFlowDay.setTotalFlowDate(df2.format(df2.format(avgFlowDay))); lastDay.add(Calendar.DATE, 1); gasFlowDay.setDate(sdfDate.format(lastDay.getTime())); dataGasFlowDayMapper.insert(gasFlowDay); gasFlowMonth.setMonth(sdfDate.format(lastDay.getTime()).substring(0, 7)); if (lastDay.get(Calendar.DATE) == 1) { // 是每月的第一天 则新增月用气量 - gasFlowMonth.setTotalFlowMonth(gasFlowDay.getTotalFlowDate()); + gasFlowMonth.setTotalFlowMonth(df2.format(Double.parseDouble(gasFlowDay.getTotalFlowDate()))); gasFlowMonth.setFirstTotal(df2.format(Double.parseDouble(lastDayAcc.get("totalFlow").toString()) + avgFlowDay * i)); gasFlowMonth.setEndTotal(gasFlowDay.getTotalFlow()); dataGasFlowMonthMapper.insert(gasFlowMonth); @@ -190,17 +195,17 @@ gasFlowMonth.setId((Long) monthExist.get("id")); dataGasFlowMonthMapper.updateById(gasFlowMonth); } else { - gasFlowMonth.setTotalFlowMonth(gasFlowDay.getTotalFlowDate()); + gasFlowMonth.setTotalFlowMonth(df2.format(Double.parseDouble(gasFlowDay.getTotalFlowDate()))); gasFlowMonth.setFirstTotal(lastDayAcc.get("totalFlow").toString()); gasFlowMonth.setEndTotal(gasFlowDay.getTotalFlow()); dataGasFlowMonthMapper.insert(gasFlowMonth); } } } - if (dayDelta != 0) { + if (dayDelta > 0) { //修正月统计最后的累计 Double lastTimeDiff = avgFlowDay + Double.valueOf(dayDelta * 24 - delhour) / 24 * avgFlowDay; - Double flowMonth=lastDay.get(Calendar.DATE)==1?lastTimeDiff:Double.parseDouble(monthExist.get("totalFlowMonth").toString())+lastTimeDiff; + Double flowMonth = lastDay.get(Calendar.DATE) == 1 ? lastTimeDiff : Double.parseDouble(monthExist.get("totalFlowMonth").toString()) + lastTimeDiff; //更新最后月累计量 gasFlowMonth.setTotalFlowMonth(df2.format(flowMonth)); dataGasFlowMonthMapper.updateById(gasFlowMonth); @@ -214,13 +219,13 @@ DataGasFlow dataGasFlow, DataGasFlowMonth gasFlowMonth) { // 没有找到最近的日用气量记录 则新增日及月用气量 - gasFlowDay.setTotalFlow(dataGasFlow.getTotalFlow()); + gasFlowDay.setTotalFlow(df2.format(Double.parseDouble(dataGasFlow.getTotalFlow()))); gasFlowDay.setTotalFlowDate(dataGasFlow.getTotalFlow()); dataGasFlowDayMapper.insert(gasFlowDay); // 没有上一条记录 日用气量 = 当前读数 Double totalFlowDayRet = Double.parseDouble(dataGasFlow.getTotalFlow()); - gasFlowMonth.setTotalFlowMonth(dataGasFlow.getTotalFlow()); - gasFlowMonth.setFirstTotal("0"); + gasFlowMonth.setTotalFlowMonth(df2.format(Double.parseDouble(dataGasFlow.getTotalFlow()))); + gasFlowMonth.setFirstTotal("0.00"); gasFlowMonth.setEndTotal(dataGasFlow.getTotalFlow()); dataGasFlowMonthMapper.insert(gasFlowMonth); return totalFlowDayRet; diff --git a/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/service/impl/WaterMeterDataServiceImpl.java b/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/service/impl/WaterMeterDataServiceImpl.java index 6e2e3ee..8405ae4 100644 --- a/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/service/impl/WaterMeterDataServiceImpl.java +++ b/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/service/impl/WaterMeterDataServiceImpl.java @@ -50,9 +50,11 @@ // 1. 保存原始记录 this.baseMapper.insert(dataWaterMeter); Calendar lastDay = Calendar.getInstance(); + Calendar checkDay = Calendar.getInstance(); if (null != lastDayAcc) { try { lastDay.setTime(sdf.parse(lastDayAcc.get("uptime").toString())); + checkDay.setTime(sdf.parse(lastDayAcc.get("uptime").toString())); } catch (Exception ex) { log.error("主题:水表数据接收日期转换出错{},异常信息{}", lastDayAcc.get("uptime").toString(), ex); } @@ -67,10 +69,11 @@ long delhour = delta / (3600 * 1000); int dateDelta = (int) delhour / 24; //如果间隔为1,可能是同一天,或者是间隔一天,进行时差的进一步判断 - flowAccDayRet = flowAccDelta / delhour * 24; + flowAccDayRet = delhour == 0 ? 0 : flowAccDelta / delhour * 24; + checkDay.add(Calendar.DATE, 1); if (dayDel == 0 && dateDelta == 0 && delhour > 0) { noIntervalDayWaterMeter(waterMeterDay, lastDayAcc, flowAccDayRet, flowAccDelta, waterMeterMonth, dataWaterMeter); - } else if (dayDel == 1|| dateDelta == 1 ) { + } else if (today.get(Calendar.DATE) - checkDay.get(Calendar.DATE) == 0) { intervalOfDayWaterMeter(waterMeterDay, lastDay, flowAccDayRet, flowAccDelta, lastDayAcc, waterMeterMonth, dataWaterMeter); } else { intervalManyDayWaterMeter(waterMeterDay, flowAccDayRet, lastDay, lastDayAcc, waterMeterMonth, delhour, dateDelta); @@ -105,7 +108,7 @@ waterMeterMonth.put("lastAcc", dataWaterMeter.getFlowAcc()); this.baseMapper.updateDataWatermeterMonth(waterMeterMonth, (Long) monthExist.get("id")); } else { - waterMeterMonth.put("flowAccMonth", flowAccDelta); + waterMeterMonth.put("flowAccMonth", df2.format(flowAccDelta)); waterMeterMonth.put("firstAcc", lastDayAcc.get("flowAcc").toString()); // 初始累积值为上个月的最后一个累积值 waterMeterMonth.put("lastAcc", dataWaterMeter.getFlowAcc()); this.baseMapper.insertDataWatermeterMonth(waterMeterMonth); @@ -130,7 +133,7 @@ this.baseMapper.insertDataWatermeterDay(waterMeterDay); if (lastDay.get(Calendar.DATE) == 1) { // 是每月的第一天 则新增月用水量 - waterMeterMonth.put("flowAccMonth", flowAccDelta); + waterMeterMonth.put("flowAccMonth", df2.format(flowAccDelta)); waterMeterMonth.put("firstAcc", lastDayAcc.get("flowAcc").toString()); // 初始累积值为上个月的最后一个累积值 waterMeterMonth.put("lastAcc", dataWaterMeter.getFlowAcc()); this.baseMapper.insertDataWatermeterMonth(waterMeterMonth); @@ -141,7 +144,7 @@ waterMeterMonth.put("lastAcc", dataWaterMeter.getFlowAcc()); this.baseMapper.updateDataWatermeterMonth(waterMeterMonth, (Long) monthExist.get("id")); } else { - waterMeterMonth.put("flowAccMonth", flowAccDelta); + waterMeterMonth.put("flowAccMonth", df2.format(flowAccDelta)); waterMeterMonth.put("firstAcc", lastDayAcc.get("flowAcc").toString()); // 初始累积值为上个月的最后一个累积值 waterMeterMonth.put("lastAcc", dataWaterMeter.getFlowAcc()); this.baseMapper.insertDataWatermeterMonth(waterMeterMonth); @@ -168,7 +171,7 @@ waterMeterMonth.put("month", sdfDate.format(lastDay.getTime()).substring(0, 7)); if (lastDay.get(Calendar.DATE) == 1) { // 是每月的第一天 则新增月用水量 - waterMeterMonth.put("flowAccMonth", waterMeterDay.get("flowAccDate")); + waterMeterMonth.put("flowAccMonth",df2.format(Double.parseDouble(waterMeterDay.get("flowAccDate").toString()))); waterMeterMonth.put("firstAcc", df2.format(Double.parseDouble(lastDayAcc.get("flowAcc").toString()) + avgFlowAccDay * i)); waterMeterMonth.put("lastAcc", waterMeterDay.get("flowAcc")); this.baseMapper.insertDataWatermeterMonth(waterMeterMonth); @@ -180,18 +183,18 @@ waterMeterMonth.put("lastAcc", waterMeterDay.get("flowAcc")); this.baseMapper.updateDataWatermeterMonth(waterMeterMonth, (Long) monthExist.get("id")); } else { - waterMeterMonth.put("flowAccMonth", waterMeterDay.get("flowAccDate")); - waterMeterMonth.put("firstAcc", 0); + waterMeterMonth.put("flowAccMonth",df2.format(Double.parseDouble(waterMeterDay.get("flowAccDate").toString()))); + waterMeterMonth.put("firstAcc", 0.00); waterMeterMonth.put("lastAcc", waterMeterDay.get("flowAcc")); this.baseMapper.insertDataWatermeterMonth(waterMeterMonth); } } } - if (dayDelta != 0) { + if (dayDelta > 0) { //修正月统计最后的累计 Double lastTimeDiff = avgFlowAccDay + Double.valueOf(dayDelta * 24 - dateHour) / 24 * avgFlowAccDay; //修正月统计最后的累计 - Double flowMonth=lastDay.get(Calendar.DATE)==1?lastTimeDiff:Double.parseDouble(monthExist.get("flowAccMonth").toString())+lastTimeDiff; + Double flowMonth = lastDay.get(Calendar.DATE) == 1 ? lastTimeDiff : Double.parseDouble(monthExist.get("flowAccMonth").toString()) + lastTimeDiff; //更新最后月累计量 waterMeterMonth.put("flowAccMonth", df2.format(flowMonth)); this.baseMapper.updateDataWatermeterMonth(waterMeterMonth, (Long) monthExist.get("id")); @@ -207,10 +210,10 @@ waterMeterMonth.put("month", sdfDate.format(lastDay.getTime()).substring(0, 7)); // 没有找到最近的日用水量记录 则新增日及月用水量 waterMeterDay.put("flowAcc", dataWaterMeter.getFlowAcc()); - waterMeterDay.put("flowAccDate", dataWaterMeter.getFlowAcc()); + waterMeterDay.put("flowAccDate", df2.format(Double.parseDouble(dataWaterMeter.getFlowAcc()))); this.baseMapper.insertDataWatermeterDay(waterMeterDay); Double flowAccDayRet = Double.parseDouble(dataWaterMeter.getFlowAcc()); - waterMeterMonth.put("flowAccMonth", dataWaterMeter.getFlowAcc()); + waterMeterMonth.put("flowAccMonth", df2.format(Double.parseDouble(dataWaterMeter.getFlowAcc()))); waterMeterMonth.put("firstAcc", 0); waterMeterMonth.put("lastAcc", dataWaterMeter.getFlowAcc()); this.baseMapper.insertDataWatermeterMonth(waterMeterMonth);