New file |
| | |
| | | <template> |
| | | <div class="app-container"> |
| | | <el-table v-loading="listLoading" :data="tableData" border fit highlight-current-row style="width: 100%"> |
| | | <el-table-column prop="questionTitle" label="反馈题目" /> |
| | | <el-table-column prop="describe" label="反馈描述" /> |
| | | <el-table-column prop="userName" label="反馈用户" /> |
| | | <el-table-column prop="fix" label="是否处理" width="100px"> |
| | | <template slot-scope="{row}"> |
| | | <el-tag :type="row.fix ? 'success' : 'warning'">{{ row.fix ? '已处理' : '未处理' }}</el-tag> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="fixTime" label="处理时间" width="120px"/> |
| | | <el-table-column label="操作" align="center" width="260px"> |
| | | <template slot-scope="{row}"> |
| | | <el-button size="mini" @click="showQuestion(row)" class="link-left">查看</el-button> |
| | | <el-button size="mini" @click="hanldSettleFeedback(row)" type="info" class="link-left">确认处理</el-button> |
| | | <el-button size="mini" @click="hanldDeleteFeedback(row)" type="danger" class="link-left">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <pagination v-show="total > 0" :total="total" :page.sync="queryParam.pageIndex" :limit.sync="queryParam.pageSize" |
| | | @pagination="search" /> |
| | | |
| | | <!-- 预览框 --> |
| | | <el-dialog :visible.sync="questionShow.dialog" style="width: 100%;height: 100%"> |
| | | <QuestionShow :qType="questionShow.qType" :question="questionShow.question" :qLoading="questionShow.loading"/> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import Pagination from '@/components/Pagination' |
| | | import feedbackApi from '@/api/feedback' |
| | | import QuestionShow from '../exam/question/components/Show' |
| | | import questionApi from '@/api/question' |
| | | |
| | | export default { |
| | | components: { Pagination, QuestionShow }, |
| | | data() { |
| | | return { |
| | | queryParam: { |
| | | pageIndex: 1, |
| | | pageSize: 10 |
| | | }, |
| | | subjectFilter: null, |
| | | listLoading: true, |
| | | tableData: [], |
| | | total: 0, |
| | | questionShow: { |
| | | qType: 0, |
| | | dialog: false, |
| | | question: null, |
| | | loading: false |
| | | } |
| | | } |
| | | }, |
| | | created() { |
| | | this.search() |
| | | }, |
| | | methods: { |
| | | search() { |
| | | this.listLoading = true |
| | | feedbackApi.getFeedbackPageList(this.queryParam).then(data => { |
| | | const re = data.response |
| | | this.tableData = re.list |
| | | this.total = re.total |
| | | this.queryParam.pageIndex = re.pageNum |
| | | this.listLoading = false |
| | | }) |
| | | }, |
| | | showQuestion (row) { |
| | | let _this = this |
| | | this.questionShow.dialog = true |
| | | this.questionShow.loading = true |
| | | questionApi.select(row.questionId).then(re => { |
| | | _this.questionShow.qType = re.response.questionType |
| | | _this.questionShow.question = re.response |
| | | _this.questionShow.loading = false |
| | | }) |
| | | }, |
| | | hanldSettleFeedback(row) { |
| | | |
| | | }, |
| | | hanldDeleteFeedback(row) { |
| | | |
| | | } |
| | | } |
| | | } |
| | | </script> |