Commit 1115be10 authored by chenhao's avatar chenhao

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

parents df006e67 1370c9e8
......@@ -23,7 +23,7 @@ public class BaseDto implements Serializable{
@ExcelIgnore
@ApiModelProperty(value = "主键ID")
protected Long sequenceNbr;
protected Long sequenceNbr;
@ExcelIgnore
@ApiModelProperty(value = "更新时间")
......
......@@ -48,3 +48,6 @@ rule.definition.load=false
rule.definition.model-package=com.yeejoin.amos.boot.module.jcs.api.dto
rule.definition.default-agency=jcs
rule.definition.localIp=172.16.3.3
#mongodb
spring.data.mongodb.uri=mongodb://172.16.3.41:27017/command_db
\ No newline at end of file
......@@ -27,4 +27,7 @@ spring.datasource.hikari.connection-test-query=SELECT 1
mqtt.topic.alert.reporting=alertReporting
#实战指挥新警情通报主题
mqtt.topic.command.alert.notice=alertNotice
\ No newline at end of file
mqtt.topic.command.alert.notice=alertNotice
#跑马灯地震,天气预警信息
mqtt.topic.command.seismometeorology.notice=seismometeorology
\ No newline at end of file
package com.yeejoin.amos.boot.module.command.api.dao;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
import ch.qos.logback.core.net.SyslogOutputStream;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Sort;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Component;
import com.yeejoin.amos.boot.module.command.api.dto.SeismometeorologyDto;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.stereotype.Service;
/**
* @description:
* @author: tw
* @createDate: 2021/7/19
*/
@Component
public class SeismometeorologyDtoDao {
@Autowired
private MongoTemplate mongoTemplate;
/**
* 保存对象SeismometeorologyDto
* @param
*
*/
public void saveObj(SeismometeorologyDto book) {
mongoTemplate.save(book);
}
/**
*
* 24小時预警
*
* **/
public List<SeismometeorologyDto> findCarStateByWatchSn(){
Calendar calendar = Calendar.getInstance(); //创建Calendar 的实例
calendar.add(Calendar.DAY_OF_MONTH,-1);
System.out.println(new Date().getTime());
Query query = new Query(Criteria.where("releaseTime").gte(calendar.getTimeInMillis()));
Sort sort= Sort.by(Sort.Direction.DESC, "releaseTime");
query.with(sort);
List<SeismometeorologyDto> gpsList = mongoTemplate.find(query, SeismometeorologyDto.class);
return gpsList;
}
}
package com.yeejoin.amos.boot.module.command.api.dto;
import com.alibaba.excel.annotation.ExcelIgnore;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.data.mongodb.core.mapping.Document;
import org.springframework.data.mongodb.core.mapping.Field;
import org.springframework.data.mongodb.core.mapping.MongoId;
import java.util.Date;
/**
* @description:
* @author: tw
* @createDate: 2021/7/19
* 地震气象信息
*/
@Data
@ApiModel(value = "SeismometeorologyDto", description = "地震气象信息")
@Document(collection = "heart_rate")
public class SeismometeorologyDto {
@MongoId
@ApiModelProperty(value = "主键ID")
protected Long sequenceNbr;
@ApiModelProperty(value = "预警类型 1:警情通知 0:气象通知")
@Field("type")
private String type;
@ApiModelProperty(value = "预警类型名称")
@Field("typeName")
private String typeName;
@ApiModelProperty(value = "预警等级")
@Field("grade")
private String grade;
@ApiModelProperty(value = "发布时间")
@Field("releaseTime")
private Long releaseTime;
@ApiModelProperty(value = "发布单位")
@Field("releaseCompany")
private String releaseCompany;
@ApiModelProperty(value = "发布内容")
@Field("content")
private String content;
public SeismometeorologyDto(Long sequenceNbr, String type, String typeName, String grade, Long releaseTime, String releaseCompany, String content) {
this.sequenceNbr = sequenceNbr;
this.type = type;
this.typeName = typeName;
this.grade = grade;
this.releaseTime = releaseTime;
this.releaseCompany = releaseCompany;
this.content = content;
}
public SeismometeorologyDto() {
}
}
package com.yeejoin.amos.boot.module.common.api.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* @description:
* @author: tw
* @createDate: 2021/7/20
*/
@Data
@ApiModel(value="CompanyDto", description="重点单位资源")
public class CompanyDto {
@ApiModelProperty(value = "主键ID")
protected Long id;
@ApiModelProperty(value = "经度")
private Double longitude;
@ApiModelProperty(value = "纬度")
private Double latitude;
@ApiModelProperty(value = "距离")
private Double distance;
@ApiModelProperty(value = "男员工人数")
private Integer companyMaleEmployees;
@ApiModelProperty(value = "女员工人数")
private Integer companyFemaleEmployees;
@ApiModelProperty(value = "单位类型")
private String managementType;
@ApiModelProperty(value = "单位名称")
private String name;
}
......@@ -66,4 +66,9 @@ public class ContractDto extends BaseDto {
@ApiModelProperty(value = "服务内容")
private String serviceContent;
@ApiModelProperty(value = "备注")
private String remark;
@ApiModelProperty(value = "合同附件")
private String contractAttachment;
}
......@@ -25,8 +25,8 @@ public class LinkageUnitDto extends BaseDto {
@ApiModelProperty(value = "单位名称")
private String unitName;
@ApiModelProperty(value = "单位id")
private String unitId;
@ApiModelProperty(value = "单位code")
private String unitCode;
@ApiModelProperty(value = "父级单位id")
private String parentId;
......
package com.yeejoin.amos.boot.module.common.api.dto;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 联动单位
*
* @author system_generator
* @date 2021-07-16
*/
@Data
@ApiModel(value = "LinkageUnitZhDto", description = "指挥联动单位")
public class LinkageUnitZhDto {
@ApiModelProperty(value = "主键ID")
protected Long sequenceNbr;
@ApiModelProperty(value = "单位名称")
private String unitName;
@ApiModelProperty(value = "地址")
private String address;
@ApiModelProperty(value = "经度")
private Double longitude;
@ApiModelProperty(value = "纬度")
private Double latitude;
@ApiModelProperty(value = "战备人数量")
private int userNum;
@ApiModelProperty(value = "战备车辆数量")
private int carNum;
@ApiModelProperty(value = "距离灾情点距离 单位 米")
private Double distance;
}
......@@ -27,4 +27,10 @@ public class RequestData {
@ApiModelProperty(value = "队伍类型code")
private String typeCode;
@ApiModelProperty(value = "是否只显示24小时内警情")
private Boolean whether24=false;
@ApiModelProperty(value = "灾情地址模糊匹配")
private String address;
}
package com.yeejoin.amos.boot.module.common.api.dto;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import com.yeejoin.amos.boot.module.common.api.excel.ExplicitConstraint;
import com.yeejoin.amos.boot.module.common.api.excel.RoleNameExplicitConstraint;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import java.util.List;
/**
* @author system_generator
* @date 2021-06-29
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "WaterResourceTypeDto", description = "水资源")
public class WaterResourceTypeDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "资源类型(消火栓:hydrant、消防水鹤:crane、天然水源:natural、消防水池:pool)")
private String resourceType;
@ApiModelProperty(value = "资源类型名称(消火栓、消防水鹤、天然水源、消防水池)")
private String resourceTypeName;
@ApiModelProperty(value = "所属消防系统id")
private Long belongFightingSystemId;
@ApiModelProperty(value = "所属消防系统")
private String belongFightingSystem;
}
......@@ -92,4 +92,9 @@ public class Contract extends BaseEntity {
*/
@TableField("service_content")
private String serviceContent;
/**
* 备注
*/
@TableField("remark")
private String remark;
}
......@@ -29,10 +29,10 @@ public class LinkageUnit extends BaseEntity {
private String unitName;
/**
* 单位id
* 单位code
*/
@TableField("unit_id")
private String unitId;
@TableField("unit_code")
private String unitCode;
/**
* 父级单位id
......
package com.yeejoin.amos.boot.module.common.api.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.boot.module.common.api.dto.CompanyDto;
import com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitDto;
import com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitZhDto;
import com.yeejoin.amos.boot.module.common.api.dto.RequestData;
import com.yeejoin.amos.boot.module.common.api.entity.LinkageUnit;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
......@@ -28,4 +32,15 @@ public interface LinkageUnitMapper extends BaseMapper<LinkageUnit> {
@Param("groupCode") String groupCode,
@Param("sequenceNbr") Long sequenceNbr
);
/**
* * @param null
* @return
* <PRE>
* author tw
* date 2021/7/20
* </PRE>
*/
List<LinkageUnitZhDto> listLinkageUnitZhDto(@Param("pageNum")int pageNum, @Param("pageSize")int pageSize, @Param("par") RequestData par);
Integer listLinkageUnitZhDtoCount(@Param("par")RequestData par);
}
package com.yeejoin.amos.boot.module.common.api.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.boot.module.common.api.dto.OrgUsrDto;
import com.yeejoin.amos.boot.module.common.api.entity.MaintenanceCompany;
/**
......@@ -10,4 +15,19 @@ import com.yeejoin.amos.boot.module.common.api.entity.MaintenanceCompany;
* @date 2021-07-16
*/
public interface MaintenanceCompanyMapper extends BaseMapper<MaintenanceCompany> {
/**
* 查询机场单位信息 (不带分页)
* @param seq
* @return
*/
public List<OrgUsrDto> selectOrgUsrList (@Param("seq") Long seq);
/**
* 查询机场单位信息 (带分页)
* @param pageNum
* @param pageSize
* @param seq
* @return
*/
public List<OrgUsrDto> selectOrgUsrPageList (@Param("pageNum")int pageNum,@Param("pageSize")int pageSize,@Param("seq") Long seq);
}
package com.yeejoin.amos.boot.module.common.api.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.boot.module.common.api.dto.OrgPersonExcelDto;
import com.yeejoin.amos.boot.module.common.api.dto.*;
import com.yeejoin.amos.boot.module.common.api.entity.OrgUsr;
import org.apache.ibatis.annotations.Param;
......@@ -38,4 +38,19 @@ public interface OrgUsrMapper extends BaseMapper<OrgUsr> {
* @return
*/
List<OrgUsr> listOrgUserById(Long orgUserId);
/**
* * @param null
* @return
* <PRE>
* author tw
* date 2021/7/20
* </PRE>
* 指挥重点单位资源
*/
List<CompanyDto> listContractDto(@Param("pageNum")int pageNum, @Param("pageSize")int pageSize, @Param("par") RequestData par);
Integer listContractDtoCount(@Param("par")RequestData par);
}
......@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.boot.biz.common.utils.MenuFrom;
import com.yeejoin.amos.boot.module.common.api.dto.RequestData;
import com.yeejoin.amos.boot.module.common.api.dto.WaterResourceDto;
import com.yeejoin.amos.boot.module.common.api.dto.WaterResourceTypeDto;
import com.yeejoin.amos.boot.module.common.api.dto.WaterResourceZhDto;
import com.yeejoin.amos.boot.module.common.api.entity.WaterResource;
import org.apache.ibatis.annotations.Param;
......@@ -35,5 +36,5 @@ public interface WaterResourceMapper extends BaseMapper<WaterResource> {
Integer getWaterResourceListCount(@Param("par")RequestData par);
List<WaterResourceDto> getWaterResourceTypeList();
List<WaterResourceTypeDto> getWaterResourceTypeList(Boolean isDelete);
}
package com.yeejoin.amos.boot.module.common.api.service;
import com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitDto;
import com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitZhDto;
import com.yeejoin.amos.boot.module.common.api.dto.RequestData;
import java.util.List;
/**
* 联动单位接口类
*
......@@ -9,4 +15,10 @@ package com.yeejoin.amos.boot.module.common.api.service;
*/
public interface ILinkageUnitService {
List<LinkageUnitZhDto> listLinkageUnitZhDto(Integer pageNum, Integer pageSize, RequestData par);
Integer listLinkageUnitZhDtoCount(RequestData par);
LinkageUnitDto queryOne(Long sequenceNbr);
}
......@@ -5,15 +5,7 @@ import java.util.List;
import java.util.Map;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yeejoin.amos.boot.module.common.api.dto.DynamicFormInstanceDto;
import com.yeejoin.amos.boot.module.common.api.dto.FormValue;
import com.yeejoin.amos.boot.module.common.api.dto.OrgDepartmentDto;
import com.yeejoin.amos.boot.module.common.api.dto.OrgDepartmentFormDto;
import com.yeejoin.amos.boot.module.common.api.dto.OrgMenuDto;
import com.yeejoin.amos.boot.module.common.api.dto.OrgPersonDto;
import com.yeejoin.amos.boot.module.common.api.dto.OrgPersonFormDto;
import com.yeejoin.amos.boot.module.common.api.dto.OrgUsrDto;
import com.yeejoin.amos.boot.module.common.api.dto.OrgUsrFormDto;
import com.yeejoin.amos.boot.module.common.api.dto.*;
import com.yeejoin.amos.boot.module.common.api.entity.DynamicFormInstance;
import com.yeejoin.amos.boot.module.common.api.entity.OrgUsr;
......@@ -143,4 +135,28 @@ public interface IOrgUsrService {
OrgDepartmentFormDto selectDepartmentById(Long id) throws Exception;
List<Map<String, Object>> selectForShowByListId(List<Long> ids) throws Exception;
/**
* * @param null
* @return
* <PRE>
* author tw
* date 2021/7/20
* </PRE>
* 列表
*/
List<CompanyDto> listContractDto(Integer pageNum, Integer pageSize, RequestData requestData);
/**
* * @param null
* @return
* <PRE>
* author tw
* date 2021/7/20
* </PRE>
* 统计
*/
Integer listContractDtoCount(RequestData par);
}
......@@ -24,7 +24,7 @@
<select id="getStationListCount" resultType="Integer">
SELECT
COUNT(a.sequence_nbr) num
FROM cb_water_resource a
FROM cb_fire_station a
where a.is_delete=0 and a.longitude is not null and a.latitude is not null
<if test='par.distance!=null'>
Round(st_distance(point(a.longitude,a.latitude),point(#{par.longitude},#{par.latitude}))*111195,1) &lt;= #{par.distance}
......
......@@ -99,8 +99,8 @@
Round(st_distance(point(a.longitude,a.latitude),point(#{par.longitude},#{par.latitude}))*111195,1) AS distance
FROM cb_fire_team a
where a.is_delete=0 and a.longitude is not null and a.latitude is not null
<if test='par.typeCode!=null'>
and a.type_code= #{par.typeCode}
<if test='par.typeCode!=null and par.typeCode!=""'>
and a.type_code in (#{par.typeCode})
</if>
<if test='par.distance!=null'>
and Round(st_distance(point(a.longitude,a.latitude),point(#{par.longitude},#{par.latitude}))*111195,1) &lt;= #{par.distance}
......@@ -113,8 +113,9 @@
COUNT(a.sequence_nbr) num
FROM cb_fire_team a
where a.is_delete=0 and a.longitude is not null and a.latitude is not null
<if test='par.typeCode!=null'>
and a.type_code= #{par.typeCode}
<if test='par.typeCode!=null and par.typeCode!=""'>
and a.type_code in (#{par.typeCode})
</if>
<if test='par.distance!=null'>
and Round(st_distance(point(a.longitude,a.latitude),point(#{par.longitude},#{par.latitude}))*111195,1) &lt;= #{par.distance}
......
......@@ -25,4 +25,36 @@
and lu.sequence_nbr = #{sequenceNbr}
and is_delete = #{isDelete}
</select>
<select id="listLinkageUnitZhDto" resultType="com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitZhDto">
select
a.sequence_nbr sequenceNbr,
a.unit_name unitName,
a.address,
a.latitude,
a.longitude,
Round(st_distance(point(a.longitude,a.latitude),point(#{par.longitude},#{par.latitude}))*111195,1) AS distance
FROM cb_linkage_unit a
where a.longitude is not null and a.latitude is not null
<if test='par.distance!=null'>
and Round(st_distance(point(a.longitude,a.latitude),point(#{par.longitude},#{par.latitude}))*111195,1) &lt;=
#{par.distance}
</if>
ORDER BY distance limit #{pageNum},#{pageSize}
</select>
<select id="listLinkageUnitZhDtoCount" resultType="Integer">
select
COUNT(a.sequence_nbr) num
FROM cb_linkage_unit a
where a.longitude is not null and a.latitude is not null
<if test='par.distance!=null'>
and Round(st_distance(point(a.longitude,a.latitude),point(#{par.longitude},#{par.latitude}))*111195,1) &lt;=
#{par.distance}
</if>
</select>
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeejoin.amos.boot.module.common.api.mapper.MaintenanceCompanyMapper">
<select id="selectOrgUsrList" resultType="com.yeejoin.amos.boot.module.common.api.dto.OrgUsrDto">
SELECT DISTINCT
sequence_nbr,
biz_org_name,
biz_org_code,
amos_org_id,
amos_org_code,
biz_org_type,
build_name,
build_id,
parent_id
FROM
cb_org_usr
WHERE
sequence_nbr IN ( SELECT DISTINCT signed_company_id FROM cb_contract WHERE company_id = 1 )
AND biz_org_type = "COMPANY"
AND is_delete = 0
</select>
<select id="selectOrgUsrPageList" resultType="com.yeejoin.amos.boot.module.common.api.dto.OrgUsrDto">
SELECT DISTINCT
sequence_nbr,
biz_org_name,
biz_org_code,
amos_org_id,
amos_org_code,
biz_org_type,
build_name,
build_id,
parent_id
FROM
cb_org_usr
WHERE
sequence_nbr IN ( SELECT DISTINCT signed_company_id FROM cb_contract WHERE company_id = 1 )
AND biz_org_type = "COMPANY"
AND is_delete = 0
limit #{pageNum},#{pageSize}
</select>
</mapper>
......@@ -209,4 +209,38 @@
AND biz_org_code LIKE CONCAT((SELECT biz_org_code FROM cb_org_usr WHERE sequence_nbr = #{orgUserId}),'%');
</if>
</select>
<select id="listContractDto" resultType="com.yeejoin.amos.boot.module.common.api.dto.CompanyDto">
SELECT
a.id,
a.name,
a.longitude,
a.latitude,
a.companyMaleEmployees,
a.companyFemaleEmployees,
a.managementType,
Round(st_distance(point(a.longitude,a.latitude),point(#{par.longitude},#{par.latitude}))*111195,1) AS distance
FROM important_companys a
where a.longitude is not null and a.latitude is not null
<if test='par.distance!=null'>
and Round(st_distance(point(a.longitude,a.latitude),point(#{par.longitude},#{par.latitude}))*111195,1) &lt;=
#{par.distance}
</if>
ORDER BY distance limit #{pageNum},#{pageSize}
</select>
<select id="listContractDtoCount" resultType="Integer">
SELECT
COUNT(a.id) num
FROM important_companys a
where a.longitude is not null and a.latitude is not null
<if test='par.distance!=null'>
and Round(st_distance(point(a.longitude,a.latitude),point(#{par.longitude},#{par.latitude}))*111195,1) &lt;=
#{par.distance}
</if>
</select>
</mapper>
......@@ -78,7 +78,7 @@
Round(st_distance(point(a.longitude,a.latitude),point(#{par.longitude},#{par.latitude}))*111195,1) AS distance
FROM cb_water_resource a
where a.is_delete=0 and a.longitude is not null and a.latitude is not null
<if test='par.resourceType!=null'>
<if test='par.resourceType!=null and par.resourceType!=""'>
and a.resource_type= #{par.resourceType}
</if>
<if test='par.distance!=null'>
......@@ -93,7 +93,7 @@
COUNT(a.sequence_nbr) num
FROM cb_water_resource a
where a.is_delete=0 and a.longitude is not null and a.latitude is not null
<if test='par.resourceType!=null'>
<if test='par.resourceType!=null and par.resourceType!=""'>
and a.resource_type= #{par.resourceType}
</if>
<if test='par.distance!=null'>
......@@ -101,9 +101,19 @@
#{par.distance}
</if>
</select>
<select id="getWaterResourceTypeList" resultType="com.yeejoin.amos.boot.module.common.api.dto.WaterResourceDto">
select distinct belong_fighting_system_id, belong_fighting_system, resource_type, resource_type_name
<select id="getWaterResourceTypeList" resultType="com.yeejoin.amos.boot.module.common.api.dto.WaterResourceTypeDto">
select distinct (case
when ISNULL(belong_fighting_system_id) = 0 and LENGTH(trim(belong_fighting_system_id)) > 0
then belong_fighting_system_id
else -1 end) belong_fighting_system_id,
(case
when ISNULL(belong_fighting_system) = 0 and LENGTH(trim(belong_fighting_system)) > 0
then belong_fighting_system
else '其他' end) belong_fighting_system,
resource_type,
resource_type_name
from cb_water_resource
where is_delete = #{isDelete}
</select>
......
......@@ -47,6 +47,8 @@ public class AlertCalledZhDto {
@ApiModelProperty(value = "地址")
private String address;
@ApiModelProperty(value = "救援方格")
private String rescueGrid;
@ApiModelProperty(value = "经度")
private String longitude;
......
package com.yeejoin.amos.boot.module.jcs.api.dto;
import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import java.util.List;
/**
* 警情报送记录
*
* @author tb
* @date 2021-06-17
*/
@Data
@ApiModel(value="AlertSubmittedZHDto", description=" 指挥警情报送记录")
public class AlertSubmittedZHDto {
@ApiModelProperty(value = "主键ID")
protected Long sequenceNbr;
@ApiModelProperty(value = "业务类型(警情续报、非警情确认、警情结案)")
private String businessType;
@ApiModelProperty(value = "报送时间")
private Date submissionTime;
@ApiModelProperty(value = "报送内容")
private String submissionContent;
@ApiModelProperty(value = " 单位名称")
private String companyName;
@ApiModelProperty(value = "人员名称")
private String userName;
}
package com.yeejoin.amos.boot.module.jcs.api.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* 警情报送记录
*
* @author tb
* @date 2021-06-17
*/
@Data
@ApiModel(value="InstructionsZHDto", description=" 指令报送记录")
public class InstructionsZHDto {
@ApiModelProperty(value = "主键ID")
protected Long sequenceNbr;
@ApiModelProperty(value = "业务类型")
private String type;
@ApiModelProperty(value = "报送时间")
private Date submissionTime;
@ApiModelProperty(value = "报送内容")
private String content;
public InstructionsZHDto(Long sequenceNbr, String type, Date submissionTime, String content) {
this.sequenceNbr = sequenceNbr;
this.type = type;
this.submissionTime = submissionTime;
this.content = content;
}
public InstructionsZHDto() {
}
}
package com.yeejoin.amos.boot.module.jcs.api.dto;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import java.util.List;
/**
* 调派单位
*
* @author tb
* @date 2021-06-17
*/
@Data
@ApiModel(value="PowerTransferCompanyZHDto", description=" 指挥调派单位")
public class PowerTransferCompanyZHDto {
@ApiModelProperty(value = "主键ID")
protected Long sequenceNbr;
@ApiModelProperty(value = " 单位名称")
private String companyName;
@ApiModelProperty(value = "调派类型")
private String dispatchType;
@ApiModelProperty(value = "地址")
private String address;
@ApiModelProperty(value = "是否只派发机构")
private Boolean isDistributionAgencies;
@ApiModelProperty(value = "更新时间")
protected Date recDate;
@ApiModelProperty(value = "报送内容")
private String submissionContent;
}
......@@ -28,7 +28,20 @@ public enum AlertStageEnums {
RG("226", "人工上报"),
DJ("228", "对讲呼入"),
JK("388", "监控中心报警"),
DH("389", "电话报警");
DH("389", "电话报警"),
JYZD("111", "消防救援总队"),
SZD("112", "省消防救援总队"),
XFZD("113", "消防救援支队"),
CSZD("114", "城市消防救援支队"),
DQZD("115", "地区消防救援支队"),
ZZZD("116", "企(事)业单位专职消防救援支队"),
YWDD("117", "企(事)业单位义务消防救援大队"),
YLJY("830", "企(事)业单位医疗救援队(站)"),
JKDD("118", "企(事)业单位监控大队");
......
package com.yeejoin.amos.boot.module.jcs.api.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.boot.module.common.api.dto.RequestData;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertCalledZhDto;
import com.yeejoin.amos.boot.module.jcs.api.entity.AlertCalled;
import org.apache.ibatis.annotations.Param;
......@@ -25,5 +26,5 @@ public interface AlertCalledMapper extends BaseMapper<AlertCalled> {
*/
Map<String, Integer> queryAlertStatusCount(@Param("beginDate") String beginDate, @Param("endDate") String endDate);
List<AlertCalledZhDto> alertCalledListByAlertStatus(@Param("address") String address);
List<AlertCalledZhDto> alertCalledListByAlertStatus(@Param("par")RequestData par);
}
......@@ -2,6 +2,7 @@ package com.yeejoin.amos.boot.module.jcs.api.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertSubmittedDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertSubmittedZHDto;
import com.yeejoin.amos.boot.module.jcs.api.entity.AlertSubmitted;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertSubmittedExtDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertSubmittedSMSDto;
......@@ -40,4 +41,19 @@ public interface AlertSubmittedMapper extends BaseMapper<AlertSubmitted> {
AlertSubmittedSMSDto getSchedulingContent(@Param("id") Long id);
/**
* * @param null
* @return
* <PRE>
* author tw
* date 2021/7/21
* </PRE>
* 报送记录
*/
List<AlertSubmittedZHDto> listAlertSubmittedZHDto(@Param("id") Long id);
}
package com.yeejoin.amos.boot.module.jcs.api.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertSubmittedZHDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.PowerTransferCompanyZHDto;
import com.yeejoin.amos.boot.module.jcs.api.entity.PowerTransferCompany;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 调派单位 Mapper 接口
......@@ -10,5 +15,15 @@ import com.yeejoin.amos.boot.module.jcs.api.entity.PowerTransferCompany;
* @date 2021-06-17
*/
public interface PowerTransferCompanyMapper extends BaseMapper<PowerTransferCompany> {
/**
* * @param null
* @return
* <PRE>
* author tw
* date 2021/7/21
* </PRE>
* 调派记录
*/
List<PowerTransferCompanyZHDto> listPowerTransferCompanyZHDto(@Param("id") Long id);
}
package com.yeejoin.amos.boot.module.jcs.api.service;
import com.yeejoin.amos.boot.module.common.api.dto.RequestData;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertCalledZhDto;
import com.yeejoin.amos.boot.module.jcs.api.entity.AlertCalled;
import org.springframework.web.bind.annotation.PathVariable;
......@@ -25,7 +26,7 @@ public interface IAlertCalledService {
*
* **/
List<AlertCalledZhDto> alertCalledListByAlertStatus(String address);
List<AlertCalledZhDto> alertCalledListByAlertStatus(RequestData par);
/**
*
......
......@@ -2,10 +2,13 @@ package com.yeejoin.amos.boot.module.jcs.api.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertSubmittedDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.InstructionsZHDto;
import com.yeejoin.amos.boot.module.jcs.api.entity.AlertSubmitted;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertSubmittedSMSDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.SchedulingReportingDto;
import java.util.List;
/**
* 警情报送记录 服务类
*
......@@ -40,4 +43,10 @@ public interface IAlertSubmittedService extends IService<AlertSubmitted> {
Boolean save(AlertSubmittedDto alertSubmittedDto, String userName) throws Exception;
AlertSubmittedSMSDto getSchedulingContent(Long id);
List<InstructionsZHDto> getInstructionsZHDtoList(Long id);
}
......@@ -24,6 +24,7 @@
a.sequence_nbr sequenceNbr,
a.alert_stage alertStage,
a.call_time callTime,
a.rescue_grid rescueGrid,
a.alert_type alertType,
a.alarm_type_code alarmTypeCode,
a.unit_involved unitInvolved,
......@@ -42,8 +43,11 @@
AND a.is_delete=0
AND a.coordinate_x IS NOT NULL
AND a.coordinate_y IS NOT NULL
<if test='address!=null'>
and a.address like CONCAT('%',#{address},'%')
<if test='par.address!=null'>
and a.address like CONCAT('%',#{par.address},'%')
</if>
<if test='par.whether24!=false'>
and a.call_time &gt;= (NOW() - interval 24 hour)
</if>
ORDER BY
a.call_time DESC
......
......@@ -83,4 +83,48 @@
WHERE
o.sequence_nbr = ${id}
</select>
<select id="listAlertSubmittedZHDto" resultType="com.yeejoin.amos.boot.module.jcs.api.dto.AlertSubmittedZHDto">
SELECT
g.business_type businessType,
g.sequence_nbr sequenceNbr,
g.submission_time submissionTime,
g.submission_content submissionContent,
g.company_name companyName,
group_concat( DISTINCT g.user_name ) AS userName
FROM
(
SELECT
a.sequence_nbr,
a.business_type,
a.submission_time,
a.submission_content,
b.company_name,
b.user_name
FROM
jc_alert_submitted a
LEFT JOIN jc_alert_submitted_object b ON a.sequence_nbr = b.alert_submitted_id
WHERE
a.alert_called_id = ${id}
) g
GROUP BY
g.business_type,
g.sequence_nbr,
g.submission_time,
g.submission_content,
g.company_name;
</select>
</mapper>
......@@ -2,4 +2,40 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeejoin.amos.boot.module.jcs.api.mapper.PowerTransferCompanyMapper">
<select id="listPowerTransferCompanyZHDto" resultType="com.yeejoin.amos.boot.module.jcs.api.dto.PowerTransferCompanyZHDto">
SELECT
g.sequence_nbr sequenceNbr,
g.rec_date recDate,
g.dispatch_type dispatchType,
g.address,
g.is_distribution_agencies isDistributionAgencies,
g.company_name companyName,
group_concat( DISTINCT concat( g.resources_name, "(车牌:", g.resources_num, ")" ) ) AS submissionContent
FROM
(
SELECT
a.sequence_nbr,
a.dispatch_type,
a.rec_date,
a.address,
b.company_name,
b.is_distribution_agencies,
c.resources_name,
c.resources_num
FROM
jc_power_transfer a
LEFT JOIN jc_power_transfer_company b ON a.sequence_nbr = b.power_transfer_id
LEFT JOIN jc_power_transfer_company_resources c ON b.sequence_nbr = c.power_transfer_company_id
WHERE
a.alert_called_id = ${id}
) g
GROUP BY
g.company_name,
g.rec_date,
g.dispatch_type,
g.address,
g.is_distribution_agencies,
g.sequence_nbr;
</select>
</mapper>
package com.yeejoin.amos.boot.module.common.biz.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RestController;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import java.util.Date;
import java.util.List;
import com.yeejoin.amos.boot.module.common.biz.service.impl.ContractServiceImpl;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import org.springframework.beans.factory.annotation.Autowired;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.common.api.dto.ContractDto;
......@@ -37,80 +44,84 @@ public class ContractController extends BaseController {
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增维保合同", notes = "新增维保合同")
public ResponseModel<ContractDto> save(@RequestBody ContractDto model) {
model = contractServiceImpl.createWithModel(model);
return ResponseHelper.buildResponse(model);
}
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增维保合同", notes = "新增维保合同")
public ResponseModel<ContractDto> save(@RequestBody ContractDto model) throws Exception {
model = contractServiceImpl.saveContractDto(RequestContext.getAgencyCode(), model);
return ResponseHelper.buildResponse(model);
}
/**
* 根据sequenceNbr更新
/**
* 更新合同信息及附件
*
* @param sequenceNbr 主键
* @param model
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新维保合同", notes = "根据sequenceNbr更新维保合同")
public ResponseModel<ContractDto> updateBySequenceNbrContract(@RequestBody ContractDto model,@PathVariable(value = "sequenceNbr") Long sequenceNbr) {
model.setSequenceNbr(sequenceNbr);
return ResponseHelper.buildResponse(contractServiceImpl.updateWithModel(model));
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "更新合同信息及附件", notes = "更新合同信息及附件")
public ResponseModel<ContractDto> updateBySequenceNbrContract(@RequestBody ContractDto model,
@PathVariable(value = "sequenceNbr") Long sequenceNbr) throws Exception {
model.setSequenceNbr(sequenceNbr);
return ResponseHelper.buildResponse(contractServiceImpl.updateAircraft(RequestContext.getAgencyCode(), model));
}
/**
* 根据sequenceNbr删除
/**
* 删除合同信息 (无约束)
*
* @param sequenceNbr 主键
* @param
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@DeleteMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除维保合同", notes = "根据sequenceNbr删除维保合同")
public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request, @PathVariable(value = "sequenceNbr") Long sequenceNbr){
return ResponseHelper.buildResponse(contractServiceImpl.removeById(sequenceNbr));
@DeleteMapping(value = "/batch")
@ApiOperation(httpMethod = "DELETE", value = "删除合同信息 (无约束)", notes = "删除合同信息 (无约束)")
public ResponseModel<List<Long>> deleteBySequenceNbr(@RequestParam(value = "ids") String ids) throws Exception {
return ResponseHelper.buildResponse(contractServiceImpl.multDeleteAircraft(RequestContext.getAgencyCode(),
ids));
}
/**
* 根据sequenceNbr查询
*
* @param sequenceNbr 主键
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET",value = "根据sequenceNbr查询单个维保合同", notes = "根据sequenceNbr查询单个维保合同")
public ResponseModel<ContractDto> selectOne(@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(contractServiceImpl.queryBySeq(sequenceNbr));
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET", value = "查询单个维保合同", notes = "查询单个维保合同")
public ResponseModel<ContractDto> selectOne(String agencyCode, @PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(contractServiceImpl.queryByAircraftSeq(RequestContext.getAgencyCode(),
sequenceNbr));
}
/**
/**
* 列表分页查询
*
* @param current 当前页
* @param current 每页大小
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/page")
@ApiOperation(httpMethod = "GET",value = "维保合同分页查询", notes = "维保合同分页查询")
public ResponseModel<Page<ContractDto>> queryForPage(@RequestParam(value = "current") int current,@RequestParam
(value = "size") int size) {
Page<ContractDto> page = new Page<ContractDto>();
page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(contractServiceImpl.queryForContractPage(page));
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/page")
@ApiOperation(httpMethod = "GET", value = "维保合同分页查询", notes = "维保合同分页查询")
public ResponseModel<Page<ContractDto>> queryForPage(@RequestParam(value = "current") int current, @RequestParam
(value = "size") int size, Long companyId, String name, Long typeCode, Date signedDate) {
Page<ContractDto> page = new Page<ContractDto>();
page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(contractServiceImpl.queryForContractPage(page, false, companyId, name,
typeCode, signedDate));
}
/**
* 列表全部数据查询
/**
* 列表全部数据查询
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "维保合同列表全部数据查询", notes = "维保合同列表全部数据查询")
@GetMapping(value = "/list")
public ResponseModel<List<ContractDto>> selectForList() {
return ResponseHelper.buildResponse(contractServiceImpl.queryForContractList());
}
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET", value = "维保合同列表全部数据查询", notes = "维保合同列表全部数据查询")
@GetMapping(value = "/list")
public ResponseModel<List<ContractDto>> selectForList() {
return ResponseHelper.buildResponse(contractServiceImpl.queryForContractList(false));
}
}
......@@ -21,6 +21,7 @@ import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.common.api.dto.MaintenanceCompanyDto;
import com.yeejoin.amos.boot.module.common.api.dto.MaintenanceDepartmentDto;
......@@ -169,14 +170,14 @@ public class MaintenanceCompanyController extends BaseController {
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "put/company/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新维保单位", notes = "根据sequenceNbr更新维保单位")
public ResponseModel<Boolean> updateBySequenceNbrMaintenanceCompany(@RequestBody MaintenanceCompanyDto model,
@PathVariable(value = "sequenceNbr") Long sequenceNbr) {
model.setSequenceNbr(sequenceNbr);
return ResponseHelper.buildResponse(maintenanceCompanyService.updateMaintenanceCompanyDetail(model));
}
// @TycloudOperation(ApiLevel = UserType.AGENCY)
// @PutMapping(value = "put/company/{sequenceNbr}")
// @ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新维保单位", notes = "根据sequenceNbr更新维保单位")
// public ResponseModel<Boolean> updateBySequenceNbrMaintenanceCompany(@RequestBody MaintenanceCompanyDto model,
// @PathVariable(value = "sequenceNbr") Long sequenceNbr) {
// model.setSequenceNbr(sequenceNbr);
// return ResponseHelper.buildResponse(maintenanceCompanyService.updateMaintenanceCompanyDetail(model));
// }
/**
* 根据sequenceNbr更新
......@@ -284,4 +285,123 @@ public class MaintenanceCompanyController extends BaseController {
return ResponseHelper.buildResponse(menus);
}
/**
* 新增维保单位
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增维保单位", notes = "新增维保单位")
public ResponseModel<MaintenanceCompanyDto> save(@RequestBody MaintenanceCompanyDto model) {
model = maintenanceCompanyServiceImpl.createWithModel(model);
return ResponseHelper.buildResponse(model);
}
/**
* 根据sequenceNbr更新
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新维保单位", notes = "根据sequenceNbr更新维保单位")
public ResponseModel<MaintenanceCompanyDto> updateBySequenceNbrMaintenanceCompany(@RequestBody MaintenanceCompanyDto model, @PathVariable(value = "sequenceNbr") Long sequenceNbr) {
model.setSequenceNbr(sequenceNbr);
return ResponseHelper.buildResponse(maintenanceCompanyServiceImpl.updateWithModel(model));
}
// /**
// * 根据sequenceNbr删除
// *
// * @param sequenceNbr 主键
// * @return
// */
// @TycloudOperation(ApiLevel = UserType.AGENCY)
// @DeleteMapping(value = "/{sequenceNbr}")
// @ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除维保单位", notes = "根据sequenceNbr删除维保单位")
// public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request, @PathVariable(value = "sequenceNbr") Long sequenceNbr) {
// return ResponseHelper.buildResponse(maintenanceCompanyServiceImpl.removeById(sequenceNbr));
// }
/**
* 根据sequenceNbr查询
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET", value = "根据sequenceNbr查询单个维保单位", notes = "根据sequenceNbr查询单个维保单位")
public ResponseModel<MaintenanceCompanyDto> seleteOne(@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(maintenanceCompanyServiceImpl.queryBySeq(sequenceNbr));
}
/**
* 列表分页查询
*
* @param current 当前页
* @param current 每页大小
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/page")
@ApiOperation(httpMethod = "GET", value = "维保单位分页查询", notes = "维保单位分页查询")
public ResponseModel<Page<MaintenanceCompanyDto>> queryForPage(@RequestParam(value = "current") int current, @RequestParam(value = "size") int size) {
Page<MaintenanceCompanyDto> page = new Page<MaintenanceCompanyDto>();
page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(maintenanceCompanyServiceImpl.queryForMaintenanceCompanyPage(page));
}
/**
* 列表全部数据查询
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET", value = "维保单位列表全部数据查询", notes = "维保单位列表全部数据查询")
@GetMapping(value = "/list")
public ResponseModel<List<MaintenanceCompanyDto>> selectForList() {
return ResponseHelper.buildResponse(maintenanceCompanyServiceImpl.queryForMaintenanceCompanyList());
}
/**
* 根据维保单位查询所有机场单位(不带分页)
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "queryCompany/{sequenceNbr}")
@ApiOperation(httpMethod = "GET", value = "根据维保单位查询所有机场单位(不带分页)", notes = "根据维保单位查询所有机场单位(不带分页)")
public ResponseModel<List<Map<String, Object>>> seleteCompanys(@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(maintenanceCompanyServiceImpl.queryOrgUsrMsg(sequenceNbr));
}
/**
* 根据维保单位查询所有机场单位(带分页)
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "queryCompanyPages/{sequenceNbr}")
@ApiOperation(httpMethod = "GET", value = "根据维保单位查询所有机场单位(带分页)", notes = "根据维保单位查询所有机场单位(带分页)")
public ResponseModel<List<Map<String, Object>>> seleteCompanyPages(@RequestParam(value = "pageNum")int pageNum,@RequestParam(value = "pageSize")int pageSize,@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(maintenanceCompanyServiceImpl.queryOrgUsrMsgPage(pageNum,pageSize,sequenceNbr));
}
/**
*
* 查询维保单位、业主单位信息
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET", value = "查询维保单位、业主单位信息", notes = "查询维保单位、业主单位信息")
@GetMapping(value = "/companyLlist")
public ResponseModel<List<Map<String,Object>>> selectCompanyList() {
return ResponseHelper.buildResponse(maintenanceCompanyServiceImpl.queryCompanyMsg());
}
}
......@@ -18,6 +18,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
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.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
......@@ -284,7 +285,9 @@ public class WaterResourceController extends BaseController {
WaterResourceIot waterResourceIot = waterResourceIotService.getOne(new QueryWrapper<WaterResourceIot>().eq(
"resource_id", sequenceNbr));
WaterResourceIotDto waterResourceIotDto = new WaterResourceIotDto();
BeanUtils.copyProperties(waterResourceIot, waterResourceIotDto);
if (!ValidationUtil.isEmpty(waterResourceIot)) {
BeanUtils.copyProperties(waterResourceIot, waterResourceIotDto);
}
waterResourceDto.setWaterResourceIotDto(waterResourceIotDto);
}
return ResponseHelper.buildResponse(waterResourceDto);
......@@ -339,8 +342,19 @@ public class WaterResourceController extends BaseController {
public ResponseModel<List<WaterResourceDto>> selectList(String name, Long sequenceNbr,
Long belongFightingSystemId, Long belongBuildingId,
String belongBuilding, String resourceType) {
return ResponseHelper.buildResponse(waterResourceServiceImpl.queryWaterResourceList(false, name, sequenceNbr,
return ResponseHelper.buildResponse(waterResourceServiceImpl.queryWaterResourceList(true, name, sequenceNbr,
belongFightingSystemId, belongBuildingId,
belongBuilding, resourceType));
}
/**
* 查询水资源类型列表
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET", value = "查询水资源类型列表", notes = "查询水资源类型列表")
@GetMapping(value = "/resource_type_list")
public ResponseModel<List<WaterResourceTypeDto>> selectResourceTypeList() {
return ResponseHelper.buildResponse(waterResourceServiceImpl.getWaterResourceTypeList(true));
}
}
......@@ -5,10 +5,25 @@ import com.yeejoin.amos.boot.module.common.api.dto.ContractDto;
import com.yeejoin.amos.boot.module.common.api.entity.Contract;
import com.yeejoin.amos.boot.module.common.api.mapper.ContractMapper;
import com.yeejoin.amos.boot.module.common.api.service.IContractService;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.FileInfoModel;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.core.foundation.exception.BaseException;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.foundation.utils.StringUtil;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.annotation.Condition;
import org.typroject.tyboot.core.rdbms.annotation.Operator;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.DataNotFound;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
/**
* 维保合同服务实现类
......@@ -21,14 +36,159 @@ public class ContractServiceImpl extends BaseService<ContractDto, Contract, Cont
/**
* 分页查询
*/
public Page<ContractDto> queryForContractPage(Page<ContractDto> page) {
return this.queryForPage(page, null, false);
public Page<ContractDto> queryForContractPage(Page<ContractDto> page, Boolean isDelete,
@Condition(Operator.eq) Long companyId,
@Condition(Operator.like) String name,
@Condition(Operator.eq) Long typeCode,
@Condition(Operator.likeLeft) Date signedDate) {
return this.queryForPage(page, null, false, isDelete, companyId, name, typeCode, signedDate);
}
/**
* 列表查询 示例
*/
public List<ContractDto> queryForContractList() {
return this.queryForList("", false);
public List<ContractDto> queryForContractList(Boolean isDelete) {
return this.queryForList("rec_date", false, isDelete);
}
/**
* 保存附件信息
*
* @param agencyCode
* @param attachments
* @param contractDto
* @param fileCategory
* @return
* @throws Exception
*/
private List<FileInfoModel> buildFileInfo(String agencyCode, List<String> attachments,
ContractDto contractDto, String fileCategory) throws Exception {
List<FileInfoModel> fileInfoModelList = new ArrayList<>();
for (String attachment : attachments) {
FileInfoModel fileInfoModel = new FileInfoModel();
fileInfoModel.setEntityId(String.valueOf(contractDto.getSequenceNbr()));
fileInfoModel.setEntityType(Contract.class.getSimpleName());
fileInfoModel.setFileCategory(fileCategory);
fileInfoModel.setFilename(attachment);
fileInfoModel.setAgencyCode(agencyCode);
fileInfoModelList.add(fileInfoModel);
}
return fileInfoModelList;
}
/**
* 保存附件
*
* @param agencyCode
* @param contractDto
* @return
* @throws Exception
*/
private boolean saveAircraftFile(String agencyCode, ContractDto contractDto) throws Exception {
List<FileInfoModel> fileInfoModelList = new ArrayList<FileInfoModel>();
// 获取附件信息
if (!ValidationUtil.isEmpty(contractDto.getContractAttachment())) {
List<String> attachments = StringUtil.String2List(contractDto.getContractAttachment());
for (String attachment : attachments) {
String format = attachment.substring(attachment.lastIndexOf(".") + 1, attachment.length());
fileInfoModelList.addAll(buildFileInfo(agencyCode, attachments, contractDto, format));
}
}
// 保存附件
if (!ValidationUtil.isEmpty(fileInfoModelList)) {
Systemctl.fileInfoClient.batchCreateByEntity(fileInfoModelList);
}
return true;
}
/**
* 保存合同信息
*
* @param agencyCode
* @param contractDto
* @return
* @throws Exception
*/
public ContractDto saveContractDto(String agencyCode, ContractDto contractDto) throws Exception {
contractDto.setIsDelete(false);
// 保存合同基本信息
contractDto = this.createWithModel(contractDto);
// 保存附件信息
saveAircraftFile(agencyCode, contractDto);
return contractDto;
}
}
\ No newline at end of file
/**
* 更新合同信息及附件
*
* @param agencyCode
* @param model
* @return
* @throws Exception
*/
public ContractDto updateAircraft(String agencyCode, ContractDto model) throws Exception {
ContractDto oldModel = this.queryBySeq(model.getSequenceNbr());
if (ValidationUtil.isEmpty(oldModel)) {
throw new DataNotFound("找不到指定的合同信息.");
}
//删除附件信息
Systemctl.fileInfoClient.deleteByAlias(agencyCode, ContractDto.class.getSimpleName(),
String.valueOf(model.getSequenceNbr()), null);
//保存合同信息
saveAircraftFile(agencyCode, model);
return this.updateWithModel(Bean.copyExistPropertis(model, oldModel));
}
/**
* 附件转成逗号分割String
*
* @param fileInfoModels
* @return
*/
private String processToStr(List<FileInfoModel> fileInfoModels) {
return fileInfoModels.stream().map(FileInfoModel::getFilename).collect(Collectors.joining(","));
}
/**
* 根据主键查询合同信息
*
* @param agencyCode
* @param seq
* @return
*/
public ContractDto queryByAircraftSeq(String agencyCode, Long seq) {
ContractDto contractDto = this.queryBySeq(seq);
// 填充合同附件信息
FeignClientResult<List<FileInfoModel>> fileInfoModelResult = Systemctl.fileInfoClient.queryByEntity(
agencyCode, ContractDto.class.getSimpleName(), String.valueOf(seq));
List<FileInfoModel> fileInfoModels = fileInfoModelResult.getResult();
// 填充合同信息
if (!ValidationUtil.isEmpty(fileInfoModels)) {
contractDto.setContractAttachment(processToStr(fileInfoModels));
}
return contractDto;
}
/**
* 删除合同信息 (无约束)
*
* @param agencyCode
* @param ids
* @return
* @throws Exception
*/
@Transactional(rollbackFor = {Exception.class, BaseException.class})
public List<Long> multDeleteAircraft(String agencyCode, String ids) throws Exception {
List<Long> seqs = StringUtil.String2LongList(ids);
for (Long id : seqs) {
//删除附件信息
Systemctl.fileInfoClient.deleteByAlias(agencyCode, ContractDto.class.getSimpleName(),
String.valueOf(id), null);
//删除合同信息
this.deleteBySeq(id);
}
return seqs;
}
}
......@@ -3,6 +3,8 @@ package com.yeejoin.amos.boot.module.common.biz.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yeejoin.amos.boot.module.common.api.dto.DutyCarDto;
import com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitZhDto;
import com.yeejoin.amos.boot.module.common.api.dto.RequestData;
import com.yeejoin.amos.boot.module.common.api.entity.DynamicFormColumn;
import com.yeejoin.amos.boot.module.common.api.entity.DynamicFormInstance;
import com.yeejoin.amos.boot.module.common.api.entity.LinkageUnit;
......@@ -21,6 +23,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
import java.util.Random;
/**
* 联动单位服务实现类
......@@ -72,13 +75,14 @@ public class LinkageUnitServiceImpl extends BaseService<LinkageUnitDto, LinkageU
Map<String, Object> map = Bean.BeantoMap(linkageUnitDto);
Long instanceId = dynamicFormInstanceService.commonSave(groupCode, map);
linkageUnitDto.setInstanceId(instanceId);
//2.保存值班信息
//2.保存基本信息
linkageUnitDto.setUnitCode(getUnitCodeStr());
LinkageUnitDto model = createWithModel(linkageUnitDto);
//3.返回保存后的数据
return model;
}
@Override
public LinkageUnitDto queryOne(Long sequenceNbr) {
boolean isDelete = false;
String groupCode = getGroupCode();
......@@ -112,4 +116,32 @@ public class LinkageUnitServiceImpl extends BaseService<LinkageUnitDto, LinkageU
dynamicFormInstanceService.updateBatchById(dynamicFormInstanceList);
return linkageUnitDto;
}
public static String getUnitCodeStr() {
int length = 6;
String str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
Random random = new Random();
StringBuffer sb = new StringBuffer();
for (int i = 0; i < length; i++) {
int number = random.nextInt(62);
sb.append(str.charAt(number));
}
return sb.toString();
}
@Override
public List<LinkageUnitZhDto> listLinkageUnitZhDto(Integer pageNum, Integer pageSize, RequestData par) {
if (null == pageNum || null == pageSize) {
pageNum = 1;
pageSize = Integer.MAX_VALUE;
} else {
pageNum = (pageNum - 1) * pageSize;
}
return linkageUnitMapper.listLinkageUnitZhDto(pageNum, pageSize, par);
}
@Override
public Integer listLinkageUnitZhDtoCount(RequestData par) {
return linkageUnitMapper.listLinkageUnitZhDtoCount(par);
}
}
\ No newline at end of file
......@@ -3,6 +3,7 @@ package com.yeejoin.amos.boot.module.common.biz.service.impl;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
......@@ -15,18 +16,21 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.ObjectUtils;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.itextpdf.text.pdf.PdfStructTreeController.returnType;
import com.yeejoin.amos.boot.module.common.api.dto.MaintenanceCompanyDto;
import com.yeejoin.amos.boot.module.common.api.dto.MaintenanceDepartmentDto;
import com.yeejoin.amos.boot.module.common.api.dto.MaintenancePersonDto;
import com.yeejoin.amos.boot.module.common.api.dto.OrgUsrDto;
import com.yeejoin.amos.boot.module.common.api.entity.DynamicFormInstance;
import com.yeejoin.amos.boot.module.common.api.entity.MaintenanceCompany;
import com.yeejoin.amos.boot.module.common.api.enums.OrgPersonEnum;
import com.yeejoin.amos.boot.module.common.api.mapper.MaintenanceCompanyMapper;
import com.yeejoin.amos.boot.module.common.api.service.IMaintenanceCompanyService;
......@@ -455,4 +459,113 @@ public class MaintenanceCompanyServiceImpl
wrapper.eq(MaintenanceCompany::getParentId, sequenceNbr);
return maintenanceCompanyMapper.selectList(wrapper);
}
// /**
// * 分页查询
// */
// public Page<MaintenanceCompanyDto> queryForMaintenanceCompanyPage(Page<MaintenanceCompanyDto> page) {
// return this.queryForPage(page, null, false);
// }
//
// /**en
// * 列表查询 示例
// */
// public List<MaintenanceCompanyDto> queryForMaintenanceCompanyList() {
// return this.queryForList("" , false);
// }
/**
* 根据维保单位查询所有机场单位(返回List<Map>类型) 不带分页
* @param seq
* @return
*/
public List< Map<String, Object>> queryOrgUsrMsg(Long seq){
if (ValidationUtil.isEmpty(this.queryBySeq(seq))){
throw new BadRequest("参数校验失败.");
}else {
List<Map<String,Object>> companys = new ArrayList<>();
// 机场单位列表基本信息
List<OrgUsrDto> orgUsrDtos = this.baseMapper.selectOrgUsrList(seq);
// 机场组装单位动态表单数据
orgUsrDtos.forEach(orgUsrDto -> {
Map<String, Object> map = Bean.BeantoMap(orgUsrDto);
mapCopy(dynamicFormInstanceService.getOneMap(orgUsrDto.getSequenceNbr(), OrgPersonEnum.公司.getKey()),map);
companys.add(map);
});
return companys;
}
}
/**
* 根据维保单位查询所有机场单位(返回List<Map>类型) 带分页
* @param pageNum
* @param pageSize
* @param seq
* @return
*/
public List<Map<String,Object>> queryOrgUsrMsgPage(int pageNum,int pageSize, Long seq){
if (ValidationUtil.isEmpty(this.queryBySeq(seq))){
throw new BadRequest("参数校验失败.");
}else {
List<Map<String,Object>> companys = new ArrayList<>();
// 机场单位列表基本信息
List<OrgUsrDto> orgUsrDtos = this.baseMapper.selectOrgUsrPageList(pageNum,pageSize,seq);
// 机场组装单位动态表单数据
orgUsrDtos.forEach(orgUsrDto -> {
Map<String, Object> map = Bean.BeantoMap(orgUsrDto);
mapCopy(dynamicFormInstanceService.getOneMap(orgUsrDto.getSequenceNbr(), OrgPersonEnum.公司.getKey()),map);
companys.add(map);
});
return companys;
}
}
public List<Map<String,Object>> queryCompanyMsg (){
List<Map<String,Object>> companysMsg = new ArrayList<>();
// 查询所有维保单位信息
List<MaintenanceCompany> lists = this.list();
lists.forEach(list->{
Map<String,Object> maintenanceCompany = new HashMap<>();
maintenanceCompany.put("id",list.getSequenceNbr());
maintenanceCompany.put("code",list.getCode());
maintenanceCompany.put("name",list.getName());
maintenanceCompany.put("type",1);
maintenanceCompany.put("parentId",null);
// 查询该维保单位下的业主信息
List<OrgUsrDto> orgUsrDtos = this.baseMapper.selectOrgUsrList(list.getSequenceNbr());
orgUsrDtos.forEach(orgUsrDto -> {
Map<String,Object> airCompany = new HashMap<>();
airCompany.put("id",orgUsrDto.getSequenceNbr());
airCompany.put("code",orgUsrDto.getBizOrgCode());
airCompany.put("name",orgUsrDto.getBizOrgName());
airCompany.put("type",2);
airCompany.put("parentId",list.getSequenceNbr());
companysMsg.add(airCompany);
});
companysMsg.add(maintenanceCompany);
});
return companysMsg;
}
/**
* 复制map对象
* @explain 将paramsMap中的键值对全部拷贝到resultMap中;
* @param paramsMap
* 被拷贝对象
* @param resultMap
* 拷贝后的对象
*/
private static void mapCopy(Map paramsMap, Map resultMap) {
if (resultMap == null) {
return;
}
if (paramsMap == null) {
return;
}
Iterator it = paramsMap.entrySet().iterator();
while (it.hasNext()) {
Map.Entry entry = (Map.Entry) it.next();
Object key = entry.getKey();
resultMap.put(key, paramsMap.get(key) != null ? paramsMap.get(key) : "");
}
}
}
\ No newline at end of file
......@@ -14,6 +14,7 @@ import java.util.stream.Collectors;
import javax.annotation.Resource;
import com.yeejoin.amos.boot.module.common.api.dto.*;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -26,17 +27,6 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.constants.CommonConstant;
import com.yeejoin.amos.boot.module.common.api.dto.CompanyPerson;
import com.yeejoin.amos.boot.module.common.api.dto.DynamicFormInstanceDto;
import com.yeejoin.amos.boot.module.common.api.dto.OrgPersonExcelDto;
import com.yeejoin.amos.boot.module.common.api.dto.FormValue;
import com.yeejoin.amos.boot.module.common.api.dto.OrgDepartmentDto;
import com.yeejoin.amos.boot.module.common.api.dto.OrgDepartmentFormDto;
import com.yeejoin.amos.boot.module.common.api.dto.OrgMenuDto;
import com.yeejoin.amos.boot.module.common.api.dto.OrgPersonDto;
import com.yeejoin.amos.boot.module.common.api.dto.OrgPersonFormDto;
import com.yeejoin.amos.boot.module.common.api.dto.OrgUsrDto;
import com.yeejoin.amos.boot.module.common.api.dto.OrgUsrFormDto;
import com.yeejoin.amos.boot.module.common.api.entity.DynamicFormColumn;
import com.yeejoin.amos.boot.module.common.api.entity.DynamicFormInstance;
import com.yeejoin.amos.boot.module.common.api.entity.OrgUsr;
......@@ -713,6 +703,31 @@ public class OrgUsrServiceImpl extends BaseService<OrgUsrDto, OrgUsr, OrgUsrMapp
return personResult;
}
@Override
public List<CompanyDto> listContractDto(Integer pageNum, Integer pageSize, RequestData requestData) {
if (null == pageNum || null == pageSize) {
pageNum = 1;
pageSize = Integer.MAX_VALUE;
} else {
pageNum = (pageNum - 1) * pageSize;
}
return orgUsrMapper.listContractDto(pageNum, pageSize, requestData);
}
@Override
public Integer listContractDtoCount(RequestData par) {
return orgUsrMapper.listContractDtoCount( par);
}
public static String getOrgCodeStr() {
int length = 6;
String str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
......
......@@ -225,7 +225,7 @@ public class WaterResourceServiceImpl extends BaseService<WaterResourceDto, Wate
return waterResourceDto;
}
public List<WaterResourceDto> getWaterResourceTypeList() {
return waterResourceMapper.getWaterResourceTypeList();
public List<WaterResourceTypeDto> getWaterResourceTypeList(Boolean isDelete) {
return waterResourceMapper.getWaterResourceTypeList(isDelete);
}
}
......@@ -46,7 +46,7 @@ public class ControllerAop {
@Autowired
private RedisUtils redisUtils;
@Pointcut("execution(public * com.yeejoin.amos.boot.module.*jcs.biz.controller..*(..))")
@Pointcut("execution(public * com.yeejoin.amos.boot.module.*.biz.controller..*(..))")
public void userCache() {
}
......
......@@ -170,7 +170,7 @@ public class AlertCalledController extends BaseController {
* 相似警情分页查询
* </pre>
*
* @param alertCalled
* @param
* @param current
* @param size
* @return
......
......@@ -10,6 +10,7 @@ import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.common.api.dto.FormValue;
import com.yeejoin.amos.boot.module.common.api.dto.RequestData;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertCalledDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertCalledFormDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertCalledObjsDto;
......@@ -85,9 +86,9 @@ public class AlertCalledServiceImpl extends BaseService<AlertCalledDto,AlertCall
*
* **/
@Override
public List<AlertCalledZhDto> alertCalledListByAlertStatus(String address) {
public List<AlertCalledZhDto> alertCalledListByAlertStatus( RequestData par) {
List<AlertCalledZhDto> list = alertCalledMapper.alertCalledListByAlertStatus(address);
List<AlertCalledZhDto> list = alertCalledMapper.alertCalledListByAlertStatus(par);
return list;
}
......@@ -100,7 +101,7 @@ public class AlertCalledServiceImpl extends BaseService<AlertCalledDto,AlertCall
public Object selectAlertCalledById(Long id) {
if(redisUtils.hasKey(RedisKey.ALERTCALLED_ID+id)){
Object obj= redisUtils.get(RedisKey.ALERTCALLED_ID+id);
return ResponseHelper.buildResponse(obj);
return obj;
}else{
// 警情基本信息
AlertCalled alertCalled = this.getById(id);
......@@ -118,7 +119,7 @@ public class AlertCalledServiceImpl extends BaseService<AlertCalledDto,AlertCall
AlertCalledFormDto alertCalledFormVo = new AlertCalledFormDto(alertCalled, formValue);
redisUtils.set(RedisKey.ALERTCALLED_ID+id, JSON.toJSON(alertCalledFormVo),time);
return ResponseHelper.buildResponse(alertCalledFormVo);
return alertCalledFormVo;
}
}
......
package com.yeejoin.amos.boot.module.jcs.biz.service.impl;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.Set;
import java.util.*;
import java.util.stream.Collectors;
import com.yeejoin.amos.boot.module.jcs.api.dto.*;
import com.yeejoin.amos.boot.module.jcs.api.mapper.PowerTransferCompanyMapper;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -34,16 +30,6 @@ import com.yeejoin.amos.boot.module.common.api.dto.FormValue;
import com.yeejoin.amos.boot.module.common.api.entity.DataDictionary;
import com.yeejoin.amos.boot.module.common.biz.service.impl.DataDictionaryServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.OrgUsrServiceImpl;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertCalledObjsDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertCalledRo;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertSubmittedDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertSubmittedExtDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertSubmittedSMSDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.CarStatusInfoDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.PowerTransferCompanyDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.SchedulingReportingDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.TemplateDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.TemplateExtendDto;
import com.yeejoin.amos.boot.module.jcs.api.entity.AlertCalled;
import com.yeejoin.amos.boot.module.jcs.api.entity.AlertFormValue;
import com.yeejoin.amos.boot.module.jcs.api.entity.AlertSubmitted;
......@@ -100,6 +86,11 @@ public class AlertSubmittedServiceImpl extends BaseService<AlertSubmittedDto, Al
@Autowired
EquipFeignClient equipFeignClient;
@Autowired
AlertSubmittedMapper alertSubmittedMapper;
@Autowired
PowerTransferCompanyMapper powerTransferCompanyMapper;
@Override
public SchedulingReportingDto listSchedulingByParam(AlertSubmittedDto queryParam) {
SchedulingReportingDto schedulingReportingDto = new SchedulingReportingDto();
......@@ -420,6 +411,73 @@ public class AlertSubmittedServiceImpl extends BaseService<AlertSubmittedDto, Al
return this.baseMapper.getSchedulingContent(id);
}
@Override
public List<InstructionsZHDto> getInstructionsZHDtoList(Long id) {
List<InstructionsZHDto> listInstructionsZHDto=new ArrayList<>();
//获取调派记录
List<PowerTransferCompanyZHDto> listPowerTransferCompanyZHDto=powerTransferCompanyMapper.listPowerTransferCompanyZHDto(id);
listPowerTransferCompanyZHDto.stream().forEach(PowerTransferCompanyZHDto->{
String content="";
if(PowerTransferCompanyZHDto.getIsDistributionAgencies()){
content="调派"+PowerTransferCompanyZHDto.getCompanyName()+"前往"+PowerTransferCompanyZHDto.getAddress();
}else{
content="调派"+PowerTransferCompanyZHDto.getCompanyName()+PowerTransferCompanyZHDto.getSubmissionContent()+"前往"+PowerTransferCompanyZHDto.getAddress();
}
InstructionsZHDto instruct = new InstructionsZHDto(PowerTransferCompanyZHDto.getSequenceNbr(),PowerTransferCompanyZHDto.getDispatchType(), PowerTransferCompanyZHDto.getRecDate(), content);
listInstructionsZHDto.add(instruct);
});
//获取融合调度信息
List<AlertSubmittedZHDto> listAlertSubmittedZHDto= alertSubmittedMapper.listAlertSubmittedZHDto(id);
listAlertSubmittedZHDto.stream().forEach(AlertSubmittedZHDto->{
JSONObject js= JSONObject.parseObject(AlertSubmittedZHDto.getSubmissionContent());
String content="";
switch(AlertSubmittedZHDto.getBusinessType()){
case "警情初报":
content="通知"+AlertSubmittedZHDto.getUserName()+","+js.getString("address")+"发生"+js.getString("alertType");
break;
case "警情续报":
content="通知"+AlertSubmittedZHDto.getUserName()+","+"现场被困人数:"+js.getString("trappedNum")+"人伤亡人数:"+js.getString("casualtiesNum")+"人。";
break;
case "非警情确认":
content="通知"+AlertSubmittedZHDto.getUserName()+","+"此警情现场确认为假警情。";
break;
case "警情结案":
content="通知"+AlertSubmittedZHDto.getUserName()+","+"此警情已完场警情处置,警情已结案。";
break;
default:
break;
}
InstructionsZHDto instruct = new InstructionsZHDto(AlertSubmittedZHDto.getSequenceNbr(),AlertSubmittedZHDto.getBusinessType(), AlertSubmittedZHDto.getSubmissionTime(), content);
listInstructionsZHDto.add(instruct);
});
//排序时间倒序
List<InstructionsZHDto> listA=listInstructionsZHDto.stream().sorted(Comparator.comparing(InstructionsZHDto::getSubmissionTime).reversed()).collect(Collectors.toList());
return listA;
}
/**
* 将Object对象里面的属性和值转化成Map对象
*
......
......@@ -5,6 +5,7 @@ import com.google.common.collect.Lists;
import com.yeejoin.amos.boot.biz.common.utils.MenuFrom;
import com.yeejoin.amos.boot.biz.common.utils.TreeParser;
import com.yeejoin.amos.boot.module.common.api.dto.WaterResourceDto;
import com.yeejoin.amos.boot.module.common.api.dto.WaterResourceTypeDto;
import com.yeejoin.amos.boot.module.common.biz.service.impl.WaterResourceServiceImpl;
import com.yeejoin.amos.boot.module.jcs.api.dto.FireSystemDto;
import com.yeejoin.amos.boot.module.jcs.api.feign.EquipFeignClient;
......@@ -86,7 +87,7 @@ public class EquipmentServiceImpl {
MenuFrom fireSystem = new MenuFrom("-1", "其他系统", "0", "0");
fireSystemDtoList.add(fireSystem);
// 获取消防水源类型列表,包含消防系统和消防水源类型,去重
List<WaterResourceDto> waterResourceTypeList = waterResourceServiceImpl.getWaterResourceTypeList();
List<WaterResourceTypeDto> waterResourceTypeList = waterResourceServiceImpl.getWaterResourceTypeList(true);
// 组装消防水资源树
fireSystemDtoList.forEach(item -> {
......
......@@ -18,5 +18,6 @@
<module>amos-boot-module-jcs-biz</module>
<!--<module>amos-boot-module-demo-biz</module>-->
<module>amos-boot-module-common-biz</module>
<module>amos-boot-module-command-biz</module>
</modules>
</project>
\ No newline at end of file
......@@ -52,7 +52,12 @@
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.1.2</version>
</dependency> -->
<!--增加MongoDB-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
......
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