Commit 64f98882 authored by chenhao's avatar chenhao

Merge branch 'developer' of http://172.16.10.76/moa/amos-boot-biz into developer

parents c1f70781 9ab93653
...@@ -34,6 +34,8 @@ public class RedisKey { ...@@ -34,6 +34,8 @@ public class RedisKey {
public static final String WECHAT_TOKEN = "wechat_token"; public static final String WECHAT_TOKEN = "wechat_token";
/**微信公众平台 token */ /**微信公众平台 token */
public static final String WECHAT_JS_TOKEN = "wechat_js_token"; public static final String WECHAT_JS_TOKEN = "wechat_js_token";
/**警情联系人*/
public static final String CONTACT_USER = "contact_user";
/** 驼峰转下划线(简单写法,效率低于 ) */ /** 驼峰转下划线(简单写法,效率低于 ) */
public static String humpToLine(String str) { public static String humpToLine(String str) {
......
...@@ -32,7 +32,7 @@ public class DynamicFormInitDto implements Serializable{ ...@@ -32,7 +32,7 @@ public class DynamicFormInitDto implements Serializable{
private Object defaultValue; private Object defaultValue;
@ApiModelProperty(value = "表单值") @ApiModelProperty(value = "表单值")
private SelectItems data = new SelectItems(); private Object data ;
@ApiModelProperty(value = "提交表单附加字段") @ApiModelProperty(value = "提交表单附加字段")
private DynamicFormInstanceDto formItemDescr; private DynamicFormInstanceDto formItemDescr;
......
package com.yeejoin.amos.boot.module.common.api.feign; package com.yeejoin.amos.boot.module.common.api.feign;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.common.api.dto.PageDto;
import com.yeejoin.amos.boot.module.common.api.dto.VideoDto; import com.yeejoin.amos.boot.module.common.api.dto.VideoDto;
import com.yeejoin.amos.component.feign.config.InnerInvokException; import com.yeejoin.amos.component.feign.config.InnerInvokException;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
...@@ -280,4 +279,28 @@ public interface EquipFeignClient { ...@@ -280,4 +279,28 @@ public interface EquipFeignClient {
@RequestMapping(value = "/equipment/listLike/{code}", method = RequestMethod.GET) @RequestMapping(value = "/equipment/listLike/{code}", method = RequestMethod.GET)
ResponseModel<List<LinkedHashMap<String, Object>>> listLikePage(@PathVariable String code); ResponseModel<List<LinkedHashMap<String, Object>>> listLikePage(@PathVariable String code);
/**
* 未处理消防告警 by litw 2021年10月25日
*
* @return
*/
@RequestMapping(value = "/confirmAlarm/getFireAlarm", method = RequestMethod.GET)
ResponseModel<Map<String, Object>> getFireAlarm();
/**
* 未处理消防告警 by litw 2021年10月25日
*
* @return
*/
@RequestMapping(value = "/confirmAlarm/getFaultAlarm", method = RequestMethod.GET)
ResponseModel<Map<String, Object>> getFaultAlarm();
/**
* 未处理消防告警 by litw 2021年10月25日
*
* @return
*/
@RequestMapping(value = "/confirmAlarm/getMonitorEvent", method = RequestMethod.GET)
ResponseModel<Map<String, Object>> getMonitorEvent();
} }
package com.yeejoin.amos.boot.module.common.api.feign;
import com.alibaba.fastjson.JSONObject;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
/**
* 隐患服务feign
*
* @author Dell
*/
@FeignClient(name = "${latentDanger.feign.name}", path = "latentDanger", configuration = {MultipartSupportConfig.class})
public interface LatentDangerFeignClient {
/**
* 获取未完成隐患数量
*
* @return
*/
@RequestMapping(value = "/api/latent/danger/app/unFinished", method = RequestMethod.GET)
ResponseModel<Object> getUnFinishedDangerCount();
}
...@@ -162,7 +162,7 @@ WHERE ...@@ -162,7 +162,7 @@ WHERE
<select id="getFirefightersName" resultType="Map"> <select id="getFirefightersName" resultType="Map">
SELECT SELECT
cb_firefighters.name AS name, cb_firefighters.name AS name,
cb_firefighters.mobile_phone AS phone IFNULL(cb_firefighters.mobile_phone, '') AS phone
FROM FROM
cb_firefighters cb_firefighters
WHERE WHERE
......
package com.yeejoin.amos.boot.module.jcs.api.dto;
import io.swagger.annotations.ApiModel;
import lombok.Data;
/**
* @author litw
* @date 2021-10-25.
*/
@Data
@ApiModel(value="AlertCalledDto", description="app领导统计")
public class AlarmGiveStatisticsDto {
/**
* 异常总数
* */
Integer allNum;
/**
* 119接警未结案警情数量
* */
Integer alarmNum;
/**
* 未处置的消防报警+未处置的故障告警+未处置的物联报警数量
* */
Integer iotDetection;
/**
* 消防巡查未关闭隐患数量+ 消防监督检查未关闭隐患数量
* */
Integer currentHiddenDanger;
}
...@@ -229,7 +229,7 @@ ...@@ -229,7 +229,7 @@
<select id="getContactName" resultType="Map"> <select id="getContactName" resultType="Map">
SELECT SELECT
jc_alert_called.contact_user AS name, jc_alert_called.contact_user AS name,
jc_alert_called.contact_phone AS phone IFNULL(jc_alert_called.contact_phone, '') AS phone
FROM FROM
jc_alert_called jc_alert_called
WHERE WHERE
......
...@@ -3,6 +3,7 @@ package com.yeejoin.amos.boot.module.command.biz.controller; ...@@ -3,6 +3,7 @@ package com.yeejoin.amos.boot.module.command.biz.controller;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.metadata.OrderItem; import com.baomidou.mybatisplus.core.metadata.OrderItem;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
...@@ -17,6 +18,7 @@ import com.yeejoin.amos.boot.module.command.api.dto.CarTaskDto; ...@@ -17,6 +18,7 @@ import com.yeejoin.amos.boot.module.command.api.dto.CarTaskDto;
import com.yeejoin.amos.boot.module.command.api.dto.SeismometeorologyDto; import com.yeejoin.amos.boot.module.command.api.dto.SeismometeorologyDto;
import com.yeejoin.amos.boot.module.command.biz.service.impl.RemoteSecurityService; import com.yeejoin.amos.boot.module.command.biz.service.impl.RemoteSecurityService;
import com.yeejoin.amos.boot.module.common.api.dto.*; import com.yeejoin.amos.boot.module.common.api.dto.*;
import com.yeejoin.amos.boot.module.common.api.dto.FireBrigadeResourceDto;
import com.yeejoin.amos.boot.module.common.api.entity.FireTeam; import com.yeejoin.amos.boot.module.common.api.entity.FireTeam;
import com.yeejoin.amos.boot.module.common.api.feign.EquipFeignClient; import com.yeejoin.amos.boot.module.common.api.feign.EquipFeignClient;
import com.yeejoin.amos.boot.module.common.api.feign.IotFeignClient; import com.yeejoin.amos.boot.module.common.api.feign.IotFeignClient;
...@@ -39,10 +41,14 @@ import com.yeejoin.amos.boot.module.jcs.api.entity.AlertFormValue; ...@@ -39,10 +41,14 @@ import com.yeejoin.amos.boot.module.jcs.api.entity.AlertFormValue;
import com.yeejoin.amos.boot.module.jcs.api.entity.PowerTransferCompanyResources; import com.yeejoin.amos.boot.module.jcs.api.entity.PowerTransferCompanyResources;
import com.yeejoin.amos.boot.module.jcs.api.entity.UserCar; import com.yeejoin.amos.boot.module.jcs.api.entity.UserCar;
import com.yeejoin.amos.boot.module.jcs.api.enums.AlertStageEnums; import com.yeejoin.amos.boot.module.jcs.api.enums.AlertStageEnums;
import com.yeejoin.amos.boot.module.jcs.api.enums.FireCarStatusEnum;
import com.yeejoin.amos.boot.module.jcs.api.mapper.PowerTransferCompanyResourcesMapper;
import com.yeejoin.amos.boot.module.jcs.api.mapper.PowerTransferMapper;
import com.yeejoin.amos.boot.module.jcs.api.service.*; import com.yeejoin.amos.boot.module.jcs.api.service.*;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.poi.ss.formula.functions.T; import org.apache.poi.ss.formula.functions.T;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
...@@ -50,7 +56,9 @@ import org.springframework.web.bind.annotation.*; ...@@ -50,7 +56,9 @@ import org.springframework.web.bind.annotation.*;
import org.typroject.tyboot.core.foundation.context.RequestContext; import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.enumeration.UserType; import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.foundation.exception.BaseException; import org.typroject.tyboot.core.foundation.exception.BaseException;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.foundation.utils.DateUtil; import org.typroject.tyboot.core.foundation.utils.DateUtil;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.restful.doc.TycloudOperation; import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.utils.ResponseHelper; import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel; import org.typroject.tyboot.core.restful.utils.ResponseModel;
...@@ -65,6 +73,7 @@ import java.util.ArrayList; ...@@ -65,6 +73,7 @@ import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors;
/** /**
* *指挥资源Api * *指挥资源Api
...@@ -120,18 +129,24 @@ public class CommandController extends BaseController { ...@@ -120,18 +129,24 @@ public class CommandController extends BaseController {
private String readUrl; private String readUrl;
@Autowired @Autowired
EquipFeignClient equipFeignClient; EquipFeignClient equipFeignClient;
@Autowired
PowerTransferMapper powerTransferMapper;
@Autowired @Autowired
VideoFeignClient videoFeignClient; VideoFeignClient videoFeignClient;
@Autowired @Autowired
IKeySiteService keySiteService; IKeySiteService keySiteService;
@Autowired @Autowired
EquipFeignClient equipFeignService;
@Autowired
IPowerTransferCompanyService powerTransferCompanyService; IPowerTransferCompanyService powerTransferCompanyService;
@Autowired @Autowired
IPowerTransferCompanyResourcesService powerTransferCompanyResourcesService; IPowerTransferCompanyResourcesService powerTransferCompanyResourcesService;
@Autowired @Autowired
PowerTransferCompanyResourcesMapper powerTransferCompanyResourcesMapper;
@Autowired
ISourceFileService sourceFileService; ISourceFileService sourceFileService;
@Value("${video.url}") @Value("${video.url}")
...@@ -1031,9 +1046,28 @@ public class CommandController extends BaseController { ...@@ -1031,9 +1046,28 @@ public class CommandController extends BaseController {
@TycloudOperation( needAuth = true, ApiLevel = UserType.AGENCY) @TycloudOperation( needAuth = true, ApiLevel = UserType.AGENCY)
@GetMapping(value = "fireCar/list") @GetMapping(value = "fireCar/list")
@ApiOperation(httpMethod = "GET", value = "车辆资源", notes = "车辆资源") @ApiOperation(httpMethod = "GET", value = "车辆资源", notes = "车辆资源")
public ResponseModel<List<Map<String,Object>>> getTeamCarList(RequestData par) { public ResponseModel<Object> getTeamCarList(RequestData par) {
ResponseModel<List<Map<String, Object>>> date= equipFeignClient.getTeamCarList(par.getLongitude(),par.getLatitude()); /*bug 2583 地图屏,消防车辆类型时,左侧车辆状态显示错误 陈召 开始 */
ResponseModel<List<Map<String, Object>>> date= equipFeignClient.getTeamCarList(par.getLongitude(),par.getLatitude());
List<Map<String, Object>> result = date.getResult();
QueryWrapper<PowerTransferCompanyResources> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("status", FireCarStatusEnum.执行中.getCode() );
List<PowerTransferCompanyResources> alertFormValue = powerTransferCompanyResourcesMapper.selectList(queryWrapper);
result.stream().forEach(e->{
if (e.get("carState").equals("在位")){
e.put("carState",FireCarStatusEnum.执勤.getName());
}
String sequenceNbr = e.get("sequenceNbr").toString();
//同步力量调派车辆任务状态
alertFormValue.stream().forEach(v->{
if (v.getResourcesId().equals(sequenceNbr)) {
String carStatus = v.getCarStatus();
e.put("carState",carStatus!=null?FireCarStatusEnum.getEnum(carStatus).getName():null);
}
});
});
return ResponseHelper.buildResponse(date!=null?date.getResult():null); return ResponseHelper.buildResponse(date!=null?date.getResult():null);
/*bug 2583 地图屏,消防车辆类型时,左侧车辆状态显示错误 2021-10-26 陈召 结束 */
} }
@TycloudOperation( needAuth = true, ApiLevel = UserType.AGENCY) @TycloudOperation( needAuth = true, ApiLevel = UserType.AGENCY)
......
...@@ -11,12 +11,7 @@ import com.yeejoin.amos.boot.biz.common.controller.BaseController; ...@@ -11,12 +11,7 @@ import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.biz.common.utils.EnumsUtils; import com.yeejoin.amos.boot.biz.common.utils.EnumsUtils;
import com.yeejoin.amos.boot.biz.common.utils.QRCodeUtil; import com.yeejoin.amos.boot.biz.common.utils.QRCodeUtil;
import com.yeejoin.amos.boot.module.common.api.dto.*; import com.yeejoin.amos.boot.module.common.api.dto.*;
import com.yeejoin.amos.boot.module.common.api.entity.WaterResource; import com.yeejoin.amos.boot.module.common.api.entity.*;
import com.yeejoin.amos.boot.module.common.api.entity.WaterResourceCrane;
import com.yeejoin.amos.boot.module.common.api.entity.WaterResourceHydrant;
import com.yeejoin.amos.boot.module.common.api.entity.WaterResourceIot;
import com.yeejoin.amos.boot.module.common.api.entity.WaterResourceNatural;
import com.yeejoin.amos.boot.module.common.api.entity.WaterResourcePool;
import com.yeejoin.amos.boot.module.common.api.enums.WaterResourceTypeEnum; import com.yeejoin.amos.boot.module.common.api.enums.WaterResourceTypeEnum;
import com.yeejoin.amos.boot.module.common.biz.service.impl.*; import com.yeejoin.amos.boot.module.common.biz.service.impl.*;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
...@@ -83,13 +78,12 @@ public class WaterResourceController extends BaseController { ...@@ -83,13 +78,12 @@ public class WaterResourceController extends BaseController {
Optional<WaterResourceTypeEnum> resourceTypeEnum = EnumsUtils.getEnumObject(WaterResourceTypeEnum.class, Optional<WaterResourceTypeEnum> resourceTypeEnum = EnumsUtils.getEnumObject(WaterResourceTypeEnum.class,
e -> e.getCode().equals(resourceType)); e -> e.getCode().equals(resourceType));
/*bug 2913 更换保存方式 存储到公共附件表 chenzhao 2021-10-18 start*/ /*bug 2913 更换保存方式 存储到公共附件表 chenzhao 2021-10-18 start*/
List<Object> realityImgList = model.getRealityImgList(); // List<Object> realityImgList = model.getRealityImgList();
/* /*
if (realityImgList != null ){ if (realityImgList != null ){
} }
realityImgList.forEach(i->{ realityImgList.forEach(i->{
((Map<String, Object>) i).put("name",QRCodeUtil.generateQRCode()+"."+i.toString().substring(i.toString().lastIndexOf(".") + 1).toLowerCase()); ((Map<String, Object>) i).put("name",QRCodeUtil.generateQRCode()+"."+i.toString().substring(i.toString().lastIndexOf(".") + 1).toLowerCase());
});*/ });*/
...@@ -97,7 +91,7 @@ public class WaterResourceController extends BaseController { ...@@ -97,7 +91,7 @@ public class WaterResourceController extends BaseController {
model.setResourceTypeName(resourceTypeEnum.get().getName()); model.setResourceTypeName(resourceTypeEnum.get().getName());
model.setRealityImg(JSONArray.toJSONString(realityImgList)); model.setRealityImg(null);
model.setOrientationImg(JSONArray.toJSONString(model. getOrientationImgList())); model.setOrientationImg(JSONArray.toJSONString(model. getOrientationImgList()));
/*2021-09-08 前端表示前端传递的address参数已经切割过,后端无需再切割获取 陈召 屏蔽代码 97-102行*/ /*2021-09-08 前端表示前端传递的address参数已经切割过,后端无需再切割获取 陈召 屏蔽代码 97-102行*/
/* if(model.getAddress()!=null){ /* if(model.getAddress()!=null){
...@@ -160,11 +154,9 @@ public class WaterResourceController extends BaseController { ...@@ -160,11 +154,9 @@ public class WaterResourceController extends BaseController {
} else { } else {
waterResourceServiceImpl.createWithModel(model); waterResourceServiceImpl.createWithModel(model);
} }
if (model.getAttachments() != null){
if (model.getAttachments() != null && ! model.getAttachments().isEmpty()){
sourceFileService.saveAttachments(model.getSequenceNbr(),model.getAttachments()); sourceFileService.saveAttachments(model.getSequenceNbr(),model.getAttachments());
} }
return ResponseHelper.buildResponse(model); return ResponseHelper.buildResponse(model);
} }
...@@ -189,6 +181,7 @@ public class WaterResourceController extends BaseController { ...@@ -189,6 +181,7 @@ public class WaterResourceController extends BaseController {
/*bug 2913 更换保存方式 存储到公共附件表 chenzhao 2021-10-18 start*/ /*bug 2913 更换保存方式 存储到公共附件表 chenzhao 2021-10-18 start*/
if (model.getAttachments() != null && ! model.getAttachments().isEmpty()){ if (model.getAttachments() != null && ! model.getAttachments().isEmpty()){
sourceFileService.saveAttachments(model.getSequenceNbr(),model.getAttachments()); sourceFileService.saveAttachments(model.getSequenceNbr(),model.getAttachments());
} }
/*bug 2913 更换保存方式 存储到公共附件表 chenzhao 2021-10-18 start*/ /*bug 2913 更换保存方式 存储到公共附件表 chenzhao 2021-10-18 start*/
// 更新基本信息 // 更新基本信息
......
...@@ -706,7 +706,7 @@ public class MaintenanceCompanyServiceImpl ...@@ -706,7 +706,7 @@ public class MaintenanceCompanyServiceImpl
maintenanceCompany.put("code", list.getCode()); maintenanceCompany.put("code", list.getCode());
maintenanceCompany.put("name", list.getName()); maintenanceCompany.put("name", list.getName());
maintenanceCompany.put("type", 1); maintenanceCompany.put("type", 1);
maintenanceCompany.put("parentId", null); maintenanceCompany.put("parentId", 0);
// 查询该维保单位下的业主信息 // 查询该维保单位下的业主信息
List<OrgUsrDto> orgUsrDtos = this.baseMapper.selectOrgUsrList(list.getSequenceNbr()); List<OrgUsrDto> orgUsrDtos = this.baseMapper.selectOrgUsrList(list.getSequenceNbr());
orgUsrDtos.forEach(orgUsrDto -> { orgUsrDtos.forEach(orgUsrDto -> {
......
package com.yeejoin.amos.boot.module.jcs.biz.controller; package com.yeejoin.amos.boot.module.jcs.biz.controller;
import java.lang.reflect.Field; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import com.yeejoin.amos.boot.biz.common.entity.DataDictionary;
import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl;
import com.yeejoin.amos.boot.module.common.api.dto.FailureDetailsDto;
import com.yeejoin.amos.boot.module.common.biz.service.impl.OrgUsrServiceImpl;
import com.yeejoin.amos.boot.module.jcs.api.enums.AlertStatusEnum;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import org.typroject.tyboot.component.event.RestEventTrigger;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams; import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.controller.BaseController; import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.biz.common.entity.DataDictionary;
import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl;
import com.yeejoin.amos.boot.biz.common.utils.NameUtils; import com.yeejoin.amos.boot.biz.common.utils.NameUtils;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey; import com.yeejoin.amos.boot.biz.common.utils.RedisKey;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils; import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.common.api.feign.EquipFeignClient;
import com.yeejoin.amos.boot.module.common.api.feign.LatentDangerFeignClient;
import com.yeejoin.amos.boot.module.common.biz.service.impl.OrgUsrServiceImpl;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlarmGiveStatisticsDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertCalledObjsDto; import com.yeejoin.amos.boot.module.jcs.api.dto.AlertCalledObjsDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.ESAlertCalledDto; import com.yeejoin.amos.boot.module.jcs.api.dto.ESAlertCalledDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.ESAlertCalledRequestDto; import com.yeejoin.amos.boot.module.jcs.api.dto.ESAlertCalledRequestDto;
import com.yeejoin.amos.boot.module.jcs.api.entity.AlertCalled; import com.yeejoin.amos.boot.module.jcs.api.entity.AlertCalled;
import com.yeejoin.amos.boot.module.jcs.api.enums.AlertStatusEnum;
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.AlertCalledServiceImpl; import com.yeejoin.amos.boot.module.jcs.biz.service.impl.AlertCalledServiceImpl;
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.AlertFormValueServiceImpl; import com.yeejoin.amos.boot.module.jcs.biz.service.impl.AlertFormValueServiceImpl;
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.ESAlertCalledService; import com.yeejoin.amos.boot.module.jcs.biz.service.impl.ESAlertCalledService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.typroject.tyboot.component.event.RestEventTrigger;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import java.lang.reflect.Field;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import javax.swing.plaf.basic.BasicViewportUI;
/** /**
* 警情接警记录 * 警情接警记录
...@@ -58,6 +68,10 @@ import javax.swing.plaf.basic.BasicViewportUI; ...@@ -58,6 +68,10 @@ import javax.swing.plaf.basic.BasicViewportUI;
public class AlertCalledController extends BaseController { public class AlertCalledController extends BaseController {
@Autowired @Autowired
LatentDangerFeignClient latentDangerFeignClient;
@Autowired
EquipFeignClient equipFeignClient;
@Autowired
AlertCalledServiceImpl iAlertCalledService; AlertCalledServiceImpl iAlertCalledService;
@Autowired @Autowired
AlertFormValueServiceImpl iAlertFormValueService; AlertFormValueServiceImpl iAlertFormValueService;
...@@ -362,9 +376,16 @@ public class AlertCalledController extends BaseController { ...@@ -362,9 +376,16 @@ public class AlertCalledController extends BaseController {
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY) @TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@RequestMapping(value = "/getAmosId", method = RequestMethod.GET) @RequestMapping(value = "/getAmosId", method = RequestMethod.GET)
@ApiOperation(httpMethod = "GET", value = "警情填报联系人模糊查询", notes = "警情填报联系人模糊查询") @ApiOperation(httpMethod = "GET", value = "警情填报联系人模糊查询", notes = "警情填报联系人模糊查询")
public ResponseModel< List<Map<String,String>>> getContact ( ) { public ResponseModel< Object> getContact ( ) {
return ResponseHelper.buildResponse(iAlertCalledService.getContactName()); if (redisUtils.hasKey(RedisKey.CONTACT_USER)) {
Object obj = redisUtils.get(RedisKey.CONTACT_USER);
return ResponseHelper.buildResponse(obj);
} else {
List<Map<String, String>> contactName = iAlertCalledService.getContactName();
redisUtils.set(RedisKey.CONTACT_USER , contactName, time);
return ResponseHelper.buildResponse(contactName);
}
} }
/** /**
...@@ -382,4 +403,44 @@ public class AlertCalledController extends BaseController { ...@@ -382,4 +403,44 @@ public class AlertCalledController extends BaseController {
} }
/*2304 地址 联系人模糊查询缺失 陈召 2021-09-23 结束*/ /*2304 地址 联系人模糊查询缺失 陈召 2021-09-23 结束*/
/**
* 警情填报地址模糊查询
*
* @param
* @return
*/
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@RequestMapping(value = "/getAlarmGiveStatistics", method = RequestMethod.GET)
@ApiOperation(httpMethod = "GET", value = "app领导统计", notes = "app领导统计")
public ResponseModel<AlarmGiveStatisticsDto> getAlarmGiveStatistics () {
AlarmGiveStatisticsDto dto = new AlarmGiveStatisticsDto();
LambdaQueryWrapper<AlertCalled> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.isNull(AlertCalled::getFatherAlert);
queryWrapper.eq(AlertCalled::getAlertStatus,true);
queryWrapper.eq(AlertCalled::getIsDelete,false);
Integer alertNum = iAlertCalledService.getBaseMapper().selectCount(queryWrapper);
dto.setAlarmNum(alertNum);
ResponseModel<Map<String, Object>> fireAlarm = equipFeignClient.getFireAlarm();
Map<String, Object> map = fireAlarm.getResult();
int fireAlarmNum = !ValidationUtil.isEmpty(map.get("FireAlarmNum")) ? Integer.valueOf(map.get("FireAlarmNum").toString()) : 0;
ResponseModel<Map<String, Object>> faultAlarm = equipFeignClient.getFaultAlarm();
map = faultAlarm.getResult();
int faultAlarmNum = !ValidationUtil.isEmpty(map.get("FaultAlarmNum")) ? Integer.valueOf(map.get("FaultAlarmNum").toString()) : 0;
ResponseModel<Map<String, Object>> monitorEvent = equipFeignClient.getMonitorEvent();
map = monitorEvent.getResult();
int monitorEventNum = !ValidationUtil.isEmpty(map.get("monitorEventNum")) ? Integer.valueOf(map.get("monitorEventNum").toString()) : 0;
dto.setIotDetection(fireAlarmNum+faultAlarmNum+monitorEventNum);
ResponseModel<Object> currentHiddenDanger = latentDangerFeignClient.getUnFinishedDangerCount();
Integer currentHiddenDangerNum = (Integer) currentHiddenDanger.getResult();
dto.setCurrentHiddenDanger(currentHiddenDangerNum);
dto.setAllNum(dto.getAlarmNum()+dto.getIotDetection()+currentHiddenDangerNum);
return ResponseHelper.buildResponse(dto);
}
} }
\ No newline at end of file
...@@ -5,6 +5,7 @@ import java.util.*; ...@@ -5,6 +5,7 @@ import java.util.*;
import java.util.function.Function; import java.util.function.Function;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import com.yeejoin.amos.boot.biz.common.utils.QRCodeUtil;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersServiceImpl; import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.KeySiteServiceImpl; import com.yeejoin.amos.boot.module.common.biz.service.impl.KeySiteServiceImpl;
import com.yeejoin.amos.boot.module.jcs.api.entity.*; import com.yeejoin.amos.boot.module.jcs.api.entity.*;
...@@ -810,7 +811,19 @@ public class AlertCalledServiceImpl extends BaseService<AlertCalledDto, AlertCal ...@@ -810,7 +811,19 @@ public class AlertCalledServiceImpl extends BaseService<AlertCalledDto, AlertCal
/*2304 地址 联系人模糊查询缺失 陈召 2021-09-23 开始*/ /*2304 地址 联系人模糊查询缺失 陈召 2021-09-23 开始*/
public List<Map<String,String>> getContactName() { public List<Map<String,String>> getContactName() {
List<Map<String,String>> firefightersName = firefightersService.getFirefightersName(); List<Map<String,String>> firefightersName = firefightersService.getFirefightersName();
firefightersName.forEach(r->{
String phone = r.get("phone");
phone = QRCodeUtil.generateQRCode()+"@"+phone;
r.put("phone",phone);
}
);
List<Map<String,String>> contactNames = alertCalledMapper.getContactName(); List<Map<String,String>> contactNames = alertCalledMapper.getContactName();
contactNames.forEach(r->{
String phone = r.get("phone");
phone = QRCodeUtil.generateQRCode()+"@"+phone;
r.put("phone",phone);
}
);
firefightersName.addAll(contactNames); firefightersName.addAll(contactNames);
return firefightersName; return firefightersName;
......
...@@ -369,4 +369,11 @@ public class LatentDangerController extends BaseController { ...@@ -369,4 +369,11 @@ public class LatentDangerController extends BaseController {
public ResponseModel getAllDangerState() { public ResponseModel getAllDangerState() {
return ResponseHelper.buildResponse((iLatentDangerService.getAllDangerState())); return ResponseHelper.buildResponse((iLatentDangerService.getAllDangerState()));
} }
@ApiOperation(value = "所有未完成隐患数量", notes = "所有未完成隐患数量")
@GetMapping(value = "/app/unFinished")
@TycloudOperation(ApiLevel = UserType.AGENCY)
public ResponseModel getUnFinishedDangerCount() {
return ResponseHelper.buildResponse((iLatentDangerService.getUnFinishedDangerCount()));
}
} }
...@@ -80,4 +80,6 @@ public interface LatentDangerMapper extends BaseMapper<LatentDanger> { ...@@ -80,4 +80,6 @@ public interface LatentDangerMapper extends BaseMapper<LatentDanger> {
* @return * @return
*/ */
IPage<LatentDanger> selectPageByParam(@Param("page") Page<LatentDanger> page, @Param("paramMap") Map<String, Object> paramMap); IPage<LatentDanger> selectPageByParam(@Param("page") Page<LatentDanger> page, @Param("paramMap") Map<String, Object> paramMap);
Integer selectUnFinishedCount(@Param("dangerState1") List<String> dangerState1, @Param("dangerState2") List<String> dangerState2);
} }
...@@ -2090,4 +2090,21 @@ public class LatentDangerServiceImpl extends BaseService<LatentDangerBo, LatentD ...@@ -2090,4 +2090,21 @@ public class LatentDangerServiceImpl extends BaseService<LatentDangerBo, LatentD
pageParam.put("bizType", bizType); pageParam.put("bizType", bizType);
return pageListDanger(pageParam); return pageListDanger(pageParam);
} }
@Override
public Integer getUnFinishedDangerCount() {
LambdaQueryWrapper<LatentDanger> queryWrapper = new LambdaQueryWrapper<>();
// 巡检隐患未关闭状态集合
List<LatentDangerState.PatrolDangerStateEnum> pDangerStateEnumList = Lists.newArrayList();
pDangerStateEnumList.add(LatentDangerState.PatrolDangerStateEnum.治理完毕);
pDangerStateEnumList.add(LatentDangerState.PatrolDangerStateEnum.待评审);
pDangerStateEnumList.add(LatentDangerState.PatrolDangerStateEnum.已撤销);
// 防火监督未关闭隐患状态集合
List<LatentDangerState.SupervisionDangerStateEnum> sDangerStateEnumList = Lists.newArrayList();
sDangerStateEnumList.addAll(LatentDangerState.SupervisionDangerStateEnum.getEnumListByProcessState(LatentDangerProcessStateEnum.未审核.getCode()));
sDangerStateEnumList.addAll(LatentDangerState.SupervisionDangerStateEnum.getEnumListByProcessState(LatentDangerProcessStateEnum.待审核.getCode()));
sDangerStateEnumList.addAll(LatentDangerState.SupervisionDangerStateEnum.getEnumListByProcessState(LatentDangerProcessStateEnum.治理完毕.getCode()));
return this.baseMapper.selectUnFinishedCount(pDangerStateEnumList.stream().map(LatentDangerState.PatrolDangerStateEnum::getCode).collect(Collectors.toList()), sDangerStateEnumList.stream().map(LatentDangerState.SupervisionDangerStateEnum::getCode).collect(Collectors.toList()));
}
} }
...@@ -166,4 +166,11 @@ public interface ILatentDangerService { ...@@ -166,4 +166,11 @@ public interface ILatentDangerService {
* @return * @return
*/ */
List<Map<String, String>> getAllDangerState(); List<Map<String, String>> getAllDangerState();
/**
* 获取所有未完成的隐患数量
*
* @return
*/
Integer getUnFinishedDangerCount();
} }
...@@ -86,4 +86,5 @@ spring.servlet.multipart.maxFileSize=3MB ...@@ -86,4 +86,5 @@ spring.servlet.multipart.maxFileSize=3MB
spring.servlet.multipart.maxRequestSize=3MB spring.servlet.multipart.maxRequestSize=3MB
supervision.feign.name=AMOS-SUPERVISION-API supervision.feign.name=AMOS-SUPERVISION-API
video.fegin.name=VIDEO888 video.fegin.name=VIDEO888
\ No newline at end of file latentDanger.feign.name=AMOS-LATENT-DANGER
\ No newline at end of file
...@@ -1906,6 +1906,16 @@ ...@@ -1906,6 +1906,16 @@
</sql> </sql>
</changeSet> </changeSet>
<changeSet author="ltw" id="2021-10-25-1">
<preConditions onFail="MARK_RAN">
<tableExists tableName="jc_alert_submitted"/>
</preConditions>
<comment>修改警情报送发送人字段长度</comment>
<sql>
ALTER TABLE jc_alert_submitted MODIFY COLUMN sender varchar(50) DEFAULT NULL COMMENT '发送人';
</sql>
</changeSet>
......
...@@ -59,4 +59,5 @@ pagehelper.support-methods-arguments=true ...@@ -59,4 +59,5 @@ pagehelper.support-methods-arguments=true
feign.httpclient.connection-timeout=5000 feign.httpclient.connection-timeout=5000
video.fegin.name=video video.fegin.name=video
\ No newline at end of file latentDanger.feign.name=AMOS-LATENT-DANGER
\ No newline at end of file
...@@ -1027,4 +1027,26 @@ ...@@ -1027,4 +1027,26 @@
order by a.create_date desc order by a.create_date desc
</if> </if>
</select> </select>
<select id="selectUnFinishedCount" resultType="java.lang.Integer">
SELECT COUNT(1)
FROM p_latent_danger
WHERE deleted = 0
AND (
(biz_type = 'patrol'
<if test="dangerState1 != null and !dangerState1.isEmpty()">
AND danger_state NOT IN
<foreach collection="dangerState1" item="state" open="(" separator="," close=")">
#{state}
</foreach>
</if>
)
OR (biz_type = 'supervision'
<if test="dangerState2 != null and !dangerState2.isEmpty()">
AND danger_state NOT IN
<foreach collection="dangerState2" item="state" open="(" separator="," close=")">
#{state}
</foreach>
</if>
))
</select>
</mapper> </mapper>
\ No newline at end of file
spring.application.name = AMOS-PATROL spring.application.name = AMOS-PATROL-tb
server.servlet.context-path=/patrol server.servlet.context-path=/patrol
server.port = 8082 server.port = 8082
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment