HZH 5 жил өмнө
parent
commit
3a226a7045

+ 33 - 6
src/api/exam.js

@@ -11,6 +11,39 @@ export function getPaperList(status,subjectId) {
     .then(res => res.data);
 }
 
+//新增试卷
+export function addPaper(paper) {
+    return axios({
+        method: 'post',
+        url: '/paper/uploadPaper',
+        data: paper
+    }).then(res => res.data)
+}
+
+//修改试卷
+export function updatePaper(user) {
+    return axios({
+        method: 'post',
+        url: '/user/updatePassword',
+        data: user
+    }).then(res => res.data)
+}
+
+//删除试卷
+export function deletePaper(id) {
+    return axios({
+        method: 'post',
+        url: '/paper/delete',
+        params: {id: id}
+    }).then(res => res)
+}
+
+//获取单张试卷
+export function getPaperById(id) {
+    return axios.get('/paper/getOnePaper/'+id)
+    .then(res => res.data);
+}
+
 //检测是否已经测试
 export function checkFirstTest(pid,uid) {
     return axios.get('/paper/hasCommit',{
@@ -22,12 +55,6 @@ export function checkFirstTest(pid,uid) {
     .then(res => res.data);
 }
 
-//获取单张试卷
-export function getPaperById(id) {
-    return axios.get('/paper/getOnePaper/'+id)
-    .then(res => res.data);
-}
-
 //提交答题试卷
 export function commitPaper(paper) {
     return axios({

+ 4 - 1
src/components/TestResult2.vue

@@ -58,7 +58,10 @@
         <Knowledge></Knowledge>
         <div class="ad">
           <p>扫码获取精准学习资料</p>
-          <img src="@/images/report/group6Y.png">
+          <img src="@/images/report/group9Y.png" v-if="$store.state.loginUser.grade == '9Y'">
+          <img src="@/images/report/group8Y.png" v-if="$store.state.loginUser.grade == '8Y'">
+          <img src="@/images/report/group7Y.png" v-if="$store.state.loginUser.grade == '7Y'">
+          <img src="@/images/report/group6Y.png" v-if="$store.state.loginUser.grade == '6Y'">
         </div>
         <button @click="goBack" class="bt-type3">返回主页</button>
     </div>

+ 185 - 0
src/components/controlMainPage/DocList.vue

@@ -1,22 +1,207 @@
 <style lang="scss">
+table{
+  width: 100%;
+  thead{
+    color: #909399;
+    font-weight: 500;
+  }
+  tr{
+    background-color: #FFF;
+  }
+  th,td{
+    padding: 12px 0;
+    padding-left: 10px;
+    padding-right: 10px;
+    text-overflow: ellipsis;
+    vertical-align: middle;
+    border-bottom: 1px solid #EBEEF5;
+    a{
+      cursor: pointer;
+    }
+  }
+}
+.search-part{
+  padding: 5px 15px;
+  .add-user{
+    float: right;
+  }
+}
+.dialog-style{
+  div{
+    text-align: center;
+    margin: 5px;
+    /deep/ .el-input{
+      display: inline-block;
+      width: 200px;
+    }
+  }
+}
+.center-text{
+  text-align: center;
+}
 </style>
 <template>
 <div>
+  <div class="search-part">
+    <!-- <label>姓名:</label>
+    <el-input v-model="search.name" placeholder="请输入姓名"></el-input> -->
+    <!-- &nbsp;&nbsp;&nbsp;&nbsp; -->
+    <label>状态:</label>
+    <el-select v-model="search.status" placeholder="请选择" @change="searchDoc">
+      <el-option :label="'全部'" :value="''"></el-option>
+      <el-option :label="'可用'" :value="1"></el-option>
+      <el-option :label="'不可用'" :value="0"></el-option>
+      <el-option :label="'隐藏'" :value="2"></el-option>
+    </el-select>
+    <el-button icon="el-icon-search" circle @click="searchDoc"></el-button>
+    <!-- <el-button type="primary" class="add-user" @click="visibleAdd = true">新增</el-button> -->
+  </div>
+  <table>
+    <thead>
+            <tr>
+                <th>序号</th>
+                <th>名称</th>
+                <th>年级</th>
+                <th>状态</th>
+                <th>操作</th>
+            </tr>
+        </thead>
+        <tbody>
+            <tr v-for="(item,index) in docList" :key="index">
+              <td>{{index + 1}}</td>
+              <td>{{item.name}}</td>
+              <td>{{gradeMap[item.grade]}}</td>
+              <td>{{statusList[item.status]}}</td>
+              <td>
+                <a @click="visibleChange = true;changeUser.id = item.id">修改</a>
+                &nbsp;&nbsp;
+                <a @click="visibleDelete = true;deleteId = item.id">删除</a>
+              </td>
+            </tr>
+        </tbody>
+  </table>
+  <el-dialog
+        class="dialog-style"
+        title="编辑"
+        :visible.sync="visibleAdd"
+        width="500px">
+        <div>
+          <label>名称:</label>
+          <el-input name="name" v-model="paperAdd.name" placeholder="请输入姓名" required="required"></el-input>
+        </div>
+        <div>
+          <label>年级:</label>
+          <el-select v-model="paperAdd.grade" placeholder="请选择">
+            <el-option
+              v-for="item in gradeOptions"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value">
+            </el-option>
+          </el-select>
+        </div>
+        <div>
+          <label>手机:</label>
+          <el-input v-model="paperAdd.username" placeholder="请输入手机" required="required"></el-input>
+        </div>
+        <div>
+          <label>密码:</label>
+          <el-input placeholder="请输入密码" v-model="paperAdd.password" show-password required="required"></el-input>
+        </div>
+        <span slot="footer" class="dialog-footer">
+            <el-button type="primary" @click="addPaper">确 定</el-button>
+            <el-button type="primary" @click="visibleAdd = false">取消</el-button>
+        </span>
+    </el-dialog>
+    <el-dialog
+      title="提示"
+      :visible.sync="visibleDelete"
+      width="200px">
+      <p class="center-text">确认删除?</p>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="visibleDelete = false">取 消</el-button>
+        <el-button type="primary" @click="deletePaper">确 定</el-button>
+      </span>
+    </el-dialog>
+    <!-- <el-dialog
+      class="dialog-style"
+      title="修改密码"
+      :visible.sync="visibleChange"
+      width="500px">
+      <div>
+          <label>旧密码:</label>
+          <el-input placeholder="请输入旧密码" v-model="changeUser.oldPass" show-password required="required"></el-input>
+      </div>
+      <div>
+          <label>新密码:</label>
+          <el-input placeholder="请输入新密码" v-model="changeUser.newPass" show-password required="required"></el-input>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="visibleChange = false">取 消</el-button>
+        <el-button type="primary" @click="updateUser">确 定</el-button>
+      </span>
+    </el-dialog> -->
 </div>
 </template>
 
 <script>
+import { getPaperList, getPaperById ,addPaper, deletePaper } from "@/api/exam";
+import { GRADE_OPTION, GRADE_MAP } from '@/services/constant';
+
 export default {
   name: 'DocList',
   components: {
   },
   data () {
       return {
+        docList:[],
+        search:{
+          status:'',
+          name:'',
+        },
+        paperAdd:{},
+        changeUser:{},
+        deleteId: -1,
+
+        gradeOptions: GRADE_OPTION,
+        gradeMap: GRADE_MAP,
+        statusList:['不可用','可用','隐藏'],
+
+        visibleAdd:false,
+        visibleDelete:false,
+        visibleChange:false,
       }
   },
   created() {
+    this.searchDoc();
   },
   methods: {
+    searchDoc(){
+      getPaperList(this.search.status,"").then((result) => {
+        this.docList = result;
+      })
+    },
+    addPaper(){
+      addPaper(this.paperAdd).then((result) => {
+        alert(result.message);
+        this.visibleAdd = false
+        this.searchDoc();
+      })
+    },
+    // updateUser(){
+    //   updateUser(this.changeUser).then((result) => {
+    //     alert(result.message);
+    //     this.visibleChange = false
+    //     this.searchDoc();
+    //   })
+    // },
+    deletePaper(){
+      deletePaper(this.deleteId).then((result) => {
+        alert(result?'删除成功':'删除失败');
+        this.visibleDelete = false
+        this.searchDoc();
+      })
+    }
   }
 }
 </script>

+ 17 - 48
src/components/controlMainPage/UserList.vue

@@ -49,14 +49,14 @@ table{
     <label>年级:</label>
     <el-select v-model="search.grade" placeholder="请选择" @change="searchUser">
       <el-option
-        v-for="item in options"
+        v-for="item in gradeOptions"
         :key="item.value"
         :label="item.label"
         :value="item.value">
       </el-option>
     </el-select>
     <el-button icon="el-icon-search" circle @click="searchUser"></el-button>
-    <el-button type="primary" class="add-user" @click="dialogVisible = true">新增</el-button>
+    <el-button type="primary" class="add-user" @click="visibleAdd = true">新增</el-button>
   </div>
   <table>
     <thead>
@@ -79,7 +79,7 @@ table{
               <td>{{item.region}}</td>
               <td>{{gradeMap[item.grade]}}</td>
               <td>
-                <a @click="passChange = true;changeUser.id = item.id">修改密码</a>
+                <a @click="visibleChange = true;changeUser.id = item.id">修改密码</a>
                 &nbsp;&nbsp;
                 <a @click="visibleDelete = true;deleteId = item.id">删除</a>
               </td>
@@ -89,7 +89,7 @@ table{
   <el-dialog
         class="dialog-style"
         title="编辑"
-        :visible.sync="dialogVisible"
+        :visible.sync="visibleAdd"
         width="500px">
         <div>
           <label>姓名:</label>
@@ -99,7 +99,7 @@ table{
           <label>年级:</label>
           <el-select v-model="user.grade" placeholder="请选择">
             <el-option
-              v-for="item in options"
+              v-for="item in gradeOptions"
               :key="item.value"
               :label="item.label"
               :value="item.value">
@@ -116,7 +116,7 @@ table{
         </div>
         <span slot="footer" class="dialog-footer">
             <el-button type="primary" @click="addUser">确 定</el-button>
-            <el-button type="primary" @click="dialogVisible = false">取消</el-button>
+            <el-button type="primary" @click="visibleAdd = false">取消</el-button>
         </span>
     </el-dialog>
     <el-dialog
@@ -132,7 +132,7 @@ table{
     <el-dialog
       class="dialog-style"
       title="修改密码"
-      :visible.sync="passChange"
+      :visible.sync="visibleChange"
       width="500px">
       <div>
           <label>旧密码:</label>
@@ -143,7 +143,7 @@ table{
           <el-input placeholder="请输入新密码" v-model="changeUser.newPass" show-password required="required"></el-input>
       </div>
       <span slot="footer" class="dialog-footer">
-        <el-button @click="passChange = false">取 消</el-button>
+        <el-button @click="visibleChange = false">取 消</el-button>
         <el-button type="primary" @click="updateUser">确 定</el-button>
       </span>
     </el-dialog>
@@ -152,6 +152,7 @@ table{
 
 <script>
 import { getUserList,addUser,updateUser,deleteUser } from '@/api/user';
+import { GRADE_OPTION, GRADE_MAP } from '@/services/constant';
 
 export default {
   name: 'UserList',
@@ -159,52 +160,20 @@ export default {
   },
   data () {
       return {
+        userList:[],
         user:{},
         changeUser:{},
-        userList:[],
         search:{
           name:'',
           grade:'',
         },
         deleteId: -1,
-        options: [{
-          value: '6X',
-          label: '六年级上'
-        }, {
-          value: '6Y',
-          label: '六年级下'
-        }, {
-          value: '7X',
-          label: '初一上'
-        }, {
-          value: '7Y',
-          label: '初一下'
-        }, {
-          value: '8X',
-          label: '初二上'
-        }, {
-          value: '8Y',
-          label: '初二下'
-        }, {
-          value: '9X',
-          label: '初三上'
-        }, {
-          value: '9Y',
-          label: '初三下'
-        }],
-        gradeMap:{
-          '6X':'六年级上',
-          '6Y':'六年级下',
-          '7X':'初一上',
-          '7Y':'初一下',
-          '8X':'初二上',
-          '8Y':'初二下',
-          '9X':'初三上',
-          '9Y':'初三下',
-        },
-        dialogVisible:false,
+        gradeOptions: GRADE_OPTION,
+        gradeMap: GRADE_MAP,
+
+        visibleAdd:false,
         visibleDelete:false,
-        passChange:false,
+        visibleChange:false,
       }
   },
   created() {
@@ -219,14 +188,14 @@ export default {
     addUser(){
       addUser(this.user).then((result) => {
         alert(result.message);
-        this.dialogVisible = false
+        this.visibleAdd = false
         this.searchUser();
       })
     },
     updateUser(){
       updateUser(this.changeUser).then((result) => {
         alert(result.message);
-        this.passChange = false
+        this.visibleChange = false
         this.searchUser();
       })
     },

BIN
src/images/report/group7Y.png


BIN
src/images/report/group8Y.png


BIN
src/images/report/group9Y.png


+ 39 - 0
src/services/constant.js

@@ -0,0 +1,39 @@
+// export const host = 'http://192.168.50.20:8081';
+// export const host = "http://localhost:8091";
+// export const debug = process.env.NODE_ENV !== 'production';
+export const GRADE_OPTION = [{
+        value: '6X',
+        label: '六年级上'
+    }, {
+        value: '6Y',
+        label: '六年级下'
+    }, {
+        value: '7X',
+        label: '初一上'
+    }, {
+        value: '7Y',
+        label: '初一下'
+    }, {
+        value: '8X',
+        label: '初二上'
+    }, {
+        value: '8Y',
+        label: '初二下'
+    }, {
+        value: '9X',
+        label: '初三上'
+    }, {
+        value: '9Y',
+        label: '初三下'
+    }];
+
+export const GRADE_MAP = {
+    '6X':'六年级上',
+    '6Y':'六年级下',
+    '7X':'初一上',
+    '7Y':'初一下',
+    '8X':'初二上',
+    '8Y':'初二下',
+    '9X':'初三上',
+    '9Y':'初三下',
+}

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 0 - 0
static/css/group-controlApp.30f9edb7.css


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 0 - 0
static/css/group-controlApp.a1da1c5d.css


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 0 - 0
static/css/group-doTest.ffa9ced6.css


BIN
static/img/group7Y.4622ee46.png


BIN
static/img/group8Y.0c846b12.png


BIN
static/img/group9Y.b88678f6.png


+ 1 - 1
static/index.html

@@ -31,4 +31,4 @@
           if(window.confirm("您的浏览器版本过低,推荐使用IE10及以上浏览器或者chrome浏览器,点击确定下载chrome安装浏览器。若是360等浏览器,开启兼容模式")){
               window.open("/download/44.0.2403.89_chrome_installer.exe", "_blank");
           }
-      }</script><link href=/css/group-app.000700aa.css rel=prefetch><link href=/css/group-controlApp.30f9edb7.css rel=prefetch><link href=/css/group-doTest.d69bfa94.css rel=prefetch><link href=/css/group-mainPage.9af7a1f8.css rel=prefetch><link href=/js/group-app.24429b9c.js rel=prefetch><link href=/js/group-controlApp.60871979.js rel=prefetch><link href=/js/group-doTest.1110e3b6.js rel=prefetch><link href=/js/group-mainPage.76684335.js rel=prefetch><link href=/css/app.e9f156cc.css rel=preload as=style><link href=/css/chunk-vendors.723a90c8.css rel=preload as=style><link href=/js/app.a7f361e7.js rel=preload as=script><link href=/js/chunk-vendors.2493bbd2.js rel=preload as=script><link href=/css/chunk-vendors.723a90c8.css rel=stylesheet><link href=/css/app.e9f156cc.css rel=stylesheet></head><body><noscript><strong>We're sorry but my-project doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id=app></div><script src=/js/chunk-vendors.2493bbd2.js></script><script src=/js/app.a7f361e7.js></script></body></html>
+      }</script><link href=/css/group-app.000700aa.css rel=prefetch><link href=/css/group-controlApp.a1da1c5d.css rel=prefetch><link href=/css/group-doTest.ffa9ced6.css rel=prefetch><link href=/css/group-mainPage.9af7a1f8.css rel=prefetch><link href=/js/group-app.24429b9c.js rel=prefetch><link href=/js/group-controlApp.f4228082.js rel=prefetch><link href=/js/group-doTest.198111c7.js rel=prefetch><link href=/js/group-mainPage.5fd1c98c.js rel=prefetch><link href=/css/app.e9f156cc.css rel=preload as=style><link href=/css/chunk-vendors.723a90c8.css rel=preload as=style><link href=/js/app.977b2915.js rel=preload as=script><link href=/js/chunk-vendors.2493bbd2.js rel=preload as=script><link href=/css/chunk-vendors.723a90c8.css rel=stylesheet><link href=/css/app.e9f156cc.css rel=stylesheet></head><body><noscript><strong>We're sorry but my-project doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id=app></div><script src=/js/chunk-vendors.2493bbd2.js></script><script src=/js/app.977b2915.js></script></body></html>

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 0 - 0
static/js/app.977b2915.js


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 0 - 0
static/js/group-controlApp.60871979.js


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 0 - 0
static/js/group-controlApp.f4228082.js


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 0 - 0
static/js/group-doTest.1110e3b6.js


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 0 - 0
static/js/group-doTest.198111c7.js


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 0 - 0
static/js/group-mainPage.5fd1c98c.js


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 0 - 0
static/js/group-mainPage.76684335.js


Энэ ялгаанд хэт олон файл өөрчлөгдсөн тул зарим файлыг харуулаагүй болно