diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java new file mode 100644 index 0000000..c9cf49a --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class RecordExcelDto { + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("权属单位") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警等级") + private String alarmLevel; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("告警时间") + private String logTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java new file mode 100644 index 0000000..c9cf49a --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class RecordExcelDto { + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("权属单位") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警等级") + private String alarmLevel; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("告警时间") + private String logTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java index 5f47018..d49386c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java @@ -37,7 +37,7 @@ List> jobListSearchApp(Page> page, JobListParam jobListParam, Long deptId, Long userId, Long leaderId); - List> jobInfo(int id, DataScope dataScope, Long personId); + List> jobInfo(Long id, DataScope dataScope, Long personId); boolean getJob(int id, long personId); @@ -51,7 +51,7 @@ boolean overAlarm(int id); - boolean handleJob(int id, long personId); + boolean handleJob(Long id, long personId); Map countByJobStatus(long deptId, int spanDays); diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java new file mode 100644 index 0000000..c9cf49a --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class RecordExcelDto { + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("权属单位") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警等级") + private String alarmLevel; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("告警时间") + private String logTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java index 5f47018..d49386c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java @@ -37,7 +37,7 @@ List> jobListSearchApp(Page> page, JobListParam jobListParam, Long deptId, Long userId, Long leaderId); - List> jobInfo(int id, DataScope dataScope, Long personId); + List> jobInfo(Long id, DataScope dataScope, Long personId); boolean getJob(int id, long personId); @@ -51,7 +51,7 @@ boolean overAlarm(int id); - boolean handleJob(int id, long personId); + boolean handleJob(Long id, long personId); Map countByJobStatus(long deptId, int spanDays); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java index 267fff5..8a5b270 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java @@ -22,5 +22,5 @@ List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent,String beginTime, String endTime); - boolean cancelAlarm(int id,String jobStatus, String handleMessage, long personId); + boolean cancelAlarm(Long id,String jobStatus, String handleMessage, long personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java new file mode 100644 index 0000000..c9cf49a --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class RecordExcelDto { + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("权属单位") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警等级") + private String alarmLevel; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("告警时间") + private String logTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java index 5f47018..d49386c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java @@ -37,7 +37,7 @@ List> jobListSearchApp(Page> page, JobListParam jobListParam, Long deptId, Long userId, Long leaderId); - List> jobInfo(int id, DataScope dataScope, Long personId); + List> jobInfo(Long id, DataScope dataScope, Long personId); boolean getJob(int id, long personId); @@ -51,7 +51,7 @@ boolean overAlarm(int id); - boolean handleJob(int id, long personId); + boolean handleJob(Long id, long personId); Map countByJobStatus(long deptId, int spanDays); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java index 267fff5..8a5b270 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java @@ -22,5 +22,5 @@ List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent,String beginTime, String endTime); - boolean cancelAlarm(int id,String jobStatus, String handleMessage, long personId); + boolean cancelAlarm(Long id,String jobStatus, String handleMessage, long personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java index 5ef681b..c52630c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java @@ -144,7 +144,7 @@ } @Override - public List> jobInfo(int id, DataScope dataScope, Long personId) { + public List> jobInfo(Long id, DataScope dataScope, Long personId) { List> job = this.baseMapper.jobInfo(id, dataScope, personId); return job; } @@ -232,7 +232,7 @@ } @Override - public boolean handleJob(int id, long personId) { + public boolean handleJob(Long id, long personId) { return this.baseMapper.handleJob(id, personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java new file mode 100644 index 0000000..c9cf49a --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class RecordExcelDto { + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("权属单位") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警等级") + private String alarmLevel; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("告警时间") + private String logTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java index 5f47018..d49386c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java @@ -37,7 +37,7 @@ List> jobListSearchApp(Page> page, JobListParam jobListParam, Long deptId, Long userId, Long leaderId); - List> jobInfo(int id, DataScope dataScope, Long personId); + List> jobInfo(Long id, DataScope dataScope, Long personId); boolean getJob(int id, long personId); @@ -51,7 +51,7 @@ boolean overAlarm(int id); - boolean handleJob(int id, long personId); + boolean handleJob(Long id, long personId); Map countByJobStatus(long deptId, int spanDays); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java index 267fff5..8a5b270 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java @@ -22,5 +22,5 @@ List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent,String beginTime, String endTime); - boolean cancelAlarm(int id,String jobStatus, String handleMessage, long personId); + boolean cancelAlarm(Long id,String jobStatus, String handleMessage, long personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java index 5ef681b..c52630c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java @@ -144,7 +144,7 @@ } @Override - public List> jobInfo(int id, DataScope dataScope, Long personId) { + public List> jobInfo(Long id, DataScope dataScope, Long personId) { List> job = this.baseMapper.jobInfo(id, dataScope, personId); return job; } @@ -232,7 +232,7 @@ } @Override - public boolean handleJob(int id, long personId) { + public boolean handleJob(Long id, long personId) { return this.baseMapper.handleJob(id, personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index 2f9b8d1..d2cc7f1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -16,7 +16,7 @@ /** *

- * 服务实现类 + * 服务实现类 *

* * @author casic123 @@ -27,12 +27,12 @@ @Override - public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { + public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmList(page,keywords,beginTime,endTime,status,alarmType,sContent,dataScope); + return this.baseMapper.alarmList(page, keywords, beginTime, endTime, status, alarmType, sContent, dataScope); } /** @@ -41,15 +41,15 @@ @Override public List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent, String beginTime, String endTime) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmListNoPage(dataScope,keywords,alarmType,sContent,beginTime,endTime); + return this.baseMapper.alarmListNoPage(dataScope, keywords, alarmType, sContent, beginTime, endTime); } @Override - public boolean cancelAlarm(int id, String jobStatus, String handleMessage, long personId) { - return this.baseMapper.cancelAlarm(id,jobStatus,handleMessage,personId); + public boolean cancelAlarm(Long id, String jobStatus, String handleMessage, long personId) { + return this.baseMapper.cancelAlarm(id) && this.baseMapper.closeJob(id, jobStatus, handleMessage, personId); } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java new file mode 100644 index 0000000..c9cf49a --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class RecordExcelDto { + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("权属单位") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警等级") + private String alarmLevel; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("告警时间") + private String logTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java index 5f47018..d49386c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java @@ -37,7 +37,7 @@ List> jobListSearchApp(Page> page, JobListParam jobListParam, Long deptId, Long userId, Long leaderId); - List> jobInfo(int id, DataScope dataScope, Long personId); + List> jobInfo(Long id, DataScope dataScope, Long personId); boolean getJob(int id, long personId); @@ -51,7 +51,7 @@ boolean overAlarm(int id); - boolean handleJob(int id, long personId); + boolean handleJob(Long id, long personId); Map countByJobStatus(long deptId, int spanDays); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java index 267fff5..8a5b270 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java @@ -22,5 +22,5 @@ List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent,String beginTime, String endTime); - boolean cancelAlarm(int id,String jobStatus, String handleMessage, long personId); + boolean cancelAlarm(Long id,String jobStatus, String handleMessage, long personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java index 5ef681b..c52630c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java @@ -144,7 +144,7 @@ } @Override - public List> jobInfo(int id, DataScope dataScope, Long personId) { + public List> jobInfo(Long id, DataScope dataScope, Long personId) { List> job = this.baseMapper.jobInfo(id, dataScope, personId); return job; } @@ -232,7 +232,7 @@ } @Override - public boolean handleJob(int id, long personId) { + public boolean handleJob(Long id, long personId) { return this.baseMapper.handleJob(id, personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index 2f9b8d1..d2cc7f1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -16,7 +16,7 @@ /** *

- * 服务实现类 + * 服务实现类 *

* * @author casic123 @@ -27,12 +27,12 @@ @Override - public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { + public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmList(page,keywords,beginTime,endTime,status,alarmType,sContent,dataScope); + return this.baseMapper.alarmList(page, keywords, beginTime, endTime, status, alarmType, sContent, dataScope); } /** @@ -41,15 +41,15 @@ @Override public List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent, String beginTime, String endTime) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmListNoPage(dataScope,keywords,alarmType,sContent,beginTime,endTime); + return this.baseMapper.alarmListNoPage(dataScope, keywords, alarmType, sContent, beginTime, endTime); } @Override - public boolean cancelAlarm(int id, String jobStatus, String handleMessage, long personId) { - return this.baseMapper.cancelAlarm(id,jobStatus,handleMessage,personId); + public boolean cancelAlarm(Long id, String jobStatus, String handleMessage, long personId) { + return this.baseMapper.cancelAlarm(id) && this.baseMapper.closeJob(id, jobStatus, handleMessage, personId); } } 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 d3bd513..5ea6d1c 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,5 +1,6 @@ package com.casic.missiles.modular.alarm.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; @@ -26,27 +27,27 @@ 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(String alarmType, String devType) { + 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/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java new file mode 100644 index 0000000..c9cf49a --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class RecordExcelDto { + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("权属单位") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警等级") + private String alarmLevel; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("告警时间") + private String logTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java index 5f47018..d49386c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java @@ -37,7 +37,7 @@ List> jobListSearchApp(Page> page, JobListParam jobListParam, Long deptId, Long userId, Long leaderId); - List> jobInfo(int id, DataScope dataScope, Long personId); + List> jobInfo(Long id, DataScope dataScope, Long personId); boolean getJob(int id, long personId); @@ -51,7 +51,7 @@ boolean overAlarm(int id); - boolean handleJob(int id, long personId); + boolean handleJob(Long id, long personId); Map countByJobStatus(long deptId, int spanDays); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java index 267fff5..8a5b270 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java @@ -22,5 +22,5 @@ List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent,String beginTime, String endTime); - boolean cancelAlarm(int id,String jobStatus, String handleMessage, long personId); + boolean cancelAlarm(Long id,String jobStatus, String handleMessage, long personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java index 5ef681b..c52630c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java @@ -144,7 +144,7 @@ } @Override - public List> jobInfo(int id, DataScope dataScope, Long personId) { + public List> jobInfo(Long id, DataScope dataScope, Long personId) { List> job = this.baseMapper.jobInfo(id, dataScope, personId); return job; } @@ -232,7 +232,7 @@ } @Override - public boolean handleJob(int id, long personId) { + public boolean handleJob(Long id, long personId) { return this.baseMapper.handleJob(id, personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index 2f9b8d1..d2cc7f1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -16,7 +16,7 @@ /** *

- * 服务实现类 + * 服务实现类 *

* * @author casic123 @@ -27,12 +27,12 @@ @Override - public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { + public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmList(page,keywords,beginTime,endTime,status,alarmType,sContent,dataScope); + return this.baseMapper.alarmList(page, keywords, beginTime, endTime, status, alarmType, sContent, dataScope); } /** @@ -41,15 +41,15 @@ @Override public List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent, String beginTime, String endTime) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmListNoPage(dataScope,keywords,alarmType,sContent,beginTime,endTime); + return this.baseMapper.alarmListNoPage(dataScope, keywords, alarmType, sContent, beginTime, endTime); } @Override - public boolean cancelAlarm(int id, String jobStatus, String handleMessage, long personId) { - return this.baseMapper.cancelAlarm(id,jobStatus,handleMessage,personId); + public boolean cancelAlarm(Long id, String jobStatus, String handleMessage, long personId) { + return this.baseMapper.cancelAlarm(id) && this.baseMapper.closeJob(id, jobStatus, handleMessage, personId); } } 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 d3bd513..5ea6d1c 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,5 +1,6 @@ package com.casic.missiles.modular.alarm.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; @@ -26,27 +27,27 @@ 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(String alarmType, String devType) { + 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/dao/AlarmJobMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java index 958a1ad..57d3173 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java @@ -48,7 +48,7 @@ Map countMyJob(@Param("userId") long userId, @Param("deptId") long deptId, @Param("spanDays") int spanDays); - List> jobInfo(@Param("id") int id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); + List> jobInfo(@Param("id") Long id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); // boolean getJob(@Param("id") int id,@Param("personId") long personId); boolean getJob(@Param("id") int id, @Param("personId") long personId, @Param("getTime") Date getTime, @Param("shouldHandleTime") Date shouldHandleTime); @@ -71,7 +71,7 @@ boolean overJobAlarmRecrds(@Param("id") int id); - boolean handleJob(@Param("id") int id, @Param("personId") long personId); + boolean handleJob(@Param("id") Long id, @Param("personId") long personId); List> countByDataScope(@Param("dataScope") DataScope dataScope, @Param("alarmType") String alarmType, @Param("jobStatus") String jobStatus, @Param("beginTime") String beginTime, @Param("endTime") String endTime); diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java new file mode 100644 index 0000000..c9cf49a --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class RecordExcelDto { + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("权属单位") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警等级") + private String alarmLevel; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("告警时间") + private String logTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java index 5f47018..d49386c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java @@ -37,7 +37,7 @@ List> jobListSearchApp(Page> page, JobListParam jobListParam, Long deptId, Long userId, Long leaderId); - List> jobInfo(int id, DataScope dataScope, Long personId); + List> jobInfo(Long id, DataScope dataScope, Long personId); boolean getJob(int id, long personId); @@ -51,7 +51,7 @@ boolean overAlarm(int id); - boolean handleJob(int id, long personId); + boolean handleJob(Long id, long personId); Map countByJobStatus(long deptId, int spanDays); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java index 267fff5..8a5b270 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java @@ -22,5 +22,5 @@ List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent,String beginTime, String endTime); - boolean cancelAlarm(int id,String jobStatus, String handleMessage, long personId); + boolean cancelAlarm(Long id,String jobStatus, String handleMessage, long personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java index 5ef681b..c52630c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java @@ -144,7 +144,7 @@ } @Override - public List> jobInfo(int id, DataScope dataScope, Long personId) { + public List> jobInfo(Long id, DataScope dataScope, Long personId) { List> job = this.baseMapper.jobInfo(id, dataScope, personId); return job; } @@ -232,7 +232,7 @@ } @Override - public boolean handleJob(int id, long personId) { + public boolean handleJob(Long id, long personId) { return this.baseMapper.handleJob(id, personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index 2f9b8d1..d2cc7f1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -16,7 +16,7 @@ /** *

- * 服务实现类 + * 服务实现类 *

* * @author casic123 @@ -27,12 +27,12 @@ @Override - public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { + public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmList(page,keywords,beginTime,endTime,status,alarmType,sContent,dataScope); + return this.baseMapper.alarmList(page, keywords, beginTime, endTime, status, alarmType, sContent, dataScope); } /** @@ -41,15 +41,15 @@ @Override public List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent, String beginTime, String endTime) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmListNoPage(dataScope,keywords,alarmType,sContent,beginTime,endTime); + return this.baseMapper.alarmListNoPage(dataScope, keywords, alarmType, sContent, beginTime, endTime); } @Override - public boolean cancelAlarm(int id, String jobStatus, String handleMessage, long personId) { - return this.baseMapper.cancelAlarm(id,jobStatus,handleMessage,personId); + public boolean cancelAlarm(Long id, String jobStatus, String handleMessage, long personId) { + return this.baseMapper.cancelAlarm(id) && this.baseMapper.closeJob(id, jobStatus, handleMessage, personId); } } 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 d3bd513..5ea6d1c 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,5 +1,6 @@ package com.casic.missiles.modular.alarm.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; @@ -26,27 +27,27 @@ 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(String alarmType, String devType) { + 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/dao/AlarmJobMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java index 958a1ad..57d3173 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java @@ -48,7 +48,7 @@ Map countMyJob(@Param("userId") long userId, @Param("deptId") long deptId, @Param("spanDays") int spanDays); - List> jobInfo(@Param("id") int id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); + List> jobInfo(@Param("id") Long id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); // boolean getJob(@Param("id") int id,@Param("personId") long personId); boolean getJob(@Param("id") int id, @Param("personId") long personId, @Param("getTime") Date getTime, @Param("shouldHandleTime") Date shouldHandleTime); @@ -71,7 +71,7 @@ boolean overJobAlarmRecrds(@Param("id") int id); - boolean handleJob(@Param("id") int id, @Param("personId") long personId); + boolean handleJob(@Param("id") Long id, @Param("personId") long personId); List> countByDataScope(@Param("dataScope") DataScope dataScope, @Param("alarmType") String alarmType, @Param("jobStatus") String jobStatus, @Param("beginTime") String beginTime, @Param("endTime") String endTime); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java index 3874bfa..4b34b3c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -11,7 +11,7 @@ /** *

- * Mapper 接口 + * Mapper 接口 *

* * @author casic123 @@ -19,9 +19,12 @@ */ public interface AlarmRecordsMapper extends BaseMapper { - List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent,@Param("dataScope") DataScope dataScope); + List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("dataScope") DataScope dataScope); List alarmListNoPage(@Param("scope") DataScope dataScope, @Param("keywords") String keywords, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("beginTime") String beginTime, @Param("endTime") String endTime); - boolean cancelAlarm(@Param("id") int id,@Param("jobStatus")String jobStatus,@Param("handleMessage") String handleMessage,@Param("personId") long personId); + boolean cancelAlarm(@Param("id") Long id); + + boolean closeJob(@Param("id") Long id, @Param("jobStatus") String jobStatus, @Param("handleMessage") String handleMessage, @Param("personId") long personId); + } diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java new file mode 100644 index 0000000..c9cf49a --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class RecordExcelDto { + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("权属单位") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警等级") + private String alarmLevel; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("告警时间") + private String logTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java index 5f47018..d49386c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java @@ -37,7 +37,7 @@ List> jobListSearchApp(Page> page, JobListParam jobListParam, Long deptId, Long userId, Long leaderId); - List> jobInfo(int id, DataScope dataScope, Long personId); + List> jobInfo(Long id, DataScope dataScope, Long personId); boolean getJob(int id, long personId); @@ -51,7 +51,7 @@ boolean overAlarm(int id); - boolean handleJob(int id, long personId); + boolean handleJob(Long id, long personId); Map countByJobStatus(long deptId, int spanDays); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java index 267fff5..8a5b270 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java @@ -22,5 +22,5 @@ List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent,String beginTime, String endTime); - boolean cancelAlarm(int id,String jobStatus, String handleMessage, long personId); + boolean cancelAlarm(Long id,String jobStatus, String handleMessage, long personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java index 5ef681b..c52630c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java @@ -144,7 +144,7 @@ } @Override - public List> jobInfo(int id, DataScope dataScope, Long personId) { + public List> jobInfo(Long id, DataScope dataScope, Long personId) { List> job = this.baseMapper.jobInfo(id, dataScope, personId); return job; } @@ -232,7 +232,7 @@ } @Override - public boolean handleJob(int id, long personId) { + public boolean handleJob(Long id, long personId) { return this.baseMapper.handleJob(id, personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index 2f9b8d1..d2cc7f1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -16,7 +16,7 @@ /** *

- * 服务实现类 + * 服务实现类 *

* * @author casic123 @@ -27,12 +27,12 @@ @Override - public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { + public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmList(page,keywords,beginTime,endTime,status,alarmType,sContent,dataScope); + return this.baseMapper.alarmList(page, keywords, beginTime, endTime, status, alarmType, sContent, dataScope); } /** @@ -41,15 +41,15 @@ @Override public List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent, String beginTime, String endTime) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmListNoPage(dataScope,keywords,alarmType,sContent,beginTime,endTime); + return this.baseMapper.alarmListNoPage(dataScope, keywords, alarmType, sContent, beginTime, endTime); } @Override - public boolean cancelAlarm(int id, String jobStatus, String handleMessage, long personId) { - return this.baseMapper.cancelAlarm(id,jobStatus,handleMessage,personId); + public boolean cancelAlarm(Long id, String jobStatus, String handleMessage, long personId) { + return this.baseMapper.cancelAlarm(id) && this.baseMapper.closeJob(id, jobStatus, handleMessage, personId); } } 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 d3bd513..5ea6d1c 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,5 +1,6 @@ package com.casic.missiles.modular.alarm.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; @@ -26,27 +27,27 @@ 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(String alarmType, String devType) { + 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/dao/AlarmJobMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java index 958a1ad..57d3173 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java @@ -48,7 +48,7 @@ Map countMyJob(@Param("userId") long userId, @Param("deptId") long deptId, @Param("spanDays") int spanDays); - List> jobInfo(@Param("id") int id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); + List> jobInfo(@Param("id") Long id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); // boolean getJob(@Param("id") int id,@Param("personId") long personId); boolean getJob(@Param("id") int id, @Param("personId") long personId, @Param("getTime") Date getTime, @Param("shouldHandleTime") Date shouldHandleTime); @@ -71,7 +71,7 @@ boolean overJobAlarmRecrds(@Param("id") int id); - boolean handleJob(@Param("id") int id, @Param("personId") long personId); + boolean handleJob(@Param("id") Long id, @Param("personId") long personId); List> countByDataScope(@Param("dataScope") DataScope dataScope, @Param("alarmType") String alarmType, @Param("jobStatus") String jobStatus, @Param("beginTime") String beginTime, @Param("endTime") String endTime); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java index 3874bfa..4b34b3c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -11,7 +11,7 @@ /** *

- * Mapper 接口 + * Mapper 接口 *

* * @author casic123 @@ -19,9 +19,12 @@ */ public interface AlarmRecordsMapper extends BaseMapper { - List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent,@Param("dataScope") DataScope dataScope); + List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("dataScope") DataScope dataScope); List alarmListNoPage(@Param("scope") DataScope dataScope, @Param("keywords") String keywords, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("beginTime") String beginTime, @Param("endTime") String endTime); - boolean cancelAlarm(@Param("id") int id,@Param("jobStatus")String jobStatus,@Param("handleMessage") String handleMessage,@Param("personId") long personId); + boolean cancelAlarm(@Param("id") Long id); + + boolean closeJob(@Param("id") Long id, @Param("jobStatus") String jobStatus, @Param("handleMessage") String handleMessage, @Param("personId") long personId); + } 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 9d7506f..c12b51d 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 @@ -22,7 +22,7 @@ List> getTypeViaCode(@Param("code") String code); List> getAlarmContent(@Param("alarmType") String alarmType,@Param("deviceType") String devType); List> testPage(@Param("page") Page> page); - String getDeviceTypeNameById(@Param("deviceTypeId") String deviceTypeId); + String getDeviceTypeNameById(@Param("deviceTypeId") Long deviceTypeId); String getDeptNameById(@Param("deptid") long deptid); String getAlarmTypeNameByCodeNum(@Param("alarmType") String alarmType); String getAlarmContentName(@Param("id") int id); diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java new file mode 100644 index 0000000..c9cf49a --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class RecordExcelDto { + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("权属单位") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警等级") + private String alarmLevel; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("告警时间") + private String logTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java index 5f47018..d49386c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java @@ -37,7 +37,7 @@ List> jobListSearchApp(Page> page, JobListParam jobListParam, Long deptId, Long userId, Long leaderId); - List> jobInfo(int id, DataScope dataScope, Long personId); + List> jobInfo(Long id, DataScope dataScope, Long personId); boolean getJob(int id, long personId); @@ -51,7 +51,7 @@ boolean overAlarm(int id); - boolean handleJob(int id, long personId); + boolean handleJob(Long id, long personId); Map countByJobStatus(long deptId, int spanDays); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java index 267fff5..8a5b270 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java @@ -22,5 +22,5 @@ List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent,String beginTime, String endTime); - boolean cancelAlarm(int id,String jobStatus, String handleMessage, long personId); + boolean cancelAlarm(Long id,String jobStatus, String handleMessage, long personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java index 5ef681b..c52630c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java @@ -144,7 +144,7 @@ } @Override - public List> jobInfo(int id, DataScope dataScope, Long personId) { + public List> jobInfo(Long id, DataScope dataScope, Long personId) { List> job = this.baseMapper.jobInfo(id, dataScope, personId); return job; } @@ -232,7 +232,7 @@ } @Override - public boolean handleJob(int id, long personId) { + public boolean handleJob(Long id, long personId) { return this.baseMapper.handleJob(id, personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index 2f9b8d1..d2cc7f1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -16,7 +16,7 @@ /** *

- * 服务实现类 + * 服务实现类 *

* * @author casic123 @@ -27,12 +27,12 @@ @Override - public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { + public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmList(page,keywords,beginTime,endTime,status,alarmType,sContent,dataScope); + return this.baseMapper.alarmList(page, keywords, beginTime, endTime, status, alarmType, sContent, dataScope); } /** @@ -41,15 +41,15 @@ @Override public List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent, String beginTime, String endTime) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmListNoPage(dataScope,keywords,alarmType,sContent,beginTime,endTime); + return this.baseMapper.alarmListNoPage(dataScope, keywords, alarmType, sContent, beginTime, endTime); } @Override - public boolean cancelAlarm(int id, String jobStatus, String handleMessage, long personId) { - return this.baseMapper.cancelAlarm(id,jobStatus,handleMessage,personId); + public boolean cancelAlarm(Long id, String jobStatus, String handleMessage, long personId) { + return this.baseMapper.cancelAlarm(id) && this.baseMapper.closeJob(id, jobStatus, handleMessage, personId); } } 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 d3bd513..5ea6d1c 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,5 +1,6 @@ package com.casic.missiles.modular.alarm.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; @@ -26,27 +27,27 @@ 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(String alarmType, String devType) { + 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/dao/AlarmJobMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java index 958a1ad..57d3173 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java @@ -48,7 +48,7 @@ Map countMyJob(@Param("userId") long userId, @Param("deptId") long deptId, @Param("spanDays") int spanDays); - List> jobInfo(@Param("id") int id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); + List> jobInfo(@Param("id") Long id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); // boolean getJob(@Param("id") int id,@Param("personId") long personId); boolean getJob(@Param("id") int id, @Param("personId") long personId, @Param("getTime") Date getTime, @Param("shouldHandleTime") Date shouldHandleTime); @@ -71,7 +71,7 @@ boolean overJobAlarmRecrds(@Param("id") int id); - boolean handleJob(@Param("id") int id, @Param("personId") long personId); + boolean handleJob(@Param("id") Long id, @Param("personId") long personId); List> countByDataScope(@Param("dataScope") DataScope dataScope, @Param("alarmType") String alarmType, @Param("jobStatus") String jobStatus, @Param("beginTime") String beginTime, @Param("endTime") String endTime); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java index 3874bfa..4b34b3c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -11,7 +11,7 @@ /** *

- * Mapper 接口 + * Mapper 接口 *

* * @author casic123 @@ -19,9 +19,12 @@ */ public interface AlarmRecordsMapper extends BaseMapper { - List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent,@Param("dataScope") DataScope dataScope); + List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("dataScope") DataScope dataScope); List alarmListNoPage(@Param("scope") DataScope dataScope, @Param("keywords") String keywords, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("beginTime") String beginTime, @Param("endTime") String endTime); - boolean cancelAlarm(@Param("id") int id,@Param("jobStatus")String jobStatus,@Param("handleMessage") String handleMessage,@Param("personId") long personId); + boolean cancelAlarm(@Param("id") Long id); + + boolean closeJob(@Param("id") Long id, @Param("jobStatus") String jobStatus, @Param("handleMessage") String handleMessage, @Param("personId") long personId); + } 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 9d7506f..c12b51d 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 @@ -22,7 +22,7 @@ List> getTypeViaCode(@Param("code") String code); List> getAlarmContent(@Param("alarmType") String alarmType,@Param("deviceType") String devType); List> testPage(@Param("page") Page> page); - String getDeviceTypeNameById(@Param("deviceTypeId") String deviceTypeId); + String getDeviceTypeNameById(@Param("deviceTypeId") Long deviceTypeId); String getDeptNameById(@Param("deptid") long deptid); String getAlarmTypeNameByCodeNum(@Param("alarmType") String alarmType); String getAlarmContentName(@Param("id") int id); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml index b279d9a..401a28a 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml @@ -24,40 +24,132 @@ + + DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + ifnull(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + + + + + + AND date_part('day',now()-aj.create_time) ${paramDay} + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + - ID AS id, JOBCODE AS jobcode, JOG_TYPE AS jogType, - WELL_CODE AS wellCode, DEVCODE AS devcode, DATE_FORMAT(CREATE_TIME,'%Y-%m-%d %H:%i:%s') AS createTime, - JOB_STATUS AS jobStatus, GET_JOB_PERSON AS getJobPerson, - DATE_FORMAT(GET_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS getJobTime, FIRST_STATE AS firstState, - FIRST_STATE_PHOTOS AS firstStatePhotos, CONFIRM_JOB_PERSON AS confirmJobPerson, - DATE_FORMAT(CONFRIM_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS confrimJobTime, HANDLE_JOB_Person AS handleJobPerson, - DATE_FORMAT(HANDLE_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS handleJobTime, HANDLE_MESSAGE AS handleMessage, - HANDLE_PHOTOS AS handlePhotos, FLOW AS flow - - - - - DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i:%S') - - - - to_date(${paramTime},'yyyy-MM-dd HH24:mi:ss') - - - - to_char(${paramTime},'yyyy-mm-dd hh24:mi:ss') + ID AS id, JOBCODE AS "jobcode", JOG_TYPE AS "jogType", + WELL_CODE AS "wellCode", DEVCODE AS "devcode", + + + + AS "createTime", + JOB_STATUS AS "jobStatus", GET_JOB_PERSON AS "getJobPerson", + + + + AS "getJobTime", FIRST_STATE AS "firstState", + FIRST_STATE_PHOTOS AS "firstStatePhotos", CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confrimJobTime", HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "handleJobTime", HANDLE_MESSAGE AS "handleMessage", + HANDLE_PHOTOS AS "handlePhotos", FLOW AS flow + - SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS deptId + SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS "deptId" FROM alarm_job aj LEFT JOIN alarm_records ar ON ar.JOB_ID = aj.ID LEFT JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE @@ -150,11 +273,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -179,11 +310,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -207,47 +346,181 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + - - ar.id as alarmId, - aj.DEVCODE as devcode, - aj.WELL_CODE as wellCode, - ar.ALARM_TYPE as alarmType, - ar.ALARM_CONTENT as alarmContentName, - ar.STATUS as alarmStatus, - aj.ID as id, - aj.ID as jobId, - aj.JOG_TYPE as jobType, - aj.JOBCODE as jobCode, - aj.JOB_STATUS as jobStatus, - aj.JOB_BELONG_TO as jobBelongTo, + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, ar.ALARM_VALUE AS alarmValue, ar.ALARM_LEVEL AS alarmLevel, ar.ALARM_MSG AS alarmMessage, - TO_CHAR(aj.CREATE_TIME,'yyyy-MM-dd HH24:mi:ss') as createTime, - TO_CHAR(ar.ALARM_TIME,'yyyy-MM-dd HH24:mi:ss') as alarmTime, - aj.GET_JOB_PERSON as getJobPerson, - TO_CHAR(aj.SHOULD_GET_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldGetTime, - TO_CHAR(aj.GET_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as getJobTime, - aj.CONFIRM_JOB_PERSON as confirmJobPerson, - TO_CHAR(aj.CONFRIM_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as confirmJobTime, - aj.HANDLE_JOB_Person as handleJobPerson, - TO_CHAR(aj.SHOULD_HANDLE_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldHandleTime, - TO_CHAR(aj.HANDLE_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as handleJobTime, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, aj.JOB_FLAG_1 AS jobFlag, bwi.RESPONSIBLE_DEPT AS deptid + + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, + aj.JOB_FLAG_1 AS jobFlag, + bwi.RESPONSIBLE_DEPT AS deptid + + + + + ar.id AS "alarmId", + aj.DEVCODE AS devcode, + aj.WELL_CODE AS "wellCode", + ar.ALARM_TYPE AS "alarmType", + ar.ALARM_CONTENT AS "alarmContentName", + ar.STATUS AS "alarmStatus", + aj.ID AS id, + aj.ID AS "jobId", + aj.JOG_TYPE AS "jobType", + aj.JOBCODE AS "jobCode", + aj.JOB_STATUS AS "jobStatus", + aj.JOB_BELONG_TO AS "jobBelongTo", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + + + + AS "createTime", + + + + AS "alarmTime", + aj.GET_JOB_PERSON AS "getJobPerson", + + + + AS "shouldGetTime", + + + + AS "getJobTime", + aj.CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confirmJobTime", + aj.HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "shouldHandleTime", + + + + AS "handleJobTime", + aj.JOB_FLAG_1 AS "jobFlag", + bwi.RESPONSIBLE_DEPT AS deptid + + + @@ -298,7 +573,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -308,11 +584,19 @@ - AND aj.CREATE_TIME = ]]> #{beginTime} - AND aj.CREATE_TIME #{endTime} + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -350,14 +634,9 @@ WHERE ar.JOB_ID > 0 AND bwi.VALID = '1' AND aj.JOB_STATUS = '0' AND aj.JOB_FLAG_DELAY = '1' - - - - - - - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -367,11 +646,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -389,7 +676,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.responsible_dept = #{deptId} - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -399,11 +687,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -419,13 +715,20 @@ AND ( aj.JOB_STATUS = '1' OR aj.JOB_STATUS = '2') AND aj.JOB_FLAG_DELAY = '2' - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -449,18 +752,19 @@ AND bwi.responsible_dept = #{deptId} AND aj.CREATE_TIME = ]]> - - + + AND aj.CREATE_TIME - - + + - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -492,7 +796,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{jobListParam.keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{jobListParam.alarmLevel} @@ -504,34 +809,64 @@ AND aj.JOB_STATUS = #{jobListParam.jobStatus} - AND aj.CREATE_TIME = ]]> #{jobListParam.beginTime} + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME #{jobListParam.endTime} + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{jobListParam.getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{jobListParam.getJobEndTime} + AND aj.GET_JOB_TIME + + + - AND aj.SHOULD_GET_TIME = ]]> #{jobListParam.shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{jobListParam.shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{jobListParam.handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{jobListParam.handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{jobListParam.shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{jobListParam.shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -549,7 +884,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{alarmLevel} @@ -558,36 +894,63 @@ AND ar.ALARM_CONTENT = #{alarmContent} - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{getJobEndTime} - - + + + - AND aj.SHOULD_GET_TIME = ]]> #{shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -618,50 +981,73 @@ - + @@ -761,7 +1147,7 @@ - SELECT coalesce(SUM(IF(job_status='0',1,0)),0) AS beforeGet, - coalesce(SUM(IF(job_status='1',1,0)),0) AS beforeConfirm, - coalesce(SUM(IF(job_status='2',1,0)),0) AS inHandle, - coalesce(SUM(IF(job_status='3',1,0)),0) AS over + SELECT + + + + AS "beforeGet", + + + + AS "beforeConfirm", + + + + AS "inHandle", + + + + AS over FROM ( - SELECT coalesce(MAX(ar.ID),0) AS alarmId,aj.job_status AS job_status + SELECT + + AS alarmId,aj.job_status AS "job_status" FROM alarm_job aj LEFT JOIN alarm_records ar ON aj.ID = ar.job_id WHERE aj.well_code in @@ -69,10 +161,14 @@ and (( aj.job_status=3 and aj.job_belong_to IS NOT NULL ) or aj.job_status in (0,1,2)) - + + + - + + + GROUP BY aj.id @@ -80,13 +176,28 @@ + - SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS deptId + SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS "deptId" FROM alarm_job aj LEFT JOIN alarm_records ar ON ar.JOB_ID = aj.ID LEFT JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE @@ -150,11 +273,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -179,11 +310,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -207,47 +346,181 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + - - ar.id as alarmId, - aj.DEVCODE as devcode, - aj.WELL_CODE as wellCode, - ar.ALARM_TYPE as alarmType, - ar.ALARM_CONTENT as alarmContentName, - ar.STATUS as alarmStatus, - aj.ID as id, - aj.ID as jobId, - aj.JOG_TYPE as jobType, - aj.JOBCODE as jobCode, - aj.JOB_STATUS as jobStatus, - aj.JOB_BELONG_TO as jobBelongTo, + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, ar.ALARM_VALUE AS alarmValue, ar.ALARM_LEVEL AS alarmLevel, ar.ALARM_MSG AS alarmMessage, - TO_CHAR(aj.CREATE_TIME,'yyyy-MM-dd HH24:mi:ss') as createTime, - TO_CHAR(ar.ALARM_TIME,'yyyy-MM-dd HH24:mi:ss') as alarmTime, - aj.GET_JOB_PERSON as getJobPerson, - TO_CHAR(aj.SHOULD_GET_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldGetTime, - TO_CHAR(aj.GET_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as getJobTime, - aj.CONFIRM_JOB_PERSON as confirmJobPerson, - TO_CHAR(aj.CONFRIM_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as confirmJobTime, - aj.HANDLE_JOB_Person as handleJobPerson, - TO_CHAR(aj.SHOULD_HANDLE_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldHandleTime, - TO_CHAR(aj.HANDLE_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as handleJobTime, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, aj.JOB_FLAG_1 AS jobFlag, bwi.RESPONSIBLE_DEPT AS deptid + + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, + aj.JOB_FLAG_1 AS jobFlag, + bwi.RESPONSIBLE_DEPT AS deptid + + + + + ar.id AS "alarmId", + aj.DEVCODE AS devcode, + aj.WELL_CODE AS "wellCode", + ar.ALARM_TYPE AS "alarmType", + ar.ALARM_CONTENT AS "alarmContentName", + ar.STATUS AS "alarmStatus", + aj.ID AS id, + aj.ID AS "jobId", + aj.JOG_TYPE AS "jobType", + aj.JOBCODE AS "jobCode", + aj.JOB_STATUS AS "jobStatus", + aj.JOB_BELONG_TO AS "jobBelongTo", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + + + + AS "createTime", + + + + AS "alarmTime", + aj.GET_JOB_PERSON AS "getJobPerson", + + + + AS "shouldGetTime", + + + + AS "getJobTime", + aj.CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confirmJobTime", + aj.HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "shouldHandleTime", + + + + AS "handleJobTime", + aj.JOB_FLAG_1 AS "jobFlag", + bwi.RESPONSIBLE_DEPT AS deptid + + + @@ -298,7 +573,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -308,11 +584,19 @@ - AND aj.CREATE_TIME = ]]> #{beginTime} - AND aj.CREATE_TIME #{endTime} + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -350,14 +634,9 @@ WHERE ar.JOB_ID > 0 AND bwi.VALID = '1' AND aj.JOB_STATUS = '0' AND aj.JOB_FLAG_DELAY = '1' - - - - - - - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -367,11 +646,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -389,7 +676,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.responsible_dept = #{deptId} - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -399,11 +687,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -419,13 +715,20 @@ AND ( aj.JOB_STATUS = '1' OR aj.JOB_STATUS = '2') AND aj.JOB_FLAG_DELAY = '2' - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -449,18 +752,19 @@ AND bwi.responsible_dept = #{deptId} AND aj.CREATE_TIME = ]]> - - + + AND aj.CREATE_TIME - - + + - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -492,7 +796,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{jobListParam.keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{jobListParam.alarmLevel} @@ -504,34 +809,64 @@ AND aj.JOB_STATUS = #{jobListParam.jobStatus} - AND aj.CREATE_TIME = ]]> #{jobListParam.beginTime} + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME #{jobListParam.endTime} + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{jobListParam.getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{jobListParam.getJobEndTime} + AND aj.GET_JOB_TIME + + + - AND aj.SHOULD_GET_TIME = ]]> #{jobListParam.shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{jobListParam.shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{jobListParam.handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{jobListParam.handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{jobListParam.shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{jobListParam.shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -549,7 +884,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{alarmLevel} @@ -558,36 +894,63 @@ AND ar.ALARM_CONTENT = #{alarmContent} - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{getJobEndTime} - - + + + - AND aj.SHOULD_GET_TIME = ]]> #{shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -618,50 +981,73 @@ - + @@ -761,7 +1147,7 @@ - SELECT FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + SELECT + + FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + + + DATE_FORMAT(alarmTimeDate,'%Y-%m-%d %H:%i') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java new file mode 100644 index 0000000..c9cf49a --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class RecordExcelDto { + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("权属单位") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警等级") + private String alarmLevel; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("告警时间") + private String logTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java index 5f47018..d49386c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java @@ -37,7 +37,7 @@ List> jobListSearchApp(Page> page, JobListParam jobListParam, Long deptId, Long userId, Long leaderId); - List> jobInfo(int id, DataScope dataScope, Long personId); + List> jobInfo(Long id, DataScope dataScope, Long personId); boolean getJob(int id, long personId); @@ -51,7 +51,7 @@ boolean overAlarm(int id); - boolean handleJob(int id, long personId); + boolean handleJob(Long id, long personId); Map countByJobStatus(long deptId, int spanDays); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java index 267fff5..8a5b270 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java @@ -22,5 +22,5 @@ List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent,String beginTime, String endTime); - boolean cancelAlarm(int id,String jobStatus, String handleMessage, long personId); + boolean cancelAlarm(Long id,String jobStatus, String handleMessage, long personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java index 5ef681b..c52630c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java @@ -144,7 +144,7 @@ } @Override - public List> jobInfo(int id, DataScope dataScope, Long personId) { + public List> jobInfo(Long id, DataScope dataScope, Long personId) { List> job = this.baseMapper.jobInfo(id, dataScope, personId); return job; } @@ -232,7 +232,7 @@ } @Override - public boolean handleJob(int id, long personId) { + public boolean handleJob(Long id, long personId) { return this.baseMapper.handleJob(id, personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index 2f9b8d1..d2cc7f1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -16,7 +16,7 @@ /** *

- * 服务实现类 + * 服务实现类 *

* * @author casic123 @@ -27,12 +27,12 @@ @Override - public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { + public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmList(page,keywords,beginTime,endTime,status,alarmType,sContent,dataScope); + return this.baseMapper.alarmList(page, keywords, beginTime, endTime, status, alarmType, sContent, dataScope); } /** @@ -41,15 +41,15 @@ @Override public List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent, String beginTime, String endTime) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmListNoPage(dataScope,keywords,alarmType,sContent,beginTime,endTime); + return this.baseMapper.alarmListNoPage(dataScope, keywords, alarmType, sContent, beginTime, endTime); } @Override - public boolean cancelAlarm(int id, String jobStatus, String handleMessage, long personId) { - return this.baseMapper.cancelAlarm(id,jobStatus,handleMessage,personId); + public boolean cancelAlarm(Long id, String jobStatus, String handleMessage, long personId) { + return this.baseMapper.cancelAlarm(id) && this.baseMapper.closeJob(id, jobStatus, handleMessage, personId); } } 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 d3bd513..5ea6d1c 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,5 +1,6 @@ package com.casic.missiles.modular.alarm.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; @@ -26,27 +27,27 @@ 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(String alarmType, String devType) { + 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/dao/AlarmJobMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java index 958a1ad..57d3173 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java @@ -48,7 +48,7 @@ Map countMyJob(@Param("userId") long userId, @Param("deptId") long deptId, @Param("spanDays") int spanDays); - List> jobInfo(@Param("id") int id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); + List> jobInfo(@Param("id") Long id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); // boolean getJob(@Param("id") int id,@Param("personId") long personId); boolean getJob(@Param("id") int id, @Param("personId") long personId, @Param("getTime") Date getTime, @Param("shouldHandleTime") Date shouldHandleTime); @@ -71,7 +71,7 @@ boolean overJobAlarmRecrds(@Param("id") int id); - boolean handleJob(@Param("id") int id, @Param("personId") long personId); + boolean handleJob(@Param("id") Long id, @Param("personId") long personId); List> countByDataScope(@Param("dataScope") DataScope dataScope, @Param("alarmType") String alarmType, @Param("jobStatus") String jobStatus, @Param("beginTime") String beginTime, @Param("endTime") String endTime); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java index 3874bfa..4b34b3c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -11,7 +11,7 @@ /** *

- * Mapper 接口 + * Mapper 接口 *

* * @author casic123 @@ -19,9 +19,12 @@ */ public interface AlarmRecordsMapper extends BaseMapper { - List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent,@Param("dataScope") DataScope dataScope); + List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("dataScope") DataScope dataScope); List alarmListNoPage(@Param("scope") DataScope dataScope, @Param("keywords") String keywords, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("beginTime") String beginTime, @Param("endTime") String endTime); - boolean cancelAlarm(@Param("id") int id,@Param("jobStatus")String jobStatus,@Param("handleMessage") String handleMessage,@Param("personId") long personId); + boolean cancelAlarm(@Param("id") Long id); + + boolean closeJob(@Param("id") Long id, @Param("jobStatus") String jobStatus, @Param("handleMessage") String handleMessage, @Param("personId") long personId); + } 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 9d7506f..c12b51d 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 @@ -22,7 +22,7 @@ List> getTypeViaCode(@Param("code") String code); List> getAlarmContent(@Param("alarmType") String alarmType,@Param("deviceType") String devType); List> testPage(@Param("page") Page> page); - String getDeviceTypeNameById(@Param("deviceTypeId") String deviceTypeId); + String getDeviceTypeNameById(@Param("deviceTypeId") Long deviceTypeId); String getDeptNameById(@Param("deptid") long deptid); String getAlarmTypeNameByCodeNum(@Param("alarmType") String alarmType); String getAlarmContentName(@Param("id") int id); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml index b279d9a..401a28a 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml @@ -24,40 +24,132 @@ + + DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + ifnull(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + + + + + + AND date_part('day',now()-aj.create_time) ${paramDay} + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + - ID AS id, JOBCODE AS jobcode, JOG_TYPE AS jogType, - WELL_CODE AS wellCode, DEVCODE AS devcode, DATE_FORMAT(CREATE_TIME,'%Y-%m-%d %H:%i:%s') AS createTime, - JOB_STATUS AS jobStatus, GET_JOB_PERSON AS getJobPerson, - DATE_FORMAT(GET_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS getJobTime, FIRST_STATE AS firstState, - FIRST_STATE_PHOTOS AS firstStatePhotos, CONFIRM_JOB_PERSON AS confirmJobPerson, - DATE_FORMAT(CONFRIM_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS confrimJobTime, HANDLE_JOB_Person AS handleJobPerson, - DATE_FORMAT(HANDLE_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS handleJobTime, HANDLE_MESSAGE AS handleMessage, - HANDLE_PHOTOS AS handlePhotos, FLOW AS flow - - - - - DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i:%S') - - - - to_date(${paramTime},'yyyy-MM-dd HH24:mi:ss') - - - - to_char(${paramTime},'yyyy-mm-dd hh24:mi:ss') + ID AS id, JOBCODE AS "jobcode", JOG_TYPE AS "jogType", + WELL_CODE AS "wellCode", DEVCODE AS "devcode", + + + + AS "createTime", + JOB_STATUS AS "jobStatus", GET_JOB_PERSON AS "getJobPerson", + + + + AS "getJobTime", FIRST_STATE AS "firstState", + FIRST_STATE_PHOTOS AS "firstStatePhotos", CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confrimJobTime", HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "handleJobTime", HANDLE_MESSAGE AS "handleMessage", + HANDLE_PHOTOS AS "handlePhotos", FLOW AS flow + - SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS deptId + SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS "deptId" FROM alarm_job aj LEFT JOIN alarm_records ar ON ar.JOB_ID = aj.ID LEFT JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE @@ -150,11 +273,19 @@
- AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -179,11 +310,19 @@
- AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -207,47 +346,181 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + - - ar.id as alarmId, - aj.DEVCODE as devcode, - aj.WELL_CODE as wellCode, - ar.ALARM_TYPE as alarmType, - ar.ALARM_CONTENT as alarmContentName, - ar.STATUS as alarmStatus, - aj.ID as id, - aj.ID as jobId, - aj.JOG_TYPE as jobType, - aj.JOBCODE as jobCode, - aj.JOB_STATUS as jobStatus, - aj.JOB_BELONG_TO as jobBelongTo, + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, ar.ALARM_VALUE AS alarmValue, ar.ALARM_LEVEL AS alarmLevel, ar.ALARM_MSG AS alarmMessage, - TO_CHAR(aj.CREATE_TIME,'yyyy-MM-dd HH24:mi:ss') as createTime, - TO_CHAR(ar.ALARM_TIME,'yyyy-MM-dd HH24:mi:ss') as alarmTime, - aj.GET_JOB_PERSON as getJobPerson, - TO_CHAR(aj.SHOULD_GET_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldGetTime, - TO_CHAR(aj.GET_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as getJobTime, - aj.CONFIRM_JOB_PERSON as confirmJobPerson, - TO_CHAR(aj.CONFRIM_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as confirmJobTime, - aj.HANDLE_JOB_Person as handleJobPerson, - TO_CHAR(aj.SHOULD_HANDLE_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldHandleTime, - TO_CHAR(aj.HANDLE_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as handleJobTime, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, aj.JOB_FLAG_1 AS jobFlag, bwi.RESPONSIBLE_DEPT AS deptid + + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, + aj.JOB_FLAG_1 AS jobFlag, + bwi.RESPONSIBLE_DEPT AS deptid + + + + + ar.id AS "alarmId", + aj.DEVCODE AS devcode, + aj.WELL_CODE AS "wellCode", + ar.ALARM_TYPE AS "alarmType", + ar.ALARM_CONTENT AS "alarmContentName", + ar.STATUS AS "alarmStatus", + aj.ID AS id, + aj.ID AS "jobId", + aj.JOG_TYPE AS "jobType", + aj.JOBCODE AS "jobCode", + aj.JOB_STATUS AS "jobStatus", + aj.JOB_BELONG_TO AS "jobBelongTo", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + + + + AS "createTime", + + + + AS "alarmTime", + aj.GET_JOB_PERSON AS "getJobPerson", + + + + AS "shouldGetTime", + + + + AS "getJobTime", + aj.CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confirmJobTime", + aj.HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "shouldHandleTime", + + + + AS "handleJobTime", + aj.JOB_FLAG_1 AS "jobFlag", + bwi.RESPONSIBLE_DEPT AS deptid + + + @@ -298,7 +573,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -308,11 +584,19 @@ - AND aj.CREATE_TIME = ]]> #{beginTime} - AND aj.CREATE_TIME #{endTime} + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -350,14 +634,9 @@ WHERE ar.JOB_ID > 0 AND bwi.VALID = '1' AND aj.JOB_STATUS = '0' AND aj.JOB_FLAG_DELAY = '1' - - - - - - - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -367,11 +646,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -389,7 +676,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.responsible_dept = #{deptId} - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -399,11 +687,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -419,13 +715,20 @@ AND ( aj.JOB_STATUS = '1' OR aj.JOB_STATUS = '2') AND aj.JOB_FLAG_DELAY = '2' - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -449,18 +752,19 @@ AND bwi.responsible_dept = #{deptId} AND aj.CREATE_TIME = ]]> - - + + AND aj.CREATE_TIME - - + + - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -492,7 +796,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{jobListParam.keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{jobListParam.alarmLevel} @@ -504,34 +809,64 @@ AND aj.JOB_STATUS = #{jobListParam.jobStatus} - AND aj.CREATE_TIME = ]]> #{jobListParam.beginTime} + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME #{jobListParam.endTime} + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{jobListParam.getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{jobListParam.getJobEndTime} + AND aj.GET_JOB_TIME + + + - AND aj.SHOULD_GET_TIME = ]]> #{jobListParam.shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{jobListParam.shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{jobListParam.handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{jobListParam.handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{jobListParam.shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{jobListParam.shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -549,7 +884,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{alarmLevel} @@ -558,36 +894,63 @@ AND ar.ALARM_CONTENT = #{alarmContent} - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{getJobEndTime} - - + + + - AND aj.SHOULD_GET_TIME = ]]> #{shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -618,50 +981,73 @@ - + @@ -761,7 +1147,7 @@ - SELECT FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + SELECT + + FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + + + DATE_FORMAT(alarmTimeDate,'%Y-%m-%d %H:%i') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml index d9cfd1e..d686954 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -4,18 +4,18 @@ - - - - - - - - + + + + + + + + - - - + + + @@ -23,11 +23,34 @@ ID AS id, DEVICE_ID AS deviceId, DEVCODE AS devcode, WELL_CODE AS wellCode, ALARM_TYPE AS alarmType, ALARM_CONTENT AS alarmContent, ALARM_VALUE AS alarmValue, ALARM_TIME AS alarmTime, STATUS AS status, JOB_ID AS jobId - + + ${paramStr} + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + + ar.ID as id, ar.WELL_CODE as wellCode, ar.ALARM_CONTENT as alarmContentName, - DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i:%s') as alarmTime, + DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i') + AS alarmTime, ar.DEVICE_ID as deviceId, ar.STATUS as status, ar.alarm_type as alarmType, @@ -40,6 +63,44 @@ bwi.DEPTID AS deptid + + ar.ID as id, + ar.WELL_CODE as wellCode, + ar.ALARM_CONTENT as alarmContentName, + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS alarmTime, + ar.DEVICE_ID as deviceId, + ar.STATUS as status, + ar.alarm_type as alarmType, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + ar.DEVCODE as devcode, + aj.JOB_STATUS as jobStatus, + ar.JOB_ID as jobId, + bwi.DEPTID AS deptid + + + + + ar.ID as id, + ar.WELL_CODE as "wellCode", + ar.ALARM_CONTENT as "alarmContentName", + ar.DEVICE_ID as "deviceId", + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS "alarmTime", + ar.STATUS as "status", + ar.alarm_type as "alarmType", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + ar.DEVCODE as devcode, + aj.JOB_STATUS as "jobStatus", + ar.JOB_ID as "jobId", + bwi.DEPTID AS deptid + + + - - + + - UPDATE alarm_job aj, alarm_records ar + UPDATE alarm_records + SET status = 2 + WHERE ID = #{id} + + + + update alarm_job - aj.job_status = #{jobStatus} , - aj.handle_job_person = #{personId}, - aj.job_belong_to = #{personId}, - aj.handle_job_time = now(), - aj.handle_message = #{handleMessage}, - ar.status = 2 + job_status = #{jobStatus} , + handle_job_person = #{personId}, + job_belong_to = #{personId}, + handle_job_time = now(), + handle_message = #{handleMessage}, - WHERE aj.ID = ar.job_id - AND aj.ID = #{id} + WHERE ID=( + SELECT JOB_ID + FROM alarm_records + WHERE ID=#{id} + ) diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java new file mode 100644 index 0000000..c9cf49a --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class RecordExcelDto { + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("权属单位") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警等级") + private String alarmLevel; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("告警时间") + private String logTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java index 5f47018..d49386c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java @@ -37,7 +37,7 @@ List> jobListSearchApp(Page> page, JobListParam jobListParam, Long deptId, Long userId, Long leaderId); - List> jobInfo(int id, DataScope dataScope, Long personId); + List> jobInfo(Long id, DataScope dataScope, Long personId); boolean getJob(int id, long personId); @@ -51,7 +51,7 @@ boolean overAlarm(int id); - boolean handleJob(int id, long personId); + boolean handleJob(Long id, long personId); Map countByJobStatus(long deptId, int spanDays); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java index 267fff5..8a5b270 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java @@ -22,5 +22,5 @@ List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent,String beginTime, String endTime); - boolean cancelAlarm(int id,String jobStatus, String handleMessage, long personId); + boolean cancelAlarm(Long id,String jobStatus, String handleMessage, long personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java index 5ef681b..c52630c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java @@ -144,7 +144,7 @@ } @Override - public List> jobInfo(int id, DataScope dataScope, Long personId) { + public List> jobInfo(Long id, DataScope dataScope, Long personId) { List> job = this.baseMapper.jobInfo(id, dataScope, personId); return job; } @@ -232,7 +232,7 @@ } @Override - public boolean handleJob(int id, long personId) { + public boolean handleJob(Long id, long personId) { return this.baseMapper.handleJob(id, personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index 2f9b8d1..d2cc7f1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -16,7 +16,7 @@ /** *

- * 服务实现类 + * 服务实现类 *

* * @author casic123 @@ -27,12 +27,12 @@ @Override - public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { + public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmList(page,keywords,beginTime,endTime,status,alarmType,sContent,dataScope); + return this.baseMapper.alarmList(page, keywords, beginTime, endTime, status, alarmType, sContent, dataScope); } /** @@ -41,15 +41,15 @@ @Override public List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent, String beginTime, String endTime) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmListNoPage(dataScope,keywords,alarmType,sContent,beginTime,endTime); + return this.baseMapper.alarmListNoPage(dataScope, keywords, alarmType, sContent, beginTime, endTime); } @Override - public boolean cancelAlarm(int id, String jobStatus, String handleMessage, long personId) { - return this.baseMapper.cancelAlarm(id,jobStatus,handleMessage,personId); + public boolean cancelAlarm(Long id, String jobStatus, String handleMessage, long personId) { + return this.baseMapper.cancelAlarm(id) && this.baseMapper.closeJob(id, jobStatus, handleMessage, personId); } } 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 d3bd513..5ea6d1c 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,5 +1,6 @@ package com.casic.missiles.modular.alarm.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; @@ -26,27 +27,27 @@ 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(String alarmType, String devType) { + 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/dao/AlarmJobMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java index 958a1ad..57d3173 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java @@ -48,7 +48,7 @@ Map countMyJob(@Param("userId") long userId, @Param("deptId") long deptId, @Param("spanDays") int spanDays); - List> jobInfo(@Param("id") int id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); + List> jobInfo(@Param("id") Long id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); // boolean getJob(@Param("id") int id,@Param("personId") long personId); boolean getJob(@Param("id") int id, @Param("personId") long personId, @Param("getTime") Date getTime, @Param("shouldHandleTime") Date shouldHandleTime); @@ -71,7 +71,7 @@ boolean overJobAlarmRecrds(@Param("id") int id); - boolean handleJob(@Param("id") int id, @Param("personId") long personId); + boolean handleJob(@Param("id") Long id, @Param("personId") long personId); List> countByDataScope(@Param("dataScope") DataScope dataScope, @Param("alarmType") String alarmType, @Param("jobStatus") String jobStatus, @Param("beginTime") String beginTime, @Param("endTime") String endTime); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java index 3874bfa..4b34b3c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -11,7 +11,7 @@ /** *

- * Mapper 接口 + * Mapper 接口 *

* * @author casic123 @@ -19,9 +19,12 @@ */ public interface AlarmRecordsMapper extends BaseMapper { - List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent,@Param("dataScope") DataScope dataScope); + List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("dataScope") DataScope dataScope); List alarmListNoPage(@Param("scope") DataScope dataScope, @Param("keywords") String keywords, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("beginTime") String beginTime, @Param("endTime") String endTime); - boolean cancelAlarm(@Param("id") int id,@Param("jobStatus")String jobStatus,@Param("handleMessage") String handleMessage,@Param("personId") long personId); + boolean cancelAlarm(@Param("id") Long id); + + boolean closeJob(@Param("id") Long id, @Param("jobStatus") String jobStatus, @Param("handleMessage") String handleMessage, @Param("personId") long personId); + } 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 9d7506f..c12b51d 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 @@ -22,7 +22,7 @@ List> getTypeViaCode(@Param("code") String code); List> getAlarmContent(@Param("alarmType") String alarmType,@Param("deviceType") String devType); List> testPage(@Param("page") Page> page); - String getDeviceTypeNameById(@Param("deviceTypeId") String deviceTypeId); + String getDeviceTypeNameById(@Param("deviceTypeId") Long deviceTypeId); String getDeptNameById(@Param("deptid") long deptid); String getAlarmTypeNameByCodeNum(@Param("alarmType") String alarmType); String getAlarmContentName(@Param("id") int id); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml index b279d9a..401a28a 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml @@ -24,40 +24,132 @@ + + DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + ifnull(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + + + + + + AND date_part('day',now()-aj.create_time) ${paramDay} + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + - ID AS id, JOBCODE AS jobcode, JOG_TYPE AS jogType, - WELL_CODE AS wellCode, DEVCODE AS devcode, DATE_FORMAT(CREATE_TIME,'%Y-%m-%d %H:%i:%s') AS createTime, - JOB_STATUS AS jobStatus, GET_JOB_PERSON AS getJobPerson, - DATE_FORMAT(GET_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS getJobTime, FIRST_STATE AS firstState, - FIRST_STATE_PHOTOS AS firstStatePhotos, CONFIRM_JOB_PERSON AS confirmJobPerson, - DATE_FORMAT(CONFRIM_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS confrimJobTime, HANDLE_JOB_Person AS handleJobPerson, - DATE_FORMAT(HANDLE_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS handleJobTime, HANDLE_MESSAGE AS handleMessage, - HANDLE_PHOTOS AS handlePhotos, FLOW AS flow - - - - - DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i:%S') - - - - to_date(${paramTime},'yyyy-MM-dd HH24:mi:ss') - - - - to_char(${paramTime},'yyyy-mm-dd hh24:mi:ss') + ID AS id, JOBCODE AS "jobcode", JOG_TYPE AS "jogType", + WELL_CODE AS "wellCode", DEVCODE AS "devcode", + + + + AS "createTime", + JOB_STATUS AS "jobStatus", GET_JOB_PERSON AS "getJobPerson", + + + + AS "getJobTime", FIRST_STATE AS "firstState", + FIRST_STATE_PHOTOS AS "firstStatePhotos", CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confrimJobTime", HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "handleJobTime", HANDLE_MESSAGE AS "handleMessage", + HANDLE_PHOTOS AS "handlePhotos", FLOW AS flow + - SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS deptId + SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS "deptId" FROM alarm_job aj LEFT JOIN alarm_records ar ON ar.JOB_ID = aj.ID LEFT JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE @@ -150,11 +273,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -179,11 +310,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -207,47 +346,181 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + - - ar.id as alarmId, - aj.DEVCODE as devcode, - aj.WELL_CODE as wellCode, - ar.ALARM_TYPE as alarmType, - ar.ALARM_CONTENT as alarmContentName, - ar.STATUS as alarmStatus, - aj.ID as id, - aj.ID as jobId, - aj.JOG_TYPE as jobType, - aj.JOBCODE as jobCode, - aj.JOB_STATUS as jobStatus, - aj.JOB_BELONG_TO as jobBelongTo, + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, ar.ALARM_VALUE AS alarmValue, ar.ALARM_LEVEL AS alarmLevel, ar.ALARM_MSG AS alarmMessage, - TO_CHAR(aj.CREATE_TIME,'yyyy-MM-dd HH24:mi:ss') as createTime, - TO_CHAR(ar.ALARM_TIME,'yyyy-MM-dd HH24:mi:ss') as alarmTime, - aj.GET_JOB_PERSON as getJobPerson, - TO_CHAR(aj.SHOULD_GET_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldGetTime, - TO_CHAR(aj.GET_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as getJobTime, - aj.CONFIRM_JOB_PERSON as confirmJobPerson, - TO_CHAR(aj.CONFRIM_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as confirmJobTime, - aj.HANDLE_JOB_Person as handleJobPerson, - TO_CHAR(aj.SHOULD_HANDLE_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldHandleTime, - TO_CHAR(aj.HANDLE_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as handleJobTime, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, aj.JOB_FLAG_1 AS jobFlag, bwi.RESPONSIBLE_DEPT AS deptid + + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, + aj.JOB_FLAG_1 AS jobFlag, + bwi.RESPONSIBLE_DEPT AS deptid + + + + + ar.id AS "alarmId", + aj.DEVCODE AS devcode, + aj.WELL_CODE AS "wellCode", + ar.ALARM_TYPE AS "alarmType", + ar.ALARM_CONTENT AS "alarmContentName", + ar.STATUS AS "alarmStatus", + aj.ID AS id, + aj.ID AS "jobId", + aj.JOG_TYPE AS "jobType", + aj.JOBCODE AS "jobCode", + aj.JOB_STATUS AS "jobStatus", + aj.JOB_BELONG_TO AS "jobBelongTo", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + + + + AS "createTime", + + + + AS "alarmTime", + aj.GET_JOB_PERSON AS "getJobPerson", + + + + AS "shouldGetTime", + + + + AS "getJobTime", + aj.CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confirmJobTime", + aj.HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "shouldHandleTime", + + + + AS "handleJobTime", + aj.JOB_FLAG_1 AS "jobFlag", + bwi.RESPONSIBLE_DEPT AS deptid + + + @@ -298,7 +573,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -308,11 +584,19 @@ - AND aj.CREATE_TIME = ]]> #{beginTime} - AND aj.CREATE_TIME #{endTime} + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -350,14 +634,9 @@ WHERE ar.JOB_ID > 0 AND bwi.VALID = '1' AND aj.JOB_STATUS = '0' AND aj.JOB_FLAG_DELAY = '1' - - - - - - - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -367,11 +646,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -389,7 +676,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.responsible_dept = #{deptId} - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -399,11 +687,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -419,13 +715,20 @@ AND ( aj.JOB_STATUS = '1' OR aj.JOB_STATUS = '2') AND aj.JOB_FLAG_DELAY = '2' - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -449,18 +752,19 @@ AND bwi.responsible_dept = #{deptId} AND aj.CREATE_TIME = ]]> - - + + AND aj.CREATE_TIME - - + + - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -492,7 +796,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{jobListParam.keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{jobListParam.alarmLevel} @@ -504,34 +809,64 @@ AND aj.JOB_STATUS = #{jobListParam.jobStatus} - AND aj.CREATE_TIME = ]]> #{jobListParam.beginTime} + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME #{jobListParam.endTime} + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{jobListParam.getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{jobListParam.getJobEndTime} + AND aj.GET_JOB_TIME + + + - AND aj.SHOULD_GET_TIME = ]]> #{jobListParam.shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{jobListParam.shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{jobListParam.handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{jobListParam.handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{jobListParam.shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{jobListParam.shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -549,7 +884,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{alarmLevel} @@ -558,36 +894,63 @@ AND ar.ALARM_CONTENT = #{alarmContent} - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{getJobEndTime} - - + + + - AND aj.SHOULD_GET_TIME = ]]> #{shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -618,50 +981,73 @@ - + @@ -761,7 +1147,7 @@ - SELECT FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + SELECT + + FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + + + DATE_FORMAT(alarmTimeDate,'%Y-%m-%d %H:%i') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml index d9cfd1e..d686954 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -4,18 +4,18 @@ - - - - - - - - + + + + + + + + - - - + + + @@ -23,11 +23,34 @@ ID AS id, DEVICE_ID AS deviceId, DEVCODE AS devcode, WELL_CODE AS wellCode, ALARM_TYPE AS alarmType, ALARM_CONTENT AS alarmContent, ALARM_VALUE AS alarmValue, ALARM_TIME AS alarmTime, STATUS AS status, JOB_ID AS jobId - + + ${paramStr} + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + + ar.ID as id, ar.WELL_CODE as wellCode, ar.ALARM_CONTENT as alarmContentName, - DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i:%s') as alarmTime, + DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i') + AS alarmTime, ar.DEVICE_ID as deviceId, ar.STATUS as status, ar.alarm_type as alarmType, @@ -40,6 +63,44 @@ bwi.DEPTID AS deptid + + ar.ID as id, + ar.WELL_CODE as wellCode, + ar.ALARM_CONTENT as alarmContentName, + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS alarmTime, + ar.DEVICE_ID as deviceId, + ar.STATUS as status, + ar.alarm_type as alarmType, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + ar.DEVCODE as devcode, + aj.JOB_STATUS as jobStatus, + ar.JOB_ID as jobId, + bwi.DEPTID AS deptid + + + + + ar.ID as id, + ar.WELL_CODE as "wellCode", + ar.ALARM_CONTENT as "alarmContentName", + ar.DEVICE_ID as "deviceId", + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS "alarmTime", + ar.STATUS as "status", + ar.alarm_type as "alarmType", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + ar.DEVCODE as devcode, + aj.JOB_STATUS as "jobStatus", + ar.JOB_ID as "jobId", + bwi.DEPTID AS deptid + + + - - + + - UPDATE alarm_job aj, alarm_records ar + UPDATE alarm_records + SET status = 2 + WHERE ID = #{id} + + + + update alarm_job - aj.job_status = #{jobStatus} , - aj.handle_job_person = #{personId}, - aj.job_belong_to = #{personId}, - aj.handle_job_time = now(), - aj.handle_message = #{handleMessage}, - ar.status = 2 + job_status = #{jobStatus} , + handle_job_person = #{personId}, + job_belong_to = #{personId}, + handle_job_time = now(), + handle_message = #{handleMessage}, - WHERE aj.ID = ar.job_id - AND aj.ID = #{id} + WHERE ID=( + SELECT JOB_ID + FROM alarm_records + WHERE ID=#{id} + ) diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml index 4743d51..bbec5ff 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -4,17 +4,28 @@ - - - - - - - - - + + + + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + ID AS id, DEVCODE AS devcode, HIGHVALUE AS highvalue, LOWVALUE AS lowvalue, OVERTIME AS overtime, SALTATION AS saltation, SENSORCODE AS sensorcode, GRADE AS grade, TS AS ts @@ -34,21 +45,37 @@ - + SELECT ar.ID as id,ar.HIGHVALUE as "highValue",ar.LOWVALUE as "lowValue", + bd.ID AS "devId",bd.DEVCODE as "devcode", + bd.DEVICE_TYPE as "deviceType",bwi.ID AS "wellId",bwi.WELL_NAME as "wellName", + COALESCE (ar.OPERATOR,'') AS user, + bwi.WELL_CODE as "wellCode",bwi.DEEP as deep,bwi.DEPTID as deptid, + COALESCE (,'') AS ts + FROM alarm_rule ar + LEFT JOIN bus_device bd ON ar.DEVCODE = bd.DEVCODE + LEFT JOIN bus_device_well bdw ON bd.ID = bdw.DEVICE_ID + LEFT JOIN bus_well_info bwi ON bdw.WELL_ID = bwi.ID + WHERE bd.VALID = '1' AND bdw.VALID ='1' - AND (ar.DEVCODE LIKE concat(CONCAT('%',#{keywords}),'%') - OR bwi.WELL_CODE LIKE concat(CONCAT('%',#{keywords}),'%') ) + AND (ar.DEVCODE LIKE + + OR bwi.WELL_CODE LIKE + ) AND bd.DEVICE_TYPE= #{deviceType} @@ -71,13 +98,13 @@ WHERE ID=#{id} diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java new file mode 100644 index 0000000..c9cf49a --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class RecordExcelDto { + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("权属单位") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警等级") + private String alarmLevel; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("告警时间") + private String logTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java index 5f47018..d49386c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java @@ -37,7 +37,7 @@ List> jobListSearchApp(Page> page, JobListParam jobListParam, Long deptId, Long userId, Long leaderId); - List> jobInfo(int id, DataScope dataScope, Long personId); + List> jobInfo(Long id, DataScope dataScope, Long personId); boolean getJob(int id, long personId); @@ -51,7 +51,7 @@ boolean overAlarm(int id); - boolean handleJob(int id, long personId); + boolean handleJob(Long id, long personId); Map countByJobStatus(long deptId, int spanDays); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java index 267fff5..8a5b270 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java @@ -22,5 +22,5 @@ List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent,String beginTime, String endTime); - boolean cancelAlarm(int id,String jobStatus, String handleMessage, long personId); + boolean cancelAlarm(Long id,String jobStatus, String handleMessage, long personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java index 5ef681b..c52630c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java @@ -144,7 +144,7 @@ } @Override - public List> jobInfo(int id, DataScope dataScope, Long personId) { + public List> jobInfo(Long id, DataScope dataScope, Long personId) { List> job = this.baseMapper.jobInfo(id, dataScope, personId); return job; } @@ -232,7 +232,7 @@ } @Override - public boolean handleJob(int id, long personId) { + public boolean handleJob(Long id, long personId) { return this.baseMapper.handleJob(id, personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index 2f9b8d1..d2cc7f1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -16,7 +16,7 @@ /** *

- * 服务实现类 + * 服务实现类 *

* * @author casic123 @@ -27,12 +27,12 @@ @Override - public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { + public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmList(page,keywords,beginTime,endTime,status,alarmType,sContent,dataScope); + return this.baseMapper.alarmList(page, keywords, beginTime, endTime, status, alarmType, sContent, dataScope); } /** @@ -41,15 +41,15 @@ @Override public List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent, String beginTime, String endTime) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmListNoPage(dataScope,keywords,alarmType,sContent,beginTime,endTime); + return this.baseMapper.alarmListNoPage(dataScope, keywords, alarmType, sContent, beginTime, endTime); } @Override - public boolean cancelAlarm(int id, String jobStatus, String handleMessage, long personId) { - return this.baseMapper.cancelAlarm(id,jobStatus,handleMessage,personId); + public boolean cancelAlarm(Long id, String jobStatus, String handleMessage, long personId) { + return this.baseMapper.cancelAlarm(id) && this.baseMapper.closeJob(id, jobStatus, handleMessage, personId); } } 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 d3bd513..5ea6d1c 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,5 +1,6 @@ package com.casic.missiles.modular.alarm.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; @@ -26,27 +27,27 @@ 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(String alarmType, String devType) { + 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/dao/AlarmJobMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java index 958a1ad..57d3173 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java @@ -48,7 +48,7 @@ Map countMyJob(@Param("userId") long userId, @Param("deptId") long deptId, @Param("spanDays") int spanDays); - List> jobInfo(@Param("id") int id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); + List> jobInfo(@Param("id") Long id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); // boolean getJob(@Param("id") int id,@Param("personId") long personId); boolean getJob(@Param("id") int id, @Param("personId") long personId, @Param("getTime") Date getTime, @Param("shouldHandleTime") Date shouldHandleTime); @@ -71,7 +71,7 @@ boolean overJobAlarmRecrds(@Param("id") int id); - boolean handleJob(@Param("id") int id, @Param("personId") long personId); + boolean handleJob(@Param("id") Long id, @Param("personId") long personId); List> countByDataScope(@Param("dataScope") DataScope dataScope, @Param("alarmType") String alarmType, @Param("jobStatus") String jobStatus, @Param("beginTime") String beginTime, @Param("endTime") String endTime); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java index 3874bfa..4b34b3c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -11,7 +11,7 @@ /** *

- * Mapper 接口 + * Mapper 接口 *

* * @author casic123 @@ -19,9 +19,12 @@ */ public interface AlarmRecordsMapper extends BaseMapper { - List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent,@Param("dataScope") DataScope dataScope); + List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("dataScope") DataScope dataScope); List alarmListNoPage(@Param("scope") DataScope dataScope, @Param("keywords") String keywords, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("beginTime") String beginTime, @Param("endTime") String endTime); - boolean cancelAlarm(@Param("id") int id,@Param("jobStatus")String jobStatus,@Param("handleMessage") String handleMessage,@Param("personId") long personId); + boolean cancelAlarm(@Param("id") Long id); + + boolean closeJob(@Param("id") Long id, @Param("jobStatus") String jobStatus, @Param("handleMessage") String handleMessage, @Param("personId") long personId); + } 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 9d7506f..c12b51d 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 @@ -22,7 +22,7 @@ List> getTypeViaCode(@Param("code") String code); List> getAlarmContent(@Param("alarmType") String alarmType,@Param("deviceType") String devType); List> testPage(@Param("page") Page> page); - String getDeviceTypeNameById(@Param("deviceTypeId") String deviceTypeId); + String getDeviceTypeNameById(@Param("deviceTypeId") Long deviceTypeId); String getDeptNameById(@Param("deptid") long deptid); String getAlarmTypeNameByCodeNum(@Param("alarmType") String alarmType); String getAlarmContentName(@Param("id") int id); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml index b279d9a..401a28a 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml @@ -24,40 +24,132 @@ + + DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + ifnull(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + + + + + + AND date_part('day',now()-aj.create_time) ${paramDay} + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + - ID AS id, JOBCODE AS jobcode, JOG_TYPE AS jogType, - WELL_CODE AS wellCode, DEVCODE AS devcode, DATE_FORMAT(CREATE_TIME,'%Y-%m-%d %H:%i:%s') AS createTime, - JOB_STATUS AS jobStatus, GET_JOB_PERSON AS getJobPerson, - DATE_FORMAT(GET_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS getJobTime, FIRST_STATE AS firstState, - FIRST_STATE_PHOTOS AS firstStatePhotos, CONFIRM_JOB_PERSON AS confirmJobPerson, - DATE_FORMAT(CONFRIM_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS confrimJobTime, HANDLE_JOB_Person AS handleJobPerson, - DATE_FORMAT(HANDLE_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS handleJobTime, HANDLE_MESSAGE AS handleMessage, - HANDLE_PHOTOS AS handlePhotos, FLOW AS flow - - - - - DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i:%S') - - - - to_date(${paramTime},'yyyy-MM-dd HH24:mi:ss') - - - - to_char(${paramTime},'yyyy-mm-dd hh24:mi:ss') + ID AS id, JOBCODE AS "jobcode", JOG_TYPE AS "jogType", + WELL_CODE AS "wellCode", DEVCODE AS "devcode", + + + + AS "createTime", + JOB_STATUS AS "jobStatus", GET_JOB_PERSON AS "getJobPerson", + + + + AS "getJobTime", FIRST_STATE AS "firstState", + FIRST_STATE_PHOTOS AS "firstStatePhotos", CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confrimJobTime", HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "handleJobTime", HANDLE_MESSAGE AS "handleMessage", + HANDLE_PHOTOS AS "handlePhotos", FLOW AS flow + - SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS deptId + SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS "deptId" FROM alarm_job aj LEFT JOIN alarm_records ar ON ar.JOB_ID = aj.ID LEFT JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE @@ -150,11 +273,19 @@
- AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -179,11 +310,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -207,47 +346,181 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + - - ar.id as alarmId, - aj.DEVCODE as devcode, - aj.WELL_CODE as wellCode, - ar.ALARM_TYPE as alarmType, - ar.ALARM_CONTENT as alarmContentName, - ar.STATUS as alarmStatus, - aj.ID as id, - aj.ID as jobId, - aj.JOG_TYPE as jobType, - aj.JOBCODE as jobCode, - aj.JOB_STATUS as jobStatus, - aj.JOB_BELONG_TO as jobBelongTo, + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, ar.ALARM_VALUE AS alarmValue, ar.ALARM_LEVEL AS alarmLevel, ar.ALARM_MSG AS alarmMessage, - TO_CHAR(aj.CREATE_TIME,'yyyy-MM-dd HH24:mi:ss') as createTime, - TO_CHAR(ar.ALARM_TIME,'yyyy-MM-dd HH24:mi:ss') as alarmTime, - aj.GET_JOB_PERSON as getJobPerson, - TO_CHAR(aj.SHOULD_GET_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldGetTime, - TO_CHAR(aj.GET_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as getJobTime, - aj.CONFIRM_JOB_PERSON as confirmJobPerson, - TO_CHAR(aj.CONFRIM_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as confirmJobTime, - aj.HANDLE_JOB_Person as handleJobPerson, - TO_CHAR(aj.SHOULD_HANDLE_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldHandleTime, - TO_CHAR(aj.HANDLE_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as handleJobTime, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, aj.JOB_FLAG_1 AS jobFlag, bwi.RESPONSIBLE_DEPT AS deptid + + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, + aj.JOB_FLAG_1 AS jobFlag, + bwi.RESPONSIBLE_DEPT AS deptid + + + + + ar.id AS "alarmId", + aj.DEVCODE AS devcode, + aj.WELL_CODE AS "wellCode", + ar.ALARM_TYPE AS "alarmType", + ar.ALARM_CONTENT AS "alarmContentName", + ar.STATUS AS "alarmStatus", + aj.ID AS id, + aj.ID AS "jobId", + aj.JOG_TYPE AS "jobType", + aj.JOBCODE AS "jobCode", + aj.JOB_STATUS AS "jobStatus", + aj.JOB_BELONG_TO AS "jobBelongTo", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + + + + AS "createTime", + + + + AS "alarmTime", + aj.GET_JOB_PERSON AS "getJobPerson", + + + + AS "shouldGetTime", + + + + AS "getJobTime", + aj.CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confirmJobTime", + aj.HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "shouldHandleTime", + + + + AS "handleJobTime", + aj.JOB_FLAG_1 AS "jobFlag", + bwi.RESPONSIBLE_DEPT AS deptid + + + @@ -298,7 +573,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -308,11 +584,19 @@ - AND aj.CREATE_TIME = ]]> #{beginTime} - AND aj.CREATE_TIME #{endTime} + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -350,14 +634,9 @@ WHERE ar.JOB_ID > 0 AND bwi.VALID = '1' AND aj.JOB_STATUS = '0' AND aj.JOB_FLAG_DELAY = '1' - - - - - - - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -367,11 +646,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -389,7 +676,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.responsible_dept = #{deptId} - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -399,11 +687,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -419,13 +715,20 @@ AND ( aj.JOB_STATUS = '1' OR aj.JOB_STATUS = '2') AND aj.JOB_FLAG_DELAY = '2' - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -449,18 +752,19 @@ AND bwi.responsible_dept = #{deptId} AND aj.CREATE_TIME = ]]> - - + + AND aj.CREATE_TIME - - + + - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -492,7 +796,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{jobListParam.keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{jobListParam.alarmLevel} @@ -504,34 +809,64 @@ AND aj.JOB_STATUS = #{jobListParam.jobStatus} - AND aj.CREATE_TIME = ]]> #{jobListParam.beginTime} + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME #{jobListParam.endTime} + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{jobListParam.getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{jobListParam.getJobEndTime} + AND aj.GET_JOB_TIME + + + - AND aj.SHOULD_GET_TIME = ]]> #{jobListParam.shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{jobListParam.shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{jobListParam.handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{jobListParam.handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{jobListParam.shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{jobListParam.shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -549,7 +884,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{alarmLevel} @@ -558,36 +894,63 @@ AND ar.ALARM_CONTENT = #{alarmContent} - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{getJobEndTime} - - + + + - AND aj.SHOULD_GET_TIME = ]]> #{shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -618,50 +981,73 @@ - + @@ -761,7 +1147,7 @@ - SELECT FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + SELECT + + FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + + + DATE_FORMAT(alarmTimeDate,'%Y-%m-%d %H:%i') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml index d9cfd1e..d686954 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -4,18 +4,18 @@ - - - - - - - - + + + + + + + + - - - + + + @@ -23,11 +23,34 @@ ID AS id, DEVICE_ID AS deviceId, DEVCODE AS devcode, WELL_CODE AS wellCode, ALARM_TYPE AS alarmType, ALARM_CONTENT AS alarmContent, ALARM_VALUE AS alarmValue, ALARM_TIME AS alarmTime, STATUS AS status, JOB_ID AS jobId - + + ${paramStr} + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + + ar.ID as id, ar.WELL_CODE as wellCode, ar.ALARM_CONTENT as alarmContentName, - DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i:%s') as alarmTime, + DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i') + AS alarmTime, ar.DEVICE_ID as deviceId, ar.STATUS as status, ar.alarm_type as alarmType, @@ -40,6 +63,44 @@ bwi.DEPTID AS deptid + + ar.ID as id, + ar.WELL_CODE as wellCode, + ar.ALARM_CONTENT as alarmContentName, + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS alarmTime, + ar.DEVICE_ID as deviceId, + ar.STATUS as status, + ar.alarm_type as alarmType, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + ar.DEVCODE as devcode, + aj.JOB_STATUS as jobStatus, + ar.JOB_ID as jobId, + bwi.DEPTID AS deptid + + + + + ar.ID as id, + ar.WELL_CODE as "wellCode", + ar.ALARM_CONTENT as "alarmContentName", + ar.DEVICE_ID as "deviceId", + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS "alarmTime", + ar.STATUS as "status", + ar.alarm_type as "alarmType", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + ar.DEVCODE as devcode, + aj.JOB_STATUS as "jobStatus", + ar.JOB_ID as "jobId", + bwi.DEPTID AS deptid + + + - - + + - UPDATE alarm_job aj, alarm_records ar + UPDATE alarm_records + SET status = 2 + WHERE ID = #{id} + + + + update alarm_job - aj.job_status = #{jobStatus} , - aj.handle_job_person = #{personId}, - aj.job_belong_to = #{personId}, - aj.handle_job_time = now(), - aj.handle_message = #{handleMessage}, - ar.status = 2 + job_status = #{jobStatus} , + handle_job_person = #{personId}, + job_belong_to = #{personId}, + handle_job_time = now(), + handle_message = #{handleMessage}, - WHERE aj.ID = ar.job_id - AND aj.ID = #{id} + WHERE ID=( + SELECT JOB_ID + FROM alarm_records + WHERE ID=#{id} + ) diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml index 4743d51..bbec5ff 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -4,17 +4,28 @@ - - - - - - - - - + + + + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + ID AS id, DEVCODE AS devcode, HIGHVALUE AS highvalue, LOWVALUE AS lowvalue, OVERTIME AS overtime, SALTATION AS saltation, SENSORCODE AS sensorcode, GRADE AS grade, TS AS ts @@ -34,21 +45,37 @@ - + SELECT ar.ID as id,ar.HIGHVALUE as "highValue",ar.LOWVALUE as "lowValue", + bd.ID AS "devId",bd.DEVCODE as "devcode", + bd.DEVICE_TYPE as "deviceType",bwi.ID AS "wellId",bwi.WELL_NAME as "wellName", + COALESCE (ar.OPERATOR,'') AS user, + bwi.WELL_CODE as "wellCode",bwi.DEEP as deep,bwi.DEPTID as deptid, + COALESCE (,'') AS ts + FROM alarm_rule ar + LEFT JOIN bus_device bd ON ar.DEVCODE = bd.DEVCODE + LEFT JOIN bus_device_well bdw ON bd.ID = bdw.DEVICE_ID + LEFT JOIN bus_well_info bwi ON bdw.WELL_ID = bwi.ID + WHERE bd.VALID = '1' AND bdw.VALID ='1' - AND (ar.DEVCODE LIKE concat(CONCAT('%',#{keywords}),'%') - OR bwi.WELL_CODE LIKE concat(CONCAT('%',#{keywords}),'%') ) + AND (ar.DEVCODE LIKE + + OR bwi.WELL_CODE LIKE + ) AND bd.DEVICE_TYPE= #{deviceType} @@ -71,13 +98,13 @@ WHERE ID=#{id} 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 2fa12b0..0a71551 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 @@ -2,11 +2,35 @@ + + + A.wellCount , + A.deptid, + SD.simplename as deptName, + SD.pid + + + A.wellCount , + A.deptid, + SD.simplename as deptName, + SD.pid + + + A.wellCount , + A.deptid, + SD.simplename as "deptName", + SD.pid + + + + + + SELECT - COUNT( 1 ) AS wellCount, - WELL_TYPE AS wellType + COUNT( 1 ) AS "wellCount", + WELL_TYPE AS "wellType" FROM bus_well_info WHERE VALID = '1' AND DEPTID IN (${deptIds}) GROUP BY WELL_TYPE - + - + - + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi:ss') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi:ss') + + + + ifnull(SUM(IF(BD.ONLINE_STATE=${numberStatus},1,0)),0) + + + + COALESCE(SUM(CASE WHEN BD.ONLINE_STATE=${numberStatus} THEN 1 ELSE 0 END)) + + + + COALESCE(SUM(IF(BD.ONLINE_STATE=${numberStatus},1,0)),0) + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(CASE WHEN job_status=${numberStatus} THEN 1 ELSE 0 END)) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + + + + + + + + + + + + - + SELECT - ifnull(SUM(IF(job_status='0',1,0)),0) AS beforeGet, - ifnull(SUM(IF(job_status='1',1,0)),0) AS beforeConfirm, - ifnull(SUM(IF(job_status='2',1,0)),0) AS inHandle, - ifnull(SUM(IF(job_status='3',1,0)),0) AS 'over', - ifnull(SUM(IF(job_status='4',1,0)),0) AS cancel + + + + AS "beforeGet", + + + + AS "beforeConfirm", + + + + AS "inHandle", + + + + AS "over", + + + + AS cancel FROM alarm_job aj INNER JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE INNER JOIN bus_device bd ON aj.DEVCODE = bd.DEVCODE @@ -104,11 +238,19 @@ AND bwi.DEPTID IN (${deptIds}) - AND aj.CREATE_TIME ]]> #{beginTime} - AND aj.CREATE_TIME DATE_ADD( #{endTime}, INTERVAL 1 DAY ) + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java new file mode 100644 index 0000000..c9cf49a --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class RecordExcelDto { + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("权属单位") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警等级") + private String alarmLevel; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("告警时间") + private String logTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java index 5f47018..d49386c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java @@ -37,7 +37,7 @@ List> jobListSearchApp(Page> page, JobListParam jobListParam, Long deptId, Long userId, Long leaderId); - List> jobInfo(int id, DataScope dataScope, Long personId); + List> jobInfo(Long id, DataScope dataScope, Long personId); boolean getJob(int id, long personId); @@ -51,7 +51,7 @@ boolean overAlarm(int id); - boolean handleJob(int id, long personId); + boolean handleJob(Long id, long personId); Map countByJobStatus(long deptId, int spanDays); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java index 267fff5..8a5b270 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java @@ -22,5 +22,5 @@ List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent,String beginTime, String endTime); - boolean cancelAlarm(int id,String jobStatus, String handleMessage, long personId); + boolean cancelAlarm(Long id,String jobStatus, String handleMessage, long personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java index 5ef681b..c52630c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java @@ -144,7 +144,7 @@ } @Override - public List> jobInfo(int id, DataScope dataScope, Long personId) { + public List> jobInfo(Long id, DataScope dataScope, Long personId) { List> job = this.baseMapper.jobInfo(id, dataScope, personId); return job; } @@ -232,7 +232,7 @@ } @Override - public boolean handleJob(int id, long personId) { + public boolean handleJob(Long id, long personId) { return this.baseMapper.handleJob(id, personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index 2f9b8d1..d2cc7f1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -16,7 +16,7 @@ /** *

- * 服务实现类 + * 服务实现类 *

* * @author casic123 @@ -27,12 +27,12 @@ @Override - public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { + public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmList(page,keywords,beginTime,endTime,status,alarmType,sContent,dataScope); + return this.baseMapper.alarmList(page, keywords, beginTime, endTime, status, alarmType, sContent, dataScope); } /** @@ -41,15 +41,15 @@ @Override public List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent, String beginTime, String endTime) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmListNoPage(dataScope,keywords,alarmType,sContent,beginTime,endTime); + return this.baseMapper.alarmListNoPage(dataScope, keywords, alarmType, sContent, beginTime, endTime); } @Override - public boolean cancelAlarm(int id, String jobStatus, String handleMessage, long personId) { - return this.baseMapper.cancelAlarm(id,jobStatus,handleMessage,personId); + public boolean cancelAlarm(Long id, String jobStatus, String handleMessage, long personId) { + return this.baseMapper.cancelAlarm(id) && this.baseMapper.closeJob(id, jobStatus, handleMessage, personId); } } 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 d3bd513..5ea6d1c 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,5 +1,6 @@ package com.casic.missiles.modular.alarm.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; @@ -26,27 +27,27 @@ 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(String alarmType, String devType) { + 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/dao/AlarmJobMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java index 958a1ad..57d3173 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java @@ -48,7 +48,7 @@ Map countMyJob(@Param("userId") long userId, @Param("deptId") long deptId, @Param("spanDays") int spanDays); - List> jobInfo(@Param("id") int id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); + List> jobInfo(@Param("id") Long id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); // boolean getJob(@Param("id") int id,@Param("personId") long personId); boolean getJob(@Param("id") int id, @Param("personId") long personId, @Param("getTime") Date getTime, @Param("shouldHandleTime") Date shouldHandleTime); @@ -71,7 +71,7 @@ boolean overJobAlarmRecrds(@Param("id") int id); - boolean handleJob(@Param("id") int id, @Param("personId") long personId); + boolean handleJob(@Param("id") Long id, @Param("personId") long personId); List> countByDataScope(@Param("dataScope") DataScope dataScope, @Param("alarmType") String alarmType, @Param("jobStatus") String jobStatus, @Param("beginTime") String beginTime, @Param("endTime") String endTime); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java index 3874bfa..4b34b3c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -11,7 +11,7 @@ /** *

- * Mapper 接口 + * Mapper 接口 *

* * @author casic123 @@ -19,9 +19,12 @@ */ public interface AlarmRecordsMapper extends BaseMapper { - List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent,@Param("dataScope") DataScope dataScope); + List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("dataScope") DataScope dataScope); List alarmListNoPage(@Param("scope") DataScope dataScope, @Param("keywords") String keywords, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("beginTime") String beginTime, @Param("endTime") String endTime); - boolean cancelAlarm(@Param("id") int id,@Param("jobStatus")String jobStatus,@Param("handleMessage") String handleMessage,@Param("personId") long personId); + boolean cancelAlarm(@Param("id") Long id); + + boolean closeJob(@Param("id") Long id, @Param("jobStatus") String jobStatus, @Param("handleMessage") String handleMessage, @Param("personId") long personId); + } 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 9d7506f..c12b51d 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 @@ -22,7 +22,7 @@ List> getTypeViaCode(@Param("code") String code); List> getAlarmContent(@Param("alarmType") String alarmType,@Param("deviceType") String devType); List> testPage(@Param("page") Page> page); - String getDeviceTypeNameById(@Param("deviceTypeId") String deviceTypeId); + String getDeviceTypeNameById(@Param("deviceTypeId") Long deviceTypeId); String getDeptNameById(@Param("deptid") long deptid); String getAlarmTypeNameByCodeNum(@Param("alarmType") String alarmType); String getAlarmContentName(@Param("id") int id); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml index b279d9a..401a28a 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml @@ -24,40 +24,132 @@ + + DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + ifnull(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + + + + + + AND date_part('day',now()-aj.create_time) ${paramDay} + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + - ID AS id, JOBCODE AS jobcode, JOG_TYPE AS jogType, - WELL_CODE AS wellCode, DEVCODE AS devcode, DATE_FORMAT(CREATE_TIME,'%Y-%m-%d %H:%i:%s') AS createTime, - JOB_STATUS AS jobStatus, GET_JOB_PERSON AS getJobPerson, - DATE_FORMAT(GET_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS getJobTime, FIRST_STATE AS firstState, - FIRST_STATE_PHOTOS AS firstStatePhotos, CONFIRM_JOB_PERSON AS confirmJobPerson, - DATE_FORMAT(CONFRIM_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS confrimJobTime, HANDLE_JOB_Person AS handleJobPerson, - DATE_FORMAT(HANDLE_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS handleJobTime, HANDLE_MESSAGE AS handleMessage, - HANDLE_PHOTOS AS handlePhotos, FLOW AS flow - - - - - DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i:%S') - - - - to_date(${paramTime},'yyyy-MM-dd HH24:mi:ss') - - - - to_char(${paramTime},'yyyy-mm-dd hh24:mi:ss') + ID AS id, JOBCODE AS "jobcode", JOG_TYPE AS "jogType", + WELL_CODE AS "wellCode", DEVCODE AS "devcode", + + + + AS "createTime", + JOB_STATUS AS "jobStatus", GET_JOB_PERSON AS "getJobPerson", + + + + AS "getJobTime", FIRST_STATE AS "firstState", + FIRST_STATE_PHOTOS AS "firstStatePhotos", CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confrimJobTime", HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "handleJobTime", HANDLE_MESSAGE AS "handleMessage", + HANDLE_PHOTOS AS "handlePhotos", FLOW AS flow + - SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS deptId + SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS "deptId" FROM alarm_job aj LEFT JOIN alarm_records ar ON ar.JOB_ID = aj.ID LEFT JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE @@ -150,11 +273,19 @@
- AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -179,11 +310,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -207,47 +346,181 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + - - ar.id as alarmId, - aj.DEVCODE as devcode, - aj.WELL_CODE as wellCode, - ar.ALARM_TYPE as alarmType, - ar.ALARM_CONTENT as alarmContentName, - ar.STATUS as alarmStatus, - aj.ID as id, - aj.ID as jobId, - aj.JOG_TYPE as jobType, - aj.JOBCODE as jobCode, - aj.JOB_STATUS as jobStatus, - aj.JOB_BELONG_TO as jobBelongTo, + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, ar.ALARM_VALUE AS alarmValue, ar.ALARM_LEVEL AS alarmLevel, ar.ALARM_MSG AS alarmMessage, - TO_CHAR(aj.CREATE_TIME,'yyyy-MM-dd HH24:mi:ss') as createTime, - TO_CHAR(ar.ALARM_TIME,'yyyy-MM-dd HH24:mi:ss') as alarmTime, - aj.GET_JOB_PERSON as getJobPerson, - TO_CHAR(aj.SHOULD_GET_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldGetTime, - TO_CHAR(aj.GET_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as getJobTime, - aj.CONFIRM_JOB_PERSON as confirmJobPerson, - TO_CHAR(aj.CONFRIM_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as confirmJobTime, - aj.HANDLE_JOB_Person as handleJobPerson, - TO_CHAR(aj.SHOULD_HANDLE_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldHandleTime, - TO_CHAR(aj.HANDLE_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as handleJobTime, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, aj.JOB_FLAG_1 AS jobFlag, bwi.RESPONSIBLE_DEPT AS deptid + + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, + aj.JOB_FLAG_1 AS jobFlag, + bwi.RESPONSIBLE_DEPT AS deptid + + + + + ar.id AS "alarmId", + aj.DEVCODE AS devcode, + aj.WELL_CODE AS "wellCode", + ar.ALARM_TYPE AS "alarmType", + ar.ALARM_CONTENT AS "alarmContentName", + ar.STATUS AS "alarmStatus", + aj.ID AS id, + aj.ID AS "jobId", + aj.JOG_TYPE AS "jobType", + aj.JOBCODE AS "jobCode", + aj.JOB_STATUS AS "jobStatus", + aj.JOB_BELONG_TO AS "jobBelongTo", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + + + + AS "createTime", + + + + AS "alarmTime", + aj.GET_JOB_PERSON AS "getJobPerson", + + + + AS "shouldGetTime", + + + + AS "getJobTime", + aj.CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confirmJobTime", + aj.HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "shouldHandleTime", + + + + AS "handleJobTime", + aj.JOB_FLAG_1 AS "jobFlag", + bwi.RESPONSIBLE_DEPT AS deptid + + + @@ -298,7 +573,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -308,11 +584,19 @@ - AND aj.CREATE_TIME = ]]> #{beginTime} - AND aj.CREATE_TIME #{endTime} + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -350,14 +634,9 @@ WHERE ar.JOB_ID > 0 AND bwi.VALID = '1' AND aj.JOB_STATUS = '0' AND aj.JOB_FLAG_DELAY = '1' - - - - - - - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -367,11 +646,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -389,7 +676,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.responsible_dept = #{deptId} - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -399,11 +687,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -419,13 +715,20 @@ AND ( aj.JOB_STATUS = '1' OR aj.JOB_STATUS = '2') AND aj.JOB_FLAG_DELAY = '2' - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -449,18 +752,19 @@ AND bwi.responsible_dept = #{deptId} AND aj.CREATE_TIME = ]]> - - + + AND aj.CREATE_TIME - - + + - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -492,7 +796,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{jobListParam.keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{jobListParam.alarmLevel} @@ -504,34 +809,64 @@ AND aj.JOB_STATUS = #{jobListParam.jobStatus} - AND aj.CREATE_TIME = ]]> #{jobListParam.beginTime} + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME #{jobListParam.endTime} + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{jobListParam.getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{jobListParam.getJobEndTime} + AND aj.GET_JOB_TIME + + + - AND aj.SHOULD_GET_TIME = ]]> #{jobListParam.shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{jobListParam.shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{jobListParam.handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{jobListParam.handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{jobListParam.shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{jobListParam.shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -549,7 +884,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{alarmLevel} @@ -558,36 +894,63 @@ AND ar.ALARM_CONTENT = #{alarmContent} - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{getJobEndTime} - - + + + - AND aj.SHOULD_GET_TIME = ]]> #{shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -618,50 +981,73 @@ - + @@ -761,7 +1147,7 @@ - SELECT FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + SELECT + + FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + + + DATE_FORMAT(alarmTimeDate,'%Y-%m-%d %H:%i') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml index d9cfd1e..d686954 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -4,18 +4,18 @@ - - - - - - - - + + + + + + + + - - - + + + @@ -23,11 +23,34 @@ ID AS id, DEVICE_ID AS deviceId, DEVCODE AS devcode, WELL_CODE AS wellCode, ALARM_TYPE AS alarmType, ALARM_CONTENT AS alarmContent, ALARM_VALUE AS alarmValue, ALARM_TIME AS alarmTime, STATUS AS status, JOB_ID AS jobId - + + ${paramStr} + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + + ar.ID as id, ar.WELL_CODE as wellCode, ar.ALARM_CONTENT as alarmContentName, - DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i:%s') as alarmTime, + DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i') + AS alarmTime, ar.DEVICE_ID as deviceId, ar.STATUS as status, ar.alarm_type as alarmType, @@ -40,6 +63,44 @@ bwi.DEPTID AS deptid + + ar.ID as id, + ar.WELL_CODE as wellCode, + ar.ALARM_CONTENT as alarmContentName, + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS alarmTime, + ar.DEVICE_ID as deviceId, + ar.STATUS as status, + ar.alarm_type as alarmType, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + ar.DEVCODE as devcode, + aj.JOB_STATUS as jobStatus, + ar.JOB_ID as jobId, + bwi.DEPTID AS deptid + + + + + ar.ID as id, + ar.WELL_CODE as "wellCode", + ar.ALARM_CONTENT as "alarmContentName", + ar.DEVICE_ID as "deviceId", + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS "alarmTime", + ar.STATUS as "status", + ar.alarm_type as "alarmType", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + ar.DEVCODE as devcode, + aj.JOB_STATUS as "jobStatus", + ar.JOB_ID as "jobId", + bwi.DEPTID AS deptid + + + - - + + - UPDATE alarm_job aj, alarm_records ar + UPDATE alarm_records + SET status = 2 + WHERE ID = #{id} + + + + update alarm_job - aj.job_status = #{jobStatus} , - aj.handle_job_person = #{personId}, - aj.job_belong_to = #{personId}, - aj.handle_job_time = now(), - aj.handle_message = #{handleMessage}, - ar.status = 2 + job_status = #{jobStatus} , + handle_job_person = #{personId}, + job_belong_to = #{personId}, + handle_job_time = now(), + handle_message = #{handleMessage}, - WHERE aj.ID = ar.job_id - AND aj.ID = #{id} + WHERE ID=( + SELECT JOB_ID + FROM alarm_records + WHERE ID=#{id} + ) diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml index 4743d51..bbec5ff 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -4,17 +4,28 @@ - - - - - - - - - + + + + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + ID AS id, DEVCODE AS devcode, HIGHVALUE AS highvalue, LOWVALUE AS lowvalue, OVERTIME AS overtime, SALTATION AS saltation, SENSORCODE AS sensorcode, GRADE AS grade, TS AS ts @@ -34,21 +45,37 @@ - + SELECT ar.ID as id,ar.HIGHVALUE as "highValue",ar.LOWVALUE as "lowValue", + bd.ID AS "devId",bd.DEVCODE as "devcode", + bd.DEVICE_TYPE as "deviceType",bwi.ID AS "wellId",bwi.WELL_NAME as "wellName", + COALESCE (ar.OPERATOR,'') AS user, + bwi.WELL_CODE as "wellCode",bwi.DEEP as deep,bwi.DEPTID as deptid, + COALESCE (,'') AS ts + FROM alarm_rule ar + LEFT JOIN bus_device bd ON ar.DEVCODE = bd.DEVCODE + LEFT JOIN bus_device_well bdw ON bd.ID = bdw.DEVICE_ID + LEFT JOIN bus_well_info bwi ON bdw.WELL_ID = bwi.ID + WHERE bd.VALID = '1' AND bdw.VALID ='1' - AND (ar.DEVCODE LIKE concat(CONCAT('%',#{keywords}),'%') - OR bwi.WELL_CODE LIKE concat(CONCAT('%',#{keywords}),'%') ) + AND (ar.DEVCODE LIKE + + OR bwi.WELL_CODE LIKE + ) AND bd.DEVICE_TYPE= #{deviceType} @@ -71,13 +98,13 @@ WHERE ID=#{id} 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 2fa12b0..0a71551 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 @@ -2,11 +2,35 @@ + + + A.wellCount , + A.deptid, + SD.simplename as deptName, + SD.pid + + + A.wellCount , + A.deptid, + SD.simplename as deptName, + SD.pid + + + A.wellCount , + A.deptid, + SD.simplename as "deptName", + SD.pid + + + + + + SELECT - COUNT( 1 ) AS wellCount, - WELL_TYPE AS wellType + COUNT( 1 ) AS "wellCount", + WELL_TYPE AS "wellType" FROM bus_well_info WHERE VALID = '1' AND DEPTID IN (${deptIds}) GROUP BY WELL_TYPE - + - + - + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi:ss') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi:ss') + + + + ifnull(SUM(IF(BD.ONLINE_STATE=${numberStatus},1,0)),0) + + + + COALESCE(SUM(CASE WHEN BD.ONLINE_STATE=${numberStatus} THEN 1 ELSE 0 END)) + + + + COALESCE(SUM(IF(BD.ONLINE_STATE=${numberStatus},1,0)),0) + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(CASE WHEN job_status=${numberStatus} THEN 1 ELSE 0 END)) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + + + + + + + + + + + + - + SELECT - ifnull(SUM(IF(job_status='0',1,0)),0) AS beforeGet, - ifnull(SUM(IF(job_status='1',1,0)),0) AS beforeConfirm, - ifnull(SUM(IF(job_status='2',1,0)),0) AS inHandle, - ifnull(SUM(IF(job_status='3',1,0)),0) AS 'over', - ifnull(SUM(IF(job_status='4',1,0)),0) AS cancel + + + + AS "beforeGet", + + + + AS "beforeConfirm", + + + + AS "inHandle", + + + + AS "over", + + + + AS cancel FROM alarm_job aj INNER JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE INNER JOIN bus_device bd ON aj.DEVCODE = bd.DEVCODE @@ -104,11 +238,19 @@ AND bwi.DEPTID IN (${deptIds}) - AND aj.CREATE_TIME ]]> #{beginTime} - AND aj.CREATE_TIME DATE_ADD( #{endTime}, INTERVAL 1 DAY ) + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml index 2a702c0..7a9c269 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml @@ -4,12 +4,12 @@ - - - - - - + + + + + + @@ -27,18 +27,18 @@ - SELECT * FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND name = #{typeName} ) ; - SELECT * FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) ; - SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = 'alarmType' ) @@ -46,15 +46,15 @@ - + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = 'jobStatus' ) AND code = #{jobStatus}; - + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) AND code = #{codeNum}; @@ -64,8 +64,9 @@ - + SELECT id as value,alarm_content as name ,alarm_type as "alarmType",device_type as "deviceType" + FROM base_alarm_content_type WHERE alarm_type = #{alarmType} AND device_type= #{deviceType} @@ -84,7 +85,7 @@ + + + DATE_FORMAT(now(),'%Y-%m-%d %H:%i:%s') + + + + TO_CHAR(now(),'yyyy-mm-dd hh24:mi:ss') + + + + TO_CHAR(sysdate,'yyyy-mm-dd hh24:mi:ss') + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java new file mode 100644 index 0000000..c9cf49a --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class RecordExcelDto { + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("权属单位") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警等级") + private String alarmLevel; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("告警时间") + private String logTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java index 5f47018..d49386c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java @@ -37,7 +37,7 @@ List> jobListSearchApp(Page> page, JobListParam jobListParam, Long deptId, Long userId, Long leaderId); - List> jobInfo(int id, DataScope dataScope, Long personId); + List> jobInfo(Long id, DataScope dataScope, Long personId); boolean getJob(int id, long personId); @@ -51,7 +51,7 @@ boolean overAlarm(int id); - boolean handleJob(int id, long personId); + boolean handleJob(Long id, long personId); Map countByJobStatus(long deptId, int spanDays); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java index 267fff5..8a5b270 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java @@ -22,5 +22,5 @@ List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent,String beginTime, String endTime); - boolean cancelAlarm(int id,String jobStatus, String handleMessage, long personId); + boolean cancelAlarm(Long id,String jobStatus, String handleMessage, long personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java index 5ef681b..c52630c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java @@ -144,7 +144,7 @@ } @Override - public List> jobInfo(int id, DataScope dataScope, Long personId) { + public List> jobInfo(Long id, DataScope dataScope, Long personId) { List> job = this.baseMapper.jobInfo(id, dataScope, personId); return job; } @@ -232,7 +232,7 @@ } @Override - public boolean handleJob(int id, long personId) { + public boolean handleJob(Long id, long personId) { return this.baseMapper.handleJob(id, personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index 2f9b8d1..d2cc7f1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -16,7 +16,7 @@ /** *

- * 服务实现类 + * 服务实现类 *

* * @author casic123 @@ -27,12 +27,12 @@ @Override - public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { + public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmList(page,keywords,beginTime,endTime,status,alarmType,sContent,dataScope); + return this.baseMapper.alarmList(page, keywords, beginTime, endTime, status, alarmType, sContent, dataScope); } /** @@ -41,15 +41,15 @@ @Override public List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent, String beginTime, String endTime) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmListNoPage(dataScope,keywords,alarmType,sContent,beginTime,endTime); + return this.baseMapper.alarmListNoPage(dataScope, keywords, alarmType, sContent, beginTime, endTime); } @Override - public boolean cancelAlarm(int id, String jobStatus, String handleMessage, long personId) { - return this.baseMapper.cancelAlarm(id,jobStatus,handleMessage,personId); + public boolean cancelAlarm(Long id, String jobStatus, String handleMessage, long personId) { + return this.baseMapper.cancelAlarm(id) && this.baseMapper.closeJob(id, jobStatus, handleMessage, personId); } } 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 d3bd513..5ea6d1c 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,5 +1,6 @@ package com.casic.missiles.modular.alarm.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; @@ -26,27 +27,27 @@ 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(String alarmType, String devType) { + 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/dao/AlarmJobMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java index 958a1ad..57d3173 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java @@ -48,7 +48,7 @@ Map countMyJob(@Param("userId") long userId, @Param("deptId") long deptId, @Param("spanDays") int spanDays); - List> jobInfo(@Param("id") int id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); + List> jobInfo(@Param("id") Long id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); // boolean getJob(@Param("id") int id,@Param("personId") long personId); boolean getJob(@Param("id") int id, @Param("personId") long personId, @Param("getTime") Date getTime, @Param("shouldHandleTime") Date shouldHandleTime); @@ -71,7 +71,7 @@ boolean overJobAlarmRecrds(@Param("id") int id); - boolean handleJob(@Param("id") int id, @Param("personId") long personId); + boolean handleJob(@Param("id") Long id, @Param("personId") long personId); List> countByDataScope(@Param("dataScope") DataScope dataScope, @Param("alarmType") String alarmType, @Param("jobStatus") String jobStatus, @Param("beginTime") String beginTime, @Param("endTime") String endTime); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java index 3874bfa..4b34b3c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -11,7 +11,7 @@ /** *

- * Mapper 接口 + * Mapper 接口 *

* * @author casic123 @@ -19,9 +19,12 @@ */ public interface AlarmRecordsMapper extends BaseMapper { - List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent,@Param("dataScope") DataScope dataScope); + List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("dataScope") DataScope dataScope); List alarmListNoPage(@Param("scope") DataScope dataScope, @Param("keywords") String keywords, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("beginTime") String beginTime, @Param("endTime") String endTime); - boolean cancelAlarm(@Param("id") int id,@Param("jobStatus")String jobStatus,@Param("handleMessage") String handleMessage,@Param("personId") long personId); + boolean cancelAlarm(@Param("id") Long id); + + boolean closeJob(@Param("id") Long id, @Param("jobStatus") String jobStatus, @Param("handleMessage") String handleMessage, @Param("personId") long personId); + } 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 9d7506f..c12b51d 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 @@ -22,7 +22,7 @@ List> getTypeViaCode(@Param("code") String code); List> getAlarmContent(@Param("alarmType") String alarmType,@Param("deviceType") String devType); List> testPage(@Param("page") Page> page); - String getDeviceTypeNameById(@Param("deviceTypeId") String deviceTypeId); + String getDeviceTypeNameById(@Param("deviceTypeId") Long deviceTypeId); String getDeptNameById(@Param("deptid") long deptid); String getAlarmTypeNameByCodeNum(@Param("alarmType") String alarmType); String getAlarmContentName(@Param("id") int id); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml index b279d9a..401a28a 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml @@ -24,40 +24,132 @@ + + DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + ifnull(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + + + + + + AND date_part('day',now()-aj.create_time) ${paramDay} + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + - ID AS id, JOBCODE AS jobcode, JOG_TYPE AS jogType, - WELL_CODE AS wellCode, DEVCODE AS devcode, DATE_FORMAT(CREATE_TIME,'%Y-%m-%d %H:%i:%s') AS createTime, - JOB_STATUS AS jobStatus, GET_JOB_PERSON AS getJobPerson, - DATE_FORMAT(GET_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS getJobTime, FIRST_STATE AS firstState, - FIRST_STATE_PHOTOS AS firstStatePhotos, CONFIRM_JOB_PERSON AS confirmJobPerson, - DATE_FORMAT(CONFRIM_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS confrimJobTime, HANDLE_JOB_Person AS handleJobPerson, - DATE_FORMAT(HANDLE_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS handleJobTime, HANDLE_MESSAGE AS handleMessage, - HANDLE_PHOTOS AS handlePhotos, FLOW AS flow - - - - - DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i:%S') - - - - to_date(${paramTime},'yyyy-MM-dd HH24:mi:ss') - - - - to_char(${paramTime},'yyyy-mm-dd hh24:mi:ss') + ID AS id, JOBCODE AS "jobcode", JOG_TYPE AS "jogType", + WELL_CODE AS "wellCode", DEVCODE AS "devcode", + + + + AS "createTime", + JOB_STATUS AS "jobStatus", GET_JOB_PERSON AS "getJobPerson", + + + + AS "getJobTime", FIRST_STATE AS "firstState", + FIRST_STATE_PHOTOS AS "firstStatePhotos", CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confrimJobTime", HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "handleJobTime", HANDLE_MESSAGE AS "handleMessage", + HANDLE_PHOTOS AS "handlePhotos", FLOW AS flow + - SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS deptId + SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS "deptId" FROM alarm_job aj LEFT JOIN alarm_records ar ON ar.JOB_ID = aj.ID LEFT JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE @@ -150,11 +273,19 @@
- AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -179,11 +310,19 @@
- AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -207,47 +346,181 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + - - ar.id as alarmId, - aj.DEVCODE as devcode, - aj.WELL_CODE as wellCode, - ar.ALARM_TYPE as alarmType, - ar.ALARM_CONTENT as alarmContentName, - ar.STATUS as alarmStatus, - aj.ID as id, - aj.ID as jobId, - aj.JOG_TYPE as jobType, - aj.JOBCODE as jobCode, - aj.JOB_STATUS as jobStatus, - aj.JOB_BELONG_TO as jobBelongTo, + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, ar.ALARM_VALUE AS alarmValue, ar.ALARM_LEVEL AS alarmLevel, ar.ALARM_MSG AS alarmMessage, - TO_CHAR(aj.CREATE_TIME,'yyyy-MM-dd HH24:mi:ss') as createTime, - TO_CHAR(ar.ALARM_TIME,'yyyy-MM-dd HH24:mi:ss') as alarmTime, - aj.GET_JOB_PERSON as getJobPerson, - TO_CHAR(aj.SHOULD_GET_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldGetTime, - TO_CHAR(aj.GET_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as getJobTime, - aj.CONFIRM_JOB_PERSON as confirmJobPerson, - TO_CHAR(aj.CONFRIM_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as confirmJobTime, - aj.HANDLE_JOB_Person as handleJobPerson, - TO_CHAR(aj.SHOULD_HANDLE_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldHandleTime, - TO_CHAR(aj.HANDLE_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as handleJobTime, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, aj.JOB_FLAG_1 AS jobFlag, bwi.RESPONSIBLE_DEPT AS deptid + + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, + aj.JOB_FLAG_1 AS jobFlag, + bwi.RESPONSIBLE_DEPT AS deptid + + + + + ar.id AS "alarmId", + aj.DEVCODE AS devcode, + aj.WELL_CODE AS "wellCode", + ar.ALARM_TYPE AS "alarmType", + ar.ALARM_CONTENT AS "alarmContentName", + ar.STATUS AS "alarmStatus", + aj.ID AS id, + aj.ID AS "jobId", + aj.JOG_TYPE AS "jobType", + aj.JOBCODE AS "jobCode", + aj.JOB_STATUS AS "jobStatus", + aj.JOB_BELONG_TO AS "jobBelongTo", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + + + + AS "createTime", + + + + AS "alarmTime", + aj.GET_JOB_PERSON AS "getJobPerson", + + + + AS "shouldGetTime", + + + + AS "getJobTime", + aj.CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confirmJobTime", + aj.HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "shouldHandleTime", + + + + AS "handleJobTime", + aj.JOB_FLAG_1 AS "jobFlag", + bwi.RESPONSIBLE_DEPT AS deptid + + + @@ -298,7 +573,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -308,11 +584,19 @@ - AND aj.CREATE_TIME = ]]> #{beginTime} - AND aj.CREATE_TIME #{endTime} + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -350,14 +634,9 @@ WHERE ar.JOB_ID > 0 AND bwi.VALID = '1' AND aj.JOB_STATUS = '0' AND aj.JOB_FLAG_DELAY = '1' - - - - - - - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -367,11 +646,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -389,7 +676,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.responsible_dept = #{deptId} - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -399,11 +687,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -419,13 +715,20 @@ AND ( aj.JOB_STATUS = '1' OR aj.JOB_STATUS = '2') AND aj.JOB_FLAG_DELAY = '2' - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -449,18 +752,19 @@ AND bwi.responsible_dept = #{deptId} AND aj.CREATE_TIME = ]]> - - + + AND aj.CREATE_TIME - - + + - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -492,7 +796,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{jobListParam.keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{jobListParam.alarmLevel} @@ -504,34 +809,64 @@ AND aj.JOB_STATUS = #{jobListParam.jobStatus} - AND aj.CREATE_TIME = ]]> #{jobListParam.beginTime} + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME #{jobListParam.endTime} + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{jobListParam.getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{jobListParam.getJobEndTime} + AND aj.GET_JOB_TIME + + + - AND aj.SHOULD_GET_TIME = ]]> #{jobListParam.shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{jobListParam.shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{jobListParam.handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{jobListParam.handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{jobListParam.shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{jobListParam.shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -549,7 +884,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{alarmLevel} @@ -558,36 +894,63 @@ AND ar.ALARM_CONTENT = #{alarmContent} - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{getJobEndTime} - - + + + - AND aj.SHOULD_GET_TIME = ]]> #{shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -618,50 +981,73 @@ - + @@ -761,7 +1147,7 @@ - SELECT FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + SELECT + + FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + + + DATE_FORMAT(alarmTimeDate,'%Y-%m-%d %H:%i') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml index d9cfd1e..d686954 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -4,18 +4,18 @@ - - - - - - - - + + + + + + + + - - - + + + @@ -23,11 +23,34 @@ ID AS id, DEVICE_ID AS deviceId, DEVCODE AS devcode, WELL_CODE AS wellCode, ALARM_TYPE AS alarmType, ALARM_CONTENT AS alarmContent, ALARM_VALUE AS alarmValue, ALARM_TIME AS alarmTime, STATUS AS status, JOB_ID AS jobId - + + ${paramStr} + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + + ar.ID as id, ar.WELL_CODE as wellCode, ar.ALARM_CONTENT as alarmContentName, - DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i:%s') as alarmTime, + DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i') + AS alarmTime, ar.DEVICE_ID as deviceId, ar.STATUS as status, ar.alarm_type as alarmType, @@ -40,6 +63,44 @@ bwi.DEPTID AS deptid + + ar.ID as id, + ar.WELL_CODE as wellCode, + ar.ALARM_CONTENT as alarmContentName, + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS alarmTime, + ar.DEVICE_ID as deviceId, + ar.STATUS as status, + ar.alarm_type as alarmType, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + ar.DEVCODE as devcode, + aj.JOB_STATUS as jobStatus, + ar.JOB_ID as jobId, + bwi.DEPTID AS deptid + + + + + ar.ID as id, + ar.WELL_CODE as "wellCode", + ar.ALARM_CONTENT as "alarmContentName", + ar.DEVICE_ID as "deviceId", + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS "alarmTime", + ar.STATUS as "status", + ar.alarm_type as "alarmType", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + ar.DEVCODE as devcode, + aj.JOB_STATUS as "jobStatus", + ar.JOB_ID as "jobId", + bwi.DEPTID AS deptid + + + - - + + - UPDATE alarm_job aj, alarm_records ar + UPDATE alarm_records + SET status = 2 + WHERE ID = #{id} + + + + update alarm_job - aj.job_status = #{jobStatus} , - aj.handle_job_person = #{personId}, - aj.job_belong_to = #{personId}, - aj.handle_job_time = now(), - aj.handle_message = #{handleMessage}, - ar.status = 2 + job_status = #{jobStatus} , + handle_job_person = #{personId}, + job_belong_to = #{personId}, + handle_job_time = now(), + handle_message = #{handleMessage}, - WHERE aj.ID = ar.job_id - AND aj.ID = #{id} + WHERE ID=( + SELECT JOB_ID + FROM alarm_records + WHERE ID=#{id} + ) diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml index 4743d51..bbec5ff 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -4,17 +4,28 @@ - - - - - - - - - + + + + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + ID AS id, DEVCODE AS devcode, HIGHVALUE AS highvalue, LOWVALUE AS lowvalue, OVERTIME AS overtime, SALTATION AS saltation, SENSORCODE AS sensorcode, GRADE AS grade, TS AS ts @@ -34,21 +45,37 @@ - + SELECT ar.ID as id,ar.HIGHVALUE as "highValue",ar.LOWVALUE as "lowValue", + bd.ID AS "devId",bd.DEVCODE as "devcode", + bd.DEVICE_TYPE as "deviceType",bwi.ID AS "wellId",bwi.WELL_NAME as "wellName", + COALESCE (ar.OPERATOR,'') AS user, + bwi.WELL_CODE as "wellCode",bwi.DEEP as deep,bwi.DEPTID as deptid, + COALESCE (,'') AS ts + FROM alarm_rule ar + LEFT JOIN bus_device bd ON ar.DEVCODE = bd.DEVCODE + LEFT JOIN bus_device_well bdw ON bd.ID = bdw.DEVICE_ID + LEFT JOIN bus_well_info bwi ON bdw.WELL_ID = bwi.ID + WHERE bd.VALID = '1' AND bdw.VALID ='1' - AND (ar.DEVCODE LIKE concat(CONCAT('%',#{keywords}),'%') - OR bwi.WELL_CODE LIKE concat(CONCAT('%',#{keywords}),'%') ) + AND (ar.DEVCODE LIKE + + OR bwi.WELL_CODE LIKE + ) AND bd.DEVICE_TYPE= #{deviceType} @@ -71,13 +98,13 @@ WHERE ID=#{id} 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 2fa12b0..0a71551 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 @@ -2,11 +2,35 @@ + + + A.wellCount , + A.deptid, + SD.simplename as deptName, + SD.pid + + + A.wellCount , + A.deptid, + SD.simplename as deptName, + SD.pid + + + A.wellCount , + A.deptid, + SD.simplename as "deptName", + SD.pid + + + + + + SELECT - COUNT( 1 ) AS wellCount, - WELL_TYPE AS wellType + COUNT( 1 ) AS "wellCount", + WELL_TYPE AS "wellType" FROM bus_well_info WHERE VALID = '1' AND DEPTID IN (${deptIds}) GROUP BY WELL_TYPE - + - + - + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi:ss') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi:ss') + + + + ifnull(SUM(IF(BD.ONLINE_STATE=${numberStatus},1,0)),0) + + + + COALESCE(SUM(CASE WHEN BD.ONLINE_STATE=${numberStatus} THEN 1 ELSE 0 END)) + + + + COALESCE(SUM(IF(BD.ONLINE_STATE=${numberStatus},1,0)),0) + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(CASE WHEN job_status=${numberStatus} THEN 1 ELSE 0 END)) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + + + + + + + + + + + + - + SELECT - ifnull(SUM(IF(job_status='0',1,0)),0) AS beforeGet, - ifnull(SUM(IF(job_status='1',1,0)),0) AS beforeConfirm, - ifnull(SUM(IF(job_status='2',1,0)),0) AS inHandle, - ifnull(SUM(IF(job_status='3',1,0)),0) AS 'over', - ifnull(SUM(IF(job_status='4',1,0)),0) AS cancel + + + + AS "beforeGet", + + + + AS "beforeConfirm", + + + + AS "inHandle", + + + + AS "over", + + + + AS cancel FROM alarm_job aj INNER JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE INNER JOIN bus_device bd ON aj.DEVCODE = bd.DEVCODE @@ -104,11 +238,19 @@ AND bwi.DEPTID IN (${deptIds}) - AND aj.CREATE_TIME ]]> #{beginTime} - AND aj.CREATE_TIME DATE_ADD( #{endTime}, INTERVAL 1 DAY ) + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml index 2a702c0..7a9c269 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml @@ -4,12 +4,12 @@ - - - - - - + + + + + + @@ -27,18 +27,18 @@ - SELECT * FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND name = #{typeName} ) ; - SELECT * FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) ; - SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = 'alarmType' ) @@ -46,15 +46,15 @@ - + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = 'jobStatus' ) AND code = #{jobStatus}; - + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) AND code = #{codeNum}; @@ -64,8 +64,9 @@ - + SELECT id as value,alarm_content as name ,alarm_type as "alarmType",device_type as "deviceType" + FROM base_alarm_content_type WHERE alarm_type = #{alarmType} AND device_type= #{deviceType} @@ -84,7 +85,7 @@ + + + DATE_FORMAT(now(),'%Y-%m-%d %H:%i:%s') + + + + TO_CHAR(now(),'yyyy-mm-dd hh24:mi:ss') + + + + TO_CHAR(sysdate,'yyyy-mm-dd hh24:mi:ss') + + diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml index f4a17d3..fce044c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml @@ -34,7 +34,7 @@ SELECT b.SENSORCODE AS SENSORCODE FROM base_sensor b LEFT JOIN bus_device d ON b.DEVICE_TYPE=d.DEVICE_TYPE - WHERE d.VALID = 1 + WHERE d.VALID = '1' and d.DEVCODE = diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java new file mode 100644 index 0000000..c9cf49a --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class RecordExcelDto { + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("权属单位") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警等级") + private String alarmLevel; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("告警时间") + private String logTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java index 5f47018..d49386c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java @@ -37,7 +37,7 @@ List> jobListSearchApp(Page> page, JobListParam jobListParam, Long deptId, Long userId, Long leaderId); - List> jobInfo(int id, DataScope dataScope, Long personId); + List> jobInfo(Long id, DataScope dataScope, Long personId); boolean getJob(int id, long personId); @@ -51,7 +51,7 @@ boolean overAlarm(int id); - boolean handleJob(int id, long personId); + boolean handleJob(Long id, long personId); Map countByJobStatus(long deptId, int spanDays); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java index 267fff5..8a5b270 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java @@ -22,5 +22,5 @@ List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent,String beginTime, String endTime); - boolean cancelAlarm(int id,String jobStatus, String handleMessage, long personId); + boolean cancelAlarm(Long id,String jobStatus, String handleMessage, long personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java index 5ef681b..c52630c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java @@ -144,7 +144,7 @@ } @Override - public List> jobInfo(int id, DataScope dataScope, Long personId) { + public List> jobInfo(Long id, DataScope dataScope, Long personId) { List> job = this.baseMapper.jobInfo(id, dataScope, personId); return job; } @@ -232,7 +232,7 @@ } @Override - public boolean handleJob(int id, long personId) { + public boolean handleJob(Long id, long personId) { return this.baseMapper.handleJob(id, personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index 2f9b8d1..d2cc7f1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -16,7 +16,7 @@ /** *

- * 服务实现类 + * 服务实现类 *

* * @author casic123 @@ -27,12 +27,12 @@ @Override - public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { + public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmList(page,keywords,beginTime,endTime,status,alarmType,sContent,dataScope); + return this.baseMapper.alarmList(page, keywords, beginTime, endTime, status, alarmType, sContent, dataScope); } /** @@ -41,15 +41,15 @@ @Override public List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent, String beginTime, String endTime) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmListNoPage(dataScope,keywords,alarmType,sContent,beginTime,endTime); + return this.baseMapper.alarmListNoPage(dataScope, keywords, alarmType, sContent, beginTime, endTime); } @Override - public boolean cancelAlarm(int id, String jobStatus, String handleMessage, long personId) { - return this.baseMapper.cancelAlarm(id,jobStatus,handleMessage,personId); + public boolean cancelAlarm(Long id, String jobStatus, String handleMessage, long personId) { + return this.baseMapper.cancelAlarm(id) && this.baseMapper.closeJob(id, jobStatus, handleMessage, personId); } } 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 d3bd513..5ea6d1c 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,5 +1,6 @@ package com.casic.missiles.modular.alarm.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; @@ -26,27 +27,27 @@ 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(String alarmType, String devType) { + 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/dao/AlarmJobMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java index 958a1ad..57d3173 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java @@ -48,7 +48,7 @@ Map countMyJob(@Param("userId") long userId, @Param("deptId") long deptId, @Param("spanDays") int spanDays); - List> jobInfo(@Param("id") int id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); + List> jobInfo(@Param("id") Long id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); // boolean getJob(@Param("id") int id,@Param("personId") long personId); boolean getJob(@Param("id") int id, @Param("personId") long personId, @Param("getTime") Date getTime, @Param("shouldHandleTime") Date shouldHandleTime); @@ -71,7 +71,7 @@ boolean overJobAlarmRecrds(@Param("id") int id); - boolean handleJob(@Param("id") int id, @Param("personId") long personId); + boolean handleJob(@Param("id") Long id, @Param("personId") long personId); List> countByDataScope(@Param("dataScope") DataScope dataScope, @Param("alarmType") String alarmType, @Param("jobStatus") String jobStatus, @Param("beginTime") String beginTime, @Param("endTime") String endTime); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java index 3874bfa..4b34b3c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -11,7 +11,7 @@ /** *

- * Mapper 接口 + * Mapper 接口 *

* * @author casic123 @@ -19,9 +19,12 @@ */ public interface AlarmRecordsMapper extends BaseMapper { - List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent,@Param("dataScope") DataScope dataScope); + List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("dataScope") DataScope dataScope); List alarmListNoPage(@Param("scope") DataScope dataScope, @Param("keywords") String keywords, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("beginTime") String beginTime, @Param("endTime") String endTime); - boolean cancelAlarm(@Param("id") int id,@Param("jobStatus")String jobStatus,@Param("handleMessage") String handleMessage,@Param("personId") long personId); + boolean cancelAlarm(@Param("id") Long id); + + boolean closeJob(@Param("id") Long id, @Param("jobStatus") String jobStatus, @Param("handleMessage") String handleMessage, @Param("personId") long personId); + } 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 9d7506f..c12b51d 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 @@ -22,7 +22,7 @@ List> getTypeViaCode(@Param("code") String code); List> getAlarmContent(@Param("alarmType") String alarmType,@Param("deviceType") String devType); List> testPage(@Param("page") Page> page); - String getDeviceTypeNameById(@Param("deviceTypeId") String deviceTypeId); + String getDeviceTypeNameById(@Param("deviceTypeId") Long deviceTypeId); String getDeptNameById(@Param("deptid") long deptid); String getAlarmTypeNameByCodeNum(@Param("alarmType") String alarmType); String getAlarmContentName(@Param("id") int id); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml index b279d9a..401a28a 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml @@ -24,40 +24,132 @@ + + DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + ifnull(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + + + + + + AND date_part('day',now()-aj.create_time) ${paramDay} + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + - ID AS id, JOBCODE AS jobcode, JOG_TYPE AS jogType, - WELL_CODE AS wellCode, DEVCODE AS devcode, DATE_FORMAT(CREATE_TIME,'%Y-%m-%d %H:%i:%s') AS createTime, - JOB_STATUS AS jobStatus, GET_JOB_PERSON AS getJobPerson, - DATE_FORMAT(GET_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS getJobTime, FIRST_STATE AS firstState, - FIRST_STATE_PHOTOS AS firstStatePhotos, CONFIRM_JOB_PERSON AS confirmJobPerson, - DATE_FORMAT(CONFRIM_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS confrimJobTime, HANDLE_JOB_Person AS handleJobPerson, - DATE_FORMAT(HANDLE_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS handleJobTime, HANDLE_MESSAGE AS handleMessage, - HANDLE_PHOTOS AS handlePhotos, FLOW AS flow - - - - - DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i:%S') - - - - to_date(${paramTime},'yyyy-MM-dd HH24:mi:ss') - - - - to_char(${paramTime},'yyyy-mm-dd hh24:mi:ss') + ID AS id, JOBCODE AS "jobcode", JOG_TYPE AS "jogType", + WELL_CODE AS "wellCode", DEVCODE AS "devcode", + + + + AS "createTime", + JOB_STATUS AS "jobStatus", GET_JOB_PERSON AS "getJobPerson", + + + + AS "getJobTime", FIRST_STATE AS "firstState", + FIRST_STATE_PHOTOS AS "firstStatePhotos", CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confrimJobTime", HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "handleJobTime", HANDLE_MESSAGE AS "handleMessage", + HANDLE_PHOTOS AS "handlePhotos", FLOW AS flow + - SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS deptId + SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS "deptId" FROM alarm_job aj LEFT JOIN alarm_records ar ON ar.JOB_ID = aj.ID LEFT JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE @@ -150,11 +273,19 @@
- AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -179,11 +310,19 @@
- AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -207,47 +346,181 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + - - ar.id as alarmId, - aj.DEVCODE as devcode, - aj.WELL_CODE as wellCode, - ar.ALARM_TYPE as alarmType, - ar.ALARM_CONTENT as alarmContentName, - ar.STATUS as alarmStatus, - aj.ID as id, - aj.ID as jobId, - aj.JOG_TYPE as jobType, - aj.JOBCODE as jobCode, - aj.JOB_STATUS as jobStatus, - aj.JOB_BELONG_TO as jobBelongTo, + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, ar.ALARM_VALUE AS alarmValue, ar.ALARM_LEVEL AS alarmLevel, ar.ALARM_MSG AS alarmMessage, - TO_CHAR(aj.CREATE_TIME,'yyyy-MM-dd HH24:mi:ss') as createTime, - TO_CHAR(ar.ALARM_TIME,'yyyy-MM-dd HH24:mi:ss') as alarmTime, - aj.GET_JOB_PERSON as getJobPerson, - TO_CHAR(aj.SHOULD_GET_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldGetTime, - TO_CHAR(aj.GET_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as getJobTime, - aj.CONFIRM_JOB_PERSON as confirmJobPerson, - TO_CHAR(aj.CONFRIM_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as confirmJobTime, - aj.HANDLE_JOB_Person as handleJobPerson, - TO_CHAR(aj.SHOULD_HANDLE_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldHandleTime, - TO_CHAR(aj.HANDLE_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as handleJobTime, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, aj.JOB_FLAG_1 AS jobFlag, bwi.RESPONSIBLE_DEPT AS deptid + + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, + aj.JOB_FLAG_1 AS jobFlag, + bwi.RESPONSIBLE_DEPT AS deptid + + + + + ar.id AS "alarmId", + aj.DEVCODE AS devcode, + aj.WELL_CODE AS "wellCode", + ar.ALARM_TYPE AS "alarmType", + ar.ALARM_CONTENT AS "alarmContentName", + ar.STATUS AS "alarmStatus", + aj.ID AS id, + aj.ID AS "jobId", + aj.JOG_TYPE AS "jobType", + aj.JOBCODE AS "jobCode", + aj.JOB_STATUS AS "jobStatus", + aj.JOB_BELONG_TO AS "jobBelongTo", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + + + + AS "createTime", + + + + AS "alarmTime", + aj.GET_JOB_PERSON AS "getJobPerson", + + + + AS "shouldGetTime", + + + + AS "getJobTime", + aj.CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confirmJobTime", + aj.HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "shouldHandleTime", + + + + AS "handleJobTime", + aj.JOB_FLAG_1 AS "jobFlag", + bwi.RESPONSIBLE_DEPT AS deptid + + + @@ -298,7 +573,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -308,11 +584,19 @@ - AND aj.CREATE_TIME = ]]> #{beginTime} - AND aj.CREATE_TIME #{endTime} + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -350,14 +634,9 @@ WHERE ar.JOB_ID > 0 AND bwi.VALID = '1' AND aj.JOB_STATUS = '0' AND aj.JOB_FLAG_DELAY = '1' - - - - - - - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -367,11 +646,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -389,7 +676,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.responsible_dept = #{deptId} - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -399,11 +687,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -419,13 +715,20 @@ AND ( aj.JOB_STATUS = '1' OR aj.JOB_STATUS = '2') AND aj.JOB_FLAG_DELAY = '2' - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -449,18 +752,19 @@ AND bwi.responsible_dept = #{deptId} AND aj.CREATE_TIME = ]]> - - + + AND aj.CREATE_TIME - - + + - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -492,7 +796,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{jobListParam.keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{jobListParam.alarmLevel} @@ -504,34 +809,64 @@ AND aj.JOB_STATUS = #{jobListParam.jobStatus} - AND aj.CREATE_TIME = ]]> #{jobListParam.beginTime} + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME #{jobListParam.endTime} + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{jobListParam.getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{jobListParam.getJobEndTime} + AND aj.GET_JOB_TIME + + + - AND aj.SHOULD_GET_TIME = ]]> #{jobListParam.shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{jobListParam.shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{jobListParam.handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{jobListParam.handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{jobListParam.shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{jobListParam.shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -549,7 +884,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{alarmLevel} @@ -558,36 +894,63 @@ AND ar.ALARM_CONTENT = #{alarmContent} - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{getJobEndTime} - - + + + - AND aj.SHOULD_GET_TIME = ]]> #{shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -618,50 +981,73 @@ - + @@ -761,7 +1147,7 @@ - SELECT FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + SELECT + + FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + + + DATE_FORMAT(alarmTimeDate,'%Y-%m-%d %H:%i') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml index d9cfd1e..d686954 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -4,18 +4,18 @@ - - - - - - - - + + + + + + + + - - - + + + @@ -23,11 +23,34 @@ ID AS id, DEVICE_ID AS deviceId, DEVCODE AS devcode, WELL_CODE AS wellCode, ALARM_TYPE AS alarmType, ALARM_CONTENT AS alarmContent, ALARM_VALUE AS alarmValue, ALARM_TIME AS alarmTime, STATUS AS status, JOB_ID AS jobId - + + ${paramStr} + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + + ar.ID as id, ar.WELL_CODE as wellCode, ar.ALARM_CONTENT as alarmContentName, - DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i:%s') as alarmTime, + DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i') + AS alarmTime, ar.DEVICE_ID as deviceId, ar.STATUS as status, ar.alarm_type as alarmType, @@ -40,6 +63,44 @@ bwi.DEPTID AS deptid + + ar.ID as id, + ar.WELL_CODE as wellCode, + ar.ALARM_CONTENT as alarmContentName, + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS alarmTime, + ar.DEVICE_ID as deviceId, + ar.STATUS as status, + ar.alarm_type as alarmType, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + ar.DEVCODE as devcode, + aj.JOB_STATUS as jobStatus, + ar.JOB_ID as jobId, + bwi.DEPTID AS deptid + + + + + ar.ID as id, + ar.WELL_CODE as "wellCode", + ar.ALARM_CONTENT as "alarmContentName", + ar.DEVICE_ID as "deviceId", + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS "alarmTime", + ar.STATUS as "status", + ar.alarm_type as "alarmType", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + ar.DEVCODE as devcode, + aj.JOB_STATUS as "jobStatus", + ar.JOB_ID as "jobId", + bwi.DEPTID AS deptid + + + - - + + - UPDATE alarm_job aj, alarm_records ar + UPDATE alarm_records + SET status = 2 + WHERE ID = #{id} + + + + update alarm_job - aj.job_status = #{jobStatus} , - aj.handle_job_person = #{personId}, - aj.job_belong_to = #{personId}, - aj.handle_job_time = now(), - aj.handle_message = #{handleMessage}, - ar.status = 2 + job_status = #{jobStatus} , + handle_job_person = #{personId}, + job_belong_to = #{personId}, + handle_job_time = now(), + handle_message = #{handleMessage}, - WHERE aj.ID = ar.job_id - AND aj.ID = #{id} + WHERE ID=( + SELECT JOB_ID + FROM alarm_records + WHERE ID=#{id} + ) diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml index 4743d51..bbec5ff 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -4,17 +4,28 @@ - - - - - - - - - + + + + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + ID AS id, DEVCODE AS devcode, HIGHVALUE AS highvalue, LOWVALUE AS lowvalue, OVERTIME AS overtime, SALTATION AS saltation, SENSORCODE AS sensorcode, GRADE AS grade, TS AS ts @@ -34,21 +45,37 @@ - + SELECT ar.ID as id,ar.HIGHVALUE as "highValue",ar.LOWVALUE as "lowValue", + bd.ID AS "devId",bd.DEVCODE as "devcode", + bd.DEVICE_TYPE as "deviceType",bwi.ID AS "wellId",bwi.WELL_NAME as "wellName", + COALESCE (ar.OPERATOR,'') AS user, + bwi.WELL_CODE as "wellCode",bwi.DEEP as deep,bwi.DEPTID as deptid, + COALESCE (,'') AS ts + FROM alarm_rule ar + LEFT JOIN bus_device bd ON ar.DEVCODE = bd.DEVCODE + LEFT JOIN bus_device_well bdw ON bd.ID = bdw.DEVICE_ID + LEFT JOIN bus_well_info bwi ON bdw.WELL_ID = bwi.ID + WHERE bd.VALID = '1' AND bdw.VALID ='1' - AND (ar.DEVCODE LIKE concat(CONCAT('%',#{keywords}),'%') - OR bwi.WELL_CODE LIKE concat(CONCAT('%',#{keywords}),'%') ) + AND (ar.DEVCODE LIKE + + OR bwi.WELL_CODE LIKE + ) AND bd.DEVICE_TYPE= #{deviceType} @@ -71,13 +98,13 @@ WHERE ID=#{id} 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 2fa12b0..0a71551 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 @@ -2,11 +2,35 @@ + + + A.wellCount , + A.deptid, + SD.simplename as deptName, + SD.pid + + + A.wellCount , + A.deptid, + SD.simplename as deptName, + SD.pid + + + A.wellCount , + A.deptid, + SD.simplename as "deptName", + SD.pid + + + + + + SELECT - COUNT( 1 ) AS wellCount, - WELL_TYPE AS wellType + COUNT( 1 ) AS "wellCount", + WELL_TYPE AS "wellType" FROM bus_well_info WHERE VALID = '1' AND DEPTID IN (${deptIds}) GROUP BY WELL_TYPE - + - + - + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi:ss') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi:ss') + + + + ifnull(SUM(IF(BD.ONLINE_STATE=${numberStatus},1,0)),0) + + + + COALESCE(SUM(CASE WHEN BD.ONLINE_STATE=${numberStatus} THEN 1 ELSE 0 END)) + + + + COALESCE(SUM(IF(BD.ONLINE_STATE=${numberStatus},1,0)),0) + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(CASE WHEN job_status=${numberStatus} THEN 1 ELSE 0 END)) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + + + + + + + + + + + + - + SELECT - ifnull(SUM(IF(job_status='0',1,0)),0) AS beforeGet, - ifnull(SUM(IF(job_status='1',1,0)),0) AS beforeConfirm, - ifnull(SUM(IF(job_status='2',1,0)),0) AS inHandle, - ifnull(SUM(IF(job_status='3',1,0)),0) AS 'over', - ifnull(SUM(IF(job_status='4',1,0)),0) AS cancel + + + + AS "beforeGet", + + + + AS "beforeConfirm", + + + + AS "inHandle", + + + + AS "over", + + + + AS cancel FROM alarm_job aj INNER JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE INNER JOIN bus_device bd ON aj.DEVCODE = bd.DEVCODE @@ -104,11 +238,19 @@ AND bwi.DEPTID IN (${deptIds}) - AND aj.CREATE_TIME ]]> #{beginTime} - AND aj.CREATE_TIME DATE_ADD( #{endTime}, INTERVAL 1 DAY ) + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml index 2a702c0..7a9c269 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml @@ -4,12 +4,12 @@ - - - - - - + + + + + + @@ -27,18 +27,18 @@ - SELECT * FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND name = #{typeName} ) ; - SELECT * FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) ; - SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = 'alarmType' ) @@ -46,15 +46,15 @@ - + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = 'jobStatus' ) AND code = #{jobStatus}; - + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) AND code = #{codeNum}; @@ -64,8 +64,9 @@ - + SELECT id as value,alarm_content as name ,alarm_type as "alarmType",device_type as "deviceType" + FROM base_alarm_content_type WHERE alarm_type = #{alarmType} AND device_type= #{deviceType} @@ -84,7 +85,7 @@ + + + DATE_FORMAT(now(),'%Y-%m-%d %H:%i:%s') + + + + TO_CHAR(now(),'yyyy-mm-dd hh24:mi:ss') + + + + TO_CHAR(sysdate,'yyyy-mm-dd hh24:mi:ss') + + diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml index f4a17d3..fce044c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml @@ -34,7 +34,7 @@ SELECT b.SENSORCODE AS SENSORCODE FROM base_sensor b LEFT JOIN bus_device d ON b.DEVICE_TYPE=d.DEVICE_TYPE - WHERE d.VALID = 1 + WHERE d.VALID = '1' and d.DEVCODE = diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java index 5c823d6..565de23 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java @@ -38,7 +38,7 @@ deviceRule.setSensorcode(getSensorCodeByDevCode(devCode)); deviceRule.setTs(new Date()); deviceRule.setOperator( permissionService.getAuthService().getLoginUser().getAccount()); - save(deviceRule); + this.baseMapper.insert(deviceRule); } public List getDeviceRuleListByDevCode(String devCode) { diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java new file mode 100644 index 0000000..c9cf49a --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class RecordExcelDto { + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("权属单位") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警等级") + private String alarmLevel; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("告警时间") + private String logTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java index 5f47018..d49386c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java @@ -37,7 +37,7 @@ List> jobListSearchApp(Page> page, JobListParam jobListParam, Long deptId, Long userId, Long leaderId); - List> jobInfo(int id, DataScope dataScope, Long personId); + List> jobInfo(Long id, DataScope dataScope, Long personId); boolean getJob(int id, long personId); @@ -51,7 +51,7 @@ boolean overAlarm(int id); - boolean handleJob(int id, long personId); + boolean handleJob(Long id, long personId); Map countByJobStatus(long deptId, int spanDays); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java index 267fff5..8a5b270 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java @@ -22,5 +22,5 @@ List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent,String beginTime, String endTime); - boolean cancelAlarm(int id,String jobStatus, String handleMessage, long personId); + boolean cancelAlarm(Long id,String jobStatus, String handleMessage, long personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java index 5ef681b..c52630c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java @@ -144,7 +144,7 @@ } @Override - public List> jobInfo(int id, DataScope dataScope, Long personId) { + public List> jobInfo(Long id, DataScope dataScope, Long personId) { List> job = this.baseMapper.jobInfo(id, dataScope, personId); return job; } @@ -232,7 +232,7 @@ } @Override - public boolean handleJob(int id, long personId) { + public boolean handleJob(Long id, long personId) { return this.baseMapper.handleJob(id, personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index 2f9b8d1..d2cc7f1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -16,7 +16,7 @@ /** *

- * 服务实现类 + * 服务实现类 *

* * @author casic123 @@ -27,12 +27,12 @@ @Override - public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { + public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmList(page,keywords,beginTime,endTime,status,alarmType,sContent,dataScope); + return this.baseMapper.alarmList(page, keywords, beginTime, endTime, status, alarmType, sContent, dataScope); } /** @@ -41,15 +41,15 @@ @Override public List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent, String beginTime, String endTime) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmListNoPage(dataScope,keywords,alarmType,sContent,beginTime,endTime); + return this.baseMapper.alarmListNoPage(dataScope, keywords, alarmType, sContent, beginTime, endTime); } @Override - public boolean cancelAlarm(int id, String jobStatus, String handleMessage, long personId) { - return this.baseMapper.cancelAlarm(id,jobStatus,handleMessage,personId); + public boolean cancelAlarm(Long id, String jobStatus, String handleMessage, long personId) { + return this.baseMapper.cancelAlarm(id) && this.baseMapper.closeJob(id, jobStatus, handleMessage, personId); } } 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 d3bd513..5ea6d1c 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,5 +1,6 @@ package com.casic.missiles.modular.alarm.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; @@ -26,27 +27,27 @@ 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(String alarmType, String devType) { + 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/dao/AlarmJobMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java index 958a1ad..57d3173 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java @@ -48,7 +48,7 @@ Map countMyJob(@Param("userId") long userId, @Param("deptId") long deptId, @Param("spanDays") int spanDays); - List> jobInfo(@Param("id") int id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); + List> jobInfo(@Param("id") Long id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); // boolean getJob(@Param("id") int id,@Param("personId") long personId); boolean getJob(@Param("id") int id, @Param("personId") long personId, @Param("getTime") Date getTime, @Param("shouldHandleTime") Date shouldHandleTime); @@ -71,7 +71,7 @@ boolean overJobAlarmRecrds(@Param("id") int id); - boolean handleJob(@Param("id") int id, @Param("personId") long personId); + boolean handleJob(@Param("id") Long id, @Param("personId") long personId); List> countByDataScope(@Param("dataScope") DataScope dataScope, @Param("alarmType") String alarmType, @Param("jobStatus") String jobStatus, @Param("beginTime") String beginTime, @Param("endTime") String endTime); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java index 3874bfa..4b34b3c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -11,7 +11,7 @@ /** *

- * Mapper 接口 + * Mapper 接口 *

* * @author casic123 @@ -19,9 +19,12 @@ */ public interface AlarmRecordsMapper extends BaseMapper { - List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent,@Param("dataScope") DataScope dataScope); + List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("dataScope") DataScope dataScope); List alarmListNoPage(@Param("scope") DataScope dataScope, @Param("keywords") String keywords, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("beginTime") String beginTime, @Param("endTime") String endTime); - boolean cancelAlarm(@Param("id") int id,@Param("jobStatus")String jobStatus,@Param("handleMessage") String handleMessage,@Param("personId") long personId); + boolean cancelAlarm(@Param("id") Long id); + + boolean closeJob(@Param("id") Long id, @Param("jobStatus") String jobStatus, @Param("handleMessage") String handleMessage, @Param("personId") long personId); + } 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 9d7506f..c12b51d 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 @@ -22,7 +22,7 @@ List> getTypeViaCode(@Param("code") String code); List> getAlarmContent(@Param("alarmType") String alarmType,@Param("deviceType") String devType); List> testPage(@Param("page") Page> page); - String getDeviceTypeNameById(@Param("deviceTypeId") String deviceTypeId); + String getDeviceTypeNameById(@Param("deviceTypeId") Long deviceTypeId); String getDeptNameById(@Param("deptid") long deptid); String getAlarmTypeNameByCodeNum(@Param("alarmType") String alarmType); String getAlarmContentName(@Param("id") int id); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml index b279d9a..401a28a 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml @@ -24,40 +24,132 @@ + + DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + ifnull(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + + + + + + AND date_part('day',now()-aj.create_time) ${paramDay} + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + - ID AS id, JOBCODE AS jobcode, JOG_TYPE AS jogType, - WELL_CODE AS wellCode, DEVCODE AS devcode, DATE_FORMAT(CREATE_TIME,'%Y-%m-%d %H:%i:%s') AS createTime, - JOB_STATUS AS jobStatus, GET_JOB_PERSON AS getJobPerson, - DATE_FORMAT(GET_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS getJobTime, FIRST_STATE AS firstState, - FIRST_STATE_PHOTOS AS firstStatePhotos, CONFIRM_JOB_PERSON AS confirmJobPerson, - DATE_FORMAT(CONFRIM_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS confrimJobTime, HANDLE_JOB_Person AS handleJobPerson, - DATE_FORMAT(HANDLE_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS handleJobTime, HANDLE_MESSAGE AS handleMessage, - HANDLE_PHOTOS AS handlePhotos, FLOW AS flow - - - - - DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i:%S') - - - - to_date(${paramTime},'yyyy-MM-dd HH24:mi:ss') - - - - to_char(${paramTime},'yyyy-mm-dd hh24:mi:ss') + ID AS id, JOBCODE AS "jobcode", JOG_TYPE AS "jogType", + WELL_CODE AS "wellCode", DEVCODE AS "devcode", + + + + AS "createTime", + JOB_STATUS AS "jobStatus", GET_JOB_PERSON AS "getJobPerson", + + + + AS "getJobTime", FIRST_STATE AS "firstState", + FIRST_STATE_PHOTOS AS "firstStatePhotos", CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confrimJobTime", HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "handleJobTime", HANDLE_MESSAGE AS "handleMessage", + HANDLE_PHOTOS AS "handlePhotos", FLOW AS flow + - SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS deptId + SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS "deptId" FROM alarm_job aj LEFT JOIN alarm_records ar ON ar.JOB_ID = aj.ID LEFT JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE @@ -150,11 +273,19 @@
- AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -179,11 +310,19 @@
- AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -207,47 +346,181 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + - - ar.id as alarmId, - aj.DEVCODE as devcode, - aj.WELL_CODE as wellCode, - ar.ALARM_TYPE as alarmType, - ar.ALARM_CONTENT as alarmContentName, - ar.STATUS as alarmStatus, - aj.ID as id, - aj.ID as jobId, - aj.JOG_TYPE as jobType, - aj.JOBCODE as jobCode, - aj.JOB_STATUS as jobStatus, - aj.JOB_BELONG_TO as jobBelongTo, + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, ar.ALARM_VALUE AS alarmValue, ar.ALARM_LEVEL AS alarmLevel, ar.ALARM_MSG AS alarmMessage, - TO_CHAR(aj.CREATE_TIME,'yyyy-MM-dd HH24:mi:ss') as createTime, - TO_CHAR(ar.ALARM_TIME,'yyyy-MM-dd HH24:mi:ss') as alarmTime, - aj.GET_JOB_PERSON as getJobPerson, - TO_CHAR(aj.SHOULD_GET_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldGetTime, - TO_CHAR(aj.GET_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as getJobTime, - aj.CONFIRM_JOB_PERSON as confirmJobPerson, - TO_CHAR(aj.CONFRIM_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as confirmJobTime, - aj.HANDLE_JOB_Person as handleJobPerson, - TO_CHAR(aj.SHOULD_HANDLE_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldHandleTime, - TO_CHAR(aj.HANDLE_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as handleJobTime, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, aj.JOB_FLAG_1 AS jobFlag, bwi.RESPONSIBLE_DEPT AS deptid + + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, + aj.JOB_FLAG_1 AS jobFlag, + bwi.RESPONSIBLE_DEPT AS deptid + + + + + ar.id AS "alarmId", + aj.DEVCODE AS devcode, + aj.WELL_CODE AS "wellCode", + ar.ALARM_TYPE AS "alarmType", + ar.ALARM_CONTENT AS "alarmContentName", + ar.STATUS AS "alarmStatus", + aj.ID AS id, + aj.ID AS "jobId", + aj.JOG_TYPE AS "jobType", + aj.JOBCODE AS "jobCode", + aj.JOB_STATUS AS "jobStatus", + aj.JOB_BELONG_TO AS "jobBelongTo", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + + + + AS "createTime", + + + + AS "alarmTime", + aj.GET_JOB_PERSON AS "getJobPerson", + + + + AS "shouldGetTime", + + + + AS "getJobTime", + aj.CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confirmJobTime", + aj.HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "shouldHandleTime", + + + + AS "handleJobTime", + aj.JOB_FLAG_1 AS "jobFlag", + bwi.RESPONSIBLE_DEPT AS deptid + + + @@ -298,7 +573,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -308,11 +584,19 @@ - AND aj.CREATE_TIME = ]]> #{beginTime} - AND aj.CREATE_TIME #{endTime} + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -350,14 +634,9 @@ WHERE ar.JOB_ID > 0 AND bwi.VALID = '1' AND aj.JOB_STATUS = '0' AND aj.JOB_FLAG_DELAY = '1' - - - - - - - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -367,11 +646,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -389,7 +676,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.responsible_dept = #{deptId} - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -399,11 +687,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -419,13 +715,20 @@ AND ( aj.JOB_STATUS = '1' OR aj.JOB_STATUS = '2') AND aj.JOB_FLAG_DELAY = '2' - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -449,18 +752,19 @@ AND bwi.responsible_dept = #{deptId} AND aj.CREATE_TIME = ]]> - - + + AND aj.CREATE_TIME - - + + - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -492,7 +796,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{jobListParam.keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{jobListParam.alarmLevel} @@ -504,34 +809,64 @@ AND aj.JOB_STATUS = #{jobListParam.jobStatus} - AND aj.CREATE_TIME = ]]> #{jobListParam.beginTime} + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME #{jobListParam.endTime} + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{jobListParam.getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{jobListParam.getJobEndTime} + AND aj.GET_JOB_TIME + + + - AND aj.SHOULD_GET_TIME = ]]> #{jobListParam.shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{jobListParam.shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{jobListParam.handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{jobListParam.handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{jobListParam.shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{jobListParam.shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -549,7 +884,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{alarmLevel} @@ -558,36 +894,63 @@ AND ar.ALARM_CONTENT = #{alarmContent} - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{getJobEndTime} - - + + + - AND aj.SHOULD_GET_TIME = ]]> #{shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -618,50 +981,73 @@ - + @@ -761,7 +1147,7 @@ - SELECT FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + SELECT + + FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + + + DATE_FORMAT(alarmTimeDate,'%Y-%m-%d %H:%i') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml index d9cfd1e..d686954 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -4,18 +4,18 @@ - - - - - - - - + + + + + + + + - - - + + + @@ -23,11 +23,34 @@ ID AS id, DEVICE_ID AS deviceId, DEVCODE AS devcode, WELL_CODE AS wellCode, ALARM_TYPE AS alarmType, ALARM_CONTENT AS alarmContent, ALARM_VALUE AS alarmValue, ALARM_TIME AS alarmTime, STATUS AS status, JOB_ID AS jobId - + + ${paramStr} + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + + ar.ID as id, ar.WELL_CODE as wellCode, ar.ALARM_CONTENT as alarmContentName, - DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i:%s') as alarmTime, + DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i') + AS alarmTime, ar.DEVICE_ID as deviceId, ar.STATUS as status, ar.alarm_type as alarmType, @@ -40,6 +63,44 @@ bwi.DEPTID AS deptid + + ar.ID as id, + ar.WELL_CODE as wellCode, + ar.ALARM_CONTENT as alarmContentName, + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS alarmTime, + ar.DEVICE_ID as deviceId, + ar.STATUS as status, + ar.alarm_type as alarmType, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + ar.DEVCODE as devcode, + aj.JOB_STATUS as jobStatus, + ar.JOB_ID as jobId, + bwi.DEPTID AS deptid + + + + + ar.ID as id, + ar.WELL_CODE as "wellCode", + ar.ALARM_CONTENT as "alarmContentName", + ar.DEVICE_ID as "deviceId", + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS "alarmTime", + ar.STATUS as "status", + ar.alarm_type as "alarmType", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + ar.DEVCODE as devcode, + aj.JOB_STATUS as "jobStatus", + ar.JOB_ID as "jobId", + bwi.DEPTID AS deptid + + + - - + + - UPDATE alarm_job aj, alarm_records ar + UPDATE alarm_records + SET status = 2 + WHERE ID = #{id} + + + + update alarm_job - aj.job_status = #{jobStatus} , - aj.handle_job_person = #{personId}, - aj.job_belong_to = #{personId}, - aj.handle_job_time = now(), - aj.handle_message = #{handleMessage}, - ar.status = 2 + job_status = #{jobStatus} , + handle_job_person = #{personId}, + job_belong_to = #{personId}, + handle_job_time = now(), + handle_message = #{handleMessage}, - WHERE aj.ID = ar.job_id - AND aj.ID = #{id} + WHERE ID=( + SELECT JOB_ID + FROM alarm_records + WHERE ID=#{id} + ) diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml index 4743d51..bbec5ff 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -4,17 +4,28 @@ - - - - - - - - - + + + + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + ID AS id, DEVCODE AS devcode, HIGHVALUE AS highvalue, LOWVALUE AS lowvalue, OVERTIME AS overtime, SALTATION AS saltation, SENSORCODE AS sensorcode, GRADE AS grade, TS AS ts @@ -34,21 +45,37 @@ - + SELECT ar.ID as id,ar.HIGHVALUE as "highValue",ar.LOWVALUE as "lowValue", + bd.ID AS "devId",bd.DEVCODE as "devcode", + bd.DEVICE_TYPE as "deviceType",bwi.ID AS "wellId",bwi.WELL_NAME as "wellName", + COALESCE (ar.OPERATOR,'') AS user, + bwi.WELL_CODE as "wellCode",bwi.DEEP as deep,bwi.DEPTID as deptid, + COALESCE (,'') AS ts + FROM alarm_rule ar + LEFT JOIN bus_device bd ON ar.DEVCODE = bd.DEVCODE + LEFT JOIN bus_device_well bdw ON bd.ID = bdw.DEVICE_ID + LEFT JOIN bus_well_info bwi ON bdw.WELL_ID = bwi.ID + WHERE bd.VALID = '1' AND bdw.VALID ='1' - AND (ar.DEVCODE LIKE concat(CONCAT('%',#{keywords}),'%') - OR bwi.WELL_CODE LIKE concat(CONCAT('%',#{keywords}),'%') ) + AND (ar.DEVCODE LIKE + + OR bwi.WELL_CODE LIKE + ) AND bd.DEVICE_TYPE= #{deviceType} @@ -71,13 +98,13 @@ WHERE ID=#{id} 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 2fa12b0..0a71551 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 @@ -2,11 +2,35 @@ + + + A.wellCount , + A.deptid, + SD.simplename as deptName, + SD.pid + + + A.wellCount , + A.deptid, + SD.simplename as deptName, + SD.pid + + + A.wellCount , + A.deptid, + SD.simplename as "deptName", + SD.pid + + + + + + SELECT - COUNT( 1 ) AS wellCount, - WELL_TYPE AS wellType + COUNT( 1 ) AS "wellCount", + WELL_TYPE AS "wellType" FROM bus_well_info WHERE VALID = '1' AND DEPTID IN (${deptIds}) GROUP BY WELL_TYPE - + - + - + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi:ss') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi:ss') + + + + ifnull(SUM(IF(BD.ONLINE_STATE=${numberStatus},1,0)),0) + + + + COALESCE(SUM(CASE WHEN BD.ONLINE_STATE=${numberStatus} THEN 1 ELSE 0 END)) + + + + COALESCE(SUM(IF(BD.ONLINE_STATE=${numberStatus},1,0)),0) + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(CASE WHEN job_status=${numberStatus} THEN 1 ELSE 0 END)) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + + + + + + + + + + + + - + SELECT - ifnull(SUM(IF(job_status='0',1,0)),0) AS beforeGet, - ifnull(SUM(IF(job_status='1',1,0)),0) AS beforeConfirm, - ifnull(SUM(IF(job_status='2',1,0)),0) AS inHandle, - ifnull(SUM(IF(job_status='3',1,0)),0) AS 'over', - ifnull(SUM(IF(job_status='4',1,0)),0) AS cancel + + + + AS "beforeGet", + + + + AS "beforeConfirm", + + + + AS "inHandle", + + + + AS "over", + + + + AS cancel FROM alarm_job aj INNER JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE INNER JOIN bus_device bd ON aj.DEVCODE = bd.DEVCODE @@ -104,11 +238,19 @@ AND bwi.DEPTID IN (${deptIds}) - AND aj.CREATE_TIME ]]> #{beginTime} - AND aj.CREATE_TIME DATE_ADD( #{endTime}, INTERVAL 1 DAY ) + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml index 2a702c0..7a9c269 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml @@ -4,12 +4,12 @@ - - - - - - + + + + + + @@ -27,18 +27,18 @@ - SELECT * FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND name = #{typeName} ) ; - SELECT * FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) ; - SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = 'alarmType' ) @@ -46,15 +46,15 @@ - + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = 'jobStatus' ) AND code = #{jobStatus}; - + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) AND code = #{codeNum}; @@ -64,8 +64,9 @@ - + SELECT id as value,alarm_content as name ,alarm_type as "alarmType",device_type as "deviceType" + FROM base_alarm_content_type WHERE alarm_type = #{alarmType} AND device_type= #{deviceType} @@ -84,7 +85,7 @@ + + + DATE_FORMAT(now(),'%Y-%m-%d %H:%i:%s') + + + + TO_CHAR(now(),'yyyy-mm-dd hh24:mi:ss') + + + + TO_CHAR(sysdate,'yyyy-mm-dd hh24:mi:ss') + + diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml index f4a17d3..fce044c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml @@ -34,7 +34,7 @@ SELECT b.SENSORCODE AS SENSORCODE FROM base_sensor b LEFT JOIN bus_device d ON b.DEVICE_TYPE=d.DEVICE_TYPE - WHERE d.VALID = 1 + WHERE d.VALID = '1' and d.DEVCODE = diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java index 5c823d6..565de23 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java @@ -38,7 +38,7 @@ deviceRule.setSensorcode(getSensorCodeByDevCode(devCode)); deviceRule.setTs(new Date()); deviceRule.setOperator( permissionService.getAuthService().getLoginUser().getAccount()); - save(deviceRule); + this.baseMapper.insert(deviceRule); } public List getDeviceRuleListByDevCode(String devCode) { diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java index aa09c1f..25e292b 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java @@ -20,8 +20,9 @@ NOISEDATA_EXPORT("noiseData.xlsx","noiseData.xlsx","噪声记录仪数据"), BUSCONCENTRATOR_EXPORT("busConcentrator.xlsx", "busConcentrator.xlsx", "集中器数据"), DEVICE_EXPORT("device.xlsx", "device.xlsx", "设备数据"), - LIQUIDGASDATA_EXPORT("gasLiquidData.xlsx", "gasLiquidData.xlsx", "燃气液位一体化数据"); - + LIQUIDGASDATA_EXPORT("gasLiquidData.xlsx", "gasLiquidData.xlsx", "燃气液位一体化数据"), + ALARMJOB_EXPORT("alarmJobData.xlsx", "alarmJobData.xlsx", "预警工单"), + ALARMRECORD_EXPORT("alarmRecordData.xlsx", "alarmRecordData.xlsx", "预警工单"); /** * 导出模板相对路径 */ diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java new file mode 100644 index 0000000..c9cf49a --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class RecordExcelDto { + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("权属单位") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警等级") + private String alarmLevel; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("告警时间") + private String logTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java index 5f47018..d49386c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java @@ -37,7 +37,7 @@ List> jobListSearchApp(Page> page, JobListParam jobListParam, Long deptId, Long userId, Long leaderId); - List> jobInfo(int id, DataScope dataScope, Long personId); + List> jobInfo(Long id, DataScope dataScope, Long personId); boolean getJob(int id, long personId); @@ -51,7 +51,7 @@ boolean overAlarm(int id); - boolean handleJob(int id, long personId); + boolean handleJob(Long id, long personId); Map countByJobStatus(long deptId, int spanDays); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java index 267fff5..8a5b270 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java @@ -22,5 +22,5 @@ List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent,String beginTime, String endTime); - boolean cancelAlarm(int id,String jobStatus, String handleMessage, long personId); + boolean cancelAlarm(Long id,String jobStatus, String handleMessage, long personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java index 5ef681b..c52630c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java @@ -144,7 +144,7 @@ } @Override - public List> jobInfo(int id, DataScope dataScope, Long personId) { + public List> jobInfo(Long id, DataScope dataScope, Long personId) { List> job = this.baseMapper.jobInfo(id, dataScope, personId); return job; } @@ -232,7 +232,7 @@ } @Override - public boolean handleJob(int id, long personId) { + public boolean handleJob(Long id, long personId) { return this.baseMapper.handleJob(id, personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index 2f9b8d1..d2cc7f1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -16,7 +16,7 @@ /** *

- * 服务实现类 + * 服务实现类 *

* * @author casic123 @@ -27,12 +27,12 @@ @Override - public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { + public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmList(page,keywords,beginTime,endTime,status,alarmType,sContent,dataScope); + return this.baseMapper.alarmList(page, keywords, beginTime, endTime, status, alarmType, sContent, dataScope); } /** @@ -41,15 +41,15 @@ @Override public List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent, String beginTime, String endTime) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmListNoPage(dataScope,keywords,alarmType,sContent,beginTime,endTime); + return this.baseMapper.alarmListNoPage(dataScope, keywords, alarmType, sContent, beginTime, endTime); } @Override - public boolean cancelAlarm(int id, String jobStatus, String handleMessage, long personId) { - return this.baseMapper.cancelAlarm(id,jobStatus,handleMessage,personId); + public boolean cancelAlarm(Long id, String jobStatus, String handleMessage, long personId) { + return this.baseMapper.cancelAlarm(id) && this.baseMapper.closeJob(id, jobStatus, handleMessage, personId); } } 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 d3bd513..5ea6d1c 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,5 +1,6 @@ package com.casic.missiles.modular.alarm.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; @@ -26,27 +27,27 @@ 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(String alarmType, String devType) { + 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/dao/AlarmJobMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java index 958a1ad..57d3173 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java @@ -48,7 +48,7 @@ Map countMyJob(@Param("userId") long userId, @Param("deptId") long deptId, @Param("spanDays") int spanDays); - List> jobInfo(@Param("id") int id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); + List> jobInfo(@Param("id") Long id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); // boolean getJob(@Param("id") int id,@Param("personId") long personId); boolean getJob(@Param("id") int id, @Param("personId") long personId, @Param("getTime") Date getTime, @Param("shouldHandleTime") Date shouldHandleTime); @@ -71,7 +71,7 @@ boolean overJobAlarmRecrds(@Param("id") int id); - boolean handleJob(@Param("id") int id, @Param("personId") long personId); + boolean handleJob(@Param("id") Long id, @Param("personId") long personId); List> countByDataScope(@Param("dataScope") DataScope dataScope, @Param("alarmType") String alarmType, @Param("jobStatus") String jobStatus, @Param("beginTime") String beginTime, @Param("endTime") String endTime); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java index 3874bfa..4b34b3c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -11,7 +11,7 @@ /** *

- * Mapper 接口 + * Mapper 接口 *

* * @author casic123 @@ -19,9 +19,12 @@ */ public interface AlarmRecordsMapper extends BaseMapper { - List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent,@Param("dataScope") DataScope dataScope); + List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("dataScope") DataScope dataScope); List alarmListNoPage(@Param("scope") DataScope dataScope, @Param("keywords") String keywords, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("beginTime") String beginTime, @Param("endTime") String endTime); - boolean cancelAlarm(@Param("id") int id,@Param("jobStatus")String jobStatus,@Param("handleMessage") String handleMessage,@Param("personId") long personId); + boolean cancelAlarm(@Param("id") Long id); + + boolean closeJob(@Param("id") Long id, @Param("jobStatus") String jobStatus, @Param("handleMessage") String handleMessage, @Param("personId") long personId); + } 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 9d7506f..c12b51d 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 @@ -22,7 +22,7 @@ List> getTypeViaCode(@Param("code") String code); List> getAlarmContent(@Param("alarmType") String alarmType,@Param("deviceType") String devType); List> testPage(@Param("page") Page> page); - String getDeviceTypeNameById(@Param("deviceTypeId") String deviceTypeId); + String getDeviceTypeNameById(@Param("deviceTypeId") Long deviceTypeId); String getDeptNameById(@Param("deptid") long deptid); String getAlarmTypeNameByCodeNum(@Param("alarmType") String alarmType); String getAlarmContentName(@Param("id") int id); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml index b279d9a..401a28a 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml @@ -24,40 +24,132 @@ + + DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + ifnull(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + + + + + + AND date_part('day',now()-aj.create_time) ${paramDay} + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + - ID AS id, JOBCODE AS jobcode, JOG_TYPE AS jogType, - WELL_CODE AS wellCode, DEVCODE AS devcode, DATE_FORMAT(CREATE_TIME,'%Y-%m-%d %H:%i:%s') AS createTime, - JOB_STATUS AS jobStatus, GET_JOB_PERSON AS getJobPerson, - DATE_FORMAT(GET_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS getJobTime, FIRST_STATE AS firstState, - FIRST_STATE_PHOTOS AS firstStatePhotos, CONFIRM_JOB_PERSON AS confirmJobPerson, - DATE_FORMAT(CONFRIM_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS confrimJobTime, HANDLE_JOB_Person AS handleJobPerson, - DATE_FORMAT(HANDLE_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS handleJobTime, HANDLE_MESSAGE AS handleMessage, - HANDLE_PHOTOS AS handlePhotos, FLOW AS flow - - - - - DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i:%S') - - - - to_date(${paramTime},'yyyy-MM-dd HH24:mi:ss') - - - - to_char(${paramTime},'yyyy-mm-dd hh24:mi:ss') + ID AS id, JOBCODE AS "jobcode", JOG_TYPE AS "jogType", + WELL_CODE AS "wellCode", DEVCODE AS "devcode", + + + + AS "createTime", + JOB_STATUS AS "jobStatus", GET_JOB_PERSON AS "getJobPerson", + + + + AS "getJobTime", FIRST_STATE AS "firstState", + FIRST_STATE_PHOTOS AS "firstStatePhotos", CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confrimJobTime", HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "handleJobTime", HANDLE_MESSAGE AS "handleMessage", + HANDLE_PHOTOS AS "handlePhotos", FLOW AS flow + - SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS deptId + SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS "deptId" FROM alarm_job aj LEFT JOIN alarm_records ar ON ar.JOB_ID = aj.ID LEFT JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE @@ -150,11 +273,19 @@
- AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -179,11 +310,19 @@
- AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -207,47 +346,181 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + - - ar.id as alarmId, - aj.DEVCODE as devcode, - aj.WELL_CODE as wellCode, - ar.ALARM_TYPE as alarmType, - ar.ALARM_CONTENT as alarmContentName, - ar.STATUS as alarmStatus, - aj.ID as id, - aj.ID as jobId, - aj.JOG_TYPE as jobType, - aj.JOBCODE as jobCode, - aj.JOB_STATUS as jobStatus, - aj.JOB_BELONG_TO as jobBelongTo, + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, ar.ALARM_VALUE AS alarmValue, ar.ALARM_LEVEL AS alarmLevel, ar.ALARM_MSG AS alarmMessage, - TO_CHAR(aj.CREATE_TIME,'yyyy-MM-dd HH24:mi:ss') as createTime, - TO_CHAR(ar.ALARM_TIME,'yyyy-MM-dd HH24:mi:ss') as alarmTime, - aj.GET_JOB_PERSON as getJobPerson, - TO_CHAR(aj.SHOULD_GET_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldGetTime, - TO_CHAR(aj.GET_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as getJobTime, - aj.CONFIRM_JOB_PERSON as confirmJobPerson, - TO_CHAR(aj.CONFRIM_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as confirmJobTime, - aj.HANDLE_JOB_Person as handleJobPerson, - TO_CHAR(aj.SHOULD_HANDLE_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldHandleTime, - TO_CHAR(aj.HANDLE_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as handleJobTime, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, aj.JOB_FLAG_1 AS jobFlag, bwi.RESPONSIBLE_DEPT AS deptid + + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, + aj.JOB_FLAG_1 AS jobFlag, + bwi.RESPONSIBLE_DEPT AS deptid + + + + + ar.id AS "alarmId", + aj.DEVCODE AS devcode, + aj.WELL_CODE AS "wellCode", + ar.ALARM_TYPE AS "alarmType", + ar.ALARM_CONTENT AS "alarmContentName", + ar.STATUS AS "alarmStatus", + aj.ID AS id, + aj.ID AS "jobId", + aj.JOG_TYPE AS "jobType", + aj.JOBCODE AS "jobCode", + aj.JOB_STATUS AS "jobStatus", + aj.JOB_BELONG_TO AS "jobBelongTo", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + + + + AS "createTime", + + + + AS "alarmTime", + aj.GET_JOB_PERSON AS "getJobPerson", + + + + AS "shouldGetTime", + + + + AS "getJobTime", + aj.CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confirmJobTime", + aj.HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "shouldHandleTime", + + + + AS "handleJobTime", + aj.JOB_FLAG_1 AS "jobFlag", + bwi.RESPONSIBLE_DEPT AS deptid + + + @@ -298,7 +573,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -308,11 +584,19 @@ - AND aj.CREATE_TIME = ]]> #{beginTime} - AND aj.CREATE_TIME #{endTime} + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -350,14 +634,9 @@ WHERE ar.JOB_ID > 0 AND bwi.VALID = '1' AND aj.JOB_STATUS = '0' AND aj.JOB_FLAG_DELAY = '1' - - - - - - - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -367,11 +646,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -389,7 +676,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.responsible_dept = #{deptId} - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -399,11 +687,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -419,13 +715,20 @@ AND ( aj.JOB_STATUS = '1' OR aj.JOB_STATUS = '2') AND aj.JOB_FLAG_DELAY = '2' - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -449,18 +752,19 @@ AND bwi.responsible_dept = #{deptId} AND aj.CREATE_TIME = ]]> - - + + AND aj.CREATE_TIME - - + + - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -492,7 +796,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{jobListParam.keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{jobListParam.alarmLevel} @@ -504,34 +809,64 @@ AND aj.JOB_STATUS = #{jobListParam.jobStatus} - AND aj.CREATE_TIME = ]]> #{jobListParam.beginTime} + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME #{jobListParam.endTime} + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{jobListParam.getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{jobListParam.getJobEndTime} + AND aj.GET_JOB_TIME + + + - AND aj.SHOULD_GET_TIME = ]]> #{jobListParam.shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{jobListParam.shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{jobListParam.handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{jobListParam.handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{jobListParam.shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{jobListParam.shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -549,7 +884,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{alarmLevel} @@ -558,36 +894,63 @@ AND ar.ALARM_CONTENT = #{alarmContent} - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{getJobEndTime} - - + + + - AND aj.SHOULD_GET_TIME = ]]> #{shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -618,50 +981,73 @@ - + @@ -761,7 +1147,7 @@ - SELECT FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + SELECT + + FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + + + DATE_FORMAT(alarmTimeDate,'%Y-%m-%d %H:%i') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml index d9cfd1e..d686954 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -4,18 +4,18 @@ - - - - - - - - + + + + + + + + - - - + + + @@ -23,11 +23,34 @@ ID AS id, DEVICE_ID AS deviceId, DEVCODE AS devcode, WELL_CODE AS wellCode, ALARM_TYPE AS alarmType, ALARM_CONTENT AS alarmContent, ALARM_VALUE AS alarmValue, ALARM_TIME AS alarmTime, STATUS AS status, JOB_ID AS jobId - + + ${paramStr} + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + + ar.ID as id, ar.WELL_CODE as wellCode, ar.ALARM_CONTENT as alarmContentName, - DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i:%s') as alarmTime, + DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i') + AS alarmTime, ar.DEVICE_ID as deviceId, ar.STATUS as status, ar.alarm_type as alarmType, @@ -40,6 +63,44 @@ bwi.DEPTID AS deptid + + ar.ID as id, + ar.WELL_CODE as wellCode, + ar.ALARM_CONTENT as alarmContentName, + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS alarmTime, + ar.DEVICE_ID as deviceId, + ar.STATUS as status, + ar.alarm_type as alarmType, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + ar.DEVCODE as devcode, + aj.JOB_STATUS as jobStatus, + ar.JOB_ID as jobId, + bwi.DEPTID AS deptid + + + + + ar.ID as id, + ar.WELL_CODE as "wellCode", + ar.ALARM_CONTENT as "alarmContentName", + ar.DEVICE_ID as "deviceId", + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS "alarmTime", + ar.STATUS as "status", + ar.alarm_type as "alarmType", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + ar.DEVCODE as devcode, + aj.JOB_STATUS as "jobStatus", + ar.JOB_ID as "jobId", + bwi.DEPTID AS deptid + + + - - + + - UPDATE alarm_job aj, alarm_records ar + UPDATE alarm_records + SET status = 2 + WHERE ID = #{id} + + + + update alarm_job - aj.job_status = #{jobStatus} , - aj.handle_job_person = #{personId}, - aj.job_belong_to = #{personId}, - aj.handle_job_time = now(), - aj.handle_message = #{handleMessage}, - ar.status = 2 + job_status = #{jobStatus} , + handle_job_person = #{personId}, + job_belong_to = #{personId}, + handle_job_time = now(), + handle_message = #{handleMessage}, - WHERE aj.ID = ar.job_id - AND aj.ID = #{id} + WHERE ID=( + SELECT JOB_ID + FROM alarm_records + WHERE ID=#{id} + ) diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml index 4743d51..bbec5ff 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -4,17 +4,28 @@ - - - - - - - - - + + + + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + ID AS id, DEVCODE AS devcode, HIGHVALUE AS highvalue, LOWVALUE AS lowvalue, OVERTIME AS overtime, SALTATION AS saltation, SENSORCODE AS sensorcode, GRADE AS grade, TS AS ts @@ -34,21 +45,37 @@ - + SELECT ar.ID as id,ar.HIGHVALUE as "highValue",ar.LOWVALUE as "lowValue", + bd.ID AS "devId",bd.DEVCODE as "devcode", + bd.DEVICE_TYPE as "deviceType",bwi.ID AS "wellId",bwi.WELL_NAME as "wellName", + COALESCE (ar.OPERATOR,'') AS user, + bwi.WELL_CODE as "wellCode",bwi.DEEP as deep,bwi.DEPTID as deptid, + COALESCE (,'') AS ts + FROM alarm_rule ar + LEFT JOIN bus_device bd ON ar.DEVCODE = bd.DEVCODE + LEFT JOIN bus_device_well bdw ON bd.ID = bdw.DEVICE_ID + LEFT JOIN bus_well_info bwi ON bdw.WELL_ID = bwi.ID + WHERE bd.VALID = '1' AND bdw.VALID ='1' - AND (ar.DEVCODE LIKE concat(CONCAT('%',#{keywords}),'%') - OR bwi.WELL_CODE LIKE concat(CONCAT('%',#{keywords}),'%') ) + AND (ar.DEVCODE LIKE + + OR bwi.WELL_CODE LIKE + ) AND bd.DEVICE_TYPE= #{deviceType} @@ -71,13 +98,13 @@ WHERE ID=#{id} 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 2fa12b0..0a71551 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 @@ -2,11 +2,35 @@ + + + A.wellCount , + A.deptid, + SD.simplename as deptName, + SD.pid + + + A.wellCount , + A.deptid, + SD.simplename as deptName, + SD.pid + + + A.wellCount , + A.deptid, + SD.simplename as "deptName", + SD.pid + + + + + + SELECT - COUNT( 1 ) AS wellCount, - WELL_TYPE AS wellType + COUNT( 1 ) AS "wellCount", + WELL_TYPE AS "wellType" FROM bus_well_info WHERE VALID = '1' AND DEPTID IN (${deptIds}) GROUP BY WELL_TYPE - + - + - + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi:ss') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi:ss') + + + + ifnull(SUM(IF(BD.ONLINE_STATE=${numberStatus},1,0)),0) + + + + COALESCE(SUM(CASE WHEN BD.ONLINE_STATE=${numberStatus} THEN 1 ELSE 0 END)) + + + + COALESCE(SUM(IF(BD.ONLINE_STATE=${numberStatus},1,0)),0) + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(CASE WHEN job_status=${numberStatus} THEN 1 ELSE 0 END)) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + + + + + + + + + + + + - + SELECT - ifnull(SUM(IF(job_status='0',1,0)),0) AS beforeGet, - ifnull(SUM(IF(job_status='1',1,0)),0) AS beforeConfirm, - ifnull(SUM(IF(job_status='2',1,0)),0) AS inHandle, - ifnull(SUM(IF(job_status='3',1,0)),0) AS 'over', - ifnull(SUM(IF(job_status='4',1,0)),0) AS cancel + + + + AS "beforeGet", + + + + AS "beforeConfirm", + + + + AS "inHandle", + + + + AS "over", + + + + AS cancel FROM alarm_job aj INNER JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE INNER JOIN bus_device bd ON aj.DEVCODE = bd.DEVCODE @@ -104,11 +238,19 @@ AND bwi.DEPTID IN (${deptIds}) - AND aj.CREATE_TIME ]]> #{beginTime} - AND aj.CREATE_TIME DATE_ADD( #{endTime}, INTERVAL 1 DAY ) + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml index 2a702c0..7a9c269 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml @@ -4,12 +4,12 @@ - - - - - - + + + + + + @@ -27,18 +27,18 @@ - SELECT * FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND name = #{typeName} ) ; - SELECT * FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) ; - SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = 'alarmType' ) @@ -46,15 +46,15 @@ - + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = 'jobStatus' ) AND code = #{jobStatus}; - + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) AND code = #{codeNum}; @@ -64,8 +64,9 @@ - + SELECT id as value,alarm_content as name ,alarm_type as "alarmType",device_type as "deviceType" + FROM base_alarm_content_type WHERE alarm_type = #{alarmType} AND device_type= #{deviceType} @@ -84,7 +85,7 @@ + + + DATE_FORMAT(now(),'%Y-%m-%d %H:%i:%s') + + + + TO_CHAR(now(),'yyyy-mm-dd hh24:mi:ss') + + + + TO_CHAR(sysdate,'yyyy-mm-dd hh24:mi:ss') + + diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml index f4a17d3..fce044c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml @@ -34,7 +34,7 @@ SELECT b.SENSORCODE AS SENSORCODE FROM base_sensor b LEFT JOIN bus_device d ON b.DEVICE_TYPE=d.DEVICE_TYPE - WHERE d.VALID = 1 + WHERE d.VALID = '1' and d.DEVCODE = diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java index 5c823d6..565de23 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java @@ -38,7 +38,7 @@ deviceRule.setSensorcode(getSensorCodeByDevCode(devCode)); deviceRule.setTs(new Date()); deviceRule.setOperator( permissionService.getAuthService().getLoginUser().getAccount()); - save(deviceRule); + this.baseMapper.insert(deviceRule); } public List getDeviceRuleListByDevCode(String devCode) { diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java index aa09c1f..25e292b 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java @@ -20,8 +20,9 @@ NOISEDATA_EXPORT("noiseData.xlsx","noiseData.xlsx","噪声记录仪数据"), BUSCONCENTRATOR_EXPORT("busConcentrator.xlsx", "busConcentrator.xlsx", "集中器数据"), DEVICE_EXPORT("device.xlsx", "device.xlsx", "设备数据"), - LIQUIDGASDATA_EXPORT("gasLiquidData.xlsx", "gasLiquidData.xlsx", "燃气液位一体化数据"); - + LIQUIDGASDATA_EXPORT("gasLiquidData.xlsx", "gasLiquidData.xlsx", "燃气液位一体化数据"), + ALARMJOB_EXPORT("alarmJobData.xlsx", "alarmJobData.xlsx", "预警工单"), + ALARMRECORD_EXPORT("alarmRecordData.xlsx", "alarmRecordData.xlsx", "预警工单"); /** * 导出模板相对路径 */ diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeptPermission.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeptPermission.java index 6798b47..aad89b7 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeptPermission.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeptPermission.java @@ -62,6 +62,7 @@ * 使用地图(0百度,1高德,2arcgis) */ @TableField("MAP") + @JSONField(serialize = false) private String map; @TableField(exist = false) private List wellTypes; diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java new file mode 100644 index 0000000..c9cf49a --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class RecordExcelDto { + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("权属单位") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警等级") + private String alarmLevel; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("告警时间") + private String logTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java index 5f47018..d49386c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java @@ -37,7 +37,7 @@ List> jobListSearchApp(Page> page, JobListParam jobListParam, Long deptId, Long userId, Long leaderId); - List> jobInfo(int id, DataScope dataScope, Long personId); + List> jobInfo(Long id, DataScope dataScope, Long personId); boolean getJob(int id, long personId); @@ -51,7 +51,7 @@ boolean overAlarm(int id); - boolean handleJob(int id, long personId); + boolean handleJob(Long id, long personId); Map countByJobStatus(long deptId, int spanDays); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java index 267fff5..8a5b270 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java @@ -22,5 +22,5 @@ List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent,String beginTime, String endTime); - boolean cancelAlarm(int id,String jobStatus, String handleMessage, long personId); + boolean cancelAlarm(Long id,String jobStatus, String handleMessage, long personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java index 5ef681b..c52630c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java @@ -144,7 +144,7 @@ } @Override - public List> jobInfo(int id, DataScope dataScope, Long personId) { + public List> jobInfo(Long id, DataScope dataScope, Long personId) { List> job = this.baseMapper.jobInfo(id, dataScope, personId); return job; } @@ -232,7 +232,7 @@ } @Override - public boolean handleJob(int id, long personId) { + public boolean handleJob(Long id, long personId) { return this.baseMapper.handleJob(id, personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index 2f9b8d1..d2cc7f1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -16,7 +16,7 @@ /** *

- * 服务实现类 + * 服务实现类 *

* * @author casic123 @@ -27,12 +27,12 @@ @Override - public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { + public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmList(page,keywords,beginTime,endTime,status,alarmType,sContent,dataScope); + return this.baseMapper.alarmList(page, keywords, beginTime, endTime, status, alarmType, sContent, dataScope); } /** @@ -41,15 +41,15 @@ @Override public List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent, String beginTime, String endTime) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmListNoPage(dataScope,keywords,alarmType,sContent,beginTime,endTime); + return this.baseMapper.alarmListNoPage(dataScope, keywords, alarmType, sContent, beginTime, endTime); } @Override - public boolean cancelAlarm(int id, String jobStatus, String handleMessage, long personId) { - return this.baseMapper.cancelAlarm(id,jobStatus,handleMessage,personId); + public boolean cancelAlarm(Long id, String jobStatus, String handleMessage, long personId) { + return this.baseMapper.cancelAlarm(id) && this.baseMapper.closeJob(id, jobStatus, handleMessage, personId); } } 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 d3bd513..5ea6d1c 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,5 +1,6 @@ package com.casic.missiles.modular.alarm.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; @@ -26,27 +27,27 @@ 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(String alarmType, String devType) { + 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/dao/AlarmJobMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java index 958a1ad..57d3173 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java @@ -48,7 +48,7 @@ Map countMyJob(@Param("userId") long userId, @Param("deptId") long deptId, @Param("spanDays") int spanDays); - List> jobInfo(@Param("id") int id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); + List> jobInfo(@Param("id") Long id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); // boolean getJob(@Param("id") int id,@Param("personId") long personId); boolean getJob(@Param("id") int id, @Param("personId") long personId, @Param("getTime") Date getTime, @Param("shouldHandleTime") Date shouldHandleTime); @@ -71,7 +71,7 @@ boolean overJobAlarmRecrds(@Param("id") int id); - boolean handleJob(@Param("id") int id, @Param("personId") long personId); + boolean handleJob(@Param("id") Long id, @Param("personId") long personId); List> countByDataScope(@Param("dataScope") DataScope dataScope, @Param("alarmType") String alarmType, @Param("jobStatus") String jobStatus, @Param("beginTime") String beginTime, @Param("endTime") String endTime); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java index 3874bfa..4b34b3c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -11,7 +11,7 @@ /** *

- * Mapper 接口 + * Mapper 接口 *

* * @author casic123 @@ -19,9 +19,12 @@ */ public interface AlarmRecordsMapper extends BaseMapper { - List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent,@Param("dataScope") DataScope dataScope); + List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("dataScope") DataScope dataScope); List alarmListNoPage(@Param("scope") DataScope dataScope, @Param("keywords") String keywords, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("beginTime") String beginTime, @Param("endTime") String endTime); - boolean cancelAlarm(@Param("id") int id,@Param("jobStatus")String jobStatus,@Param("handleMessage") String handleMessage,@Param("personId") long personId); + boolean cancelAlarm(@Param("id") Long id); + + boolean closeJob(@Param("id") Long id, @Param("jobStatus") String jobStatus, @Param("handleMessage") String handleMessage, @Param("personId") long personId); + } 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 9d7506f..c12b51d 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 @@ -22,7 +22,7 @@ List> getTypeViaCode(@Param("code") String code); List> getAlarmContent(@Param("alarmType") String alarmType,@Param("deviceType") String devType); List> testPage(@Param("page") Page> page); - String getDeviceTypeNameById(@Param("deviceTypeId") String deviceTypeId); + String getDeviceTypeNameById(@Param("deviceTypeId") Long deviceTypeId); String getDeptNameById(@Param("deptid") long deptid); String getAlarmTypeNameByCodeNum(@Param("alarmType") String alarmType); String getAlarmContentName(@Param("id") int id); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml index b279d9a..401a28a 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml @@ -24,40 +24,132 @@ + + DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + ifnull(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + + + + + + AND date_part('day',now()-aj.create_time) ${paramDay} + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + - ID AS id, JOBCODE AS jobcode, JOG_TYPE AS jogType, - WELL_CODE AS wellCode, DEVCODE AS devcode, DATE_FORMAT(CREATE_TIME,'%Y-%m-%d %H:%i:%s') AS createTime, - JOB_STATUS AS jobStatus, GET_JOB_PERSON AS getJobPerson, - DATE_FORMAT(GET_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS getJobTime, FIRST_STATE AS firstState, - FIRST_STATE_PHOTOS AS firstStatePhotos, CONFIRM_JOB_PERSON AS confirmJobPerson, - DATE_FORMAT(CONFRIM_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS confrimJobTime, HANDLE_JOB_Person AS handleJobPerson, - DATE_FORMAT(HANDLE_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS handleJobTime, HANDLE_MESSAGE AS handleMessage, - HANDLE_PHOTOS AS handlePhotos, FLOW AS flow - - - - - DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i:%S') - - - - to_date(${paramTime},'yyyy-MM-dd HH24:mi:ss') - - - - to_char(${paramTime},'yyyy-mm-dd hh24:mi:ss') + ID AS id, JOBCODE AS "jobcode", JOG_TYPE AS "jogType", + WELL_CODE AS "wellCode", DEVCODE AS "devcode", + + + + AS "createTime", + JOB_STATUS AS "jobStatus", GET_JOB_PERSON AS "getJobPerson", + + + + AS "getJobTime", FIRST_STATE AS "firstState", + FIRST_STATE_PHOTOS AS "firstStatePhotos", CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confrimJobTime", HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "handleJobTime", HANDLE_MESSAGE AS "handleMessage", + HANDLE_PHOTOS AS "handlePhotos", FLOW AS flow + - SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS deptId + SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS "deptId" FROM alarm_job aj LEFT JOIN alarm_records ar ON ar.JOB_ID = aj.ID LEFT JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE @@ -150,11 +273,19 @@
- AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -179,11 +310,19 @@
- AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -207,47 +346,181 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + - - ar.id as alarmId, - aj.DEVCODE as devcode, - aj.WELL_CODE as wellCode, - ar.ALARM_TYPE as alarmType, - ar.ALARM_CONTENT as alarmContentName, - ar.STATUS as alarmStatus, - aj.ID as id, - aj.ID as jobId, - aj.JOG_TYPE as jobType, - aj.JOBCODE as jobCode, - aj.JOB_STATUS as jobStatus, - aj.JOB_BELONG_TO as jobBelongTo, + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, ar.ALARM_VALUE AS alarmValue, ar.ALARM_LEVEL AS alarmLevel, ar.ALARM_MSG AS alarmMessage, - TO_CHAR(aj.CREATE_TIME,'yyyy-MM-dd HH24:mi:ss') as createTime, - TO_CHAR(ar.ALARM_TIME,'yyyy-MM-dd HH24:mi:ss') as alarmTime, - aj.GET_JOB_PERSON as getJobPerson, - TO_CHAR(aj.SHOULD_GET_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldGetTime, - TO_CHAR(aj.GET_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as getJobTime, - aj.CONFIRM_JOB_PERSON as confirmJobPerson, - TO_CHAR(aj.CONFRIM_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as confirmJobTime, - aj.HANDLE_JOB_Person as handleJobPerson, - TO_CHAR(aj.SHOULD_HANDLE_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldHandleTime, - TO_CHAR(aj.HANDLE_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as handleJobTime, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, aj.JOB_FLAG_1 AS jobFlag, bwi.RESPONSIBLE_DEPT AS deptid + + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, + aj.JOB_FLAG_1 AS jobFlag, + bwi.RESPONSIBLE_DEPT AS deptid + + + + + ar.id AS "alarmId", + aj.DEVCODE AS devcode, + aj.WELL_CODE AS "wellCode", + ar.ALARM_TYPE AS "alarmType", + ar.ALARM_CONTENT AS "alarmContentName", + ar.STATUS AS "alarmStatus", + aj.ID AS id, + aj.ID AS "jobId", + aj.JOG_TYPE AS "jobType", + aj.JOBCODE AS "jobCode", + aj.JOB_STATUS AS "jobStatus", + aj.JOB_BELONG_TO AS "jobBelongTo", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + + + + AS "createTime", + + + + AS "alarmTime", + aj.GET_JOB_PERSON AS "getJobPerson", + + + + AS "shouldGetTime", + + + + AS "getJobTime", + aj.CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confirmJobTime", + aj.HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "shouldHandleTime", + + + + AS "handleJobTime", + aj.JOB_FLAG_1 AS "jobFlag", + bwi.RESPONSIBLE_DEPT AS deptid + + + @@ -298,7 +573,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -308,11 +584,19 @@ - AND aj.CREATE_TIME = ]]> #{beginTime} - AND aj.CREATE_TIME #{endTime} + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -350,14 +634,9 @@ WHERE ar.JOB_ID > 0 AND bwi.VALID = '1' AND aj.JOB_STATUS = '0' AND aj.JOB_FLAG_DELAY = '1' - - - - - - - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -367,11 +646,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -389,7 +676,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.responsible_dept = #{deptId} - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -399,11 +687,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -419,13 +715,20 @@ AND ( aj.JOB_STATUS = '1' OR aj.JOB_STATUS = '2') AND aj.JOB_FLAG_DELAY = '2' - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -449,18 +752,19 @@ AND bwi.responsible_dept = #{deptId} AND aj.CREATE_TIME = ]]> - - + + AND aj.CREATE_TIME - - + + - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -492,7 +796,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{jobListParam.keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{jobListParam.alarmLevel} @@ -504,34 +809,64 @@ AND aj.JOB_STATUS = #{jobListParam.jobStatus} - AND aj.CREATE_TIME = ]]> #{jobListParam.beginTime} + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME #{jobListParam.endTime} + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{jobListParam.getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{jobListParam.getJobEndTime} + AND aj.GET_JOB_TIME + + + - AND aj.SHOULD_GET_TIME = ]]> #{jobListParam.shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{jobListParam.shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{jobListParam.handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{jobListParam.handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{jobListParam.shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{jobListParam.shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -549,7 +884,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{alarmLevel} @@ -558,36 +894,63 @@ AND ar.ALARM_CONTENT = #{alarmContent} - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{getJobEndTime} - - + + + - AND aj.SHOULD_GET_TIME = ]]> #{shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -618,50 +981,73 @@ - + @@ -761,7 +1147,7 @@ - SELECT FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + SELECT + + FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + + + DATE_FORMAT(alarmTimeDate,'%Y-%m-%d %H:%i') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml index d9cfd1e..d686954 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -4,18 +4,18 @@ - - - - - - - - + + + + + + + + - - - + + + @@ -23,11 +23,34 @@ ID AS id, DEVICE_ID AS deviceId, DEVCODE AS devcode, WELL_CODE AS wellCode, ALARM_TYPE AS alarmType, ALARM_CONTENT AS alarmContent, ALARM_VALUE AS alarmValue, ALARM_TIME AS alarmTime, STATUS AS status, JOB_ID AS jobId - + + ${paramStr} + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + + ar.ID as id, ar.WELL_CODE as wellCode, ar.ALARM_CONTENT as alarmContentName, - DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i:%s') as alarmTime, + DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i') + AS alarmTime, ar.DEVICE_ID as deviceId, ar.STATUS as status, ar.alarm_type as alarmType, @@ -40,6 +63,44 @@ bwi.DEPTID AS deptid + + ar.ID as id, + ar.WELL_CODE as wellCode, + ar.ALARM_CONTENT as alarmContentName, + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS alarmTime, + ar.DEVICE_ID as deviceId, + ar.STATUS as status, + ar.alarm_type as alarmType, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + ar.DEVCODE as devcode, + aj.JOB_STATUS as jobStatus, + ar.JOB_ID as jobId, + bwi.DEPTID AS deptid + + + + + ar.ID as id, + ar.WELL_CODE as "wellCode", + ar.ALARM_CONTENT as "alarmContentName", + ar.DEVICE_ID as "deviceId", + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS "alarmTime", + ar.STATUS as "status", + ar.alarm_type as "alarmType", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + ar.DEVCODE as devcode, + aj.JOB_STATUS as "jobStatus", + ar.JOB_ID as "jobId", + bwi.DEPTID AS deptid + + + - - + + - UPDATE alarm_job aj, alarm_records ar + UPDATE alarm_records + SET status = 2 + WHERE ID = #{id} + + + + update alarm_job - aj.job_status = #{jobStatus} , - aj.handle_job_person = #{personId}, - aj.job_belong_to = #{personId}, - aj.handle_job_time = now(), - aj.handle_message = #{handleMessage}, - ar.status = 2 + job_status = #{jobStatus} , + handle_job_person = #{personId}, + job_belong_to = #{personId}, + handle_job_time = now(), + handle_message = #{handleMessage}, - WHERE aj.ID = ar.job_id - AND aj.ID = #{id} + WHERE ID=( + SELECT JOB_ID + FROM alarm_records + WHERE ID=#{id} + ) diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml index 4743d51..bbec5ff 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -4,17 +4,28 @@ - - - - - - - - - + + + + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + ID AS id, DEVCODE AS devcode, HIGHVALUE AS highvalue, LOWVALUE AS lowvalue, OVERTIME AS overtime, SALTATION AS saltation, SENSORCODE AS sensorcode, GRADE AS grade, TS AS ts @@ -34,21 +45,37 @@ - + SELECT ar.ID as id,ar.HIGHVALUE as "highValue",ar.LOWVALUE as "lowValue", + bd.ID AS "devId",bd.DEVCODE as "devcode", + bd.DEVICE_TYPE as "deviceType",bwi.ID AS "wellId",bwi.WELL_NAME as "wellName", + COALESCE (ar.OPERATOR,'') AS user, + bwi.WELL_CODE as "wellCode",bwi.DEEP as deep,bwi.DEPTID as deptid, + COALESCE (,'') AS ts + FROM alarm_rule ar + LEFT JOIN bus_device bd ON ar.DEVCODE = bd.DEVCODE + LEFT JOIN bus_device_well bdw ON bd.ID = bdw.DEVICE_ID + LEFT JOIN bus_well_info bwi ON bdw.WELL_ID = bwi.ID + WHERE bd.VALID = '1' AND bdw.VALID ='1' - AND (ar.DEVCODE LIKE concat(CONCAT('%',#{keywords}),'%') - OR bwi.WELL_CODE LIKE concat(CONCAT('%',#{keywords}),'%') ) + AND (ar.DEVCODE LIKE + + OR bwi.WELL_CODE LIKE + ) AND bd.DEVICE_TYPE= #{deviceType} @@ -71,13 +98,13 @@ WHERE ID=#{id} 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 2fa12b0..0a71551 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 @@ -2,11 +2,35 @@ + + + A.wellCount , + A.deptid, + SD.simplename as deptName, + SD.pid + + + A.wellCount , + A.deptid, + SD.simplename as deptName, + SD.pid + + + A.wellCount , + A.deptid, + SD.simplename as "deptName", + SD.pid + + + + + + SELECT - COUNT( 1 ) AS wellCount, - WELL_TYPE AS wellType + COUNT( 1 ) AS "wellCount", + WELL_TYPE AS "wellType" FROM bus_well_info WHERE VALID = '1' AND DEPTID IN (${deptIds}) GROUP BY WELL_TYPE - + - + - + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi:ss') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi:ss') + + + + ifnull(SUM(IF(BD.ONLINE_STATE=${numberStatus},1,0)),0) + + + + COALESCE(SUM(CASE WHEN BD.ONLINE_STATE=${numberStatus} THEN 1 ELSE 0 END)) + + + + COALESCE(SUM(IF(BD.ONLINE_STATE=${numberStatus},1,0)),0) + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(CASE WHEN job_status=${numberStatus} THEN 1 ELSE 0 END)) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + + + + + + + + + + + + - + SELECT - ifnull(SUM(IF(job_status='0',1,0)),0) AS beforeGet, - ifnull(SUM(IF(job_status='1',1,0)),0) AS beforeConfirm, - ifnull(SUM(IF(job_status='2',1,0)),0) AS inHandle, - ifnull(SUM(IF(job_status='3',1,0)),0) AS 'over', - ifnull(SUM(IF(job_status='4',1,0)),0) AS cancel + + + + AS "beforeGet", + + + + AS "beforeConfirm", + + + + AS "inHandle", + + + + AS "over", + + + + AS cancel FROM alarm_job aj INNER JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE INNER JOIN bus_device bd ON aj.DEVCODE = bd.DEVCODE @@ -104,11 +238,19 @@ AND bwi.DEPTID IN (${deptIds}) - AND aj.CREATE_TIME ]]> #{beginTime} - AND aj.CREATE_TIME DATE_ADD( #{endTime}, INTERVAL 1 DAY ) + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml index 2a702c0..7a9c269 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml @@ -4,12 +4,12 @@ - - - - - - + + + + + + @@ -27,18 +27,18 @@ - SELECT * FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND name = #{typeName} ) ; - SELECT * FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) ; - SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = 'alarmType' ) @@ -46,15 +46,15 @@ - + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = 'jobStatus' ) AND code = #{jobStatus}; - + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) AND code = #{codeNum}; @@ -64,8 +64,9 @@ - + SELECT id as value,alarm_content as name ,alarm_type as "alarmType",device_type as "deviceType" + FROM base_alarm_content_type WHERE alarm_type = #{alarmType} AND device_type= #{deviceType} @@ -84,7 +85,7 @@ + + + DATE_FORMAT(now(),'%Y-%m-%d %H:%i:%s') + + + + TO_CHAR(now(),'yyyy-mm-dd hh24:mi:ss') + + + + TO_CHAR(sysdate,'yyyy-mm-dd hh24:mi:ss') + + diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml index f4a17d3..fce044c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml @@ -34,7 +34,7 @@ SELECT b.SENSORCODE AS SENSORCODE FROM base_sensor b LEFT JOIN bus_device d ON b.DEVICE_TYPE=d.DEVICE_TYPE - WHERE d.VALID = 1 + WHERE d.VALID = '1' and d.DEVCODE = diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java index 5c823d6..565de23 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java @@ -38,7 +38,7 @@ deviceRule.setSensorcode(getSensorCodeByDevCode(devCode)); deviceRule.setTs(new Date()); deviceRule.setOperator( permissionService.getAuthService().getLoginUser().getAccount()); - save(deviceRule); + this.baseMapper.insert(deviceRule); } public List getDeviceRuleListByDevCode(String devCode) { diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java index aa09c1f..25e292b 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java @@ -20,8 +20,9 @@ NOISEDATA_EXPORT("noiseData.xlsx","noiseData.xlsx","噪声记录仪数据"), BUSCONCENTRATOR_EXPORT("busConcentrator.xlsx", "busConcentrator.xlsx", "集中器数据"), DEVICE_EXPORT("device.xlsx", "device.xlsx", "设备数据"), - LIQUIDGASDATA_EXPORT("gasLiquidData.xlsx", "gasLiquidData.xlsx", "燃气液位一体化数据"); - + LIQUIDGASDATA_EXPORT("gasLiquidData.xlsx", "gasLiquidData.xlsx", "燃气液位一体化数据"), + ALARMJOB_EXPORT("alarmJobData.xlsx", "alarmJobData.xlsx", "预警工单"), + ALARMRECORD_EXPORT("alarmRecordData.xlsx", "alarmRecordData.xlsx", "预警工单"); /** * 导出模板相对路径 */ diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeptPermission.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeptPermission.java index 6798b47..aad89b7 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeptPermission.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeptPermission.java @@ -62,6 +62,7 @@ * 使用地图(0百度,1高德,2arcgis) */ @TableField("MAP") + @JSONField(serialize = false) private String map; @TableField(exist = false) private List wellTypes; diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceModels.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceModels.java index da06a5c..cbe95c7 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceModels.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceModels.java @@ -26,7 +26,7 @@ /** * 主键 */ - @TableId(value = "ID", type = IdType.ASSIGN_ID) + @TableId(value = "ID", type = IdType.AUTO) private Long id; /** * 型号名称 diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java new file mode 100644 index 0000000..c9cf49a --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class RecordExcelDto { + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("权属单位") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警等级") + private String alarmLevel; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("告警时间") + private String logTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java index 5f47018..d49386c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java @@ -37,7 +37,7 @@ List> jobListSearchApp(Page> page, JobListParam jobListParam, Long deptId, Long userId, Long leaderId); - List> jobInfo(int id, DataScope dataScope, Long personId); + List> jobInfo(Long id, DataScope dataScope, Long personId); boolean getJob(int id, long personId); @@ -51,7 +51,7 @@ boolean overAlarm(int id); - boolean handleJob(int id, long personId); + boolean handleJob(Long id, long personId); Map countByJobStatus(long deptId, int spanDays); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java index 267fff5..8a5b270 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java @@ -22,5 +22,5 @@ List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent,String beginTime, String endTime); - boolean cancelAlarm(int id,String jobStatus, String handleMessage, long personId); + boolean cancelAlarm(Long id,String jobStatus, String handleMessage, long personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java index 5ef681b..c52630c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java @@ -144,7 +144,7 @@ } @Override - public List> jobInfo(int id, DataScope dataScope, Long personId) { + public List> jobInfo(Long id, DataScope dataScope, Long personId) { List> job = this.baseMapper.jobInfo(id, dataScope, personId); return job; } @@ -232,7 +232,7 @@ } @Override - public boolean handleJob(int id, long personId) { + public boolean handleJob(Long id, long personId) { return this.baseMapper.handleJob(id, personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index 2f9b8d1..d2cc7f1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -16,7 +16,7 @@ /** *

- * 服务实现类 + * 服务实现类 *

* * @author casic123 @@ -27,12 +27,12 @@ @Override - public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { + public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmList(page,keywords,beginTime,endTime,status,alarmType,sContent,dataScope); + return this.baseMapper.alarmList(page, keywords, beginTime, endTime, status, alarmType, sContent, dataScope); } /** @@ -41,15 +41,15 @@ @Override public List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent, String beginTime, String endTime) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmListNoPage(dataScope,keywords,alarmType,sContent,beginTime,endTime); + return this.baseMapper.alarmListNoPage(dataScope, keywords, alarmType, sContent, beginTime, endTime); } @Override - public boolean cancelAlarm(int id, String jobStatus, String handleMessage, long personId) { - return this.baseMapper.cancelAlarm(id,jobStatus,handleMessage,personId); + public boolean cancelAlarm(Long id, String jobStatus, String handleMessage, long personId) { + return this.baseMapper.cancelAlarm(id) && this.baseMapper.closeJob(id, jobStatus, handleMessage, personId); } } 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 d3bd513..5ea6d1c 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,5 +1,6 @@ package com.casic.missiles.modular.alarm.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; @@ -26,27 +27,27 @@ 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(String alarmType, String devType) { + 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/dao/AlarmJobMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java index 958a1ad..57d3173 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java @@ -48,7 +48,7 @@ Map countMyJob(@Param("userId") long userId, @Param("deptId") long deptId, @Param("spanDays") int spanDays); - List> jobInfo(@Param("id") int id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); + List> jobInfo(@Param("id") Long id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); // boolean getJob(@Param("id") int id,@Param("personId") long personId); boolean getJob(@Param("id") int id, @Param("personId") long personId, @Param("getTime") Date getTime, @Param("shouldHandleTime") Date shouldHandleTime); @@ -71,7 +71,7 @@ boolean overJobAlarmRecrds(@Param("id") int id); - boolean handleJob(@Param("id") int id, @Param("personId") long personId); + boolean handleJob(@Param("id") Long id, @Param("personId") long personId); List> countByDataScope(@Param("dataScope") DataScope dataScope, @Param("alarmType") String alarmType, @Param("jobStatus") String jobStatus, @Param("beginTime") String beginTime, @Param("endTime") String endTime); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java index 3874bfa..4b34b3c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -11,7 +11,7 @@ /** *

- * Mapper 接口 + * Mapper 接口 *

* * @author casic123 @@ -19,9 +19,12 @@ */ public interface AlarmRecordsMapper extends BaseMapper { - List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent,@Param("dataScope") DataScope dataScope); + List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("dataScope") DataScope dataScope); List alarmListNoPage(@Param("scope") DataScope dataScope, @Param("keywords") String keywords, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("beginTime") String beginTime, @Param("endTime") String endTime); - boolean cancelAlarm(@Param("id") int id,@Param("jobStatus")String jobStatus,@Param("handleMessage") String handleMessage,@Param("personId") long personId); + boolean cancelAlarm(@Param("id") Long id); + + boolean closeJob(@Param("id") Long id, @Param("jobStatus") String jobStatus, @Param("handleMessage") String handleMessage, @Param("personId") long personId); + } 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 9d7506f..c12b51d 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 @@ -22,7 +22,7 @@ List> getTypeViaCode(@Param("code") String code); List> getAlarmContent(@Param("alarmType") String alarmType,@Param("deviceType") String devType); List> testPage(@Param("page") Page> page); - String getDeviceTypeNameById(@Param("deviceTypeId") String deviceTypeId); + String getDeviceTypeNameById(@Param("deviceTypeId") Long deviceTypeId); String getDeptNameById(@Param("deptid") long deptid); String getAlarmTypeNameByCodeNum(@Param("alarmType") String alarmType); String getAlarmContentName(@Param("id") int id); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml index b279d9a..401a28a 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml @@ -24,40 +24,132 @@ + + DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + ifnull(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + + + + + + AND date_part('day',now()-aj.create_time) ${paramDay} + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + - ID AS id, JOBCODE AS jobcode, JOG_TYPE AS jogType, - WELL_CODE AS wellCode, DEVCODE AS devcode, DATE_FORMAT(CREATE_TIME,'%Y-%m-%d %H:%i:%s') AS createTime, - JOB_STATUS AS jobStatus, GET_JOB_PERSON AS getJobPerson, - DATE_FORMAT(GET_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS getJobTime, FIRST_STATE AS firstState, - FIRST_STATE_PHOTOS AS firstStatePhotos, CONFIRM_JOB_PERSON AS confirmJobPerson, - DATE_FORMAT(CONFRIM_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS confrimJobTime, HANDLE_JOB_Person AS handleJobPerson, - DATE_FORMAT(HANDLE_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS handleJobTime, HANDLE_MESSAGE AS handleMessage, - HANDLE_PHOTOS AS handlePhotos, FLOW AS flow - - - - - DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i:%S') - - - - to_date(${paramTime},'yyyy-MM-dd HH24:mi:ss') - - - - to_char(${paramTime},'yyyy-mm-dd hh24:mi:ss') + ID AS id, JOBCODE AS "jobcode", JOG_TYPE AS "jogType", + WELL_CODE AS "wellCode", DEVCODE AS "devcode", + + + + AS "createTime", + JOB_STATUS AS "jobStatus", GET_JOB_PERSON AS "getJobPerson", + + + + AS "getJobTime", FIRST_STATE AS "firstState", + FIRST_STATE_PHOTOS AS "firstStatePhotos", CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confrimJobTime", HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "handleJobTime", HANDLE_MESSAGE AS "handleMessage", + HANDLE_PHOTOS AS "handlePhotos", FLOW AS flow + - SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS deptId + SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS "deptId" FROM alarm_job aj LEFT JOIN alarm_records ar ON ar.JOB_ID = aj.ID LEFT JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE @@ -150,11 +273,19 @@
- AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -179,11 +310,19 @@
- AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -207,47 +346,181 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + - - ar.id as alarmId, - aj.DEVCODE as devcode, - aj.WELL_CODE as wellCode, - ar.ALARM_TYPE as alarmType, - ar.ALARM_CONTENT as alarmContentName, - ar.STATUS as alarmStatus, - aj.ID as id, - aj.ID as jobId, - aj.JOG_TYPE as jobType, - aj.JOBCODE as jobCode, - aj.JOB_STATUS as jobStatus, - aj.JOB_BELONG_TO as jobBelongTo, + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, ar.ALARM_VALUE AS alarmValue, ar.ALARM_LEVEL AS alarmLevel, ar.ALARM_MSG AS alarmMessage, - TO_CHAR(aj.CREATE_TIME,'yyyy-MM-dd HH24:mi:ss') as createTime, - TO_CHAR(ar.ALARM_TIME,'yyyy-MM-dd HH24:mi:ss') as alarmTime, - aj.GET_JOB_PERSON as getJobPerson, - TO_CHAR(aj.SHOULD_GET_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldGetTime, - TO_CHAR(aj.GET_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as getJobTime, - aj.CONFIRM_JOB_PERSON as confirmJobPerson, - TO_CHAR(aj.CONFRIM_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as confirmJobTime, - aj.HANDLE_JOB_Person as handleJobPerson, - TO_CHAR(aj.SHOULD_HANDLE_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldHandleTime, - TO_CHAR(aj.HANDLE_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as handleJobTime, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, aj.JOB_FLAG_1 AS jobFlag, bwi.RESPONSIBLE_DEPT AS deptid + + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, + aj.JOB_FLAG_1 AS jobFlag, + bwi.RESPONSIBLE_DEPT AS deptid + + + + + ar.id AS "alarmId", + aj.DEVCODE AS devcode, + aj.WELL_CODE AS "wellCode", + ar.ALARM_TYPE AS "alarmType", + ar.ALARM_CONTENT AS "alarmContentName", + ar.STATUS AS "alarmStatus", + aj.ID AS id, + aj.ID AS "jobId", + aj.JOG_TYPE AS "jobType", + aj.JOBCODE AS "jobCode", + aj.JOB_STATUS AS "jobStatus", + aj.JOB_BELONG_TO AS "jobBelongTo", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + + + + AS "createTime", + + + + AS "alarmTime", + aj.GET_JOB_PERSON AS "getJobPerson", + + + + AS "shouldGetTime", + + + + AS "getJobTime", + aj.CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confirmJobTime", + aj.HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "shouldHandleTime", + + + + AS "handleJobTime", + aj.JOB_FLAG_1 AS "jobFlag", + bwi.RESPONSIBLE_DEPT AS deptid + + + @@ -298,7 +573,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -308,11 +584,19 @@ - AND aj.CREATE_TIME = ]]> #{beginTime} - AND aj.CREATE_TIME #{endTime} + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -350,14 +634,9 @@ WHERE ar.JOB_ID > 0 AND bwi.VALID = '1' AND aj.JOB_STATUS = '0' AND aj.JOB_FLAG_DELAY = '1' - - - - - - - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -367,11 +646,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -389,7 +676,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.responsible_dept = #{deptId} - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -399,11 +687,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -419,13 +715,20 @@ AND ( aj.JOB_STATUS = '1' OR aj.JOB_STATUS = '2') AND aj.JOB_FLAG_DELAY = '2' - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -449,18 +752,19 @@ AND bwi.responsible_dept = #{deptId} AND aj.CREATE_TIME = ]]> - - + + AND aj.CREATE_TIME - - + + - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -492,7 +796,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{jobListParam.keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{jobListParam.alarmLevel} @@ -504,34 +809,64 @@ AND aj.JOB_STATUS = #{jobListParam.jobStatus} - AND aj.CREATE_TIME = ]]> #{jobListParam.beginTime} + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME #{jobListParam.endTime} + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{jobListParam.getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{jobListParam.getJobEndTime} + AND aj.GET_JOB_TIME + + + - AND aj.SHOULD_GET_TIME = ]]> #{jobListParam.shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{jobListParam.shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{jobListParam.handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{jobListParam.handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{jobListParam.shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{jobListParam.shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -549,7 +884,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{alarmLevel} @@ -558,36 +894,63 @@ AND ar.ALARM_CONTENT = #{alarmContent} - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{getJobEndTime} - - + + + - AND aj.SHOULD_GET_TIME = ]]> #{shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -618,50 +981,73 @@ - + @@ -761,7 +1147,7 @@ - SELECT FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + SELECT + + FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + + + DATE_FORMAT(alarmTimeDate,'%Y-%m-%d %H:%i') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml index d9cfd1e..d686954 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -4,18 +4,18 @@ - - - - - - - - + + + + + + + + - - - + + + @@ -23,11 +23,34 @@ ID AS id, DEVICE_ID AS deviceId, DEVCODE AS devcode, WELL_CODE AS wellCode, ALARM_TYPE AS alarmType, ALARM_CONTENT AS alarmContent, ALARM_VALUE AS alarmValue, ALARM_TIME AS alarmTime, STATUS AS status, JOB_ID AS jobId - + + ${paramStr} + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + + ar.ID as id, ar.WELL_CODE as wellCode, ar.ALARM_CONTENT as alarmContentName, - DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i:%s') as alarmTime, + DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i') + AS alarmTime, ar.DEVICE_ID as deviceId, ar.STATUS as status, ar.alarm_type as alarmType, @@ -40,6 +63,44 @@ bwi.DEPTID AS deptid + + ar.ID as id, + ar.WELL_CODE as wellCode, + ar.ALARM_CONTENT as alarmContentName, + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS alarmTime, + ar.DEVICE_ID as deviceId, + ar.STATUS as status, + ar.alarm_type as alarmType, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + ar.DEVCODE as devcode, + aj.JOB_STATUS as jobStatus, + ar.JOB_ID as jobId, + bwi.DEPTID AS deptid + + + + + ar.ID as id, + ar.WELL_CODE as "wellCode", + ar.ALARM_CONTENT as "alarmContentName", + ar.DEVICE_ID as "deviceId", + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS "alarmTime", + ar.STATUS as "status", + ar.alarm_type as "alarmType", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + ar.DEVCODE as devcode, + aj.JOB_STATUS as "jobStatus", + ar.JOB_ID as "jobId", + bwi.DEPTID AS deptid + + + - - + + - UPDATE alarm_job aj, alarm_records ar + UPDATE alarm_records + SET status = 2 + WHERE ID = #{id} + + + + update alarm_job - aj.job_status = #{jobStatus} , - aj.handle_job_person = #{personId}, - aj.job_belong_to = #{personId}, - aj.handle_job_time = now(), - aj.handle_message = #{handleMessage}, - ar.status = 2 + job_status = #{jobStatus} , + handle_job_person = #{personId}, + job_belong_to = #{personId}, + handle_job_time = now(), + handle_message = #{handleMessage}, - WHERE aj.ID = ar.job_id - AND aj.ID = #{id} + WHERE ID=( + SELECT JOB_ID + FROM alarm_records + WHERE ID=#{id} + ) diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml index 4743d51..bbec5ff 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -4,17 +4,28 @@ - - - - - - - - - + + + + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + ID AS id, DEVCODE AS devcode, HIGHVALUE AS highvalue, LOWVALUE AS lowvalue, OVERTIME AS overtime, SALTATION AS saltation, SENSORCODE AS sensorcode, GRADE AS grade, TS AS ts @@ -34,21 +45,37 @@ - + SELECT ar.ID as id,ar.HIGHVALUE as "highValue",ar.LOWVALUE as "lowValue", + bd.ID AS "devId",bd.DEVCODE as "devcode", + bd.DEVICE_TYPE as "deviceType",bwi.ID AS "wellId",bwi.WELL_NAME as "wellName", + COALESCE (ar.OPERATOR,'') AS user, + bwi.WELL_CODE as "wellCode",bwi.DEEP as deep,bwi.DEPTID as deptid, + COALESCE (,'') AS ts + FROM alarm_rule ar + LEFT JOIN bus_device bd ON ar.DEVCODE = bd.DEVCODE + LEFT JOIN bus_device_well bdw ON bd.ID = bdw.DEVICE_ID + LEFT JOIN bus_well_info bwi ON bdw.WELL_ID = bwi.ID + WHERE bd.VALID = '1' AND bdw.VALID ='1' - AND (ar.DEVCODE LIKE concat(CONCAT('%',#{keywords}),'%') - OR bwi.WELL_CODE LIKE concat(CONCAT('%',#{keywords}),'%') ) + AND (ar.DEVCODE LIKE + + OR bwi.WELL_CODE LIKE + ) AND bd.DEVICE_TYPE= #{deviceType} @@ -71,13 +98,13 @@ WHERE ID=#{id} 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 2fa12b0..0a71551 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 @@ -2,11 +2,35 @@ + + + A.wellCount , + A.deptid, + SD.simplename as deptName, + SD.pid + + + A.wellCount , + A.deptid, + SD.simplename as deptName, + SD.pid + + + A.wellCount , + A.deptid, + SD.simplename as "deptName", + SD.pid + + + + + + SELECT - COUNT( 1 ) AS wellCount, - WELL_TYPE AS wellType + COUNT( 1 ) AS "wellCount", + WELL_TYPE AS "wellType" FROM bus_well_info WHERE VALID = '1' AND DEPTID IN (${deptIds}) GROUP BY WELL_TYPE - + - + - + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi:ss') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi:ss') + + + + ifnull(SUM(IF(BD.ONLINE_STATE=${numberStatus},1,0)),0) + + + + COALESCE(SUM(CASE WHEN BD.ONLINE_STATE=${numberStatus} THEN 1 ELSE 0 END)) + + + + COALESCE(SUM(IF(BD.ONLINE_STATE=${numberStatus},1,0)),0) + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(CASE WHEN job_status=${numberStatus} THEN 1 ELSE 0 END)) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + + + + + + + + + + + + - + SELECT - ifnull(SUM(IF(job_status='0',1,0)),0) AS beforeGet, - ifnull(SUM(IF(job_status='1',1,0)),0) AS beforeConfirm, - ifnull(SUM(IF(job_status='2',1,0)),0) AS inHandle, - ifnull(SUM(IF(job_status='3',1,0)),0) AS 'over', - ifnull(SUM(IF(job_status='4',1,0)),0) AS cancel + + + + AS "beforeGet", + + + + AS "beforeConfirm", + + + + AS "inHandle", + + + + AS "over", + + + + AS cancel FROM alarm_job aj INNER JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE INNER JOIN bus_device bd ON aj.DEVCODE = bd.DEVCODE @@ -104,11 +238,19 @@ AND bwi.DEPTID IN (${deptIds}) - AND aj.CREATE_TIME ]]> #{beginTime} - AND aj.CREATE_TIME DATE_ADD( #{endTime}, INTERVAL 1 DAY ) + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml index 2a702c0..7a9c269 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml @@ -4,12 +4,12 @@ - - - - - - + + + + + + @@ -27,18 +27,18 @@ - SELECT * FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND name = #{typeName} ) ; - SELECT * FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) ; - SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = 'alarmType' ) @@ -46,15 +46,15 @@ - + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = 'jobStatus' ) AND code = #{jobStatus}; - + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) AND code = #{codeNum}; @@ -64,8 +64,9 @@ - + SELECT id as value,alarm_content as name ,alarm_type as "alarmType",device_type as "deviceType" + FROM base_alarm_content_type WHERE alarm_type = #{alarmType} AND device_type= #{deviceType} @@ -84,7 +85,7 @@ + + + DATE_FORMAT(now(),'%Y-%m-%d %H:%i:%s') + + + + TO_CHAR(now(),'yyyy-mm-dd hh24:mi:ss') + + + + TO_CHAR(sysdate,'yyyy-mm-dd hh24:mi:ss') + + diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml index f4a17d3..fce044c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml @@ -34,7 +34,7 @@ SELECT b.SENSORCODE AS SENSORCODE FROM base_sensor b LEFT JOIN bus_device d ON b.DEVICE_TYPE=d.DEVICE_TYPE - WHERE d.VALID = 1 + WHERE d.VALID = '1' and d.DEVCODE = diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java index 5c823d6..565de23 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java @@ -38,7 +38,7 @@ deviceRule.setSensorcode(getSensorCodeByDevCode(devCode)); deviceRule.setTs(new Date()); deviceRule.setOperator( permissionService.getAuthService().getLoginUser().getAccount()); - save(deviceRule); + this.baseMapper.insert(deviceRule); } public List getDeviceRuleListByDevCode(String devCode) { diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java index aa09c1f..25e292b 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java @@ -20,8 +20,9 @@ NOISEDATA_EXPORT("noiseData.xlsx","noiseData.xlsx","噪声记录仪数据"), BUSCONCENTRATOR_EXPORT("busConcentrator.xlsx", "busConcentrator.xlsx", "集中器数据"), DEVICE_EXPORT("device.xlsx", "device.xlsx", "设备数据"), - LIQUIDGASDATA_EXPORT("gasLiquidData.xlsx", "gasLiquidData.xlsx", "燃气液位一体化数据"); - + LIQUIDGASDATA_EXPORT("gasLiquidData.xlsx", "gasLiquidData.xlsx", "燃气液位一体化数据"), + ALARMJOB_EXPORT("alarmJobData.xlsx", "alarmJobData.xlsx", "预警工单"), + ALARMRECORD_EXPORT("alarmRecordData.xlsx", "alarmRecordData.xlsx", "预警工单"); /** * 导出模板相对路径 */ diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeptPermission.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeptPermission.java index 6798b47..aad89b7 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeptPermission.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeptPermission.java @@ -62,6 +62,7 @@ * 使用地图(0百度,1高德,2arcgis) */ @TableField("MAP") + @JSONField(serialize = false) private String map; @TableField(exist = false) private List wellTypes; diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceModels.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceModels.java index da06a5c..cbe95c7 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceModels.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceModels.java @@ -26,7 +26,7 @@ /** * 主键 */ - @TableId(value = "ID", type = IdType.ASSIGN_ID) + @TableId(value = "ID", type = IdType.AUTO) private Long id; /** * 型号名称 diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceRule.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceRule.java index 305a310..16239d7 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceRule.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceRule.java @@ -25,7 +25,7 @@ /** * 自增主键 */ - @TableId(value = "ID", type = IdType.AUTO) + @TableId(value = "id", type = IdType.AUTO) private Long id; /** * 设备编号 diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java new file mode 100644 index 0000000..c9cf49a --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class RecordExcelDto { + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("权属单位") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警等级") + private String alarmLevel; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("告警时间") + private String logTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java index 5f47018..d49386c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java @@ -37,7 +37,7 @@ List> jobListSearchApp(Page> page, JobListParam jobListParam, Long deptId, Long userId, Long leaderId); - List> jobInfo(int id, DataScope dataScope, Long personId); + List> jobInfo(Long id, DataScope dataScope, Long personId); boolean getJob(int id, long personId); @@ -51,7 +51,7 @@ boolean overAlarm(int id); - boolean handleJob(int id, long personId); + boolean handleJob(Long id, long personId); Map countByJobStatus(long deptId, int spanDays); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java index 267fff5..8a5b270 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java @@ -22,5 +22,5 @@ List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent,String beginTime, String endTime); - boolean cancelAlarm(int id,String jobStatus, String handleMessage, long personId); + boolean cancelAlarm(Long id,String jobStatus, String handleMessage, long personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java index 5ef681b..c52630c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java @@ -144,7 +144,7 @@ } @Override - public List> jobInfo(int id, DataScope dataScope, Long personId) { + public List> jobInfo(Long id, DataScope dataScope, Long personId) { List> job = this.baseMapper.jobInfo(id, dataScope, personId); return job; } @@ -232,7 +232,7 @@ } @Override - public boolean handleJob(int id, long personId) { + public boolean handleJob(Long id, long personId) { return this.baseMapper.handleJob(id, personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index 2f9b8d1..d2cc7f1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -16,7 +16,7 @@ /** *

- * 服务实现类 + * 服务实现类 *

* * @author casic123 @@ -27,12 +27,12 @@ @Override - public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { + public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmList(page,keywords,beginTime,endTime,status,alarmType,sContent,dataScope); + return this.baseMapper.alarmList(page, keywords, beginTime, endTime, status, alarmType, sContent, dataScope); } /** @@ -41,15 +41,15 @@ @Override public List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent, String beginTime, String endTime) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmListNoPage(dataScope,keywords,alarmType,sContent,beginTime,endTime); + return this.baseMapper.alarmListNoPage(dataScope, keywords, alarmType, sContent, beginTime, endTime); } @Override - public boolean cancelAlarm(int id, String jobStatus, String handleMessage, long personId) { - return this.baseMapper.cancelAlarm(id,jobStatus,handleMessage,personId); + public boolean cancelAlarm(Long id, String jobStatus, String handleMessage, long personId) { + return this.baseMapper.cancelAlarm(id) && this.baseMapper.closeJob(id, jobStatus, handleMessage, personId); } } 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 d3bd513..5ea6d1c 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,5 +1,6 @@ package com.casic.missiles.modular.alarm.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; @@ -26,27 +27,27 @@ 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(String alarmType, String devType) { + 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/dao/AlarmJobMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java index 958a1ad..57d3173 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java @@ -48,7 +48,7 @@ Map countMyJob(@Param("userId") long userId, @Param("deptId") long deptId, @Param("spanDays") int spanDays); - List> jobInfo(@Param("id") int id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); + List> jobInfo(@Param("id") Long id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); // boolean getJob(@Param("id") int id,@Param("personId") long personId); boolean getJob(@Param("id") int id, @Param("personId") long personId, @Param("getTime") Date getTime, @Param("shouldHandleTime") Date shouldHandleTime); @@ -71,7 +71,7 @@ boolean overJobAlarmRecrds(@Param("id") int id); - boolean handleJob(@Param("id") int id, @Param("personId") long personId); + boolean handleJob(@Param("id") Long id, @Param("personId") long personId); List> countByDataScope(@Param("dataScope") DataScope dataScope, @Param("alarmType") String alarmType, @Param("jobStatus") String jobStatus, @Param("beginTime") String beginTime, @Param("endTime") String endTime); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java index 3874bfa..4b34b3c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -11,7 +11,7 @@ /** *

- * Mapper 接口 + * Mapper 接口 *

* * @author casic123 @@ -19,9 +19,12 @@ */ public interface AlarmRecordsMapper extends BaseMapper { - List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent,@Param("dataScope") DataScope dataScope); + List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("dataScope") DataScope dataScope); List alarmListNoPage(@Param("scope") DataScope dataScope, @Param("keywords") String keywords, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("beginTime") String beginTime, @Param("endTime") String endTime); - boolean cancelAlarm(@Param("id") int id,@Param("jobStatus")String jobStatus,@Param("handleMessage") String handleMessage,@Param("personId") long personId); + boolean cancelAlarm(@Param("id") Long id); + + boolean closeJob(@Param("id") Long id, @Param("jobStatus") String jobStatus, @Param("handleMessage") String handleMessage, @Param("personId") long personId); + } 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 9d7506f..c12b51d 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 @@ -22,7 +22,7 @@ List> getTypeViaCode(@Param("code") String code); List> getAlarmContent(@Param("alarmType") String alarmType,@Param("deviceType") String devType); List> testPage(@Param("page") Page> page); - String getDeviceTypeNameById(@Param("deviceTypeId") String deviceTypeId); + String getDeviceTypeNameById(@Param("deviceTypeId") Long deviceTypeId); String getDeptNameById(@Param("deptid") long deptid); String getAlarmTypeNameByCodeNum(@Param("alarmType") String alarmType); String getAlarmContentName(@Param("id") int id); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml index b279d9a..401a28a 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml @@ -24,40 +24,132 @@ + + DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + ifnull(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + + + + + + AND date_part('day',now()-aj.create_time) ${paramDay} + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + - ID AS id, JOBCODE AS jobcode, JOG_TYPE AS jogType, - WELL_CODE AS wellCode, DEVCODE AS devcode, DATE_FORMAT(CREATE_TIME,'%Y-%m-%d %H:%i:%s') AS createTime, - JOB_STATUS AS jobStatus, GET_JOB_PERSON AS getJobPerson, - DATE_FORMAT(GET_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS getJobTime, FIRST_STATE AS firstState, - FIRST_STATE_PHOTOS AS firstStatePhotos, CONFIRM_JOB_PERSON AS confirmJobPerson, - DATE_FORMAT(CONFRIM_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS confrimJobTime, HANDLE_JOB_Person AS handleJobPerson, - DATE_FORMAT(HANDLE_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS handleJobTime, HANDLE_MESSAGE AS handleMessage, - HANDLE_PHOTOS AS handlePhotos, FLOW AS flow - - - - - DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i:%S') - - - - to_date(${paramTime},'yyyy-MM-dd HH24:mi:ss') - - - - to_char(${paramTime},'yyyy-mm-dd hh24:mi:ss') + ID AS id, JOBCODE AS "jobcode", JOG_TYPE AS "jogType", + WELL_CODE AS "wellCode", DEVCODE AS "devcode", + + + + AS "createTime", + JOB_STATUS AS "jobStatus", GET_JOB_PERSON AS "getJobPerson", + + + + AS "getJobTime", FIRST_STATE AS "firstState", + FIRST_STATE_PHOTOS AS "firstStatePhotos", CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confrimJobTime", HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "handleJobTime", HANDLE_MESSAGE AS "handleMessage", + HANDLE_PHOTOS AS "handlePhotos", FLOW AS flow + - SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS deptId + SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS "deptId" FROM alarm_job aj LEFT JOIN alarm_records ar ON ar.JOB_ID = aj.ID LEFT JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE @@ -150,11 +273,19 @@
- AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -179,11 +310,19 @@
- AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -207,47 +346,181 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + - - ar.id as alarmId, - aj.DEVCODE as devcode, - aj.WELL_CODE as wellCode, - ar.ALARM_TYPE as alarmType, - ar.ALARM_CONTENT as alarmContentName, - ar.STATUS as alarmStatus, - aj.ID as id, - aj.ID as jobId, - aj.JOG_TYPE as jobType, - aj.JOBCODE as jobCode, - aj.JOB_STATUS as jobStatus, - aj.JOB_BELONG_TO as jobBelongTo, + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, ar.ALARM_VALUE AS alarmValue, ar.ALARM_LEVEL AS alarmLevel, ar.ALARM_MSG AS alarmMessage, - TO_CHAR(aj.CREATE_TIME,'yyyy-MM-dd HH24:mi:ss') as createTime, - TO_CHAR(ar.ALARM_TIME,'yyyy-MM-dd HH24:mi:ss') as alarmTime, - aj.GET_JOB_PERSON as getJobPerson, - TO_CHAR(aj.SHOULD_GET_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldGetTime, - TO_CHAR(aj.GET_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as getJobTime, - aj.CONFIRM_JOB_PERSON as confirmJobPerson, - TO_CHAR(aj.CONFRIM_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as confirmJobTime, - aj.HANDLE_JOB_Person as handleJobPerson, - TO_CHAR(aj.SHOULD_HANDLE_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldHandleTime, - TO_CHAR(aj.HANDLE_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as handleJobTime, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, aj.JOB_FLAG_1 AS jobFlag, bwi.RESPONSIBLE_DEPT AS deptid + + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, + aj.JOB_FLAG_1 AS jobFlag, + bwi.RESPONSIBLE_DEPT AS deptid + + + + + ar.id AS "alarmId", + aj.DEVCODE AS devcode, + aj.WELL_CODE AS "wellCode", + ar.ALARM_TYPE AS "alarmType", + ar.ALARM_CONTENT AS "alarmContentName", + ar.STATUS AS "alarmStatus", + aj.ID AS id, + aj.ID AS "jobId", + aj.JOG_TYPE AS "jobType", + aj.JOBCODE AS "jobCode", + aj.JOB_STATUS AS "jobStatus", + aj.JOB_BELONG_TO AS "jobBelongTo", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + + + + AS "createTime", + + + + AS "alarmTime", + aj.GET_JOB_PERSON AS "getJobPerson", + + + + AS "shouldGetTime", + + + + AS "getJobTime", + aj.CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confirmJobTime", + aj.HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "shouldHandleTime", + + + + AS "handleJobTime", + aj.JOB_FLAG_1 AS "jobFlag", + bwi.RESPONSIBLE_DEPT AS deptid + + + @@ -298,7 +573,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -308,11 +584,19 @@ - AND aj.CREATE_TIME = ]]> #{beginTime} - AND aj.CREATE_TIME #{endTime} + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -350,14 +634,9 @@ WHERE ar.JOB_ID > 0 AND bwi.VALID = '1' AND aj.JOB_STATUS = '0' AND aj.JOB_FLAG_DELAY = '1' - - - - - - - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -367,11 +646,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -389,7 +676,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.responsible_dept = #{deptId} - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -399,11 +687,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -419,13 +715,20 @@ AND ( aj.JOB_STATUS = '1' OR aj.JOB_STATUS = '2') AND aj.JOB_FLAG_DELAY = '2' - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -449,18 +752,19 @@ AND bwi.responsible_dept = #{deptId} AND aj.CREATE_TIME = ]]> - - + + AND aj.CREATE_TIME - - + + - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -492,7 +796,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{jobListParam.keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{jobListParam.alarmLevel} @@ -504,34 +809,64 @@ AND aj.JOB_STATUS = #{jobListParam.jobStatus} - AND aj.CREATE_TIME = ]]> #{jobListParam.beginTime} + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME #{jobListParam.endTime} + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{jobListParam.getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{jobListParam.getJobEndTime} + AND aj.GET_JOB_TIME + + + - AND aj.SHOULD_GET_TIME = ]]> #{jobListParam.shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{jobListParam.shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{jobListParam.handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{jobListParam.handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{jobListParam.shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{jobListParam.shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -549,7 +884,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{alarmLevel} @@ -558,36 +894,63 @@ AND ar.ALARM_CONTENT = #{alarmContent} - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{getJobEndTime} - - + + + - AND aj.SHOULD_GET_TIME = ]]> #{shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -618,50 +981,73 @@ - + @@ -761,7 +1147,7 @@ - SELECT FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + SELECT + + FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + + + DATE_FORMAT(alarmTimeDate,'%Y-%m-%d %H:%i') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml index d9cfd1e..d686954 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -4,18 +4,18 @@ - - - - - - - - + + + + + + + + - - - + + + @@ -23,11 +23,34 @@ ID AS id, DEVICE_ID AS deviceId, DEVCODE AS devcode, WELL_CODE AS wellCode, ALARM_TYPE AS alarmType, ALARM_CONTENT AS alarmContent, ALARM_VALUE AS alarmValue, ALARM_TIME AS alarmTime, STATUS AS status, JOB_ID AS jobId - + + ${paramStr} + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + + ar.ID as id, ar.WELL_CODE as wellCode, ar.ALARM_CONTENT as alarmContentName, - DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i:%s') as alarmTime, + DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i') + AS alarmTime, ar.DEVICE_ID as deviceId, ar.STATUS as status, ar.alarm_type as alarmType, @@ -40,6 +63,44 @@ bwi.DEPTID AS deptid + + ar.ID as id, + ar.WELL_CODE as wellCode, + ar.ALARM_CONTENT as alarmContentName, + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS alarmTime, + ar.DEVICE_ID as deviceId, + ar.STATUS as status, + ar.alarm_type as alarmType, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + ar.DEVCODE as devcode, + aj.JOB_STATUS as jobStatus, + ar.JOB_ID as jobId, + bwi.DEPTID AS deptid + + + + + ar.ID as id, + ar.WELL_CODE as "wellCode", + ar.ALARM_CONTENT as "alarmContentName", + ar.DEVICE_ID as "deviceId", + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS "alarmTime", + ar.STATUS as "status", + ar.alarm_type as "alarmType", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + ar.DEVCODE as devcode, + aj.JOB_STATUS as "jobStatus", + ar.JOB_ID as "jobId", + bwi.DEPTID AS deptid + + + - - + + - UPDATE alarm_job aj, alarm_records ar + UPDATE alarm_records + SET status = 2 + WHERE ID = #{id} + + + + update alarm_job - aj.job_status = #{jobStatus} , - aj.handle_job_person = #{personId}, - aj.job_belong_to = #{personId}, - aj.handle_job_time = now(), - aj.handle_message = #{handleMessage}, - ar.status = 2 + job_status = #{jobStatus} , + handle_job_person = #{personId}, + job_belong_to = #{personId}, + handle_job_time = now(), + handle_message = #{handleMessage}, - WHERE aj.ID = ar.job_id - AND aj.ID = #{id} + WHERE ID=( + SELECT JOB_ID + FROM alarm_records + WHERE ID=#{id} + ) diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml index 4743d51..bbec5ff 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -4,17 +4,28 @@ - - - - - - - - - + + + + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + ID AS id, DEVCODE AS devcode, HIGHVALUE AS highvalue, LOWVALUE AS lowvalue, OVERTIME AS overtime, SALTATION AS saltation, SENSORCODE AS sensorcode, GRADE AS grade, TS AS ts @@ -34,21 +45,37 @@ - + SELECT ar.ID as id,ar.HIGHVALUE as "highValue",ar.LOWVALUE as "lowValue", + bd.ID AS "devId",bd.DEVCODE as "devcode", + bd.DEVICE_TYPE as "deviceType",bwi.ID AS "wellId",bwi.WELL_NAME as "wellName", + COALESCE (ar.OPERATOR,'') AS user, + bwi.WELL_CODE as "wellCode",bwi.DEEP as deep,bwi.DEPTID as deptid, + COALESCE (,'') AS ts + FROM alarm_rule ar + LEFT JOIN bus_device bd ON ar.DEVCODE = bd.DEVCODE + LEFT JOIN bus_device_well bdw ON bd.ID = bdw.DEVICE_ID + LEFT JOIN bus_well_info bwi ON bdw.WELL_ID = bwi.ID + WHERE bd.VALID = '1' AND bdw.VALID ='1' - AND (ar.DEVCODE LIKE concat(CONCAT('%',#{keywords}),'%') - OR bwi.WELL_CODE LIKE concat(CONCAT('%',#{keywords}),'%') ) + AND (ar.DEVCODE LIKE + + OR bwi.WELL_CODE LIKE + ) AND bd.DEVICE_TYPE= #{deviceType} @@ -71,13 +98,13 @@ WHERE ID=#{id} 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 2fa12b0..0a71551 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 @@ -2,11 +2,35 @@ + + + A.wellCount , + A.deptid, + SD.simplename as deptName, + SD.pid + + + A.wellCount , + A.deptid, + SD.simplename as deptName, + SD.pid + + + A.wellCount , + A.deptid, + SD.simplename as "deptName", + SD.pid + + + + + + SELECT - COUNT( 1 ) AS wellCount, - WELL_TYPE AS wellType + COUNT( 1 ) AS "wellCount", + WELL_TYPE AS "wellType" FROM bus_well_info WHERE VALID = '1' AND DEPTID IN (${deptIds}) GROUP BY WELL_TYPE - + - + - + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi:ss') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi:ss') + + + + ifnull(SUM(IF(BD.ONLINE_STATE=${numberStatus},1,0)),0) + + + + COALESCE(SUM(CASE WHEN BD.ONLINE_STATE=${numberStatus} THEN 1 ELSE 0 END)) + + + + COALESCE(SUM(IF(BD.ONLINE_STATE=${numberStatus},1,0)),0) + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(CASE WHEN job_status=${numberStatus} THEN 1 ELSE 0 END)) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + + + + + + + + + + + + - + SELECT - ifnull(SUM(IF(job_status='0',1,0)),0) AS beforeGet, - ifnull(SUM(IF(job_status='1',1,0)),0) AS beforeConfirm, - ifnull(SUM(IF(job_status='2',1,0)),0) AS inHandle, - ifnull(SUM(IF(job_status='3',1,0)),0) AS 'over', - ifnull(SUM(IF(job_status='4',1,0)),0) AS cancel + + + + AS "beforeGet", + + + + AS "beforeConfirm", + + + + AS "inHandle", + + + + AS "over", + + + + AS cancel FROM alarm_job aj INNER JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE INNER JOIN bus_device bd ON aj.DEVCODE = bd.DEVCODE @@ -104,11 +238,19 @@ AND bwi.DEPTID IN (${deptIds}) - AND aj.CREATE_TIME ]]> #{beginTime} - AND aj.CREATE_TIME DATE_ADD( #{endTime}, INTERVAL 1 DAY ) + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml index 2a702c0..7a9c269 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml @@ -4,12 +4,12 @@ - - - - - - + + + + + + @@ -27,18 +27,18 @@ - SELECT * FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND name = #{typeName} ) ; - SELECT * FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) ; - SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = 'alarmType' ) @@ -46,15 +46,15 @@ - + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = 'jobStatus' ) AND code = #{jobStatus}; - + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) AND code = #{codeNum}; @@ -64,8 +64,9 @@ - + SELECT id as value,alarm_content as name ,alarm_type as "alarmType",device_type as "deviceType" + FROM base_alarm_content_type WHERE alarm_type = #{alarmType} AND device_type= #{deviceType} @@ -84,7 +85,7 @@ + + + DATE_FORMAT(now(),'%Y-%m-%d %H:%i:%s') + + + + TO_CHAR(now(),'yyyy-mm-dd hh24:mi:ss') + + + + TO_CHAR(sysdate,'yyyy-mm-dd hh24:mi:ss') + + diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml index f4a17d3..fce044c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml @@ -34,7 +34,7 @@ SELECT b.SENSORCODE AS SENSORCODE FROM base_sensor b LEFT JOIN bus_device d ON b.DEVICE_TYPE=d.DEVICE_TYPE - WHERE d.VALID = 1 + WHERE d.VALID = '1' and d.DEVCODE = diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java index 5c823d6..565de23 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java @@ -38,7 +38,7 @@ deviceRule.setSensorcode(getSensorCodeByDevCode(devCode)); deviceRule.setTs(new Date()); deviceRule.setOperator( permissionService.getAuthService().getLoginUser().getAccount()); - save(deviceRule); + this.baseMapper.insert(deviceRule); } public List getDeviceRuleListByDevCode(String devCode) { diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java index aa09c1f..25e292b 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java @@ -20,8 +20,9 @@ NOISEDATA_EXPORT("noiseData.xlsx","noiseData.xlsx","噪声记录仪数据"), BUSCONCENTRATOR_EXPORT("busConcentrator.xlsx", "busConcentrator.xlsx", "集中器数据"), DEVICE_EXPORT("device.xlsx", "device.xlsx", "设备数据"), - LIQUIDGASDATA_EXPORT("gasLiquidData.xlsx", "gasLiquidData.xlsx", "燃气液位一体化数据"); - + LIQUIDGASDATA_EXPORT("gasLiquidData.xlsx", "gasLiquidData.xlsx", "燃气液位一体化数据"), + ALARMJOB_EXPORT("alarmJobData.xlsx", "alarmJobData.xlsx", "预警工单"), + ALARMRECORD_EXPORT("alarmRecordData.xlsx", "alarmRecordData.xlsx", "预警工单"); /** * 导出模板相对路径 */ diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeptPermission.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeptPermission.java index 6798b47..aad89b7 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeptPermission.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeptPermission.java @@ -62,6 +62,7 @@ * 使用地图(0百度,1高德,2arcgis) */ @TableField("MAP") + @JSONField(serialize = false) private String map; @TableField(exist = false) private List wellTypes; diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceModels.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceModels.java index da06a5c..cbe95c7 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceModels.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceModels.java @@ -26,7 +26,7 @@ /** * 主键 */ - @TableId(value = "ID", type = IdType.ASSIGN_ID) + @TableId(value = "ID", type = IdType.AUTO) private Long id; /** * 型号名称 diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceRule.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceRule.java index 305a310..16239d7 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceRule.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceRule.java @@ -25,7 +25,7 @@ /** * 自增主键 */ - @TableId(value = "ID", type = IdType.AUTO) + @TableId(value = "id", type = IdType.AUTO) private Long id; /** * 设备编号 diff --git a/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java index f8d2cfd..348c792 100644 --- a/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java +++ b/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -204,10 +204,8 @@ if (null == id) { throw new ServiceException(CoreExceptionEnum.REQUEST_NULL); } - SuccessResponseData resultData = new SuccessResponseData(); resultData.setData(busWellInfoService.getById(id)); - return resultData; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java index 1018827..1d0c647 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java +++ b/casic-alarm/src/main/java/com/casic/missiles/core/util/EhcacheConstant.java @@ -1,5 +1,6 @@ package com.casic.missiles.core.util; +import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.system.dao.AlarmRuleMapper; import com.casic.missiles.modular.system.dao.SysDictMapper; import org.springframework.cache.annotation.CacheEvict; @@ -23,7 +24,7 @@ @Cacheable(value = "CONSTANT", key = "'deviceType-'+#deviceTypeId") public String getDeviceTypeNameById ( String deviceTypeId) { - String retStr = sysDictMapper.getDeviceTypeNameById(deviceTypeId); + String retStr = sysDictMapper.getDeviceTypeNameById(StrUtil.isEmpty(deviceTypeId)?0:Long.valueOf(deviceTypeId)); return retStr; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java index c6689dd..faace22 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmJobController.java @@ -14,11 +14,14 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; import com.casic.missiles.modular.alarm.model.JobListParam; import com.casic.missiles.modular.alarm.service.IAlarmJobService; import com.casic.missiles.modular.alarm.service.ISysDictService; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import lombok.extern.slf4j.Slf4j; +import org.hswebframework.expands.office.excel.ExcelIO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -174,7 +177,7 @@ private void alarmJobWrapper(Map map) { // 设置人员姓名 for (String key : map.keySet()) { - if (key.contains("jobperson") || key.contains("jobbelongto")) { + if (key.contains("jobPerson") || key.contains("jobBelongTo")) { Object object = map.get(key); if (object != null) { String newVal = EhcacheConstant.retBean().getUsernameById(Long.parseLong(String.valueOf(object))); @@ -184,7 +187,7 @@ } //设置闸井相关字段 - String wellCode = map.get("wellcode").toString(); + String wellCode = map.get("wellCode").toString(); Map wellInfoMap = EhcacheConstant.retBean().getWellInfoViaCode(wellCode); // 设置权属单位、负责人、联系电话 String deptidStr = wellInfoMap.get("deptid").toString(); @@ -205,17 +208,17 @@ map.putAll(wellInfoMap); // 告警类型 - String alarmTypeStr = map.get("alarmtype").toString(); - map.put("alarmtypename", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); + String alarmTypeStr = map.get("alarmType").toString(); + map.put("alarmTypeName", EhcacheConstant.retBean().getAlarmTypeNameByCodeNum(alarmTypeStr)); // 告警内容 - String alarmContentNameStr = map.get("alarmcontentname").toString(); + String alarmContentNameStr = map.get("alarmContentName").toString(); map.put("alarmContent", EhcacheConstant.retBean().getAlarmContentByName(alarmContentNameStr)); // 告警值加单位 - if (ObjectUtil.isNotEmpty(map.get("alarmvalue"))) { - String alarmValue = map.get("alarmvalue").toString(); - String alarmContentName = map.get("alarmcontentname").toString(); + if (ObjectUtil.isNotEmpty(map.get("alarmValue"))) { + String alarmValue = map.get("alarmValue").toString(); + String alarmContentName = map.get("alarmContentName").toString(); if ("液位超限".equals(alarmContentName)) { alarmValue += "m"; map.replace("alarmValue", alarmValue); @@ -231,12 +234,12 @@ } // 工单状态 - String jobStatusStr = map.get("jobstatus").toString(); + String jobStatusStr = map.get("jobStatus").toString(); map.put("jobStatusName", EhcacheConstant.retBean().getJobStatusNameByCodeNum(jobStatusStr)); // 告警值 if (alarmContentNameStr.contains("井盖") || "2".equals(alarmTypeStr)) { - map.replace("alarmvalue", "--"); + map.replace("alarmValue", "--"); } // 流转记录(工单详情用) @@ -279,7 +282,6 @@ retList.forEach(this::alarmJobWrapper); page.setRecords(retList); Map retMap = new HashMap<>(); - return ResponseData.success(super.packForBT(page)); } @@ -370,59 +372,42 @@ page.setSize(maxRowsExcel); page.setSearchCount(false); page.offset(); - String keywords = httpServletRequest.getParameter("keywords"); String beginTime = httpServletRequest.getParameter("beginTime"); String endTime = httpServletRequest.getParameter("endTime"); String jobStatusStr = httpServletRequest.getParameter("jobStatus"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); - + List> jobExpList = alarmJobService.jobList(page, keywords, beginTime, endTime, jobStatusStr, alarmTypeStr, alarmContentStr, dataScope, currentUser.getId()); jobExpList.forEach(this::alarmJobWrapper); + List jobExcelDtoList = new ArrayList<>(); + jobExpList.stream().forEach( + alarmExp -> { + JobExcelDto jobExcelDto = mapToObjcet(alarmExp); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(jobExpList)) { - fileInputStream = new FileInputStream(templatePath + "/jobRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/jobRecTemplate.xlsx"); - } + jobExcelDtoList.add(jobExcelDto); + } + ); + super.exportExcel(JobExcelDto.class, jobExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - try { - - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "jobOverview.xlsx"); - Map var = new HashMap<>(); - var.put("标题", "工单一览表"); - var.put("list", jobExpList); - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("工单编号", "jobCode")); - dataFieldDefines.add(new DataFieldDefine("工单创建时间", "createTime")); - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("告警时间", "alarmTime")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - dataFieldDefines.add(new DataFieldDefine("处理人", "handleJobPerson")); - dataFieldDefines.add(new DataFieldDefine("处理时间", "handleJobTime")); - - this.exportExcelMaps(dataFieldDefines, jobExpList, "工单一览表"); - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; + private JobExcelDto mapToObjcet(Map alarmExp) { + JobExcelDto jobExcelDto = new JobExcelDto(); + jobExcelDto.setJobCode(alarmExp.get("id").toString()); + jobExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + jobExcelDto.setDevcode(alarmExp.get("devcode").toString()); + jobExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + jobExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + jobExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + jobExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + jobExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + jobExcelDto.setCreateTime(alarmExp.get("createTime").toString()); + jobExcelDto.setJobStatusName(alarmExp.get("jobStatusName") == null ? "" : alarmExp.get("jobStatusName").toString()); + jobExcelDto.setHandleJobPerson(alarmExp.get("staff").toString()); + jobExcelDto.setGetJobTime(alarmExp.get("getJobTime") == null ? "" : alarmExp.get("getJobTime").toString()); + return jobExcelDto; } /** @@ -523,7 +508,7 @@ */ @RequestMapping(value = "/handleJob") @ResponseBody - public Object handleJob(@RequestParam(value = "id", required = true) int id) { + public Object handleJob(@RequestParam(value = "id", required = true) Long id) { AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (alarmJobService.handleJob(id, currentUser.getId())) { return ResponseData.success(); @@ -537,8 +522,7 @@ */ @RequestMapping(value = "/info") @ResponseBody - public Object jobInfo(@RequestParam(value = "id", required = true) int id) { - + public Object jobInfo(@RequestParam(value = "id", required = true) Long id) { DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List> retList = alarmJobService.jobInfo(id, dataScope, currentUser.getId()); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java index 51e0d50..3ab4185 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRecordsController.java @@ -1,18 +1,22 @@ package com.casic.missiles.modular.alarm.controller; -import cn.hutool.core.collection.CollectionUtil; +; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.core.base.controller.ExportController; -import com.casic.missiles.core.base.model.DataFieldDefine; import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.util.EhcacheConstant; import com.casic.missiles.model.response.ResponseData; +import com.casic.missiles.modular.alarm.model.JobExcelDto; +import com.casic.missiles.modular.alarm.model.RecordExcelDto; import com.casic.missiles.modular.alarm.service.IAlarmRecordsService; +import com.casic.missiles.modular.system.dto.ExcelModel.HarmfulDataDto; +import com.casic.missiles.modular.system.enmus.DeviceExportEnum; import com.casic.missiles.modular.system.model.AlarmRecords; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -69,18 +73,16 @@ String statusStr = httpServletRequest.getParameter("status"); String alarmTypeStr = httpServletRequest.getParameter("alarmType"); String alarmContentStr = httpServletRequest.getParameter("alarmContentType"); - Page> page = PageFactory.defaultPage(); DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); - if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { alarmTypeStr = "1"; } + dataScope.setScopeName("bwi.DEPTID"); List> retList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); retList.forEach(this::alarmRecordWrapper); page.setRecords(retList); - return ResponseData.success(super.packForBT(page)); } @@ -161,7 +163,6 @@ page.setSize(maxRowsExcel); page.offset(); page.setSearchCount(false); - DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); if (!currentUser.getRoleTips().contains(sAdmin) && !currentUser.getRoleTips().contains(sOperator)) { @@ -169,46 +170,28 @@ } List> alarmExpList = alarmRecordsService.alarmList(page, keywords, beginTime, endTime, statusStr, alarmTypeStr, alarmContentStr, dataScope); alarmExpList.forEach(this::alarmRecordWrapper); - FileInputStream fileInputStream = null; - if (CollectionUtil.isEmpty(alarmExpList)) { - fileInputStream = new FileInputStream(templatePath + "/alarmRecEmpty.xlsx"); - } else { - fileInputStream = new FileInputStream(templatePath + "/alarmRecTemplate.xlsx"); - } + List recordExcelDtoList = new ArrayList<>(); + alarmExpList.stream().forEach( + alarmExp -> { + RecordExcelDto recordExcelDto = mapToObjcet(alarmExp); + recordExcelDtoList.add(recordExcelDto); + } + ); + super.exportExcel(RecordExcelDto.class, recordExcelDtoList, DeviceExportEnum.HARMFULDATA_EXPORT.getFileName()); + } - - try { - httpServletResponse.setContentType("application/octet-stream"); - httpServletResponse.addHeader("Content-Disposition", " attachment;filename=" + "alarmOverview.xlsx"); - - Map var = new HashMap<>(); - var.put("标题", "报警一览表"); - var.put("list", alarmExpList); - - List dataFieldDefines = new ArrayList<>(); - // - dataFieldDefines.add(new DataFieldDefine("井编号", "wellCode")); - dataFieldDefines.add(new DataFieldDefine("设备编号", "devcode")); - dataFieldDefines.add(new DataFieldDefine("详细地址", "position")); - dataFieldDefines.add(new DataFieldDefine("告警类型", "alarmTypeName")); - dataFieldDefines.add(new DataFieldDefine("告警原因", "alarmContentName")); - dataFieldDefines.add(new DataFieldDefine("告警数值", "alarmValue")); - dataFieldDefines.add(new DataFieldDefine("权属单位", "deptName")); - dataFieldDefines.add(new DataFieldDefine("处理状态", "jobStatusName")); - - this.exportExcelMaps(dataFieldDefines, alarmExpList, "报警一览表"); - - } catch (IOException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - httpServletResponse.getOutputStream().flush(); - httpServletResponse.getOutputStream().close(); - fileInputStream.close(); - } - ; - + private RecordExcelDto mapToObjcet(Map alarmExp) { + RecordExcelDto recordExcelDto = new RecordExcelDto(); + recordExcelDto.setWellCode(alarmExp.get("wellCode").toString()); + recordExcelDto.setDevcode(alarmExp.get("devcode").toString()); + recordExcelDto.setPosition(alarmExp.get("position") == null ? "" : alarmExp.get("position").toString()); + recordExcelDto.setAlarmTypeName(alarmExp.get("alarmTypeName") == null ? "" : alarmExp.get("alarmTypeName").toString()); + recordExcelDto.setAlarmContentName(alarmExp.get("alarmContentName") == null ? "" : alarmExp.get("alarmContentName").toString()); + recordExcelDto.setAlarmLevel(alarmExp.get("alarmLevel") == null ? "" : alarmExp.get("alarmLevel").toString()); + recordExcelDto.setAlarmValue(alarmExp.get("alarmValue") == null ? "" : alarmExp.get("alarmValue").toString()); + recordExcelDto.setDeptName(alarmExp.get("deptName")==null?"":alarmExp.get("deptName").toString()); + recordExcelDto.setLogTime(alarmExp.get("alarmTime").toString()); + return recordExcelDto; } /** @@ -216,7 +199,7 @@ */ @RequestMapping(value = "/cancelAlarm") @ResponseBody - public Object cancelAlarm(@RequestParam(value = "id", required = true) int id, //jobId + public Object cancelAlarm(@RequestParam(value = "id", required = true) Long id, //jobId @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); @@ -243,15 +226,14 @@ @RequestParam(value = "jobStatus", required = true) String jobStatus, @RequestParam(value = "handleMessage", required = true) String handleMessage) { Map retMap = new HashMap<>(); - //根据查询条件查询alarm_record记录 DataScope dataScope = iCommonPermissionService.getAuthService().getLoginUserDataScope(); AuthUser currentUser = iCommonPermissionService.getAuthService().getLoginUser(); List alarmRecords = alarmRecordsService.alarmListNoPage(dataScope, keywords, alarmType, alarmContent, beginTime, endTime); //根据jobId调用closeJob - for (AlarmRecords alarmRecord : alarmRecords) { - alarmRecordsService.cancelAlarm(alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); - } +// for (AlarmRecords alarmRecord : alarmRecords) { +// alarmRecordsService.cancelAlarm((Long) alarmRecord.getJobId(), jobStatus, handleMessage, currentUser.getId()); +// } return ResponseData.success(); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java index 3b39aeb..86e00d5 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/controller/AlarmRuleController.java @@ -79,7 +79,7 @@ } private void alarmRuleWrapper(Map map) { - String deviceType = map.get("deviceType").toString(); + String deviceType = map.get("deviceType")==null?"":map.get("deviceType").toString(); long deptid = Long.parseLong(map.get("deptid").toString()); map.put("deviceTypeName", EhcacheConstant.retBean().getDeviceTypeNameById(deviceType)); map.put("deptName", EhcacheConstant.retBean().getDeptNameById(deptid)); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java new file mode 100644 index 0000000..e720a3c --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/JobExcelDto.java @@ -0,0 +1,38 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class JobExcelDto { + @ExcelProperty("工单编号") + private String jobCode; + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("部门名称") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("工单创建时间") + private String createTime; + @ExcelProperty("处理状态") + private String jobStatusName; + @ExcelProperty("处理人") + private String handleJobPerson; + @ExcelProperty("接单时间") + private String getJobTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java new file mode 100644 index 0000000..c9cf49a --- /dev/null +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/model/RecordExcelDto.java @@ -0,0 +1,32 @@ +package com.casic.missiles.modular.alarm.model; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author cz + * @Date 2022-6-28 + */ +@Data +@NoArgsConstructor +public class RecordExcelDto { + @ExcelProperty("点位编号") + private String wellCode; + @ExcelProperty("设备编号") + private String devcode; + @ExcelProperty("权属单位") + private String deptName; + @ExcelProperty("详细地址") + private String position; + @ExcelProperty("告警类型") + private String alarmTypeName; + @ExcelProperty("告警原因") + private String alarmContentName; + @ExcelProperty("告警等级") + private String alarmLevel; + @ExcelProperty("告警数值") + private String alarmValue; + @ExcelProperty("告警时间") + private String logTime; +} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java index 5f47018..d49386c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmJobService.java @@ -37,7 +37,7 @@ List> jobListSearchApp(Page> page, JobListParam jobListParam, Long deptId, Long userId, Long leaderId); - List> jobInfo(int id, DataScope dataScope, Long personId); + List> jobInfo(Long id, DataScope dataScope, Long personId); boolean getJob(int id, long personId); @@ -51,7 +51,7 @@ boolean overAlarm(int id); - boolean handleJob(int id, long personId); + boolean handleJob(Long id, long personId); Map countByJobStatus(long deptId, int spanDays); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java index 267fff5..8a5b270 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/IAlarmRecordsService.java @@ -22,5 +22,5 @@ List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent,String beginTime, String endTime); - boolean cancelAlarm(int id,String jobStatus, String handleMessage, long personId); + boolean cancelAlarm(Long id,String jobStatus, String handleMessage, long personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java index 5ef681b..c52630c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmJobServiceImpl.java @@ -144,7 +144,7 @@ } @Override - public List> jobInfo(int id, DataScope dataScope, Long personId) { + public List> jobInfo(Long id, DataScope dataScope, Long personId) { List> job = this.baseMapper.jobInfo(id, dataScope, personId); return job; } @@ -232,7 +232,7 @@ } @Override - public boolean handleJob(int id, long personId) { + public boolean handleJob(Long id, long personId) { return this.baseMapper.handleJob(id, personId); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index 2f9b8d1..d2cc7f1 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -16,7 +16,7 @@ /** *

- * 服务实现类 + * 服务实现类 *

* * @author casic123 @@ -27,12 +27,12 @@ @Override - public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { + public List> alarmList(Page> page, String keywords, String beginTime, String endTime, String status, String alarmType, String alarmContent, DataScope dataScope) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmList(page,keywords,beginTime,endTime,status,alarmType,sContent,dataScope); + return this.baseMapper.alarmList(page, keywords, beginTime, endTime, status, alarmType, sContent, dataScope); } /** @@ -41,15 +41,15 @@ @Override public List alarmListNoPage(DataScope dataScope, String keywords, String alarmType, String alarmContent, String beginTime, String endTime) { String sContent = null; - if (ObjectUtil.isNotEmpty(alarmContent)){ + if (ObjectUtil.isNotEmpty(alarmContent)) { sContent = EhcacheConstant.retBean().getAlarmContentName(Integer.valueOf(alarmContent)); } - return this.baseMapper.alarmListNoPage(dataScope,keywords,alarmType,sContent,beginTime,endTime); + return this.baseMapper.alarmListNoPage(dataScope, keywords, alarmType, sContent, beginTime, endTime); } @Override - public boolean cancelAlarm(int id, String jobStatus, String handleMessage, long personId) { - return this.baseMapper.cancelAlarm(id,jobStatus,handleMessage,personId); + public boolean cancelAlarm(Long id, String jobStatus, String handleMessage, long personId) { + return this.baseMapper.cancelAlarm(id) && this.baseMapper.closeJob(id, jobStatus, handleMessage, personId); } } 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 d3bd513..5ea6d1c 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,5 +1,6 @@ package com.casic.missiles.modular.alarm.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.modular.alarm.service.ISysDictService; import com.casic.missiles.modular.system.dao.SysDictMapper; @@ -26,27 +27,27 @@ 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(String alarmType, String devType) { + 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/dao/AlarmJobMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java index 958a1ad..57d3173 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmJobMapper.java @@ -48,7 +48,7 @@ Map countMyJob(@Param("userId") long userId, @Param("deptId") long deptId, @Param("spanDays") int spanDays); - List> jobInfo(@Param("id") int id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); + List> jobInfo(@Param("id") Long id, @Param("dataScope") DataScope dataScope, @Param("personId") Long personId); // boolean getJob(@Param("id") int id,@Param("personId") long personId); boolean getJob(@Param("id") int id, @Param("personId") long personId, @Param("getTime") Date getTime, @Param("shouldHandleTime") Date shouldHandleTime); @@ -71,7 +71,7 @@ boolean overJobAlarmRecrds(@Param("id") int id); - boolean handleJob(@Param("id") int id, @Param("personId") long personId); + boolean handleJob(@Param("id") Long id, @Param("personId") long personId); List> countByDataScope(@Param("dataScope") DataScope dataScope, @Param("alarmType") String alarmType, @Param("jobStatus") String jobStatus, @Param("beginTime") String beginTime, @Param("endTime") String endTime); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java index 3874bfa..4b34b3c 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/AlarmRecordsMapper.java @@ -11,7 +11,7 @@ /** *

- * Mapper 接口 + * Mapper 接口 *

* * @author casic123 @@ -19,9 +19,12 @@ */ public interface AlarmRecordsMapper extends BaseMapper { - List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent,@Param("dataScope") DataScope dataScope); + List> alarmList(@Param("page") Page> page, @Param("keywords") String keywords, @Param("beginTime") String beginTime, @Param("endTime") String endTime, @Param("status") String status, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("dataScope") DataScope dataScope); List alarmListNoPage(@Param("scope") DataScope dataScope, @Param("keywords") String keywords, @Param("alarmType") String alarmType, @Param("alarmContent") String alarmContent, @Param("beginTime") String beginTime, @Param("endTime") String endTime); - boolean cancelAlarm(@Param("id") int id,@Param("jobStatus")String jobStatus,@Param("handleMessage") String handleMessage,@Param("personId") long personId); + boolean cancelAlarm(@Param("id") Long id); + + boolean closeJob(@Param("id") Long id, @Param("jobStatus") String jobStatus, @Param("handleMessage") String handleMessage, @Param("personId") long personId); + } 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 9d7506f..c12b51d 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 @@ -22,7 +22,7 @@ List> getTypeViaCode(@Param("code") String code); List> getAlarmContent(@Param("alarmType") String alarmType,@Param("deviceType") String devType); List> testPage(@Param("page") Page> page); - String getDeviceTypeNameById(@Param("deviceTypeId") String deviceTypeId); + String getDeviceTypeNameById(@Param("deviceTypeId") Long deviceTypeId); String getDeptNameById(@Param("deptid") long deptid); String getAlarmTypeNameByCodeNum(@Param("alarmType") String alarmType); String getAlarmContentName(@Param("id") int id); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml index b279d9a..401a28a 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmJobMapper.xml @@ -24,40 +24,132 @@ + + DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(${paramTime},'yyyy-mm-dd hh24:mi') + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + ifnull(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + coalesce(MAX(ar.ID),0) + + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + + + + + + AND date_part('day',now()-aj.create_time) ${paramDay} + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + - ID AS id, JOBCODE AS jobcode, JOG_TYPE AS jogType, - WELL_CODE AS wellCode, DEVCODE AS devcode, DATE_FORMAT(CREATE_TIME,'%Y-%m-%d %H:%i:%s') AS createTime, - JOB_STATUS AS jobStatus, GET_JOB_PERSON AS getJobPerson, - DATE_FORMAT(GET_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS getJobTime, FIRST_STATE AS firstState, - FIRST_STATE_PHOTOS AS firstStatePhotos, CONFIRM_JOB_PERSON AS confirmJobPerson, - DATE_FORMAT(CONFRIM_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS confrimJobTime, HANDLE_JOB_Person AS handleJobPerson, - DATE_FORMAT(HANDLE_JOB_TIME,'%Y-%m-%d %H:%i:%s') AS handleJobTime, HANDLE_MESSAGE AS handleMessage, - HANDLE_PHOTOS AS handlePhotos, FLOW AS flow - - - - - DATE_FORMAT(${paramTime},'%Y-%m-%d %H:%i:%S') - - - - to_date(${paramTime},'yyyy-MM-dd HH24:mi:ss') - - - - to_char(${paramTime},'yyyy-mm-dd hh24:mi:ss') + ID AS id, JOBCODE AS "jobcode", JOG_TYPE AS "jogType", + WELL_CODE AS "wellCode", DEVCODE AS "devcode", + + + + AS "createTime", + JOB_STATUS AS "jobStatus", GET_JOB_PERSON AS "getJobPerson", + + + + AS "getJobTime", FIRST_STATE AS "firstState", + FIRST_STATE_PHOTOS AS "firstStatePhotos", CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confrimJobTime", HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "handleJobTime", HANDLE_MESSAGE AS "handleMessage", + HANDLE_PHOTOS AS "handlePhotos", FLOW AS flow + - SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS deptId + SELECT MAX( aj.ID ) AS id, bwi.RESPONSIBLE_DEPT AS "deptId" FROM alarm_job aj LEFT JOIN alarm_records ar ON ar.JOB_ID = aj.ID LEFT JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE @@ -150,11 +273,19 @@
- AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -179,11 +310,19 @@
- AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -207,47 +346,181 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + - - ar.id as alarmId, - aj.DEVCODE as devcode, - aj.WELL_CODE as wellCode, - ar.ALARM_TYPE as alarmType, - ar.ALARM_CONTENT as alarmContentName, - ar.STATUS as alarmStatus, - aj.ID as id, - aj.ID as jobId, - aj.JOG_TYPE as jobType, - aj.JOBCODE as jobCode, - aj.JOB_STATUS as jobStatus, - aj.JOB_BELONG_TO as jobBelongTo, + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, ar.ALARM_VALUE AS alarmValue, ar.ALARM_LEVEL AS alarmLevel, ar.ALARM_MSG AS alarmMessage, - TO_CHAR(aj.CREATE_TIME,'yyyy-MM-dd HH24:mi:ss') as createTime, - TO_CHAR(ar.ALARM_TIME,'yyyy-MM-dd HH24:mi:ss') as alarmTime, - aj.GET_JOB_PERSON as getJobPerson, - TO_CHAR(aj.SHOULD_GET_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldGetTime, - TO_CHAR(aj.GET_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as getJobTime, - aj.CONFIRM_JOB_PERSON as confirmJobPerson, - TO_CHAR(aj.CONFRIM_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as confirmJobTime, - aj.HANDLE_JOB_Person as handleJobPerson, - TO_CHAR(aj.SHOULD_HANDLE_TIME,'yyyy-MM-dd HH24:mi:ss') as shouldHandleTime, - TO_CHAR(aj.HANDLE_JOB_TIME,'yyyy-MM-dd HH24:mi:ss') as handleJobTime, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, aj.JOB_FLAG_1 AS jobFlag, bwi.RESPONSIBLE_DEPT AS deptid + + + ar.id AS alarmId, + aj.DEVCODE AS devcode, + aj.WELL_CODE AS wellCode, + ar.ALARM_TYPE AS alarmType, + ar.ALARM_CONTENT AS alarmContentName, + ar.STATUS AS alarmStatus, + aj.ID AS id, + aj.ID AS jobId, + aj.JOG_TYPE AS jobType, + aj.JOBCODE AS jobCode, + aj.JOB_STATUS AS jobStatus, + aj.JOB_BELONG_TO AS jobBelongTo, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + + + + AS createTime, + + + + AS alarmTime, + aj.GET_JOB_PERSON AS getJobPerson, + + + + AS shouldGetTime, + + + + AS getJobTime, + aj.CONFIRM_JOB_PERSON AS confirmJobPerson, + + + + AS confirmJobTime, + aj.HANDLE_JOB_Person AS handleJobPerson, + + + + AS shouldHandleTime, + + + + AS handleJobTime, + aj.JOB_FLAG_1 AS jobFlag, + bwi.RESPONSIBLE_DEPT AS deptid + + + + + ar.id AS "alarmId", + aj.DEVCODE AS devcode, + aj.WELL_CODE AS "wellCode", + ar.ALARM_TYPE AS "alarmType", + ar.ALARM_CONTENT AS "alarmContentName", + ar.STATUS AS "alarmStatus", + aj.ID AS id, + aj.ID AS "jobId", + aj.JOG_TYPE AS "jobType", + aj.JOBCODE AS "jobCode", + aj.JOB_STATUS AS "jobStatus", + aj.JOB_BELONG_TO AS "jobBelongTo", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + + + + AS "createTime", + + + + AS "alarmTime", + aj.GET_JOB_PERSON AS "getJobPerson", + + + + AS "shouldGetTime", + + + + AS "getJobTime", + aj.CONFIRM_JOB_PERSON AS "confirmJobPerson", + + + + AS "confirmJobTime", + aj.HANDLE_JOB_Person AS "handleJobPerson", + + + + AS "shouldHandleTime", + + + + AS "handleJobTime", + aj.JOB_FLAG_1 AS "jobFlag", + bwi.RESPONSIBLE_DEPT AS deptid + + + @@ -298,7 +573,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -308,11 +584,19 @@ - AND aj.CREATE_TIME = ]]> #{beginTime} - AND aj.CREATE_TIME #{endTime} + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -350,14 +634,9 @@ WHERE ar.JOB_ID > 0 AND bwi.VALID = '1' AND aj.JOB_STATUS = '0' AND aj.JOB_FLAG_DELAY = '1' - - - - - - - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -367,11 +646,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -389,7 +676,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.responsible_dept = #{deptId} - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -399,11 +687,19 @@ - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + @@ -419,13 +715,20 @@ AND ( aj.JOB_STATUS = '1' OR aj.JOB_STATUS = '2') AND aj.JOB_FLAG_DELAY = '2' - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime}, 'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - and aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + and aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -449,18 +752,19 @@ AND bwi.responsible_dept = #{deptId} AND aj.CREATE_TIME = ]]> - - + + AND aj.CREATE_TIME - - + + - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_TYPE = #{alarmType} @@ -492,7 +796,8 @@ AND ar.ALARM_TYPE = '1' AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{jobListParam.keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{jobListParam.alarmLevel} @@ -504,34 +809,64 @@ AND aj.JOB_STATUS = #{jobListParam.jobStatus} - AND aj.CREATE_TIME = ]]> #{jobListParam.beginTime} + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME #{jobListParam.endTime} + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{jobListParam.getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{jobListParam.getJobEndTime} + AND aj.GET_JOB_TIME + + + - AND aj.SHOULD_GET_TIME = ]]> #{jobListParam.shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{jobListParam.shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{jobListParam.handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{jobListParam.handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{jobListParam.shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{jobListParam.shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -549,7 +884,8 @@ AND bwi.responsible_dept = #{deptId} AND bwi.VALID = '1' - AND aj.WELL_CODE like concat('%',CONCAT(#{keywords},'%')) + AND aj.WELL_CODE like + AND ar.ALARM_LEVEL = #{alarmLevel} @@ -558,36 +894,63 @@ AND ar.ALARM_CONTENT = #{alarmContent} - AND aj.CREATE_TIME = ]]> to_date(#{beginTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME = ]]> + + + - AND aj.CREATE_TIME to_date(#{endTime},'yyyy-MM-dd HH24:mi:ss') + AND aj.CREATE_TIME + + + - AND aj.GET_JOB_TIME = ]]> #{getJobBeginTime} + AND aj.GET_JOB_TIME = ]]> + + + - AND aj.GET_JOB_TIME #{getJobEndTime} - - + + + - AND aj.SHOULD_GET_TIME = ]]> #{shouldGetBeginTime} + AND aj.SHOULD_GET_TIME = ]]> + + + - AND aj.SHOULD_GET_TIME #{shouldGetEndTime} + AND aj.SHOULD_GET_TIME + + + - AND aj.HANDLE_JOB_TIME = ]]> #{handleJobBeginTime} + AND aj.HANDLE_JOB_TIME = ]]> + + + - AND aj.HANDLE_JOB_TIME #{handleJobEndTime} + AND aj.HANDLE_JOB_TIME + + + - AND aj.SHOULD_HANDLE_TIME = ]]> #{shouldHandleBeginTime} + AND aj.SHOULD_HANDLE_TIME = ]]> + + + - AND aj.SHOULD_HANDLE_TIME #{shouldHandleEndTime} + AND aj.SHOULD_HANDLE_TIME + + + @@ -618,50 +981,73 @@ - + @@ -761,7 +1147,7 @@ - SELECT FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + SELECT + + FROM alarm_now_view w WHERE 1 = 1 ORDER BY alarmTimeDate DESC + + + DATE_FORMAT(alarmTimeDate,'%Y-%m-%d %H:%i') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + + TO_CHAR(alarmTimeDate,'yyyy-mm-dd hh24:mi') + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml index d9cfd1e..d686954 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRecordsMapper.xml @@ -4,18 +4,18 @@ - - - - - - - - + + + + + + + + - - - + + + @@ -23,11 +23,34 @@ ID AS id, DEVICE_ID AS deviceId, DEVCODE AS devcode, WELL_CODE AS wellCode, ALARM_TYPE AS alarmType, ALARM_CONTENT AS alarmContent, ALARM_VALUE AS alarmValue, ALARM_TIME AS alarmTime, STATUS AS status, JOB_ID AS jobId - + + ${paramStr} + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi') + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + + ar.ID as id, ar.WELL_CODE as wellCode, ar.ALARM_CONTENT as alarmContentName, - DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i:%s') as alarmTime, + DATE_FORMAT(ar.ALARM_TIME,'%Y-%m-%d %H:%i') + AS alarmTime, ar.DEVICE_ID as deviceId, ar.STATUS as status, ar.alarm_type as alarmType, @@ -40,6 +63,44 @@ bwi.DEPTID AS deptid + + ar.ID as id, + ar.WELL_CODE as wellCode, + ar.ALARM_CONTENT as alarmContentName, + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS alarmTime, + ar.DEVICE_ID as deviceId, + ar.STATUS as status, + ar.alarm_type as alarmType, + ar.ALARM_VALUE AS alarmValue, + ar.ALARM_LEVEL AS alarmLevel, + ar.ALARM_MSG AS alarmMessage, + ar.DEVCODE as devcode, + aj.JOB_STATUS as jobStatus, + ar.JOB_ID as jobId, + bwi.DEPTID AS deptid + + + + + ar.ID as id, + ar.WELL_CODE as "wellCode", + ar.ALARM_CONTENT as "alarmContentName", + ar.DEVICE_ID as "deviceId", + TO_CHAR(ar.ALARM_TIME,'yyyy-mm-dd hh24:mi') + AS "alarmTime", + ar.STATUS as "status", + ar.alarm_type as "alarmType", + ar.ALARM_VALUE AS "alarmValue", + ar.ALARM_LEVEL AS "alarmLevel", + ar.ALARM_MSG AS "alarmMessage", + ar.DEVCODE as devcode, + aj.JOB_STATUS as "jobStatus", + ar.JOB_ID as "jobId", + bwi.DEPTID AS deptid + + + - - + + - UPDATE alarm_job aj, alarm_records ar + UPDATE alarm_records + SET status = 2 + WHERE ID = #{id} + + + + update alarm_job - aj.job_status = #{jobStatus} , - aj.handle_job_person = #{personId}, - aj.job_belong_to = #{personId}, - aj.handle_job_time = now(), - aj.handle_message = #{handleMessage}, - ar.status = 2 + job_status = #{jobStatus} , + handle_job_person = #{personId}, + job_belong_to = #{personId}, + handle_job_time = now(), + handle_message = #{handleMessage}, - WHERE aj.ID = ar.job_id - AND aj.ID = #{id} + WHERE ID=( + SELECT JOB_ID + FROM alarm_records + WHERE ID=#{id} + ) diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml index 4743d51..bbec5ff 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/AlarmRuleMapper.xml @@ -4,17 +4,28 @@ - - - - - - - - - + + + + + + + + + + + + '%'||#{keywords}||'%' + + + CONCAT('%',#{keywords},'%') + + + CONCAT('%',#{keywords},'%') + + ID AS id, DEVCODE AS devcode, HIGHVALUE AS highvalue, LOWVALUE AS lowvalue, OVERTIME AS overtime, SALTATION AS saltation, SENSORCODE AS sensorcode, GRADE AS grade, TS AS ts @@ -34,21 +45,37 @@ - + SELECT ar.ID as id,ar.HIGHVALUE as "highValue",ar.LOWVALUE as "lowValue", + bd.ID AS "devId",bd.DEVCODE as "devcode", + bd.DEVICE_TYPE as "deviceType",bwi.ID AS "wellId",bwi.WELL_NAME as "wellName", + COALESCE (ar.OPERATOR,'') AS user, + bwi.WELL_CODE as "wellCode",bwi.DEEP as deep,bwi.DEPTID as deptid, + COALESCE (,'') AS ts + FROM alarm_rule ar + LEFT JOIN bus_device bd ON ar.DEVCODE = bd.DEVCODE + LEFT JOIN bus_device_well bdw ON bd.ID = bdw.DEVICE_ID + LEFT JOIN bus_well_info bwi ON bdw.WELL_ID = bwi.ID + WHERE bd.VALID = '1' AND bdw.VALID ='1' - AND (ar.DEVCODE LIKE concat(CONCAT('%',#{keywords}),'%') - OR bwi.WELL_CODE LIKE concat(CONCAT('%',#{keywords}),'%') ) + AND (ar.DEVCODE LIKE + + OR bwi.WELL_CODE LIKE + ) AND bd.DEVICE_TYPE= #{deviceType} @@ -71,13 +98,13 @@ WHERE ID=#{id} 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 2fa12b0..0a71551 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 @@ -2,11 +2,35 @@ + + + A.wellCount , + A.deptid, + SD.simplename as deptName, + SD.pid + + + A.wellCount , + A.deptid, + SD.simplename as deptName, + SD.pid + + + A.wellCount , + A.deptid, + SD.simplename as "deptName", + SD.pid + + + + + + SELECT - COUNT( 1 ) AS wellCount, - WELL_TYPE AS wellType + COUNT( 1 ) AS "wellCount", + WELL_TYPE AS "wellType" FROM bus_well_info WHERE VALID = '1' AND DEPTID IN (${deptIds}) GROUP BY WELL_TYPE - + - + - + + + str_to_date(${paramStr},'%Y-%m-%d %H:%i') + + + + TO_DATE(${paramStr},'yyyy-MM-dd HH24:mi:ss') + + + + TO_DATE(${paramStr},'yyyy-mm-dd hh24:mi:ss') + + + + ifnull(SUM(IF(BD.ONLINE_STATE=${numberStatus},1,0)),0) + + + + COALESCE(SUM(CASE WHEN BD.ONLINE_STATE=${numberStatus} THEN 1 ELSE 0 END)) + + + + COALESCE(SUM(IF(BD.ONLINE_STATE=${numberStatus},1,0)),0) + + + + ifnull(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + COALESCE(SUM(CASE WHEN job_status=${numberStatus} THEN 1 ELSE 0 END)) + + + + COALESCE(SUM(IF(job_status=${numberStatus},1,0)),0) + + + + + + + + + + + + + + + + - + SELECT - ifnull(SUM(IF(job_status='0',1,0)),0) AS beforeGet, - ifnull(SUM(IF(job_status='1',1,0)),0) AS beforeConfirm, - ifnull(SUM(IF(job_status='2',1,0)),0) AS inHandle, - ifnull(SUM(IF(job_status='3',1,0)),0) AS 'over', - ifnull(SUM(IF(job_status='4',1,0)),0) AS cancel + + + + AS "beforeGet", + + + + AS "beforeConfirm", + + + + AS "inHandle", + + + + AS "over", + + + + AS cancel FROM alarm_job aj INNER JOIN bus_well_info bwi ON aj.WELL_CODE = bwi.WELL_CODE INNER JOIN bus_device bd ON aj.DEVCODE = bd.DEVCODE @@ -104,11 +238,19 @@ AND bwi.DEPTID IN (${deptIds}) - AND aj.CREATE_TIME ]]> #{beginTime} - AND aj.CREATE_TIME DATE_ADD( #{endTime}, INTERVAL 1 DAY ) + AND aj.CREATE_TIME = ]]> + + + + AND aj.CREATE_TIME + + + - + + + diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml index 2a702c0..7a9c269 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/SysDictMapper.xml @@ -4,12 +4,12 @@ - - - - - - + + + + + + @@ -27,18 +27,18 @@ - SELECT * FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND name = #{typeName} ) ; - SELECT * FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) ; - SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = 'alarmType' ) @@ -46,15 +46,15 @@ - + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = 'jobStatus' ) AND code = #{jobStatus}; - + SELECT name FROM sys_dict WHERE pid IN (SELECT id FROM sys_dict WHERE pid=0 AND code = #{code} ) AND code = #{codeNum}; @@ -64,8 +64,9 @@ - + SELECT id as value,alarm_content as name ,alarm_type as "alarmType",device_type as "deviceType" + FROM base_alarm_content_type WHERE alarm_type = #{alarmType} AND device_type= #{deviceType} @@ -84,7 +85,7 @@ + + + DATE_FORMAT(now(),'%Y-%m-%d %H:%i:%s') + + + + TO_CHAR(now(),'yyyy-mm-dd hh24:mi:ss') + + + + TO_CHAR(sysdate,'yyyy-mm-dd hh24:mi:ss') + + diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml index f4a17d3..fce044c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/dao/mapping/DeviceRuleMapper.xml @@ -34,7 +34,7 @@ SELECT b.SENSORCODE AS SENSORCODE FROM base_sensor b LEFT JOIN bus_device d ON b.DEVICE_TYPE=d.DEVICE_TYPE - WHERE d.VALID = 1 + WHERE d.VALID = '1' and d.DEVCODE = diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java index 5c823d6..565de23 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/service/impl/DeviceRuleServiceImpl.java @@ -38,7 +38,7 @@ deviceRule.setSensorcode(getSensorCodeByDevCode(devCode)); deviceRule.setTs(new Date()); deviceRule.setOperator( permissionService.getAuthService().getLoginUser().getAccount()); - save(deviceRule); + this.baseMapper.insert(deviceRule); } public List getDeviceRuleListByDevCode(String devCode) { diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java index aa09c1f..25e292b 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/enmus/DeviceExportEnum.java @@ -20,8 +20,9 @@ NOISEDATA_EXPORT("noiseData.xlsx","noiseData.xlsx","噪声记录仪数据"), BUSCONCENTRATOR_EXPORT("busConcentrator.xlsx", "busConcentrator.xlsx", "集中器数据"), DEVICE_EXPORT("device.xlsx", "device.xlsx", "设备数据"), - LIQUIDGASDATA_EXPORT("gasLiquidData.xlsx", "gasLiquidData.xlsx", "燃气液位一体化数据"); - + LIQUIDGASDATA_EXPORT("gasLiquidData.xlsx", "gasLiquidData.xlsx", "燃气液位一体化数据"), + ALARMJOB_EXPORT("alarmJobData.xlsx", "alarmJobData.xlsx", "预警工单"), + ALARMRECORD_EXPORT("alarmRecordData.xlsx", "alarmRecordData.xlsx", "预警工单"); /** * 导出模板相对路径 */ diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeptPermission.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeptPermission.java index 6798b47..aad89b7 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeptPermission.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeptPermission.java @@ -62,6 +62,7 @@ * 使用地图(0百度,1高德,2arcgis) */ @TableField("MAP") + @JSONField(serialize = false) private String map; @TableField(exist = false) private List wellTypes; diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceModels.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceModels.java index da06a5c..cbe95c7 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceModels.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceModels.java @@ -26,7 +26,7 @@ /** * 主键 */ - @TableId(value = "ID", type = IdType.ASSIGN_ID) + @TableId(value = "ID", type = IdType.AUTO) private Long id; /** * 型号名称 diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceRule.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceRule.java index 305a310..16239d7 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceRule.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/DeviceRule.java @@ -25,7 +25,7 @@ /** * 自增主键 */ - @TableId(value = "ID", type = IdType.AUTO) + @TableId(value = "id", type = IdType.AUTO) private Long id; /** * 设备编号 diff --git a/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java b/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java index f8d2cfd..348c792 100644 --- a/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java +++ b/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/controller/BusWellInfoController.java @@ -204,10 +204,8 @@ if (null == id) { throw new ServiceException(CoreExceptionEnum.REQUEST_NULL); } - SuccessResponseData resultData = new SuccessResponseData(); resultData.setData(busWellInfoService.getById(id)); - return resultData; } diff --git a/pom.xml b/pom.xml index 0702c13..a73b599 100644 --- a/pom.xml +++ b/pom.xml @@ -17,6 +17,7 @@ casic-alarm casic-server-support + com.casic casic-boot-starter-parent