@@ -620,3 +620,73 @@ export function addOnrecord(data) { | |||
data: data | |||
}) | |||
} | |||
// 新增立案信息 | |||
export function addPutrecord(data) { | |||
return request({ | |||
url: '/enforce/putrecord/add', | |||
method: 'post', | |||
data: data | |||
}) | |||
} | |||
// 修改立案信息 | |||
export function updatePutrecord(data) { | |||
return request({ | |||
url: '/enforce/putrecord/edit', | |||
method: 'post', | |||
data: data | |||
}) | |||
} | |||
// 新增抽样信息 | |||
export function addSampling(data) { | |||
return request({ | |||
url: '/enforce/sampling/add', | |||
method: 'post', | |||
data: data | |||
}) | |||
} | |||
// 修改抽样信息 | |||
export function updateSampling(data) { | |||
return request({ | |||
url: '/enforce/sampling/edit', | |||
method: 'post', | |||
data: data | |||
}) | |||
} | |||
// 新增农业执法-案件-取证信息 | |||
export function addEvidence(data) { | |||
return request({ | |||
url: '/enforce/evidence/add', | |||
method: 'post', | |||
data: data | |||
}) | |||
} | |||
// 修改农业执法-案件-取证信息 | |||
export function updateEvidence(data) { | |||
return request({ | |||
url: '/enforce/evidence/edit', | |||
method: 'post', | |||
data: data | |||
}) | |||
} | |||
// 查询处理流程关联办理人员列表 | |||
export function caseHandlerList(query) { | |||
return request({ | |||
url: '/enforce/caseHandler/caseHandlerList', | |||
method: 'get', | |||
params: query | |||
}) | |||
} | |||
// 删除案件登记 | |||
export function delCase(id) { | |||
return request({ | |||
url: '/enforce/case/remove/' + id, | |||
method: 'get' | |||
}) | |||
} |
@@ -2359,15 +2359,15 @@ export const constantRoutes = [ | |||
}, | |||
component: (resolve) => require(['@/views/lawEnforcement/index'], resolve) | |||
}, | |||
{ | |||
path: '/lawEnforcement/caseList', | |||
name: 'caseList', | |||
meta: { | |||
title: '案件', | |||
hidden: true, | |||
}, | |||
component: (resolve) => require(['@/views/lawEnforcement/case/caseList'], resolve) | |||
}, | |||
// { | |||
// path: '/lawEnforcement/caseList', | |||
// name: 'caseList', | |||
// meta: { | |||
// title: '案件', | |||
// hidden: true, | |||
// }, | |||
// component: (resolve) => require(['@/views/lawEnforcement/case/caseList'], resolve) | |||
// }, | |||
{ | |||
path: '/lawEnforcement/productsList', | |||
name: 'caseList', | |||
@@ -3829,15 +3829,25 @@ export const constantRoutes = [ | |||
}, | |||
component: (resolve) => require(['@/views/lawEnforcement/caseAllocation/caseAdd'], resolve) | |||
}, | |||
{ ////农业执法(新)-- 巡查登记 | |||
path: '/lawEnforcement/caseEdit', | |||
name: 'lawEnforcementCaseEdit', | |||
meta: { | |||
title: '登记修改', | |||
hidden: true, | |||
keepAlive: true | |||
}, | |||
component: (resolve) => require(['@/views/lawEnforcement/caseAllocation/caseEdit'], resolve) | |||
}, | |||
{ ////农业执法(新)-- 巡查登记列表 | |||
path: '/lawEnforcement/caseList', | |||
path: '/lawEnforcement/caseListNew', | |||
name: 'lawEnforcementCaseListNew', | |||
meta: { | |||
title: '巡查登记', | |||
title: '登记列表', | |||
hidden: true, | |||
keepAlive: true | |||
}, | |||
component: (resolve) => require(['@/views/lawEnforcement/caseAllocation/caseList'], resolve) | |||
component: (resolve) => require(['@/views/lawEnforcement/caseAllocation/caseListNew'], resolve) | |||
}, | |||
{ ////农业执法(新)-- 记录查看 | |||
path: '/lawEnforcement/taskSignInSee', | |||
@@ -3857,6 +3867,15 @@ export const constantRoutes = [ | |||
keepAlive: true | |||
}, | |||
component: (resolve) => require(['@/views/lawEnforcement/task/taskHandle'], resolve) | |||
}, | |||
{ ////农业执法(新)-- 案件处理 | |||
path: '/lawEnforcement/caseEnforceList', | |||
name: 'lawEnforcementCaseEnforceList', | |||
meta: { | |||
title: '添加执法人员', | |||
hidden: true, | |||
}, | |||
component: (resolve) => require(['@/views/lawEnforcement/caseAllocation/caseEnforceList'], resolve) | |||
} | |||
]; | |||
@@ -260,7 +260,7 @@ | |||
</template> | |||
<p style="color: #FE1313;text-align: center;margin-top: 5PX;font-size: .3rem">*请上传不超过5MB 格式为doc/xls/png/jpg/jpeg的文件</p> | |||
<div class="cf"> | |||
<van-uploader v-model="fileList" multiple /> | |||
<van-uploader v-model="form.attachementList" :after-read="afterReadEvidenceForm" :before-delete="deleteFileEvidenceForm" /> | |||
</div> | |||
</van-collapse-item> | |||
</van-collapse> | |||
@@ -298,7 +298,7 @@ | |||
</div> | |||
<div class="submit_box"> | |||
<p class="submitButton" @click="$refs.form.submit()">保存</p> | |||
<p class="submitButton">保存并打卡</p> | |||
<p class="submitButton" @click="keepSubmit()">保存并提交</p> | |||
</div> | |||
</van-form> | |||
@@ -306,7 +306,7 @@ | |||
</template> | |||
<script> | |||
import { addCase , addProgress , treeselect , schemeList , addSurvey } from "@/api/lawEnforcement/index"; | |||
import { addCase , addProgress , treeselect , schemeList , addSurvey , commonUpload } from "@/api/lawEnforcement/index"; | |||
import Cookies from "js-cookie"; | |||
export default { | |||
name: "programmeDetail", | |||
@@ -404,6 +404,9 @@ | |||
}, | |||
methods: { | |||
goSubmit(){ | |||
if (typeof this.form.attachement != 'string'){ | |||
this.form.attachement = this.form.attachement.join(','); | |||
} | |||
addCase(this.form).then(response => { | |||
if(response.code=="200"){ | |||
var progressParam = { | |||
@@ -484,6 +487,40 @@ | |||
this.birthday = data; | |||
this.showBirthday = false; | |||
}, | |||
keepSubmit(){ | |||
this.form.caseId = this.form.id; | |||
this.form.caseStatus = "1"; | |||
this.form.caseProgress = "2"; // 勘察 | |||
this.form.caseProgressName = this.selectDictLabel(this.caseProgressOptions, this.form.caseProgress); // 勘察 | |||
if (typeof this.form.attachement != 'string'){ | |||
this.form.attachement = this.form.attachement.join(','); | |||
} | |||
var _this = this; | |||
this.$dialog.confirm({ | |||
message: '提交后案件将进入后续流程并且不能修改,是否确认提交?', | |||
}).then(function () { | |||
// 更新案件的节点和状态 | |||
updateCase(_this.form).then(response => { | |||
_this.$notify({ type: 'success', message: '提交成功' }); | |||
setTimeout(function(){ | |||
history.back(-1); | |||
},2000) | |||
}); | |||
}); | |||
}, | |||
afterReadEvidenceForm(file){ | |||
let params1 = new FormData(); | |||
params1.append("file", file.file); | |||
commonUpload(params1).then((r1) => { | |||
// this.tEnforceSamplingGoodsList[index].attachement.push(r1.fileName); | |||
this.form.attachement.push(r1.fileName) | |||
}) | |||
}, | |||
deleteFileEvidenceForm(file,detail) { | |||
this.form.attachement.splice(detail.index,1); | |||
this.form.attachementList.splice(detail.index,1); | |||
}, | |||
}, | |||
watch: { | |||
$route (to, from ) { | |||
@@ -28,7 +28,7 @@ | |||
<template #label> | |||
<p>{{item.caseSource}}</p> | |||
<p>第{{item.belongTeam}}</p> | |||
<p>{{item.surveyStartTime}}</p> | |||
<p>{{item.shouanDate}}</p> | |||
</template> | |||
</van-cell> | |||
<template #right> | |||
@@ -58,20 +58,8 @@ | |||
<span class="custom-title">附件<i class="bgBlue"></i></span> | |||
</template> | |||
<div class="cf"> | |||
<van-row> | |||
<van-col :span="6"> | |||
<van-image src="../../../../static/images/lawEnforcement/icon/icon_fj.png" width="50" /> | |||
<p>产品确认</p> | |||
<p>通知书</p> | |||
</van-col> | |||
<van-col :span="6"> | |||
<van-image src="../../../../static/images/lawEnforcement/icon/icon_fj.png" width="50" /> | |||
<p>产品确认</p> | |||
<p>通知书</p> | |||
</van-col> | |||
<van-col :span="6"></van-col> | |||
<van-col :span="6"></van-col> | |||
</van-row> | |||
<van-uploader v-model="form.attachementList" :show-upload="false" :deletable="false" /> | |||
<van-empty v-if="form.attachement == null " description="暂无文件" /> | |||
</div> | |||
</van-collapse-item> | |||
</van-collapse> | |||
@@ -179,6 +167,17 @@ | |||
getDeptName(response.data.deptId).then(res => { | |||
response.data.deptId = res.data.deptName | |||
}); | |||
if (response.data.attachement){ | |||
response.data.attachementList = []; | |||
var attachement = response.data.attachement.split( "," ); | |||
attachement.forEach(responseAttach=>{ | |||
response.data.attachementList.push({ | |||
url:'/api' + responseAttach, | |||
isImage: true | |||
}); | |||
}) | |||
// process.env.VUE_APP_BASE_ROUTING_URL + process.env.VUE_APP_BASE_API | |||
} | |||
this.form = response.data; | |||
}); | |||
getSurveyByCaseId(this.$route.query.id).then((response) => { | |||
@@ -57,20 +57,8 @@ | |||
<span class="custom-title">附件<i class="bgBlue"></i></span> | |||
</template> | |||
<div class="cf"> | |||
<van-row> | |||
<van-col :span="6"> | |||
<van-image src="../../../../static/images/lawEnforcement/icon/icon_fj.png" width="50" /> | |||
<p>产品确认</p> | |||
<p>通知书</p> | |||
</van-col> | |||
<van-col :span="6"> | |||
<van-image src="../../../../static/images/lawEnforcement/icon/icon_fj.png" width="50" /> | |||
<p>产品确认</p> | |||
<p>通知书</p> | |||
</van-col> | |||
<van-col :span="6"></van-col> | |||
<van-col :span="6"></van-col> | |||
</van-row> | |||
<van-uploader v-model="form.attachementList" :show-upload="false" :deletable="false" /> | |||
<van-empty v-if="form.attachement == null " description="暂无文件" /> | |||
</div> | |||
</van-collapse-item> | |||
</van-collapse> | |||
@@ -180,6 +168,17 @@ | |||
getDeptName(response.data.deptId).then(res => { | |||
response.data.deptId = res.data.deptName | |||
}); | |||
if (response.data.attachement){ | |||
response.data.attachementList = []; | |||
var attachement = response.data.attachement.split( "," ); | |||
attachement.forEach(responseAttach=>{ | |||
response.data.attachementList.push({ | |||
url:'/api' + responseAttach, | |||
isImage: true | |||
}); | |||
}) | |||
// process.env.VUE_APP_BASE_ROUTING_URL + process.env.VUE_APP_BASE_API | |||
} | |||
this.form = response.data; | |||
}); | |||
getSurveyByCaseId(this.$route.query.id).then((response) => { | |||
@@ -220,7 +219,19 @@ | |||
console.log(val) | |||
console.log(index) | |||
this.tEnforceCaseHandlerList[index].enforcerLeader = val ? 'Y' : '' | |||
} | |||
}, | |||
afterReadEvidenceForm(file){ | |||
let params1 = new FormData(); | |||
params1.append("file", file.file); | |||
commonUpload(params1).then((r1) => { | |||
// this.tEnforceSamplingGoodsList[index].attachement.push(r1.fileName); | |||
this.form.attachement.push(r1.fileName) | |||
}) | |||
}, | |||
deleteFileEvidenceForm(file,detail) { | |||
this.form.attachement.splice(detail.index,1); | |||
this.form.attachementList.splice(detail.index,1); | |||
}, | |||
}, | |||
watch: { | |||
$route (to, from ) { | |||
@@ -0,0 +1,726 @@ | |||
<template> | |||
<div class="app-container"> | |||
<div class="header_main"> | |||
登记修改 | |||
<div class="return_btn" @click="onClickLeft"></div> | |||
</div> | |||
<div style="height: 58px;"></div> | |||
<van-form @submit="goSubmit" :show-error-message="false" ref="form"> | |||
<div class="main_box"> | |||
<van-cell> | |||
<template #title> | |||
<van-icon name="../../../static/images/lawEnforcement/icon/icon_zxfa.png" size="20"></van-icon> | |||
<span class="custom-title">登记<i class="bgBlue"></i></span> | |||
</template> | |||
</van-cell> | |||
<van-field | |||
readonly | |||
clickable | |||
required | |||
:rules="[{ required: true , message:'请选择案件来源' }]" | |||
v-model="caseSource" | |||
label="案件来源" | |||
placeholder="请选择案件来源" | |||
@click="showCaseSource = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
:border="false" | |||
label-width="auto" | |||
/> | |||
<van-popup v-model="showCaseSource" position="bottom"> | |||
<van-picker | |||
show-toolbar | |||
:columns="caseSourceOptions" | |||
@confirm="onConfirmCaseSource" | |||
@cancel="showCaseSource = false" | |||
/> | |||
</van-popup> | |||
<van-field | |||
readonly | |||
clickable | |||
required | |||
:rules="[{ required: true , message:'请选择关联方案' }]" | |||
v-model="scheme" | |||
label="关联方案" | |||
placeholder="请选择关联方案" | |||
@click="showScheme = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
:border="false" | |||
label-width="auto" | |||
/> | |||
<van-popup v-model="showScheme" position="bottom"> | |||
<van-picker | |||
show-toolbar | |||
:columns="schemeOptions" | |||
@confirm="onConfirmScheme" | |||
@cancel="showScheme = false" | |||
/> | |||
</van-popup> | |||
<!-- <van-field v-model="form.schemeId" label="关联方案" placeholder="请输入关联方案" :border="false" label-width="auto" input-align="right" />--> | |||
<van-field | |||
readonly | |||
clickable | |||
required | |||
:rules="[{ required: true , message:'请选择案件属地' }]" | |||
v-model="deptName" | |||
label="案件属地" | |||
placeholder="请选择案件属地" | |||
@click="showDeptId = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
:border="false" | |||
label-width="auto" | |||
/> | |||
<van-popup v-model="showDeptId" position="bottom"> | |||
<van-cascader | |||
v-model="villageValue" | |||
title="请选择案件属地" | |||
:options="deptOptions" | |||
@close="showDeptId = false" | |||
@finish="onConfirmDept" | |||
active-color="#1989fa" | |||
:field-names="hcAreaInfoFieldName" | |||
/> | |||
</van-popup> | |||
<!-- <van-field v-model="form.deptId" label="案件属地" placeholder="请输入案件属地" :border="false" label-width="auto" input-align="right" is-link arrow-direction="down" />--> | |||
<van-field | |||
readonly | |||
clickable | |||
required | |||
:rules="[{ required: true , message:'请选择执行主体' }]" | |||
v-model="belongTeam" | |||
label="执行主体" | |||
placeholder="请选择执行主体" | |||
@click="showBelongTeam = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
:border="false" | |||
label-width="auto" | |||
/> | |||
<van-popup v-model="showBelongTeam" position="bottom"> | |||
<van-picker | |||
show-toolbar | |||
:columns="belongTeamOptions" | |||
@confirm="onConfirmBelongTeam" | |||
@cancel="showBelongTeam = false" | |||
/> | |||
</van-popup> | |||
<!-- <van-field v-model="form.belongTeam" label="执行主体" placeholder="请输入执行主体" :border="false" label-width="auto" input-align="right" is-link arrow-direction="down" />--> | |||
<van-field v-model="form.caseName" required :rules="[{ required: true , message:'请输入案件名称' }]" label="案件名称" placeholder="请输入案件名称" :border="false" label-width="auto" input-align="right" /> | |||
<van-field | |||
readonly | |||
clickable | |||
required | |||
:rules="[{ required: true , message:'请选择登记日期' }]" | |||
v-model="form.registerDate" | |||
label="登记日期" | |||
placeholder="请选择登记日期" | |||
@click="showRegisterDate = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
:border="false" | |||
label-width="auto" | |||
/> | |||
<van-popup v-model="showRegisterDate" position="bottom"> | |||
<van-datetime-picker | |||
v-model="registerDate" | |||
type="date" | |||
title="选择年月日" | |||
:min-date="minDate" | |||
@confirm="onConfirmRegisterDate" | |||
@cancel="showRegisterDate = false" | |||
/> | |||
</van-popup> | |||
<van-field | |||
readonly | |||
clickable | |||
required | |||
:rules="[{ required: true , message:'请选择执法类别' }]" | |||
v-model="enforceCategory" | |||
label="执法类别" | |||
placeholder="请选择执法类别" | |||
@click="showEnforceCategory = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
:border="false" | |||
label-width="auto" | |||
/> | |||
<van-popup v-model="showEnforceCategory" position="bottom"> | |||
<van-picker | |||
show-toolbar | |||
:columns="enforceCategoryOptions" | |||
@confirm="onConfirmEnforceCategory" | |||
@cancel="showEnforceCategory = false" | |||
/> | |||
</van-popup> | |||
<!-- <van-field v-model="form.enforceCategory" label="执法类别" placeholder="请输入执法类别" :border="false" label-width="auto" input-align="right" is-link arrow-direction="down" />--> | |||
<van-field v-model="form.caseDescribe" label="案件简述" placeholder="请输入案件简述" :border="false" label-width="auto" input-align="right" /> | |||
</div> | |||
<div class="main_box" style="margin-top: 10px;"> | |||
<van-collapse v-model="activeNames"> | |||
<van-collapse-item name="1"> | |||
<template #title> | |||
<van-icon name="../../../static/images/lawEnforcement/icon/icon_dsr.png" size="20"></van-icon> | |||
<span class="custom-title">当事人<i class="bgBlue"></i></span> | |||
</template> | |||
<van-field v-model="form.type" label="当事人类型" :border="false" label-width="auto" input-align="right" > | |||
<template #input> | |||
<van-radio-group v-model="form.type" direction="horizontal"> | |||
<van-radio name="1">个人/个体工商户</van-radio> | |||
<van-radio name="2">企业</van-radio> | |||
</van-radio-group> | |||
</template> | |||
</van-field> | |||
<template v-if="form.type=='1'"> | |||
<van-field v-model="form.name" required :rules="[{ required: true , message:'请输入当事人姓名' }]" label="当事人姓名" placeholder="请输入当事人姓名" :border="false" label-width="auto" input-align="right" /> | |||
<van-field v-model="form.sex" label="性别" placeholder="请输入性别" :border="false" label-width="auto" input-align="right" > | |||
<template #input> | |||
<van-radio-group v-model="form.sex" direction="horizontal"> | |||
<van-radio name="1">男</van-radio> | |||
<van-radio name="2">女</van-radio> | |||
</van-radio-group> | |||
</template> | |||
</van-field> | |||
<van-field v-model="form.cardNum" required :rules="[{ required: true , message:'请输入身份证号' }]" label="身份证号" placeholder="请输入身份证号" :border="false" label-width="auto" input-align="right" /> | |||
<van-field | |||
readonly | |||
clickable | |||
v-model="form.birthday" | |||
label="出生日期" | |||
placeholder="请选择出生日期" | |||
@click="showBirthday = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
:border="false" | |||
label-width="auto" | |||
/> | |||
<van-popup v-model="showBirthday" position="bottom"> | |||
<van-datetime-picker | |||
v-model="birthday" | |||
type="date" | |||
title="选择年月日" | |||
:min-date="minDate" | |||
@confirm="onConfirmBirthday" | |||
@cancel="showBirthday = false" | |||
/> | |||
</van-popup> | |||
<van-field | |||
readonly | |||
clickable | |||
v-model="nation" | |||
label="民族" | |||
placeholder="请选择民族" | |||
@click="showNation = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
:border="false" | |||
label-width="auto" | |||
/> | |||
<van-popup v-model="showNation" position="bottom"> | |||
<van-picker | |||
show-toolbar | |||
:columns="nationOptions" | |||
@confirm="onConfirmNation" | |||
@cancel="showNation = false" | |||
/> | |||
</van-popup> | |||
<!-- <van-field v-model="form.nation" label="民族" placeholder="请输入民族" :border="false" label-width="auto" input-align="right" is-link arrow-direction="down" />--> | |||
<van-field v-model="form.companyPosition" label="工作单位及职务" placeholder="请输入工作单位及职务" :border="false" label-width="auto" input-align="right" /> | |||
<van-field v-model="form.zihao" label="字号名称" placeholder="请输入字号名称" :border="false" label-width="auto" input-align="right" /> | |||
</template> | |||
<template v-if="form.type=='2'"> | |||
<van-field v-model="form.companyName" :rules="[{ required: true , message:'请输入企业名称' }]" label="企业名称" placeholder="请输入企业名称" :border="false" label-width="auto" input-align="right" /> | |||
<van-field v-model="form.legalName" label="法人/负责人" placeholder="请输入法人/负责人" :border="false" label-width="auto" input-align="right" /> | |||
</template> | |||
<van-field v-model="form.phone" label="联系电话" placeholder="请输入联系电话" :border="false" label-width="auto" input-align="right" /> | |||
<van-field v-model="form.address" label="联系地址" placeholder="请输入联系地址" :border="false" label-width="auto" input-align="right" /> | |||
<van-field v-model="form.uniformCode" label="统一社会信用代码" placeholder="请输入统一社会信用代码" :border="false" label-width="auto" input-align="right" /> | |||
</van-collapse-item> | |||
</van-collapse> | |||
</div> | |||
<div class="main_box" style="margin-top: 10px;"> | |||
<van-collapse v-model="activeNames1"> | |||
<van-collapse-item name="1"> | |||
<template #title> | |||
<van-icon name="../../../static/images/lawEnforcement/icon/icon_ajwd.png" size="20"></van-icon> | |||
<span class="custom-title">附件<i class="bgBlue"></i></span> | |||
</template> | |||
<p style="color: #FE1313;text-align: center;margin-top: 5PX;font-size: .3rem">*请上传不超过5MB 格式为doc/xls/png/jpg/jpeg的文件</p> | |||
<div class="cf"> | |||
<van-uploader v-model="form.attachementList" :after-read="afterReadEvidenceForm" :before-delete="deleteFileEvidenceForm" /> | |||
</div> | |||
</van-collapse-item> | |||
</van-collapse> | |||
</div> | |||
<!-- <div class="main_box" style="margin-top: 10px;">--> | |||
<!-- <van-collapse v-model="activeNames2">--> | |||
<!-- <van-collapse-item name="1">--> | |||
<!-- <template #title>--> | |||
<!-- <van-icon name="../../../static/images/lawEnforcement/icon/icon_zxry.png" size="20"></van-icon>--> | |||
<!-- <span class="custom-title">执法人员<i class="bgBlue"></i></span>--> | |||
<!-- </template>--> | |||
<!-- <div class="peopleList">--> | |||
<!-- <van-row class="peoplett">--> | |||
<!-- <van-col :span="4">序号</van-col>--> | |||
<!-- <van-col :span="6">执行人员</van-col>--> | |||
<!-- <van-col :span="10">执法证号</van-col>--> | |||
<!-- <van-col :span="4">带队人</van-col>--> | |||
<!-- </van-row>--> | |||
<!-- <van-row v-for="(item,index) in tEnforceCaseHandlerList" :key="index" >--> | |||
<!-- <van-col :span="4">{{index+1}}</van-col>--> | |||
<!-- <van-col :span="6">{{item.enforcerName}}</van-col>--> | |||
<!-- <van-col :span="10">{{item.enforcerNum}}</van-col>--> | |||
<!-- <van-col :span="4">--> | |||
<!-- <div class="icon_box">--> | |||
<!-- <van-checkbox v-model="item.enforcerLeader" shape="square" @change="checkBoxChange(item.enforcerLeader,index)"></van-checkbox>--> | |||
<!-- <van-icon name="../../../static/images/lawEnforcement/icon/icon_delete.png" size="20" @click="removePeople(index)"></van-icon>--> | |||
<!-- </div>--> | |||
<!-- </van-col>--> | |||
<!-- </van-row>--> | |||
<!-- <img src="../../../../static/images/lawEnforcement/new/addPeop_btn.png" style="margin: 0 auto;" @click="$router.push({name:'lawEnforcementCaseLawEnforcer'})">--> | |||
<!-- </div>--> | |||
<!-- </van-collapse-item>--> | |||
<!-- </van-collapse>--> | |||
<!-- </div>--> | |||
<div class="submit_box"> | |||
<p class="submitButton" @click="$refs.form.submit()">保存</p> | |||
<p class="submitButton" @click="keepSubmit()">保存并提交</p> | |||
</div> | |||
</van-form> | |||
</div> | |||
</template> | |||
<script> | |||
import { updateCase , addProgress , treeselect , schemeList , addSurvey , getCase , getDeptName , getSurveyByCaseId , commonUpload } from "@/api/lawEnforcement/index"; | |||
import Cookies from "js-cookie"; | |||
export default { | |||
name: "programmeDetail", | |||
data() { | |||
return { | |||
showCaseSource:false, | |||
showBelongTeam:false, | |||
showEnforceCategory:false, | |||
showDeptId:false, | |||
showScheme:false, | |||
showNation:false, | |||
showBirthday:false, | |||
showRegisterDate:false, | |||
form:{ | |||
type:'1', | |||
sex:'1', | |||
registerDate:this.format(new Date(),'yyyy-MM-dd'), | |||
caseProgress:'1', | |||
caseStatus:'1', | |||
}, | |||
registerDate:new Date(), | |||
birthday:new Date(), | |||
caseSource : '', | |||
belongTeam : '', | |||
enforceCategory : '', | |||
nation : '', | |||
deptName : '', | |||
scheme : '', | |||
villageValue : '', | |||
tEnforceSchemeHandlerList:[], | |||
minDate: new Date(1900, 0, 1), | |||
activeNames: ['1'], | |||
activeNames1: ['1'], | |||
activeNames2: ['1'], | |||
caseSourceOptions:[], | |||
belongTeamOptions:[], | |||
enforceCategoryOptions:[], | |||
nationOptions:[], | |||
deptOptions:[], | |||
caseProgressOptions:[], | |||
schemeOptions:[], | |||
tEnforceCaseHandlerList:[], | |||
radio:'', | |||
fileList: [], | |||
hcAreaInfoFieldName: { | |||
text: "label", | |||
value: "value", | |||
children: "children", | |||
}, | |||
deptId:'' | |||
}; | |||
}, | |||
created() { | |||
//案件来源 | |||
this.getDicts("case_source").then(response => { | |||
for (var i = 0; i < response.data.length; i++) { | |||
this.caseSourceOptions.push({text: response.data[i].dictLabel, value: response.data[i].dictValue}); | |||
} | |||
this.caseSourceOptions2 = response.data; | |||
}); | |||
//执行主体 | |||
this.getDicts("team_category").then(response => { | |||
for (var i = 0; i < response.data.length; i++) { | |||
this.belongTeamOptions.push({text: response.data[i].dictLabel, value: response.data[i].dictValue}); | |||
} | |||
this.belongTeamOptions2 = response.data; | |||
}); | |||
//执法类别 | |||
this.getDicts("enforce_category").then(response => { | |||
for (var i = 0; i < response.data.length; i++) { | |||
this.enforceCategoryOptions.push({text: response.data[i].dictLabel, value: response.data[i].dictValue}); | |||
} | |||
this.enforceCategoryOptions2 = response.data; | |||
}); | |||
//民族 | |||
this.getDicts("nationality").then(response => { | |||
for (var i = 0; i < response.data.length; i++) { | |||
this.nationOptions.push({text: response.data[i].dictLabel, value: response.data[i].dictValue}); | |||
} | |||
this.nationOptions2 = response.data; | |||
}); | |||
this.getDicts("case_node").then(response => { | |||
this.caseProgressOptions = response.data; | |||
}); | |||
var schemeQueryParam = { | |||
applyStatus: "1" | |||
}; | |||
schemeList(schemeQueryParam).then((response) => { | |||
for (var i = 0; i < response.rows.length; i++) { | |||
this.schemeOptions.push({text: response.rows[i].schemeName, value: response.rows[i].id}); | |||
} | |||
}); | |||
this.getBookList() | |||
}, | |||
methods: { | |||
goSubmit(){ | |||
if (typeof this.form.attachement != 'string'){ | |||
this.form.attachement = this.form.attachement.join(','); | |||
} | |||
updateCase(this.form).then(response => { | |||
if(response.code=="200"){ | |||
this.$notify({ type: 'success', message: '保存成功' }); | |||
setTimeout(function(){ | |||
history.back(-1); | |||
},2000) | |||
// var progressParam = { | |||
// caseId: response.data, | |||
// caseStatus:"1", | |||
// caseProgress:"1", | |||
// caseProgressName:"登记" | |||
// }; | |||
// | |||
// addProgress(progressParam).then(response2 => { | |||
// let surveyForm = {}; | |||
// surveyForm.tEnforceCaseHandlerList = this.tEnforceCaseHandlerList; | |||
// surveyForm.caseId = response.data; | |||
// addSurvey(surveyForm).then(response => { | |||
// }); | |||
// }); | |||
} | |||
}); | |||
}, | |||
keepSubmit(){ | |||
this.form.caseId = this.form.id; | |||
this.form.caseStatus = "1"; | |||
this.form.caseProgress = "2"; // 勘察 | |||
this.form.caseProgressName = this.selectDictLabel(this.caseProgressOptions, this.form.caseProgress); // 勘察 | |||
if (typeof this.form.attachement != 'string'){ | |||
this.form.attachement = this.form.attachement.join(','); | |||
} | |||
var _this = this; | |||
this.$dialog.confirm({ | |||
message: '提交后案件将进入后续流程并且不能修改,是否确认提交?', | |||
}).then(function () { | |||
// 更新案件的节点和状态 | |||
updateCase(_this.form).then(response => { | |||
_this.$notify({ type: 'success', message: '提交成功' }); | |||
setTimeout(function(){ | |||
history.back(-1); | |||
},2000) | |||
}); | |||
}); | |||
}, | |||
getBookList(){ | |||
treeselect().then((response) => { | |||
if (response.code == 200) { | |||
this.deptOptions = response.data; | |||
this.getDetail(); | |||
} | |||
}) | |||
}, | |||
//选择案件来源 | |||
onConfirmCaseSource(data){ | |||
this.form.caseSource = data.value; | |||
this.caseSource = data.text; | |||
this.showCaseSource = false; | |||
}, | |||
//选择案件属地 | |||
onConfirmDept({ selectedOptions }){ | |||
console.log(selectedOptions[selectedOptions.length-1]) | |||
this.form.deptId = selectedOptions[selectedOptions.length-1].value; | |||
this.deptName = selectedOptions[selectedOptions.length-1].label; | |||
this.showDeptId = false | |||
}, | |||
//选择执行主体 | |||
onConfirmBelongTeam(data){ | |||
this.form.belongTeam = data.value; | |||
this.belongTeam = data.text; | |||
this.showBelongTeam = false; | |||
}, | |||
//选择执法类别 | |||
onConfirmEnforceCategory(data){ | |||
this.form.enforceCategory = data.text; | |||
this.enforceCategory = data.text; | |||
this.showEnforceCategory = false; | |||
}, | |||
//选择民族 | |||
onConfirmNation(data){ | |||
this.form.nation = data.value; | |||
this.nation = data.text; | |||
this.showNation = false; | |||
}, | |||
//选择关联方案 | |||
onConfirmScheme(data){ | |||
this.form.schemeId = data.value; | |||
this.scheme = data.text; | |||
this.showScheme = false; | |||
}, | |||
//选择登记时间 | |||
onConfirmRegisterDate(data){ | |||
this.form.registerDate = this.format(data,'yyyy-MM-dd'); | |||
this.registerDate = data; | |||
this.showRegisterDate = false; | |||
}, | |||
//选择出生日期 | |||
onConfirmBirthday(data){ | |||
this.form.birthday = this.format(data,'yyyy-MM-dd'); | |||
this.birthday = data; | |||
this.showBirthday = false; | |||
}, | |||
getDetail(){ | |||
getCase(this.$route.query.id).then((response) => { | |||
this.caseSource = response.data.caseSource == '' ? '' : this.selectDictLabel(this.caseSourceOptions2, response.data.caseSource); | |||
this.belongTeam = response.data.belongTeam == '' ? '' : this.selectDictLabel(this.belongTeamOptions2, response.data.belongTeam); | |||
this.nation = response.data.nation == '' ? '' : this.selectDictLabel(this.nationOptions2, response.data.nation); | |||
this.scheme = response.data.schemeId == '' ? '' : this.schemeOptions.filter(function (e) { return e.value == response.data.schemeId; })[0].text; | |||
this.enforceCategory = response.data.enforceCategory; | |||
if (response.data.attachement){ | |||
response.data.attachementList = []; | |||
var attachement = response.data.attachement.split( "," ); | |||
attachement.forEach(responseAttach=>{ | |||
response.data.attachementList.push({ | |||
url:'/api' + responseAttach, | |||
isImage: true | |||
}); | |||
}) | |||
// process.env.VUE_APP_BASE_ROUTING_URL + process.env.VUE_APP_BASE_API | |||
}else{ | |||
response.data.attachement = []; | |||
} | |||
getDeptName(response.data.deptId).then(res => { | |||
this.deptName = res.data.deptName | |||
}); | |||
this.form = response.data; | |||
}); | |||
getSurveyByCaseId(this.$route.query.id).then((response) => { | |||
if(response.data != undefined){ | |||
this.tEnforceCaseHandlerList = response.data.tEnforceCaseHandlerList; | |||
} | |||
}); | |||
}, | |||
afterReadEvidenceForm(file){ | |||
let params1 = new FormData(); | |||
params1.append("file", file.file); | |||
commonUpload(params1).then((r1) => { | |||
// this.tEnforceSamplingGoodsList[index].attachement.push(r1.fileName); | |||
this.form.attachement.push(r1.fileName) | |||
}) | |||
}, | |||
deleteFileEvidenceForm(file,detail) { | |||
this.form.attachement.splice(detail.index,1); | |||
this.form.attachementList.splice(detail.index,1); | |||
}, | |||
}, | |||
watch: { | |||
$route (to, from ) { | |||
// 监听路由变化, 实现类似 小程序的 onShow 事件 | |||
if (to.path === '/lawEnforcement/caseAdd') { | |||
console.log('abc') | |||
// do anything you want | |||
if (Cookies.get('enforcer')){ | |||
JSON.parse(Cookies.get('enforcer')).map((res,index)=>{ | |||
this.tEnforceCaseHandlerList.push(res) | |||
}) | |||
} | |||
} | |||
} | |||
}, | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
.app-container { | |||
padding: 2% 0; | |||
} | |||
/deep/ .van-collapse-item__content{ | |||
padding: 0; | |||
} | |||
.cf{ | |||
padding: 0 3%; | |||
margin-top: 20PX; | |||
margin-bottom: 20PX; | |||
.van-row{ | |||
background: #F0F3F5; | |||
.van-col{ | |||
padding: 5PX 0; | |||
font-size: 12PX!important; | |||
text-align: center; | |||
p{ | |||
color: #1D6FE9; | |||
} | |||
} | |||
&:first-child{ | |||
background: transparent; | |||
} | |||
} | |||
} | |||
.header_main{ | |||
height: 116px; | |||
background: url('../../../../static/images/lawEnforcement/new/list_head.png') no-repeat; | |||
background-size: 100% 100%; | |||
position: fixed; | |||
top: 0; | |||
left: 0; | |||
width: 100%; | |||
font-size: 36px; | |||
line-height: 116px; | |||
text-align: center; | |||
color: #fff; | |||
z-index: 999; | |||
.return_btn{ | |||
width: 24px; | |||
height: 43.2px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat; | |||
background-size: 20px 36px; | |||
position: absolute; | |||
left: 38px; | |||
top: 36px; | |||
} | |||
.add_btn{ | |||
width: 56.4px; | |||
height: 40.8px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat; | |||
background-size: 47px 34px; | |||
position: absolute; | |||
right: 38px; | |||
top: 36px; | |||
} | |||
} | |||
/deep/ .van-radio--horizontal{ | |||
margin-left: 0.32rem; | |||
margin-right: 0; | |||
} | |||
.peopleList{ | |||
padding: 3%; | |||
text-align: center; | |||
.van-row{ | |||
margin-bottom: 10PX; | |||
background: rgba(196,218,249,0.3); | |||
border-radius: 5PX; | |||
.van-col{ | |||
text-align: center; | |||
font-size: 14PX; | |||
color: #333333; | |||
padding: 5PX 0; | |||
} | |||
&:first-child{ | |||
background: none; | |||
.van-col{ | |||
padding: 0; | |||
color: #1D6FE9; | |||
} | |||
} | |||
} | |||
.icon_box{ | |||
display: flex; | |||
justify-content: space-around; | |||
/deep/ .van-checkbox{ | |||
justify-content: center; | |||
} | |||
} | |||
} | |||
.main_title{ | |||
font-size: 0.4rem; | |||
color: #1D6FE9; | |||
margin: 0.2rem 6%; | |||
margin-top: 0; | |||
position: relative; | |||
} | |||
.main_box{ | |||
width: 96%; | |||
margin: 0 auto; | |||
border-radius: 10PX; | |||
box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16); | |||
overflow: hidden; | |||
background-color: #FFF; | |||
.van-icon{ | |||
vertical-align: middle; | |||
} | |||
.custom-title{ | |||
font-size: 17PX; | |||
color: #333333; | |||
vertical-align: middle; | |||
line-height: 1; | |||
position: relative; | |||
} | |||
.tap{ | |||
color: #1D6FE9; | |||
} | |||
.bgBlue{ | |||
display: block; | |||
position: absolute; | |||
width: 17PX; | |||
height: 17PX; | |||
border-radius: 50%; | |||
background-color: rgba(29,111,233,0.26); | |||
top: -2PX; | |||
right: -8PX; | |||
} | |||
} | |||
.submitButton{ | |||
width: 40%; | |||
margin: 0 auto; | |||
background-image: linear-gradient(to right, #2E79E9 , #77A6EF); | |||
text-align: center; | |||
color: #ffffff; | |||
height: 70px; | |||
line-height: 70px; | |||
border-radius: 8PX; | |||
margin-top: 25PX; | |||
} | |||
.submit_box{ | |||
display: flex; | |||
} | |||
.addFamily{ | |||
position: absolute; | |||
top: -2px; | |||
right: 0; | |||
border-radius: 50%; | |||
} | |||
</style> |
@@ -0,0 +1,331 @@ | |||
<template> | |||
<div class="app-container"> | |||
<div class="header_main"> | |||
执行人员 | |||
<div class="return_btn" @click="onClickLeft"></div> | |||
</div> | |||
<div style="height: 58px;"></div> | |||
<div class="search_box"> | |||
<van-popover | |||
v-model="showPopover" | |||
trigger="click" | |||
:actions="belongTeamOptions" | |||
@select="popChange" | |||
placement="bottom-start" | |||
> | |||
<template #reference> | |||
<div class="select_box"> | |||
<p>{{popValue}}</p> | |||
<van-icon name="arrow-down" color="#1D6FE9" /> | |||
</div> | |||
</template> | |||
</van-popover> | |||
<div class="search"> | |||
<input type="text" placeholder="请输入执行人姓名/证号" v-model="queryParams.nameOrEnforceNum" /> | |||
<img src="../../../../static/images/lawEnforcement/new/index_icon_19.png" @click="goSearch"> | |||
</div> | |||
</div> | |||
<div class="main_box" style="margin-top: 10px;"> | |||
<div class="peopleList"> | |||
<van-row class="peoplett"> | |||
<van-col :span="4">执行主体</van-col> | |||
<van-col :span="20">执行人员</van-col> | |||
</van-row> | |||
<van-checkbox-group v-model="result"> | |||
<van-row v-for="(item,index) in enforcerList" :key="index" > | |||
<van-col :span="4">{{item.belongTeam}}</van-col> | |||
<van-col :span="6">{{item.name}}</van-col> | |||
<van-col :span="10">{{item.enforceNum}}</van-col> | |||
<van-col :span="4"> | |||
<div class="icon_box"> | |||
<van-checkbox :name="item" shape="square"></van-checkbox> | |||
</div> | |||
</van-col> | |||
</van-row> | |||
</van-checkbox-group> | |||
</div> | |||
</div> | |||
<p class="submitButton" @click="choiceEnforcer">确定</p> | |||
</div> | |||
</template> | |||
<script> | |||
import { listEnforcer , getCase , updateSurvey , getSurveyByCaseId } from "@/api/lawEnforcement/index"; | |||
import Cookies from "js-cookie"; | |||
export default { | |||
name: "programmeDetail", | |||
data() { | |||
return { | |||
showPopover: false, | |||
form:{}, | |||
result:[], | |||
queryParams: { | |||
// 分页 | |||
pageNum: 1, | |||
pageSize: 999, | |||
// 查询排序 | |||
orderByColumn: "id", | |||
isAsc: "desc", | |||
nameOrEnforceNum: null, // 搜索参数-执行人姓名或证件号 | |||
belongTeam: '1', // 搜索参数-所在中队 | |||
}, | |||
enforcerList:[], | |||
searchInput:'', | |||
belongTeamOptions:[], | |||
belongTeamOptions2:[], | |||
popValue:'一中队', | |||
surveyForm:{} | |||
}; | |||
}, | |||
created() { | |||
this.getDicts("team_category").then(response => { | |||
for (var i = 0; i < response.data.length; i++) { | |||
this.belongTeamOptions.push({text: response.data[i].dictLabel, value: response.data[i].dictValue}); | |||
} | |||
this.belongTeamOptions2 = response.data; | |||
}); | |||
this.getDictionaries() | |||
this.getDetail(); | |||
}, | |||
methods: { | |||
getDictionaries(){ | |||
listEnforcer(this.queryParams).then((response) => { | |||
response.rows.map(res=>{ | |||
res.belongTeam = res.belongTeam == '' ? '' : this.selectDictLabel(this.belongTeamOptions2, res.belongTeam); | |||
this.enforcerList.push(res); | |||
}) | |||
}); | |||
}, | |||
goSearch(){ | |||
this.enforcerList = []; | |||
this.getDictionaries() | |||
}, | |||
popChange(action,index){ | |||
this.popValue = action.text; | |||
this.queryParams.belongTeam = action.value; | |||
this.enforcerList = []; | |||
this.getDictionaries(); | |||
}, | |||
choiceEnforcer(){ | |||
const list = []; | |||
this.result.map(res=>{ | |||
let obj = {}; | |||
obj.relationType = "2"; | |||
obj.enforcerId = res.id; // 执法人员ID -- 执法人员选择页面带回值 | |||
obj.enforcerName = res.name; // 执法人员姓名 -- 执法人员选择页面带回值 | |||
obj.enforcerNum = res.enforceNum; // 执法证号 -- 执法人员选择页面带回值 | |||
obj.enforcerLeader = ""; // 是否带队 --勾选赋值 | |||
list.push(obj) | |||
}) | |||
this.surveyForm.tEnforceCaseHandlerList = list; | |||
this.surveyForm.caseId = this.form.id; | |||
getSurveyByCaseId(this.surveyForm.caseId).then(responseSurvey => { | |||
this.surveyForm.id = responseSurvey.data.id; | |||
updateSurvey(this.surveyForm).then(response => { | |||
this.$notify({ type: 'success', message: '保存成功' }); | |||
setTimeout(function(){ | |||
history.back(-1); | |||
},2000) | |||
}); | |||
}); | |||
}, | |||
getDetail(){ | |||
getCase(this.$route.query.id).then((response) => { | |||
this.form = response.data; | |||
}); | |||
}, | |||
}, | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
.app-container { | |||
padding: 2% 0; | |||
} | |||
/deep/ .van-collapse-item__content{ | |||
padding: 0; | |||
} | |||
/deep/ .van-checkbox{ | |||
justify-content: center; | |||
} | |||
.icon_box{ | |||
display: flex; | |||
justify-content: space-around; | |||
} | |||
.search_box{ | |||
display: flex; | |||
justify-content: space-between; | |||
align-items: center; | |||
width: 92%; | |||
margin: 0PX auto; | |||
.select_box{ | |||
border: 1px solid #1D6FE9; | |||
border-radius: 8PX; | |||
padding: 0 12PX ; | |||
background: #ffffff; | |||
height: 30PX; | |||
line-height: 30PX; | |||
display: flex; | |||
justify-content: space-around; | |||
align-items: center; | |||
} | |||
.search{ | |||
flex: 1; | |||
background: #ffffff; | |||
display: flex; | |||
justify-content: space-between; | |||
align-items: center; | |||
width: 70%; | |||
margin: 10PX 0 10PX 10PX; | |||
border: 1px solid #1D6FE9; | |||
padding: 1PX 1PX 1PX 12PX ; | |||
border-radius: 8PX; | |||
input{ | |||
flex: 1; | |||
background: transparent; | |||
} | |||
} | |||
} | |||
.cf{ | |||
padding: 0 3%; | |||
margin-top: 20PX; | |||
margin-bottom: 20PX; | |||
.van-row{ | |||
background: #F0F3F5; | |||
.van-col{ | |||
padding: 5PX 0; | |||
font-size: 12PX!important; | |||
text-align: center; | |||
p{ | |||
color: #1D6FE9; | |||
} | |||
} | |||
&:first-child{ | |||
background: transparent; | |||
} | |||
} | |||
} | |||
.header_main{ | |||
height: 116px; | |||
background: url('../../../../static/images/lawEnforcement/new/list_head.png') no-repeat; | |||
background-size: 100% 100%; | |||
position: fixed; | |||
top: 0; | |||
left: 0; | |||
width: 100%; | |||
font-size: 36px; | |||
line-height: 116px; | |||
text-align: center; | |||
color: #fff; | |||
z-index: 999; | |||
.return_btn{ | |||
width: 24px; | |||
height: 43.2px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat; | |||
background-size: 20px 36px; | |||
position: absolute; | |||
left: 38px; | |||
top: 36px; | |||
} | |||
.add_btn{ | |||
width: 56.4px; | |||
height: 40.8px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat; | |||
background-size: 47px 34px; | |||
position: absolute; | |||
right: 38px; | |||
top: 36px; | |||
} | |||
} | |||
/deep/ .van-radio--horizontal{ | |||
margin-left: 0.32rem; | |||
margin-right: 0; | |||
} | |||
.peopleList{ | |||
padding: 3%; | |||
text-align: center; | |||
.van-row{ | |||
margin-bottom: 10PX; | |||
background: rgba(196,218,249,0.3); | |||
border-radius: 5PX; | |||
.van-col{ | |||
text-align: center; | |||
font-size: 14PX; | |||
color: #333333; | |||
padding: 5PX 0; | |||
} | |||
} | |||
.peoplett{ | |||
background: none; | |||
.van-col{ | |||
padding: 0; | |||
color: #1D6FE9; | |||
} | |||
} | |||
} | |||
.main_title{ | |||
font-size: 0.4rem; | |||
color: #1D6FE9; | |||
margin: 0.2rem 6%; | |||
margin-top: 0; | |||
position: relative; | |||
} | |||
.main_box{ | |||
width: 96%; | |||
margin: 0 auto; | |||
border-radius: 10PX; | |||
box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16); | |||
overflow: hidden; | |||
background-color: #FFF; | |||
.van-icon{ | |||
vertical-align: middle; | |||
} | |||
.custom-title{ | |||
font-size: 17PX; | |||
color: #333333; | |||
vertical-align: middle; | |||
line-height: 1; | |||
position: relative; | |||
} | |||
.tap{ | |||
color: #1D6FE9; | |||
} | |||
.bgBlue{ | |||
display: block; | |||
position: absolute; | |||
width: 17PX; | |||
height: 17PX; | |||
border-radius: 50%; | |||
background-color: rgba(29,111,233,0.26); | |||
top: -2PX; | |||
right: -8PX; | |||
} | |||
} | |||
.submitButton{ | |||
width: 45%; | |||
margin: 0 auto; | |||
background-image: linear-gradient(to right, #2E79E9 , #77A6EF); | |||
text-align: center; | |||
color: #ffffff; | |||
height: 70px; | |||
line-height: 70px; | |||
border-radius: 8PX; | |||
margin-top: 25PX; | |||
} | |||
.addFamily{ | |||
position: absolute; | |||
top: -2px; | |||
right: 0; | |||
border-radius: 50%; | |||
} | |||
</style> |
@@ -1,311 +0,0 @@ | |||
<template> | |||
<div class="home_wrapper"> | |||
<div class="header_main"> | |||
登记列表 | |||
<div class="return_btn" @click="onClickLeft"></div> | |||
</div> | |||
<div class="jg"></div> | |||
<van-list | |||
v-model="loading" | |||
:finished="finished" | |||
finished-text="没有更多了" | |||
@load="getList" | |||
> | |||
<van-swipe-cell v-for="(item,index) in list" :key="index"> | |||
<van-cell center :to="{name:'lawEnforcementTaskDetail', query: {id:item.id}}"> | |||
<template #title> | |||
<span>{{item.caseName}}</span> | |||
<div class="first"> | |||
<span>{{item.caseSource}}</span> | |||
<span>分配时间:{{item.registerDate}}</span> | |||
</div> | |||
</template> | |||
<template #label> | |||
<div class="label"> | |||
<p>执法人:{{item.legalName}}</p> | |||
<p>{{item.caseProgress}}</p> | |||
</div> | |||
</template> | |||
</van-cell> | |||
<template #right> | |||
<van-row> | |||
<van-col> | |||
<van-button square color="#FFA63E" text="打卡" :to="{name:'lawEnforcementCaseReturn', query: {id:item.id}}" class="delete-button" /> | |||
</van-col> | |||
<van-col> | |||
<van-button square color="#1CB8B1" :to="{name:'lawEnforcementCaseDistribution', query: {id:item.id}}" class="delete-button" >上传<br/>文件</van-button> | |||
</van-col> | |||
<van-col> | |||
<van-button square color="#1D6FE9" :to="{name:'lawEnforcementCaseDistribution', query: {id:item.id}}" class="delete-button" >案件<br/>处理</van-button> | |||
</van-col> | |||
</van-row> | |||
</template> | |||
</van-swipe-cell> | |||
</van-list> | |||
</div> | |||
</template> | |||
<script> | |||
import { caseTasklist } from "@/api/lawEnforcement/index"; | |||
export default { | |||
name: "caseAllocation", | |||
data() { | |||
return { | |||
loading: false, | |||
finished: false, | |||
searchInput:'', | |||
queryParams: { | |||
// 分页 | |||
pageNum: 1, | |||
pageSize: 10, | |||
// 查询排序 | |||
orderByColumn: "id", | |||
isAsc: "desc", | |||
}, | |||
list:[] | |||
}; | |||
}, | |||
created() { | |||
this.getDicts("case_source").then(response => { | |||
this.caseSourceOptions = response.data; | |||
}); | |||
this.getDicts("case_node").then(response => { | |||
this.caseProgressOptions = response.data; | |||
}); | |||
}, | |||
methods: { | |||
getList(){ | |||
var _this = this; | |||
caseTasklist(_this.queryParams).then(response => { | |||
response.rows.map(res=>{ | |||
res.caseSource = res.caseSource == '' ? '' : this.selectDictLabel(this.caseSourceOptions, res.caseSource); | |||
res.caseProgress = res.caseProgress == '' ? '' : this.selectDictLabel(this.caseProgressOptions, res.caseProgress); | |||
this.list.push(res); | |||
}) | |||
if(this.list.length >= response.total){ | |||
this.finished = true; | |||
return; | |||
}else{ | |||
this.loading = false; | |||
this.queryParams.pageNum += 1 ; | |||
} | |||
}); | |||
}, | |||
tabClick(year){ | |||
this.queryParams.year = year ; | |||
this.applicationList = []; | |||
this.getList(); | |||
}, | |||
tabShow(){ | |||
this.showTab = !this.showTab; | |||
}, | |||
/** 删除按钮操作 */ | |||
handleDelete(row,index) { | |||
let assetStatus = row.assetStatus ? row.assetStatus : data[0].assetStatus; | |||
if (assetStatus === '2' || assetStatus === '3') { | |||
this.$notify({ | |||
message: "不允许删除已出售或已报废的资产", | |||
type: "warning", | |||
}); | |||
return; | |||
} | |||
let useType = row.useType; | |||
if(useType == 3) { | |||
this.$notify({ | |||
message: "出租或出借的资产不允许删除", | |||
type: "warning", | |||
}); | |||
return ; | |||
} | |||
const ids = row.id || this.ids; | |||
this.$dialog.alert( | |||
{ | |||
message:'是否确认删除固定资产?', | |||
title:"警告", | |||
confirmButtonText: "确定", | |||
cancelButtonText: "取消", | |||
} | |||
) | |||
.then(function () { | |||
return delPermanent(ids); | |||
}) | |||
.then(() => { | |||
this.applicationList.splice(index, 1); | |||
this.$notify({ type: 'success', message: '删除成功' }); | |||
}); | |||
}, | |||
goAdd(){ | |||
this.$router.push('/sunVillage_info/list_finance_add') | |||
}, | |||
goDetail(id){ | |||
this.$router.push({path:'/sunVillage_info/list_finance_detail',query: {id:id,type:'finance'}}) | |||
}, | |||
goRanking(id,time){ | |||
this.$router.push({path:'/sunVillage_info/list_finance_ranking',query: {id:id,time:time}}) | |||
}, | |||
goEdit(id){ | |||
this.$router.push({path:'/sunVillage_info/list_finance_edit',query: {id:id,type:'finance'}}) | |||
}, | |||
goRemove(id){ | |||
this.$dialog.alert({ | |||
title: '提示', | |||
message: '确认删除?', | |||
showCancelButton:true, | |||
}) | |||
.then(() => { | |||
openRemove(id).then(response => { | |||
this.$notify({ type: 'success', message: '删除成功' }); | |||
this.getList() | |||
}); | |||
}) | |||
.catch(() => { | |||
// on cancel | |||
}); | |||
} | |||
}, | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
.jg{ | |||
height: 116px; | |||
} | |||
.home_wrapper{ | |||
background: #e9e9e9; | |||
min-height: 100vh; | |||
width: 100vw; | |||
padding: 0 2% 0.2rem; | |||
.search_box{ | |||
display: flex; | |||
justify-content: space-between; | |||
align-items: center; | |||
width: 92%; | |||
margin: 0PX auto; | |||
.search{ | |||
background: #ffffff; | |||
display: flex; | |||
justify-content: space-between; | |||
align-items: center; | |||
width: 80%; | |||
margin: 10PX auto; | |||
border: 1px solid #1D6FE9; | |||
padding: 1PX 1PX 1PX 12PX ; | |||
border-radius: 50PX; | |||
input{ | |||
flex: 1; | |||
background: transparent; | |||
} | |||
} | |||
} | |||
.header_main{ | |||
height: 116px; | |||
background: url('../../../../static/images/lawEnforcement/new/list_head.png') no-repeat; | |||
background-size: 100% 100%; | |||
position: fixed; | |||
top: 0; | |||
left: 0; | |||
width: 100%; | |||
font-size: 36px; | |||
line-height: 116px; | |||
text-align: center; | |||
color: #fff; | |||
z-index: 999; | |||
.return_btn{ | |||
width: 24px; | |||
height: 43.2px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat; | |||
background-size: 20px 36px; | |||
position: absolute; | |||
left: 38px; | |||
top: 36px; | |||
} | |||
.add_btn{ | |||
width: 56.4px; | |||
height: 40.8px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat; | |||
background-size: 47px 34px; | |||
position: absolute; | |||
right: 38px; | |||
top: 36px; | |||
} | |||
} | |||
} | |||
/deep/.van-cell__title{ | |||
.first{ | |||
display: flex; | |||
justify-content: space-between; | |||
span{ | |||
color: #FE1313; | |||
&:last-child{ | |||
color: #B4B0B0; | |||
} | |||
} | |||
} | |||
span{ | |||
font-family: Arial; | |||
font-size: 0.35rem; | |||
font-weight: normal; | |||
display: -webkit-box; | |||
-webkit-box-orient: vertical; | |||
-webkit-line-clamp: 1; | |||
word-break: break-all; | |||
overflow: hidden; | |||
} | |||
} | |||
/deep/.van-cell__label .label { | |||
display: flex; | |||
justify-content: space-between; | |||
p{ | |||
display: inline-block; | |||
font-size: 0.35rem; | |||
&:first-child{ | |||
color: #333333; | |||
} | |||
&:last-child{ | |||
padding: 0 7PX; | |||
border: 1px solid #1D6FE9; | |||
color: #1D6FE9; | |||
border-radius: 1rem; | |||
} | |||
} | |||
} | |||
/deep/.van-cell__value{ | |||
flex: 0.3; | |||
color: #1D6FE9; | |||
font-weight: bold; | |||
} | |||
/deep/.van-cell{ | |||
/*margin-bottom: 0.2rem;*/ | |||
/*overflow: hidden;*/ | |||
} | |||
/deep/.van-cell:first-child{ | |||
/*margin-top: 0.2rem;*/ | |||
} | |||
/deep/van-ellipsis{ | |||
font-weight: bold; | |||
} | |||
/deep/ .van-swipe-cell{ | |||
margin-bottom: 0.3rem; | |||
border-radius: 0.2rem; | |||
overflow: hidden; | |||
box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16); | |||
&:first-child{ | |||
margin-top: 0.3rem; | |||
} | |||
} | |||
/deep/ .van-swipe-cell__right{ | |||
right: -1PX; | |||
} | |||
.van-row{ | |||
height: 100%; | |||
} | |||
.van-col{ | |||
height: 100%; | |||
} | |||
.delete-button { | |||
height: 100%; | |||
} | |||
</style> |
@@ -0,0 +1,274 @@ | |||
<template> | |||
<div class="home_wrapper"> | |||
<div class="header_main"> | |||
登记列表 | |||
<div class="return_btn" @click="onClickLeft"></div> | |||
</div> | |||
<div style="height: 58px;"></div> | |||
<div class="search_box"> | |||
<div class="search"> | |||
<input type="text" v-model="searchInput" placeholder="请输入登记名称" /> | |||
<img src="../../../../static/images/lawEnforcement/new/index_icon_04.png" @click="goSearch"> | |||
</div> | |||
<img src="../../../../static/images/lawEnforcement/new/list_icon_03.png" @click="$router.push({name:'lawEnforcementCaseAdd'})"/> | |||
</div> | |||
<van-list | |||
v-model="loading" | |||
:finished="finished" | |||
finished-text="没有更多了" | |||
@load="getList" | |||
> | |||
<van-swipe-cell v-for="(item,index) in list" :key="index"> | |||
<van-cell :title="item.caseName" center :to="{name:'lawEnforcementCaseDetailNew', query: {id:item.id}}"> | |||
<template #icon> | |||
<van-icon name="../../../../static/images/lawEnforcement/new/list_icon_01.png" size="20" color="#FF4646" style="margin-right: 10px;" /> | |||
</template> | |||
<template #label> | |||
<p>{{item.caseSourceText}}</p> | |||
<p>第{{item.belongTeamText}}</p> | |||
<p>{{item.registerDate}}</p> | |||
</template> | |||
</van-cell> | |||
<template #right> | |||
<van-row> | |||
<van-col> | |||
<van-button v-if="item.caseProgress == 1" square text="修改" type="info" :to="{name:'lawEnforcementCaseEdit', query: {id:item.id}}" class="delete-button" /> | |||
</van-col> | |||
<van-col> | |||
<van-button v-if="item.caseProgress == 1" square text="删除" type="danger" @click="deleteCase(item.id)" class="delete-button" /> | |||
</van-col> | |||
<van-col> | |||
<van-button v-if="item.caseProgress == 1" color="#FFA63E" square text="提交" type="info" @click="submitCase(item)" class="delete-button" /> | |||
</van-col> | |||
<van-col> | |||
<van-button v-if="item.caseProgress != 1" color="#1CB8B1" square type="info" :to="{name:'lawEnforcementCaseEnforceList', query: {id:item.id}}" class="delete-button" >添加<br/>执法<br/>员</van-button> | |||
</van-col> | |||
</van-row> | |||
</template> | |||
</van-swipe-cell> | |||
</van-list> | |||
</div> | |||
</template> | |||
<script> | |||
import { listCase , delCase , updateCase } from "@/api/lawEnforcement/index"; | |||
export default { | |||
name: "caseAllocation", | |||
data() { | |||
return { | |||
loading: false, | |||
finished: false, | |||
searchInput:'', | |||
queryApplyParams: { | |||
// 分页 | |||
pageNum: 1, | |||
pageSize: 10, | |||
// 查询排序 | |||
orderByColumn: "id", | |||
isAsc: "desc", | |||
caseName: null, | |||
caseProgress: "1", | |||
createBy: "use", | |||
}, | |||
list:[], | |||
belongTeamOptions:[], | |||
caseSourceOptions:[], | |||
caseProgressOptions:[], | |||
}; | |||
}, | |||
created() { | |||
this.getDicts("case_source").then(response => { | |||
this.caseSourceOptions = response.data; | |||
}); | |||
this.getDicts("team_category").then(response => { | |||
this.belongTeamOptions = response.data; | |||
}); | |||
this.getDicts("case_node").then(response => { | |||
this.caseProgressOptions = response.data; | |||
}); | |||
}, | |||
methods: { | |||
getList(){ | |||
var _this = this; | |||
listCase(_this.queryApplyParams).then(response => { | |||
response.rows.map(res=>{ | |||
res.caseSourceText = res.caseSource == '' ? '' : this.selectDictLabel(this.caseSourceOptions, res.caseSource); | |||
res.belongTeamText = res.belongTeam == '' ? '' : this.selectDictLabel(this.belongTeamOptions, res.belongTeam); | |||
this.list.push(res); | |||
}) | |||
console.log(this.list.length) | |||
if(this.list.length >= response.total){ | |||
this.finished = true; | |||
return; | |||
}else{ | |||
this.loading = false; | |||
this.queryApplyParams.pageNum += 1 ; | |||
} | |||
}); | |||
}, | |||
goSearch(){ | |||
// if (this.searchInput == ''){ | |||
// location.reload() | |||
// } | |||
this.list = []; | |||
this.queryApplyParams.caseName = this.searchInput; | |||
this.queryApplyParams.pageNum = 1 ; | |||
this.loading = false; | |||
this.finished = false; | |||
// this.getList(); | |||
}, | |||
deleteCase(id){ | |||
this.$dialog.confirm({ | |||
message: '是否确认删除案件登记标识为"' + id + '"的数据项?', | |||
}).then(function () { | |||
return delCase(id); | |||
}).then(() => { | |||
this.list = []; | |||
this.loading = false; | |||
this.finished = false; | |||
this.queryApplyParams.pageNum = 1 ; | |||
this.getList(); | |||
this.$notify({ type: 'success', message: '删除成功' }); | |||
}).catch(() => {}); | |||
}, | |||
submitCase(data){ | |||
var _this = this; | |||
data.caseId = data.id; | |||
data.caseStatus = "1"; | |||
data.caseProgress = "2"; // 勘察 | |||
data.caseProgressName = this.selectDictLabel(this.caseProgressOptions, data.caseProgress); // 勘察 | |||
this.$dialog.confirm({ | |||
message: '提交后案件将进入后续流程并且不能修改,是否确认提交?', | |||
}).then(function () { | |||
// 更新案件的节点和状态 | |||
updateCase(data).then(response => { | |||
_this.$notify({ type: 'success', message: '提交成功' }); | |||
}); | |||
}).then(() => { | |||
this.list = []; | |||
this.loading = false; | |||
this.finished = false; | |||
this.queryApplyParams.pageNum = 1 ; | |||
this.getList(); | |||
this.$notify({ type: 'success', message: '提交成功' }); | |||
}).catch(() => {}); | |||
} | |||
}, | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
.home_wrapper{ | |||
background: #e9e9e9; | |||
min-height: 100vh; | |||
width: 100vw; | |||
padding: 0 3% 0.2rem; | |||
.search_box{ | |||
display: flex; | |||
justify-content: space-between; | |||
align-items: center; | |||
width: 92%; | |||
margin: 0PX auto; | |||
.search{ | |||
background: #ffffff; | |||
display: flex; | |||
justify-content: space-between; | |||
align-items: center; | |||
width: 100%; | |||
margin: 10PX auto; | |||
border: 1px solid #1D6FE9; | |||
padding: 1PX 1PX 1PX 12PX ; | |||
border-radius: 50PX; | |||
margin-right: 10PX; | |||
input{ | |||
flex: 1; | |||
background: transparent; | |||
} | |||
} | |||
} | |||
.header_main{ | |||
height: 116px; | |||
background: url('../../../../static/images/lawEnforcement/new/list_head.png') no-repeat; | |||
background-size: 100% 100%; | |||
position: fixed; | |||
top: 0; | |||
left: 0; | |||
width: 100%; | |||
font-size: 36px; | |||
line-height: 116px; | |||
text-align: center; | |||
color: #fff; | |||
z-index: 999; | |||
.return_btn{ | |||
width: 24px; | |||
height: 43.2px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat; | |||
background-size: 20px 36px; | |||
position: absolute; | |||
left: 38px; | |||
top: 36px; | |||
} | |||
.add_btn{ | |||
width: 56.4px; | |||
height: 40.8px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat; | |||
background-size: 47px 34px; | |||
position: absolute; | |||
right: 38px; | |||
top: 36px; | |||
} | |||
} | |||
} | |||
/deep/.van-cell__title span{ | |||
font-family: Arial; | |||
font-size: 0.4rem; | |||
font-weight: normal; | |||
color: #666666; | |||
display: -webkit-box; | |||
-webkit-box-orient: vertical; | |||
-webkit-line-clamp: 1; | |||
word-break: break-all; | |||
overflow: hidden; | |||
} | |||
/deep/.van-cell__label { | |||
display: flex; | |||
justify-content: space-between; | |||
p{ | |||
display: inline-block; | |||
&:first-child{ | |||
background: rgba(28,184,177,0.2); | |||
padding: 0 5PX; | |||
border-radius: 3PX; | |||
color: #1CB8B1; | |||
} | |||
} | |||
} | |||
/deep/.van-cell__value{ | |||
flex: 0.3; | |||
color: #1D6FE9; | |||
font-weight: bold; | |||
} | |||
/deep/.van-swipe-cell{ | |||
margin-bottom: 0.2rem; | |||
border-radius: 0.2rem; | |||
overflow: hidden; | |||
box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16); | |||
.van-swipe-cell__right{ | |||
right: -2PX; | |||
} | |||
} | |||
/deep/van-ellipsis{ | |||
font-weight: bold; | |||
} | |||
.van-row{ | |||
height: 100%; | |||
} | |||
.van-col{ | |||
height: 100%; | |||
} | |||
.delete-button { | |||
height: 100%; | |||
} | |||
</style> |
@@ -266,9 +266,6 @@ export default { | |||
box-shadow: 0px 3PX 6PX rgba(0,0,0,0.16); | |||
border-radius: 5PX; | |||
overflow: hidden; | |||
&:nth-child(2){ | |||
margin: 0 10PX; | |||
} | |||
} | |||
/deep/ .van-grid-item__content{ | |||
p{ | |||
@@ -22,7 +22,7 @@ | |||
</template> | |||
<template #label> | |||
<div class="label"> | |||
<p>执法人:{{item.legalName}}</p> | |||
<p>执法人:{{item.handlerNameStr}}</p> | |||
<p>{{item.caseProgressName}}</p> | |||
</div> | |||
</template> | |||
@@ -258,11 +258,13 @@ | |||
/deep/.van-cell__label .label { | |||
display: flex; | |||
justify-content: space-between; | |||
align-items: center; | |||
p{ | |||
display: inline-block; | |||
font-size: 0.35rem; | |||
&:first-child{ | |||
color: #333333; | |||
width: 70%; | |||
} | |||
&:last-child{ | |||
padding: 0 7PX; | |||
@@ -59,20 +59,8 @@ | |||
<span class="custom-title">附件<i class="bgBlue"></i></span> | |||
</template> | |||
<div class="cf"> | |||
<van-row> | |||
<van-col :span="6"> | |||
<van-image src="../../../../static/images/lawEnforcement/icon/icon_fj.png" width="50" /> | |||
<p>产品确认</p> | |||
<p>通知书</p> | |||
</van-col> | |||
<van-col :span="6"> | |||
<van-image src="../../../../static/images/lawEnforcement/icon/icon_fj.png" width="50" /> | |||
<p>产品确认</p> | |||
<p>通知书</p> | |||
</van-col> | |||
<van-col :span="6"></van-col> | |||
<van-col :span="6"></van-col> | |||
</van-row> | |||
<van-uploader v-model="form.attachementList" :show-upload="false" :deletable="false" /> | |||
<van-empty v-if="form.attachement == null " description="暂无文件" /> | |||
</div> | |||
</van-collapse-item> | |||
</van-collapse> | |||
@@ -181,6 +169,17 @@ | |||
getDeptName(response.data.deptId).then(res => { | |||
response.data.deptId = res.data.deptName | |||
}); | |||
if (response.data.attachement){ | |||
response.data.attachementList = []; | |||
var attachement = response.data.attachement.split( "," ); | |||
attachement.forEach(responseAttach=>{ | |||
response.data.attachementList.push({ | |||
url:'/api' + responseAttach, | |||
isImage: true | |||
}); | |||
}) | |||
// process.env.VUE_APP_BASE_ROUTING_URL + process.env.VUE_APP_BASE_API | |||
} | |||
this.form = response.data; | |||
}); | |||
getSurveyByCaseId(this.$route.query.id).then((response) => { | |||