Pārlūkot izejas kodu

农业执法移动端接口对接

wulanhaote
庞东旭 pirms 3 gadiem
vecāks
revīzija
c6e84ec0c2
3 mainītis faili ar 174 papildinājumiem un 79 dzēšanām
  1. +44
    -0
      src/api/lawEnforcement/index.js
  2. +89
    -31
      src/views/lawEnforcement/index.vue
  3. +41
    -48
      src/views/lawEnforcement/products/productsList.vue

+ 44
- 0
src/api/lawEnforcement/index.js Parādīt failu

@@ -0,0 +1,44 @@
import request from '@/utils/request'

//查询当前系统最高级的deptId
export function getTopDeptId(query) {
return request({
url: '/enforce/website/getTopDeptId',
method: 'get',
params: query
})
}

//查询新闻管理列表固定条数
export function news(number,deptId,limit) {
return request({
url: '/enforce/website/news/'+number+'/'+deptId+'/'+limit,
method: 'get'
})
}

//查询方案公开固定条数
export function scheme(deptId,limit) {
return request({
url: '/enforce/website/scheme/'+deptId+'/'+limit,
method: 'get'
})
}

//查询举报留言
export function communicate(query) {
return request({
url: '/enforce/website/communicate/list',
method: 'get',
params: query
})
}

//查询农用品管理列表
export function productList(query) {
return request({
url: '/enforce/website/product/list',
method: 'get',
params: query
})
}

+ 89
- 31
src/views/lawEnforcement/index.vue Parādīt failu

@@ -10,43 +10,37 @@
<van-tabs type="card" animated> <van-tabs type="card" animated>
<van-tab title="工作动态"> <van-tab title="工作动态">
<van-swipe class="my-swipe" :autoplay="3000" height="128" indicator-color="white"> <van-swipe class="my-swipe" :autoplay="3000" height="128" indicator-color="white">
<van-swipe-item>
<van-image src="../../../static/images/lawEnforcement/banner.png" height="128" />
<p class="bannerTit">标题标题标题标题标题标题标题</p>
<van-swipe-item v-for="(item , index) in workImgList" :key="index">
<van-image :src="item.img" height="128" />
<p class="bannerTit">{{item.title}}</p>
</van-swipe-item> </van-swipe-item>
</van-swipe> </van-swipe>
<van-cell-group> <van-cell-group>
<van-cell title="标题标题标题标题标" value="2021.11.12" />
<van-cell title="标题标题标题标题标" value="2021.11.12" />
<van-cell title="标题标题标题标题标" value="2021.11.12" />
<van-cell v-for="(item , index) in workList" :key="index" :title="item.title" :value="item.newsTime" />
<van-cell title="查看更多>" style="text-align: center" to="/lawEnforcement/work" /> <van-cell title="查看更多>" style="text-align: center" to="/lawEnforcement/work" />
</van-cell-group> </van-cell-group>
</van-tab> </van-tab>
<van-tab title="通知公告"> <van-tab title="通知公告">
<van-swipe class="my-swipe" :autoplay="3000" height="128" indicator-color="white"> <van-swipe class="my-swipe" :autoplay="3000" height="128" indicator-color="white">
<van-swipe-item>
<van-image src="../../../static/images/lawEnforcement/banner.png" height="128" />
<p class="bannerTit">标题标题标题标题标题标题标题</p>
<van-swipe-item v-for="(item , index) in noticeImgList" :key="index">
<van-image :src="item.img" height="128" />
<p class="bannerTit">{{item.title}}</p>
</van-swipe-item> </van-swipe-item>
</van-swipe> </van-swipe>
<van-cell-group> <van-cell-group>
<van-cell title="标题标题标题标题标" value="2021.11.12" />
<van-cell title="标题标题标题标题标" value="2021.11.12" />
<van-cell title="标题标题标题标题标" value="2021.11.12" />
<van-cell v-for="(item , index) in noticeList" :key="index" :title="item.title" :value="item.newsTime" />
<van-cell title="查看更多>" style="text-align: center" /> <van-cell title="查看更多>" style="text-align: center" />
</van-cell-group> </van-cell-group>
</van-tab> </van-tab>
<van-tab title="执法依据"> <van-tab title="执法依据">
<van-swipe class="my-swipe" :autoplay="3000" height="128" indicator-color="white"> <van-swipe class="my-swipe" :autoplay="3000" height="128" indicator-color="white">
<van-swipe-item>
<van-image src="../../../static/images/lawEnforcement/banner.png" height="128" />
<p class="bannerTit">标题标题标题标题标题标题标题</p>
<van-swipe-item v-for="(item , index) in enforcementImgList" :key="index">
<van-image :src="item.img" height="128" />
<p class="bannerTit">{{item.title}}</p>
</van-swipe-item> </van-swipe-item>
</van-swipe> </van-swipe>
<van-cell-group> <van-cell-group>
<van-cell title="标题标题标题标题标" value="2021.11.12" />
<van-cell title="标题标题标题标题标" value="2021.11.12" />
<van-cell title="标题标题标题标题标" value="2021.11.12" />
<van-cell v-for="(item , index) in enforcementList" :key="index" :title="item.title" :value="item.newsTime" />
<van-cell title="查看更多>" style="text-align: center" /> <van-cell title="查看更多>" style="text-align: center" />
</van-cell-group> </van-cell-group>
</van-tab> </van-tab>
@@ -89,11 +83,7 @@
<span class="custom-title">执法方案<i class="bgBlue"></i></span> <span class="custom-title">执法方案<i class="bgBlue"></i></span>
</template> </template>
</van-cell> </van-cell>

<van-cell title="标题标题标题标题标" value="2021.11.12"></van-cell>
<van-cell title="标题标题标题标题标" value="2021.11.12"></van-cell>
<van-cell title="标题标题标题标题标" value="2021.11.12"></van-cell>
<van-cell title="标题标题标题标题标" value="2021.11.12"></van-cell>
<van-cell v-for="(item , index) in schemeList" :key="index" :title="item.schemeName" :value="item.applyTime"></van-cell>
</van-cell-group> </van-cell-group>


<van-cell-group class="listBox"> <van-cell-group class="listBox">
@@ -103,18 +93,14 @@
<span class="custom-title">投诉建议<i class="bgBlue"></i></span> <span class="custom-title">投诉建议<i class="bgBlue"></i></span>
</template> </template>
</van-cell> </van-cell>

<van-cell title="标题标题标题标题标" value="2021.11.12"></van-cell>
<van-cell title="标题标题标题标题标" value="2021.11.12"></van-cell>
<van-cell title="标题标题标题标题标" value="2021.11.12"></van-cell>
<van-cell title="标题标题标题标题标" value="2021.11.12"></van-cell>
<van-cell v-for="(item , index) in communicateList" :key="index" :title="item.title" :value="item.replyTime"></van-cell>
</van-cell-group> </van-cell-group>
<div style="height: 20PX"></div> <div style="height: 20PX"></div>
<law></law> <law></law>
</div> </div>
</template> </template>
<script> <script>
import { newList } from "@/api/index";
import { getTopDeptId , news , scheme , communicate } from "@/api/lawEnforcement/index";
import law from "@/components/common/law_footer"; import law from "@/components/common/law_footer";
export default { export default {
name: "index", name: "index",
@@ -137,13 +123,71 @@ export default {
//新闻集合 //新闻集合
newList:[], newList:[],
//轮播图集合 //轮播图集合
bannerList:''
bannerList:'',
//工作动态
workList:[],
//工作动态图片集合
workImgList:[],
//通知公告
noticeList:[],
//通知公告图片集合
noticeImgList:[],
//执法依据
enforcementList:[],
//执法依据图片集合
enforcementImgList:[],
//执法方案
schemeList:[],
//投诉建议
communicateList:[],
}; };
}, },
created() { created() {

this.getDeptId();
}, },
methods: { methods: {
getDeptId(){
getTopDeptId().then(response => {
this.getNewList(response.data);
})
},
getNewList(deptId){
news('003',deptId,3).then(response => {
this.workList = response.data;
for (var i = 0; i < response.data.length; i++) {
var imgStrs = response.data[i].content.match(/<img.*?>/g);
var title = response.data[i].title;
var id = response.data[i].id;
console.log(imgStrs[0])
if (imgStrs != null && imgStrs != '') {
this.workImgList.push({img:imgStrs[0].substr(10,imgStrs[0].length-12),title:title,id:id})
}
}
});
news('001',deptId,3).then(response => {
this.noticeList = response.data;
});
news('002',deptId,3).then(response => {
this.enforcementList = response.data;
});
scheme(deptId,4).then(response => {
console.log(response)
this.schemeList = response.data;
})
var query = {
deptId:deptId,
pageNum:1,
pageSize:4
};
communicate(query).then(response => {
for (var i = 0 ; i < response.rows.length ; i++){
response.rows[i].replyTime = response.rows[i].replyTime == '' ? '' : response.rows[i].replyTime.substr(0,10);
console.log(response.rows[i].replyTime.substr(0,10))
this.communicateList.push(response.rows[i])
}
})
},

getList(){ getList(){
this.loading = true; this.loading = true;
this.queryParams.number = 2 ; this.queryParams.number = 2 ;
@@ -202,6 +246,20 @@ export default {
} }
.van-cell__title{ .van-cell__title{
color: #666666; color: #666666;
flex: 0.7;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1;
word-break: break-all;
overflow: hidden;
}
.van-cell__value{
flex: 0.3;
}
.van-tabs{
.van-cell__title:last-child{
flex: 1;
}
} }
.listBox{ .listBox{
width: 96%; width: 96%;


+ 41
- 48
src/views/lawEnforcement/products/productsList.vue Parādīt failu

@@ -56,28 +56,34 @@
</van-row> </van-row>
</van-action-sheet> </van-action-sheet>
<van-list <van-list
v-model="loading"
:finished="finished"
finished-text="没有更多了" finished-text="没有更多了"
@load="getList"
> >
<van-swipe-cell v-for="(item,index) in 10" :key="index">
<van-cell title="农药名称名称名称" :value="22222" center>
<template #icon>
<van-icon name="../../../static/images/lawEnforcement/icon/icon_nypk.png" size="30" color="#539FFD" style="margin-right: 10px;" />
</template>
<template #label>
<p>4232342<i style="margin-right: 0.5rem;"></i>山西齐药有限公司</p>
</template>
<template #default>
<p style="color: #1D6FE9;">除虫剂<i style="margin-right: 0.2rem;"></i>除虫剂</p>
<p>2022-06-30</p>
</template>
</van-cell>
<van-swipe-cell v-for="(item,index) in newList" :key="index">
<div class="tabsBox">
<van-cell :title="item.productName" center>
<template #icon>
<van-icon name=".../../../static/images/lawEnforcement/icon/icon_nypk.png" size="36" color="#539FFD" style="margin-right: 10px;" />
</template>
<template #default>
<p style="color: #1D6FE9;">{{item.content}}克/升</p>
</template>
</van-cell>
<van-cell title="登记证号" :value="item.recordCode" center/>
<van-cell title="农药类别" :value="item.category" center/>
<van-cell title="剂型" :value="item.agent" center/>
<van-cell title="有效期至" :value="item.effectiveDate" center/>
<van-cell title="登记证持有人" :value="item.recordHolder" center/>
</div>
</van-swipe-cell> </van-swipe-cell>
</van-list> </van-list>
<law></law> <law></law>
</div> </div>
</template> </template>
<script> <script>
import { newList } from "@/api/index";
import { productList , getTopDeptId } from "@/api/lawEnforcement/index";
import law from "@/components/common/law_footer"; import law from "@/components/common/law_footer";
export default { export default {
name: "index", name: "index",
@@ -98,7 +104,6 @@ export default {
pageNum: 1, pageNum: 1,
pageSize: 5, pageSize: 5,
deptId:100, deptId:100,
number:2
}, },
//新闻集合 //新闻集合
newList:[], newList:[],
@@ -107,22 +112,20 @@ export default {
}; };
}, },
created() { created() {
this.getDeptId();
}, },
methods: { methods: {
getDeptId(){
getTopDeptId().then(response => {
this.queryParams.deptId = response.data;
this.getList();
})
},
getList(){ getList(){
this.loading = true; this.loading = true;
this.queryParams.number = 2 ;
this.queryParams.pageSize = 5 ;
newList(this.queryParams).then(response => {
for (var i = 0; i < response.rows.length; i++) {
this.newList.push(response.rows[i]);
var imgStrs = response.rows[i].content.match(/<IMG src=\"([^\"]*?)\">/gi)
if (imgStrs != null && imgStrs != '') {
this.newList[i].img = imgStrs[0].substr(10,(imgStrs[0].length-12));
}
}
console.log(this.newList)

productList(this.queryParams).then(response => {
this.newList = response.rows;
if(this.newList.length >= response.total){ if(this.newList.length >= response.total){
this.finished = true; this.finished = true;
return; return;
@@ -131,25 +134,6 @@ export default {
this.loading = false; this.loading = false;
}); });
}, },
getBanner(){
this.loading = true;
this.queryParams.number = 1 ;
this.queryParams.pageSize = 5 ;
newList(this.queryParams).then(response => {
this.bannerList = response.rows;
for (var i = 0; i < response.rows.length; i++) {
var imgStrs = response.rows[i].content.match(/<IMG src=\"([^\"]*?)\">/gi)
if (imgStrs != null && imgStrs != '') {
this.bannerList[i].img = imgStrs[0].substr(10,(imgStrs[0].length-12));
}
}
this.loading = false;
});
},
goDetail(id){
console.log(id)
window.location = 'news/newDetail?id='+id;
}
}, },
}; };
</script> </script>
@@ -230,7 +214,7 @@ export default {
background: url("../../../../static/images/lawEnforcement/head_bg.png") 100%; background: url("../../../../static/images/lawEnforcement/head_bg.png") 100%;
} }
/deep/.van-cell__title{ /deep/.van-cell__title{
flex: 0.65;
flex: 1;
} }
/deep/.van-cell__title span{ /deep/.van-cell__title span{
font-family: Arial; font-family: Arial;
@@ -238,7 +222,8 @@ export default {
font-weight: normal; font-weight: normal;
} }
/deep/.van-cell__value{ /deep/.van-cell__value{
flex: 0.35;
color: #333333;
flex: 1.2;
} }
/deep/ .van-nav-bar__title{ /deep/ .van-nav-bar__title{
display: flex; display: flex;
@@ -326,4 +311,12 @@ export default {
line-height: inherit; line-height: inherit;
margin-left: 10px; margin-left: 10px;
} }
.tabsBox{
/deep/.van-row{
margin-top: 15PX;
.van-col{
font-size: 0.4rem;
}
}
}
</style> </style>

Notiek ielāde…
Atcelt
Saglabāt