|
@@ -14,45 +14,68 @@
|
|
要resetFields起作用,必须配置:model和prop
|
|
要resetFields起作用,必须配置:model和prop
|
|
-->
|
|
-->
|
|
<el-form ref="queryForm" :model="queryModel" inline class="demo-form-inline">
|
|
<el-form ref="queryForm" :model="queryModel" inline class="demo-form-inline">
|
|
- <el-form-item label="检测时间" prop="beginTime">
|
|
|
|
- <el-date-picker
|
|
|
|
- v-model="queryModel.timeRanges"
|
|
|
|
- type="daterange"
|
|
|
|
- range-separator="至"
|
|
|
|
- start-placeholder="开始日期"
|
|
|
|
- end-placeholder="结束日期"
|
|
|
|
- value-format="yyyy-MM-dd"
|
|
|
|
- format="yyyy 年 MM 月 dd 日"
|
|
|
|
- size="mini"
|
|
|
|
- ></el-date-picker>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="人员姓名" prop="personName">
|
|
|
|
- <el-input type="text" size="mini" v-model="queryModel.personName"></el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="设备编号" prop="deviceNo">
|
|
|
|
- <el-input type="text" size="mini" v-model="queryModel.deviceNo"></el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="设备别称" prop="aliasName">
|
|
|
|
- <el-input type="text" size="mini" v-model="queryModel.aliasName"></el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item>
|
|
|
|
- <el-button
|
|
|
|
- type="primary"
|
|
|
|
- size="mini"
|
|
|
|
- icon="ios-search"
|
|
|
|
- @click="changePage(1)"
|
|
|
|
- :loading="loading"
|
|
|
|
- >查询</el-button>
|
|
|
|
- <el-button
|
|
|
|
- type="info"
|
|
|
|
- size="mini"
|
|
|
|
- style="margin-left: 8px"
|
|
|
|
- @click="handleReset('queryForm')"
|
|
|
|
- >重置</el-button>
|
|
|
|
- </el-form-item>
|
|
|
|
|
|
+ <div>
|
|
|
|
+ <el-form-item label="记录时间" prop="timeRanges">
|
|
|
|
+ <el-date-picker
|
|
|
|
+ v-model="queryModel.timeRanges"
|
|
|
|
+ type="daterange"
|
|
|
|
+ range-separator="至"
|
|
|
|
+ start-placeholder="开始日期"
|
|
|
|
+ end-placeholder="结束日期"
|
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
|
+ format="yyyy 年 MM 月 dd 日"
|
|
|
|
+ size="mini"
|
|
|
|
+ ></el-date-picker>
|
|
|
|
+ </el-form-item>
|
|
|
|
+
|
|
|
|
+ <el-form-item label="人员姓名" prop="personName">
|
|
|
|
+ <el-input type="text" size="mini" v-model="queryModel.personName"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+
|
|
|
|
+ <el-form-item label="温度区间" prop="temperatureBegin">
|
|
|
|
+ <el-input
|
|
|
|
+ type="text"
|
|
|
|
+ size="mini"
|
|
|
|
+ style="width:50px;"
|
|
|
|
+ v-model="queryModel.temperatureBegin"
|
|
|
|
+ ></el-input>-
|
|
|
|
+ <el-input type="text" size="mini" style="width:50px;" v-model="queryModel.temperatureEnd"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </div>
|
|
|
|
+ <div>
|
|
|
|
+ <el-form-item label="设备编号" prop="deviceNo">
|
|
|
|
+ <el-input type="text" size="mini" v-model="queryModel.deviceNo"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="设备别称" prop="aliasName">
|
|
|
|
+ <el-input type="text" size="mini" v-model="queryModel.aliasName"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item>
|
|
|
|
+ <el-button
|
|
|
|
+ type="primary"
|
|
|
|
+ size="mini"
|
|
|
|
+ icon="ios-search"
|
|
|
|
+ @click="changePage(1)"
|
|
|
|
+ :loading="loading"
|
|
|
|
+ >查询</el-button>
|
|
|
|
+ <el-button
|
|
|
|
+ type="info"
|
|
|
|
+ size="mini"
|
|
|
|
+ style="margin-left: 8px"
|
|
|
|
+ @click="handleReset('queryForm')"
|
|
|
|
+ >重置</el-button>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </div>
|
|
</el-form>
|
|
</el-form>
|
|
<el-divider></el-divider>
|
|
<el-divider></el-divider>
|
|
- <el-row class="button-group"></el-row>
|
|
|
|
|
|
+ <el-row class="button-group">
|
|
|
|
+ <el-button
|
|
|
|
+ type="primary"
|
|
|
|
+ size="small"
|
|
|
|
+ plain
|
|
|
|
+ icon="el-icon-circle-plus"
|
|
|
|
+ @click="downloadXls"
|
|
|
|
+ >导出数据</el-button>
|
|
|
|
+ </el-row>
|
|
<el-table
|
|
<el-table
|
|
:data="tableData"
|
|
:data="tableData"
|
|
style="min-height:400px;"
|
|
style="min-height:400px;"
|
|
@@ -62,11 +85,11 @@
|
|
@selection-change="handleSelectionChange"
|
|
@selection-change="handleSelectionChange"
|
|
>
|
|
>
|
|
<el-table-column prop="recordTime" label="记录时间" width="180"></el-table-column>
|
|
<el-table-column prop="recordTime" label="记录时间" width="180"></el-table-column>
|
|
- <el-table-column prop="faceImage" width="80">
|
|
|
|
|
|
+ <el-table-column prop="faceImage" width="120">
|
|
<template slot-scope="{row}">
|
|
<template slot-scope="{row}">
|
|
<a :href="row.faceImage" target="_blank">
|
|
<a :href="row.faceImage" target="_blank">
|
|
<el-avatar
|
|
<el-avatar
|
|
- size="small"
|
|
|
|
|
|
+ :size="80"
|
|
:src="row.faceImage+'?x-oss-process=image/resize,m_lfit,h_100,w_100'"
|
|
:src="row.faceImage+'?x-oss-process=image/resize,m_lfit,h_100,w_100'"
|
|
:key="row.id"
|
|
:key="row.id"
|
|
></el-avatar>
|
|
></el-avatar>
|
|
@@ -78,13 +101,13 @@
|
|
</el-table-column>
|
|
</el-table-column>
|
|
<el-table-column prop="temperature" label="测温度数" width="120"></el-table-column>
|
|
<el-table-column prop="temperature" label="测温度数" width="120"></el-table-column>
|
|
<!-- <el-table-column prop="matchStatus" label="匹配状态" width="180"></el-table-column> -->
|
|
<!-- <el-table-column prop="matchStatus" label="匹配状态" width="180"></el-table-column> -->
|
|
- <el-table-column prop="matchMsg" label="开门类型" width="150"></el-table-column>
|
|
|
|
|
|
+ <el-table-column prop="matchMsg" label="匹配状态" width="250"></el-table-column>
|
|
<!-- <el-table-column prop="matchFaceId" label="匹配的人脸id" width="180"></el-table-column> -->
|
|
<!-- <el-table-column prop="matchFaceId" label="匹配的人脸id" width="180"></el-table-column> -->
|
|
- <el-table-column prop="position1" label="一级位置" width="150"></el-table-column>
|
|
|
|
|
|
+ <!-- <el-table-column prop="position1" label="一级位置" width="150"></el-table-column>
|
|
<el-table-column prop="position2" label="二级位置" width="150"></el-table-column>
|
|
<el-table-column prop="position2" label="二级位置" width="150"></el-table-column>
|
|
<el-table-column prop="position3" label="三级位置" width="150"></el-table-column>
|
|
<el-table-column prop="position3" label="三级位置" width="150"></el-table-column>
|
|
<el-table-column prop="position4" label="四级位置" width="150"></el-table-column>
|
|
<el-table-column prop="position4" label="四级位置" width="150"></el-table-column>
|
|
- <el-table-column prop="position5" label="五级位置" width="150"></el-table-column>
|
|
|
|
|
|
+ <el-table-column prop="position5" label="五级位置" width="150"></el-table-column>-->
|
|
<el-table-column prop="deviceNo" label="设备编号" width="220"></el-table-column>
|
|
<el-table-column prop="deviceNo" label="设备编号" width="220"></el-table-column>
|
|
<el-table-column prop="device" label="设备别称" width="220">
|
|
<el-table-column prop="device" label="设备别称" width="220">
|
|
<template slot-scope="{row}">{{row.device == null ? "" : row.device.aliasName}}</template>
|
|
<template slot-scope="{row}">{{row.device == null ? "" : row.device.aliasName}}</template>
|
|
@@ -119,7 +142,10 @@ export default {
|
|
matchStatus: "",
|
|
matchStatus: "",
|
|
timeRanges: "",
|
|
timeRanges: "",
|
|
faceImage: "",
|
|
faceImage: "",
|
|
- position:""
|
|
|
|
|
|
+ position: "",
|
|
|
|
+ temperatureBegin: "",
|
|
|
|
+ temperatureEnd: "",
|
|
|
|
+ temperatureRanges: ""
|
|
},
|
|
},
|
|
loading: false,
|
|
loading: false,
|
|
tableData: [],
|
|
tableData: [],
|
|
@@ -157,6 +183,11 @@ export default {
|
|
formData.append("companyId", self.queryModel.companyId);
|
|
formData.append("companyId", self.queryModel.companyId);
|
|
formData.append("position", self.queryModel.position);
|
|
formData.append("position", self.queryModel.position);
|
|
|
|
|
|
|
|
+ formData.append(
|
|
|
|
+ "temperatureRanges",
|
|
|
|
+ self.queryModel.temperatureBegin + "," + self.queryModel.temperatureEnd
|
|
|
|
+ );
|
|
|
|
+
|
|
if (this.field != null) {
|
|
if (this.field != null) {
|
|
formData.append("field", this.field);
|
|
formData.append("field", this.field);
|
|
}
|
|
}
|
|
@@ -195,7 +226,9 @@ export default {
|
|
},
|
|
},
|
|
handleReset(name) {
|
|
handleReset(name) {
|
|
this.$refs[name].resetFields();
|
|
this.$refs[name].resetFields();
|
|
- this.queryModel.timeRanges="";
|
|
|
|
|
|
+ //this.queryModel.timeRanges = "";
|
|
|
|
+ this.queryModel.temperatureBegin = "";
|
|
|
|
+ this.queryModel.temperatureEnd = "";
|
|
},
|
|
},
|
|
onDetailModalClose(refreshed) {
|
|
onDetailModalClose(refreshed) {
|
|
//保存成功后回调
|
|
//保存成功后回调
|
|
@@ -204,6 +237,35 @@ export default {
|
|
if (refreshed) {
|
|
if (refreshed) {
|
|
this.changePage(this.pageIndex);
|
|
this.changePage(this.pageIndex);
|
|
}
|
|
}
|
|
|
|
+ },
|
|
|
|
+ downloadXls() {
|
|
|
|
+ //导出
|
|
|
|
+ var self = this;
|
|
|
|
+ var formData = new FormData();
|
|
|
|
+
|
|
|
|
+ formData.append("faceImage", self.queryModel.faceImage);
|
|
|
|
+ formData.append("timeRanges", self.queryModel.timeRanges);
|
|
|
|
+ formData.append("matchStatus", self.queryModel.matchStatus);
|
|
|
|
+ formData.append("personName", self.queryModel.personName);
|
|
|
|
+ formData.append("deviceNo", self.queryModel.deviceNo);
|
|
|
|
+ formData.append("aliasName", self.queryModel.aliasName);
|
|
|
|
+ formData.append("companyId", self.queryModel.companyId);
|
|
|
|
+ formData.append("position", self.queryModel.position);
|
|
|
|
+
|
|
|
|
+ personDeviceLogApi.exportXls(formData).then(function(response) {
|
|
|
|
+ var jsonData = response.data;
|
|
|
|
+ if (jsonData.result) {
|
|
|
|
+ if (jsonData.data != null) {
|
|
|
|
+ //下载有错误信息提示的报表
|
|
|
|
+ self.$message({
|
|
|
|
+ showClose: true,
|
|
|
|
+ dangerouslyUseHTMLString: true,
|
|
|
|
+ message: `<a href="${jsonData.data}" target="_blank">点击下载报表</a> `,
|
|
|
|
+ duration: 30000
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ });
|
|
}
|
|
}
|
|
},
|
|
},
|
|
mounted: function() {
|
|
mounted: function() {
|