From b693b8061247a0edf43cd714c8d3b9e221c7da79 Mon Sep 17 00:00:00 2001
From: odc.xiaohui <xiaohui@Q1>
Date: 星期一, 20 二月 2023 17:18:04 +0800
Subject: [PATCH] * 2023/2/20 肖辉 修改事项处理管理-所属区域
---
src/views/operate/management/myIndex/components/closure/index.vue | 684 +++++++++++++++++++++++++++++++--------------------------
1 files changed, 372 insertions(+), 312 deletions(-)
diff --git a/src/views/operate/management/myIndex/components/closure/index.vue b/src/views/operate/management/myIndex/components/closure/index.vue
index bddc83d..139c4f6 100644
--- a/src/views/operate/management/myIndex/components/closure/index.vue
+++ b/src/views/operate/management/myIndex/components/closure/index.vue
@@ -1,333 +1,393 @@
<template>
- <div class="view">
- <div class="view-data">
- <el-form :model="baseCase" label-position="right" ref="viewForm" :rules="Rules" label-width="100px">
- <div class="data-item">
- <el-form-item label="闂鏉ユ簮:">
- <span class="data-detail">{{baseCase.eventSource === 2 ? '浜哄伐涓婃姤' : '瑙嗛宸℃煡'}}</span>
- </el-form-item>
- <el-form-item label="鐧昏浜哄憳:">
- <span class="data-detail">{{baseCase.createUser}}</span>
- </el-form-item>
- </div>
- <div class="data-item">
- <el-form-item label="闂绫诲瀷:">
- <span class="data-detail">{{baseCase.category === 1 ? '杩濊' : '杩濆缓'}}</span>
- </el-form-item>
- <el-form-item label="浜嬩欢绛夌骇:">
- <span class="data-detail">xxxxxx</span>
- </el-form-item>
- </div>
- <div class="data-item">
- <el-form-item label="澶х被鍚嶇О:">
- <span class="data-detail">xxxxxx</span>
- </el-form-item>
- <el-form-item label="灏忕被鍚嶇О:">
- <span class="data-detail">xxxxxx</span>
- </el-form-item>
- </div>
- <div class="data-item">
- <el-form-item label="鎵�灞炲尯鍘�:">
- <span class="data-detail">xxxx</span>
- </el-form-item>
- <el-form-item label="鎵�灞炶閬�:">
- <span class="data-detail">{{baseCase.streetId}}</span>
- </el-form-item>
- </div>
- <div class="data-item">
- <el-form-item label="鎵�灞炵ぞ鍖�:">
- <span class="data-detail">{{baseCase.communityId}}</span>
- </el-form-item>
- </div>
- <div class="data-item">
- <el-form-item label="浜嬪彂鍦扮偣:">
- <span class="data-detail">{{baseCase.site}}</span>
- </el-form-item>
- <el-form-item label="杞︾墝鍙�:">
- <span class="data-detail">xxxxx</span>
- </el-form-item>
- </div>
- <div class="data-item">
- <el-form-item label="鍏宠仈鍟嗛摵鍚嶇О:">
- <span class="data-detail">xxxxxx</span>
- </el-form-item>
- </div>
- <div class="data-item">
- <el-form-item label="闂鎻忚堪:">
- <span class="data-detail">xxxxxxx</span>
- </el-form-item>
- </div>
- <div class="data-item">
- <el-form-item label="鍙嶆槧浜�:">
- <span class="data-detail">xxxxxxx</span>
- </el-form-item>
- <el-form-item label="鑱旂郴鏂瑰紡:">
- <span class="data-detail">xxxxxxx</span>
- </el-form-item>
- </div>
- <!-- 瀹℃牳鎰忚
- <el-form-item label="瀹℃牳鎰忚" prop="auditOpinion">
- <el-input type="textarea" placeholder="璇疯緭鍏ュ鏍告剰瑙�" v-model="baseCase.auditOpinion"></el-input>
- </el-form-item>
- <div class="el-form-footer">
- <el-button @click.native.prevent="handleSubmit(0)">椹冲洖</el-button>
- <el-button type="primary" @click.native.prevent="handleSubmit(1)">閫氳繃</el-button>
- </div> -->
- </el-form>
+ <div class="view">
+ <div class="view-data">
+ <el-form
+ :model="baseCase"
+ label-position="right"
+ ref="viewForm"
+ :rules="Rules"
+ label-width="100px"
+ >
+ <div class="data-item">
+ <el-form-item label="闂鏉ユ簮:">
+ <span class="data-detail">{{
+ baseCase.eventSource === 2 ? "浜哄伐涓婃姤" : "瑙嗛宸℃煡"
+ }}</span>
+ </el-form-item>
+ <el-form-item label="鐧昏浜哄憳:">
+ <span class="data-detail">{{ baseCase.createUser }}</span>
+ </el-form-item>
</div>
- <div class="view-process">
- <div class="process-header">
- <div class="process-title-item" v-for="item in titleList" :key="item.title"
- @click="changeComponent(item.index)">
- <div :class="['process-title',activeIndex===item.index ? 'title-active' : '' ]">{{item.title}}</div>
- <div :class="['under-line',activeIndex===item.index ? 'line-active' : '' ]"></div>
- </div>
- </div>
- <div class="show-item">
- <div class="show-wrap">
- <div class="closure-info" v-if="activeIndex === 0">
- <el-form :model="baseCase" label-position="right" ref="opinionForm" :rules="Rules"
- label-width="100px">
- <el-form-item label="瀹℃牳鎰忚" class="op-item" prop="auditOpinion">
- <el-input type="textarea" placeholder="璇疯緭鍏ュ鏍告剰瑙�" v-model="baseCase.auditOpinion" disabled>
- </el-input>
- </el-form-item>
- <el-form-item label="缁撴鎰忚" class="op-item" prop="finalOpinion">
- <el-input type="textarea" placeholder="璇疯緭鍏ョ粨妗堟剰瑙�" v-model="baseCase.finalOpinion">
- </el-input>
- </el-form-item>
- </el-form>
- <div class="form-footer">
- <el-button type="primary" @click.native.prevent="handleSubmit">缁撴</el-button>
- <el-button>杩斿洖</el-button>
- </div>
- </div>
- <MyProcess v-else-if="activeIndex === 1" :handlePassVo="handlePassVo" :baseCase="baseCase"></MyProcess>
- <MyFilePicture v-else-if="activeIndex === 2" :filesPictureVo="filesPictureVo"></MyFilePicture>
- <MySovleProblem v-else-if="activeIndex === 3" :problemProVo="problemProVo"></MySovleProblem>
- <MyScene v-else :currentSitVo="currentSitVo"></MyScene>
- </div>
- </div>
+ <div class="data-item">
+ <el-form-item label="闂绫诲瀷:">
+ <span class="data-detail">{{
+ baseCase.category === 1 ? "杩濊" : "杩濆缓"
+ }}</span>
+ </el-form-item>
+ <el-form-item label="浜嬩欢绛夌骇:">
+ <span class="data-detail">{{ baseCase.violationsVO.gradeText }}</span>
+ </el-form-item>
</div>
+ <div class="data-item">
+ <el-form-item label="澶х被鍚嶇О:">
+ <span class="data-detail">{{
+ baseCase.violationsVO.categoryText
+ }}</span>
+ </el-form-item>
+ <el-form-item label="灏忕被鍚嶇О:">
+ <span class="data-detail">{{
+ baseCase.violationsVO.categoryText
+ }}</span>
+ </el-form-item>
+ </div>
+ <div class="data-item">
+ <el-form-item label="鎵�灞炲尯鍘�:">
+ <span class="data-detail"></span>
+ </el-form-item>
+ <el-form-item label="鎵�灞炶閬�:">
+ <span class="data-detail">{{ baseCase.streetText }}</span>
+ </el-form-item>
+ </div>
+ <div class="data-item">
+ <el-form-item label="鎵�灞炵ぞ鍖�:">
+ <span class="data-detail">{{ baseCase.communityText }}</span>
+ </el-form-item>
+ </div>
+ <div class="data-item">
+ <el-form-item label="浜嬪彂鍦扮偣:">
+ <span class="data-detail">{{ baseCase.site }}</span>
+ </el-form-item>
+ <el-form-item label="杞︾墝鍙�:">
+ <span class="data-detail">{{ baseCase.violationsVO.carNumber }}</span>
+ </el-form-item>
+ </div>
+ <div class="data-item">
+ <el-form-item label="鍏宠仈鍟嗛摵鍚嶇О:">
+ <span class="data-detail">{{ baseCase.violationsVO.shopName }}</span>
+ </el-form-item>
+ </div>
+ <div class="data-item">
+ <el-form-item label="闂鎻忚堪:">
+ <span class="data-detail">{{
+ baseCase.violationsVO.description
+ }}</span>
+ </el-form-item>
+ </div>
+ <div class="data-item">
+ <el-form-item label="鍙嶆槧浜�:">
+ <span class="data-detail">{{ baseCase.violationsVO.informant }}</span>
+ </el-form-item>
+ <el-form-item label="鑱旂郴鏂瑰紡:">
+ <span class="data-detail">{{
+ baseCase.violationsVO.informantPhoneCode
+ }}</span>
+ </el-form-item>
+ </div>
+ <el-form-item label="瀹℃牳鎰忚" prop="auditOpinion">
+ <span class="data-detail">{{ baseCase.auditOpinion }}</span>
+ </el-form-item>
+ </el-form>
</div>
+ <div class="view-process">
+ <div class="process-header">
+ <div
+ class="process-title-item"
+ v-for="item in titleList"
+ :key="item.title"
+ @click="changeComponent(item.index)"
+ >
+ <div
+ :class="[
+ 'process-title',
+ activeIndex === item.index ? 'title-active' : '',
+ ]"
+ >
+ {{ item.title }}
+ </div>
+ <div
+ :class="[
+ 'under-line',
+ activeIndex === item.index ? 'line-active' : '',
+ ]"
+ ></div>
+ </div>
+ </div>
+ <div class="show-item">
+ <div class="show-wrap">
+ <div class="closure-info" v-if="activeIndex === 0">
+ <el-form
+ :model="baseCase"
+ label-position="right"
+ ref="opinionForm"
+ :rules="Rules"
+ label-width="100px"
+ >
+ <el-form-item
+ label="瀹℃牳鎰忚"
+ class="op-item"
+ prop="auditOpinion"
+ >
+ <el-input
+ type="textarea"
+ placeholder="璇疯緭鍏ュ鏍告剰瑙�"
+ v-model="baseCase.auditOpinion"
+ disabled
+ >
+ </el-input>
+ </el-form-item>
+ <el-form-item
+ label="缁撴鎰忚"
+ class="op-item"
+ prop="finalOpinion"
+ >
+ <el-input
+ type="textarea"
+ placeholder="璇疯緭鍏ョ粨妗堟剰瑙�"
+ v-model="baseCase.finalOpinion"
+ >
+ </el-input>
+ </el-form-item>
+ </el-form>
+ <div class="form-footer">
+ <el-button type="primary" @click.native.prevent="handleSubmit"
+ >缁撴</el-button
+ >
+ <el-button @click.native.prevent="handleBack">杩斿洖</el-button>
+ </div>
+ </div>
+ <MyProcess
+ v-else-if="activeIndex === 1"
+ :handlePassVo="handlePassVo"
+ :baseCase="baseCase"
+ ></MyProcess>
+ <MyFilePicture
+ v-else-if="activeIndex === 2"
+ :baseCase="baseCase"
+ :filesPictureVo="filesPictureVo"
+ ></MyFilePicture>
+ <MySovleProblem
+ v-else-if="activeIndex === 3"
+ :handlePassVo="handlePassVo"
+ :baseCase="baseCase"
+ ></MySovleProblem>
+ <MyScene
+ v-else
+ :baseCase="baseCase"
+ :currentSitVo="currentSitVo"
+ ></MyScene>
+ </div>
+ </div>
+ </div>
+ </div>
</template>
<script>
-import MyProcess from '@/components/process'
-import MyFilePicture from '@/components/filePictrue'
-import MySovleProblem from '@/components/solveProblem'
-import MyScene from '@/components/scene'
+import MyProcess from "@/components/process";
+import MyFilePicture from "@/components/filePictrue";
+import MySovleProblem from "@/components/solveProblem";
+import MyScene from "@/components/scene";
export default {
- components: {
- MyProcess, MyFilePicture, MySovleProblem, MyScene
- },
- data() {
- const checkOpinion = (rule, value, callback) => {
- if (value) {
- callback();
- } else {
- callback()
- }
- }
- const checkFinal = (rule, value, callback) => {
- if (value) {
- callback();
- } else {
- callback(new Error('缁撴鎰忚涓嶈兘涓虹┖'))
- }
- }
- return {
- myInfo: {
-
- },
- activeIndex: 0,
- titleList: [
- {
- title: '缁撴淇℃伅',
- index: 0,
- },
- {
- title: '鍔炵悊缁忚繃',
- index: 1,
- },
- {
- title: '妗堝嵎鍥剧墖',
- index: 2,
- },
- {
- title: '闂澶勭悊',
- index: 3,
- },
- {
- title: '鐜板満鎯呭喌',
- index: 4,
- },
- ],
- Rules: {
- auditOpinion: [
- { trigger: 'blur', validator: checkOpinion }
- ],
- finalOpinion:[
- {
- trigger:'blur',validator:checkFinal
- }
- ]
-
- },
- baseCase: {},
- handlePassVo: {},
- currentSitVo: {},
- problemProVo: {},
- filesPictureVo: {}
-
- }
- },
- created() {
- const { info } = this;
- this.baseCase = info.baseCase;
- this.handlePassVo = info.handlePassVo;
- this.currentSitVo = info.currentSitVo;
- this.problemProVo = info.problemProVo;
- this.filesPictureVo = info.filesPictureVo;
- },
- methods: {
- changeComponent(index) {
- this.activeIndex = index;
+ components: {
+ MyProcess,
+ MyFilePicture,
+ MySovleProblem,
+ MyScene,
+ },
+ data() {
+ const checkOpinion = (rule, value, callback) => {
+ if (value) {
+ callback();
+ } else {
+ callback();
+ }
+ };
+ const checkFinal = (rule, value, callback) => {
+ if (value) {
+ callback();
+ } else {
+ callback(new Error("缁撴鎰忚涓嶈兘涓虹┖"));
+ }
+ };
+ return {
+ myInfo: {},
+ activeIndex: 0,
+ titleList: [
+ {
+ title: "缁撴淇℃伅",
+ index: 0,
},
- // 鎻愪氦瀹℃牳鎰忚
- handleSubmit() {
- const { baseCase } = this;
- this.$refs.opinionForm.validate((valid) => {
- if (valid) {
- this.$axios({
- method: 'put',
- url: 'sccg/base_case/end_case?caseId='+baseCase.id +'&result='+baseCase.finalOpinion,
- })
- .then(res => {
- console.log(res);
- if (res.code === 200) {
- this.$message({
- type: 'success',
- message: '缁撴鎴愬姛'
- })
- this.$emit('closeDialog', { flag: false });
- }else{
- this.$message({
- type:'error',
- message:'缁撴澶辫触',
- })
- }
-
- })
- .catch(err => { console.log(err) });
- } else {
- return false;
- }
- })
+ {
+ title: "鍔炵悊缁忚繃",
+ index: 1,
},
- // 鑾峰彇褰撳墠鐢ㄦ埛鐧诲綍淇℃伅
- getUserLoginInfo() {
- // 鑾峰彇鐧诲綍鍚�;
- const username = sessionStorage.getItem('name');
- this.$axios({
- method: 'get',
- url: 'sccg/admin/info',
- data: {
- name: 'username'
- }
- })
- .then(res => {
- console.log(res);
- })
- }
+ {
+ title: "妗堝嵎鍥剧墖",
+ index: 2,
+ },
+ {
+ title: "闂澶勭悊",
+ index: 3,
+ },
+ {
+ title: "鐜板満鎯呭喌",
+ index: 4,
+ },
+ ],
+ Rules: {
+ auditOpinion: [{ trigger: "blur", validator: checkOpinion }],
+ finalOpinion: [
+ {
+ trigger: "blur",
+ validator: checkFinal,
+ },
+ ],
+ },
+ baseCase: {},
+ handlePassVo: {},
+ currentSitVo: {},
+ problemProVo: {},
+ filesPictureVo: {},
+ };
+ },
+ created() {
+ const { info } = this;
+ this.baseCase = info.baseCase;
+ this.handlePassVo = info.handlePassVo;
+ this.currentSitVo = info.currentSitVo;
+ this.problemProVo = info.problemProVo;
+ this.filesPictureVo = info.filesPictureVo;
+ },
+ methods: {
+ changeComponent(index) {
+ this.activeIndex = index;
},
- props: ['info', 'closeDialog']
-}
+ handleBack() {
+ this.$emit("closeDialog", { flag: false });
+ },
+ // 鎻愪氦瀹℃牳鎰忚
+ handleSubmit() {
+ const { baseCase } = this;
+ this.$refs.opinionForm.validate((valid) => {
+ if (valid) {
+ this.$axios({
+ method: "put",
+ url:
+ "sccg/base_case/end_case?caseId=" +
+ baseCase.id +
+ "&opinion=" +
+ baseCase.finalOpinion +
+ "&result=" +
+ "缁撴鎴愬姛",
+ })
+ .then((res) => {
+ if (res.code === 200) {
+ this.$message({
+ type: "success",
+ message: "缁撴鎴愬姛",
+ });
+ this.$emit("closeDialog", { flag: false });
+ } else {
+ this.$message({
+ type: "error",
+ message: "缁撴澶辫触",
+ });
+ }
+ })
+ .catch((err) => {
+ });
+ } else {
+ return false;
+ }
+ });
+ },
+ },
+ props: ["info", "closeDialog"],
+};
</script>
<style lang="scss" scoped>
.view {
- display: flex;
+ display: flex;
+ padding: 20px;
+
+ .view-data {
+ color: #4b9bb7;
+ flex: 4;
padding: 20px;
- .view-data {
- color: #4b9bb7;
- flex: 4;
- padding: 20px;
-
- .data-item {
- display: flex;
- justify-content: space-between;
- line-height: 40px;
- }
-
- :deep(.el-form-item__label) {
- color: #4b9bb7;
- }
-
- :deep(.el-textarea__inner) {
- background-color: #17324c;
- color: #4b9bb7;
- }
-
- .el-form-footer {
- display: flex;
- justify-content: flex-end;
- }
-
- border: 1px solid #17324c;
+ .data-item {
+ display: flex;
+ justify-content: space-between;
+ line-height: 40px;
}
- :deep(.el-textarea__inner){
- background-color: #17324c;
- color: #4b9bb7;
+
+ // :deep(.el-form-item__label) {
+ // color: #4b9bb7;
+ // }
+
+ // :deep(.el-textarea__inner) {
+ // background-color: #17324c;
+ // color: #4b9bb7;
+ // }
+
+ .el-form-footer {
+ display: flex;
+ justify-content: flex-end;
}
- .closure-info{
- padding: 20px;
- .op-item{
- padding-top: 20px;
- }
- .form-footer{
- display: flex;
- margin-top: 50px;
- justify-content: flex-end;
- }
+
+ // border: 1px solid #17324c;
+ }
+ // :deep(.el-textarea__inner) {
+ // background-color: #17324c;
+ // color: #4b9bb7;
+ // }
+ .closure-info {
+ padding: 20px;
+ .op-item {
+ padding-top: 20px;
}
- .view-process {
- flex: 6;
- margin-left: 20px;
-
- .process-header {
- display: flex;
- line-height: 40px;
-
- .process-title-item {
- width: 120px;
- text-align: center;
-
- .under-line {
- height: 2px;
- width: 100%;
- }
-
- .title-active {
- color: #4b9bb7;
- }
-
- .line-active {
- background-color: #4b9bb7;
- border-radius: 20px;
- }
- }
- }
-
- .show-item {
- overflow: hidden;
- height: 600px;
- position: relative;
-
- .show-wrap {
- overflow: scroll;
- height: 600px;
- }
- }
+ .form-footer {
+ display: flex;
+ margin-top: 50px;
+ justify-content: flex-end;
}
+ }
+ .view-process {
+ flex: 6;
+ margin-left: 20px;
+
+ .process-header {
+ display: flex;
+ line-height: 40px;
+
+ .process-title-item {
+ width: 120px;
+ text-align: center;
+
+ .under-line {
+ height: 2px;
+ width: 100%;
+ }
+
+ .title-active {
+ color: #4b9bb7;
+ }
+
+ .line-active {
+ background-color: #4b9bb7;
+ border-radius: 20px;
+ }
+ }
+ }
+
+ .show-item {
+ overflow: hidden;
+ height: 600px;
+ position: relative;
+
+ .show-wrap {
+ overflow: auto;
+ height: 600px;
+ }
+ }
+ }
}
</style>
\ No newline at end of file
--
Gitblit v1.8.0