Compare commits
2 Commits
fcc4e21c36
...
03082a9cdb
| Author | SHA1 | Date |
|---|---|---|
|
|
03082a9cdb | |
|
|
6497852f80 |
|
|
@ -1,3 +1,3 @@
|
||||||
ENV = 'development'
|
ENV = 'development'
|
||||||
|
|
||||||
VUE_APP_BASE_API = 'http://36.133.205.221:81'
|
VUE_APP_BASE_API = 'https://lcny-api.peidikeji.cn'
|
||||||
|
|
@ -1,2 +1,2 @@
|
||||||
<!DOCTYPE html><html lang="zh-CN"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><title></title><script>var coverSupport = 'CSS' in window && typeof CSS.supports === 'function' && (CSS.supports('top: env(a)') || CSS.supports('top: constant(a)'))
|
<!DOCTYPE html><html lang="zh-CN"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><title></title><script>var coverSupport = 'CSS' in window && typeof CSS.supports === 'function' && (CSS.supports('top: env(a)') || CSS.supports('top: constant(a)'))
|
||||||
document.write('<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0' + (coverSupport ? ', viewport-fit=cover' : '') + '" />')</script><link rel="stylesheet" href="/static/index.97465e7b.css"></head><body><noscript><strong>Please enable JavaScript to continue.</strong></noscript><div id="app"></div><script src="/static/js/chunk-vendors.959091ef.js"></script><script src="/static/js/index.fdf17756.js"></script></body></html>
|
document.write('<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0' + (coverSupport ? ', viewport-fit=cover' : '') + '" />')</script><link rel="stylesheet" href="/static/index.97465e7b.css"></head><body><noscript><strong>Please enable JavaScript to continue.</strong></noscript><div id="app"></div><script src="/static/js/chunk-vendors.959091ef.js"></script><script src="/static/js/index.10961fd4.js"></script></body></html>
|
||||||
|
After Width: | Height: | Size: 873 B |
|
Before Width: | Height: | Size: 54 KiB |
|
After Width: | Height: | Size: 1.1 MiB |
|
Before Width: | Height: | Size: 54 KiB After Width: | Height: | Size: 1.1 MiB |
|
After Width: | Height: | Size: 992 B |
|
After Width: | Height: | Size: 919 B |
|
After Width: | Height: | Size: 1005 B |
|
After Width: | Height: | Size: 283 B |
|
After Width: | Height: | Size: 699 B |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 408 B |
|
After Width: | Height: | Size: 683 B |
|
After Width: | Height: | Size: 675 B |
|
After Width: | Height: | Size: 661 B |
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 754 B |
|
After Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 1.3 KiB |
|
After Width: | Height: | Size: 953 B |
|
After Width: | Height: | Size: 607 B |
|
After Width: | Height: | Size: 820 B |
|
After Width: | Height: | Size: 647 B |
|
After Width: | Height: | Size: 833 B |
|
|
@ -8,20 +8,26 @@
|
||||||
></image>
|
></image>
|
||||||
</view>
|
</view>
|
||||||
<view class="content-box">
|
<view class="content-box">
|
||||||
<view
|
<view class="menus-section" v-for="(menu, index) in menus" :key="index">
|
||||||
class="menus-section"
|
<view class="title-t" v-if="menu.parent && menu.children.length > 0"
|
||||||
v-for="(menu, index) in menus"
|
|
||||||
:key="index"
|
|
||||||
>
|
|
||||||
<view class="title-t" v-if="menu.parent && menu.children.length>0"
|
|
||||||
>{{ menu.parent }}-{{ menu.label }}</view
|
>{{ menu.parent }}-{{ menu.label }}</view
|
||||||
>
|
>
|
||||||
<view class="title-t" v-if="!menu.parent && menu.children.length>0">{{ menu.label }}</view>
|
<view class="title-t" v-if="!menu.parent && menu.children.length > 0">{{
|
||||||
|
menu.label
|
||||||
|
}}</view>
|
||||||
<view class="menu-ul">
|
<view class="menu-ul">
|
||||||
<view class="menu-li" v-for="(cdm, i) in menu.children" :key="i">
|
<view class="menu-li" v-for="(cdm, i) in menu.children" :key="i">
|
||||||
<view class="menu_item" @click="linknavFn(cdm)">
|
<view class="menu_item" @click="linknavFn(cdm)">
|
||||||
<view class="icon"></view>
|
<view class="menu_item_content">
|
||||||
<view class="name">{{ cdm.label }}</view>
|
<view class="icon">
|
||||||
|
<image
|
||||||
|
class="icon_img"
|
||||||
|
v-if="cdm.icon"
|
||||||
|
:src="require(`@/static/img/${cdm.icon}`)"
|
||||||
|
></image>
|
||||||
|
</view>
|
||||||
|
<view class="name">{{ cdm.label }}</view>
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
@ -44,36 +50,43 @@ export default {
|
||||||
label: '气象监测',
|
label: '气象监测',
|
||||||
url: '/pages/index/meteorological',
|
url: '/pages/index/meteorological',
|
||||||
permission: 'endpoint.weather.index',
|
permission: 'endpoint.weather.index',
|
||||||
|
icon: 'moon-cloudy-line.png',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '智能监控',
|
label: '智能监控',
|
||||||
url: '/pages/index/monitor',
|
url: '/pages/index/monitor',
|
||||||
permission: 'endpoint.camera.index',
|
permission: 'endpoint.camera.index',
|
||||||
|
icon: 'live-line.png',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '土壤监控',
|
label: '土壤监控',
|
||||||
url: '/pages/index/soil-monitoring',
|
url: '/pages/index/soil-monitoring',
|
||||||
permission: 'endpoint.soil.index',
|
permission: 'endpoint.soil.index',
|
||||||
|
icon: 'map-pin-range-line.png',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '水质监控',
|
label: '水质监控',
|
||||||
url: '/pages/index/water-quality',
|
url: '/pages/index/water-quality',
|
||||||
permission: 'endpoint.water.index',
|
permission: 'endpoint.water.index',
|
||||||
|
icon: 'contrast-drop-line.png',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '昆虫性诱监测',
|
label: '昆虫性诱监测',
|
||||||
url: '/pages/index/insect-monitors',
|
url: '/pages/index/insect-monitors',
|
||||||
permission: 'endpoint.insect.index',
|
permission: 'endpoint.insect.index',
|
||||||
|
icon: 'bug-line.png',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '虫情监测',
|
label: '虫情监测',
|
||||||
url: '/pages/index/pests',
|
url: '/pages/index/pests',
|
||||||
permission: 'endpoint.worm_statics.index',
|
permission: 'endpoint.worm_statics.index',
|
||||||
|
icon: 'bug-2-line.png',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '杀虫灯检测',
|
label: '杀虫灯检测',
|
||||||
url: '/pages/index/insecticidal-lamp',
|
url: '/pages/index/insecticidal-lamp',
|
||||||
permission: 'endpoint.insecticidal_lamp.index',
|
permission: 'endpoint.insecticidal_lamp.index',
|
||||||
|
icon: 'alarm-warning-line.png',
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
@ -85,16 +98,19 @@ export default {
|
||||||
label: '城镇数据',
|
label: '城镇数据',
|
||||||
url: '/pages/basics/town-base',
|
url: '/pages/basics/town-base',
|
||||||
permission: 'endpoint.town_street.index',
|
permission: 'endpoint.town_street.index',
|
||||||
|
icon: 'building-4-line.png',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '基地数据',
|
label: '基地数据',
|
||||||
url: '/pages/basics/basics-base',
|
url: '/pages/basics/basics-base',
|
||||||
permission: 'endpoint.agricultural_basic.index',
|
permission: 'endpoint.agricultural_basic.index',
|
||||||
|
icon: 'home-4-line.png',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '基地概况',
|
label: '基地概况',
|
||||||
url: '/pages/basics/profile',
|
url: '/pages/basics/profile',
|
||||||
permission: 'endpoint.agricultural_base_overview.index',
|
permission: 'endpoint.agricultural_base_overview.index',
|
||||||
|
icon: 'home-3-line.png',
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
@ -106,11 +122,13 @@ export default {
|
||||||
label: '城镇农作物',
|
label: '城镇农作物',
|
||||||
url: '/pages/crop/town-crop',
|
url: '/pages/crop/town-crop',
|
||||||
permission: 'endpoint.town_crops.index',
|
permission: 'endpoint.town_crops.index',
|
||||||
|
icon: 'plant-line.png',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '基地农作物',
|
label: '基地农作物',
|
||||||
url: '/pages/crop/basics-crop',
|
url: '/pages/crop/basics-crop',
|
||||||
permission: 'endpoint.crops.index',
|
permission: 'endpoint.crops.index',
|
||||||
|
icon: 'leaf-line.png',
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
@ -122,11 +140,13 @@ export default {
|
||||||
label: '城镇产量',
|
label: '城镇产量',
|
||||||
url: '/pages/yield/town-yield',
|
url: '/pages/yield/town-yield',
|
||||||
permission: 'endpoint.town_crops_output.index',
|
permission: 'endpoint.town_crops_output.index',
|
||||||
|
icon: 'box-1-line.png',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '基地产量',
|
label: '基地产量',
|
||||||
url: '/pages/yield/basics-yield',
|
url: '/pages/yield/basics-yield',
|
||||||
permission: 'endpoint.crops_output.index',
|
permission: 'endpoint.crops_output.index',
|
||||||
|
icon: 'instance-line.png',
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
@ -138,26 +158,31 @@ export default {
|
||||||
label: '稻虾价格',
|
label: '稻虾价格',
|
||||||
url: '/pages/estate/estate-price',
|
url: '/pages/estate/estate-price',
|
||||||
permission: 'endpoint.rice_shrimp_prices.index',
|
permission: 'endpoint.rice_shrimp_prices.index',
|
||||||
|
icon: 'price-tag-3-line.png',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '稻虾每周价格',
|
label: '稻虾每周价格',
|
||||||
url: '/pages/estate/estate-week-price',
|
url: '/pages/estate/estate-week-price',
|
||||||
permission: 'endpoint.rice_shrimp_weekly_prices.index',
|
permission: 'endpoint.rice_shrimp_weekly_prices.index',
|
||||||
|
icon: 'price-tag-2-line.png',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '稻虾产业',
|
label: '稻虾产业',
|
||||||
url: '/pages/estate/estate-industry',
|
url: '/pages/estate/estate-industry',
|
||||||
permission: 'endpoint.rice_shrimp_industries.index',
|
permission: 'endpoint.rice_shrimp_industries.index',
|
||||||
|
icon: 'collage-line.png',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '稻虾流向',
|
label: '稻虾流向',
|
||||||
url: '/pages/estate/estate-flows',
|
url: '/pages/estate/estate-flows',
|
||||||
permission: 'endpoint.rice_shrimp_flows.index',
|
permission: 'endpoint.rice_shrimp_flows.index',
|
||||||
|
icon: 'flow-chart.png',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '大宗物资',
|
label: '大宗物资',
|
||||||
url: '/pages/estate/estate-materiels',
|
url: '/pages/estate/estate-materiels',
|
||||||
permission: 'endpoint.materiels.index',
|
permission: 'endpoint.materiels.index',
|
||||||
|
icon: 'shopping-basket-2-line.png',
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
@ -168,11 +193,13 @@ export default {
|
||||||
label: '设备管理',
|
label: '设备管理',
|
||||||
url: '/pages/device/index',
|
url: '/pages/device/index',
|
||||||
permission: 'endpoint.device.index',
|
permission: 'endpoint.device.index',
|
||||||
|
icon: 'robot-2-line.png',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '警报明细',
|
label: '警报明细',
|
||||||
url: '/pages/device/warning',
|
url: '/pages/device/warning',
|
||||||
permission: 'endpoint.warnings.index',
|
permission: 'endpoint.warnings.index',
|
||||||
|
icon: 'feedback-line.png',
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
@ -181,10 +208,12 @@ export default {
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
...mapGetters(['userInfo']),
|
...mapGetters(['userInfo']),
|
||||||
menus(){
|
menus() {
|
||||||
|
return this.filterAsyncRoutes(
|
||||||
return this.filterAsyncRoutes(this.menuList, this.userInfo?.permissions_slug ?? [])
|
this.menuList,
|
||||||
}
|
this.userInfo?.permissions_slug ?? []
|
||||||
|
)
|
||||||
|
},
|
||||||
},
|
},
|
||||||
onLoad() {},
|
onLoad() {},
|
||||||
methods: {
|
methods: {
|
||||||
|
|
@ -222,11 +251,11 @@ export default {
|
||||||
.banner-section {
|
.banner-section {
|
||||||
.banner_img {
|
.banner_img {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 280rpx;
|
height: 427rpx;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.index-page {
|
.index-page {
|
||||||
background-color: #f8f8f8;
|
background-color: #EEEBFE;
|
||||||
.content-box {
|
.content-box {
|
||||||
padding-top: 30rpx;
|
padding-top: 30rpx;
|
||||||
padding-bottom: 150rpx;
|
padding-bottom: 150rpx;
|
||||||
|
|
@ -239,7 +268,7 @@ export default {
|
||||||
.title-t {
|
.title-t {
|
||||||
margin-bottom: 24rpx;
|
margin-bottom: 24rpx;
|
||||||
padding: 0 10rpx;
|
padding: 0 10rpx;
|
||||||
font-size: 28rpx;
|
font-size: 34rpx;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -251,16 +280,40 @@ export default {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
padding: 0 10rpx;
|
padding: 0 10rpx;
|
||||||
margin-bottom: 18rpx;
|
margin-bottom: 18rpx;
|
||||||
|
|
||||||
.menu_item {
|
.menu_item {
|
||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
box-shadow: 0 0 20rpx rgba(0, 0, 0, 0.15);
|
border-radius: 8rpx;
|
||||||
min-height: 90rpx;
|
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
padding: 10rpx 15rpx;
|
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
padding-top: 100%;
|
||||||
|
position: relative;
|
||||||
|
.menu_item_content {
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
right: 0;
|
||||||
|
bottom: 0;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
padding-top: 24%;
|
||||||
|
.icon {
|
||||||
|
width: 40rpx;
|
||||||
|
height: 40rpx;
|
||||||
|
.icon_img {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.name{
|
||||||
|
font-size: 24rpx;
|
||||||
|
margin-top: 14rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
After Width: | Height: | Size: 873 B |
|
Before Width: | Height: | Size: 54 KiB After Width: | Height: | Size: 1.1 MiB |
|
After Width: | Height: | Size: 992 B |
|
After Width: | Height: | Size: 919 B |
|
After Width: | Height: | Size: 1005 B |
|
After Width: | Height: | Size: 283 B |
|
After Width: | Height: | Size: 699 B |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 408 B |
|
After Width: | Height: | Size: 683 B |
|
After Width: | Height: | Size: 675 B |
|
After Width: | Height: | Size: 661 B |
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 754 B |
|
After Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 1.3 KiB |
|
After Width: | Height: | Size: 953 B |
|
After Width: | Height: | Size: 607 B |
|
After Width: | Height: | Size: 820 B |
|
After Width: | Height: | Size: 647 B |
|
After Width: | Height: | Size: 833 B |