123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117 |
- <template>
- <div id="Mybank">
- <div class="no-data" v-if="!bankData.goodsName">暂无可以学习的题库哦~</div>
- <div v-else>
- <h4 class="headerTitle">
- <span v-if="bankData.subjectNames">【{{ bankData.subjectNames }}】</span
- >{{ bankData.goodsName
- }}<el-button
- size="mini"
- type="primary"
- plain
- icon="el-icon-sort"
- style="margin-left: 14px"
- @click="changeBank"
- >切换题库</el-button
- >
- </h4>
- <bank-detail-copy ref="bankDetailCopy" />
- </div>
- <el-dialog title="切换题库" :visible.sync="dialogVisible" width="500px">
- <el-radio-group v-model="activeRadio">
- <el-radio
- v-for="(item, index) in list"
- :key="index"
- :label="item.goodsId"
- >{{ item.goodsName }}</el-radio
- >
- </el-radio-group>
- <span slot="footer" class="dialog-footer">
- <el-button @click="dialogVisible = false">取 消</el-button>
- <el-button type="primary" @click="activeFunc">确 定</el-button>
- </span>
- </el-dialog>
- </div>
- </template>
- <script>
- import bankDetailCopy from "../bank-detailCopy/index.vue";
- export default {
- name: "Mybank",
- components: { bankDetailCopy },
- data() {
- return {
- bankData: {},
- dialogVisible: false,
- list: [],
- activeRadio: "",
- };
- },
- mounted() {
- this.getList();
- },
- methods: {
- getInfoData(data) {
- return new Promise((resolve, reject) => {
- this.$request.goodsDetail(data.goodsId).then((res) => {
- res.data.orderGoodsId = data.orderGoodsId;
- resolve(res.data);
- });
- });
- },
- getList() {
- this.$request.examrecordgetUserDoLast().then(async (res) => {
- if (res.data.goodsId) {
- const result = await this.getInfoData(res.data);
- this.bankData = result;
- this.$nextTick(() => {
- this.$refs.bankDetailCopy.initData(this.bankData,res.data);
- });
- } else {
- this.$request
- .listGoodsUserQuestion({ pageNum: 1, pageSize: 1 })
- .then((res) => {
- if (res.rows.length > 0) {
- this.bankData = res.rows[0];
- this.$nextTick(() => {
- this.$refs.bankDetailCopy.initData(this.bankData);
- });
- }
- });
- }
- });
- },
- /**
- * 切换题库
- */
- changeBank() {
- this.activeRadio = this.bankData.goodsId || "";
- this.$request.listGoodsUserQuestion().then((res) => {
- this.list = res.rows;
- this.dialogVisible = true;
- });
- },
- /**
- * 确定选中
- */
- activeFunc() {
- for (let i = 0; i < this.list.length; i++) {
- if (this.list[i].goodsId == this.activeRadio) {
- this.$refs.bankDetailCopy.initData(this.list[i]);
- this.bankData = this.list[i];
- this.dialogVisible = false;
- }
- }
- },
- },
- };
- </script>
- <style lang="scss" scoped>
- .headerTitle {
- padding: 30px 0px;
- font-size: 24px;
- font-weight: bold;
- color: #222;
- }
- </style>
|