dify资料以及接口

This commit is contained in:
pengjie 2025-03-21 11:21:39 +08:00
parent a76a022cfd
commit 37539074a4
14 changed files with 1221 additions and 29 deletions

22
pom.xml
View File

@ -366,17 +366,23 @@
<dependency>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi-base</artifactId>
<version>4.0.0</version>
<version>4.4.0</version>
</dependency>
<dependency>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi-annotation</artifactId>
<version>4.0.0</version>
<version>4.4.0</version>
</dependency>
<dependency>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi-web</artifactId>
<version>4.0.0</version>
<version>4.4.0</version>
</dependency>
<!--注意:word中要使用循环等标签必须单独导入以下依赖-->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>ooxml-schemas</artifactId>
<version>1.4</version>
</dependency>
<dependency>
@ -987,7 +993,7 @@
&lt;!&ndash;<excludeClass>CustomClassLoader;WisdomSiteApplication;LicenseUtil;MyBootJarLauncher;MyJarClassLoader</excludeClass>&ndash;&gt;
</configuration>
</plugin>-->
<plugin>
<!--<plugin>
<groupId>net.roseboy</groupId>
<artifactId>classfinal-maven-plugin</artifactId>
<version>1.2.1</version>
@ -1000,10 +1006,10 @@
<excludes>org.spring</excludes>
<libjars>wflow-server-1.0-SNAPSHOT.jar</libjars>
<code>
<!--鞍钢-->
&lt;!&ndash;鞍钢&ndash;&gt;
B67960E5E329F6DD23AFFA354E12732BD41D8CD98F00B204E9800998ECF8427ED41D8CD98F00B204E9800998ECF8427E
<!--中科安信-->
<!--A6F449ECD7E1024F703F37F2294AC8F2D41D8CD98F00B204E9800998ECF8427ED41D8CD98F00B204E9800998ECF8427E-->
&lt;!&ndash;中科安信&ndash;&gt;
&lt;!&ndash;A6F449ECD7E1024F703F37F2294AC8F2D41D8CD98F00B204E9800998ECF8427ED41D8CD98F00B204E9800998ECF8427E&ndash;&gt;
</code>
</configuration>
<executions>
@ -1014,7 +1020,7 @@
</goals>
</execution>
</executions>
</plugin>
</plugin>-->
</plugins>
<resources>
<resource>

View File

@ -0,0 +1,169 @@
package com.zhgd.xmgl.modules.basicdata.controller;
import cn.hutool.http.HttpUtil;
import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhgd.jeecg.common.api.vo.Result;
import com.zhgd.xmgl.modules.project.entity.ProjectExtend;
import com.zhgd.xmgl.modules.project.entity.vo.ProjectInfoExtVo;
import com.zhgd.xmgl.modules.project.service.IProjectExtendService;
import com.zhgd.xmgl.modules.project.service.IProjectService;
import com.zhgd.xmgl.util.PageUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.MapUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.util.*;
/**
* @program: wisdomSite
* @description: dift接口
* @author: Mr.Peng
* @create: 2020-12-21 09:33
**/
@RestController
@RequestMapping("/xmgl/modelDify")
@Slf4j
@Api(tags = "dify对话接口")
public class ModuleTalkController {
@Resource
private IProjectExtendService projectExtendService;
@ApiOperation(value = "发起对话", notes = "对话", httpMethod = "POST")
@ApiImplicitParams({
@ApiImplicitParam(name = "chatId", value = "对话ID(新对话无需传)", dataType = "String"),
@ApiImplicitParam(name = "content", value = "对话内容", required = true, dataType = "String"),
@ApiImplicitParam(name = "projectSn", value = "项目SN", required = true, dataType = "String")
})
@PostMapping(value = "/chat")
public Result<String> chat(@RequestBody @ApiIgnore Map<String, Object> map) {
ProjectExtend config = getConfig(map);
String url = "https://cloud.fastgpt.cn/api/v1/chat/completions";
String chatId = MapUtils.getString(map, "chatId");
String content = MapUtils.getString(map, "content");
if (StringUtils.isBlank(chatId)) {
chatId = UUID.randomUUID().toString().replace("-", "").toUpperCase();
}
Map<String, Object> param = new HashMap<>(16);
Map<String, Object> message = new HashMap<>(16);
message.put("role", "user");
message.put("content", content);
List<Map<String, Object>> messages = new ArrayList<>();
messages.add(message);
param.put("chatId", chatId);
param.put("stream", false);
param.put("detail", false);
param.put("messages", messages);
String body = JSONUtil.toJsonStr(param);
String post = HttpUtil.createPost(url)
.addHeaders(buildHeader(config.getModelKey())).body(body).timeout(5000).execute().body();
return Result.success(post);
}
@ApiOperation(value = "对话列表", notes = "查询对话列表", httpMethod = "POST")
@ApiImplicitParams({
@ApiImplicitParam(name = "pageNo", value = "偏移量,即从第几条数据开始取", paramType = "query", required = true, dataType = "Integer"),
@ApiImplicitParam(name = "pageSize", value = "记录数量", paramType = "query", required = true, dataType = "Integer"),
@ApiImplicitParam(name = "projectSn", value = "项目SN", required = true, dataType = "String")
})
@PostMapping(value = "/chatList")
public Result<String> chatList(@RequestBody @ApiIgnore Map<String, Object> map) {
ProjectExtend config = getConfig(map);
String url = "https://cloud.fastgpt.cn/api/core/chat/getHistories";
Page page = PageUtil.getPage(map);
Map<String, Object> param = new HashMap<>(16);
param.put("appId", config.getModelUrl());
param.put("offset", page.getCurrent());
param.put("pageSize", page.getSize());
param.put("source", "api");
String body = JSONUtil.toJsonStr(param);
String post = HttpUtil.createPost(url)
.addHeaders(buildHeader(config.getModelKey())).body(body).timeout(5000).execute().body();
return Result.success(post);
}
@ApiOperation(value = "对话列表", notes = "修改对话标题", httpMethod = "POST")
@ApiImplicitParams({
@ApiImplicitParam(name = "chatId", value = "对话ID", paramType = "query", required = true, dataType = "String"),
@ApiImplicitParam(name = "customTitle", value = "对话标题", paramType = "query", required = true, dataType = "String"),
@ApiImplicitParam(name = "projectSn", value = "项目SN", required = true, dataType = "String")
})
@PostMapping(value = "/updateChatTitle")
public Result<String> updateChatTitle(@RequestBody @ApiIgnore Map<String, Object> map) {
ProjectExtend config = getConfig(map);
String url = "https://cloud.fastgpt.cn/api/core/chat/updateHistory";
Map<String, Object> param = new HashMap<>(16);
param.put("appId", config.getModelUrl());
param.put("chatId", MapUtils.getString(map, "chatId"));
param.put("customTitle", MapUtils.getString(map, "customTitle"));
String body = JSONUtil.toJsonStr(param);
String post = HttpUtil.createPost(url)
.addHeaders(buildHeader(config.getModelKey())).body(body).timeout(5000).execute().body();
return Result.success(post);
}
@ApiOperation(value = "对话列表", notes = "置顶/取消置顶对话", httpMethod = "POST")
@ApiImplicitParams({
@ApiImplicitParam(name = "chatId", value = "对话ID", paramType = "query", required = true, dataType = "String"),
@ApiImplicitParam(name = "top", value = "true/false", paramType = "query", required = true, dataType = "Boolean"),
@ApiImplicitParam(name = "projectSn", value = "项目SN", required = true, dataType = "String")
})
@PostMapping(value = "/chatTop")
public Result<String> chatTop(@RequestBody @ApiIgnore Map<String, Object> map) {
ProjectExtend config = getConfig(map);
String url = "https://cloud.fastgpt.cn/api/core/chat/updateHistory";
Map<String, Object> param = new HashMap<>(16);
param.put("appId", config.getModelUrl());
param.put("chatId", MapUtils.getString(map, "chatId"));
param.put("top", MapUtils.getString(map, "top"));
String body = JSONUtil.toJsonStr(param);
String post = HttpUtil.createPost(url)
.addHeaders(buildHeader(config.getModelKey())).body(body).timeout(5000).execute().body();
return Result.success(post);
}
@ApiOperation(value = "对话内容列表", notes = "查询对话内容", httpMethod = "POST")
@ApiImplicitParams({
@ApiImplicitParam(name = "pageNo", value = "偏移量,即从第几条数据开始取", paramType = "query", required = true, dataType = "Integer"),
@ApiImplicitParam(name = "pageSize", value = "记录数量", paramType = "query", required = true, dataType = "Integer"),
@ApiImplicitParam(name = "chatId", value = "对话ID", paramType = "query", required = true, dataType = "String"),
@ApiImplicitParam(name = "projectSn", value = "项目SN", required = true, dataType = "String")
})
@PostMapping(value = "/chatContentList")
public Result<String> chatContentList(@RequestBody @ApiIgnore Map<String, Object> map) {
ProjectExtend config = getConfig(map);
String url = "https://cloud.fastgpt.cn/api/core/chat/getPaginationRecords";
Page page = PageUtil.getPage(map);
Map<String, Object> param = new HashMap<>(16);
param.put("appId", config.getModelUrl());
param.put("offset", page.getCurrent());
param.put("pageSize", page.getSize());
param.put("chatId", MapUtils.getString(map, "chatId"));
String body = JSONUtil.toJsonStr(param);
String post = HttpUtil.createPost(url)
.addHeaders(buildHeader(config.getModelKey())).body(body).timeout(5000).execute().body();
return Result.success(post);
}
private ProjectExtend getConfig(Map<String, Object> map) {
String projectSn = MapUtils.getString(map, "projectSn");
ProjectExtend projectExtend = projectExtendService.getOne(Wrappers.<ProjectExtend>lambdaQuery().eq(ProjectExtend::getProjectSn, projectSn));
return projectExtend;
}
private Map<String, String> buildHeader(String apiKey) {
Map<String, String> header = new HashMap<>();
header.put("Authorization", "Bearer " + apiKey);
return header;
}
}

View File

@ -196,17 +196,6 @@ public class CarPassRecordController {
map.put("closeup_pic", closeupPic);
map.put("type", type);
log.info("saveCarPassRecord{}", JSON.toJSONString(map));
if (EnvironmentUtil.getActiveEnvironment().equals("baise") && Objects.equals(parkId, "F20D19C31C5140C585185BAB10E8D9A2")) {
CompletableFuture.runAsync(() -> {
//木垒转发
String result2 = HttpRequest.post(PathUtil.getMlTranspondUrl() + "/xmgl/carPassRecord/saveCarPassRecord")
.form(map)
.timeout(2000)//超时毫秒
.execute().body();
log.info("木垒转发车牌识别结果:{}", result2);
});
}
Map<String, Object> data = new HashMap<>(16);
String online = "online";
String offline = "offline";

View File

@ -187,16 +187,16 @@ public class AiAnalyseHardWareAlarmRecordServiceImpl extends ServiceImpl<AiAnaly
public void saveAiAnalyseHardWareAlarmRecord(JSONObject body) {
log.info("调用AiAnalyseHardWareAlarmRecordServiceImpl#saveAiAnalyseHardWareAlarmRecord方法参数为{}", body);
// 木垒转发到县平台
if (EnvironmentUtil.getActiveEnvironment().equals("baise")) {
CompletableFuture.runAsync(() -> {
//木垒转发
String result2 = HttpRequest.post(PathUtil.getMlTranspondUrl() + "/xmgl/api/saveHardWareAlarm")
.body(JSON.toJSONString(body))
.timeout(2000)//超时毫秒
.execute().body();
log.info("木垒AI预警转发结果{}", result2);
});
}
// if (EnvironmentUtil.getActiveEnvironment().equals("baise")) {
// CompletableFuture.runAsync(() -> {
// //木垒转发
// String result2 = HttpRequest.post(PathUtil.getMlTranspondUrl() + "/xmgl/api/saveHardWareAlarm")
// .body(JSON.toJSONString(body))
// .timeout(2000)//超时毫秒
// .execute().body();
// log.info("木垒AI预警转发结果{}", result2);
// });
// }
QueryWrapper<AiAnalyseHardWareRecord> queryWrapper = new QueryWrapper<>();
queryWrapper.lambda().eq(AiAnalyseHardWareRecord::getHardwareId, body.getString("hardwareId"));
AiAnalyseHardWareRecord aiAnalyseHardWareRecord = aiAnalyseHardWareRecordMapper.selectOne(queryWrapper);

View File

@ -428,6 +428,7 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
.antMatchers("/xmgl/workerAttendance/viewDayAttendanceList").permitAll()
.antMatchers("/xmgl/workerAttendanceRule/queryById").permitAll()
.antMatchers("/xmgl/tunnelBoringMachineCurrentData/add").permitAll()
.antMatchers("/xmgl/modelDownload/**").permitAll()
.antMatchers(HttpMethod.OPTIONS, "/**").anonymous()
.anyRequest().authenticated() // 剩下所有的验证都需要验证.
.and()

View File

@ -0,0 +1,76 @@
{{projectName}}数据汇总
AI预警管理
AI预警设备管理
设备名称
设备编号
{{fe:$aiDev t.hardwareName
t.hardwareId}}
扣分规则:
AI预警类型
扣分分值
{{fe:$ruleList t.typeName
t.deductScore
}}
待管理员处置的AI违章
AI预警类型
总数量(条数)
{{fe:$list1 t.name
t.count
}}
待管理员处置的AI违章记录
AI预警类型
违章区域
抓拍时间
{{fe:$list2 t.alarmTypeName
t.qualityRegionName
t.createTime
}}
各个区域下面待处置的AI违章抓拍统计
区域名称
数量(条数)
{{fe:$list3 t.name
t.count
}}
管理员已处置的AI违章
AI预警类型
总数量(条数)
{{fe:$list4 t.name
t.count
}}
管理员已处置的AI违章记录
AI预警类型
违章区域
抓拍时间
扣分分值
违章人员
{{fe:$list5 t.alarmTypeName
t.qualityRegionName
t.createTime
t.deductScore
t.worker_info_str
}}
各个区域下面已处置的AI违章抓拍统计
区域名称
数量(条数)
{{fe:$list6 t.name
t.count
}}

View File

@ -0,0 +1,154 @@
{{projectName}}数据汇总
2、合作单位承包商总数量{{total}}个
专业分包:{{total}}个
设备分包:{{total}}个
材料分包:{{total}}个
后勤服务:{{enterpriseType4}}个
特殊设备:{{enterpriseType5}}个
劳务分包:{{enterpriseType6}}个
监理单位:{{enterpriseType7}}个
建设单位:{{enterpriseType8}}个
总承包单位:{{enterpriseType9}}个
勘查单位:{{enterpriseType10}}个
设计单位:{{enterpriseType11}}个
其它:{{enterpriseType12}}个
承包商信息:
企业名称
企业类型
法定代表人
开户行
统一社会信用代码
注册人申请电话
注册资金(万元)
法人电话
银行账号
营业执照截止日期
营业执照注册号
企业邮箱
企业地址
劳资证书号
安全生产许可证
单位性质
项目负责人
项目负责人电话
{{fe:$enterpriseList t.enterpriseName
t.enterpriseTypeName
t.enterpriseLegalPerson
t.bankname
t.socialCode
t.registerPersonPhoneTel
t.registeredCapital
t.legalPersonTel
t.bankcardnumber
t.businessLicenseEndDate
t.businessNumber
t.enterpriseEmail
t.enterpriseAddress
t.qualificationNumber
t.enterpriseSafeAllow
t.enterpriseProperty
t.projectDirectorName
t.projectDirectorPhone
}}
承包商项目信息:
承包商名称
承包项目名称
项目施工区域
项目经理
项目类型
项目编号
施工阶段
经度位置
纬度位置
工程类别
结构类型
项目面积(m²)
工程状态
开工日期
竣工日期
联系电话
{{fe:$supplierList
t.enterpriseName
t.cbsName
t.projectBuildArea
t.projectManage
t.projectTypeName
t.projectNumber
t.constructionStageName
t.longitude
t.latitude
t.projectTypeName
t.structureTypeName
t.projectAcreage
t.bulidStatusName
t.startWorkDate
t.completionDate
t.projectTel}}
5、承包商的企业资质
承包商名称
资质类型
资质文件编号
资质文件名称
{{fe:$qualificationList
t.enterpriseName
t.qualificationTypeName
t.fileNumber
t.fileName}}
6、承包商的不良记录
承包商名称
发生时间
发生事项
发生原因
{{fe:$badRecord
t.enterpriseName
t.ariseTime
t.ariseMatter
t.ariseReason}}

View File

@ -0,0 +1,465 @@
{{projectName}}数据汇总
1、系统权限
姓名
组织名称
角色
{{fe:$systemUser
t.realName
t.projectOrgName
t.roleName
}}
区域名称
责任单位
责任人
{{fe:$qualityRegions
t.regionName
t.enterpriseName
t.dutyUserName
}}
2、劳务人员管理系统
工种类型包含3个
工种名称
{{fe:$workerTypes
t.typeName}}
劳务管理设备数量5个
劳务管理出口设备数量5个
劳务管理入口设备数量5个
当前在册总人数1000人
当前在册管理人员总数500人
当前在册劳务人员总数500人
当前在册临时人员总数500人
当前出勤总人数1000人
当前出勤管理人员总数500人
当前出勤劳务人员总数500人
当前实时在场总人数1000人
当前工地实时在场管理人员总数500人
当前工地实时在场劳务人员总数500人
今日新入场人数60人
今日新入场管理人员总数500人
今日新入场劳务人员总数500人
今日新入场临时人员总数500人
今日新离职人数60人
今日新离职管理人员总数500人
今日新离职劳务人员总数500人
班组统计:
公司名称
班组名称
{{fe:$teamInfoList
t.enterpriseName
t.teamName
}}
部门统计:
公司名称
部门名称
{{fe:$departmentInfos
t.enterpriseName
t.departmentName
}}
人员基本信息:
(
$fe:workerList [workerName]
)
姓名
杨杰
性别
身份证号码
520221200303120466
开户行
银行卡号
登记日期
退场日期
班组
电工
工号
出生日期
民族
籍贯
发证机关
身份证有效日期
电话
紧急联系人
紧急联系人电话
进场日期
在职状态
婚姻状态
银行卡发卡行
学历
邮箱
人员性质
血型
政治面貌
考勤规则
人员定位标签号
人脸设备
当前安全评分分值
劳动合同:
姓名
劳动合同签订状态
已签订编号
签订合同类型
合同期限
合同开始日期
失效日期
工资核定方式
工资核定标准(单位:元)
{{fe:$workerContractList
t.workerName
t.signStateName
t.contractNumber
t.contractType
t.laboCcontractType
t.contractBeginDate
t.contractEndDate
t.wagesVerificationType
t.wagesVerificationStandard
}}
资格证书:
姓名
证书类型
证书编号
技能等级
发证日期
截止有效期
发证机关
备注
{{fe:$workerCertificates
t.workerName
t.certificateType
t.certificateNumber
t.skillLevel
t.issueTime
t.effectTime
t.issueCompany
t.remarks}}
体检信息:
姓名
人员身高(cm)
人员体重(kg)
血型
体检时间
状态
结论
{{fe:$workerPhysicals t.workerName
t.personHeight
t.personWeight
t.bloodType
t.physicalsTime
t.state
t.conclusion}}
工伤保险:
姓名
保险购买日期
保险到期日期
状态
险种
是否是城乡居民医疗保险
是否是城乡居民养老保险
{{fe:$workerInsurances
t.workerName
t.insuranceTime
t.expireTime
t.state
t.insuranceType
t.medicalInsurance
t.endowmentInsurance}}
安全教育:
姓名
培训日期
培训主题
考试分数
是否及格
{{fe:$trainRecordVos
t.workerName
t.date
t.subject
t.score
t.isPass}}
从业信息:
姓名
参与项目
进场日期
退场日期
工种
班组
杨杰
Xxx
2025-03-04
2025-03-04
Xxx
xxx
不良记录:
姓名
发生时间
事件/发生原因
奖项
备注
{{fe:$eventType1
t.workerName
t.eventTime
t.eventTitle / t.reason
t.awardName
t.remarks}}
奖励记录:
姓名
发生时间
事件/发生原因
严重程度
备注
{{fe:$eventType2
t.workerName
t.eventTime
t.eventTitle / t.reason
t.seriousGrade
t.remarks}}
安全分详情:
姓名
时间
原因
加/扣分值
当前安全评分分值
{{fe:$xzDeductScoreRecords
t.workerName
t.createDate
t.deductReason
t.deductScore
t.curScore
}}
考勤明细:
企业名称
所属班组/部门
人员类型
姓名
在职状态
进入/出
出入时间
进出位置
进出方式
佳信捷
电工
劳务人员
杨杰
在职
进入
2025-03-04 12:30:30
正门闸机1
人脸识别
人员出勤统计:
企业名称
总包/分包
人员类型
工地总人数
今日出勤人数
今日在场人数
企业出勤排名
今日未履职人数
今日项目经理未履职人数
今日安全员未履职人数
今日质量员未履职人数
今日监理未履职人数
佳信捷
总包
劳务人员
100
进入
2025-03-04 12:30:30
0
20
5
5
5
5
佳信捷2
分包
劳务人员
100
进入
2025-03-04 12:30:30
1
12
5
5
5
5
班组/部门出勤统计:
班组名称
在册人数
出勤人数
在场人数
电工
1
11
1
瓦工
1
1
2
安全培训管理:
培训日期
教育类型
培训主题
培训课时
培训人
人数
2025-03-04 12:30:30
入场安全教育
电工安全
12
xx
12
证书逾期预警列表:
人员类型
企业名称
班组、部门
姓名
证书类型
到期时间
预警提示时间
管理人员
佳信捷
电工
杨杰
电工证
2025-03-04 12:30:30
2025-03-04 12:30:30
处罚单:
单据类型
项目名称
编号
被罚款单位
违章性质
违章时间
罚款内容
罚款金额
创建时间
罚款单
尾矿固废资源综合利用项目
1231
中恒建设集团有限公司
Xx
2025-03-04 12:30:30
Xxxx
1111
2025-03-04 12:30:30
人员风险概览:
企业名称
低风险人员数量
中等风险数量
高风险数量
佳信捷
11
11
11
企业安全评分汇总表:
企业名称
企业安全评分分值
佳信捷
95
企业人员安全评分考核明细表:
企业名称
姓名
安全评分分值
人员加/扣分记录
佳信捷
杨杰
12
xxxxx
人脸设备管理:
设备名称
设备唯一标识
所属单位
是否是进场方向设备
是否是出场方向设备
111
1212
佳信捷
x

View File

@ -0,0 +1,274 @@
{{projectName}}数据汇总
车辆管理:
车辆黑白名单管理台账记录:
企业名称
车牌号
车种类型
司机姓名
司机电话
是否黑名单
车辆类型
预约时间
允许进出次数
{{fe:$carInfos
t.enterpriseName
t.carNumber
t.carTypeName
t.driverWorkerName
t.driverTelephone
t.isBackName
t.carModuleTypeName
t.reserveStartTime 至 t.reserveEndTime
t.entryAndExitPermitName}}
项目所含车种类型:
类型名称
轿车
{{fe:$carTypeList
t.carTypeName
}}
今日车辆出入记录统计:
今日总进场车次:{{innum}}
外来车辆进场车次:{{wlcInNum}}
固定车进场车次:{{gdcInNum}}
今日总出场车次:{{outnum}}
长期车进场车次:{{cqcInNum}}
临时车进场车次:{{lscInNum}}
车辆数量统计:
车辆类型
数量
占车辆数量之比
{{fe:$carModuleTypeList
t.name
t.num
t.ratio
}}
车种进出次数统计:
车种类型
进出方向
次数
{{fe:$carTypePass
t.carTypeName
t.type
t.num
}}
实时数据:
企业名称
司机姓名
车辆类型
车牌号
进出时间
进出标识
进出位置
进出场图片
全景图照片
{{fe:$passRecordList
t.enterpriseName
t.driverWorkerName
t.carModuleTypeName
t.carNumber
t.passTime
t.typeName
t.location
t.imageUrl
t.panoramaUrl
}}
安全管理:
安全检查隐患总数:{{totalNum}}
已闭合安全检查隐患总数:{{closeNum}}
未闭合安全检查隐患总数:{{notCloseNum}}
超期未关闭安全检查隐患总数:{{overdueNotCloseNum}}
待整改安全检查隐患总数:{{rectificationNum}}
待复查安全检查隐患总数:{{reviewNum}}
待核验安全检查隐患总数:{{verificationNum}}
安全检查结果
安全检查人
安全检查时间
安全检查部位
安全问题描述
补充说明
整改要求
问题等级
紧急程度
安全整改人
安全整改时限
安全复查人
安全核验人
安全检查类型
分包单位
现场整改是否已完成
安全隐患事件描述
安全隐患问题描述
{{fe:$passRecordList t.enterpriseName
t.inspectManName
t.inspectTime
t.regionName
t.dangerItemContent
t.dangerDesc
t.remark
t.level
t.urgentLevel
t.changeName
t.changeLimitTime
t.reviewName
t.verifyManName
安全问题
t.enterpriseName
未完成
t.addedDescription
t.problemDescription}}
安全整改检查记录:
安全风险分析:
安全管理记录总条数=安全隐患记录+排查记录
安全管理记录总条数:{{totalNum}}
安全隐患记录总条数:{{dangerNum}}
排查记录总条数:{{investigateNum}}
重大安全隐患总条数:{{greatFaultLevelNum}}
超期未闭合安全隐患总条数:{{overdueNotCloseNum}}
分包单位安全隐患统计:
企业名称
企业类型
安全隐患记录数量
{{fe:$quality t.enterpriseName
总包
t.totalNum}}
安全风险统计:
安全风险总数:{{dangerNum}}
重大安全风险:{{greatFaultLevelNum}}
较大安全风险:{{largerRiskNum}}
一般安全风险:{{generalRiskNum}}
低安全风险:{{lowRiskNum}}
近一年检查到的安全隐患级别风险统计:
月份
重大风险安全隐患数量
较大风险安全隐患数量
一般风险安全隐患数量
低风险安全隐患数量
{{fe:$yearMonth t.yearMonth
t.greatFaultLevelNum
t.largerRiskNum
t.generalRiskNum
t.lowRiskNum}}
安全隐患超期未整改统计:
隐患严重程度
数量
占比
{{fe:$data
t.name
t.count
t.percent}}
安全隐患未销项统计:
隐患严重程度
数量
占比
{{fe:$data1
t.name
t.count
t.percent}}
责任区域安全隐患问题统计:
区域名称
区域下全部安全隐患数量
区域下重大安全隐患数量
区域下较大安全隐患数量
区域下一般安全隐患数量
区域下低安全隐患数量
{{fe:$trendOneList
t.name
t.all
t.enumType1
t.enumType2
t.enumType3
t.enumType4
}}
项目安全自检任务完成统计:
安全检查任务名称
创建人
计划检查时间
子任务完成度
子任务完成状态
执行任务过程中发现的安全隐患总数
未闭合安全隐患数量
检查说明
{{fe:$taskList
t.taskName
t.createUserName
t.startTime - t.endTime
t.taskCompleteNum/t.taskNum
t.statusName
t.count.inspectNum
t.count.notEndNum
t.inspectRemark}}
安全检查任务下的子任务完成统计:
检查任务名称
子任务名称
检查人
检查时间
安全隐患总数
未闭合安全隐患数
{{fe:$taskItem
t.taskName
t.itemName
t.users
t.startTime - t.endTime
t.count.inspectNum
t.count.notEndNum}}

View File

@ -0,0 +1,130 @@
{{projectName}}数据汇总
环境监测:
扬尘设备管理:
设备名称
设备编号
设备状态
分包单位
设备地址
备案时间
{{$fe:environmentDev t.deviceName
t.deviceId
t.isEnable
t.enterpriseIds
t.address
t.createTime}}
喷淋设备管理:
设备名称
设备编号
喷淋模式
开关状态
{{$fe:sprayDev t.devName
t.devSn
t.sprayMode
t.switchStatus}}
预警值设置:
设备名称
设备编号
PM2.5阈值
PM10阈值
Tsp阈值
风速阈值
噪音阈值
湿度阈值
最低温度阈值
最高温度阈值
pm2.5预警是否推送
{{$fe:warning t.devName
t.devSn
t.pm25Warning
t.pm10Warning
t.realTimeTsp
t.windSpeed
t.noiseWarning
t.realTimeHumidity
t.minTemperature
t.maxTemperature
t.isNotPush}}
报警值设置:
设备名称
设备编号
PM2.5阈值
PM10阈值
Tsp阈值
风速阈值
噪音阈值
湿度阈值
最低温度阈值
最高温度阈值
pm2.5预警是否推送
{{$fe:alarm t.devName
t.devSn
t.pm25Warning
t.pm10Warning
t.realTimeTsp
t.windSpeed
t.noiseWarning
t.realTimeHumidity
t.minTemperature
t.maxTemperature
t.isNotPush}}
环境监测数据台账记录:
设备名称
温度
噪声
板载湿度
板载温度
Pm10
Pm25
大气压
温度
tsp测试值
电压
风向
风速
监测时间
{{$fe:dustNoiseDataList t.devName
t.temperature
t.noise
t.plateHumidity
t.plateTemperature
t.pm10
t.pm25
t.pressure
t.temperature
t.tsp
t.voltage
t.winddirection
t.windspeed
t.uploadDate}}
环境报警预警数据台账记录:
设备名称
报警类型
报警名称
报警值
阈值
超标时间
超标量
{{$fe:envieronmentAlarms t.devName
t.alarmTypeName
t.alarmCause
t.avgData
t.alarmValue
t.alarmTime
t.exceed}}
喷淋运行台账记录:
设备名称
开始时间
结束时间
{{$fe:sprayRtData t.devName
t.beginTime
t.endTime}}

View File

@ -0,0 +1,171 @@
{{projectName}}数据汇总
质量管理:
质量检查隐患总数:{{totalNum}}
已闭合质量检查隐患总数:{{closeNum}}
未闭合质量检查隐患总数:{{notCloseNum}}
超期未关闭质量检查隐患总数:{{overdueNotCloseNum}}
待整改质量检查隐患总数:{{rectificationNum}}
待复查质量检查隐患总数:{{reviewNum}}
待核验质量检查隐患总数:{{verificationNum}}
质量检查结果
质量检查人
质量检查时间
质量检查部位
质量问题描述
补充说明
整改要求
问题等级
紧急程度
质量整改人
质量整改时限
质量复查人
质量核验人
质量检查类型
分包单位
现场整改是否已完成
质量隐患事件描述
质量隐患问题描述
{{fe:$passRecordList t.enterpriseName
t.inspectManName
t.inspectTime
t.regionName
t.dangerItemContent
t.dangerDesc
t.remark
t.level
t.urgentLevel
t.changeName
t.changeLimitTime
t.reviewName
t.verifyManName
安全问题
t.enterpriseName
未完成
t.addedDescription
t.problemDescription}}
质量整改检查记录:
质量风险分析:
质量管理记录总条数=质量隐患记录+排查记录
质量管理记录总条数:{{totalNum}}
质量隐患记录总条数:{{dangerNum}}
排查记录总条数:{{investigateNum}}
重大质量隐患总条数:{{greatFaultLevelNum}}
超期未闭合质量隐患总条数:{{overdueNotCloseNum}}
分包单位质量隐患统计:
企业名称
企业类型
质量隐患记录数量
{{fe:$quality t.enterpriseName
总包
t.totalNum}}
质量风险统计:
质量风险总数:{{dangerNum}}
重大质量风险:{{greatFaultLevelNum}}
较大质量风险:{{largerRiskNum}}
一般质量风险:{{generalRiskNum}}
低质量风险:{{lowRiskNum}}
近一年检查到的质量隐患级别风险统计:
月份
重大风险质量隐患数量
较大风险质量隐患数量
一般风险质量隐患数量
低风险质量隐患数量
{{fe:$yearMonth t.yearMonth
t.greatFaultLevelNum
t.largerRiskNum
t.generalRiskNum
t.lowRiskNum}}
质量隐患超期未整改统计:
隐患严重程度
数量
占比
{{fe:$data
t.name
t.count
t.percent}}
质量隐患未销项统计:
隐患严重程度
数量
占比
{{fe:$data1
t.name
t.count
t.percent}}
责任区域质量隐患问题统计:
区域名称
区域下全部质量隐患数量
区域下重大质量隐患数量
区域下较大质量隐患数量
区域下一般质量隐患数量
区域下低质量隐患数量
{{fe:$trendOneList
t.name
t.all
t.enumType1
t.enumType2
t.enumType3
t.enumType4
}}
项目质量自检任务完成统计:
质量检查任务名称
创建人
计划检查时间
子任务完成度
子任务完成状态
执行任务过程中发现的质量隐患总数
未闭合质量隐患数量
检查说明
{{fe:$taskList
t.taskName
t.createUserName
t.startTime - t.endTime
t.taskCompleteNum/t.taskNum
t.statusName
t.count.inspectNum
t.count.notEndNum
t.inspectRemark}}
质量检查任务下的子任务完成统计:
检查任务名称
子任务名称
检查人
检查时间
质量隐患总数
未闭合质量隐患数
{{fe:$taskItem
t.taskName
t.itemName
t.users
t.startTime - t.endTime
t.count.inspectNum
t.count.notEndNum}}

View File

@ -0,0 +1,35 @@
{{projectName}}数据汇总
进度管理:
每日施工进度及人力物料设备等用量记录:
时间
上报人
分部分项工程名称
今日完成进度
人力物料设备等用量
{{fe:$taskList t.uploadDate
t.uploadUserName
t.taskName
t.progressRatio
t.desc
}}
进度预警记录记录:
任务名称
报警详情
报警时间
{{fe:$alarmList
t.taskName
t.alarmDetails
t.createDate
}}

View File

@ -0,0 +1,34 @@
{{projectName}}项目数据汇总
1、项目基础信息
项目名称 {{projectName}}
项目所在省市 {{projectAddress}}
项目地址 {{projectAddress}}
项目经理 {{projectManage}}
联系电话 {{projectTel}}
经度位置 {{longitude}}
纬度位置 {{latitude}}
项目编号 {{projectNumber}}
工程类别 {{projectTypeName}}
结构类型 {{structureTypeName}}
项目面积(m²) {{projectAcreage}}
工程状态 {{bulidStatusName}}
开工日期 {{startWorkDate}}
施工阶段 {{constructionStageName}}
可售面积(m²) {{saleAcreage}}
户数 {{households}}
楼栋数 {{buildingNum}}
是否重点工程 {{majorProjectTypeName}}
2、项目拓展信息
施工合同额(万元) {{contractPrice}}
总投资额(万元) {{investmentPrice}}
合同签订 {{contractSignTime}}
合同工期 {{contractPeriodStartTime}} / {{contractPeriodEndTime}}
实际工期 {{realPeriodStartTime}} / {{realPeriodEndTime}}
中标单位 {{bidWinner}}
建设单位 {{constructionUnit}}
设计单位 {{designUnit}}
监理单位 {{supervisorUnit}}
业主单位 {{ownerUnit}}
工程概况 {{projectOverview}}