wz_shi 3 years ago
parent
commit
e1d005248a
  1. 10
      .env.development
  2. 2
      src/api/device/configuration.js
  3. 9
      src/api/device/deviceList.js
  4. 82
      src/api/login.js
  5. 12
      src/main.js
  6. 47
      src/store/getters.js
  7. 23
      src/store/modules/device.js
  8. 99
      src/views/device/index.vue

10
.env.development

@ -1,18 +1,12 @@
ENV = 'development'
# 本地接口地址
#VUE_APP_BASE_API = '/dev-api'
# 刘力本地服
VUE_APP_BASE_API = '/dev-api'
#VUE_APP_BASE_API = 'http://192.168.99.103:7000'
#VUE_APP_WS_API = 'ws://192.168.99.103:7000'
# 许镇本地服
VUE_APP_BASE_API = 'http://192.168.99.84:7000'
VUE_APP_WS_API = 'ws://http://192.168.99.84:7000'
#VUE_APP_BASE_API = 'http://192.168.99.207:7000'
#VUE_APP_WS_API = 'ws://192.168.99.207:7000'
VUE_APP_WS_API = 'ws://192.168.99.84:7000'
# 外网接口地址
#VUE_APP_BASE_API = 'https://yxkadmin.aiyxlib.com'

2
src/api/device/configuration.js

@ -1,2 +0,0 @@
// 开关机配置的接口
import request from '@/utils/request'

9
src/api/device/deviceList.js

@ -1,10 +1,11 @@
// 设备列表的管理接口
import request from '@/utils/request'
export function ReqDeviceList(page, size) {
// 获取设备列表
export function ReqDeviceList(parameter) {
return request({
url: `api/device/list?page=${page}&size=${size}`,
url: 'api/device/list',
method: 'get',
params: parameter
})
}
// &device_id=${device_id}
@ -24,6 +25,6 @@ export function ReqQueryDevice(parameter) {
return request({
url: 'api/device/findById',
method: 'get',
data: parameter
params: parameter
})
}

82
src/api/login.js

@ -1,58 +1,58 @@
import request from '@/utils/request'
export function login(username, password, phone, code, uuid) {
return request({
url: 'auth/login',
method: 'post',
data: {
username,
password,
phone,
code,
uuid
}
})
return request({
url: 'auth/login',
method: 'post',
data: {
username,
password,
phone,
code,
uuid
}
})
}
export function getMsg(phone) {
return request({
url: 'auth/msg',
method: 'post',
data: {
phone
}
})
return request({
url: 'auth/msg',
method: 'post',
data: {
phone
}
})
}
export function setPassword(phone, new_pass, code, uuid) {
return request({
url: 'auth/password',
method: 'post',
data: {
phone,
new_pass,
code,
uuid
}
})
return request({
url: 'auth/password',
method: 'post',
data: {
phone,
new_pass,
code,
uuid
}
})
}
export function getInfo() {
return request({
url: 'auth/info',
method: 'get'
})
return request({
url: 'auth/info',
method: 'get'
})
}
export function getCodeImg() {
return request({
url: 'auth/code',
method: 'get'
})
return request({
url: 'auth/code',
method: 'get'
})
}
export function logout() {
return request({
url: 'auth/logout',
method: 'delete'
})
}
return request({
url: 'auth/logout',
method: 'delete'
})
}

12
src/main.js

@ -40,15 +40,15 @@ Vue.use(mavonEditor)
Vue.use(permission)
Vue.use(dict)
Vue.use(Element, {
size: Cookies.get('size') || 'small' // set element-ui default size
size: Cookies.get('size') || 'small' // set element-ui default size
})
Vue.use(vcolorpicker)
Vue.config.productionTip = false
new Vue({
el: '#app',
router,
store,
render: h => h(App)
})
el: '#app',
router,
store,
render: h => h(App)
})

47
src/store/getters.js

@ -1,25 +1,26 @@
const getters = {
deployUploadApi: state => state.api.deployUploadApi,
databaseUploadApi: state => state.api.databaseUploadApi,
size: state => state.app.size,
sidebar: state => state.app.sidebar,
device: state => state.app.device,
token: state => state.user.token,
visitedViews: state => state.tagsView.visitedViews,
cachedViews: state => state.tagsView.cachedViews,
roles: state => state.user.roles,
user: state => state.user.user,
loadMenus: state => state.user.loadMenus,
permission_routers: state => state.permission.routers,
addRouters: state => state.permission.addRouters,
socketApi: state => state.api.socketApi,
imagesUploadApi: state => state.api.imagesUploadApi,
baseApi: state => state.api.baseApi,
fileUploadApi: state => state.api.fileUploadApi,
updateAvatarApi: state => state.api.updateAvatarApi,
qiNiuUploadApi: state => state.api.qiNiuUploadApi,
sqlApi: state => state.api.sqlApi,
swaggerApi: state => state.api.swaggerApi,
sidebarRouters: state => state.permission.sidebarRouters
deployUploadApi: state => state.api.deployUploadApi,
databaseUploadApi: state => state.api.databaseUploadApi,
size: state => state.app.size,
sidebar: state => state.app.sidebar,
device: state => state.app.device,
token: state => state.user.token,
visitedViews: state => state.tagsView.visitedViews,
cachedViews: state => state.tagsView.cachedViews,
roles: state => state.user.roles,
user: state => state.user.user,
loadMenus: state => state.user.loadMenus,
permission_routers: state => state.permission.routers,
addRouters: state => state.permission.addRouters,
socketApi: state => state.api.socketApi,
imagesUploadApi: state => state.api.imagesUploadApi,
baseApi: state => state.api.baseApi,
fileUploadApi: state => state.api.fileUploadApi,
updateAvatarApi: state => state.api.updateAvatarApi,
qiNiuUploadApi: state => state.api.qiNiuUploadApi,
sqlApi: state => state.api.sqlApi,
swaggerApi: state => state.api.swaggerApi,
sidebarRouters: state => state.permission.sidebarRouters,
}
export default getters
export default getters

23
src/store/modules/device.js

@ -1,23 +0,0 @@
import { ReqDeviceList, ReqDeviceEdit } from '@/api/device/deviceList'
const device = {
state: {
deviceList: []
},
mutations: {
GETDEVICELIST: (state, deviceList) => {
state.deviceList = deviceList
}
},
actions: {
//获取设备列表的信息
async getDeviceList({ commit }, { page, size }) {
let result = await ReqDeviceList(page, size)
if (result.code == 200) {
commit('GETDEVICELIST', result.data.content)
}
},
},
}
export default device

99
src/views/device/index.vue

@ -15,28 +15,31 @@
/>
</el-select>
</div>
<!-- @keyup.enter.native="crud.toQuery" -->
<div class="form_item">
<span>设备ID</span>
<el-input
v-model="query.device_id"
v-model="queryInfo.device_id"
clearable
size="small"
placeholder="请输入设备ID"
style="width: 200px"
class="filter-item"
@keyup.enter.native='queryDevice(query.device_id)'
@clear="getDevice"
@blur="queryDevice(queryInfo.device_id)"
@keyup.enter.native='queryDevice(queryInfo.device_id)'
/>
</div>
<div class="form_item">
<span>设备名称</span>
<el-input
v-model="query.name"
v-model="queryInfo.device_name"
clearable
size="small"
placeholder="请输入设备名称"
style="width: 200px"
class="filter-item"
class="filter-item"
@blur="getDevice"
@keyup.enter.native="getDevice"
/>
</div>
</el-col>
@ -45,7 +48,7 @@
</el-col>
</el-row>
</div>
<!-- table -->
<!-- table :data="deviceList"-->
<el-row :gutter="15">
<el-col>
<el-table
@ -59,7 +62,7 @@
<el-table-column prop="device_name" label="设备名称" align="center" />
<el-table-column label="设备方向" align="center" >
<template slot-scope="{row}">
<div>{{row.device_direction ? '竖屏' : '横屏' }}</div>
<div>{{row.device_direction==1? '竖屏' : '横屏' }}</div>
</template>
</el-table-column>
<el-table-column prop="organ_name" label="所属机构" align="center"/> >
@ -74,7 +77,11 @@
<el-button type="text" size="small" @click="handleClick(scope.row)">查看</el-button>
</template>
</el-table-column>
<el-table-column prop="create_time" label="创建时间" align="center" width="160" />
<el-table-column prop="create_time" label="创建时间" align="center" width="160" >
<template slot-scope="{row}">
<div>{{ row.create_time | parseTime}}</div>
</template>
</el-table-column>
<el-table-column fixed="right" label="操作" align="center" width="120">
<template slot-scope="scope">
<el-button
@ -189,35 +196,39 @@
</template>
<script>
import { ReqDeviceEdit } from '@/api/device/deviceList.js'
import {mapState} from 'vuex'
import { ReqDeviceEdit ,ReqDeviceList,ReqQueryDevice} from '@/api/device/deviceList.js'
import {parseTime} from '@/utils/index.js'
export default {
name: 'Device',
data() {
return {
page:'1',
size:'3',
return {
queryInfo:{
device_id:'',
device_name:'',
is_state:'',
page:'1',
size:'3'
},
// device_id:'',
dialogTitle: '',
//
addFromVisible: false,
contentVisible: false,
recordVisible: false,
//
deviceList:[],
stateData: [{ key: '0', name: '全部' }, { key: '1', name: '在线' }, { key: '2', name: '离线' }],
deviceData: [{ key: '0', name: '竖屏' }, { key: '1', name: '横屏' }],
deviceData: [{ key: '1', name: '竖屏' }, { key: '2', name: '横屏' }],
query:{
state:null,
name:null,
device_id:'',
},
//
form: {
account: null,
name: null,
orientation: null,
device_id:'',
orga_id:''
orga_id:'1310000'
},
rules: {
name: [{ required: true, message: '请输入设备名称', trigger: 'blur' }, { min: 2, max: 20, message: '长度在 2 到 20 个字符', trigger: 'blur' }],
@ -225,39 +236,42 @@ export default {
}
}
},
filters: {
parseTime(time, cFormat) {
return parseTime(time, cFormat)
}
},
watch: {},
mounted(){
this.getDevice()
},
computed:{
...mapState({
deviceList:(state)=>state.device.deviceList
})
},
methods: {
//
getDevice(){
const{page,size}=this
this.$store.dispatch('getDeviceList',{page,size})
getDevice(){
const params = this.queryInfo
ReqDeviceList(params).then(res => {
if(res.code==200) {
this.deviceList=res.data.content
}else{
return this.$message.error('获取设备列表失败!')
}
})
},
//
editFormData(row) {
this.addFromVisible = true
this.form.account = row.device_account
this.form.name=row.device_name
this.form.orientation=row.device_direction ? '竖屏' : '横屏'
this.form.orientation=row.device_direction==1?'竖屏':'横屏'
this.form.device_id=row.device_id
// console.log(id)
// ReqDeviceEdit(params).then(res => {
// console.log(res)
// })
},
recordData(index, row) {
this.recordVisible = true
},
//
handleClick(row) {
console.log(row)
// console.log(row)
this.contentVisible = true
},
//
@ -267,13 +281,19 @@ export default {
const params = {
account:this.form.account,
device_name:this.form.name,
device_direction:this.form.orientation,
device_id:this.form.device_id
device_direction:0,
device_id:this.form.device_id,
orga_id:'13000'
}
// console.log(account,device_name,device_direction)
console.log(params)
ReqDeviceEdit(params).then(res => {
console.log(res)
if(res.code==200) {
this.$message({
type: "success",
message: '修改设备成功'
});
}
this.addFromVisible=false
this.getDevice()
})
} else {
console.log('error submit!!')
@ -288,8 +308,11 @@ export default {
}
ReqQueryDevice(params).then(res=>{
console.log(res)
if(res.code==200) {
this.getDevice()
}
})
}
},
}
}
</script>

Loading…
Cancel
Save