Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
L
laravelzh
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
冯超鹏
laravelzh
Commits
39e053e5
Commit
39e053e5
authored
May 14, 2020
by
冯超鹏
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
记记录模块
parent
203bdf7b
Pipeline
#49
failed with stages
Changes
11
Pipelines
1
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
671 additions
and
323 deletions
+671
-323
SwooleCommandMeTcpController.php
app/Http/Controllers/Auth/SwooleCommandMeTcpController.php
+33
-7
DevicesController.php
app/Http/Controllers/DevicesController.php
+250
-148
dump.rdb
dump.rdb
+0
-0
devicelistdata.text
public/device/2020-05-14/devicelistdata.text
+3
-0
device.js
resources/js/api/device.js
+22
-0
index.js
resources/js/router/index.js
+112
-116
element-ui.js
resources/js/router/modules/element-ui.js
+1
-1
index.vue
resources/js/views/documentation/index.vue
+0
-47
alarms.vue
resources/js/views/history/alarms.vue
+92
-1
index.vue
resources/js/views/history/index.vue
+157
-3
api.php
routes/api.php
+1
-0
No files found.
app/Http/Controllers/Auth/SwooleCommandMeTcpController.php
View file @
39e053e5
...
...
@@ -16,12 +16,29 @@ class SwooleCommandMeTcpController extends Controller
{
if
(
$data
!=
''
)
{
$datadevice
=
$this
->
stringdata
(
$data
);
Redis
::
set
(
'sbjc:'
.
$datadevice
[
0
],
$data
);
$this
->
dbdevice
(
$this
->
stringdata
(
$data
));
Redis
::
set
(
'dbtype'
,
0
);
if
(
Redis
::
get
(
'sbjc:'
.
$datadevice
[
0
])
==
''
){
Redis
::
set
(
'sbjc:'
.
$datadevice
[
0
],
$data
);
$this
->
dbdevice
(
$this
->
stringdata
(
$data
));
}
else
if
(
Redis
::
get
(
'sbjc:'
.
$datadevice
[
0
])
!=
$data
){
$this
->
dbdevice
(
$this
->
stringdata
(
$data
));
Redis
::
set
(
'sbjc:'
.
$datadevice
[
0
],
$data
);
}
Redis
::
lpush
(
'police'
,
$data
);
$this
->
police
();
}
$dalen
=
Redis
::
llen
(
'Devicesdata'
);
//返回队列长度
if
(
$dalen
>
5000
)
{
//当队列值达到巅峰以后切换数据库
Redis
::
select
(
1
);
//使用备用数据库//释放主数据库
Redis
::
set
(
'dbtype'
,
1
);
$this
->
deleteDbRedis
();
}
if
(
$dalen
>
5000
&&
Redis
::
get
(
'dbtype'
)
==
1
){
Redis
::
select
(
0
);
Redis
::
set
(
'dbtype'
,
0
);
$this
->
deleteDb
();
}
}
//分割字符串
...
...
@@ -44,6 +61,18 @@ class SwooleCommandMeTcpController extends Controller
}
return
$arrdata
;
}
//清楚指定数据库 redis
private
function
deleteDbRedis
(){
Redis
::
select
(
0
);
Redis
::
flushdb
();
Redis
::
select
(
1
);
}
private
function
deleteDb
(){
Redis
::
select
(
1
);
Redis
::
flushdb
();
Redis
::
select
(
0
);
}
//查询出返回值
private
function
dbdevice
(
$data
=
[])
...
...
@@ -58,12 +87,9 @@ class SwooleCommandMeTcpController extends Controller
->
leftjoin
(
'status as s'
,
's.id'
,
'='
,
'd.devicepolice'
)
->
select
(
'd.devicenum'
,
'd.username'
,
'd.deviceremark'
,
'd.devicelinkman'
,
'd.devicephone'
,
'd.deviceinfo'
,
't.tname'
,
'g.gas'
,
'c.danwei'
,
's.status_name'
)
->
first
();
Redis
::
lPush
(
'Devicesdata'
,
serialize
(
$devicedata
));
//进入队列进行
$dalen
=
Redis
::
llen
(
'Devicesdata'
);
//返回队列长度
if
(
$dalen
==
2
)
{
$Devices
->
equipment
();
//推送前台
if
(
$devicedata
!=
''
){
Redis
::
lPush
(
'Devicesdata'
,
serialize
(
$devicedata
));
//进入队列进行
}
}
}
...
...
app/Http/Controllers/DevicesController.php
View file @
39e053e5
This diff is collapsed.
Click to expand it.
dump.rdb
View file @
39e053e5
No preview for this file type
public/device/2020-05-14/devicelistdata.text
0 → 100644
View file @
39e053e5
[{"devicenum":"ZHGAS000131031","username":"123214","deviceremark":null,"devicelinkman":"1","devicephone":"16631150870","deviceinfo":null,"tname":"\u5bb6\u7528\u62a5\u8b66\u5668(IOT)","gas":"\u7532\u70f7","danwei":"%LEL","status_name":"\u62a5\u8b66"}]
[{"devicenum":"ZHGAS000131031","username":"123214","deviceremark":null,"devicelinkman":"1","devicephone":"16631150870","deviceinfo":null,"tname":"\u5bb6\u7528\u62a5\u8b66\u5668(IOT)","gas":"\u7532\u70f7","danwei":"%LEL","status_name":"\u4f20\u611f\u5668\u6545\u969c"}]
[{"devicenum":"ZHGAS000131031","username":"123214","deviceremark":null,"devicelinkman":"1","devicephone":"16631150870","deviceinfo":null,"tname":"\u5bb6\u7528\u62a5\u8b66\u5668(IOT)","gas":"\u7532\u70f7","danwei":"%LEL","status_name":"\u9ad8\u62a5"}]
resources/js/api/device.js
View file @
39e053e5
...
...
@@ -70,3 +70,25 @@ export function delteClassify(id) {
method
:
'get'
,
});
}
export
function
equipment
()
{
return
request
({
url
:
'/devices/equipment'
,
method
:
'get'
,
});
}
export
function
detedevice
(
dete
)
{
return
request
({
url
:
'/devices/detedevice?dete='
+
dete
,
method
:
'get'
,
});
}
export
function
police
(
dete
)
{
return
request
({
url
:
'/devices/police'
,
method
:
'get'
,
});
}
resources/js/router/index.js
View file @
39e053e5
...
...
@@ -13,17 +13,15 @@ Vue.use(Router);
import
Layout
from
'@/layout'
;
/* Router for modules */
import
elementUiRoutes
from
'./modules/element-ui'
;
import
componentRoutes
from
'./modules/components'
;
import
chartsRoutes
from
'./modules/charts'
;
import
tableRoutes
from
'./modules/table'
;
// import componentRoutes from './modules/components';
// import chartsRoutes from './modules/charts';
// import tableRoutes from './modules/table';
import
adminRoutes
from
'./modules/admin'
;
import
deviceRoutes
from
'./modules/device'
;
import
usersRoutes
from
'./modules/users'
;
import
nestedRoutes
from
'./modules/nested'
;
import
errorRoutes
from
'./modules/error'
;
import
excelRoutes
from
'./modules/excel'
;
import
permissionRoutes
from
'./modules/permission'
;
// import nestedRoutes from './modules/nested';
// import errorRoutes from './modules/error';
// import permissionRoutes from './modules/permission';
import
historyRoutes
from
'./modules/history.js'
;
import
monitorRoutes
from
'./modules/monitor.js'
;
...
...
@@ -119,117 +117,115 @@ export const constantRoutes = [
deviceRoutes
,
usersRoutes
,
adminRoutes
,
{
path
:
'/documentation'
,
component
:
Layout
,
redirect
:
'/documentation/index'
,
children
:
[
{
path
:
'index'
,
component
:
()
=>
import
(
'@/views/documentation/index'
),
name
:
'Documentation'
,
meta
:
{
title
:
'documentation'
,
icon
:
'documentation'
,
noCache
:
true
},
},
],
},
{
path
:
'/guide'
,
component
:
Layout
,
redirect
:
'/guide/index'
,
children
:
[
{
path
:
'index'
,
component
:
()
=>
import
(
'@/views/guide/index'
),
name
:
'Guide'
,
meta
:
{
title
:
'guide'
,
icon
:
'guide'
,
noCache
:
true
},
},
],
},
elementUiRoutes
,
// {
// path: '/documentation',
// component: Layout,
// redirect: '/documentation/index',
// children: [
// {
// path: 'index',
// component: () => import('@/views/documentation/index'),
// name: 'Documentation',
// meta: { title: 'documentation', icon: 'documentation', noCache: true },
// },
// ],
// },
// {
// path: '/guide',
// component: Layout,
// redirect: '/guide/index',
// children: [
// {
// path: 'index',
// component: () => import('@/views/guide/index'),
// name: 'Guide',
// meta: { title: 'guide', icon: 'guide', noCache: true },
// },
// ],
// },
];
export
const
asyncRoutes
=
[
permissionRoutes
,
componentRoutes
,
chartsRoutes
,
nestedRoutes
,
tableRoutes
,
{
path
:
'/theme'
,
component
:
Layout
,
redirect
:
'noredirect'
,
children
:
[
{
path
:
'index'
,
component
:
()
=>
import
(
'@/views/theme/index'
),
name
:
'Theme'
,
meta
:
{
title
:
'theme'
,
icon
:
'theme'
},
},
],
},
{
path
:
'/clipboard'
,
component
:
Layout
,
redirect
:
'noredirect'
,
meta
:
{
permissions
:
[
'view menu clipboard'
]
},
children
:
[
{
path
:
'index'
,
component
:
()
=>
import
(
'@/views/clipboard/index'
),
name
:
'ClipboardDemo'
,
meta
:
{
title
:
'clipboardDemo'
,
icon
:
'clipboard'
,
roles
:
[
'admin'
,
'manager'
,
'editor'
,
'user'
]
},
},
],
},
errorRoutes
,
excelRoutes
,
{
path
:
'/zip'
,
component
:
Layout
,
redirect
:
'/zip/download'
,
alwaysShow
:
true
,
meta
:
{
title
:
'zip'
,
icon
:
'zip'
,
permissions
:
[
'view menu zip'
]
},
children
:
[
{
path
:
'download'
,
component
:
()
=>
import
(
'@/views/zip'
),
name
:
'ExportZip'
,
meta
:
{
title
:
'exportZip'
},
},
],
},
{
path
:
'/pdf'
,
component
:
Layout
,
redirect
:
'/pdf/index'
,
meta
:
{
title
:
'pdf'
,
icon
:
'pdf'
,
permissions
:
[
'view menu pdf'
]
},
children
:
[
{
path
:
'index'
,
component
:
()
=>
import
(
'@/views/pdf'
),
name
:
'Pdf'
,
meta
:
{
title
:
'pdf'
},
},
],
},
{
path
:
'/pdf/download'
,
component
:
()
=>
import
(
'@/views/pdf/Download'
),
hidden
:
true
,
},
{
path
:
'/i18n'
,
component
:
Layout
,
meta
:
{
permissions
:
[
'view menu i18n'
]
},
children
:
[
{
path
:
'index'
,
component
:
()
=>
import
(
'@/views/i18n'
),
name
:
'I18n'
,
meta
:
{
title
:
'i18n'
,
icon
:
'international'
},
},
],
},
// permissionRoutes,
// componentRoutes,
// chartsRoutes,
// nestedRoutes,
// tableRoutes,
// {
// path: '/theme',
// component: Layout,
// redirect: 'noredirect',
// children: [
// {
// path: 'index',
// component: () => import('@/views/theme/index'),
// name: 'Theme',
// meta: { title: 'theme', icon: 'theme' },
// },
// ],
// },
// {
// path: '/clipboard',
// component: Layout,
// redirect: 'noredirect',
// meta: { permissions: ['view menu clipboard'] },
// children: [
// {
// path: 'index',
// component: () => import('@/views/clipboard/index'),
// name: 'ClipboardDemo',
// meta: { title: 'clipboardDemo', icon: 'clipboard', roles: ['admin', 'manager', 'editor', 'user'] },
// },
// ],
// },
// errorRoutes,
// {
// path: '/zip',
// component: Layout,
// redirect: '/zip/download',
// alwaysShow: true,
// meta: { title: 'zip', icon: 'zip', permissions: ['view menu zip'] },
// children: [
// {
// path: 'download',
// component: () => import('@/views/zip'),
// name: 'ExportZip',
// meta: { title: 'exportZip' },
// },
// ],
// },
// {
// path: '/pdf',
// component: Layout,
// redirect: '/pdf/index',
// meta: { title: 'pdf', icon: 'pdf', permissions: ['view menu pdf'] },
// children: [
// {
// path: 'index',
// component: () => import('@/views/pdf'),
// name: 'Pdf',
// meta: { title: 'pdf' },
// },
// ],
// },
// {
// path: '/pdf/download',
// component: () => import('@/views/pdf/Download'),
// hidden: true,
// },
// {
// path: '/i18n',
// component: Layout,
// meta: { permissions: ['view menu i18n'] },
// children: [
// {
// path: 'index',
// component: () => import('@/views/i18n'),
// name: 'I18n',
// meta: { title: 'i18n', icon: 'international' },
// },
// ],
// },
{
path
:
'*'
,
redirect
:
'/404'
,
hidden
:
true
},
];
...
...
resources/js/router/modules/element-ui.js
View file @
39e053e5
import
Layout
from
'@/layout'
;
//
const
elementUiRoutes
=
{
path
:
'/element-ui'
,
component
:
Layout
,
...
...
resources/js/views/documentation/index.vue
deleted
100644 → 0
View file @
203bdf7b
<
template
>
<div
class=
"app-container documentation-container"
>
<a
class=
"document-btn"
target=
"_blank"
href=
"https://laravel.com/docs/5.8"
>
{{
$t
(
'documentation.laravel'
)
}}
</a>
<a
class=
"document-btn"
target=
"_blank"
href=
"https://vuejs.org/"
>
VueJS
</a>
<a
class=
"document-btn"
target=
"_blank"
href=
"https://github.com/tuandm/laravue/"
>
{{
$t
(
'documentation.github'
)
}}
</a>
<dropdown-menu
:items=
"articleList"
style=
"float:left;margin-left:50px;"
title=
"Components"
/>
</div>
</
template
>
<
script
>
import
DropdownMenu
from
'@/components/Share/DropdownMenu'
;
export
default
{
name
:
'Documentation'
,
components
:
{
DropdownMenu
},
data
()
{
return
{
articleList
:
[
{
title
:
'Laravel Envoy'
,
href
:
'https://laravel.com/docs/5.8/envoy'
},
{
title
:
'Vuex'
,
href
:
'https://vuex.vuejs.org/'
},
{
title
:
'Vue Router'
,
href
:
'https://router.vuejs.org/'
},
{
title
:
'laravue-core'
,
href
:
'https://github.com/tuandm/laravue-core'
},
{
title
:
'vue-admin-template'
,
href
:
'https://github.com/PanJiaChen/vue-admin-template'
},
{
title
:
'Axios'
,
href
:
'https://github.com/axios/axios'
},
],
};
},
};
</
script
>
<
style
rel=
"stylesheet/scss"
lang=
"scss"
scoped
>
.documentation-container
{
margin
:
50px
;
.document-btn
{
float
:
left
;
margin-left
:
50px
;
display
:
block
;
cursor
:
pointer
;
background
:
black
;
color
:
white
;
height
:
60px
;
width
:
200px
;
line-height
:
60px
;
font-size
:
20px
;
text-align
:
center
;
}
}
</
style
>
resources/js/views/history/alarms.vue
View file @
39e053e5
<
template
>
<div>
报警记录
</div>
<div
class=
"app-container"
>
<el-table
:key=
"tableKey"
:data=
"reportpolice"
border
fit
highlight-current-rows
>
<el-table-column
label=
"设备编号"
width=
"150"
>
<template
slot-scope=
"scope"
>
<span
@
click=
"handleCopy(scope.row.devicenumber,$event)"
>
{{
scope
.
row
.
devicenumber
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"设备报警开始时间"
width=
"150"
>
<
template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
.
starttime
|
parseTime
(
'{y
}
-{m
}
-{d
}
{h
}
:{i
}
'
)
}}
<
/span
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
label
=
"设备结束报警时间"
width
=
"150"
>
<
template
slot
-
scope
=
"scope"
>
<
span
>
{{
scope
.
row
.
endtime
==
'0-0-0 0:0'
?
''
:
scope
.
row
.
endtime
|
parseTime
(
'{y
}
-{m
}
-{d
}
{h
}
:{i
}
'
)
}}
<
/span
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
label
=
"报警浓度"
width
=
"150"
>
<
template
slot
-
scope
=
"scope"
>
<
span
@
click
=
"handleCopy(scope.row.concentration,$event)"
>
{{
scope
.
row
.
concentration
}}
<
/span
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
label
=
"报警位置"
width
=
"150"
>
<
template
slot
-
scope
=
"scope"
>
<
span
@
click
=
"handleCopy(scope.row.location,$event)"
>
{{
scope
.
row
.
location
}}
<
/span
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
label
=
"报警类型"
width
=
"150"
>
<
template
slot
-
scope
=
"scope"
>
<
span
>
{{
scope
.
row
.
status_name
}}
<
/span
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
label
=
"设备状态"
width
=
"155"
>
<
template
slot
-
scope
=
"scope"
>
<
el
-
tag
:
type
=
"scope.row.status==1 ? 'danger' : 'success' "
effect
=
"dark"
>
{{
scope
.
row
.
status
==
1
?
'报警'
:
'正常'
}}
<
/el-tag
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
label
=
"设备是否当前报警"
width
=
"150"
>
<
template
slot
-
scope
=
"scope"
>
<
el
-
tag
:
type
=
"scope.row.status==1 ? 'danger' : 'success' "
effect
=
"dark"
>
{{
scope
.
row
.
status
==
1
?
'当前正在报警'
:
'已结束报警'
}}
<
/el-tag
>
<
/template
>
<
/el-table-column
>
<
/el-table
>
<
el
-
tooltip
placement
=
"top"
content
=
"tooltip"
>
<
back
-
to
-
top
:
custom
-
style
=
"myBackToTopStyle"
:
visibility
-
height
=
"300"
:
back
-
position
=
"50"
transition
-
name
=
"fade"
/>
<
/el-tooltip
>
<
/div
>
<
/template
>
<
script
>
import
{
police
}
from
'@/api/device'
;
import
clip
from
'@/utils/clipboard'
;
import
BackToTop
from
'@/components/BackToTop'
;
export
default
{
components
:
{
BackToTop
}
,
data
()
{
return
{
tableKey
:
0
,
reportpolice
:
[],
myBackToTopStyle
:
{
right
:
'50px'
,
bottom
:
'50px'
,
width
:
'40px'
,
height
:
'40px'
,
'border-radius'
:
'4px'
,
'line-height'
:
'45px'
,
// Please keep consistent with height to center vertically
background
:
'#e7eaf1'
,
// The background color of the button
}
,
}
;
}
,
created
()
{
this
.
police
();
// 列表
}
,
methods
:
{
police
()
{
police
()
.
then
(
response
=>
{
if
(
response
.
code
===
200
)
{
this
.
reportpolice
=
response
.
data
;
}
else
if
(
response
.
code
===
105
)
{
this
.
$message
({
message
:
response
.
msg
,
type
:
'warning'
,
}
);
}
}
)
.
catch
(
err
=>
{
console
.
log
(
err
);
}
);
}
,
handleCopy
(
text
,
event
)
{
clip
(
text
,
event
);
}
,
}
,
}
;
<
/script
>
<
style
>
...
...
resources/js/views/history/index.vue
View file @
39e053e5
<
template
>
<div>
设备记录
</div>
<div
class=
"app-container"
>
<div
class=
"filter-container"
>
<el-date-picker
v-model=
"value2"
align=
"right"
type=
"date"
placeholder=
"选择日期"
:picker-options=
"pickerOptions"
value-format=
"yyyy-MM-dd"
@
change=
"dataSearch"
></el-date-picker>
</div>
<el-table
:key=
"tableKey"
:data=
"equipment"
border
fit
highlight-current-rows
>
<el-table-column
label=
"设备编号"
width=
"130"
>
<template
slot-scope=
"scope"
>
<span
@
click=
"handleCopy(scope.row.devicenum,$event)"
>
{{
scope
.
row
.
devicenum
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"用户姓名"
width=
"130"
>
<
template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
.
username
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"设备备注"
width=
"130"
>
<
template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
.
deviceremark
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"设备联系人"
width=
"130"
>
<
template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
.
devicelinkman
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"设备手机号"
width=
"130"
>
<
template
slot-scope=
"scope"
>
<span
@
click=
"handleCopy(scope.row.devicephone,$event)"
>
{{
scope
.
row
.
devicephone
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"设备详情"
width=
"130"
>
<
template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
.
deviceinfo
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"设备分类"
width=
"130"
>
<
template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
.
tname
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"设备介质"
width=
"130"
>
<
template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
.
gas
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"设备单位"
width=
"130"
>
<
template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
.
danwei
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"设备状态"
width=
"130"
>
<
template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
.
status_name
}}
</span>
</
template
>
</el-table-column>
</el-table>
<el-tooltip
placement=
"top"
content=
"tooltip"
>
<back-to-top
:custom-style=
"myBackToTopStyle"
:visibility-height=
"300"
:back-position=
"50"
transition-name=
"fade"
/>
</el-tooltip>
</div>
</template>
<
script
>
import
{
equipment
,
detedevice
}
from
'@/api/device'
;
import
clip
from
'@/utils/clipboard'
;
import
BackToTop
from
'@/components/BackToTop'
;
export
default
{
components
:
{
BackToTop
},
data
()
{
return
{
equipment
:
[],
tableKey
:
0
,
value2
:
undefined
,
pickerOptions
:
{
disabledDate
(
time
)
{
return
time
.
getTime
()
>
Date
.
now
();
},
shortcuts
:
[{
text
:
'今天'
,
onClick
(
picker
)
{
picker
.
$emit
(
'pick'
,
new
Date
());
},
},
{
text
:
'昨天'
,
onClick
(
picker
)
{
const
date
=
new
Date
();
date
.
setTime
(
date
.
getTime
()
-
3600
*
1000
*
24
);
picker
.
$emit
(
'pick'
,
date
);
},
},
{
text
:
'一周前'
,
onClick
(
picker
)
{
const
date
=
new
Date
();
date
.
setTime
(
date
.
getTime
()
-
3600
*
1000
*
24
*
7
);
picker
.
$emit
(
'pick'
,
date
);
},
}],
},
myBackToTopStyle
:
{
right
:
'50px'
,
bottom
:
'50px'
,
width
:
'40px'
,
height
:
'40px'
,
'border-radius'
:
'4px'
,
'line-height'
:
'45px'
,
// Please keep consistent with height to center vertically
background
:
'#e7eaf1'
,
// The background color of the button
},
};
},
created
()
{
this
.
equipmentlist
();
// 列表
},
methods
:
{
equipmentlist
()
{
equipment
()
.
then
(
response
=>
{
if
(
response
.
code
===
200
)
{
this
.
equipment
=
response
.
data
;
}
else
if
(
response
.
code
===
105
)
{
this
.
$message
({
message
:
response
.
msg
,
type
:
'warning'
,
});
}
})
.
catch
(
err
=>
{
console
.
log
(
err
);
});
},
handleCopy
(
text
,
event
)
{
clip
(
text
,
event
);
},
dataSearch
()
{
detedevice
(
this
.
value2
)
.
then
(
response
=>
{
if
(
response
.
code
===
200
)
{
this
.
equipment
=
response
.
data
;
}
else
if
(
response
.
code
===
105
)
{
this
.
$message
({
message
:
response
.
msg
,
type
:
'warning'
,
});
this
.
equipment
=
response
.
data
;
}
})
.
catch
(
err
=>
{
console
.
log
(
err
);
});
},
},
};
</
script
>
<
style
>
<
style
scoped
lang=
"scss"
>
.placeholder-container
{
ul
{
li
{
margin
:
10px
;
list-style-type
:
none
;
}
}
}
</
style
>
routes/api.php
View file @
39e053e5
...
...
@@ -80,6 +80,7 @@ Route::group(['middleware'=>'auth:api'],function (){
Route
::
get
(
'devices/deviceBasketList'
,
'DevicesController@deviceBasketList'
);
//返回禁用设备和废纸篓设备
Route
::
get
(
'devices/addClassify/{data}'
,
'DevicesController@addClassify'
);
//添加分类
Route
::
get
(
'devices/delteClassify/{id}'
,
'DevicesController@delteClassify'
);
//删除分类
Route
::
get
(
'devices/detedevice'
,
'DevicesController@detedevice'
);
//查看历史数据
});
//装维中心
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment