<template>
|
<!-- 清单详情 -->
|
<CloseButton v-show="show" @close="closeEdit">
|
<el-button
|
class="push-btn"
|
:type="clueData.cuploaded ? 'success' : 'danger'"
|
@click="pushCheck"
|
:disabled="clueData.cuploaded"
|
>
|
<div class="flex-col">
|
<template v-if="clueData.cuploaded">
|
<el-icon><Check /></el-icon>
|
<div>已</div>
|
<div>推</div>
|
<div>送</div>
|
</template>
|
<template v-else>
|
<el-icon><Upload /></el-icon>
|
<div>推</div>
|
<div>送</div>
|
<div>反</div>
|
<div>馈</div>
|
</template>
|
</div>
|
</el-button>
|
<el-button
|
class="task-btn"
|
:type="clueTask ? 'success' : 'danger'"
|
@click="publishTask"
|
>
|
<div class="flex-col">
|
<template v-if="clueTask">
|
<el-icon><Check /></el-icon>
|
<div>查</div>
|
<div>看</div>
|
<div>任</div>
|
<div>务</div>
|
</template>
|
<template v-else>
|
<el-icon><Upload /></el-icon>
|
<div>发</div>
|
<div>布</div>
|
<div>任</div>
|
<div>务</div>
|
</template>
|
</div>
|
</el-button>
|
<div class="fy-card">
|
<div class="fy-h1">线索反馈</div>
|
<el-scrollbar height="80vh" class="p-h-1">
|
<ClueReportClue :clue="clueData"></ClueReportClue>
|
<ClueReportConclusion
|
:clueId="clueData.cid"
|
></ClueReportConclusion>
|
<ClueReportQuestion :clueData="clueData"></ClueReportQuestion>
|
</el-scrollbar>
|
</div>
|
</CloseButton>
|
</template>
|
|
<script>
|
import ClueReportClue from './components/ClueReportClue.vue';
|
import ClueReportConclusion from './components/ClueReportConclusion.vue';
|
import ClueReportQuestion from './components/ClueReportQuestion.vue';
|
import { useMessageBoxTip } from '@/composables/messageBox';
|
import clueApi from '@/api/clue/clueApi';
|
|
export default {
|
components: {
|
ClueReportClue,
|
ClueReportConclusion,
|
ClueReportQuestion
|
},
|
props: {
|
clueData: {
|
type: Object,
|
default: () => {
|
return {};
|
}
|
},
|
show: Boolean
|
},
|
emits: ['update:show', 'pushed'],
|
data() {
|
return {
|
clueTask: undefined
|
};
|
},
|
methods: {
|
closeEdit() {
|
this.$emit('update:show', false);
|
},
|
pushCheck() {
|
useMessageBoxTip({
|
confirmMsg: '线索推送后无法再修改结论与问题,确认推送?',
|
confirmTitle: '线索推送',
|
onConfirm: () => {
|
return this.pushClue();
|
}
|
});
|
},
|
pushClue() {
|
return clueApi.pushClue(this.clueData.cid).then((res) => {
|
this.$emit('pushed', res);
|
});
|
},
|
publishTask() {
|
|
}
|
}
|
};
|
</script>
|
|
<style scoped>
|
.push-btn {
|
position: absolute;
|
z-index: 1;
|
top: 2rem;
|
left: -2.5rem;
|
width: 2.5rem;
|
height: initial;
|
margin: initial;
|
display: flex;
|
flex-direction: column;
|
align-items: center;
|
/* background-color: white; */
|
/* border-color: white; */
|
/* border-top: 1px solid;
|
border-left: 1px solid;
|
border-bottom: 1px solid; */
|
border-top-right-radius: 0px;
|
border-bottom-right-radius: 0px;
|
/* box-shadow: var(--el-box-shadow-light); */
|
}
|
|
.task-btn {
|
position: absolute;
|
z-index: 1;
|
bottom: 2rem;
|
left: -2.5rem;
|
width: 2.5rem;
|
height: initial;
|
margin: initial;
|
display: flex;
|
flex-direction: column;
|
align-items: center;
|
/* background-color: white; */
|
/* border-color: white; */
|
/* border-top: 1px solid;
|
border-left: 1px solid;
|
border-bottom: 1px solid; */
|
border-top-right-radius: 0px;
|
border-bottom-right-radius: 0px;
|
/* box-shadow: var(--el-box-shadow-light); */
|
}
|
</style>
|