Browse Source

农业执法移动端问题修改

wulanhaote
庞东旭 3 years ago
parent
commit
75840b554b
12 changed files with 181 additions and 51 deletions
  1. +17
    -0
      src/api/lawEnforcement/index.js
  2. +5
    -1
      src/permission.js
  3. +3
    -2
      src/utils/request.js
  4. +10
    -1
      src/views/lawEnforcement/case/caseDetail.vue
  5. +25
    -23
      src/views/lawEnforcement/complaint/complaintList.vue
  6. +1
    -1
      src/views/lawEnforcement/complaint/indexComplaint.vue
  7. +4
    -4
      src/views/lawEnforcement/index.vue
  8. +65
    -5
      src/views/lawEnforcement/programme/programmeList.vue
  9. +17
    -7
      src/views/lawEnforcement/user/index.vue
  10. +5
    -2
      src/views/lawEnforcement/user/waitingProcessing.vue
  11. +18
    -2
      src/views/lawEnforcement/workDynamics/workDetail.vue
  12. +11
    -3
      src/views/lawEnforcement/workDynamics/workList.vue

+ 17
- 0
src/api/lawEnforcement/index.js View File

@@ -34,6 +34,15 @@ export function communicate(query) {
})
}

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

//查询农用品管理列表
export function productList(query) {
return request({
@@ -43,6 +52,14 @@ export function productList(query) {
})
}

// 删除方案管理
export function delScheme(id) {
return request({
url: '/enforce/scheme/remove/' + id,
method: 'get'
})
}

//查询新闻管理列表分页
export function newsList(query) {
return request({


+ 5
- 1
src/permission.js View File

@@ -91,6 +91,8 @@ router.beforeEach((to, from, next) => {
next({ path: '/homestead/login' })
} else if (to.path.indexOf('/onlineHome') !== -1) {
next(`/onlineHomeLogin`)
} else if (to.path.indexOf('/lawEnforcement') !== -1) {
next(`//lawEnforcement/login`)
} else {
next({ path: '/' })
}
@@ -113,7 +115,9 @@ router.beforeEach((to, from, next) => {
next(`/homestead/login?redirect=${to.fullPath}`)
} else if (to.path.indexOf('/onlineHome') !== -1) {
next(`/onlineHomeLogin`)
} else {
} else if (to.path.indexOf('/lawEnforcement') !== -1) {
next(`/lawEnforcement/login?redirect=${to.fullPath}`)
} else {
next(`/login?redirect=${to.fullPath}`)
}



+ 3
- 2
src/utils/request.js View File

@@ -61,7 +61,6 @@ service.interceptors.response.use(res => {
// 获取错误信息
const msg = errorCode[code] || res.data.msg || errorCode['default']
if (code === 401) {

Dialog.confirm({
title: '系统提示',
message: '登录状态已过期,您可以继续留在该页面,或者重新登录',
@@ -70,7 +69,9 @@ service.interceptors.response.use(res => {
})
.then(() => {
store.dispatch('LogOut').then(() => {
if ('/authenticRight/index'.indexOf(to.path) !== -1) {
if(window.location.href.indexOf('lawEnforcement') != -1){
location.href = '/lawEnforcement/login';
} else if ('/authenticRight/index'.indexOf(to.path) !== -1) {
location.href = '/authenticRight/login';
} else if ('/homestead/index'.indexOf(to.path) !== -1) {
location.href = '/homestead/login';


+ 10
- 1
src/views/lawEnforcement/case/caseDetail.vue View File

@@ -39,7 +39,7 @@
<span class="custom-title">案件信息<i class="bgBlue"></i></span>
</template>
</van-cell>
<van-cell title="案件编码" :value="form.caseNum"/>
<van-cell title="案件编号" :value="form.caseNumPart1 + '农' + form.caseNumPart2 + '[' + form.caseNumPart3 + ']' +form.caseNum + '号'"/>
<van-cell title="案件名称" :value="form.caseName"/>
<van-cell title="登记日期" :value="form.registerDate" right-icon="calendar-o" />
<van-cell title="执法类别" :value="form.enforceCategory"/>
@@ -1560,6 +1560,9 @@ export default {
}).then((response) => {
if (response.code == 200 && response.msg == "操作成功") {
this.$notify({ type: 'success' , message: "操作成功" });
setTimeout(function () {
history.back(-1);
},1000)
} else {
this.$notify({ type: 'danger' , message: "操作失败" });
}
@@ -1583,6 +1586,9 @@ export default {
}).then((response) => {
if (response.code == 200 && response.msg == "操作成功") {
this.$notify({ type: 'success' , message: "操作成功" });
setTimeout(function () {
history.back(-1);
},1000)
} else {
this.$notify({ type: 'danger' , message: "操作失败" });
}
@@ -1606,6 +1612,9 @@ export default {
}).then((response) => {
if (response.code == 200 && response.msg == "操作成功") {
this.$notify({ type: 'success' , message: "操作成功" });
setTimeout(function () {
history.back(-1);
},1000)
} else {
this.$notify({ type: 'danger' , message: "操作失败" });
}


+ 25
- 23
src/views/lawEnforcement/complaint/complaintList.vue View File

@@ -16,7 +16,7 @@
@load="getNewList"
>
<div class="tabsBox" v-for="(item,index) in schemeList" :key="index">
<van-cell :title="item.name" :label="item.reply ? '已回复 · ' + item.replyTime:'待回复 '" center :to="{name:'programmeDetail'}">
<van-cell :title="item.name" :label="item.reply ? '已回复 · ' + item.replyTime:'待回复 '" center>
<template #icon>
<van-icon name="../../../static/images/lawEnforcement/12.jpg" size="36" color="#539FFD" style="margin-right: 10px;border-radius: 50%;overflow: hidden;" />
</template>
@@ -64,7 +64,7 @@
@load="getNewList"
>
<div class="tabsBox" v-for="(item,index) in schemeList" v-if="!item.replyTime" :key="index">
<van-cell :title="item.name" :label="item.reply ? '已回复 · ' + item.replyTime:'待回复 '" center :to="{name:'programmeDetail'}">
<van-cell :title="item.name" :label="item.reply ? '已回复 · ' + item.replyTime:'待回复 '" center>
<template #icon>
<van-icon name="../../../static/images/lawEnforcement/12.jpg" size="36" color="#539FFD" style="margin-right: 10px;border-radius: 50%;overflow: hidden;" />
</template>
@@ -112,7 +112,7 @@
@load="getNewList"
>
<div class="tabsBox" v-for="(item,index) in schemeList" v-if="item.replyTime" :key="index">
<van-cell :title="item.name" :label="item.reply ? '已回复 · ' + item.replyTime:'待回复 '" center :to="{name:'programmeDetail'}">
<van-cell :title="item.name" :label="item.reply ? '已回复 · ' + item.replyTime:'待回复 '" center >
<template #icon>
<van-icon name="../../../static/images/lawEnforcement/12.jpg" size="36" color="#539FFD" style="margin-right: 10px;border-radius: 50%;overflow: hidden;" />
</template>
@@ -156,17 +156,22 @@
</div>
</template>
<script>
import { getTopDeptId , schemeDetail,communicate } from "@/api/lawEnforcement/index";
import { getTopDeptId , schemeDetail,listCommunicate } from "@/api/lawEnforcement/index";
export default {
name: "index",
data() {
return {
active:0,
//查询参数
// 查询参数
queryParams: {
// 分页
pageNum: 1,
pageSize: 5,
deptId:100,
pageSize: 10,
// 查询排序
orderByColumn: "id",
isAsc: "desc",
title: null,
communicateType: null,
},
schemeList:[],
//是否显示加载
@@ -185,22 +190,19 @@ export default {
methods: {
getNewList(){
this.loading = true;
getTopDeptId().then(response => {
this.queryParams.deptId = response.data ;
communicate(this.queryParams).then(response => {
console.log(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);
response.rows[i].communicateType = this.selectDictLabel(this.communicateOptions,response.rows[i].communicateType)
this.schemeList.push(response.rows[i]);
}
if(this.schemeList.length >= response.total){
this.finished = true;
return;
}
this.queryParams.pageNum += 1 ;
this.loading = false;
})
listCommunicate(this.queryParams).then(response => {
console.log(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);
response.rows[i].communicateType = this.selectDictLabel(this.communicateOptions,response.rows[i].communicateType)
this.schemeList.push(response.rows[i]);
}
if(this.schemeList.length >= response.total){
this.finished = true;
return;
}
this.queryParams.pageNum += 1 ;
this.loading = false;
})
},
},


+ 1
- 1
src/views/lawEnforcement/complaint/indexComplaint.vue View File

@@ -14,7 +14,7 @@
@load="getNewList"
>
<div class="tabsBox" v-for="(item,index) in schemeList" :key="index" :id="index">
<van-cell :title="item.name" :label="'待回复 · ' + item.replyTime" center :to="{name:'programmeDetail'}">
<van-cell :title="item.name" :label="'待回复 · ' + item.replyTime" center>
<template #icon>
<van-icon name="../../../static/images/lawEnforcement/12.jpg" size="36" color="#539FFD" style="margin-right: 10px;border-radius: 50%;overflow: hidden;" />
</template>


+ 4
- 4
src/views/lawEnforcement/index.vue View File

@@ -17,19 +17,19 @@
<van-tabs type="card" animated>
<van-tab title="工作动态">
<van-cell-group>
<van-cell v-for="(item , index) in workList" :key="index" :title="item.title" :value="item.newsTime" :to="{name:'workDetail',query:{id:item.id}}" />
<van-cell v-for="(item , index) in workList" :key="index" :title="item.title" :value="item.newsTime" :to="{name:'workDetail',query:{id:item.id,type:'work'}}" />
<van-cell title="查看更多>" style="text-align: center" :to="{name:'work',query:{type:'work'}}" />
</van-cell-group>
</van-tab>
<van-tab title="通知公告">
<van-cell-group>
<van-cell v-for="(item , index) in noticeList" :key="index" :title="item.title" :value="item.newsTime" :to="{name:'workDetail',query:{id:item.id}}" />
<van-cell v-for="(item , index) in noticeList" :key="index" :title="item.title" :value="item.newsTime" :to="{name:'workDetail',query:{id:item.id,type:'notice'}}" />
<van-cell title="查看更多>" style="text-align: center" :to="{name:'work',query:{type:'notice'}}" />
</van-cell-group>
</van-tab>
<van-tab title="执法依据">
<van-cell-group>
<van-cell v-for="(item , index) in enforcementList" :key="index" :title="item.title" :value="item.newsTime" :to="{name:'workDetail',query:{id:item.id}}" />
<van-cell v-for="(item , index) in enforcementList" :key="index" :title="item.title" :value="item.newsTime" :to="{name:'workDetail',query:{id:item.id,type:'enforcement'}}" />
<van-cell title="查看更多>" style="text-align: center" :to="{name:'work',query:{type:'enforcement'}}" />
</van-cell-group>
</van-tab>
@@ -125,7 +125,7 @@ export default {
getDeptId(){
getTopDeptId().then(response => {
this.getNewList(response.data);
this.getTaskList();
// this.getTaskList();
})
},
getNewList(deptId){


+ 65
- 5
src/views/lawEnforcement/programme/programmeList.vue View File

@@ -46,16 +46,16 @@
<van-button square type="info" :to="{name:'programmeApproval', query: {id:item.instanceId}}" class="delete-button">审批<br/>历史</van-button>
</van-col>
<van-col>
<van-button v-if=" item.applyStatus == '申请中' && ( item.taskName == '已撤销' || item.taskName == '未启动' ) " square type="info" color="#1DCC80" :to="{name:'paymentAccountModify', query: {id:item.id}}" class="delete-button">提交<br/>申请</van-button>
<van-button v-if=" item.applyStatus == '申请中' && ( item.taskName == '已撤销' || item.taskName == '未启动' ) " square type="info" color="#1DCC80" @click="handleApply(item.id)" class="delete-button">提交<br/>申请</van-button>
</van-col>
<van-col>
<van-button v-if="user == '1'" square text="撤销" type="info" color="#FF8900" :to="{name:'paymentAccountModify', query: {id:item.id}}" class="delete-button" />
<van-button v-if="user == '1'" square text="撤销" @click="handleCancel(item)" type="info" color="#FF8900" class="delete-button" />
</van-col>
<van-col>
<van-button v-if=" item.applyStatus == '申请中' && ( item.taskName == '已撤销' || item.taskName == '未启动' ) " square text="修改" type="info" :to="{name:'programmeModify', query: {id:item.id}}" class="delete-button" />
</van-col>
<van-col>
<van-button v-if=" item.applyStatus == '申请中' && ( item.taskName == '已撤销' || item.taskName == '未启动' ) " square text="删除" type="danger" class="delete-button" />
<van-button v-if=" item.applyStatus == '申请中' && ( item.taskName == '已撤销' || item.taskName == '未启动' ) " square text="删除" type="danger" @click="handleDelete(item)" class="delete-button" />
</van-col>
</van-row>
</template>
@@ -64,7 +64,9 @@
</div>
</template>
<script>
import { listScheme , getUserProfile } from "@/api/lawEnforcement/index";
import { listScheme , getUserProfile , delScheme } from "@/api/lawEnforcement/index";
import request from '@/utils/request'
import {Dialog} from "vant";
export default {
name: "index",
data() {
@@ -91,6 +93,7 @@ export default {
},
//方案管理表格数据
schemeList:[],
requestMapping: '/enforce/scheme'
};
},
created() {
@@ -105,9 +108,9 @@ export default {
getList(){
this.loading = true;
listScheme(this.queryParams).then(response => {
this.schemeList = response.rows;
for (var i = 0 ; i < response.rows.length ; i++){
response.rows[i].applyStatus = this.selectDictLabel(this.applyStatusOptions, response.rows[i].applyStatus);
this.schemeList.push(response.rows[i]);
}
if(this.schemeList.length >= response.total){
this.finished = true;
@@ -123,6 +126,63 @@ export default {
this.schemeList = [];
this.getList();
},
handleApply(id) {
const requestMapping = this.requestMapping;
Dialog.confirm({
title: '系统提示',
message: '是否提交ID为"' + id + '"的申请单据?',
confirmButtonText: '确定',
cancelButtonText: '取消'
}).then(function() {
return request({
url: requestMapping + '/submitApply/' + id,
method: 'post',
});
}).then(() => {
this.$notify({ type: 'success' , message: "申请成功" });
location.reload(true);
})
},
handleCancel(row) {
console.log(row);
const instanceId = row.instanceId;
Dialog.confirm({
title: '系统提示',
message: '是否确认撤销ID为"' + instanceId + '"的流程实例?',
confirmButtonText: '确定',
cancelButtonText: '取消'
})
.then(function () {
const data = { instanceId: instanceId };
return request({
url: "/activiti/process/cancelApply",
method: "post",
params: data,
});
})
.then((response) => {
// 其他模块用到以下两行代码,请勿删除!
this.$notify({ type: 'success' , message: "操作成功" });
location.reload(true);
})
.catch(function () {});
},
handleDelete(row) {
const ids = row.id || this.ids;
Dialog.confirm({
title: '系统提示',
message: '是否确认删除方案信息标识为"' + row.instanceId + '"的数据项?',
confirmButtonText: '确定',
cancelButtonText: '取消'
})
.then(function() {
return delScheme(ids);
}).then(() => {
this.$notify({ type: 'success' , message: "删除成功" });
location.reload(true);
}).catch(() => {});
},

},
};
</script>


+ 17
- 7
src/views/lawEnforcement/user/index.vue View File

@@ -4,10 +4,10 @@
<van-nav-bar title="我的" fixed placeholder/>
<van-row class="userInformation" v-if="user">
<van-col :span="24">
<p class="userName">{{user.nickName}}<span style="font-size: 0.4rem;float: right;">{{roleGroup}}</span></p>
<p class="userName" v-if="user">{{user.nickName}}<span style="font-size: 0.4rem;float: right;">{{roleGroup}}</span></p>
<!-- <i style="margin-right: 0.5rem;"></i>-->
<p class="userDept">{{user.dept.deptName}}</p>
<p class="userDept">{{postGroup}}</p>
<p class="userDept" v-if="user">{{user.dept.deptName}}</p>
<p class="userDept" v-if="user">{{postGroup}}</p>
</van-col>
</van-row>
</div>
@@ -22,7 +22,7 @@
<van-cell
v-for="(item,index) in taskList"
:key="index"
:value="item.formData.createTime == null ? '' : item.formData.createTime.substr(0,10)"
:value="item.formData.createTime == null ? '' : item.formData.createTime.substr(5,5)"
:to="{
name:item.formData.activityBusinessType == '21' ? 'schemeDetail':'caseDetail',
query:{
@@ -33,7 +33,7 @@
}"
>
<template #title>
<span class="tap">{{selectDictLabel(activityBusinessTypeOptions,item.formData.activityBusinessType)}}</span>
<span class="tap">{{selectDictLabel(activityBusinessTypeOptions,item.formData.activityBusinessType).substr(2,2)}}</span>
<span>{{item.projectName}}</span>
</template>
</van-cell>
@@ -73,7 +73,7 @@
</template>
</van-cell>
</van-cell-group>
<van-button type="default" class="loginOut">退出登录</van-button>
<van-button type="default" class="loginOut" @click="loginOut">退出登录</van-button>
<law></law>
</div>
</template>
@@ -115,10 +115,20 @@ export default {
this.getUser();
this.getTaskList();
},
activated: function () {
this.getDicts("activity_business_type").then((response) => {
this.activityBusinessTypeOptions = response.data;
});
this.getUser();
this.getTaskList();//数据加载的方法
},
methods: {
loginOut(){
logout().then(response => {
location.reload(true);
console.log(response);
this.$router.push({
path: '/lawEnforcement'
})
});
},
getUser() {


+ 5
- 2
src/views/lawEnforcement/user/waitingProcessing.vue View File

@@ -7,6 +7,9 @@
left-arrow
@click-left="onClickLeft"
/>



<van-dropdown-menu>
<van-dropdown-item v-model="queryParamsTask.activityBusinessType" :options="typeOptions" @change="getTaskList" />
<van-dropdown-item v-model="queryParamsTask.isAsc" :options="option" @change="getTaskList" />
@@ -22,7 +25,7 @@
<van-cell
v-for="(item,index) in taskList"
:key="index"
:value="item.formData.createTime == null ? '' : item.formData.createTime.substr(0,10)"
:value="item.formData.createTime == null ? '' : item.formData.createTime.substr(5,5)"
:to="{
name:item.formData.activityBusinessType == '21' ? 'schemeDetail':'caseDetail',
query:{
@@ -33,7 +36,7 @@
}"
>
<template #title>
<span class="tap">{{selectDictLabel(activityBusinessTypeOptions,item.formData.activityBusinessType)}}</span>
<span class="tap">{{selectDictLabel(activityBusinessTypeOptions,item.formData.activityBusinessType).substr(2,2)}}</span>
<span>{{item.projectName}}</span>
</template>
</van-cell>


+ 18
- 2
src/views/lawEnforcement/workDynamics/workDetail.vue View File

@@ -1,7 +1,7 @@
<template>
<div class="app-container">
<van-nav-bar
title="工作动态"
:title="title"
fixed
placeholder
left-arrow
@@ -42,11 +42,27 @@ export default {
newList:[],
//轮播图集合
bannerList:'',
title:'',
detail:[]
};
},
created() {
this.goDetail();
var type = this.$route.query.type ;
if (type == 'work'){
this.queryParams.number = '003'
this.title = '工作动态'
this.goDetail();
}
if (type == 'notice'){
this.queryParams.number = '001'
this.title = '通知公告'
this.goDetail();
}
if (type == 'enforcement'){
this.queryParams.number = '002'
this.title = '执法依据'
this.goDetail();
}
},
methods: {
goDetail(){


+ 11
- 3
src/views/lawEnforcement/workDynamics/workList.vue View File

@@ -1,7 +1,7 @@
<template>
<div class="app-container">
<van-nav-bar
title="工作动态"
:title="title"
fixed
placeholder
left-arrow
@@ -19,7 +19,7 @@
:key="index"
:title="pageType == 'scheme' ? item.schemeName : item.title"
:value="pageType == 'scheme' ? item.applyTime : item.newsTime"
:to="{name:pageType == 'scheme' ? 'schemeDetail':'workDetail',query:{id:item.id}}"
:to="{name:pageType == 'scheme' ? 'schemeDetail':'workDetail',query:{id:item.id,type:pageType}}"
/>
</van-cell-group>
</van-list>
@@ -50,7 +50,8 @@ export default {
workList:[],
//轮播图集合
bannerList:'',
pageType:''
pageType:'',
title:'',
};
},
created() {
@@ -58,14 +59,21 @@ export default {
this.pageType = this.$route.query.type;
if (type == 'work'){
this.queryParams.number = '003'
this.title = '工作动态'
this.getDeptId();
}
if (type == 'notice'){
this.queryParams.number = '001'
this.title = '通知公告'
this.getDeptId();
}
if (type == 'enforcement'){
this.queryParams.number = '002'
this.title = '执法依据'
this.getDeptId();
}
if (type == 'scheme'){
this.title = '执法方案'
this.getDeptId();
}
},


Loading…
Cancel
Save