我的问答

This commit is contained in:
宋伟佳
2022-06-07 17:21:40 +08:00
parent 79367ccd8a
commit c782c1100d
2 changed files with 141 additions and 10 deletions
@@ -13,7 +13,7 @@
<el-input v-model="questionSerach.problemDescription" placeholder="根据关键词查询"></el-input> <el-input v-model="questionSerach.problemDescription" placeholder="根据关键词查询"></el-input>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button size="mini" @click="standSearch">查询</el-button> <el-button size="mini" @click="searchBtn">查询</el-button>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button size="mini" @click="delSearch">清空</el-button> <el-button size="mini" @click="delSearch">清空</el-button>
@@ -794,7 +794,7 @@
<el-button v-else size="mini" style="margin-left: 30px;" type="primary" @click="addList">选择标准</el-button> <el-button v-else size="mini" style="margin-left: 30px;" type="primary" @click="addList">选择标准</el-button>
</el-form-item> </el-form-item>
<el-form-item label="问题" prop="problemDescription" class="serch-form-item"> <el-form-item label="问题" prop="problemDescription" class="serch-form-item">
<el-input v-model="questionForm.problemDescription"></el-input> <el-input v-model="questionForm.problemDescription" @input="changeInput"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="附件"> <el-form-item label="附件">
<el-upload <el-upload
@@ -816,8 +816,11 @@
</el-form> </el-form>
</div> </div>
<span>相似历史问题</span> <span>相似历史问题</span>
<div style="height: 200px; width: 80%; margin-left: 80px;"> <div style="height: 200px; width: 80%; margin-left: 80px;">
<div v-for="item in historyList" :key="item.id" @click="historyJump(item.id)">
<span class="history-item">{{item.problemDescription}}</span>
<span class="history-item">{{item.questionTime}}</span>
</div>
</div> </div>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button class="common-button-default" size="mini" @click="dialogVisible = false"> </el-button> <el-button class="common-button-default" size="mini" @click="dialogVisible = false"> </el-button>
@@ -1202,6 +1205,16 @@ import answerItem from "@/pages/personal/pages/my-questions/components/answerIte
import questionItemInfo from "@/pages/personal/pages/my-questions/components/questionItemInfo"; import questionItemInfo from "@/pages/personal/pages/my-questions/components/questionItemInfo";
import standItem from './components/stand-item' import standItem from './components/stand-item'
function debounce(func, wait = 500){
let timeout;
return function(event){
clearTimeout(timeout)
timeout = setTimeout(() => {
func.call(this, event)
},wait)
}
}
export default { export default {
name: "index", name: "index",
components:{ components:{
@@ -1213,6 +1226,7 @@ export default {
data(){ data(){
return{ return{
mergeList: [], mergeList: [],
historyList: [], //相似历史问题
handleSelectForm: { handleSelectForm: {
standName: '', //标准名称 standName: '', //标准名称
numberName: '', //政策名称 numberName: '', //政策名称
@@ -1301,9 +1315,28 @@ export default {
}) })
sessionStorage.setItem('mergeList', JSON.stringify(this.mergeList)) sessionStorage.setItem('mergeList', JSON.stringify(this.mergeList))
} }
},
'questionForm.problemDescription':{
handler(val){
}
} }
}, },
methods:{ methods:{
changeInput:debounce(function(val){
if(val.length){
this.$http.get('lawss/AskQuestions/resemblance',{
problemDescription: val,
},{
_this: this
}, res => {
this.historyList = res.data
})
}
}),
//点击跳转问题详情
historyJump(id){
this.$router.push('/standQA')
},
// 点击查看 // 点击查看
handlePreview(item) { handlePreview(item) {
let routeUrl = this.$router.resolve({ let routeUrl = this.$router.resolve({
@@ -1489,16 +1522,19 @@ export default {
}, },
sourceClick(){ sourceClick(){
this.standList = []
this.questionSerach.classification = this.activeType this.questionSerach.classification = this.activeType
this.questionSerach.standardEncdoing = '' this.questionSerach.standardEncdoing = ''
this.standSearch() this.standSearch()
}, },
sourceClick2(){ sourceClick2(){
this.standList = []
this.questionSerach.classification = this.activeType this.questionSerach.classification = this.activeType
this.ansSearch() this.ansSearch()
}, },
//我的订阅 //我的订阅
sourceClick3(){ sourceClick3(){
this.standList = []
this.questionSerach.classification = this.activeType this.questionSerach.classification = this.activeType
this.subSearch() this.subSearch()
}, },
@@ -1568,7 +1604,43 @@ export default {
}, },
//清空 //清空
delSearch(){ delSearch(){
this.questionSerach = {
classification: 'INLAND',
type: '',
standardName: '', //标准名称
standardEncdoing: '', //标准编号
questioner: this.$store.getters.userInfo.userId, //提问人
subscription: this.$store.getters.userInfo.userId, //订阅人
answerer: this.$store.getters.userInfo.userId, //回答人
problemDescription: '', //关键词/问题描述
}
},
searchBtn(){
this.questionSerach.classification = this.activeType
switch (this.activeName) {
case 'myQue':
this.questionSerach.type = 'myQue'
this.questionSerach.subscription = ''
this.questionSerach.answerer = ''
break
case 'myAns':
this.questionSerach.type = 'myAns'
this.questionSerach.subscription = ''
this.questionSerach.questioner = ''
break
case 'mySub':
this.questionSerach.type = 'mySub'
this.questionSerach.questioner = ''
this.questionSerach.answerer = ''
break
}
this.$http.get('lawss/AskQuestions/retrieve',{
...this.questionSerach
},{
_this: this
}, res => {
this.standList = res.data
})
}, },
//问题查询 //问题查询
queSearch(){ queSearch(){
@@ -1797,4 +1869,11 @@ export default {
/deep/.el-upload-dragger { /deep/.el-upload-dragger {
height: 90px; height: 90px;
} }
.history-item{
padding: 15px;
line-height: 1.5;
font-size: 14px;
color: #409EFF;
cursor: pointer;
}
</style> </style>
@@ -13,7 +13,7 @@
<el-input v-model="questionSerach.problemDescription" placeholder="根据关键词查询"></el-input> <el-input v-model="questionSerach.problemDescription" placeholder="根据关键词查询"></el-input>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button size="mini" @click="standSearch">查询</el-button> <el-button size="mini" @click="searchBtn">查询</el-button>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button size="mini" @click="delSearch">清空</el-button> <el-button size="mini" @click="delSearch">清空</el-button>
@@ -290,7 +290,7 @@
<el-button v-else size="mini" style="margin-left: 30px;" type="primary" @click="addList">选择标准</el-button> <el-button v-else size="mini" style="margin-left: 30px;" type="primary" @click="addList">选择标准</el-button>
</el-form-item> </el-form-item>
<el-form-item label="问题" prop="problemDescription" class="serch-form-item"> <el-form-item label="问题" prop="problemDescription" class="serch-form-item">
<el-input v-model="questionForm.problemDescription"></el-input> <el-input v-model="questionForm.problemDescription" @input="changeInput"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="附件"> <el-form-item label="附件">
<el-upload <el-upload
@@ -312,8 +312,11 @@
</el-form> </el-form>
</div> </div>
<span>相似历史问题</span> <span>相似历史问题</span>
<div style="height: 200px; width: 80%; margin-left: 80px;"> <div style="height: 200px; width: 80%; margin-left: 80px;">
<div v-for="item in historyList" :key="item.id" @click="historyJump(item.id)">
<span class="history-item">{{item.problemDescription}}</span>
<span class="history-item">{{item.questionTime}}</span>
</div>
</div> </div>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button class="common-button-default" size="mini" @click="dialogVisible = false"> </el-button> <el-button class="common-button-default" size="mini" @click="dialogVisible = false"> </el-button>
@@ -698,6 +701,15 @@ import answerItem from "./components/answerItem";
import questionItemInfo from "./components/questionItemInfo"; import questionItemInfo from "./components/questionItemInfo";
import standItem from './components/stand-item' import standItem from './components/stand-item'
function debounce(func, wait = 500){
let timeout;
return function(event){
clearTimeout(timeout)
timeout = setTimeout(() => {
func.call(this, event)
},wait)
}
}
export default { export default {
name: "standQA", name: "standQA",
components:{ components:{
@@ -708,6 +720,7 @@ export default {
}, },
data(){ data(){
return{ return{
historyList: [],
pubOptions: [], //公共问题 pubOptions: [], //公共问题
handleSelectForm: { handleSelectForm: {
standName: '', //标准名称 standName: '', //标准名称
@@ -783,6 +796,21 @@ export default {
}); });
}, },
methods:{ methods:{
changeInput:debounce(function(val){
if(val.length){
this.$http.get('lawss/AskQuestions/resemblance',{
problemDescription: val,
},{
_this: this
}, res => {
this.historyList = res.data
})
}
}),
//点击跳转问题详情
historyJump(id){
this.$router.push('/standQA')
},
// 点击查看 // 点击查看
handlePreview(item) { handlePreview(item) {
let routeUrl = this.$router.resolve({ let routeUrl = this.$router.resolve({
@@ -992,7 +1020,24 @@ export default {
}, },
//清空 //清空
delSearch(){ delSearch(){
this.questionSerach = {
classification: 'INLAND',
standardName: '', //标准名称
standardEncdoing: '', //标准编号
questioner: this.$store.getters.userInfo.userId, //提问人
problemDescription: '', //关键词/问题描述
}
},
searchBtn(){
this.questionSerach.classification = this.activeType
this.questionSerach.questioner = ''
this.$http.get('lawss/AskQuestions/retrieve',{
...this.questionSerach
},{
_this: this
}, res => {
this.standList = res.data
})
}, },
//问题查询 //问题查询
queSearch(){ queSearch(){
@@ -1208,4 +1253,11 @@ export default {
/deep/.el-upload-dragger { /deep/.el-upload-dragger {
height: 90px; height: 90px;
} }
.history-item{
padding: 15px;
line-height: 1.5;
font-size: 14px;
color: #409EFF;
cursor: pointer;
}
</style> </style>