chore(build): 可视化大屏-消防点位设备列表

dev_visual_page
zhaokai 2026-07-17 16:21:10 +08:00
parent 580c685611
commit c5f62269f2
18 changed files with 175 additions and 11 deletions

View File

@ -1,4 +1,4 @@
<!doctype html><html lang="zh"><head data-built-info="@cqsjjb/scripts@2.0.0-alpha-1 Env/production (2026/6/15 17:02:37) App/fireCheck"><meta charset="UTF-8"/><meta name="renderer" content="webkit"/><meta http-equiv="X-UA-Compatible" content="IE=edge,Chrome=1"/><meta name="viewport" content="width=device-width,minimum-scale=1,maximum-scale=1,user-scalable=no,viewport-fit=cover"><title>秦港安全监管平台</title><script>(function () {
<!doctype html><html lang="zh"><head data-built-info="@cqsjjb/scripts@2.0.0-alpha-1 Env/production (2026/7/17 15:33:41) App/fireCheck"><meta charset="UTF-8"/><meta name="renderer" content="webkit"/><meta http-equiv="X-UA-Compatible" content="IE=edge,Chrome=1"/><meta name="viewport" content="width=device-width,minimum-scale=1,maximum-scale=1,user-scalable=no,viewport-fit=cover"><title>秦港安全监管平台</title><script>(function () {
const APP_ENV = {
antd: {
'ant-prefix': 'micro-temp',
@ -20,4 +20,4 @@
redirect: '',
FRAMEWORK: APP_ENV.antd
};
})();</script><script defer="defer" src="/fireCheck/static/js/201.a64808ef21f0f31301fd.js"></script><script defer="defer" src="/fireCheck/static/js/514.df5c4abca1ad6efc80a4.js"></script><script defer="defer" src="/fireCheck/static/js/main.8fead917278fdc3194ac.js"></script><link href="/fireCheck/static/css/main.4351c3e506121e95b980.css" rel="stylesheet"></head><body><noscript>此网页需要开启JavaScript功能。</noscript><div id="root" style="width: 100%; height: 100%; position: relative;overflow-y: auto"></div><script type="text/javascript">/* @cqsjjb/script 输出当前应用基本信息、构建时间 */console.log("%c@cqsjjb/scripts@2.0.0-alpha-1 Env/production (2026/6/15 17:02:37) App/fireCheck Version/main Java/<branch-name>", "color: #1890ff; border-radius: 2px; padding: 0 4px; border: 1px solid #1890ff; background: #f9fcff")</script></body></html>
})();</script><script defer="defer" src="/fireCheck/static/js/201.9d4d48ed85dbd20c30f6.js"></script><script defer="defer" src="/fireCheck/static/js/514.cbbdb1f566e234e3ebed.js"></script><script defer="defer" src="/fireCheck/static/js/main.8fead917278fdc3194ac.js"></script><link href="/fireCheck/static/css/main.4351c3e506121e95b980.css" rel="stylesheet"></head><body><noscript>此网页需要开启JavaScript功能。</noscript><div id="root" style="width: 100%; height: 100%; position: relative;overflow-y: auto"></div><script type="text/javascript">/* @cqsjjb/script 输出当前应用基本信息、构建时间 */console.log("%c@cqsjjb/scripts@2.0.0-alpha-1 Env/production (2026/7/17 15:33:41) App/fireCheck Version/main Java/<branch-name>", "color: #1890ff; border-radius: 2px; padding: 0 4px; border: 1px solid #1890ff; background: #f9fcff")</script></body></html>

View File

@ -1 +1 @@
module.exports={javaGit:"<git-url>",javaGitName:"<git-name>",environment:{development:{javaGitBranch:"<branch-name>",API_HOST:"https://gbs-gateway.qhdsafety.com"},production:{javaGitBranch:"<branch-name>",API_HOST:""}},appIdentifier:"fireCheck",contextInject:{appKey:"",fileUrl:"https://jpfz.qhdsafety.com/gbsFileTest/"},windowInject:{title:"微应用模板",links:[],element:{root:{id:"root"}},scripts:[]},server:{port:"8088",host:"127.0.0.1",open:!0},framework:{antd:{"ant-prefix":"micro-temp",fontFamily:"PingFangSC-Regular",colorPrimary:"#1677ff",borderRadius:2}},webpackConfig:{htmlWebpackPluginOption:{inject:!0}}};
module.exports={javaGit:"<git-url>",javaGitName:"<git-name>",environment:{development:{javaGitBranch:"<branch-name>",API_HOST:"https://gbs-gateway.qhdsafety.com"},production:{javaGitBranch:"<branch-name>",API_HOST:""}},appIdentifier:"fireCheck",contextInject:{appKey:"",fileUrl:""},windowInject:{title:"微应用模板",links:[],element:{root:{id:"root"}},scripts:[]},server:{port:"8088",host:"127.0.0.1",open:!0},framework:{antd:{"ant-prefix":"micro-temp",fontFamily:"PingFangSC-Regular",colorPrimary:"#1677ff",borderRadius:2}},webpackConfig:{htmlWebpackPluginOption:{inject:!0}}};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -5,11 +5,10 @@ import com.alibaba.cola.dto.MultiResponse;
import com.alibaba.cola.dto.PageResponse;
import com.alibaba.cola.dto.Response;
import com.alibaba.cola.dto.SingleResponse;
import com.jjb.saas.framework.auth.model.SSOUser;
import com.jjb.saas.framework.auth.utils.AuthContext;
import com.zcloud.fire.check.api.FirePointServiceI;
import com.zcloud.fire.check.dto.*;
import com.zcloud.fire.check.dto.clientobject.FirePointCO;
import com.zcloud.fire.check.dto.clientobject.FirePointDeviceCO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
@ -18,7 +17,6 @@ import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
/**
* web-adapter
@ -52,6 +50,8 @@ public class FirePointController {
return firePointService.listPage(qry);
}
@ApiOperation("根据消防区域获取消防点位所有")
@GetMapping("/listByFireRegionId/{fireRegionId}")
public MultiResponse<FirePointCO> listByFireRegionId(@PathVariable("fireRegionId") String fireRegionId) {
@ -96,5 +96,10 @@ public class FirePointController {
firePointService.exportFirePointPage(ids,httpServletResponse);
}
@ApiOperation("可视化大屏-消防点位设备列表")
@PostMapping("/deviceList")
public PageResponse<FirePointDeviceCO> deviceList(@RequestBody FirePointDeviceQry qry) {
return firePointService.listDevice(qry);
}
}

View File

@ -1,16 +1,20 @@
package com.zcloud.fire.check.command.query;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.json.JSONUtil;
import com.alibaba.cola.dto.MultiResponse;
import com.alibaba.cola.dto.PageResponse;
import com.alibaba.nacos.api.config.annotation.NacosValue;
import com.zcloud.fire.check.command.convertor.FirePointCoConvertor;
import com.zcloud.fire.check.domain.enums.CorpTypeEnum;
import com.zcloud.fire.check.domain.config.PointConfig;
import com.zcloud.fire.check.domain.model.FirePointE;
import com.zcloud.fire.check.dto.FirePointDeviceQry;
import com.zcloud.fire.check.dto.FirePointPageQry;
import com.zcloud.fire.check.dto.clientobject.FirePointCO;
import com.zcloud.fire.check.dto.clientobject.FireRegionCO;
import com.zcloud.fire.check.dto.clientobject.FirePointDeviceCO;
import com.zcloud.fire.check.persistence.dataobject.FirePointDeviceCountDO;
import com.zcloud.fire.check.persistence.dataobject.FirePointDO;
import com.zcloud.fire.check.persistence.repository.FireCheckRecordPointRepository;
import com.zcloud.fire.check.persistence.repository.FireDeviceRepository;
@ -129,5 +133,26 @@ public class FirePointQueryExe {
List<FirePointCO> examCenterCOS = firePointCoConvertor.converDOsToCOs(pageResponse);
return MultiResponse.of(examCenterCOS);
}
public PageResponse<FirePointDeviceCO> listDevice(FirePointDeviceQry qry) {
Map<String, Object> params = PageQueryHelper.toHashMap(qry);
if (ObjectUtil.isNotEmpty(params.get("enterpriseType"))) {
List<Integer> enterpriseType = CorpTypeEnum.getCodesByEnterpriseType((Integer) params.get("enterpriseType"));
if (CollUtil.isNotEmpty(enterpriseType)) {
params.put("type", enterpriseType);
}
}
List<Integer> inType = (List<Integer>) params.get("inType");
if (CollUtil.isNotEmpty(inType)) {
params.put("type", inType);
}
PageResponse<FirePointDeviceCountDO> pageResponse = firePointRepository.listDevice(params);
List<FirePointDeviceCO> list = pageResponse.getData().stream().map(item -> {
FirePointDeviceCO co = new FirePointDeviceCO();
BeanUtils.copyProperties(item, co);
return co;
}).collect(Collectors.toList());
return PageResponse.of(list, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
}
}

View File

@ -9,10 +9,12 @@ import com.zcloud.fire.check.command.FirePointRemoveExe;
import com.zcloud.fire.check.command.FirePointUpdateExe;
import com.zcloud.fire.check.command.query.FirePointQueryExe;
import com.zcloud.fire.check.dto.FirePointAddCmd;
import com.zcloud.fire.check.dto.FirePointDeviceQry;
import com.zcloud.fire.check.dto.FirePointPageQry;
import com.zcloud.fire.check.dto.FirePointUpdateCmd;
import com.zcloud.fire.check.dto.FirePointUpdateDepartmentCmd;
import com.zcloud.fire.check.dto.clientobject.FirePointCO;
import com.zcloud.fire.check.dto.clientobject.FirePointDeviceCO;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
@ -79,5 +81,10 @@ public class FirePointServiceImpl implements FirePointServiceI {
return firePointQueryExe.listByFireRegionId(fireRegionId);
}
@Override
public PageResponse<FirePointDeviceCO> listDevice(FirePointDeviceQry qry) {
return firePointQueryExe.listDevice(qry);
}
}

View File

@ -4,10 +4,12 @@ import com.alibaba.cola.dto.MultiResponse;
import com.alibaba.cola.dto.PageResponse;
import com.alibaba.cola.dto.SingleResponse;
import com.zcloud.fire.check.dto.FirePointAddCmd;
import com.zcloud.fire.check.dto.FirePointDeviceQry;
import com.zcloud.fire.check.dto.FirePointPageQry;
import com.zcloud.fire.check.dto.FirePointUpdateCmd;
import com.zcloud.fire.check.dto.FirePointUpdateDepartmentCmd;
import com.zcloud.fire.check.dto.clientobject.FirePointCO;
import com.zcloud.fire.check.dto.clientobject.FirePointDeviceCO;
import javax.servlet.http.HttpServletResponse;
@ -35,5 +37,7 @@ public interface FirePointServiceI {
void exportFirePointPage(Long[] ids, HttpServletResponse httpServletResponse);
MultiResponse<FirePointCO> listByFireRegionId(String fireRegionId);
PageResponse<FirePointDeviceCO> listDevice(FirePointDeviceQry qry);
}

View File

@ -0,0 +1,29 @@
package com.zcloud.fire.check.dto;
import com.alibaba.cola.dto.PageQuery;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
*
*/
@Data
public class FirePointDeviceQry extends PageQuery {
@ApiModelProperty(value = "企业id", name = "corpinfoId")
private Long corpinfoId;
@ApiModelProperty(value = "消防设备类型", name = "fireDeviceType")
private String fireDeviceType;
@ApiModelProperty(value = "关键字", name = "vagueKey")
private String vagueKey;
@ApiModelProperty(value = "企业类型列表", name = "inType")
private List<Integer> inType;
@ApiModelProperty(value = "企业类型1监管 2企业 3相关方", name = "enterpriseType")
private Integer enterpriseType;
}

View File

@ -0,0 +1,27 @@
package com.zcloud.fire.check.dto.clientobject;
import com.alibaba.cola.dto.ClientObject;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
*
*/
@Data
public class FirePointDeviceCO extends ClientObject {
@ApiModelProperty(value = "消防点位id")
private String firePointId;
@ApiModelProperty(value = "消防点位")
private String firePointName;
@ApiModelProperty(value = "消防设备类型")
private String fireDeviceType;
@ApiModelProperty(value = "消防设备类型名称")
private String fireDeviceTypeName;
@ApiModelProperty(value = "数量")
private Long deviceCount;
}

View File

@ -0,0 +1,20 @@
package com.zcloud.fire.check.persistence.dataobject;
import lombok.Data;
/**
*
*/
@Data
public class FirePointDeviceCountDO {
private String firePointId;
private String firePointName;
private String fireDeviceType;
private String fireDeviceTypeName;
private Long deviceCount;
}

View File

@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jjb.saas.framework.datascope.annotation.DataScope;
import com.jjb.saas.framework.datascope.annotation.DataScopes;
import com.zcloud.fire.check.persistence.dataobject.DataStatisticDO;
import com.zcloud.fire.check.persistence.dataobject.FirePointDeviceCountDO;
import com.zcloud.fire.check.persistence.dataobject.FirePointDO;
import com.zcloud.fire.check.persistence.dataobject.FirePointStatisticDO;
import org.apache.ibatis.annotations.Mapper;
@ -35,5 +36,7 @@ public interface FirePointMapper extends BaseMapper<FirePointDO> {
List<DataStatisticDO> countByCorpinfoIds(List<Long> corpinfoIds);
Long getFirePointCount(Map<String, Object> params);
IPage<FirePointDeviceCountDO> listDevice(IPage<FirePointDeviceCountDO> iPage, Map<String, Object> params);
}

View File

@ -3,6 +3,7 @@ package com.zcloud.fire.check.persistence.repository;
import com.alibaba.cola.dto.PageResponse;
import com.jjb.saas.framework.repository.repo.BaseRepository;
import com.zcloud.fire.check.persistence.dataobject.DataStatisticDO;
import com.zcloud.fire.check.persistence.dataobject.FirePointDeviceCountDO;
import com.zcloud.fire.check.persistence.dataobject.FirePointDO;
import javax.validation.constraints.NotEmpty;
@ -40,5 +41,6 @@ public interface FirePointRepository extends BaseRepository<FirePointDO> {
List<DataStatisticDO> countByCorpinfoIds(List<Long> corpinfoIds);
FirePointDO getInfoByCode(@NotEmpty(message = "消防点位编码不能为空") String firePointCode);
PageResponse<FirePointDeviceCountDO> listDevice(Map<String, Object> params);
}

View File

@ -11,6 +11,7 @@ import com.zcloud.fire.check.domain.enums.FireRegionStateEnum;
import com.zcloud.fire.check.domain.enums.MenuEnum;
import com.zcloud.fire.check.domain.enums.UserTypeEnum;
import com.zcloud.fire.check.persistence.dataobject.DataStatisticDO;
import com.zcloud.fire.check.persistence.dataobject.FirePointDeviceCountDO;
import com.zcloud.fire.check.persistence.dataobject.FirePointDO;
import com.zcloud.fire.check.persistence.dataobject.FirePointStatisticDO;
import com.zcloud.fire.check.persistence.dataobject.FireRegionDO;
@ -136,5 +137,12 @@ public class FirePointRepositoryImpl extends BaseRepositoryImpl<FirePointMapper,
public List<DataStatisticDO> countByCorpinfoIds(List<Long> corpinfoIds) {
return firePointMapper.countByCorpinfoIds(corpinfoIds);
}
@Override
public PageResponse<FirePointDeviceCountDO> listDevice(Map<String, Object> params) {
IPage<FirePointDeviceCountDO> iPage = new Query<FirePointDeviceCountDO>().getPage(params);
IPage<FirePointDeviceCountDO> result = firePointMapper.listDevice(iPage, params);
return PageHelper.pageToResponse(result, result.getRecords());
}
}

View File

@ -101,5 +101,39 @@
and c.use_flag = 1
and p.delete_enum = 'FALSE'
</select>
<select id="listDevice" resultType="com.zcloud.fire.check.persistence.dataobject.FirePointDeviceCountDO">
select
p.fire_point_id as firePointId,
p.fire_point_name as firePointName,
d.fire_device_type as fireDeviceType,
d.fire_device_type_name as fireDeviceTypeName,
count(d.fire_device_id) as deviceCount
from fire_point p
inner join fire_device d on d.fire_point_id = p.fire_point_id and d.delete_enum = 'FALSE'
left join corp_info c on p.corpinfo_id = c.id and c.delete_enum = 'FALSE'
where p.delete_enum = 'FALSE'
<if test="params.corpinfoId != null">
and p.corpinfo_id = #{params.corpinfoId}
</if>
<if test="params.fireDeviceType != null and params.fireDeviceType != ''">
and d.fire_device_type = #{params.fireDeviceType}
</if>
<if test="params.vagueKey != null and params.vagueKey != ''">
and (
p.fire_point_name like concat('%', #{params.vagueKey}, '%')
or p.fire_point_code like concat('%', #{params.vagueKey}, '%')
or d.fire_device_code like concat('%', #{params.vagueKey}, '%')
or d.fire_device_type_name like concat('%', #{params.vagueKey}, '%')
)
</if>
<if test="params.type != null and !params.type.isEmpty()">
and c.type in
<foreach collection="params.type" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
group by p.fire_point_id, p.fire_point_name, d.fire_device_type, d.fire_device_type_name
order by p.fire_point_name asc, d.fire_device_type_name asc
</select>
</mapper>