人脸设备对接完成
This commit is contained in:
@@ -99,7 +99,7 @@ export function cutUpload (file, isFace = false, backUploadProgress){
|
|||||||
uploadFile(file, function(Progress) {
|
uploadFile(file, function(Progress) {
|
||||||
backUploadProgress(Progress)
|
backUploadProgress(Progress)
|
||||||
}, isFace, function(faceData){
|
}, isFace, function(faceData){
|
||||||
resolve({...obj, ...faceData})
|
// resolve({...obj, ...faceData})
|
||||||
})
|
})
|
||||||
|
|
||||||
// 判断任务 是否存在
|
// 判断任务 是否存在
|
||||||
@@ -128,7 +128,7 @@ export function cutUpload (file, isFace = false, backUploadProgress){
|
|||||||
onCheckFace({ total: Number(file.size), loaded: Number(file.size), isFace: progressData.face, checkFaceMsg, path: progressData.path })
|
onCheckFace({ total: Number(file.size), loaded: Number(file.size), isFace: progressData.face, checkFaceMsg, path: progressData.path })
|
||||||
}
|
}
|
||||||
// let checkFaceMsg = progressData.checkFaceMsg
|
// let checkFaceMsg = progressData.checkFaceMsg
|
||||||
// resolve({ total: Number(file.size), loaded: Number(file.size), isFace: progressData.face, checkFaceMsg, path: progressData.path });
|
resolve({ total: Number(file.size), loaded: Number(file.size), isFace: progressData.face, checkFaceMsg, path: progressData.path });
|
||||||
// console.log(progressData.path);
|
// console.log(progressData.path);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,31 +2,43 @@ import request from '@/utils/request';
|
|||||||
|
|
||||||
// 获取设备数据列表
|
// 获取设备数据列表
|
||||||
export const rqGetDeviceList = (current,size) => request({
|
export const rqGetDeviceList = (current,size) => request({
|
||||||
url: `/attendance/equipment/worksDevice?current=${current}&size=${size}`,
|
url: `/manager/device/list?current=${current}&size=${size}`,
|
||||||
method: 'get',
|
method: 'get',
|
||||||
})
|
})
|
||||||
|
|
||||||
|
// 获取服务列表
|
||||||
// 添加或者修改
|
export const getDevice = () => request({
|
||||||
export const rqAddOrModifyDevice = (data) => {
|
url: `/manager/mqtt/list`,
|
||||||
if(data.deviceId){
|
method: 'get',
|
||||||
return request({
|
|
||||||
url: '/attendance/equipment/worksDevice',
|
|
||||||
method: 'put',
|
|
||||||
data
|
|
||||||
})
|
})
|
||||||
}else{
|
|
||||||
|
// 添加
|
||||||
|
export const postDevice = (data) => {
|
||||||
return request({
|
return request({
|
||||||
url: '/attendance/equipment/worksDevice',
|
url: '/manager/device',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
// 修改
|
||||||
|
export const putDevice = (data) => {
|
||||||
|
return request({
|
||||||
|
url: '/manager/device',
|
||||||
|
method: 'PUT',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
// 获取详情
|
||||||
|
export const getDeviceById = (deviceId) => {
|
||||||
|
return request({
|
||||||
|
url: `/manager/device/${deviceId}`,
|
||||||
|
method: 'get',
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// 删除
|
// 删除
|
||||||
export const rqDeleteDevice = (id) => request({
|
export const deleteDevice = (deviceId) => request({
|
||||||
url: `/attendance/equipment/worksDevice/${id}`,
|
url: `/manager/device/${deviceId}`,
|
||||||
method: 'delete',
|
method: 'delete',
|
||||||
})
|
})
|
||||||
@@ -4,49 +4,29 @@ export default [
|
|||||||
prop: "deviceId",
|
prop: "deviceId",
|
||||||
type: "text",
|
type: "text",
|
||||||
},
|
},
|
||||||
{
|
|
||||||
label: "账号名称",
|
|
||||||
prop: "username",
|
|
||||||
type: "text",
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
{
|
||||||
label: "设备名称",
|
label: "设备名称",
|
||||||
prop: "deviceName",
|
prop: "name",
|
||||||
type: "text",
|
type: "text",
|
||||||
},
|
},
|
||||||
{
|
|
||||||
label: "用户名",
|
|
||||||
prop: "username",
|
|
||||||
type: "image",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: "密码",
|
|
||||||
prop: "password",
|
|
||||||
type: "text",
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
{
|
||||||
label: "设备标签",
|
label: "设备标签",
|
||||||
prop: "deviceLabel",
|
prop: "label",
|
||||||
type: "text",
|
type: "text",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: "设备地址",
|
label: "欢迎词",
|
||||||
prop: "deviceUrl",
|
prop: "welcome",
|
||||||
type: "text",
|
type: "text",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: "设备状态",
|
label: "排序",
|
||||||
prop: "deviceStatus",
|
prop: "sort",
|
||||||
type: "text",
|
type: "text",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
|
||||||
label: "设备物理地址",
|
|
||||||
prop: "macAddress",
|
|
||||||
type: "text",
|
|
||||||
},
|
|
||||||
|
|
||||||
]
|
]
|
||||||
@@ -0,0 +1,47 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<el-button @click="newlyClick" type="primary" size="mini" icon="el-icon-plus"
|
||||||
|
>新增</el-button
|
||||||
|
>
|
||||||
|
<el-button @click="resetClick" type="info" size="mini" icon="iconfont icon-biaodan"
|
||||||
|
>重置</el-button
|
||||||
|
>
|
||||||
|
<!-- <el-button @click="searchClick" type="warning" size="mini" icon="el-icon-search"
|
||||||
|
>搜索</el-button
|
||||||
|
> -->
|
||||||
|
<el-input
|
||||||
|
v-if="false"
|
||||||
|
v-model="searchData"
|
||||||
|
size="mini"
|
||||||
|
style="width: 20%"
|
||||||
|
placeholder="请输入搜索的关键字"
|
||||||
|
>
|
||||||
|
</el-input>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: "CommonHead",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
searchData: "",
|
||||||
|
};
|
||||||
|
},
|
||||||
|
|
||||||
|
methods: {
|
||||||
|
newlyClick() {
|
||||||
|
// 在此处调用父组件传入的方法叫父组件做事情
|
||||||
|
this.$emit("newly-data");
|
||||||
|
},
|
||||||
|
resetClick() {
|
||||||
|
this.$emit("reset-data");
|
||||||
|
},
|
||||||
|
searchClick() {
|
||||||
|
this.$emit("search-data", this.searchData);
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped></style>
|
||||||
@@ -33,61 +33,50 @@
|
|||||||
</div>
|
</div>
|
||||||
<!-- 对话框 -->
|
<!-- 对话框 -->
|
||||||
<el-dialog
|
<el-dialog
|
||||||
:title="from.deviceId ? '修改设备' : '新增设备'"
|
:title="formTitle"
|
||||||
:visible.sync="dialogVisible"
|
:visible.sync="dialogVisible"
|
||||||
width="20%"
|
width="30%">
|
||||||
:before-close="handleClose"
|
<el-form ref="ruleForm" :model="form" :rules="rules" label-width="80px">
|
||||||
>
|
|
||||||
<el-form
|
<el-form-item size="mini" label="设备Id" prop="deviceId">
|
||||||
:rules="rules"
|
|
||||||
label-position="right"
|
|
||||||
ref="ruleForm"
|
|
||||||
label-width="80px"
|
|
||||||
:model="from"
|
|
||||||
>
|
|
||||||
<el-form-item size="mini" label="设备名称" label-width="100x" prop="deviceName">
|
|
||||||
<el-input
|
<el-input
|
||||||
v-model="from.deviceName"
|
v-model="form.deviceId"
|
||||||
placeholder="请输入设备名称"
|
placeholder="请输入设备Id"
|
||||||
class="w100"
|
:disabled="formTitle == '编辑设备'"
|
||||||
></el-input>
|
></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
<el-form-item size="mini" label="设备名称" prop="name">
|
||||||
|
<el-input
|
||||||
|
v-model="form.name"
|
||||||
|
placeholder="请输入设备名称"
|
||||||
|
></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="服务选择" prop="serviceId">
|
||||||
|
<el-select v-model="form.serviceId" placeholder="请选择服务" >
|
||||||
|
<el-option v-for="item in deviceArr" :label="item.name" :value="item.id"></el-option>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item size="mini" label="设备地址" label-width="100x" prop="deviceUrl">
|
<el-form-item size="mini" label="设备标签" prop="label">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="from.deviceUrl"
|
v-model="form.label"
|
||||||
placeholder="请输入设备地址"
|
placeholder="请输入设备标签"
|
||||||
class="w100"
|
|
||||||
></el-input>
|
></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item
|
<el-form-item size="mini" label="欢迎词" prop="welcome">
|
||||||
size="mini"
|
|
||||||
label="设备物理地址"
|
|
||||||
label-width="100x"
|
|
||||||
prop="macAddress"
|
|
||||||
>
|
|
||||||
<el-input
|
<el-input
|
||||||
v-model="from.macAddress"
|
v-model="form.welcome"
|
||||||
placeholder="请输入设备物理地址"
|
placeholder="请输入欢迎词"
|
||||||
class="w100"
|
|
||||||
></el-input>
|
></el-input>
|
||||||
|
<p style="font-size: 12px;">例如:欢迎${personName}进校,${personName}为用户姓名</p>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item size="mini" label="设备账号名称" label-width="100x" prop="username">
|
<el-form-item size="mini" label="排序" prop="sort">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="from.username"
|
v-model="form.sort"
|
||||||
placeholder="请输入设备账号名称"
|
placeholder="请输入排序数值越大越靠前"
|
||||||
class="w100"
|
|
||||||
></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item size="mini" label="设备账号密码" label-width="100x" prop="password">
|
|
||||||
<el-input
|
|
||||||
v-model="from.password"
|
|
||||||
placeholder="请输入设备账号密码"
|
|
||||||
class="w100"
|
|
||||||
></el-input>
|
></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
|
|
||||||
<span slot="footer" class="dialog-footer">
|
<span slot="footer" class="dialog-footer">
|
||||||
<el-button @click="dialogVisible = false" size="mini">取 消</el-button>
|
<el-button @click="dialogVisible = false" size="mini">取 消</el-button>
|
||||||
<el-button type="primary" @click="confirmSettingRules" size="mini"
|
<el-button type="primary" @click="confirmSettingRules" size="mini"
|
||||||
@@ -95,13 +84,15 @@
|
|||||||
>
|
>
|
||||||
</span>
|
</span>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import columns from "./columns";
|
import columns from "./columns";
|
||||||
import { rqGetDeviceList, rqAddOrModifyDevice, rqDeleteDevice } from "./api";
|
import { rqGetDeviceList, getDevice, postDevice, deleteDevice, putDevice, getDeviceById } from "./api";
|
||||||
import { formatDate } from "@/com/index";
|
import { formatDate } from "@/com/index";
|
||||||
|
import CommonHead from "./components/CommonHead";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "attendanceMachineEquipmentManagement",
|
name: "attendanceMachineEquipmentManagement",
|
||||||
@@ -116,32 +107,32 @@ export default {
|
|||||||
loading: false,
|
loading: false,
|
||||||
equipmentList: [],
|
equipmentList: [],
|
||||||
dialogVisible: false,
|
dialogVisible: false,
|
||||||
from: {
|
form: {
|
||||||
// 设备名称
|
deviceId: "",
|
||||||
deviceName: "",
|
name: "",
|
||||||
|
serviceId: null,
|
||||||
// 设备地址
|
label: '',
|
||||||
deviceUrl: "",
|
welcome: '',
|
||||||
// 设备物理地址
|
sort: 0
|
||||||
macAddress: "",
|
|
||||||
// 设备账号
|
|
||||||
username: "",
|
|
||||||
// 设备密码
|
|
||||||
password: "",
|
|
||||||
},
|
},
|
||||||
|
deviceArr: [], // 服务列表
|
||||||
|
formTitle: '新增设备',
|
||||||
// 对话框表单验证
|
// 对话框表单验证
|
||||||
rules: {
|
rules: {
|
||||||
deviceName: [{ required: true, message: "请输入设备名称", trigger: "change" }],
|
deviceId: [{ required: true, message: "请输入设备id", trigger: "change" }],
|
||||||
|
name: [{ required: true, message: "请输入设备名称", trigger: "change" }],
|
||||||
deviceUrl: [{ required: true, message: "请输入设备地址", trigger: "change" }],
|
serviceId: [{ required: true, message: "请选择服务", trigger: "change" }],
|
||||||
macAddress: [{ required: true, message: "请输入设备物理", trigger: "change" }],
|
label: [{ required: true, message: "请输入标签", trigger: "change" }],
|
||||||
username: [{ required: true, message: "请输入设备账号名称", trigger: "change" }],
|
welcome: [{ required: true, message: "请输入欢迎词", trigger: "change" }],
|
||||||
password: [{ required: true, message: "请输入设备密码", trigger: "change" }],
|
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
components: {
|
||||||
|
CommonHead
|
||||||
|
},
|
||||||
created() {
|
created() {
|
||||||
this.getAttendanceFormData();
|
this.getAttendanceFormData();
|
||||||
|
this.deviceList()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
// 搜索按钮
|
// 搜索按钮
|
||||||
@@ -158,45 +149,47 @@ export default {
|
|||||||
// 添加
|
// 添加
|
||||||
add() {
|
add() {
|
||||||
console.log(888);
|
console.log(888);
|
||||||
this.dialogVisible = true;
|
|
||||||
// 清除数据
|
// 清除数据
|
||||||
this.from = {
|
this.form = {
|
||||||
// 设备名称
|
deviceId: "",
|
||||||
deviceName: "",
|
name: "",
|
||||||
|
serviceId: null,
|
||||||
|
label: '',
|
||||||
|
welcome: '',
|
||||||
|
sort: 0
|
||||||
|
}
|
||||||
|
this.formTitle = "新增设备";
|
||||||
|
|
||||||
|
this.dialogVisible = true;
|
||||||
|
if(this.$refs.ruleForm){
|
||||||
|
this.$refs.ruleForm.resetFields()
|
||||||
|
}
|
||||||
|
|
||||||
// 设备地址
|
|
||||||
deviceUrl: "",
|
|
||||||
// 设备物理地址
|
|
||||||
macAddress: "",
|
|
||||||
// 设备账号
|
|
||||||
username: "",
|
|
||||||
// 设备密码
|
|
||||||
password: "",
|
|
||||||
};
|
|
||||||
},
|
},
|
||||||
// 删除
|
// 删除
|
||||||
async deleteData(row) {
|
async deleteData(row) {
|
||||||
console.log(row.deviceId);
|
console.log(row.deviceId);
|
||||||
let res = await rqDeleteDevice(row.deviceId);
|
let res = await deleteDevice(row.deviceId);
|
||||||
if (res.code == 200) {
|
|
||||||
this.$message({
|
this.$message({
|
||||||
message: "删除成功",
|
message: "删除成功",
|
||||||
type: "success",
|
type: "success",
|
||||||
});
|
});
|
||||||
this.getAttendanceFormData();
|
this.getAttendanceFormData();
|
||||||
} else {
|
|
||||||
this.$message({
|
|
||||||
message: "删除失败",
|
|
||||||
type: "error",
|
|
||||||
});
|
|
||||||
}
|
|
||||||
console.log(row);
|
console.log(row);
|
||||||
},
|
},
|
||||||
// 编辑
|
// 编辑
|
||||||
editData(item) {
|
editData(item) {
|
||||||
console.log(item);
|
getDeviceById(item.deviceId).then(res =>{
|
||||||
|
if(this.$refs.ruleForm){
|
||||||
|
this.$refs.ruleForm.resetFields()
|
||||||
|
}
|
||||||
|
this.form = res
|
||||||
|
delete this.form.updateTime
|
||||||
|
delete this.form.createTime
|
||||||
|
this.formTitle = "编辑设备";
|
||||||
this.dialogVisible = true;
|
this.dialogVisible = true;
|
||||||
this.from = { ...item };
|
})
|
||||||
},
|
},
|
||||||
// 点击切换页数
|
// 点击切换页数
|
||||||
onClickCurrent(val) {
|
onClickCurrent(val) {
|
||||||
@@ -220,41 +213,48 @@ export default {
|
|||||||
try {
|
try {
|
||||||
this.loading = true;
|
this.loading = true;
|
||||||
let result = await rqGetDeviceList(this.query.pageNum, this.query.pageSize);
|
let result = await rqGetDeviceList(this.query.pageNum, this.query.pageSize);
|
||||||
if (result.code == 200) {
|
console.log('result');
|
||||||
|
console.log(result);
|
||||||
this.loading = false;
|
this.loading = false;
|
||||||
let arr = result.data.records;
|
let arr = result.records;
|
||||||
arr.forEach((item, index) => {
|
arr.forEach((item, index) => {
|
||||||
item.createTime = formatDate(item.createTime, "-");
|
item.createTime = formatDate(item.createTime, "-");
|
||||||
item.updateTime = formatDate(item.updateTime, "-");
|
item.updateTime = formatDate(item.updateTime, "-");
|
||||||
});
|
});
|
||||||
this.equipmentList = arr;
|
this.equipmentList = arr;
|
||||||
this.total = result.data.total;
|
this.total = result.total;
|
||||||
} else {
|
|
||||||
this.loading = false;
|
|
||||||
this.$message.error("网络错误");
|
|
||||||
}
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
this.loading = false;
|
this.loading = false;
|
||||||
this.$message.error("网络错误");
|
this.$message.error("网络错误");
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
// 获取服务列表
|
||||||
|
deviceList () {
|
||||||
|
getDevice().then(res =>{
|
||||||
|
this.deviceArr = res
|
||||||
|
})
|
||||||
|
},
|
||||||
// 确认新增或者修改按钮
|
// 确认新增或者修改按钮
|
||||||
confirmSettingRules() {
|
confirmSettingRules() {
|
||||||
this.$refs.ruleForm.validate(async (success) => {
|
this.$refs.ruleForm.validate(async (success) => {
|
||||||
if (success) {
|
if (success) {
|
||||||
|
if(this.formTitle == '新增设备'){
|
||||||
|
let result = await postDevice(this.form);
|
||||||
this.dialogVisible = false;
|
this.dialogVisible = false;
|
||||||
delete this.from.createTime;
|
|
||||||
delete this.from.updateTime;
|
|
||||||
let result = await rqAddOrModifyDevice(this.from);
|
|
||||||
if (result.code == 200) {
|
|
||||||
this.$message({
|
this.$message({
|
||||||
message: this.from.deviceId ? "修改成功" : "添加成功",
|
message: "新增成功",
|
||||||
type: "success",
|
type: "success",
|
||||||
});
|
});
|
||||||
this.getAttendanceFormData();
|
this.getAttendanceFormData();
|
||||||
this.from = {};
|
|
||||||
}else {
|
}else {
|
||||||
this.$message.error("添加失败");
|
putDevice(this.form).then(res =>{
|
||||||
|
this.$message({ message: "修改成功", type: "success", });
|
||||||
|
this.dialogVisible = false;
|
||||||
|
this.getAttendanceFormData();
|
||||||
|
|
||||||
|
})
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
Reference in New Issue
Block a user