Compare commits
21 Commits
Author | SHA1 | Date |
---|---|---|
|
d0d0905a73 | 4 months ago |
|
64a63378cf | 4 months ago |
|
64dfb4154e | 4 months ago |
|
17d50e3e77 | 4 months ago |
|
db2e718684 | 4 months ago |
|
14ab1dab34 | 4 months ago |
|
7a91504062 | 4 months ago |
|
b4775fd0ec | 4 months ago |
|
d71e90323f | 4 months ago |
|
1e88a95628 | 4 months ago |
|
76ebaea6be | 4 months ago |
|
27a6b21ab3 | 4 months ago |
|
6d8b06cc33 | 4 months ago |
|
f0f822fc1f | 4 months ago |
|
2f969b9e3a | 4 months ago |
|
bdc8dae729 | 4 months ago |
|
28989fe11f | 4 months ago |
|
413841f7db | 4 months ago |
|
9018e11cdc | 4 months ago |
|
88cc77ad15 | 4 months ago |
|
60dee5a31a | 4 months ago |
12 changed files with 221 additions and 188 deletions
@ -1,16 +1,16 @@ |
|||||
# 页面标题 |
# 页面标题 |
||||
VUE_APP_TITLE = 智能化衣柜 |
VUE_APP_TITLE = 智能门锁 |
||||
|
|
||||
# 生产环境配置 |
# 生产环境配置 |
||||
NODE_ENV = 'production' |
NODE_ENV = 'production' |
||||
|
|
||||
|
|
||||
# 大唐 |
# 大唐 |
||||
VUE_APP_BASE_API = '/commen_api/' |
VUE_APP_BASE_API = '/multimodal/' |
||||
VUE_APP_IMG_URL = '/commen_api/' |
VUE_APP_IMG_URL = '/multimodal/' |
||||
VUE_APP_API_QZURL = '/commen_api/' |
VUE_APP_API_QZURL = '/multimodal/' |
||||
|
|
||||
# 访问路径 |
# 访问路径 |
||||
VUE_APP_PUBLIC_PATH = '/commen/' |
VUE_APP_PUBLIC_PATH = '/multimodal_yf/dlock/' |
||||
|
|
||||
|
|
||||
|
@ -1,115 +1,49 @@ |
|||||
import request from "@/utils/request"; |
import request from "@/utils/request"; |
||||
// ------ 教务处学校管理 ------
|
|
||||
|
|
||||
// 学校列表
|
// 根据项目key查找项目id
|
||||
export function schoolList(data) { |
export function queryProjectInfoByKey(data) { |
||||
return request({ |
return request({ |
||||
url: "/school/list", |
url: "/app/device/queryProjectInfoByKey", |
||||
method: "post", |
method: "get", |
||||
data: data, |
params: data, |
||||
}); |
|
||||
} |
|
||||
// 新增/修改学校
|
|
||||
export function schoolAdd(data) { |
|
||||
return request({ |
|
||||
url: "/school/add", |
|
||||
method: "post", |
|
||||
data: data, |
|
||||
}); |
|
||||
} |
|
||||
// 新增/修改学校
|
|
||||
export function schoolDel(data) { |
|
||||
return request({ |
|
||||
url: "/school/del", |
|
||||
method: "post", |
|
||||
data: data, |
|
||||
}); |
|
||||
} |
|
||||
|
|
||||
// ------ 教务处评审管理 ------
|
|
||||
// 评审列表
|
|
||||
export function commentList(data) { |
|
||||
return request({ |
|
||||
url: "/come/list", |
|
||||
method: "post", |
|
||||
data: data, |
|
||||
}); |
|
||||
} |
|
||||
// 评审详情
|
|
||||
export function reviewDetails(data) { |
|
||||
return request({ |
|
||||
url: "/come/detail", |
|
||||
method: "post", |
|
||||
data: data, |
|
||||
}); |
}); |
||||
} |
} |
||||
// ------ 专家评审 ------
|
// 根据项目id查找设备列表
|
||||
// 学校列表
|
export function deviceList(data) { |
||||
|
|
||||
export function expertschoolist(data) { |
|
||||
return request({ |
|
||||
url: "/expert/school/list", |
|
||||
method: "post", |
|
||||
data: data, |
|
||||
}); |
|
||||
} |
|
||||
// 评审详情
|
|
||||
export function expertReviewDetails(data) { |
|
||||
return request({ |
return request({ |
||||
url: "/expert/comment/list", |
url: "/app/device/list", |
||||
method: "post", |
method: "get", |
||||
data: data, |
params: data, |
||||
}); |
}); |
||||
} |
} |
||||
// 评审
|
// 设备日志
|
||||
export function expertReviewAdd(data) { |
export function attributesRecord(data) { |
||||
return request({ |
return request({ |
||||
url: "/expert/comment/add", |
url: "/app/device/attributes/record", |
||||
method: "post", |
method: "get", |
||||
data: data, |
params: data, |
||||
}); |
}); |
||||
} |
} |
||||
// ------ 分片相关接口 ------
|
// 获取设备信息
|
||||
|
export function attributes(data) { |
||||
// 校验文件是否已上传
|
|
||||
export function register(data) { |
|
||||
return request({ |
return request({ |
||||
url: "/mediaUpload/register", |
url: "/app/device/attributes", |
||||
method: "post", |
method: "get", |
||||
data: data, |
params: data, |
||||
}); |
|
||||
} |
|
||||
// 校验分片是否已上传
|
|
||||
export function checkchunk(data) { |
|
||||
return request({ |
|
||||
url: "/mediaUpload/checkchunk", |
|
||||
method: "post", |
|
||||
data: data, |
|
||||
}); |
|
||||
} |
|
||||
// 循环上传分片
|
|
||||
export function uploadchunk(data) { |
|
||||
return request({ |
|
||||
url: "/mediaUpload/uploadchunk", |
|
||||
method: "post", |
|
||||
data: data, |
|
||||
headers: { |
|
||||
"Content-Type": "multipart/form-data", |
|
||||
}, |
|
||||
}); |
}); |
||||
} |
} |
||||
// 合并分片
|
// 下发属性
|
||||
export function mergechunks(data) { |
export function sendAttribute(data) { |
||||
return request({ |
return request({ |
||||
url: "/mediaUpload/mergechunks", |
url: "/app/device/sendAttribute", |
||||
method: "post", |
method: "post", |
||||
data: data, |
data: data, |
||||
}); |
}); |
||||
} |
} |
||||
// 合并后上传文件
|
// 下发命令
|
||||
export function addFile(data) { |
export function sendCommand(data) { |
||||
return request({ |
return request({ |
||||
url: "/netdisk/file/add", |
url: "/app/device/sendCommand", |
||||
method: "post", |
method: "post", |
||||
data: data, |
data: data, |
||||
}); |
}); |
||||
|
@ -1,86 +1,183 @@ |
|||||
<template> |
<template> |
||||
<div style="padding: 16px"> |
<div class="app-container"> |
||||
<!-- <img src="./welcome.5e305008.png" style="" /> --> |
<el-row :gutter="10" class="mb8"> |
||||
|
<el-col :span="1.5"> |
||||
|
<el-button |
||||
|
type="primary" |
||||
|
plain |
||||
|
size="mini" |
||||
|
@click="handleSendCommand" |
||||
|
>远程开锁</el-button> |
||||
|
</el-col> |
||||
|
<right-toolbar :showSearch.sync="showSearch" @queryTable="getAttributes(deviceId)"></right-toolbar> |
||||
|
</el-row> |
||||
|
|
||||
|
<el-table v-loading="loading" :data="tableList" max-height="600"> |
||||
|
<el-table-column label="序号" align="center" prop="noticeId" width="100" > |
||||
|
<template slot-scope="scope"> |
||||
|
{{ scope.$index + 1 + (queryParams.pageNum - 1) * queryParams.pageSize }} |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
<el-table-column |
||||
|
label="时间" |
||||
|
align="center" |
||||
|
prop="reportTime" |
||||
|
:show-overflow-tooltip="true" |
||||
|
min-width="100" |
||||
|
/> |
||||
|
<el-table-column |
||||
|
label="类型" |
||||
|
align="center" |
||||
|
prop="tips" |
||||
|
:show-overflow-tooltip="true" |
||||
|
min-width="100" |
||||
|
/> |
||||
|
|
||||
|
</el-table> |
||||
|
<pagination |
||||
|
v-show="total>0" |
||||
|
:total="total" |
||||
|
:page.sync="queryParams.pageNum" |
||||
|
:limit.sync="queryParams.pageSize" |
||||
|
@pagination="getAttributes(deviceId)" |
||||
|
/> |
||||
</div> |
</div> |
||||
</template> |
</template> |
||||
|
|
||||
<script> |
<script> |
||||
|
import { queryProjectInfoByKey, deviceList, attributes, sendAttribute, sendCommand,attributesRecord } from "@/api/school"; |
||||
|
|
||||
export default { |
export default { |
||||
name: "Index", |
name: "Notice", |
||||
data() { |
data() { |
||||
return { |
return { |
||||
// 版本号 |
deviceId: "", // 设备id |
||||
version: "3.8.9", |
// 遮罩层 |
||||
|
loading: true, |
||||
|
// 选中数组 |
||||
|
ids: [], |
||||
|
// 非单个禁用 |
||||
|
single: true, |
||||
|
// 非多个禁用 |
||||
|
multiple: true, |
||||
|
// 显示搜索条件 |
||||
|
showSearch: true, |
||||
|
// 总条数 |
||||
|
total: 0, |
||||
|
// 公告表格数据 |
||||
|
tableList: [], |
||||
|
// 弹出层标题 |
||||
|
title: "", |
||||
|
// 是否显示弹出层 |
||||
|
open: false, |
||||
|
// 查询参数 |
||||
|
queryParams: { |
||||
|
pageNum: 1, |
||||
|
pageSize: 10, |
||||
|
}, |
||||
|
// 表单参数 |
||||
|
form: {}, |
||||
|
// 表单校验 |
||||
|
rules: { |
||||
|
noticeTitle: [ |
||||
|
{ required: true, message: "公告标题不能为空", trigger: "blur" } |
||||
|
], |
||||
|
noticeType: [ |
||||
|
{ required: true, message: "公告类型不能为空", trigger: "change" } |
||||
|
] |
||||
|
} |
||||
}; |
}; |
||||
}, |
}, |
||||
methods: { |
created() { |
||||
goTarget(href) { |
this.getqueryProjectInfoByKey(); |
||||
window.open(href, "_blank"); |
|
||||
}, |
}, |
||||
|
methods: { |
||||
|
handleSendCommand(){ |
||||
|
sendCommand({ |
||||
|
"commandId": "447242774207233", // 命令ID, |
||||
|
"commandParams": 1, // 命令参数, |
||||
|
"deviceId": this.deviceId |
||||
|
}).then(res => { |
||||
|
this.$message.success('操作成功'); |
||||
|
this.getAttributes(this.deviceId) // 根据项目id查找设备列表 |
||||
|
}); |
||||
}, |
}, |
||||
|
// 阈值设定弹窗 |
||||
|
handleSettings() { |
||||
|
this.open = true; |
||||
|
this.form = { |
||||
|
threshold: this.deviceInfo.threshold, |
||||
}; |
}; |
||||
</script> |
// this.$message.success(''); |
||||
|
}, |
||||
<style scoped lang="scss"> |
|
||||
.home { |
|
||||
blockquote { |
|
||||
padding: 10px 20px; |
|
||||
margin: 0 0 20px; |
|
||||
font-size: 17.5px; |
|
||||
border-left: 5px solid #eee; |
|
||||
} |
|
||||
hr { |
|
||||
margin-top: 20px; |
|
||||
margin-bottom: 20px; |
|
||||
border: 0; |
|
||||
border-top: 1px solid #eee; |
|
||||
} |
|
||||
.col-item { |
|
||||
margin-bottom: 20px; |
|
||||
} |
|
||||
|
|
||||
ul { |
|
||||
padding: 0; |
|
||||
margin: 0; |
|
||||
} |
|
||||
|
|
||||
font-family: "open sans", "Helvetica Neue", Helvetica, Arial, sans-serif; |
|
||||
font-size: 13px; |
|
||||
color: #676a6c; |
|
||||
overflow-x: hidden; |
|
||||
|
|
||||
ul { |
|
||||
list-style-type: none; |
|
||||
} |
|
||||
|
|
||||
h4 { |
|
||||
margin-top: 0px; |
|
||||
} |
|
||||
|
|
||||
h2 { |
|
||||
margin-top: 10px; |
|
||||
font-size: 26px; |
|
||||
font-weight: 100; |
|
||||
} |
|
||||
|
|
||||
p { |
// 根据项目key查找项目id |
||||
margin-top: 10px; |
getqueryProjectInfoByKey() { |
||||
|
this.loading = true; |
||||
|
queryProjectInfoByKey({ |
||||
|
projectKey: "qKStHKKt" |
||||
|
}).then(res => { |
||||
|
this.getDeviceList(res.data.id) // 根据项目id查找设备列表 |
||||
|
}); |
||||
|
}, |
||||
|
// 根据项目id查找设备列表 |
||||
|
getDeviceList(_id) { |
||||
|
deviceList({ |
||||
|
projectId: _id |
||||
|
}).then(res => { |
||||
|
const w2Device = res.rows.find(device => device.deviceName === "D1"); |
||||
|
this.deviceId = w2Device.id; |
||||
|
this.getAttributes(this.deviceId); // 根据设备id查找设备信息 |
||||
|
}) |
||||
|
}, |
||||
|
|
||||
b { |
// 根据设备id查找设备信息 |
||||
font-weight: 700; |
getAttributes(_id) { |
||||
|
attributesRecord({ |
||||
|
pageNum: this.queryParams.pageNum, |
||||
|
pageSize: this.queryParams.pageSize, |
||||
|
deviceId: _id, |
||||
|
}).then(res => { |
||||
|
this.loading = false; |
||||
|
let isOpenValue = { |
||||
|
0 : "开锁失败", |
||||
|
1 : "开锁成功", |
||||
} |
} |
||||
|
let typeValue = { |
||||
|
'A1': '指纹', |
||||
|
'A2': '刷卡', |
||||
|
'A3': '密码', |
||||
} |
} |
||||
|
res.rows.forEach(item => { |
||||
|
item.attributeValue = JSON.parse(item.attributeValue) |
||||
|
console.log('item.attributeValue',item.attributeValue); |
||||
|
item.tips = `${typeValue[item.attributeValue.type]}${isOpenValue[item.attributeValue.isOpen]}` |
||||
|
}) |
||||
|
this.tableList = res.rows; |
||||
|
this.total = res.total; |
||||
|
}); |
||||
|
}, |
||||
|
/** 下发属性 */ |
||||
|
submitForm: function () { |
||||
|
this.$refs["form"].validate(valid => { |
||||
|
if (valid) { |
||||
|
let param = {"Wen":`#${this.form.threshold}`} // 阈值 |
||||
|
sendAttribute({ |
||||
|
"attributeParams": JSON.stringify(param), // 阈值JSON字符串 |
||||
|
"deviceId": this.deviceId // 设备id |
||||
|
}).then(response => { |
||||
|
this.getAttributes(this.deviceId); // 根据设备id查找设备信息 |
||||
|
this.$modal.msgSuccess("操作成功"); |
||||
|
this.open = false; |
||||
|
|
||||
.update-log { |
}); |
||||
ol { |
|
||||
display: block; |
|
||||
list-style-type: decimal; |
|
||||
margin-block-start: 1em; |
|
||||
margin-block-end: 1em; |
|
||||
margin-inline-start: 0; |
|
||||
margin-inline-end: 0; |
|
||||
padding-inline-start: 40px; |
|
||||
} |
|
||||
} |
} |
||||
|
}); |
||||
|
}, |
||||
|
/** 新增按钮操作 */ |
||||
|
handleAdd() { |
||||
|
this.$message.success('操作成功'); |
||||
|
}, |
||||
} |
} |
||||
</style> |
}; |
||||
|
</script> |
||||
|
Loading…
Reference in new issue