@@ -24,6 +24,11 @@ | |||
"resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.9.0.tgz", | |||
"integrity": "sha512-wjtKehFAIARq2OxK8j3JrggNlEslJfNuSm2ArteIbKyRMts2g0a7KzTxfRVNUM+O0gnBJ2hNV8nWPOYBgI1sew==" | |||
}, | |||
"@types/json-schema": { | |||
"version": "7.0.11", | |||
"resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", | |||
"integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==" | |||
}, | |||
"@types/q": { | |||
"version": "1.5.4", | |||
"resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.4.tgz", | |||
@@ -121,8 +126,7 @@ | |||
"ajv-keywords": { | |||
"version": "3.5.2", | |||
"resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", | |||
"integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", | |||
"dev": true | |||
"integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==" | |||
}, | |||
"align-text": { | |||
"version": "0.1.4", | |||
@@ -724,8 +728,7 @@ | |||
"babel-plugin-syntax-dynamic-import": { | |||
"version": "6.18.0", | |||
"resolved": "https://registry.npmjs.org/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz", | |||
"integrity": "sha1-jWomIpyDdFqZgqRBBRVyyqF5sdo=", | |||
"dev": true | |||
"integrity": "sha1-jWomIpyDdFqZgqRBBRVyyqF5sdo=" | |||
}, | |||
"babel-plugin-syntax-exponentiation-operator": { | |||
"version": "6.13.0", | |||
@@ -7455,6 +7458,11 @@ | |||
"sha.js": "^2.4.8" | |||
} | |||
}, | |||
"pdfjs-dist": { | |||
"version": "2.6.347", | |||
"resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-2.6.347.tgz", | |||
"integrity": "sha512-QC+h7hG2su9v/nU1wEI3SnpPIrqJODL7GTDFvR74ANKGq1AFJW16PH8VWnhpiTi9YcLSFV9xLeWSgq+ckHLdVQ==" | |||
}, | |||
"performance-now": { | |||
"version": "2.1.0", | |||
"resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", | |||
@@ -10178,6 +10186,63 @@ | |||
"unpipe": "1.0.0" | |||
} | |||
}, | |||
"raw-loader": { | |||
"version": "4.0.2", | |||
"resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-4.0.2.tgz", | |||
"integrity": "sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA==", | |||
"requires": { | |||
"loader-utils": "^2.0.0", | |||
"schema-utils": "^3.0.0" | |||
}, | |||
"dependencies": { | |||
"ajv": { | |||
"version": "6.12.6", | |||
"resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", | |||
"integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", | |||
"requires": { | |||
"fast-deep-equal": "^3.1.1", | |||
"fast-json-stable-stringify": "^2.0.0", | |||
"json-schema-traverse": "^0.4.1", | |||
"uri-js": "^4.2.2" | |||
} | |||
}, | |||
"fast-deep-equal": { | |||
"version": "3.1.3", | |||
"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", | |||
"integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" | |||
}, | |||
"json-schema-traverse": { | |||
"version": "0.4.1", | |||
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", | |||
"integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" | |||
}, | |||
"json5": { | |||
"version": "2.2.1", | |||
"resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", | |||
"integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==" | |||
}, | |||
"loader-utils": { | |||
"version": "2.0.4", | |||
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", | |||
"integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", | |||
"requires": { | |||
"big.js": "^5.2.2", | |||
"emojis-list": "^3.0.0", | |||
"json5": "^2.1.2" | |||
} | |||
}, | |||
"schema-utils": { | |||
"version": "3.1.1", | |||
"resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", | |||
"integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", | |||
"requires": { | |||
"@types/json-schema": "^7.0.8", | |||
"ajv": "^6.12.5", | |||
"ajv-keywords": "^3.5.2" | |||
} | |||
} | |||
} | |||
}, | |||
"read-cache": { | |||
"version": "1.0.0", | |||
"resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", | |||
@@ -12300,6 +12365,19 @@ | |||
} | |||
} | |||
}, | |||
"vue-pdf": { | |||
"version": "4.3.0", | |||
"resolved": "https://registry.npmjs.org/vue-pdf/-/vue-pdf-4.3.0.tgz", | |||
"integrity": "sha512-zd3lJj6CbtrawgaaDDciTDjkJMUKiLWtbEmBg5CvFn9Noe9oAO/GNy/fc5c59qGuFCJ14ibIV1baw4S07e5bSQ==", | |||
"requires": { | |||
"babel-plugin-syntax-dynamic-import": "^6.18.0", | |||
"loader-utils": "^1.4.0", | |||
"pdfjs-dist": "2.6.347", | |||
"raw-loader": "^4.0.2", | |||
"vue-resize-sensor": "^2.0.0", | |||
"worker-loader": "^2.0.0" | |||
} | |||
}, | |||
"vue-qrcode-reader": { | |||
"version": "3.1.0", | |||
"resolved": "https://registry.npmjs.org/vue-qrcode-reader/-/vue-qrcode-reader-3.1.0.tgz", | |||
@@ -12319,6 +12397,11 @@ | |||
} | |||
} | |||
}, | |||
"vue-resize-sensor": { | |||
"version": "2.0.0", | |||
"resolved": "https://registry.npmjs.org/vue-resize-sensor/-/vue-resize-sensor-2.0.0.tgz", | |||
"integrity": "sha512-W+y2EAI/BxS4Vlcca9scQv8ifeBFck56DRtSwWJ2H4Cw1GLNUYxiZxUHHkuzuI5JPW/cYtL1bPO5xPyEXx4LmQ==" | |||
}, | |||
"vue-router": { | |||
"version": "3.5.1", | |||
"resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.5.1.tgz", | |||
@@ -13504,6 +13587,47 @@ | |||
"errno": "~0.1.7" | |||
} | |||
}, | |||
"worker-loader": { | |||
"version": "2.0.0", | |||
"resolved": "https://registry.npmjs.org/worker-loader/-/worker-loader-2.0.0.tgz", | |||
"integrity": "sha512-tnvNp4K3KQOpfRnD20m8xltE3eWh89Ye+5oj7wXEEHKac1P4oZ6p9oTj8/8ExqoSBnk9nu5Pr4nKfQ1hn2APJw==", | |||
"requires": { | |||
"loader-utils": "^1.0.0", | |||
"schema-utils": "^0.4.0" | |||
}, | |||
"dependencies": { | |||
"ajv": { | |||
"version": "6.12.6", | |||
"resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", | |||
"integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", | |||
"requires": { | |||
"fast-deep-equal": "^3.1.1", | |||
"fast-json-stable-stringify": "^2.0.0", | |||
"json-schema-traverse": "^0.4.1", | |||
"uri-js": "^4.2.2" | |||
} | |||
}, | |||
"fast-deep-equal": { | |||
"version": "3.1.3", | |||
"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", | |||
"integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" | |||
}, | |||
"json-schema-traverse": { | |||
"version": "0.4.1", | |||
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", | |||
"integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" | |||
}, | |||
"schema-utils": { | |||
"version": "0.4.7", | |||
"resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz", | |||
"integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", | |||
"requires": { | |||
"ajv": "^6.1.0", | |||
"ajv-keywords": "^3.1.0" | |||
} | |||
} | |||
} | |||
}, | |||
"wrap-ansi": { | |||
"version": "2.1.0", | |||
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", | |||
@@ -31,6 +31,7 @@ | |||
"vue-baidu-map": "^0.21.22", | |||
"vue-cookies": "^1.7.4", | |||
"vue-esign": "^1.0.5", | |||
"vue-pdf": "^4.3.0", | |||
"vue-qrcode-reader": "^3.1.0", | |||
"vue-router": "^3.0.1", | |||
"vue-search-tree": "^1.9.9", | |||
@@ -717,3 +717,130 @@ export function getMonitor(query) { | |||
params: query | |||
}) | |||
} | |||
// 查询案件下拉列表 | |||
export function getCaseList(query) { | |||
return request({ | |||
url: '/enforce/case/getCaseList', | |||
method: 'get', | |||
params: query | |||
}) | |||
} | |||
// 查询案件文书列表 | |||
export function getCaseDocumentList(query) { | |||
return request({ | |||
url: '/enforce/case/getCaseDocumentList', | |||
method: 'get', | |||
params: query | |||
}) | |||
} | |||
// 生成下载协助调查函 | |||
export function createAssistPDF(query) { | |||
return request({ | |||
url: '/enforce/assist/createPDF', | |||
method: 'post', | |||
params: query | |||
}) | |||
} | |||
// 生成现场检查(勘察)笔录PDF | |||
export function createSurveyPDF(query) { | |||
return request({ | |||
url: '/enforce/survey/createPDF', | |||
method: 'post', | |||
params: query | |||
}) | |||
} | |||
// 生成立案相关PDF | |||
export function createPutrecordPDF(query) { | |||
return request({ | |||
url: '/enforce/putrecord/createPDF', | |||
method: 'post', | |||
params: query | |||
}) | |||
} | |||
// 生成现场检查(勘察)笔录PDF | |||
export function createOnrecordPDF(query) { | |||
return request({ | |||
url: '/enforce/onrecord/createPDF', | |||
method: 'post', | |||
params: query | |||
}) | |||
} | |||
// 生成抽样产品相关PDF | |||
export function createSamplingPDF(query) { | |||
return request({ | |||
url: '/enforce/sampling/createPDF', | |||
method: 'post', | |||
params: query | |||
}) | |||
} | |||
// 生成PDF | |||
export function createTreatPDF(query) { | |||
return request({ | |||
url: '/enforce/treat/createPDF', | |||
method: 'post', | |||
params: query | |||
}) | |||
} | |||
// 生成PDF | |||
export function createDecisionPDF(query) { | |||
return request({ | |||
url: '/enforce/decision/createPDF', | |||
method: 'post', | |||
params: query | |||
}) | |||
} | |||
// 生成现场检查(勘察)笔录PDF | |||
export function createEvidencePDF(query) { | |||
return request({ | |||
url: '/enforce/evidence/createPDF', | |||
method: 'post', | |||
params: query | |||
}) | |||
} | |||
// 生成PDF | |||
export function createExecutePDF(query) { | |||
return request({ | |||
url: '/enforce/execute/createPDF', | |||
method: 'post', | |||
params: query | |||
}) | |||
} | |||
// 生成PDF | |||
export function createEndingPDF(query) { | |||
return request({ | |||
url: '/enforce/ending/createPDF', | |||
method: 'post', | |||
params: query | |||
}) | |||
} | |||
// 案件中止调查PDF | |||
export function createBreakPDF(query) { | |||
return request({ | |||
url: '/enforce/break/createPDF', | |||
method: 'post', | |||
params: query | |||
}) | |||
} | |||
// 案件恢复调查PDF | |||
export function createResumePDF(query) { | |||
return request({ | |||
url: '/enforce/resume/createPDF', | |||
method: 'post', | |||
params: query | |||
}) | |||
} | |||
@@ -3562,11 +3562,20 @@ export const constantRoutes = [ | |||
path: '/lawEnforcement/record', | |||
name: 'lawEnforcementRecord', | |||
meta: { | |||
title: '现场检查(勘察)笔录', | |||
title: '现场检查笔录', | |||
hidden: true, | |||
}, | |||
component: (resolve) => require(['@/views/lawEnforcement/record/record'], resolve) | |||
}, | |||
{ ////农业执法(新)-- 现场检查(勘察)笔录 | |||
path: '/lawEnforcement/recordDetail', | |||
name: 'lawEnforcementRecordDetail', | |||
meta: { | |||
title: '现场检查笔录', | |||
hidden: true, | |||
}, | |||
component: (resolve) => require(['@/views/lawEnforcement/record/recordDetail'], resolve) | |||
}, | |||
{ ////农业执法(新)-- 案件列表 | |||
path: '/lawEnforcement/caseList', | |||
name: 'lawEnforcementCaseList', | |||
@@ -57,8 +57,8 @@ | |||
<td rowspan="2"><img src="../../../static/images/lawEnforcement/new/index_icon_12.png" @click="$router.push({name:'lawEnforcementRecordDocument'})"></td> | |||
</tr> | |||
<tr> | |||
<td><img src="../../../static/images/lawEnforcement/new/index_icon_10.png" @click="$router.push({name:'lawEnforcementRecord',query:{type:'3'}})"></td> | |||
<td><img src="../../../static/images/lawEnforcement/new/index_icon_11.png" @click="$router.push({name:'lawEnforcementRecord',query:{type:'4'}})"></td> | |||
<td colspan="2"><img src="../../../static/images/lawEnforcement/new/index_icon_10.png" @click="$router.push({name:'lawEnforcementRecord',query:{type:'3'}})"></td> | |||
<!-- <td><img src="../../../static/images/lawEnforcement/new/index_icon_11.png" @click="$router.push({name:'lawEnforcementRecord',query:{type:'4'}})"></td>--> | |||
</tr> | |||
</table> | |||
<!-- <van-row>--> | |||
@@ -6,107 +6,59 @@ | |||
</div> | |||
<div style="height: 58px;"></div> | |||
<div class="main_box"> | |||
<van-field v-model="value" label="案件名称" placeholder="请选择案件名称" :border="false" readonly is-link @click="$router.push({name:'lawEnforcementCaseList'})" /> | |||
<van-field v-model="value" label="执法节点" placeholder="请选择执法节点" :border="false" readonly is-link arrow-direction="down" > | |||
<template #input> | |||
<van-popover | |||
v-model="showPopover" | |||
trigger="click" | |||
:actions="actions" | |||
placement="bottom-start" | |||
> | |||
<template #reference> | |||
<p style="color: #cccccc">请选择执法节点</p> | |||
</template> | |||
</van-popover> | |||
</template> | |||
</van-field> | |||
<van-field v-model="value" label="签字上传" :border="false" readonly > | |||
<template #input> | |||
<van-uploader v-model="fileList" multiple /> | |||
</template> | |||
</van-field> | |||
<van-field v-model="value" label="案件名称" placeholder="请选择案件名称" :border="false" readonly is-link @click="showPicker = true" /> | |||
</div> | |||
<div class="main_box" style="margin-top: 10px;"> | |||
<van-cell> | |||
<template #title> | |||
<van-icon name="../../../static/images/lawEnforcement/icon/record_icon_01.png" size="20"></van-icon> | |||
<span class="custom-title">视频地址<i class="bgBlue"></i></span> | |||
</template> | |||
</van-cell> | |||
<van-field type="textarea" autosize :border="false" placeholder="输入视频地址、执法文件名称等" /> | |||
</div> | |||
<div class="main_box" style="margin-top: 10px;"> | |||
<van-cell> | |||
<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> | |||
</van-cell> | |||
<div class="cf"> | |||
<van-row> | |||
<van-col :span="6"> | |||
<van-image src="../../../../static/images/lawEnforcement/icon/record_icon_02.png" width="50" /> | |||
<div class="main_box" style="margin-top: 15px"> | |||
<div class="peopleList"> | |||
<van-row v-for="(item,index) in caseDocumentList" :key="index" > | |||
<van-col :span="17"> | |||
<img src="../../../../static/images/lawEnforcement/icon/record_icon_03.png"/> | |||
<p>{{item.fileHalfName}}</p> | |||
</van-col> | |||
<van-col :span="18"> | |||
<p>现场检查(勘验)笔录.docx</p> | |||
<van-col :span="7"> | |||
<p @click="$router.push({name:'lawEnforcementRecordDetail',query:{id:item.id,fileType:item.fileType,fileHalfName:item.fileHalfName}})">预览</p> | |||
<a href="">下载</a> | |||
</van-col> | |||
</van-row> | |||
</div> | |||
</div> | |||
<div class="submit_box"> | |||
<p class="submitButton">保存</p> | |||
<p class="submitButton">处理</p> | |||
</div> | |||
<van-popup v-model="showPicker" round position="bottom"> | |||
<van-picker | |||
title="选择案件" | |||
show-toolbar | |||
value-key="caseName" | |||
:columns="columns" | |||
@cancel="showPicker = false" | |||
@confirm="onConfirm" | |||
/> | |||
</van-popup> | |||
</div> | |||
</template> | |||
<script> | |||
import { getScheme } from "@/api/lawEnforcement/index"; | |||
import { getCaseList , getCaseDocumentList } from "@/api/lawEnforcement/index"; | |||
export default { | |||
name: "programmeDetail", | |||
data() { | |||
return { | |||
showPopover: false, | |||
// 通过 actions 属性来定义菜单选项 | |||
actions: [{ text: '选项一' }, { text: '选项二' }, { text: '选项三' }], | |||
showBankType:false, | |||
showPayeeType:false, | |||
showPicker:false, | |||
form:{}, | |||
bankType:'', | |||
payeeType:'', | |||
value:'', | |||
bankTypeOptions:[], | |||
payeeTypeOptions:[], | |||
tEnforceSchemeHandlerList:[], | |||
minDate: new Date(2020, 0, 1), | |||
maxDate: new Date(2025, 10, 1), | |||
currentDate: new Date(2021, 0, 17), | |||
activeNames: ['1'], | |||
activeNames1: ['1'], | |||
activeNames2: ['1'], | |||
fileList:[], | |||
headTitle:'' | |||
headTitle:'', | |||
showPicker:false, | |||
columns:[], | |||
caseDocumentList:[] | |||
}; | |||
}, | |||
created() { | |||
// this.getDictionaries() | |||
this.getDictionaries() | |||
if (this.$route.query.type == '1'){ | |||
this.headTitle = '现场检查(勘察)笔录'; | |||
this.headTitle = '勘察文书'; | |||
} | |||
if (this.$route.query.type == '2'){ | |||
this.headTitle = '询问笔录'; | |||
this.headTitle = '立案文书'; | |||
} | |||
if (this.$route.query.type == '3'){ | |||
this.headTitle = '当场行政处罚决定书'; | |||
this.headTitle = '取证文书'; | |||
} | |||
if (this.$route.query.type == '4'){ | |||
this.headTitle = '责令改正通知书'; | |||
@@ -114,8 +66,23 @@ | |||
}, | |||
methods: { | |||
getDictionaries(){ | |||
getScheme(this.$route.query.id).then((response) => { | |||
this.form = response.data; | |||
let query = { | |||
caseProgress: parseInt(this.$route.query.type) + 1 | |||
} | |||
getCaseList(query).then((response) => { | |||
this.columns = response.data; | |||
}); | |||
}, | |||
onConfirm(val){ | |||
console.log(val) | |||
this.showPicker = false; | |||
this.value = val.caseName; | |||
let query = { | |||
id:val.id, | |||
caseProgress:parseInt(this.$route.query.type) + 1 | |||
} | |||
getCaseDocumentList(query).then((response) => { | |||
this.caseDocumentList = response.data; | |||
}); | |||
}, | |||
goBack(){ | |||
@@ -192,16 +159,41 @@ | |||
margin-right: 0; | |||
} | |||
.peopleList{ | |||
padding-right: 3%; | |||
padding: 0 3%; | |||
text-align: left; | |||
.van-row{ | |||
margin-bottom: 10PX; | |||
.van-col{ | |||
text-align: center; | |||
font-size: 14PX; | |||
border-bottom: 1px solid #dddddd; | |||
display: flex; | |||
align-items: center; | |||
&:last-child{ | |||
border: none; | |||
} | |||
&:first-child{ | |||
.van-col{ | |||
.van-col--17{ | |||
display: flex; | |||
align-items: center; | |||
p{ | |||
margin-left: 10PX; | |||
} | |||
} | |||
.van-col--7{ | |||
display: flex; | |||
justify-content: space-between; | |||
p,a{ | |||
color: #1D6FE9; | |||
border: 1px solid #1D6FE9; | |||
text-align: center; | |||
border-radius: 15PX; | |||
display: inline-block; | |||
padding: 5px 15px; | |||
} | |||
} | |||
.van-col{ | |||
text-align: left; | |||
font-size: 14PX; | |||
color: #333333; | |||
padding: 15PX 0; | |||
img{ | |||
display: block; | |||
} | |||
} | |||
} | |||
@@ -0,0 +1,424 @@ | |||
<template> | |||
<div class="app-container"> | |||
<div class="header_main"> | |||
文件预览 | |||
<div class="return_btn" @click="onClickLeft"></div> | |||
</div> | |||
<div style="height: 58px;"></div> | |||
<pdf v-for="item in numPages" :key="item" :src="url" :page="item" ref="pdf"></pdf> | |||
</div> | |||
</template> | |||
<script> | |||
import { createAssistPDF,createSurveyPDF,createPutrecordPDF,createOnrecordPDF,createSamplingPDF,createTreatPDF,createDecisionPDF,createEvidencePDF,createExecutePDF,createEndingPDF,createBreakPDF,createResumePDF } from "@/api/lawEnforcement/index"; | |||
import pdf from 'vue-pdf' | |||
export default { | |||
components:{ | |||
}, | |||
name: "programmeDetail", | |||
data() { | |||
return { | |||
url:'', | |||
numPages: null, // pdf 总页数 | |||
}; | |||
}, | |||
created() { | |||
const id = this.$route.query.id; | |||
const fileType = this.$route.query.fileType; | |||
const fileHalfName = this.$route.query.fileHalfName; | |||
const baseURL = process.env.VUE_APP_BASE_API; | |||
switch (fileType) { | |||
case "assistFile": // 协助调查函 | |||
var param = { | |||
id: id, | |||
fileType: fileType, | |||
fileHalfName: fileHalfName, | |||
}; | |||
createAssistPDF(param).then(response => { | |||
this.url = baseURL + response.msg; | |||
let loadingTask = pdf.createLoadingTask(this.url) | |||
loadingTask.promise.then(pdf => { | |||
this.numPages = pdf.numPages | |||
}) | |||
}); | |||
break; | |||
case "surveyRecordFile": // 现场检查(勘验)笔录 | |||
case "surveyAskRecordFile": // 询问笔录 | |||
var param = { | |||
id: id, | |||
fileType: fileType, | |||
fileHalfName: fileHalfName, | |||
}; | |||
createSurveyPDF(param).then(response => { | |||
this.url = baseURL + response.msg; | |||
let loadingTask = pdf.createLoadingTask(this.url) | |||
loadingTask.promise.then(pdf => { | |||
this.numPages = pdf.numPages | |||
}) | |||
}); | |||
break; | |||
case "caseTransferLetter": // 案件移送函 | |||
case "noticeOfDesignatedJurisdiction": // 指定管辖通知书 | |||
case "notificationOfCaseSubmission": // 案件交办通知书 | |||
case "caseTransferLetter1": // 案件移送函 | |||
case "letterTransferSuspectedCriminalCase": // 涉嫌犯罪案件移送书 | |||
case "noticeOfRectificationOrder": // 责令改正通知书 | |||
case "writtenDecisionOnAdministrativePenaltyOnTheSpot": // 当场行政处罚决定书 | |||
case "noFilingExaminationAndApprovalForm": // 不予立案审批表 | |||
case "revocationOfFilingApprovalForm": // 撤销立案审批表 | |||
case "notPunishDecisionNotice": // 不予行政处罚决定书 | |||
case "caseHandlingOpinion": // 案件处理意见书 | |||
var param = { | |||
id: id, | |||
fileType: fileType, | |||
fileHalfName: fileHalfName, | |||
}; | |||
createOnrecordPDF(param).then(response => { | |||
this.url = baseURL + response.msg; | |||
let loadingTask = pdf.createLoadingTask(this.url) | |||
loadingTask.promise.then(pdf => { | |||
this.numPages = pdf.numPages | |||
}) | |||
}); | |||
break; | |||
case "evidenceSaveFile": // 证据先行保存通知书 | |||
case "sealUpRecordFile": // 查封(扣押)现场笔录 | |||
case "sealUpDecisionFile": // 查封(扣押)决定书 | |||
case "sealUpDecisionGoodsList": // 查封(扣押)财物清单 | |||
case "removeSealupFile": // 解除查封(扣押)决定书 | |||
case "removeSealUpDecisionGoodsList": // 解除查封(扣押)财物清单 | |||
case "filingExaminationAndApprovalForm": // 立案审批表 | |||
var param = { | |||
id: id, | |||
fileType: fileType, | |||
fileHalfName: fileHalfName, | |||
}; | |||
createPutrecordPDF(param).then(response => { | |||
this.url = baseURL + response.msg; | |||
let loadingTask = pdf.createLoadingTask(this.url) | |||
loadingTask.promise.then(pdf => { | |||
this.numPages = pdf.numPages | |||
}) | |||
}); | |||
break; | |||
case "productSureFile": // 产品确认通知书 | |||
case "samplingRecordFile": // 抽样取证凭证 | |||
var param = { | |||
id: id, | |||
fileType: fileType, | |||
fileHalfName: fileHalfName, | |||
}; | |||
createSamplingPDF(param).then(response => { | |||
this.url = baseURL + response.msg; | |||
let loadingTask = pdf.createLoadingTask(this.url) | |||
loadingTask.promise.then(pdf => { | |||
this.numPages = pdf.numPages | |||
}) | |||
}); | |||
break; | |||
case "noticeOfAdministrativePenaltyInAdvance": // 行政处罚事先告知书(非听证) | |||
case "noticeOfHearingAdministrativePenaltyInAdvance": // 行政处罚事先告知书(听证) | |||
case "noticeOfHearingOnAdministrativeTreatment": // 行政处罚听证会通知书 | |||
case "administrativeDispositionHearingReport": // 行政处罚听证会报告书 | |||
case "hearingRecord": // 听证笔录 | |||
var param = { | |||
id: id, | |||
fileType: fileType, | |||
fileHalfName: fileHalfName, | |||
}; | |||
createTreatPDF(param).then(response => { | |||
this.url = baseURL + response.msg; | |||
let loadingTask = pdf.createLoadingTask(this.url) | |||
loadingTask.promise.then(pdf => { | |||
this.numPages = pdf.numPages | |||
}) | |||
}); | |||
break; | |||
case "caseHandlingOpinionFromTreat": // 案件处理意见书(处理页面按钮点击) | |||
var param = { | |||
id: id, | |||
fileType: "caseHandlingOpinion", | |||
fileHalfName: fileHalfName, | |||
}; | |||
createTreatPDF(param).then(response => { | |||
this.url = baseURL + response.msg; | |||
let loadingTask = pdf.createLoadingTask(this.url) | |||
loadingTask.promise.then(pdf => { | |||
this.numPages = pdf.numPages | |||
}) | |||
}); | |||
break; | |||
case "proofOfService": // 送达回证 | |||
case "writtenDecisionOfAdministrativePenalty": // 行政处罚决定书 | |||
case "administrativePenaltyDecisionExaminationAndApprovalForm": // 行政处罚决定审批表 | |||
var param = { | |||
id: id, | |||
fileType: fileType, | |||
fileHalfName: fileHalfName, | |||
}; | |||
createDecisionPDF(param).then(response => { | |||
this.url = baseURL + response.msg; | |||
let loadingTask = pdf.createLoadingTask(this.url) | |||
loadingTask.promise.then(pdf => { | |||
this.numPages = pdf.numPages | |||
}) | |||
}); | |||
break; | |||
case "detectResultFile": // 抽样检测结果告知书 | |||
var param = { | |||
id: id, | |||
fileType: fileType, | |||
fileHalfName: fileHalfName, | |||
}; | |||
createEvidencePDF(param).then(response => { | |||
this.url = baseURL + response.msg; | |||
let loadingTask = pdf.createLoadingTask(this.url) | |||
loadingTask.promise.then(pdf => { | |||
this.numPages = pdf.numPages | |||
}) | |||
}); | |||
break; | |||
case "noticeForExecutionOfAdministrativePenaltyDecision": // 履行行政处罚决定催告书 | |||
case "applicationForEnforcement": // 强制执行申请书 | |||
case "goodsHandleNotice": // 登记保存物品处理通知书 | |||
var param = { | |||
id: id, | |||
fileType: fileType, | |||
fileHalfName: fileHalfName, | |||
}; | |||
createExecutePDF(param).then(response => { | |||
this.url = baseURL + response.msg; | |||
let loadingTask = pdf.createLoadingTask(this.url) | |||
loadingTask.promise.then(pdf => { | |||
this.numPages = pdf.numPages | |||
}) | |||
}); | |||
break; | |||
case "delayedOrStageNotice": // 延期(分期)缴纳罚款通知书 | |||
case "caseEndReport": // 行政处罚结案报告 | |||
case "punishGoodsHandleNotice": // 罚没物品处理记录 | |||
var param = { | |||
id: id, | |||
fileType: fileType, | |||
fileHalfName: fileHalfName, | |||
}; | |||
createEndingPDF(param).then(response => { | |||
this.url = baseURL + response.msg; | |||
let loadingTask = pdf.createLoadingTask(this.url) | |||
loadingTask.promise.then(pdf => { | |||
this.numPages = pdf.numPages | |||
}) | |||
}); | |||
break; | |||
case "breakCaseFile": // 案件中止调查决定书 | |||
var param = { | |||
id: id, | |||
fileType: fileType, | |||
fileHalfName: fileHalfName, | |||
}; | |||
createBreakPDF(param).then(response => { | |||
this.url = baseURL + response.msg; | |||
let loadingTask = pdf.createLoadingTask(this.url) | |||
loadingTask.promise.then(pdf => { | |||
this.numPages = pdf.numPages | |||
}) | |||
}); | |||
break; | |||
case "resumeCaseFile": // 案件恢复调查决定书 | |||
var param = { | |||
id: id, | |||
fileType: fileType, | |||
fileHalfName: fileHalfName, | |||
}; | |||
createResumePDF(param).then(response => { | |||
this.url = baseURL + response.msg; | |||
let loadingTask = pdf.createLoadingTask(this.url) | |||
loadingTask.promise.then(pdf => { | |||
this.numPages = pdf.numPages | |||
}) | |||
}); | |||
break; | |||
} | |||
}, | |||
methods: { | |||
goBack(){ | |||
window.history.go(-1) | |||
} | |||
}, | |||
} | |||
</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; | |||
display: flex; | |||
align-items: center; | |||
.van-col{ | |||
padding: 5PX 0; | |||
font-size: 12PX!important; | |||
text-align: center; | |||
p{ | |||
color: #1D6FE9; | |||
text-align: left; | |||
font-size: .4rem; | |||
} | |||
} | |||
&: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: 0 3%; | |||
text-align: left; | |||
.van-row{ | |||
border-bottom: 1px solid #dddddd; | |||
display: flex; | |||
align-items: center; | |||
&:last-child{ | |||
border: none; | |||
} | |||
.van-col--17{ | |||
display: flex; | |||
align-items: center; | |||
p{ | |||
margin-left: 10PX; | |||
} | |||
} | |||
.van-col--7{ | |||
display: flex; | |||
justify-content: space-between; | |||
p{ | |||
color: #1D6FE9; | |||
border: 1px solid #1D6FE9; | |||
text-align: center; | |||
border-radius: 15PX; | |||
display: inline-block; | |||
padding: 5px 15px; | |||
} | |||
} | |||
.van-col{ | |||
text-align: left; | |||
font-size: 14PX; | |||
color: #333333; | |||
padding: 15PX 0; | |||
img{ | |||
display: block; | |||
} | |||
} | |||
} | |||
} | |||
.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, #77A6EF , #2E79E9); | |||
text-align: center; | |||
color: #ffffff; | |||
height: 70px; | |||
line-height: 70px; | |||
border-radius: 8PX; | |||
margin-top: 25PX; | |||
&:first-child{ | |||
background-image: linear-gradient(to right, #21CAC3 , #17A8A2); | |||
} | |||
} | |||
.submit_box{ | |||
display: flex; | |||
align-items: center; | |||
justify-content: space-around; | |||
} | |||
.addFamily{ | |||
position: absolute; | |||
top: -2px; | |||
right: 0; | |||
border-radius: 50%; | |||
} | |||
</style> |
@@ -1,77 +1,76 @@ | |||
<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"> | |||
<div class="search"> | |||
<input type="text" placeholder="请输入文书名" /> | |||
<img src="../../../../static/images/lawEnforcement/new/index_icon_04.png"> | |||
</div> | |||
<div class="main_box"> | |||
<van-field v-model="value" label="案件名称" placeholder="请选择案件名称" :border="false" readonly is-link @click="showPicker = true" /> | |||
</div> | |||
<div class="main_box"> | |||
<div class="main_box" style="margin-top: 15px"> | |||
<div class="peopleList"> | |||
<van-row v-for="(item,index) in 10" :key="index" > | |||
<van-col :span="20"> | |||
<van-row v-for="(item,index) in caseDocumentList" :key="index" > | |||
<van-col :span="17"> | |||
<img src="../../../../static/images/lawEnforcement/icon/record_icon_03.png"/> | |||
<p>指定管辖通知书</p> | |||
<p>{{item.fileHalfName}}</p> | |||
</van-col> | |||
<van-col :span="4"> | |||
<p>打印</p> | |||
<van-col :span="7"> | |||
<p @click="$router.push({name:'lawEnforcementRecordDetail',query:{id:item.id,fileType:item.fileType,fileHalfName:item.fileHalfName}})">预览</p> | |||
<a href="">下载</a> | |||
</van-col> | |||
</van-row> | |||
</div> | |||
</div> | |||
<div class="submit_box"> | |||
<p class="submitButton">进入任务</p> | |||
</div> | |||
<van-popup v-model="showPicker" round position="bottom"> | |||
<van-picker | |||
title="选择案件" | |||
show-toolbar | |||
value-key="caseName" | |||
:columns="columns" | |||
@cancel="showPicker = false" | |||
@confirm="onConfirm" | |||
/> | |||
</van-popup> | |||
</div> | |||
</template> | |||
<script> | |||
import { getScheme } from "@/api/lawEnforcement/index"; | |||
import { getCaseList , getCaseDocumentList } from "@/api/lawEnforcement/index"; | |||
export default { | |||
name: "programmeDetail", | |||
data() { | |||
return { | |||
showPopover: false, | |||
// 通过 actions 属性来定义菜单选项 | |||
actions: [{ text: '选项一' }, { text: '选项二' }, { text: '选项三' }], | |||
checked:'', | |||
showBankType:false, | |||
showPayeeType:false, | |||
showPicker:false, | |||
form:{}, | |||
bankType:'', | |||
payeeType:'', | |||
value:'', | |||
bankTypeOptions:[], | |||
payeeTypeOptions:[], | |||
tEnforceSchemeHandlerList:[], | |||
minDate: new Date(2020, 0, 1), | |||
maxDate: new Date(2025, 10, 1), | |||
currentDate: new Date(2021, 0, 17), | |||
activeNames: ['1'], | |||
activeNames1: ['1'], | |||
activeNames2: ['1'], | |||
headTitle:'', | |||
showPicker:false, | |||
columns:[], | |||
caseDocumentList:[] | |||
}; | |||
}, | |||
created() { | |||
// this.getDictionaries() | |||
this.getDictionaries() | |||
}, | |||
methods: { | |||
getDictionaries(){ | |||
getScheme(this.$route.query.id).then((response) => { | |||
this.form = response.data; | |||
let query = { | |||
caseProgress: '' | |||
} | |||
getCaseList(query).then((response) => { | |||
this.columns = response.data; | |||
}); | |||
}, | |||
onConfirm(val){ | |||
console.log(val) | |||
this.showPicker = false; | |||
this.value = val.caseName; | |||
let query = { | |||
id:val.id, | |||
caseProgress:'' | |||
} | |||
getCaseDocumentList(query).then((response) => { | |||
this.caseDocumentList = response.data; | |||
}); | |||
}, | |||
goBack(){ | |||
@@ -88,58 +87,22 @@ | |||
/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{ | |||
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; | |||
input{ | |||
flex: 1; | |||
background: transparent; | |||
} | |||
} | |||
} | |||
.cf{ | |||
padding: 0 3%; | |||
margin-top: 20PX; | |||
margin-bottom: 20PX; | |||
.van-row{ | |||
background: #F0F3F5; | |||
display: flex; | |||
align-items: center; | |||
.van-col{ | |||
padding: 5PX 0; | |||
font-size: 12PX!important; | |||
text-align: center; | |||
p{ | |||
color: #1D6FE9; | |||
text-align: left; | |||
font-size: .4rem; | |||
} | |||
} | |||
&:first-child{ | |||
@@ -193,17 +156,17 @@ | |||
&:last-child{ | |||
border: none; | |||
} | |||
.van-col--20{ | |||
.van-col--17{ | |||
display: flex; | |||
align-items: center; | |||
p{ | |||
margin-left: 10PX; | |||
} | |||
} | |||
.van-col--4{ | |||
.van-col--7{ | |||
display: flex; | |||
justify-content: right; | |||
p{ | |||
justify-content: space-between; | |||
p,a{ | |||
color: #1D6FE9; | |||
border: 1px solid #1D6FE9; | |||
text-align: center; | |||
@@ -262,26 +225,30 @@ | |||
} | |||
} | |||
.submitButton{ | |||
width: 45%; | |||
width: 40%; | |||
margin: 0 auto; | |||
background-image: linear-gradient(to right, #2E79E9 , #77A6EF); | |||
background-image: linear-gradient(to right, #77A6EF , #2E79E9); | |||
text-align: center; | |||
color: #ffffff; | |||
height: 70px; | |||
line-height: 70px; | |||
border-radius: 8PX; | |||
margin-top: 25PX; | |||
&:first-child{ | |||
background-image: linear-gradient(to right, #21CAC3 , #17A8A2); | |||
} | |||
} | |||
.submit_box{ | |||
position: fixed; | |||
bottom: 0; | |||
width: 100%; | |||
background: #ffffff; | |||
padding: 25PX 0; | |||
display: flex; | |||
align-items: center; | |||
justify-content: space-around; | |||
} | |||
.addFamily{ | |||
position: absolute; | |||
top: -2px; | |||
right: 0; | |||
border-radius: 50%; | |||
} | |||
</style> |
@@ -18,7 +18,7 @@ | |||
<script> | |||
import Scaner from '@/components/qrcode//Scaner'; | |||
import Scaner from '@/components/qrcode/Scaner'; | |||
import Cookies from "js-cookie"; | |||
export default { | |||