Browse Source

解决情况

release/epdc
tianq 2 years ago
parent
commit
d9e4efbe8f
  1. 386
      src/views/modules/events/appeal-detail-view.vue

386
src/views/modules/events/appeal-detail-view.vue

@ -5,122 +5,126 @@
<div class="project-detail-tip">诉求详情</div> <div class="project-detail-tip">诉求详情</div>
<el-form label-position="right" class="projectDetail-left-appeal"> <el-form label-position="right" class="projectDetail-left-appeal">
<el-form-item label="诉求内容:"> <el-form-item label="诉求内容:">
<div>{{dataForm.itemContent}}</div> <div>{{ dataForm.itemContent }}</div>
<el-image v-for="url in dataForm.images" <el-image
v-for="url in dataForm.images"
style="width: 100px; height: 100px; margin-right: 10px" style="width: 100px; height: 100px; margin-right: 10px"
:key="url" :key="url"
:src="url" :src="url"
:preview-src-list="previewImgList" :preview-src-list="previewImgList"
@click="clickImg(url)"> @click="clickImg(url)"
</el-image> ></el-image>
<div v-if="dataForm.itemVoice"> <div v-if="dataForm.itemVoice">
<audio controls style="height: 30px;"> <audio controls style="height: 30px;"><source :src="dataForm.itemVoice" /></audio>
<source :src="dataForm.itemVoice" >
</audio>
</div> </div>
</el-form-item> </el-form-item>
<el-form-item v-if="dataForm.groupName && dataForm.groupName.length > 0" label="项目来源:" prop="ownGrid"> <el-form-item v-if="dataForm.groupName && dataForm.groupName.length > 0" label="项目来源:" prop="ownGrid">
<div>{{dataForm.groupName}}</div> <div>{{ dataForm.groupName }}</div>
</el-form-item> </el-form-item>
<el-form-item v-if="dataForm.enterpriseName" label="企业名称:"> <el-form-item v-if="dataForm.enterpriseName" label="企业名称:">
<div>{{dataForm.enterpriseName}}</div> <div>{{ dataForm.enterpriseName }}</div>
</el-form-item> </el-form-item>
<el-form-item v-if="dataForm.uniformSocialCreditCode" label="社会信用代码:"> <el-form-item v-if="dataForm.uniformSocialCreditCode" label="社会信用代码:">
<div>{{dataForm.uniformSocialCreditCode}}</div> <div>{{ dataForm.uniformSocialCreditCode }}</div>
</el-form-item> </el-form-item>
<el-form-item label="上报时间:"> <el-form-item label="上报时间:">
<div>{{dataForm.distributeTime}}</div> <div>{{ dataForm.distributeTime }}</div>
</el-form-item> </el-form-item>
<el-form-item label="联系人姓名:"> <el-form-item label="联系人姓名:">
<div>{{dataForm.nickName}}</div> <div>{{ dataForm.nickName }}</div>
</el-form-item> </el-form-item>
<el-form-item label="手机号:" prop="mobile"> <el-form-item label="手机号:" prop="mobile">
<div>{{dataForm.mobile}}</div> <div>{{ dataForm.mobile }}</div>
</el-form-item> </el-form-item>
<!-- <el-form-item label="所属类别:" prop="categoryName"> <!-- <el-form-item label="所属类别:" prop="categoryName">
<div>{{dataForm.categoryName}}</div> <div>{{dataForm.categoryName}}</div>
</el-form-item> --> </el-form-item> -->
<el-form-item label="事件位置:" prop="issueAddress"> <el-form-item label="事件位置:" prop="issueAddress">
<div>{{dataForm.issueAddress}}</div> <div>{{ dataForm.issueAddress }}</div>
</el-form-item> </el-form-item>
<el-form-item label="分类:" prop="categoryName"> <el-form-item label="分类:" prop="categoryName">
<div>{{dataForm.peopleFlag == '0' ? '民生诉求' : dataForm.peopleFlag == '1' ? '发展诉求' : '执法诉求'}}</div> <div>{{ dataForm.peopleFlag == '0' ? '民生诉求' : dataForm.peopleFlag == '1' ? '发展诉求' : '执法诉求' }}</div>
</el-form-item> </el-form-item>
<el-form-item label="诉求编码:" prop="serialNum"> <el-form-item label="诉求编码:" prop="serialNum">
<div>{{dataForm.serialNum}}</div> <div>{{ dataForm.serialNum }}</div>
</el-form-item> </el-form-item>
<el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.lawName" label="事项名称:" prop="lawName"> <el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.lawName" label="事项名称:" prop="lawName">
<div>{{dataForm.lawDetail.lawName}}</div> <div>{{ dataForm.lawDetail.lawName }}</div>
</el-form-item> </el-form-item>
<el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.lawContent" label="诉求详情:" prop="lawContent"> <el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.lawContent" label="诉求详情:" prop="lawContent">
<div>{{dataForm.lawDetail.lawContent}}</div> <div>{{ dataForm.lawDetail.lawContent }}</div>
</el-form-item> </el-form-item>
<el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.hostUnit" label="建议主办单位:" prop="hostUnit"> <el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.hostUnit" label="建议主办单位:" prop="hostUnit">
<div>{{dataForm.lawDetail.hostUnit}}</div> <div>{{ dataForm.lawDetail.hostUnit }}</div>
</el-form-item> </el-form-item>
<el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.assistUnit" label="建议协办单位:" prop="assistUnit"> <el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.assistUnit" label="建议协办单位:" prop="assistUnit">
<div>{{dataForm.lawDetail.assistUnit}}</div> <div>{{ dataForm.lawDetail.assistUnit }}</div>
</el-form-item> </el-form-item>
<el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.demand" label="有关需求:" prop="demand"> <el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.demand" label="有关需求:" prop="demand">
<div>{{dataForm.lawDetail.demand}}</div> <div>{{ dataForm.lawDetail.demand }}</div>
</el-form-item> </el-form-item>
<el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.lawType" label="事项类型:" prop="lawType"> <el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.lawType" label="事项类型:" prop="lawType">
<div>{{dataForm.lawDetail.lawType == '0' ? '计划事项' : '临时事项'}}</div> <div>{{ dataForm.lawDetail.lawType == '0' ? '计划事项' : '临时事项' }}</div>
</el-form-item> </el-form-item>
<el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.isExchange" label="与部门是否沟通:" prop="isExchange"> <el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.isExchange" label="与部门是否沟通:" prop="isExchange">
<div>{{dataForm.lawDetail.isExchange == '0' ? '已经沟通' : '尚未沟通'}}</div> <div>{{ dataForm.lawDetail.isExchange == '0' ? '已经沟通' : '尚未沟通' }}</div>
</el-form-item> </el-form-item>
<el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.convenerName" label="召集人姓名:" prop="convenerName"> <el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.convenerName" label="召集人姓名:" prop="convenerName">
<div>{{dataForm.lawDetail.convenerName}}</div> <div>{{ dataForm.lawDetail.convenerName }}</div>
</el-form-item> </el-form-item>
<el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.convenerJob" label="召集人职务:" prop="convenerJob"> <el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.convenerJob" label="召集人职务:" prop="convenerJob">
<div>{{dataForm.lawDetail.convenerJob}}</div> <div>{{ dataForm.lawDetail.convenerJob }}</div>
</el-form-item> </el-form-item>
<el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.convenerMobile" label="召集人电话:" prop="convenerMobile"> <el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.convenerMobile" label="召集人电话:" prop="convenerMobile">
<div>{{dataForm.lawDetail.convenerMobile}}</div> <div>{{ dataForm.lawDetail.convenerMobile }}</div>
</el-form-item> </el-form-item>
<el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.contactName" label="联系人姓名:" prop="contactName"> <el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.contactName" label="联系人姓名:" prop="contactName">
<div>{{dataForm.lawDetail.contactName}}</div> <div>{{ dataForm.lawDetail.contactName }}</div>
</el-form-item> </el-form-item>
<el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.contactJob" label="联系人职务:" prop="contactJob"> <el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.contactJob" label="联系人职务:" prop="contactJob">
<div>{{dataForm.lawDetail.contactJob}}</div> <div>{{ dataForm.lawDetail.contactJob }}</div>
</el-form-item> </el-form-item>
<el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.contactMobile" label="联系人电话:" prop="contactMobile"> <el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.contactMobile" label="联系人电话:" prop="contactMobile">
<div>{{dataForm.lawDetail.contactMobile}}</div> <div>{{ dataForm.lawDetail.contactMobile }}</div>
</el-form-item> </el-form-item>
<el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.reportTime" label="报到时间:" prop="reportTime"> <el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.reportTime" label="报到时间:" prop="reportTime">
<div>{{dataForm.lawDetail.reportTime}}</div> <div>{{ dataForm.lawDetail.reportTime }}</div>
</el-form-item> </el-form-item>
<el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.reportAddress" label="报到地点:" prop="reportAddress"> <el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.reportAddress" label="报到地点:" prop="reportAddress">
<div>{{dataForm.lawDetail.reportAddress}}</div> <div>{{ dataForm.lawDetail.reportAddress }}</div>
</el-form-item> </el-form-item>
<el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.meetingName" label="会议名称:" prop="meetingName"> <el-form-item v-if="dataForm.lawDetail && dataForm.lawDetail.meetingName" label="会议名称:" prop="meetingName">
<div>{{dataForm.lawDetail.meetingName}}</div> <div>{{ dataForm.lawDetail.meetingName }}</div>
</el-form-item> </el-form-item>
<el-form-item label="用户满意度评价:" v-if="dataForm.itemState == 10"> <el-form-item label="用户满意度评价:" v-if="dataForm.itemState == 10">
<div>{{dataForm.evaluationScoreName}}</div> <div>{{ dataForm.evaluationScoreName }}</div>
</el-form-item> </el-form-item>
<el-form-item label="用户满意度评价内容:" v-if="dataForm.itemState == 10"> <el-form-item label="用户满意度评价内容:" v-if="dataForm.itemState == 10">
<div>{{dataForm.evaluationContent}}</div> <div>{{ dataForm.evaluationContent }}</div>
</el-form-item>
<el-form-item label="解决情况:" v-if="dataForm.solutionInfo">
<div v-if="dataForm.solutionInfo == '01'">解决</div>
<div v-if="dataForm.solutionInfo == '02'">基本解决</div>
<div v-if="dataForm.solutionInfo == '03'">未解决</div>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div class="container"> <div class="container">
@ -130,68 +134,94 @@
</div> </div>
<div class="project-progress"> <div class="project-progress">
<div class="project-progress-tip">处理进展</div> <div class="project-progress-tip">处理进展</div>
<div class="refresh"><el-button type="text" @click="refreshProgress"> <i class="el-icon-refresh"></i></el-button></div> <div class="refresh">
<el-button type="text" @click="refreshProgress"><i class="el-icon-refresh"></i></el-button>
</div>
<el-timeline v-loading="timeloading" style="padding-top: 12px;"> <el-timeline v-loading="timeloading" style="padding-top: 12px;">
<el-timeline-item <el-timeline-item v-for="(item, index) in timeLineList" :key="item.id" :color="item.type === 'init' ? 'red' : item.type === 'project' ? '#009688' : '#ffa546'">
v-for="(item, index) in timeLineList"
:key="item.id"
:color="item.type === 'init' ? 'red' : item.type === 'project' ? '#009688' : '#ffa546'">
<div :id="`content${index}`" style="line-height:25px; "> <div :id="`content${index}`" style="line-height:25px; ">
<div <div
:style="{ marginBottom: '10px', width: '35px', height: '20px', fontSize: '12px', borderRadius: '4px', background: item.type === 'project' ? '#009688': item.type === 'issue' || item.type === 'issue-project' ? '#ffa546' : '', color: '#fff', textAlign: 'center', lineHeight: '20px'}" :style="{
v-if="item.type !== 'init'"> marginBottom: '10px',
{{item.type === 'project' ? '项目': item.type === 'issue' || item.type === 'issue-project' ? '议题' : ''}} width: '35px',
height: '20px',
fontSize: '12px',
borderRadius: '4px',
background: item.type === 'project' ? '#009688' : item.type === 'issue' || item.type === 'issue-project' ? '#ffa546' : '',
color: '#fff',
textAlign: 'center',
lineHeight: '20px'
}"
v-if="item.type !== 'init'"
>
{{ item.type === 'project' ? '项目' : item.type === 'issue' || item.type === 'issue-project' ? '议题' : '' }}
</div>
<div>
<span style="font-weight: bold; color: rgb(96, 98, 102);">[{{ item | formatState }}]</span>
{{ item.createdTime }}
</div> </div>
<div><span style="font-weight: bold; color: rgb(96, 98, 102);">[{{item | formatState}}]</span> {{item.createdTime}}</div>
<div v-if="item.state === 3"> <div v-if="item.state === 3">
<div><span style="font-weight: bold; color: rgb(96, 98, 102);">来源社群</span>{{item.groupName}}</div> <div>
<div><span style="font-weight: bold; color: rgb(96, 98, 102);">处理人</span>{{item.handlerDept}}</div> <span style="font-weight: bold; color: rgb(96, 98, 102);">来源社群</span>
<div><span style="font-weight: bold; color: rgb(96, 98, 102);">处理人电话</span>{{item.mobile}}</div> {{ item.groupName }}
</div>
<div>
<span style="font-weight: bold; color: rgb(96, 98, 102);">处理人</span>
{{ item.handlerDept }}
</div>
<div>
<span style="font-weight: bold; color: rgb(96, 98, 102);">处理人电话</span>
{{ item.mobile }}
</div>
</div> </div>
<div v-if="item.state !== 3"> <div v-if="item.state !== 3">
<div><span style="font-weight: bold; color: rgb(96, 98, 102);">处理部门</span>{{item.handlerDept}}</div> <div>
<span style="font-weight: bold; color: rgb(96, 98, 102);">处理部门</span>
{{ item.handlerDept }}
</div>
</div> </div>
<div v-if="item.itemDeptDTOS && item.itemDeptDTOS.length > 0" style="width: 100%; display: flex;"> <div v-if="item.itemDeptDTOS && item.itemDeptDTOS.length > 0" style="width: 100%; display: flex;">
<div><span style="font-weight: bold; color: rgb(96, 98, 102);">被吹哨部门</span> </div> <div><span style="font-weight: bold; color: rgb(96, 98, 102);">被吹哨部门</span></div>
<div> <div>
<span v-for="(csDept, index1) in item.itemDeptDTOS" :key="index1"> <span v-for="(csDept, index1) in item.itemDeptDTOS" :key="index1">
{{ csDept.deptName }}<br/> {{ csDept.deptName }}
<br />
</span> </span>
</div> </div>
</div> </div>
<div><span style="font-weight: bold; color: rgb(96, 98, 102);">处理意见</span> {{item.advice}}</div> <div>
<span style="font-weight: bold; color: rgb(96, 98, 102);">处理意见</span>
{{ item.advice }}
</div>
<div style="display: flex;"> <div style="display: flex;">
<el-image v-for="url in item.images" <el-image
v-for="url in item.images"
style="width: 60px; height: 60px; object-fit: cover; margin-right: 8px; border-radius: 2px;" style="width: 60px; height: 60px; object-fit: cover; margin-right: 8px; border-radius: 2px;"
:key="url" :key="url"
:src="url" :src="url"
:preview-src-list="previewImgList" :preview-src-list="previewImgList"
alt="处理图片" alt="处理图片"
@click="clickImg(url)"> @click="clickImg(url)"
</el-image> ></el-image>
</div> </div>
</div> </div>
</el-timeline-item> </el-timeline-item>
</el-timeline> </el-timeline>
</div> </div>
<div style="width: 100%; text-align:center; float:left;"> <div style="width: 100%; text-align:center; float:left;"><el-button size="medium" style="width: 95px" type="primary" @click="back">返回</el-button></div>
<el-button size="medium" style="width: 95px" type="primary" @click="back">返回</el-button>
</div>
</el-form> </el-form>
</div> </div>
</template> </template>
<script> <script>
import BMap from 'BMap' import BMap from 'BMap';
import 'element-ui/lib/theme-chalk/timeline.css' import 'element-ui/lib/theme-chalk/timeline.css';
import 'element-ui/lib/theme-chalk/timeline-item.css' import 'element-ui/lib/theme-chalk/timeline-item.css';
import 'element-ui/lib/theme-chalk/image.css' import 'element-ui/lib/theme-chalk/image.css';
import { gcj02tobd09 } from '../../../utils/gcj02tobd09' import { gcj02tobd09 } from '../../../utils/gcj02tobd09';
export default { export default {
name: 'itemCloseDetailView', name: 'itemCloseDetailView',
data () { data() {
return { return {
timeloading: true, timeloading: true,
map: '', map: '',
@ -210,202 +240,205 @@ export default {
orderField: '', orderField: '',
timeLineList: [] timeLineList: []
} };
}, },
mounted () { mounted() {
this.dataForm.id = this.$route.query.id this.dataForm.id = this.$route.query.id;
this.init() this.init();
}, },
filters: { filters: {
formatState (item) { formatState(item) {
if (item.type === 'project') { if (item.type === 'project') {
if (item.state === 0 && item.itemDeptDTOS && item.itemDeptDTOS.length > 0 if (item.state === 0 && item.itemDeptDTOS && item.itemDeptDTOS.length > 0) {
) { return '网格吹哨';
return '网格吹哨'
} else if (item.state === 0 && item.itemDeptDTOS && item.itemDeptDTOS.length === 0) { } else if (item.state === 0 && item.itemDeptDTOS && item.itemDeptDTOS.length === 0) {
return '回应' return '回应';
} else if (item.state === 1) { } else if (item.state === 1) {
return '社区吹哨' return '社区吹哨';
} else if (item.state === 5) { } else if (item.state === 5) {
return '不予受理' return '不予受理';
} else if (item.state === 10) { } else if (item.state === 10) {
return '结案' return '结案';
} else if (item.state === 11) { } else if (item.state === 11) {
return '结案申请' return '结案申请';
} else if (item.state === 12 || item.state === 1001) { } else if (item.state === 12 || item.state === 1001) {
return '响应拟办' return '响应拟办';
} else if (item.state === 13) { } else if (item.state === 13) {
return '直接办理' return '直接办理';
} else if (item.state === 14) { } else if (item.state === 14) {
return '社区驳回' return '社区驳回';
} else if (item.state === 15) { } else if (item.state === 15) {
return '社区吹哨' return '社区吹哨';
} else if (item.state === 16) { } else if (item.state === 16) {
return '吹哨市平台' return '吹哨市平台';
} else if (item.state === 2018) { } else if (item.state === 2018) {
return '市平台-诉求督办' return '市平台-诉求督办';
} else if (item.state === 2020) { } else if (item.state === 2020) {
return '市平台-吹哨驳回' return '市平台-吹哨驳回';
} else if (item.state === 2021) { } else if (item.state === 2021) {
return '市平台-吹哨反馈' return '市平台-吹哨反馈';
} else if (item.state === 20) { } else if (item.state === 20) {
return '网格化平台-受理' return '网格化平台-受理';
} else if (item.state === 25) { } else if (item.state === 25) {
return '网格化平台-立案' return '网格化平台-立案';
} else if (item.state === 30) { } else if (item.state === 30) {
return '网格化平台-派遣' return '网格化平台-派遣';
} else if (item.state === 35) { } else if (item.state === 35) {
return '网格化平台-中间再派' return '网格化平台-中间再派';
} else if (item.state === 40) { } else if (item.state === 40) {
return '网格化平台-接单' return '网格化平台-接单';
} else if (item.state === 45) { } else if (item.state === 45) {
return '网格化平台-处置完成' return '网格化平台-处置完成';
} else if (item.state === 50) { } else if (item.state === 50) {
return '网格化平台-中间督办' return '网格化平台-中间督办';
} else if (item.state === 55) { } else if (item.state === 55) {
return '网格化平台-催办' return '网格化平台-催办';
} else if (item.state === 60) { } else if (item.state === 60) {
return '网格化平台-结案' return '网格化平台-结案';
} else if (item.state === 65) { } else if (item.state === 65) {
return '网格化平台-办理' return '网格化平台-办理';
} else if (item.state === 70) { } else if (item.state === 70) {
return '网格化平台-批转' return '网格化平台-批转';
} else if (item.state === 75) { } else if (item.state === 75) {
return '网格化平台-退单' return '网格化平台-退单';
} else if (item.state === 80) { } else if (item.state === 80) {
return '网格化平台-办结' return '网格化平台-办结';
} else if (item.state === 85) { } else if (item.state === 85) {
return '项目延期-审核通过' return '项目延期-审核通过';
} else if (item.state === 90) { } else if (item.state === 90) {
return '项目熔断-审核通过' return '项目熔断-审核通过';
} else if (item.state === 1002) { } else if (item.state === 1002) {
return '诉求初验' return '诉求初验';
} else if (item.state === 1003) { } else if (item.state === 1003) {
return '诉求终验' return '诉求终验';
} else if (item.state === 1004) { } else if (item.state === 1004) {
return '诉求终验' return '诉求终验';
} else if (item.state === 1005) { } else if (item.state === 1005) {
return '诉求初验' return '诉求初验';
} else if (item.state === 1105) { } else if (item.state === 1105) {
return '下发评价' return '下发评价';
} else if (item.state === 1106) { } else if (item.state === 1106) {
return '初验申请' return '初验申请';
} else { } else {
return '网格化平台-派遣中' return '网格化平台-派遣中';
} }
} else if (item.type === 'issue' || item.type === 'init') { } else if (item.type === 'issue' || item.type === 'init') {
if (item.state === 0) { if (item.state === 0) {
return '审核通过' return '审核通过';
} else if (item.state === 1) { } else if (item.state === 1) {
return '回应' return '回应';
} else if (item.state === 2) { } else if (item.state === 2) {
return '关闭' return '关闭';
} else if (item.state === 3) { } else if (item.state === 3) {
return '转议题' return '转议题';
} }
} else if (item.type === 'issue-project') { } else if (item.type === 'issue-project') {
return '转项目' return '转项目';
} }
} }
}, },
methods: { methods: {
refreshProgress () { refreshProgress() {
this.timeloading = true this.timeloading = true;
this.$http this.$http
.get(`/events/platform/item/get/${this.dataForm.id}`) .get(`/events/platform/item/get/${this.dataForm.id}`)
.then(({ data: res }) => { .then(({ data: res }) => {
if (res.code !== 0) { if (res.code !== 0) {
return this.$message.error(res.msg) return this.$message.error(res.msg);
} }
this.getInfo() this.getInfo();
// console.log(res) // console.log(res)
}) })
.catch(() => {}) .catch(() => {});
}, },
back () { back() {
this.$parent.init() this.$parent.init();
// this.$router.push({ path: this.$route.path }) // this.$router.push({ path: this.$route.path })
}, },
initBmap (latitude, longitude) { initBmap(latitude, longitude) {
this.map = new BMap.Map('map') this.map = new BMap.Map('map');
const point = new BMap.Point(longitude, latitude) const point = new BMap.Point(longitude, latitude);
var marker = new BMap.Marker(point) var marker = new BMap.Marker(point);
this.map.addOverlay(marker) this.map.addOverlay(marker);
this.map.centerAndZoom(point, 13) this.map.centerAndZoom(point, 13);
this.map.enableScrollWheelZoom(true) this.map.enableScrollWheelZoom(true);
}, },
init () { init() {
this.$nextTick(() => { this.$nextTick(() => {
if (this.dataForm.id) { if (this.dataForm.id) {
this.getInfo() this.getInfo();
} }
}) });
}, },
clickImg (url) { clickImg(url) {
this.previewImgList = [] this.previewImgList = [];
this.previewImgList.push(url) this.previewImgList.push(url);
}, },
getInfo () { getInfo() {
this.$http.get(`/events/item/getItemAppealDetail/${this.dataForm.id}`).then(({ data: res }) => { this.$http
.get(`/events/item/getItemAppealDetail/${this.dataForm.id}`)
.then(({ data: res }) => {
if (res.code !== 0) { if (res.code !== 0) {
return this.$message.error(res.msg) return this.$message.error(res.msg);
} }
this.timeloading = false this.timeloading = false;
this.dataForm = { this.dataForm = {
...this.dataForm, ...this.dataForm,
...res.data ...res.data
} };
console.log(' this.dataForm', this.dataForm.solutionInfo);
this.dataForm.handleProgressResultDTOS.forEach((item, index, arr) => { this.dataForm.handleProgressResultDTOS.forEach((item, index, arr) => {
if (index === arr.length - 1) { if (index === arr.length - 1) {
// item.type = 'issue-project' // item.type = 'issue-project'
item.type = 'project' item.type = 'project';
} else { } else {
item.type = 'project' item.type = 'project';
} }
}) });
this.dataForm.issueProgressResultDTOS.forEach((item, index, arr) => { this.dataForm.issueProgressResultDTOS.forEach((item, index, arr) => {
if (index === arr.length - 1) { if (index === arr.length - 1) {
item.type = 'init' item.type = 'init';
} else { } else {
item.type = 'issue' item.type = 'issue';
} }
}) });
this.timeLineList = [...this.dataForm.handleProgressResultDTOS, ...this.dataForm.issueProgressResultDTOS] this.timeLineList = [...this.dataForm.handleProgressResultDTOS, ...this.dataForm.issueProgressResultDTOS];
this.$nextTick(() => { this.$nextTick(() => {
this.timeLineList.forEach((item, index) => { this.timeLineList.forEach((item, index) => {
const oDiv = document.getElementById(`content${index}`) const oDiv = document.getElementById(`content${index}`);
const oBorder = oDiv.parentNode.parentNode.parentNode.firstChild const oBorder = oDiv.parentNode.parentNode.parentNode.firstChild;
if (item.type === 'issue' || item.type === 'issue-project') { if (item.type === 'issue' || item.type === 'issue-project') {
oBorder.style.borderLeft = '1px solid #ffa546' oBorder.style.borderLeft = '1px solid #ffa546';
} else if (item.type === 'project') { } else if (item.type === 'project') {
oBorder.style.borderLeft = '1px solid #009688' oBorder.style.borderLeft = '1px solid #009688';
} }
});
});
this.dataForm.issueLongitude = gcj02tobd09(this.dataForm.issueLongitude, this.dataForm.issueLatitude)[0];
this.dataForm.issueLatitude = gcj02tobd09(this.dataForm.issueLongitude, this.dataForm.issueLatitude)[1];
this.initBmap(this.dataForm.issueLatitude, this.dataForm.issueLongitude);
}) })
}) .catch(() => {});
this.dataForm.issueLongitude = gcj02tobd09(this.dataForm.issueLongitude, this.dataForm.issueLatitude)[0]
this.dataForm.issueLatitude = gcj02tobd09(this.dataForm.issueLongitude, this.dataForm.issueLatitude)[1]
this.initBmap(this.dataForm.issueLatitude, this.dataForm.issueLongitude)
}).catch(() => {})
} }
} }
} };
</script> </script>
<style lang="scss"> <style lang="scss">
.project-handle { .project-handle {
.el-timeline { .el-timeline {
padding-left: 9px; padding-left: 9px;
font-size: 13px; font-size: 13px;
} }
} }
.el-form-item__label { .el-form-item__label {
font-weight: bold; font-weight: bold;
} }
</style> </style>
<style lang="scss" scoped> <style lang="scss" scoped>
.project-handle { .project-handle {
width: 100%; width: 100%;
height: calc(100vh - 120px); height: calc(100vh - 120px);
background: #ffffff; background: #ffffff;
@ -417,45 +450,45 @@ export default {
border: 2px solid #ccc; border: 2px solid #ccc;
box-sizing: border-box; box-sizing: border-box;
// padding: 10px; // padding: 10px;
float:left; float: left;
margin-bottom: 1%; margin-bottom: 1%;
position: relative; position: relative;
padding: 20px 85px; padding: 20px 85px;
box-sizing: border-box; box-sizing: border-box;
.projectDetail-left-appeal{ .projectDetail-left-appeal {
.image-list{ .image-list {
width: 100%; width: 100%;
height: auto; height: auto;
padding: 0px 45px; padding: 0px 45px;
box-sizing: border-box; box-sizing: border-box;
} }
.el-form-item{ .el-form-item {
.el-form-item__label{ .el-form-item__label {
width: auto; width: auto;
padding-left: 48px; padding-left: 48px;
text-align: left !important; text-align: left !important;
} }
} }
.el-form-item{ .el-form-item {
margin-bottom: 0px; margin-bottom: 0px;
} }
} }
.project-detail-tip { .project-detail-tip {
position: absolute; position: absolute;
top: 0; top: 0;
left:0; left: 0;
width: 80px; width: 80px;
height: 30px; height: 30px;
line-height: 30px; line-height: 30px;
color: #ffffff; color: #ffffff;
background: #4ac38b; background: #4ac38b;
text-align:center; text-align: center;
} }
.el-form { .el-form {
width: 50%; width: 50%;
height: 100%; height: 100%;
float:left; float: left;
overflow-y:auto; overflow-y: auto;
&::-webkit-scrollbar { &::-webkit-scrollbar {
width: 5px; width: 5px;
height: 1px; height: 1px;
@ -468,7 +501,6 @@ export default {
border-radius: 10px; border-radius: 10px;
background: #fff; background: #fff;
} }
} }
.container { .container {
width: 48%; width: 48%;
@ -492,19 +524,19 @@ export default {
box-sizing: border-box; box-sizing: border-box;
margin-left: 1%; margin-left: 1%;
padding-top: 20px; padding-top: 20px;
overflow-y:auto; overflow-y: auto;
position: relative; position: relative;
padding-top: 40px; padding-top: 40px;
.project-progress-tip { .project-progress-tip {
position: absolute; position: absolute;
top: 0; top: 0;
left:0; left: 0;
width: 80px; width: 80px;
height: 30px; height: 30px;
line-height: 30px; line-height: 30px;
color: #ffffff; color: #ffffff;
background: #0098ff; background: #0098ff;
text-align:center; text-align: center;
} }
&::-webkit-scrollbar { &::-webkit-scrollbar {
width: 5px; width: 5px;
@ -524,11 +556,11 @@ export default {
height: 49%; height: 49%;
box-sizing: border-box; box-sizing: border-box;
border: 2px solid #ccc; border: 2px solid #ccc;
float:left; float: left;
}
} }
}
.refresh { .refresh {
position: absolute; position: absolute;
top: -10px; top: -10px;
right: 0; right: 0;
@ -539,5 +571,5 @@ export default {
.el-icon-refresh { .el-icon-refresh {
font-size: 20px; font-size: 20px;
} }
} }
</style> </style>

Loading…
Cancel
Save