Ver código fonte

细分页面ui调整

zhangjie 3 anos atrás
pai
commit
bef9588e6e
46 arquivos alterados com 3037 adições e 2762 exclusões
  1. 1 0
      src/main.js
  2. 4 2
      src/modules/portal/views/Login.vue
  3. 37 39
      src/modules/portal/views/home/Home.vue
  4. 0 109
      src/modules/questions/styles/Common.css
  5. 12 13
      src/modules/questions/views/AuditInfo.vue
  6. 0 1
      src/modules/questions/views/AuditPaper.vue
  7. 2 3
      src/modules/questions/views/BluePaperStructure.vue
  8. 0 1
      src/modules/questions/views/CheckDuplicateList.vue
  9. 1 0
      src/modules/questions/views/ClientConfig.vue
  10. 16 12
      src/modules/questions/views/Course.vue
  11. 14 12
      src/modules/questions/views/CourseProperty.vue
  12. 0 1
      src/modules/questions/views/EditOtherQuestion.vue
  13. 898 824
      src/modules/questions/views/EditPaper.vue
  14. 0 1
      src/modules/questions/views/EditPaperPendingTrial.vue
  15. 0 1
      src/modules/questions/views/EditSelectQuestion.vue
  16. 0 1
      src/modules/questions/views/ExamPaperPendingTrial.vue
  17. 6 14
      src/modules/questions/views/ExportTemplate.vue
  18. 0 1
      src/modules/questions/views/GenPaper.vue
  19. 0 1
      src/modules/questions/views/GenPaperDetail.vue
  20. 31 34
      src/modules/questions/views/ImportPaper.vue
  21. 9 24
      src/modules/questions/views/ImportPaperInfo.vue
  22. 200 219
      src/modules/questions/views/InsertBluePaperStructure.vue
  23. 281 326
      src/modules/questions/views/InsertBluePaperStructureInfo.vue
  24. 172 193
      src/modules/questions/views/InsertPaperStructure.vue
  25. 423 515
      src/modules/questions/views/InsertPaperStructureInfo.vue
  26. 1 1
      src/modules/questions/views/InsertPaperTitle.vue
  27. 1 0
      src/modules/questions/views/OrgProperty.vue
  28. 0 1
      src/modules/questions/views/PaperBasicComposition.vue
  29. 0 1
      src/modules/questions/views/PaperBlue.vue
  30. 0 1
      src/modules/questions/views/PaperPendingTrial.vue
  31. 0 1
      src/modules/questions/views/PaperQuestionType.vue
  32. 0 1
      src/modules/questions/views/PaperStorage.vue
  33. 5 5
      src/modules/questions/views/PaperStructure.vue
  34. 95 90
      src/modules/questions/views/PropertyInfo.vue
  35. 0 1
      src/modules/questions/views/Question.vue
  36. 1 4
      src/modules/questions/views/School.vue
  37. 0 1
      src/modules/questions/views/ViewPaper.vue
  38. 107 133
      src/modules/questions/views/data_previllege.vue
  39. 56 71
      src/modules/questions/views/data_previllege_add_course.vue
  40. 77 94
      src/modules/questions/views/user.vue
  41. 2 1
      src/plugins/element.js
  42. 251 0
      src/styles/base.scss
  43. 15 0
      src/styles/element-variables.scss
  44. 0 8
      src/styles/elementuiCustomize.css
  45. 1 1
      src/styles/global.css
  46. 318 0
      src/styles/pages.scss

+ 1 - 0
src/main.js

@@ -13,6 +13,7 @@ import "./filters/filters.js";
 import "./styles/bootstrap.scss";
 import "./styles/base.scss";
 import "./styles/global.css";
+import "./styles/pages.scss";
 
 Vue.config.productionTip = process.env.NODE_ENV !== "production";
 

+ 4 - 2
src/modules/portal/views/Login.vue

@@ -93,8 +93,10 @@ export default {
       this.$router.push(this.$route.hash.slice(1));
       return;
     }
-    this.loginInfo.domain =
-      window.location.hostname.split(".")[0] + ".ecs.qmth.com.cn";
+    // TODO:临时修改
+    this.loginInfo.domain = "test.ecs.qmth.com.cn";
+    // this.loginInfo.domain =
+    //   window.location.hostname.split(".")[0] + ".ecs.qmth.com.cn";
     sessionStorage.clear();
     var params = this.$route.query;
 

+ 37 - 39
src/modules/portal/views/home/Home.vue

@@ -39,23 +39,22 @@
       title="个人信息"
       width="410px"
       :visible.sync="userDialog"
+      :modal="false"
+      append-to-body
+      custom-class="side-dialog"
       @close="() => $refs.passForm.clearValidate()"
     >
-      <el-tabs value="first">
+      <el-tabs v-model="userTabName">
         <el-tab-pane label="用户权限" name="first">
           <el-form :inline="true" label-position="right" label-width="90px">
-            <el-row :gutter="10">
-              <el-col>
-                <el-tag
-                  v-for="role in user.roleList"
-                  :key="role.roleId"
-                  type="primary"
-                  style="margin-left: 10px; margin-top: 10px"
-                >
-                  {{ role.roleName }}
-                </el-tag>
-              </el-col>
-            </el-row>
+            <el-tag
+              v-for="role in user.roleList"
+              :key="role.roleId"
+              type="primary"
+              style="margin-left: 10px; margin-top: 10px"
+            >
+              {{ role.roleName }}
+            </el-tag>
           </el-form>
         </el-tab-pane>
         <el-tab-pane label="修改密码" name="second">
@@ -63,40 +62,37 @@
             ref="passForm"
             :inline="true"
             inline-message
+            class="el-form-linemess"
             :model="passForm"
             :rules="passRules"
             label-position="right"
             label-width="80px"
           >
-            <el-row>
-              <el-form-item label="密码" prop="pass">
-                <el-input
-                  v-model="passForm.pass"
-                  type="password"
-                  style="width: 150px"
-                  auto-complete="off"
-                  placeholder="请输入密码"
-                />
-              </el-form-item>
-            </el-row>
-            <el-row>
-              <el-form-item label="确认密码" prop="checkPass">
-                <el-input
-                  v-model="passForm.checkPass"
-                  type="password"
-                  style="width: 150px"
-                  auto-complete="off"
-                  placeholder="请输入确认密码"
-                />
-              </el-form-item>
-            </el-row>
-            <el-row style="margin-left: 100px">
-              <el-button type="primary" @click="submitForm">保 存</el-button>
-              <el-button @click="userDialog = false">取 消</el-button>
-            </el-row>
+            <el-form-item label="密码" prop="pass">
+              <el-input
+                v-model="passForm.pass"
+                type="password"
+                style="width: 150px"
+                auto-complete="off"
+                placeholder="请输入密码"
+              />
+            </el-form-item>
+            <el-form-item label="确认密码" prop="checkPass">
+              <el-input
+                v-model="passForm.checkPass"
+                type="password"
+                style="width: 150px"
+                auto-complete="off"
+                placeholder="请输入确认密码"
+              />
+            </el-form-item>
           </el-form>
         </el-tab-pane>
       </el-tabs>
+      <div v-if="userTabName === 'second'" slot="footer">
+        <el-button type="primary" @click="submitForm">保 存</el-button>
+        <el-button @click="userDialog = false">取 消</el-button>
+      </div>
     </el-dialog>
     <el-dialog
       title="修改密码"
@@ -112,6 +108,7 @@
         ref="passWeakForm"
         :inline="true"
         inline-message
+        class="el-form-linemess"
         :model="passWeakForm"
         :rules="passWeakRules"
         label-position="right"
@@ -212,6 +209,7 @@ export default {
     return {
       unreadMessageCount: 0,
       userDialog: false,
+      userTabName: "first",
       passWeakDialog: false,
       passForm: { pass: "", checkPass: "" },
       passWeakForm: { pass: "", checkPass: "" },

+ 0 - 109
src/modules/questions/styles/Common.css

@@ -1,109 +0,0 @@
-/* 检索框的长度 */
-.search_width {
-  width: 150px;
-}
-
-.search_width_80px {
-  width: 80px;
-}
-
-.form_width {
-  width: 200px;
-}
-
-/* 查询按钮与检索框对齐 */
-.search_down {
-  margin-top: 3.3px;
-}
-
-/* 操作按钮左移*/
-.operate_left {
-  margin-left: 2.6px;
-}
-
-.button_left {
-  margin-left: 10px;
-}
-
-.paper_title {
-  background-color: bisque;
-  width: 400px;
-  border-top-right-radius: 15px;
-  border-bottom-right-radius: 15px;
-}
-
-.row_header_word {
-  font-size: 14px;
-  font-weight: bold;
-}
-
-.row_quesBody {
-  cursor: pointer;
-  white-space: nowrap;
-  overflow: hidden;
-}
-
-.row_quesBody p {
-  font-size: 13px;
-}
-
-.dialog_input_width {
-  width: 200px;
-}
-
-.margin_top_10 {
-  margin-top: 10px;
-}
-
-.margin_left_120 {
-  margin-left: 120px;
-}
-
-.margin_left_10 {
-  margin-left: 10px;
-}
-
-.error_message {
-  color: #f56c6c;
-  font-size: 12px;
-  line-height: 1;
-  padding-top: 4px;
-}
-
-.error_other {
-  position: relative;
-  top: auto;
-  left: auto;
-  display: inline-block;
-  margin-left: 10px;
-}
-
-.check_remark {
-  content: "*";
-  color: #f56c6c;
-  margin-right: 4px;
-  box-sizing: border-box;
-}
-
-.form_font_size {
-  margin-left: 15px;
-  padding-top: 7px;
-}
-
-.margin_left_30 {
-  margin-left: 30%;
-}
-
-.margin_left_40 {
-  margin-left: 40%;
-}
-
-.font_length {
-  text-overflow: ellipsis;
-  overflow: hidden;
-}
-
-.message_style {
-  color: #f56c6c;
-  margin-bottom: -20px;
-}

+ 12 - 13
src/modules/questions/views/AuditInfo.vue

@@ -1,6 +1,6 @@
 <template>
   <section class="content">
-    <div>
+    <div class="part-box-border">
       <el-table :data="auditInfoList">
         <el-table-column
           prop="operateUserName"
@@ -10,17 +10,17 @@
         <el-table-column prop="operate" label="执行事项"></el-table-column>
         <el-table-column prop="auditRemark" label="审核意见"></el-table-column>
       </el-table>
-      <div class="part-page">
-        <el-pagination
-          :current-page="auditInfoCurPage"
-          :page-size="auditInfoPageSize"
-          :page-sizes="[10, 20, 50, 100, 200, 300]"
-          layout="total, sizes, prev, pager, next, jumper"
-          :total="auditInfoTotal"
-          @current-change="auditInfoCurChange"
-          @size-change="handleAuditInfoSizeChange"
-        ></el-pagination>
-      </div>
+    </div>
+    <div class="part-page">
+      <el-pagination
+        :current-page="auditInfoCurPage"
+        :page-size="auditInfoPageSize"
+        :page-sizes="[10, 20, 50, 100, 200, 300]"
+        layout="total, sizes, prev, pager, next, jumper"
+        :total="auditInfoTotal"
+        @current-change="auditInfoCurChange"
+        @size-change="handleAuditInfoSizeChange"
+      ></el-pagination>
     </div>
   </section>
 </template>
@@ -85,4 +85,3 @@ export default {
 };
 </script>
 <style scoped src="../styles/EditPaper.css"></style>
-<style scoped src="../styles/Common.css"></style>

+ 0 - 1
src/modules/questions/views/AuditPaper.vue

@@ -77,4 +77,3 @@ export default {
   },
 };
 </script>
-<style scoped src="../styles/Common.css"></style>

+ 2 - 3
src/modules/questions/views/BluePaperStructure.vue

@@ -104,13 +104,13 @@
                 type="primary"
                 plain
                 @click="editStruct(scope.row)"
-                ><i class="el-icon-edit"></i>编辑</el-button
+                >编辑</el-button
               >
               <el-button
                 size="mini"
                 type="danger"
                 @click="deleteStruct(scope.row)"
-                ><i class="el-icon-delete"></i> 删除</el-button
+                >删除</el-button
               >
             </div>
           </template>
@@ -371,4 +371,3 @@ export default {
   },
 };
 </script>
-<style scoped src="../styles/Common.css"></style>

+ 0 - 1
src/modules/questions/views/CheckDuplicateList.vue

@@ -651,4 +651,3 @@ export default {
   overflow: hidden;
 }
 </style>
-<style scoped src="../styles/Common.css"></style>

+ 1 - 0
src/modules/questions/views/ClientConfig.vue

@@ -9,6 +9,7 @@
             :inline="true"
             :model="viewForm"
             inline-message
+            class="el-form-linemess"
             label-position="right"
           >
             <el-row>

+ 16 - 12
src/modules/questions/views/Course.vue

@@ -80,13 +80,8 @@
         </el-form-item>
 
         <el-form-item>
-          <el-button
-            type="primary"
-            icon="el-icon-search"
-            @click="handleSearchBtn"
-            >查询</el-button
-          >
-          <el-button icon="el-icon-refresh" @click="resetPrimaryForm">
+          <el-button type="danger" @click="handleSearchBtn">查询</el-button>
+          <el-button type="danger" plain @click="resetPrimaryForm">
             重置
           </el-button>
         </el-form-item>
@@ -96,6 +91,7 @@
         <div>
           <el-button
             type="success"
+            plain
             :disabled="noBatchSelected"
             icon="el-icon-check"
             @click="enableByIds"
@@ -104,17 +100,24 @@
           </el-button>
           <el-button
             type="danger"
+            plain
             :disabled="noBatchSelected"
             icon="el-icon-close"
             @click="disableByIds"
           >
             禁用
           </el-button>
-          <el-button type="primary" icon="el-icon-upload2" @click="impCourse">
+          <el-button
+            type="primary"
+            plain
+            icon="el-icon-upload2"
+            @click="impCourse"
+          >
             导入
           </el-button>
           <el-button
             type="primary"
+            plain
             icon="el-icon-download"
             @click="exportCourse"
           >
@@ -168,7 +171,7 @@
           label="更新时间"
           width="170"
         />
-        <el-table-column label="操作" width="200">
+        <el-table-column label="操作" width="160">
           <div slot-scope="scope">
             <!-- <el-button
                 size="mini"
@@ -185,14 +188,13 @@
               plain
               @click="editCourse(scope.row)"
             >
-              <i class="el-icon-edit"></i> 编辑
+              编辑
             </el-button>
             <el-button
               v-if="!scope.row.enable"
               size="mini"
               plain
               type="primary"
-              icon="el-icon-check"
               @click="enableById(scope.row)"
             >
               启用
@@ -200,8 +202,8 @@
             <el-button
               v-if="scope.row.enable"
               size="mini"
+              plain
               type="danger"
-              icon="el-icon-close"
               @click="disableById(scope.row)"
             >
               禁用
@@ -237,6 +239,7 @@
         ref="courseForm"
         :inline="true"
         inline-message
+        class="el-form-linemess"
         :model="courseForm"
         :rules="rules"
         label-width="90px"
@@ -461,6 +464,7 @@
         ref="addRelationForm"
         :inline="true"
         inline-message
+        class="el-form-linemess"
         :model="addRelationForm"
         :rules="addRelationRules"
       >

+ 14 - 12
src/modules/questions/views/CourseProperty.vue

@@ -35,27 +35,28 @@
           </el-select>
         </el-form-item>
         <el-form-item>
-          <el-button type="primary" @click="searchFrom"
-            ><i class="el-icon-search"></i> 查询</el-button
-          >
+          <el-button type="danger" @click="searchFrom">查询</el-button>
         </el-form-item>
       </el-form>
       <div class="part-box-action">
         <div>
           <el-button
             type="success"
+            plain
             :disabled="noBatchSelected"
             @click="openCoursePropertys"
             ><i class="el-icon-check"></i> 启用</el-button
           >
           <el-button
             type="danger"
+            plain
             :disabled="noBatchSelected"
             @click="closeCoursePropertys"
             ><i class="el-icon-close"></i> 禁用</el-button
           >
           <el-button
             type="primary"
+            plain
             icon="el-icon-upload2"
             @click="impCourseProperty"
           >
@@ -115,7 +116,7 @@
             </span>
           </template>
         </el-table-column>
-        <el-table-column label="操作" width="200">
+        <el-table-column label="操作" width="160">
           <template slot-scope="scope">
             <div class="operate_left">
               <el-button
@@ -123,7 +124,7 @@
                 type="primary"
                 plain
                 @click="editCourseProperty(scope.row)"
-                ><i class="el-icon-zoom-in"></i> 详情
+                >详情
               </el-button>
               <el-button
                 v-if="!scope.row.enable"
@@ -132,15 +133,16 @@
                 plain
                 @click="openCourseProperty(scope.row)"
               >
-                <i class="el-icon-check" aria-hidden="true"></i>启用
+                启用
               </el-button>
               <el-button
                 v-if="scope.row.enable"
                 size="mini"
                 type="danger"
+                plain
                 @click="closeCourseProperty(scope.row)"
               >
-                <i class="el-icon-close" aria-hidden="true"></i>禁用
+                禁用
               </el-button>
             </div>
           </template>
@@ -175,6 +177,7 @@
         label-position="right"
         label-width="90px"
         inline-message
+        class="el-form-linemess"
       >
         <el-form-item label="属性名称" prop="name">
           <el-input
@@ -208,11 +211,11 @@
         <el-button type="primary" @click="submit('coursePropertyForm')"
           >保 存</el-button
         >
-        <el-button @click="resetForm('coursePropertyForm')"
-          ><i class="el-icon-refresh"></i> 重 置</el-button
+        <el-button type="danger" plain @click="resetForm('coursePropertyForm')"
+          >重 置</el-button
         >
-        <el-button type="primary" @click="back('coursePropertyForm')"
-          ><i class="el-icon-arrow-left"></i> 返 回</el-button
+        <el-button type="danger" plain @click="back('coursePropertyForm')"
+          >返 回</el-button
         >
       </div>
     </el-dialog>
@@ -737,4 +740,3 @@ export default {
   },
 };
 </script>
-<style scoped src="../styles/Common.css"></style>

+ 0 - 1
src/modules/questions/views/EditOtherQuestion.vue

@@ -538,4 +538,3 @@ export default {
   },
 };
 </script>
-<style scoped src="../styles/Common.css"></style>

Diferenças do arquivo suprimidas por serem muito extensas
+ 898 - 824
src/modules/questions/views/EditPaper.vue


+ 0 - 1
src/modules/questions/views/EditPaperPendingTrial.vue

@@ -2592,4 +2592,3 @@ export default {
   background-color: white !important;
 }
 </style>
-<style scoped src="../styles/Common.css"></style>

+ 0 - 1
src/modules/questions/views/EditSelectQuestion.vue

@@ -667,4 +667,3 @@ export default {
   },
 };
 </script>
-<style scoped src="../styles/Common.css"></style>

+ 0 - 1
src/modules/questions/views/ExamPaperPendingTrial.vue

@@ -797,4 +797,3 @@ export default {
   },
 };
 </script>
-<style scoped src="../styles/Common.css"></style>

+ 6 - 14
src/modules/questions/views/ExportTemplate.vue

@@ -45,17 +45,11 @@
           </el-select>
         </el-form-item>
         <el-form-item>
-          <el-button
-            type="primary"
-            icon="el-icon-search"
-            @click="handleSearchBtn"
-          >
-            查询
-          </el-button>
+          <el-button type="danger" @click="handleSearchBtn"> 查询 </el-button>
         </el-form-item>
       </el-form>
       <div class="part-box-action">
-        <el-button type="primary" icon="el-icon-edit" @click="operConfig">
+        <el-button type="primary" plain icon="el-icon-edit" @click="operConfig">
           配置
         </el-button>
         <el-button type="primary" icon="el-icon-plus" @click="addFile">
@@ -99,13 +93,12 @@
             </span>
           </template>
         </el-table-column>
-        <el-table-column :context="_self" label="操作" width="280">
+        <el-table-column :context="_self" label="操作" width="220">
           <div slot-scope="scope">
             <el-button
               size="mini"
               type="primary"
               plain
-              icon="el-icon-download"
               @click="downFile(scope.row)"
             >
               下载
@@ -117,21 +110,21 @@
               plain
               @click="enable(scope.row)"
             >
-              <i class="el-icon-check" aria-hidden="true"></i>启用
+              启用
             </el-button>
             <el-button
               v-if="scope.row.enable"
               size="mini"
               type="danger"
+              plain
               @click="disenable(scope.row)"
             >
-              <i class="el-icon-close" aria-hidden="true"></i>禁用
+              禁用
             </el-button>
             <el-button
               size="mini"
               type="danger"
               plain
-              icon="el-icon-remove-outline"
               @click="deleteFile(scope.row)"
             >
               删除
@@ -618,7 +611,6 @@ export default {
 };
 </script>
 
-<style scoped src="../styles/Common.css"></style>
 <style scoped>
 .page {
   margin-top: 10px;

+ 0 - 1
src/modules/questions/views/GenPaper.vue

@@ -864,4 +864,3 @@ export default {
   },
 };
 </script>
-<style scoped src="../styles/Common.css"></style>

+ 0 - 1
src/modules/questions/views/GenPaperDetail.vue

@@ -1345,4 +1345,3 @@ export default {
   margin-right: 10px;
 }
 </style>
-<style scoped src="../styles/Common.css"></style>

+ 31 - 34
src/modules/questions/views/ImportPaper.vue

@@ -75,38 +75,40 @@
         <div>
           <el-button
             type="primary"
+            plain
             :disabled="noBatchSelected"
             @click="useBasePaper"
             ><i class="el-icon-star-on"></i> 使用原卷</el-button
           >
           <el-button
             type="danger"
+            plain
             :disabled="noBatchSelected"
             @click="batchDeletePaper"
             ><i class="el-icon-delete"></i> 删除原卷</el-button
           >
         </div>
         <div>
-          <el-button type="primary" @click="impPaper"
+          <el-button type="primary" plain @click="impPaper"
             ><i class="el-icon-upload2"></i> 导入</el-button
           >
           <el-dropdown class="button_left">
-            <el-button type="primary">
-              更多 <i class="el-icon-arrow-down el-icon--right"></i>
+            <el-button type="primary" plain>
+              更多 <i class="el-icon-more el-icon--right"></i>
             </el-button>
             <el-dropdown-menu slot="dropdown">
               <el-dropdown-item>
-                <el-button type="primary" @click="expQuesType"
+                <el-button type="primary" plain @click="expQuesType"
                   >试题分布</el-button
                 >
               </el-dropdown-item>
               <el-dropdown-item>
-                <el-button type="primary" @click="openQuesPro"
+                <el-button type="primary" plain @click="openQuesPro"
                   >试卷属性</el-button
                 >
               </el-dropdown-item>
               <el-dropdown-item>
-                <el-button type="primary" @click="openQuesProC"
+                <el-button type="primary" plain @click="openQuesProC"
                   >课程属性</el-button
                 >
               </el-dropdown-item>
@@ -216,11 +218,11 @@
                 type="primary"
                 plain
                 @click="editImportPaper(scope.row)"
-                ><i class="el-icon-edit"></i>编辑</el-button
+                >编辑</el-button
               >
               <el-dropdown class="button_left">
                 <el-button type="primary" size="mini" plain>
-                  更多 <i class="el-icon-arrow-down el-icon--right"></i>
+                  更多 <i class="el-icon-more el-icon--right"></i>
                 </el-button>
                 <el-dropdown-menu slot="dropdown">
                   <el-dropdown-item>
@@ -229,7 +231,7 @@
                       type="primary"
                       plain
                       @click="copyImportPaper(scope.row)"
-                      ><i class="el-icon-tickets"></i> 复制</el-button
+                      >复制</el-button
                     >
                   </el-dropdown-item>
                   <el-dropdown-item>
@@ -238,7 +240,7 @@
                       type="primary"
                       plain
                       @click="exportOriginalPaper(scope.row)"
-                      ><i class="el-icon-download"></i> 下载</el-button
+                      >下载</el-button
                     >
                   </el-dropdown-item>
                   <el-dropdown-item>
@@ -247,15 +249,16 @@
                       type="primary"
                       plain
                       @click="exportPaperAnswer(scope.row)"
-                      ><i class="el-icon-download"></i>导出答案</el-button
+                      >导出答案</el-button
                     >
                   </el-dropdown-item>
                   <el-dropdown-item>
                     <el-button
                       size="mini"
                       type="danger"
+                      plain
                       @click="deleteImportPaper(scope.row)"
-                      ><i class="el-icon-delete"></i> 删除</el-button
+                      >删除</el-button
                     >
                   </el-dropdown-item>
                   <el-dropdown-item>
@@ -264,7 +267,7 @@
                       type="primary"
                       plain
                       @click="auditInfo(scope.row)"
-                      ><i class="el-icon-download"></i>审核记录</el-button
+                      >审核记录</el-button
                     >
                   </el-dropdown-item>
                 </el-dropdown-menu>
@@ -286,7 +289,7 @@
         </el-pagination>
       </div>
     </div>
-
+    <!-- 克隆试卷 -->
     <el-dialog
       v-loading.body="cloneLoading"
       title="克隆试卷"
@@ -303,6 +306,7 @@
         label-position="right"
         label-width="120px"
         inline-message
+        class="el-form-linemess"
       >
         <el-form-item label="试卷名称" prop="paperName">
           <el-input
@@ -336,15 +340,15 @@
         <el-button type="primary" @click="submitCopy('copyPaperForm')"
           >保 存</el-button
         >
-        <el-button @click="resetForm2('copyPaperForm')"
-          ><i class="el-icon-refresh"></i> 重 置</el-button
+        <el-button type="danger" plain @click="resetForm2('copyPaperForm')"
+          >重 置</el-button
         >
-        <el-button type="primary" @click="back2('copyPaperForm')"
-          ><i class="el-icon-arrow-left"></i> 返 回</el-button
+        <el-button type="danger" plain @click="back2('copyPaperForm')"
+          >返 回</el-button
         >
       </div>
     </el-dialog>
-
+    <!-- 属性修改 -->
     <el-dialog
       title="属性修改"
       :visible.sync="quesPropertyDialog"
@@ -353,13 +357,9 @@
       append-to-body
       custom-class="side-dialog"
     >
-      <el-form
-        :loading="quesLoading"
-        label-position="right"
-        label-width="120px"
-      >
+      <el-form :loading="quesLoading" label-position="right" label-width="80px">
         <el-form-item label="难  度">
-          <el-select v-model="difficultyDegree" class="dialog_input_width">
+          <el-select v-model="difficultyDegree">
             <el-option
               v-for="item in difficultyDegreeList"
               :key="item.value"
@@ -369,7 +369,7 @@
           </el-select>
         </el-form-item>
         <el-form-item label="公开度">
-          <el-select v-model="publicity" class="dialog_input_width">
+          <el-select v-model="publicity">
             <el-option
               v-for="item in publicityList"
               :key="item.value"
@@ -386,18 +386,16 @@
           @click="submitUpdate()"
           >保 存</el-button
         >
-        <el-button @click="resetForm"
-          ><i class="el-icon-refresh"></i> 重 置</el-button
-        >
-        <el-button type="primary" @click="closePropertyDialog"
-          ><i class="el-icon-arrow-left"></i> 返 回</el-button
+        <el-button type="danger" plain @click="resetForm">重 置</el-button>
+        <el-button type="danger" plain @click="closePropertyDialog"
+          >返 回</el-button
         >
       </div>
     </el-dialog>
-
+    <!-- 审核记录 -->
     <el-dialog
       title="审核记录"
-      width="800"
+      width="700"
       :visible.sync="auditInfoDialog"
       :modal="false"
       append-to-body
@@ -891,4 +889,3 @@ export default {
   },
 };
 </script>
-<style scoped src="../styles/Common.css"></style>

+ 9 - 24
src/modules/questions/views/ImportPaperInfo.vue

@@ -10,15 +10,11 @@
       <h2 class="part-box-title">文件上传</h2>
 
       <el-form class="padding-tb-20" :model="formSearch" label-width="100px">
-        <el-form-item label="导入类型" label-width="120px">
+        <el-form-item label="导入类型">
           <el-radio v-model="importType" label="word">word</el-radio>
           <el-radio v-model="importType" label="zip">zip</el-radio>
         </el-form-item>
-        <el-form-item
-          v-show="importType == 'word'"
-          label="课程名称"
-          label-width="120px"
-        >
+        <el-form-item v-show="importType == 'word'" label="课程名称">
           <el-select
             v-model="formSearch.courseNo"
             class="form_width"
@@ -39,26 +35,18 @@
             </el-option>
           </el-select>
         </el-form-item>
-        <el-form-item
-          v-show="importType == 'word'"
-          label="试卷名称"
-          label-width="120px"
-        >
+        <el-form-item v-show="importType == 'word'" label="试卷名称">
           <el-input
             v-model="formSearch.name"
             placeholder="试卷名称"
             style="width: 223px"
           ></el-input>
         </el-form-item>
-        <el-form-item label="总分校验" label-width="120px">
+        <el-form-item label="总分校验">
           <el-radio v-model="scoreCheck" label="1">开启</el-radio>
           <el-radio v-model="scoreCheck" label="0">关闭</el-radio>
         </el-form-item>
-        <el-form-item
-          v-if="scoreCheck == 1"
-          label="试卷总分"
-          label-width="120px"
-        >
+        <el-form-item v-if="scoreCheck == 1" label="试卷总分">
           <el-input
             v-model="formSearch.totalScore"
             placeholder="试卷总分"
@@ -73,7 +61,7 @@
                   </el-form-item>
               </el-row>
             -->
-        <el-form-item class="padding-tb-20" label-width="70px">
+        <el-form-item class="padding-tb-20">
           <el-upload
             ref="upload"
             class="form_left"
@@ -93,18 +81,15 @@
               ><i class="el-icon-search"></i> 选择文件</el-button
             >
             <el-button
-              style="margin-left: 10px"
+              class="margin_left_10"
               type="primary"
               @click="submitUpload"
               ><i class="el-icon-check"></i> 确认上传
             </el-button>
-            <el-button
-              style="margin-left: 10px"
-              type="primary"
-              @click="removeFile"
+            <el-button type="danger" plain @click="removeFile"
               ><i class="el-icon-refresh"></i> 清空文件
             </el-button>
-            <el-button type="primary" @click="back"
+            <el-button type="danger" plain @click="back"
               ><i class="el-icon-arrow-left"></i> 返回</el-button
             >
             <div slot="tip" class="el-upload__tip">只能上传docx和zip文件</div>

+ 200 - 219
src/modules/questions/views/InsertBluePaperStructure.vue

@@ -3,230 +3,212 @@
     <LinkTitlesCustom
       :current-paths="['基础信息 ', '蓝图结构预设', '蓝图结构创建']"
     />
-    <section class="content">
-      <!-- 正文信息 -->
-      <div class="box-body">
-        <el-form
-          :inline="true"
-          :model="blueStruct"
-          label-position="right"
-          label-width="78px"
-        >
-          <el-row>
-            <el-col :span="8">
-              <el-form-item label="结构名称">
-                <el-input
-                  v-model="blueStruct.name"
-                  class="search_width"
-                  placeholder="试卷结构名称"
-                  size="small"
-                ></el-input>
-              </el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="设置类型">
-                <el-select
-                  v-model="blueStruct.genPaperType"
-                  class="search_width"
-                  filterable
-                  disabled
-                  size="small"
-                >
-                  <el-option label="细节组卷" value="SPECIFIC"> </el-option>
-                </el-select>
-              </el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="总 分">
-                <el-input-number
-                  v-model="blueStruct.totalScore"
-                  :precision="1"
-                  :min="0"
-                  size="small"
-                ></el-input-number>
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <el-row>
-            <el-col :span="8">
-              <el-form-item label="制定课程">
-                <el-select
-                  v-model="blueStruct.courseNo"
-                  class="search_width"
-                  :disabled="showcoursePropertyId"
-                  filterable
-                  :remote-method="getCourses"
-                  remote
-                  clearable
-                  placeholder="课程名称"
-                  size="small"
-                  @change="clearCourseProperty"
-                  @focus="(e) => getCourses(e.target.value)"
-                >
-                  <el-option
-                    v-for="item in courseInfoSelect"
-                    :key="item.courseNo"
-                    :label="item.courseInfo"
-                    :value="item.courseNo"
-                  >
-                  </el-option>
-                </el-select>
-              </el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="课程属性">
-                <el-select
-                  v-model="blueStruct.coursePropertyId"
-                  class="search_width"
-                  filterable
-                  :disabled="showcoursePropertyId"
-                  placeholder="课程属性"
-                  size="small"
-                  @change="getCoursePropertyName"
-                >
-                  <el-option
-                    v-for="item in coursePropertyList"
-                    :key="item.id"
-                    :label="item.name"
-                    :value="item.id"
-                  >
-                  </el-option>
-                </el-select>
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <el-form-item label="考试说明">
-            <ckeditor
-              v-model="blueStruct.examRemark"
-              :display="display"
-              :width="wValue"
-              :height="hValue"
-            ></ckeditor>
-          </el-form-item>
-        </el-form>
-
-        <!-- 添加大题弹出框 -->
-        <el-dialog title="大题信息" :visible.sync="detailDialog" width="500px">
-          <el-form
-            ref="paperDetailStructForm"
-            :model="paperDetailStructForm"
-            :rules="rules"
-            label-position="right"
-            label-width="90px"
-            inline-message
+    <div class="part-box">
+      <div class="part-box-header">
+        <h1 class="part-box-title">蓝图结构创建</h1>
+        <div>
+          <el-button type="primary" @click="saveBlueStruct"
+            >保存试卷结构</el-button
+          >
+          <el-button type="primary" @click="insertDetail"
+            ><i class="el-icon-plus"></i> 添加大题</el-button
           >
-            <el-row>
-              <el-form-item label="大题名称" label-width="120px" prop="name">
-                <el-input
-                  v-model="paperDetailStructForm.name"
-                  class="dialog_input_width"
-                  placeholder="请输入题型名称"
-                ></el-input>
-              </el-form-item>
-            </el-row>
-            <el-row>
-              <el-form-item label="大题描述" label-width="120px" prop="remark">
-                <el-input
-                  v-model="paperDetailStructForm.remark"
-                  class="dialog_input_width"
-                  type="textarea"
-                  :rows="2"
-                  placeholder="请输入大题描述"
-                ></el-input>
-              </el-form-item>
-            </el-row>
-            <el-row class="margin_top_10 margin_left_120">
-              <span v-if="dialogType == 'ADD'">
-                <el-button
-                  type="primary"
-                  @click="saveDetail('paperDetailStructForm')"
-                  >保 存</el-button
-                >
-              </span>
-              <span v-else>
-                <el-button
-                  type="primary"
-                  @click="saveEditDetail('paperDetailStructForm')"
-                  >保 存</el-button
-                >
-              </span>
-              <span class="margin_left_10">
-                <el-button @click="resetForm('paperDetailStructForm')"
-                  ><i class="el-icon-refresh"></i> 重 置</el-button
-                >
-              </span>
-              <span class="margin_left_10">
-                <el-button
-                  type="primary"
-                  @click="closeDialog('paperDetailStructForm')"
-                  ><i class="el-icon-arrow-left"></i> 返 回</el-button
-                >
-              </span>
-            </el-row>
-          </el-form>
-        </el-dialog>
-
-        <!-- 页面列表 -->
-        <div style="margin-top: 10px"></div>
-        <el-table :data="paperDetailStructs" border style="width: 100%">
-          <el-table-column label="大题名称">
-            <template slot-scope="scope">
-              <span>{{ scope.row.name }}</span>
-            </template>
-          </el-table-column>
-          <el-table-column label="小题数">
-            <template slot-scope="scope">
-              <span>{{ scope.row.detailCount }}</span>
-            </template>
-          </el-table-column>
-          <el-table-column label="大题分数">
-            <template slot-scope="scope">
-              <span>{{ scope.row.totalScore }}</span>
-            </template>
-          </el-table-column>
-          <el-table-column label="题型">
-            <template slot-scope="scope">
-              <span>{{ getTpye(scope.row.questionType) }}</span>
-            </template>
-          </el-table-column>
-          <el-table-column label="操作" width="292">
-            <template slot-scope="scope">
-              <div class="operate_left">
-                <el-button
-                  size="mini"
-                  type="primary"
-                  @click="detailInfo(scope.row)"
-                  ><i class="el-icon-plus"></i> 大题详情</el-button
-                >
-                <el-button
-                  size="mini"
-                  type="primary"
-                  @click="editDetail(scope.row)"
-                  ><i class="el-icon-edit"></i>编辑</el-button
-                >
-                <el-button
-                  size="mini"
-                  type="danger"
-                  @click="deleteDetail(scope.row)"
-                  ><i class="el-icon-delete"></i> 删除</el-button
-                >
-              </div>
-            </template>
-          </el-table-column>
-        </el-table>
+          <el-button type="danger" plain @click="back"
+            ><i class="el-icon-arrow-left"></i> 返 回</el-button
+          >
+        </div>
       </div>
-      <div class="search_down margin_top_10">
-        <el-button size="small" type="primary" @click="saveBlueStruct"
-          >保存试卷结构</el-button
+      <el-form class="part-filter-form" :inline="true" :model="blueStruct">
+        <el-form-item label="结构名称">
+          <el-input
+            v-model="blueStruct.name"
+            class="search_width"
+            placeholder="试卷结构名称"
+          ></el-input>
+        </el-form-item>
+        <el-form-item label="设置类型">
+          <el-select
+            v-model="blueStruct.genPaperType"
+            class="search_width"
+            filterable
+            disabled
+          >
+            <el-option label="细节组卷" value="SPECIFIC"> </el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="总 分">
+          <el-input-number
+            v-model="blueStruct.totalScore"
+            class="search_width"
+            :precision="1"
+            :min="0"
+          ></el-input-number>
+        </el-form-item>
+        <el-form-item label="制定课程">
+          <el-select
+            v-model="blueStruct.courseNo"
+            class="search_width"
+            :disabled="showcoursePropertyId"
+            filterable
+            :remote-method="getCourses"
+            remote
+            clearable
+            placeholder="课程名称"
+            @change="clearCourseProperty"
+            @focus="(e) => getCourses(e.target.value)"
+          >
+            <el-option
+              v-for="item in courseInfoSelect"
+              :key="item.courseNo"
+              :label="item.courseInfo"
+              :value="item.courseNo"
+            >
+            </el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="课程属性">
+          <el-select
+            v-model="blueStruct.coursePropertyId"
+            class="search_width"
+            filterable
+            :disabled="showcoursePropertyId"
+            placeholder="课程属性"
+            @change="getCoursePropertyName"
+          >
+            <el-option
+              v-for="item in coursePropertyList"
+              :key="item.id"
+              :label="item.name"
+              :value="item.id"
+            >
+            </el-option>
+          </el-select>
+        </el-form-item>
+        <br />
+        <el-form-item label-width="0px">
+          <ckeditor
+            v-model="blueStruct.examRemark"
+            :display="display"
+            :width="wValue"
+            :height="hValue"
+          ></ckeditor>
+        </el-form-item>
+      </el-form>
+    </div>
+    <div class="part-box">
+      <!-- 页面列表 -->
+      <el-table :data="paperDetailStructs">
+        <el-table-column label="大题名称">
+          <template slot-scope="scope">
+            <span>{{ scope.row.name }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="小题数">
+          <template slot-scope="scope">
+            <span>{{ scope.row.detailCount }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="大题分数">
+          <template slot-scope="scope">
+            <span>{{ scope.row.totalScore }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="题型">
+          <template slot-scope="scope">
+            <span>{{ getTpye(scope.row.questionType) }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="操作" width="240">
+          <template slot-scope="scope">
+            <div class="operate_left">
+              <el-button
+                size="mini"
+                type="primary"
+                plain
+                @click="detailInfo(scope.row)"
+                >大题详情</el-button
+              >
+              <el-button
+                size="mini"
+                type="primary"
+                plain
+                @click="editDetail(scope.row)"
+                >编辑</el-button
+              >
+              <el-button
+                size="mini"
+                type="danger"
+                plain
+                @click="deleteDetail(scope.row)"
+                >删除</el-button
+              >
+            </div>
+          </template>
+        </el-table-column>
+      </el-table>
+    </div>
+    <!-- 添加大题弹出框 -->
+    <el-dialog
+      title="大题信息"
+      :visible.sync="detailDialog"
+      width="500px"
+      :modal="false"
+      append-to-body
+      custom-class="side-dialog"
+    >
+      <el-form
+        ref="paperDetailStructForm"
+        :model="paperDetailStructForm"
+        :rules="rules"
+        label-position="right"
+        label-width="90px"
+        inline-message
+        class="el-form-linemess"
+      >
+        <el-form-item label="大题名称" prop="name">
+          <el-input
+            v-model="paperDetailStructForm.name"
+            class="dialog_input_width"
+            placeholder="请输入题型名称"
+          ></el-input>
+        </el-form-item>
+        <el-form-item label="大题描述" prop="remark">
+          <el-input
+            v-model="paperDetailStructForm.remark"
+            class="dialog_input_width"
+            type="textarea"
+            :rows="4"
+            placeholder="请输入大题描述"
+          ></el-input>
+        </el-form-item>
+      </el-form>
+      <div slot="footer">
+        <el-button
+          v-if="dialogType == 'ADD'"
+          type="primary"
+          @click="saveDetail('paperDetailStructForm')"
+          >保 存</el-button
+        >
+        <el-button
+          v-else
+          type="primary"
+          @click="saveEditDetail('paperDetailStructForm')"
+          >保 存</el-button
         >
-        <el-button size="small" type="primary" @click="insertDetail"
-          ><i class="el-icon-plus"></i> 添加大题</el-button
+        <el-button
+          type="danger"
+          plain
+          @click="resetForm('paperDetailStructForm')"
+          >重 置</el-button
         >
-        <el-button size="small" type="primary" @click="back"
-          ><i class="el-icon-arrow-left"></i> 返 回</el-button
+        <el-button
+          type="danger"
+          plain
+          @click="closeDialog('paperDetailStructForm')"
+          >返 回</el-button
         >
       </div>
-    </section>
+    </el-dialog>
   </div>
 </template>
 <script>
@@ -666,4 +648,3 @@ export default {
   },
 };
 </script>
-<style scoped src="../styles/Common.css"></style>

+ 281 - 326
src/modules/questions/views/InsertBluePaperStructureInfo.vue

@@ -1,337 +1,289 @@
 <template>
   <section class="content">
     <LinkTitlesCustom :current-paths="['大题详情']" />
-    <div class="box box-info">
-      <!-- 正文信息 -->
-      <div class="box-body">
-        <el-form
-          :inline="true"
-          :model="paperDetailStruct"
-          label-position="right"
-          label-width="70px"
-        >
-          <el-row>
-            <el-col :span="6">
-              <el-form-item label="题型结构">
-                <el-select
-                  v-model="paperDetailStruct.questionType"
-                  class="search_width"
-                  placeholder="请选择"
-                  size="small"
-                  @change="getQuesNameList"
-                >
-                  <el-option
-                    v-for="item in quesTypes"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  >
-                  </el-option>
-                </el-select>
-              </el-form-item>
-            </el-col>
-            <el-col :span="6">
-              <el-form-item label="题目数量" class="pull-left">
+
+    <div class="part-box">
+      <h2 class="part-box-title">大题详情</h2>
+
+      <el-form
+        class="part-filter-form"
+        :inline="true"
+        :model="paperDetailStruct"
+        label-position="right"
+      >
+        <el-form-item label="题型结构">
+          <el-select
+            v-model="paperDetailStruct.questionType"
+            class="search_width"
+            placeholder="请选择"
+            @change="getQuesNameList"
+          >
+            <el-option
+              v-for="item in quesTypes"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            >
+            </el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="题目数量">
+          <el-input v-model="count" class="search_width" disabled></el-input>
+        </el-form-item>
+        <el-form-item label="每题分值">
+          <el-input-number
+            v-model="paperDetailStruct.score"
+            :precision="1"
+            :min="0"
+            @change="muli(paperDetailStruct)"
+          ></el-input-number>
+        </el-form-item>
+        <el-form-item label="来源大题">
+          <el-select
+            v-model="paperDetailStruct.quesNames"
+            class="search_width"
+            multiple
+            placeholder="请选择"
+          >
+            <el-option
+              v-for="item in quesNameList"
+              :key="item.code"
+              :label="item.name"
+              :value="item.code"
+            >
+            </el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="题型总分">
+          <el-input
+            v-model="paperDetailStruct.totalScore"
+            class="search_width"
+            disabled
+          ></el-input>
+        </el-form-item>
+        <el-form-item>
+          <el-button type="primary" @click="saveForm">保存</el-button>
+          <el-button type="danger" plain @click="back"
+            ><i class="el-icon-arrow-left"></i>返回</el-button
+          >
+        </el-form-item>
+      </el-form>
+    </div>
+
+    <div class="part-box">
+      <!-- 页面列表 -->
+      <el-table
+        :data="coursePropertyNumberDtos"
+        :row-class-name="tableRowClassName"
+      >
+        <el-table-column min-width="200" label="属性名称">
+          <template slot-scope="scope">
+            <div class="el_table_inner_left">
+              <p
+                class="class-a"
+                :class="{ 'class-b': scope.row.propertyParentId != '0' }"
+              >
+                {{ scope.row.propertyName }}
+              </p>
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column label="数量">
+          <template slot-scope="scope">
+            <div class="el_table_inner_left">
+              <el-input
+                v-model="scope.row.number"
+                class="input_width_ss"
+                disabled
+              ></el-input>
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column label="公开(简单)">
+          <template slot-scope="scope">
+            <div
+              class="el_table_inner_left"
+              @mouseenter="showActiveIn(1, 1, scope.row)"
+              @mouseleave="showActiveOff"
+            >
+              <el-tooltip placement="top">
+                <div slot="content">{{ message }}</div>
                 <el-input
-                  v-model="count"
-                  class="search_width"
-                  disabled
-                  size="small"
+                  v-model="scope.row.publicSimple"
+                  class="input_width_ss"
+                  :disabled="scope.row.disable"
+                  @change="
+                    sum(scope.row, scope.row.publicSimple, 'publicSimple')
+                  "
                 ></el-input>
-              </el-form-item>
-            </el-col>
-            <el-col :span="6">
-              <el-form-item label="每题分值" class="pull-left">
-                <el-input-number
-                  v-model="paperDetailStruct.score"
-                  size="small"
-                  :precision="1"
-                  :min="0"
-                  @change="muli(paperDetailStruct)"
-                ></el-input-number>
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <el-row>
-            <el-col :span="6">
-              <el-form-item label="来源大题" class="pull-left">
-                <el-select
-                  v-model="paperDetailStruct.quesNames"
-                  class="search_width"
-                  multiple
-                  placeholder="请选择"
-                  size="small"
-                >
-                  <el-option
-                    v-for="item in quesNameList"
-                    :key="item.code"
-                    :label="item.name"
-                    :value="item.code"
-                  >
-                  </el-option>
-                </el-select>
-              </el-form-item>
-            </el-col>
-            <el-col :span="6">
-              <el-form-item label="题型总分" class="pull-left">
+              </el-tooltip>
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column label="公开(中等)">
+          <template slot-scope="scope">
+            <div
+              class="el_table_inner_left"
+              @mouseenter="showActiveIn(1, 2, scope.row)"
+              @mouseleave="showActiveOff"
+            >
+              <el-tooltip placement="top">
+                <div slot="content">{{ message }}</div>
                 <el-input
-                  v-model="paperDetailStruct.totalScore"
-                  class="search_width"
-                  disabled
-                  size="small"
+                  v-model="scope.row.publicMedium"
+                  class="input_width_ss"
+                  :disabled="scope.row.disable"
+                  @change="
+                    sum(scope.row, scope.row.publicMedium, 'publicMedium')
+                  "
                 ></el-input>
-              </el-form-item>
-            </el-col>
-            <el-col :span="6">
-              <div class="search_down">
-                <el-button size="small" type="primary" @click="saveForm"
-                  >保 存</el-button
-                >
-                <el-button size="small" type="primary" @click="back"
-                  ><i class="el-icon-arrow-left"></i> 返 回</el-button
-                >
-              </div>
-            </el-col>
-          </el-row>
-        </el-form>
-
-        <!-- 页面列表 -->
-        <el-table
-          :data="coursePropertyNumberDtos"
-          border
-          :row-class-name="tableRowClassName"
-        >
-          <el-table-column min-width="300" label="属性名称">
-            <template slot-scope="scope">
-              <div class="el_table_inner_left">
-                <p
-                  class="class-a"
-                  :class="{ 'class-b': scope.row.propertyParentId != '0' }"
-                >
-                  {{ scope.row.propertyName }}
-                </p>
-              </div>
-            </template>
-          </el-table-column>
-          <el-table-column label="数量">
-            <template slot-scope="scope">
-              <div class="el_table_inner_left">
+              </el-tooltip>
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column label="公开(困难)">
+          <template slot-scope="scope">
+            <div
+              class="el_table_inner_left"
+              @mouseenter="showActiveIn(1, 3, scope.row)"
+              @mouseleave="showActiveOff"
+            >
+              <el-tooltip placement="top">
+                <div slot="content">{{ message }}</div>
                 <el-input
-                  v-model="scope.row.number"
+                  v-model="scope.row.publicDifficulty"
                   class="input_width_ss"
-                  disabled
+                  :disabled="scope.row.disable"
+                  @change="
+                    sum(
+                      scope.row,
+                      scope.row.publicDifficulty,
+                      'publicDifficulty'
+                    )
+                  "
                 ></el-input>
-              </div>
-            </template>
-          </el-table-column>
-          <el-table-column label="公开(简单)">
-            <template slot-scope="scope">
-              <div
-                class="el_table_inner_left"
-                @mouseenter="showActiveIn(1, 1, scope.row)"
-                @mouseleave="showActiveOff"
-              >
-                <el-tooltip placement="top">
-                  <div slot="content">{{ message }}</div>
-                  <el-input
-                    v-model="scope.row.publicSimple"
-                    class="input_width_ss"
-                    :disabled="scope.row.disable"
-                    @change="
-                      sum(scope.row, scope.row.publicSimple, 'publicSimple')
-                    "
-                  ></el-input>
-                </el-tooltip>
-              </div>
-            </template>
-          </el-table-column>
-          <el-table-column label="公开(中等)">
-            <template slot-scope="scope">
-              <div
-                class="el_table_inner_left"
-                @mouseenter="showActiveIn(1, 2, scope.row)"
-                @mouseleave="showActiveOff"
-              >
-                <el-tooltip placement="top">
-                  <div slot="content">{{ message }}</div>
-                  <el-input
-                    v-model="scope.row.publicMedium"
-                    class="input_width_ss"
-                    :disabled="scope.row.disable"
-                    @change="
-                      sum(scope.row, scope.row.publicMedium, 'publicMedium')
-                    "
-                  ></el-input>
-                </el-tooltip>
-              </div>
-            </template>
-          </el-table-column>
-          <el-table-column label="公开(困难)">
-            <template slot-scope="scope">
-              <div
-                class="el_table_inner_left"
-                @mouseenter="showActiveIn(1, 3, scope.row)"
-                @mouseleave="showActiveOff"
-              >
-                <el-tooltip placement="top">
-                  <div slot="content">{{ message }}</div>
-                  <el-input
-                    v-model="scope.row.publicDifficulty"
-                    class="input_width_ss"
-                    :disabled="scope.row.disable"
-                    @change="
-                      sum(
-                        scope.row,
-                        scope.row.publicDifficulty,
-                        'publicDifficulty'
-                      )
-                    "
-                  ></el-input>
-                </el-tooltip>
-              </div>
-            </template>
-          </el-table-column>
-          <el-table-column label="非公开(简单)">
-            <template slot-scope="scope">
-              <div
-                class="el_table_inner_left"
-                @mouseenter="showActiveIn(0, 1, scope.row)"
-                @mouseleave="showActiveOff"
-              >
-                <el-tooltip placement="top">
-                  <div slot="content">{{ message }}</div>
-                  <el-input
-                    v-model="scope.row.noPublicSimple"
-                    class="input_width_ss"
-                    :disabled="scope.row.disable"
-                    @change="
-                      sum(scope.row, scope.row.noPublicSimple, 'noPublicSimple')
-                    "
-                  ></el-input>
-                </el-tooltip>
-              </div>
-            </template>
-          </el-table-column>
-          <el-table-column label="非公开(中等)">
-            <template slot-scope="scope">
-              <div
-                class="el_table_inner_left"
-                @mouseenter="showActiveIn(0, 2, scope.row)"
-                @mouseleave="showActiveOff"
-              >
-                <el-tooltip placement="top">
-                  <div slot="content">{{ message }}</div>
-                  <el-input
-                    v-model="scope.row.noPublicMedium"
-                    class="input_width_ss"
-                    :disabled="scope.row.disable"
-                    @change="
-                      sum(scope.row, scope.row.noPublicMedium, 'noPublicMedium')
-                    "
-                  ></el-input>
-                </el-tooltip>
-              </div>
-            </template>
-          </el-table-column>
-          <el-table-column label="非公开(困难)">
-            <template slot-scope="scope">
-              <div
-                class="el_table_inner_left"
-                @mouseenter="showActiveIn(0, 3, scope.row)"
-                @mouseleave="showActiveOff"
-              >
-                <el-tooltip placement="top">
-                  <div slot="content">{{ message }}</div>
-                  <el-input
-                    v-model="scope.row.noPublicDifficulty"
-                    class="input_width_ss"
-                    :disabled="scope.row.disable"
-                    @change="
-                      sum(
-                        scope.row,
-                        scope.row.noPublicDifficulty,
-                        'noPublicDifficulty'
-                      )
-                    "
-                  ></el-input>
-                </el-tooltip>
-              </div>
-            </template>
-          </el-table-column>
-        </el-table>
+              </el-tooltip>
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column label="非公开(简单)">
+          <template slot-scope="scope">
+            <div
+              class="el_table_inner_left"
+              @mouseenter="showActiveIn(0, 1, scope.row)"
+              @mouseleave="showActiveOff"
+            >
+              <el-tooltip placement="top">
+                <div slot="content">{{ message }}</div>
+                <el-input
+                  v-model="scope.row.noPublicSimple"
+                  class="input_width_ss"
+                  :disabled="scope.row.disable"
+                  @change="
+                    sum(scope.row, scope.row.noPublicSimple, 'noPublicSimple')
+                  "
+                ></el-input>
+              </el-tooltip>
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column label="非公开(中等)">
+          <template slot-scope="scope">
+            <div
+              class="el_table_inner_left"
+              @mouseenter="showActiveIn(0, 2, scope.row)"
+              @mouseleave="showActiveOff"
+            >
+              <el-tooltip placement="top">
+                <div slot="content">{{ message }}</div>
+                <el-input
+                  v-model="scope.row.noPublicMedium"
+                  class="input_width_ss"
+                  :disabled="scope.row.disable"
+                  @change="
+                    sum(scope.row, scope.row.noPublicMedium, 'noPublicMedium')
+                  "
+                ></el-input>
+              </el-tooltip>
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column label="非公开(困难)">
+          <template slot-scope="scope">
+            <div
+              class="el_table_inner_left"
+              @mouseenter="showActiveIn(0, 3, scope.row)"
+              @mouseleave="showActiveOff"
+            >
+              <el-tooltip placement="top">
+                <div slot="content">{{ message }}</div>
+                <el-input
+                  v-model="scope.row.noPublicDifficulty"
+                  class="input_width_ss"
+                  :disabled="scope.row.disable"
+                  @change="
+                    sum(
+                      scope.row,
+                      scope.row.noPublicDifficulty,
+                      'noPublicDifficulty'
+                    )
+                  "
+                ></el-input>
+              </el-tooltip>
+            </div>
+          </template>
+        </el-table-column>
+      </el-table>
+    </div>
 
-        <div
-          style="margin-top: 20px; padding-top: 20px"
-          class="grid-content bg-purple-light"
-        >
-          <el-form label-width="80px">
-            <el-row>
-              <el-col :span="6">
-                <el-form-item label="公开"> </el-form-item>
-              </el-col>
-              <el-col :span="6">
-                <el-form-item label="简单总数">
-                  <el-input
-                    v-model="publicSimpleCount"
-                    class="input_width_ss"
-                    disabled
-                  ></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="6">
-                <el-form-item label="中等总数">
-                  <el-input
-                    v-model="publicMediumCount"
-                    class="input_width_ss"
-                    disabled
-                  ></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="6">
-                <el-form-item label="困难总数">
-                  <el-input
-                    v-model="publicDifficultyCount"
-                    class="input_width_ss"
-                    disabled
-                  ></el-input>
-                </el-form-item>
-              </el-col>
-            </el-row>
-            <el-row>
-              <el-col :span="6">
-                <el-form-item label="非公开"> </el-form-item>
-              </el-col>
-              <el-col :span="6">
-                <el-form-item label="简单总数">
-                  <el-input
-                    v-model="noPublicSimpleCount"
-                    class="input_width_ss"
-                    disabled
-                  ></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="6">
-                <el-form-item label="中等总数">
-                  <el-input
-                    v-model="noPublicMediumCount"
-                    class="input_width_ss"
-                    disabled
-                  ></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="6">
-                <el-form-item label="困难总数">
-                  <el-input
-                    v-model="noPublicDifficultyCount"
-                    class="input_width_ss"
-                    disabled
-                  ></el-input>
-                </el-form-item>
-              </el-col>
-            </el-row>
-          </el-form>
-        </div>
-      </div>
+    <div class="part-box">
+      <el-form inline label-position="left">
+        <el-form-item label="公开" label-width="120px"></el-form-item>
+        <el-form-item label="简单总数">
+          <el-input
+            v-model="publicSimpleCount"
+            class="input_width_ss"
+            disabled
+          ></el-input>
+        </el-form-item>
+        <el-form-item label="中等总数">
+          <el-input
+            v-model="publicMediumCount"
+            class="input_width_ss"
+            disabled
+          ></el-input>
+        </el-form-item>
+        <el-form-item label="困难总数">
+          <el-input
+            v-model="publicDifficultyCount"
+            class="input_width_ss"
+            disabled
+          ></el-input>
+        </el-form-item>
+        <br />
+        <el-form-item label="非公开" label-width="120px"> </el-form-item>
+        <el-form-item label="简单总数">
+          <el-input
+            v-model="noPublicSimpleCount"
+            class="input_width_ss"
+            disabled
+          ></el-input>
+        </el-form-item>
+        <el-form-item label="中等总数">
+          <el-input
+            v-model="noPublicMediumCount"
+            class="input_width_ss"
+            disabled
+          ></el-input>
+        </el-form-item>
+        <el-form-item label="困难总数">
+          <el-input
+            v-model="noPublicDifficultyCount"
+            class="input_width_ss"
+            disabled
+          ></el-input>
+        </el-form-item>
+      </el-form>
     </div>
   </section>
 </template>
@@ -826,18 +778,21 @@ export default {
   },
 };
 </script>
-<style scoped src="../styles/Common.css"></style>
+
 <style scoped>
 .bg-purple-light {
   background: #e5e9d0;
 }
 .class-a {
-  white-space: nowrap;
   margin-left: 5px;
   text-align: left;
+  margin: 0;
+  font-weight: 600;
 }
 .class-b {
-  margin-left: 30px;
+  margin: 0;
+  padding-left: 20px;
+  font-weight: 600;
 }
 .el-table .positive-row {
   background: #e2f0e4;

+ 172 - 193
src/modules/questions/views/InsertPaperStructure.vue

@@ -3,209 +3,189 @@
     <LinkTitlesCustom
       :current-paths="['基础信息 ', '精确结构预设', '精确结构创建']"
     />
-    <section class="content">
-      <!-- 正文信息 -->
-      <div class="box-body">
-        <el-form
-          ref="paperStruct"
-          :inline="true"
-          :model="paperStruct"
-          :rules="rules2"
-          label-position="right"
-          label-width="78px"
-        >
-          <el-row>
-            <el-col :span="8">
-              <el-form-item label="结构名称" prop="name">
-                <el-input
-                  v-model="paperStruct.name"
-                  class="search_width"
-                  placeholder="试卷结构名称"
-                  size="small"
-                ></el-input>
-              </el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="总分" prop="score">
-                <el-input-number
-                  v-model.number="paperStruct.totalScore"
-                  class="search_width"
-                  placeholder="请输入总分"
-                  size="small"
-                  :precision="1"
-                  :min="0.1"
-                ></el-input-number>
-              </el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="制定课程">
-                <el-select
-                  v-model="paperStruct.courseNo"
-                  class="search_width"
-                  filterable
-                  :remote-method="getCourses"
-                  remote
-                  clearable
-                  placeholder="请选择"
-                  size="small"
-                >
-                  <el-option key="ALL" label="请选择" value="ALL"></el-option>
-                  <el-option key="" label="公用" value=""></el-option>
-                  <el-option
-                    v-for="item in courseInfoSelect"
-                    :key="item.courseNo"
-                    :label="item.courseInfo"
-                    :value="item.courseNo"
-                  >
-                  </el-option>
-                </el-select>
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <div style="height: 20px"></div>
-          <el-row>
-            <el-col :span="24">
-              <el-form-item label="考试说明" class="pull-left">
-                <ckeditor
-                  v-model="paperStruct.examRemark"
-                  :display="display"
-                  :width="wValue"
-                  :height="hValue"
-                ></ckeditor>
-              </el-form-item>
-            </el-col>
-          </el-row>
-        </el-form>
 
-        <!-- 添加大题弹出框 -->
-        <el-dialog
-          title="大题信息"
-          :visible.sync="paperDetailStructDialog"
-          width="500px"
-        >
-          <el-form
-            ref="paperDetailStructForm"
-            :model="paperDetailStructForm"
-            :rules="rules"
-            label-position="right"
-            label-width="120px"
-            inline-message
+    <div class="part-box">
+      <div class="part-box-header">
+        <h1 class="part-box-title">精确结构创建</h1>
+        <div>
+          <el-button
+            type="primary"
+            :disabled="button_disabled"
+            @click="savePaperStruct()"
+            >保存试卷结构</el-button
           >
-            <el-row>
-              <el-form-item label="大题名称" prop="name">
-                <el-input
-                  v-model="paperDetailStructForm.name"
-                  class="dialog_input_width"
-                  placeholder="请输入题型名称"
-                ></el-input>
-              </el-form-item>
-            </el-row>
-            <el-row>
-              <el-form-item label="大题描述" prop="remark">
-                <el-input
-                  v-model="paperDetailStructForm.remark"
-                  class="dialog_input_width"
-                  type="textarea"
-                  :rows="2"
-                  placeholder="请输入大题描述"
-                ></el-input>
-              </el-form-item>
-            </el-row>
-            <el-row class="margin_top_10 margin_left_120">
-              <span v-if="dialogType == 'ADD'">
-                <el-button
-                  type="primary"
-                  @click="submitForm('paperDetailStructForm')"
-                  >保 存</el-button
-                >
-              </span>
-              <span v-else>
-                <el-button
-                  type="primary"
-                  @click="submitEditForm('paperDetailStructForm')"
-                  >保 存</el-button
-                >
-              </span>
-              <span class="margin_left_10">
-                <el-button @click="resetForm('paperDetailStructForm')"
-                  ><i class="el-icon-refresh"></i> 重 置</el-button
-                >
-              </span>
-              <span class="margin_left_10">
-                <el-button
-                  type="primary"
-                  @click="back2('paperDetailStructForm')"
-                  ><i class="el-icon-arrow-left"></i> 返 回</el-button
-                >
-              </span>
-            </el-row>
-          </el-form>
-        </el-dialog>
-
-        <!-- 页面列表 -->
-        <div class="margin_top_10"></div>
-        <el-table :data="paperDetailStructs" border style="width: 88.5%">
-          <el-table-column label="大题名称">
-            <template slot-scope="scope">
-              <span>{{ scope.row.name }}</span>
-            </template>
-          </el-table-column>
-          <el-table-column label="小题数">
-            <template slot-scope="scope">
-              <span>{{ scope.row.detailCount }}</span>
-            </template>
-          </el-table-column>
-          <el-table-column label="大题分数">
-            <template slot-scope="scope">
-              <span>{{ scope.row.totalScore }}</span>
-            </template>
-          </el-table-column>
-          <el-table-column label="操作" width="292">
-            <template slot-scope="scope">
-              <div class="operate_left">
-                <el-button
-                  size="mini"
-                  type="primary"
-                  @click="insertTopicStruct(scope.row)"
-                  ><i class="el-icon-plus"></i> 添加小题</el-button
-                >
-                <el-button
-                  size="mini"
-                  type="primary"
-                  @click="editPaperDetail(scope.row.id)"
-                  ><i class="el-icon-edit"></i>编辑
-                </el-button>
-                <el-button
-                  size="mini"
-                  type="danger"
-                  @click="deletePaperDetail(scope.row.id)"
-                  ><i class="el-icon-delete"></i> 删除</el-button
-                >
-              </div>
-            </template>
-          </el-table-column>
-        </el-table>
+          <el-button
+            type="primary"
+            :disabled="button_disabled"
+            @click="insert()"
+            ><i class="el-icon-plus"></i> 新增大题</el-button
+          >
+          <el-button type="danger" plain @click="back"
+            ><i class="el-icon-arrow-left"></i> 返 回</el-button
+          >
+        </div>
       </div>
-      <div class="search_down margin_top_10">
+      <el-form
+        ref="paperStruct"
+        class="part-filter-form"
+        :inline="true"
+        :model="paperStruct"
+        :rules="rules2"
+      >
+        <el-form-item label="结构名称" prop="name">
+          <el-input
+            v-model="paperStruct.name"
+            placeholder="试卷结构名称"
+          ></el-input>
+        </el-form-item>
+        <el-form-item prop="score" label-width="0">
+          <el-input-number
+            v-model.number="paperStruct.totalScore"
+            class="search_width"
+            placeholder="总分"
+            :precision="1"
+            :min="0.1"
+          ></el-input-number>
+        </el-form-item>
+        <el-form-item label="制定课程">
+          <el-select
+            v-model="paperStruct.courseNo"
+            class="search_width"
+            filterable
+            :remote-method="getCourses"
+            remote
+            clearable
+            placeholder="请选择"
+          >
+            <el-option key="ALL" label="请选择" value="ALL"></el-option>
+            <el-option key="" label="公用" value=""></el-option>
+            <el-option
+              v-for="item in courseInfoSelect"
+              :key="item.courseNo"
+              :label="item.courseInfo"
+              :value="item.courseNo"
+            >
+            </el-option>
+          </el-select>
+        </el-form-item>
+        <br />
+        <el-form-item label-width="0px">
+          <ckeditor
+            v-model="paperStruct.examRemark"
+            :display="display"
+            :width="wValue"
+            :height="hValue"
+          ></ckeditor>
+        </el-form-item>
+      </el-form>
+    </div>
+    <div class="part-box">
+      <!-- 页面列表 -->
+      <el-table :data="paperDetailStructs">
+        <el-table-column label="大题名称">
+          <template slot-scope="scope">
+            <span>{{ scope.row.name }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="小题数">
+          <template slot-scope="scope">
+            <span>{{ scope.row.detailCount }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="大题分数">
+          <template slot-scope="scope">
+            <span>{{ scope.row.totalScore }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="操作" width="245">
+          <template slot-scope="scope">
+            <div class="operate_left">
+              <el-button
+                size="mini"
+                type="primary"
+                plain
+                @click="insertTopicStruct(scope.row)"
+                >添加小题</el-button
+              >
+              <el-button
+                size="mini"
+                type="primary"
+                plain
+                @click="editPaperDetail(scope.row.id)"
+                >编辑
+              </el-button>
+              <el-button
+                size="mini"
+                type="danger"
+                plain
+                @click="deletePaperDetail(scope.row.id)"
+                >删除</el-button
+              >
+            </div>
+          </template>
+        </el-table-column>
+      </el-table>
+    </div>
+
+    <!-- 添加大题弹出框 -->
+    <el-dialog
+      title="大题信息"
+      :visible.sync="paperDetailStructDialog"
+      width="500px"
+      :modal="false"
+      append-to-body
+      custom-class="side-dialog"
+    >
+      <el-form
+        ref="paperDetailStructForm"
+        :model="paperDetailStructForm"
+        :rules="rules"
+        label-position="right"
+        label-width="100px"
+        inline-message
+        class="el-form-linemess"
+      >
+        <el-form-item label="大题名称" prop="name">
+          <el-input
+            v-model="paperDetailStructForm.name"
+            class="dialog_input_width"
+            placeholder="请输入题型名称"
+          ></el-input>
+        </el-form-item>
+        <el-form-item label="大题描述" prop="remark">
+          <el-input
+            v-model="paperDetailStructForm.remark"
+            class="dialog_input_width"
+            type="textarea"
+            :rows="4"
+            placeholder="请输入大题描述"
+          ></el-input>
+        </el-form-item>
+      </el-form>
+      <div slot="footer">
         <el-button
-          size="small"
+          v-if="dialogType == 'ADD'"
           type="primary"
-          :disabled="button_disabled"
-          @click="savePaperStruct()"
-          >保存试卷结构</el-button
+          @click="submitForm('paperDetailStructForm')"
+          >保存</el-button
         >
         <el-button
-          size="small"
+          v-else
           type="primary"
-          :disabled="button_disabled"
-          @click="insert()"
-          ><i class="el-icon-plus"></i> 新增大题</el-button
+          @click="submitEditForm('paperDetailStructForm')"
+          >保存</el-button
+        >
+        <el-button
+          type="danger"
+          plain
+          @click="resetForm('paperDetailStructForm')"
+          >重置</el-button
         >
-        <el-button size="small" type="primary" @click="back"
-          ><i class="el-icon-arrow-left"></i> 返 回</el-button
+        <el-button type="danger" plain @click="back2('paperDetailStructForm')"
+          >返回</el-button
         >
       </div>
-    </section>
+    </el-dialog>
   </div>
 </template>
 
@@ -574,4 +554,3 @@ export default {
   },
 };
 </script>
-<style scoped src="../styles/Common.css"></style>

Diferenças do arquivo suprimidas por serem muito extensas
+ 423 - 515
src/modules/questions/views/InsertPaperStructureInfo.vue


+ 1 - 1
src/modules/questions/views/InsertPaperTitle.vue

@@ -95,6 +95,7 @@
           label-position="right"
           label-width="120px"
           inline-message
+          class="el-form-linemess"
         >
           <el-row>
             <el-form-item label="试卷名称" label-width="120px" prop="name">
@@ -369,4 +370,3 @@ export default {
   },
 };
 </script>
-<style scoped src="../styles/Common.css"></style>

+ 1 - 0
src/modules/questions/views/OrgProperty.vue

@@ -13,6 +13,7 @@
             :rules="rules"
             :model="form"
             inline-message
+            class="el-form-linemess"
             label-position="right"
           >
             <el-row>

+ 0 - 1
src/modules/questions/views/PaperBasicComposition.vue

@@ -72,4 +72,3 @@ export default {
 };
 </script>
 <style scoped src="../styles/EditPaper.css"></style>
-<style scoped src="../styles/Common.css"></style>

+ 0 - 1
src/modules/questions/views/PaperBlue.vue

@@ -152,4 +152,3 @@ export default {
 };
 </script>
 <style scoped src="../styles/EditPaper.css"></style>
-<style scoped src="../styles/Common.css"></style>

+ 0 - 1
src/modules/questions/views/PaperPendingTrial.vue

@@ -781,4 +781,3 @@ export default {
   },
 };
 </script>
-<style scoped src="../styles/Common.css"></style>

+ 0 - 1
src/modules/questions/views/PaperQuestionType.vue

@@ -142,4 +142,3 @@ export default {
 };
 </script>
 <style scoped src="../styles/EditPaper.css"></style>
-<style scoped src="../styles/Common.css"></style>

+ 0 - 1
src/modules/questions/views/PaperStorage.vue

@@ -465,4 +465,3 @@ export default {
   },
 };
 </script>
-<style scoped src="../styles/Common.css"></style>

+ 5 - 5
src/modules/questions/views/PaperStructure.vue

@@ -42,10 +42,10 @@
           </el-select>
         </el-form-item>
         <el-form-item>
-          <el-button type="primary" @click="searchFrom"
+          <el-button type="danger" @click="searchFrom"
             ><i class="el-icon-search"></i> 查询</el-button
           >
-          <el-button @click="resetForm">
+          <el-button type="danger" plain @click="resetForm">
             <i class="el-icon-refresh"></i>重置</el-button
           >
         </el-form-item>
@@ -53,6 +53,7 @@
       <div class="part-box-action">
         <el-button
           type="danger"
+          plain
           :disabled="noBatchSelected"
           @click="deletePapers"
         >
@@ -121,13 +122,13 @@
                 type="primary"
                 plain
                 @click="editPaperStruct(scope.row)"
-                ><i class="el-icon-edit"></i>编辑</el-button
+                >编辑</el-button
               >
               <el-button
                 size="mini"
                 type="danger"
                 @click="deletePaper(scope.$index, scope.row)"
-                ><i class="el-icon-delete"></i> 删除</el-button
+                >删除</el-button
               >
             </div>
           </template>
@@ -387,4 +388,3 @@ export default {
   },
 };
 </script>
-<style scoped src="../styles/Common.css"></style>

+ 95 - 90
src/modules/questions/views/PropertyInfo.vue

@@ -1,114 +1,118 @@
 <template>
-  <section class="content">
+  <section class="property-info">
     <LinkTitlesCustom :current-paths="['属性结构']" />
     <!-- 正文信息 -->
-    <div class="box-body">
+    <div class="part-box">
+      <h2 class="part-box-title">属性结构</h2>
       <el-form
+        class="part-filter-form"
         :inline="true"
         :model="courseProperty"
         label-position="right"
-        label-width="90px"
+        label-width="100px"
       >
-        <el-row :gutter="10">
-          <el-col :xs="7" :sm="7" :md="7" :lg="8">
-            <el-form-item label="属性名称" class="pull-left">
-              <el-input
-                v-model="courseProperty.name"
-                placeholder="请输入课程名称"
-                :disabled="true"
-              ></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="7" :sm="7" :md="7" :lg="8">
-            <el-form-item label="课程名称">
-              <el-select
-                v-model="courseProperty.courseId"
-                class="form_width"
-                filterable
-                :remote-method="getCourses"
-                remote
-                clearable
-                :disabled="true"
-              >
-                <el-option
-                  v-for="item in courseInfoSelect"
-                  :key="item.courseId"
-                  :label="item.courseInfo"
-                  :value="item.courseId"
-                >
-                </el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row :xs="7" :sm="7" :md="7" :lg="8">
-          <div style="margin-left: 20px">
-            <el-form-item>
-              <el-button type="primary" size="small" @click="insertParent"
-                ><i class="el-icon-plus"></i> 新增一级</el-button
-              >
-
-              <el-button
-                type="primary"
-                size="small"
-                :disabled="showSonButtton"
-                @click="insertSon"
-                ><i class="el-icon-plus"></i> 新增二级</el-button
-              >
-              <el-button
-                type="primary"
-                size="small"
-                :disabled="showButton"
-                @click="updateProperty"
-                ><i class="el-icon-edit"></i>编辑</el-button
-              >
-              <el-button
-                type="danger"
-                size="small"
-                :disabled="showButton"
-                @click="deleteProperty"
-                ><i class="el-icon-delete"></i> 删除</el-button
-              >
-              <el-button
-                type="info"
-                :disabled="showMoveButtton"
-                size="small"
-                @click="moveUp"
-                ><i class="el-icon-arrow-up"></i> 上移</el-button
-              >
-              <el-button
-                type="info"
-                :disabled="showMoveButtton"
-                size="small"
-                @click="moveDown"
-                ><i class="el-icon-arrow-down"></i> 下移</el-button
-              >
-              <el-button
-                type="primary"
-                icon="caret-left"
-                size="small"
-                @click="back"
-                ><i class="el-icon-arrow-left"></i> 返 回</el-button
-              >
-            </el-form-item>
-          </div>
-        </el-row>
+        <el-form-item label="属性名称">
+          <el-input
+            v-model="courseProperty.name"
+            placeholder="请输入课程名称"
+            :disabled="true"
+          ></el-input>
+        </el-form-item>
+        <el-form-item label="课程名称">
+          <el-select
+            v-model="courseProperty.courseId"
+            class="form_width"
+            filterable
+            :remote-method="getCourses"
+            remote
+            clearable
+            :disabled="true"
+          >
+            <el-option
+              v-for="item in courseInfoSelect"
+              :key="item.courseId"
+              :label="item.courseInfo"
+              :value="item.courseId"
+            >
+            </el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item></el-form-item>
       </el-form>
 
+      <div class="part-box-action">
+        <div>
+          <el-button type="primary" @click="insertParent"
+            ><i class="el-icon-plus"></i> 新增一级</el-button
+          >
+          <el-button
+            type="primary"
+            :disabled="showSonButtton"
+            @click="insertSon"
+            ><i class="el-icon-plus"></i> 新增二级</el-button
+          >
+          <el-button
+            type="primary"
+            plain
+            :disabled="showButton"
+            @click="updateProperty"
+            ><i class="el-icon-edit"></i>编辑</el-button
+          >
+          <el-button
+            type="danger"
+            plain
+            :disabled="showButton"
+            @click="deleteProperty"
+            ><i class="el-icon-delete"></i> 删除</el-button
+          >
+          <el-button
+            type="primary"
+            plain
+            :disabled="showMoveButtton"
+            @click="moveUp"
+            ><i class="el-icon-arrow-up"></i> 上移</el-button
+          >
+          <el-button
+            type="primary"
+            plain
+            :disabled="showMoveButtton"
+            @click="moveDown"
+            ><i class="el-icon-arrow-down"></i> 下移</el-button
+          >
+        </div>
+        <div>
+          <el-button type="danger" plain icon="caret-left" @click="back"
+            ><i class="el-icon-arrow-left"></i> 返 回</el-button
+          >
+        </div>
+      </div>
+    </div>
+
+    <div class="part-box property-box">
       <el-tree
+        class="property-tree"
         :data="treeData"
         node-key="id"
         :props="defaultProps"
         :default-expanded-keys="ids"
+        highlight-current
         @node-click="handleNodeClick"
-        ><span slot-scope="{ data }" class="custom-tree-node">
+        ><span
+          slot-scope="{ data }"
+          :class="{ 'node-level-one': !data.parentId }"
+        >
           <span>{{ data.name }}({{ data.code }})</span>
         </span></el-tree
       >
     </div>
+
     <el-dialog
       :title="title"
       :visible.sync="propertyDialog"
+      :modal="false"
+      width="500px"
+      append-to-body
+      custom-class="side-dialog"
       @close="closeModel"
     >
       <el-form
@@ -116,7 +120,8 @@
         :model="propertyForm"
         :inline="true"
         :rules="rules"
-        :inline-message="true"
+        inline-message
+        class="el-form-linemess"
       >
         <el-row>
           <el-form-item label="编号" label-width="100px" prop="code">
@@ -156,8 +161,8 @@
         </el-row>
       </el-form>
       <div slot="footer" class="dialog-footer">
-        <el-button @click="closeModel">取 消</el-button>
         <el-button type="primary" @click="submit">确 定</el-button>
+        <el-button @click="closeModel">取 消</el-button>
       </div>
     </el-dialog>
   </section>

+ 0 - 1
src/modules/questions/views/Question.vue

@@ -775,4 +775,3 @@ export default {
   overflow: hidden;
 }
 </style>
-<style scoped src="../styles/Common.css"></style>

+ 1 - 4
src/modules/questions/views/School.vue

@@ -76,11 +76,11 @@
           ref="schoolForm"
           :inline="true"
           inline-message
+          class="el-form-linemess"
           :model="schoolForm"
           :rules="rules"
           label-position="right"
           label-width="90px"
-          class="editSchoolForm"
         >
           <el-row>
             <el-form-item label="学校代码" label-width="120px" prop="code">
@@ -548,9 +548,6 @@ export default {
   width: 80px;
 }
 
-.editSchoolForm .pull_length {
-  width: 200px;
-}
 .checkbox_length {
   width: 70px;
 }

+ 0 - 1
src/modules/questions/views/ViewPaper.vue

@@ -909,4 +909,3 @@ export default {
   background-color: white !important;
 }
 </style>
-<style scoped src="../styles/Common.css"></style>

+ 107 - 133
src/modules/questions/views/data_previllege.vue

@@ -1,132 +1,115 @@
 <template>
-  <div>
+  <div class="data-privilege">
     <LinkTitlesCustom :current-paths="['用户管理', '权限设置']" />
-    <section class="content">
-      <div v-loading.body="loading" class="box box-info">
-        <!-- 正文信息 -->
-        <div class="box-body">
-          <el-form
-            ref="form"
-            :inline="true"
-            :model="form"
-            inline-message
-            label-position="right"
+
+    <div v-loading.body="loading" class="privilege-part privilege-header">
+      <!-- 正文信息 -->
+      <div class="privilege-header-top">
+        <div class="box-justify">
+          <h5>{{ userName }}</h5>
+          <div>
+            <el-button type="primary" @click="save">保存</el-button>
+            <el-button
+              type="primary"
+              plain
+              icon="el-icon-arrow-left"
+              @click="back"
+              >返回</el-button
+            >
+          </div>
+        </div>
+        <el-form
+          ref="form"
+          :inline="true"
+          :model="form"
+          inline-message
+          class="el-form-linemess"
+          label-position="left"
+        >
+          <el-form-item label="审核权限" label-width="120px">
+            <el-radio-group v-model="form.auditAuthority" class="input">
+              <el-radio label="FIRST">初级</el-radio>
+              <el-radio label="SECOND">中级</el-radio>
+              <el-radio label="THIRD">高级</el-radio>
+            </el-radio-group></el-form-item
           >
-            <el-row>
-              <el-col :span="18"
-                ><span>{{ userName }}</span></el-col
-              >
-              <el-col :span="6"
-                ><div style="margin-bottom: 10px">
-                  <el-button type="primary" size="small" @click="save"
-                    >保存</el-button
-                  >
-                  <el-button
-                    type="primary"
-                    size="small"
-                    icon="el-icon-arrow-left"
-                    @click="back"
-                    >返回</el-button
-                  >
-                </div></el-col
-              >
-            </el-row>
-            <div class="block-seperator"></div>
-            <el-row>
-              <el-form-item label="审核权限">
-                <el-radio-group v-model="form.auditAuthority" class="input">
-                  <el-radio label="FIRST">初级</el-radio>
-                  <el-radio label="SECOND">中级</el-radio>
-                  <el-radio label="THIRD">高级</el-radio>
-                </el-radio-group></el-form-item
-              >
-              <el-button type="primary" size="small" @click="clear"
-                >清空</el-button
-              >
-            </el-row>
-            <div class="block-seperator"></div>
-            <el-tabs v-model="activeName" type="border-card">
-              <el-tab-pane label="关联课程" name="tab1">
-                <el-row class="mb-2">
-                  <el-switch
-                    v-model="form.defaultStatusCourse"
-                    active-text="全部课程"
-                    @change="(enabled) => saveDefaultStatus('Course', enabled)"
-                  ></el-switch>
-                  <div v-if="!form.defaultStatusCourse" class="float-right">
-                    <el-button
-                      size="small"
-                      type="danger"
-                      icon="el-icon-delete"
-                      :disabled="noBatchSelectedCourse"
-                      @click="deleteBatch('Course')"
-                      >删除</el-button
-                    >
-                    <el-button
-                      size="small"
-                      type="primary"
-                      icon="el-icon-plus"
-                      @click="addCourse"
-                      >添加</el-button
-                    >
-                  </div>
-                </el-row>
-                <el-row v-if="!form.defaultStatusCourse">
-                  <div>
-                    <el-table
-                      ref="tableCourse"
-                      :data="tableDataCourse"
-                      border
-                      resizable
-                      stripe
-                      style="width: 100%"
-                      @selection-change="selectChange"
-                    >
-                      <el-table-column
-                        type="selection"
-                        width="50"
-                        align="center"
-                      />
-                      <el-table-column width="85" label="课程ID">
-                        <span slot-scope="scope">{{ scope.row.courseId }}</span>
-                      </el-table-column>
-                      <el-table-column width="200" label="课程代码">
-                        <span slot-scope="scope">{{
-                          scope.row.courseCode
-                        }}</span>
-                      </el-table-column>
-                      <el-table-column label="课程名称">
-                        <span slot-scope="scope">{{
-                          scope.row.courseName
-                        }}</span>
-                      </el-table-column>
-                      <el-table-column width="100" label="层次">
-                        <span slot-scope="scope">{{
-                          scope.row.courseLevel
-                        }}</span
-                        >>
-                      </el-table-column>
-                    </el-table>
-                    <div class="page pull-right">
-                      <el-pagination
-                        v-if="paginationShow"
-                        :current-page="currentPageCourse"
-                        :page-size="pageSizeCourse"
-                        :page-sizes="[10, 20, 50, 100, 200, 300]"
-                        layout="total, sizes, prev, pager, next, jumper"
-                        :total="totalCourse"
-                        @current-change="handleCurrentChangeCourse"
-                        @size-change="handleSizeChangeCourse"
-                      />
-                    </div>
-                  </div>
-                </el-row>
-              </el-tab-pane>
-            </el-tabs>
-          </el-form>
+          <el-form-item style="margin-left: 60px">
+            <el-button type="danger" plain size="small" @click="clear"
+              >清空</el-button
+            >
+          </el-form-item>
+        </el-form>
+      </div>
+      <div class="privilege-tabs">
+        <div class="privilege-tabs-item is-active" @click="activeName = 'tab1'">
+          关联课程
         </div>
       </div>
-    </section>
+    </div>
+    <div class="privilege-part privilege-body">
+      <div v-if="activeName === 'tab1'">
+        <div class="box-justify">
+          <el-switch
+            v-model="form.defaultStatusCourse"
+            active-text="全部课程"
+            @change="(enabled) => saveDefaultStatus('Course', enabled)"
+          ></el-switch>
+          <div v-if="!form.defaultStatusCourse">
+            <el-button
+              size="small"
+              type="danger"
+              icon="el-icon-delete"
+              :disabled="noBatchSelectedCourse"
+              @click="deleteBatch('Course')"
+              >删除</el-button
+            >
+            <el-button
+              size="small"
+              type="primary"
+              icon="el-icon-plus"
+              @click="addCourse"
+              >添加</el-button
+            >
+          </div>
+        </div>
+        <div v-if="!form.defaultStatusCourse" class="privilege-table">
+          <el-table
+            ref="tableCourse"
+            :data="tableDataCourse"
+            resizable
+            @selection-change="selectChange"
+          >
+            <el-table-column type="selection" width="50" align="center" />
+            <el-table-column width="85" label="课程ID">
+              <span slot-scope="scope">{{ scope.row.courseId }}</span>
+            </el-table-column>
+            <el-table-column width="200" label="课程代码">
+              <span slot-scope="scope">{{ scope.row.courseCode }}</span>
+            </el-table-column>
+            <el-table-column label="课程名称">
+              <span slot-scope="scope">{{ scope.row.courseName }}</span>
+            </el-table-column>
+            <el-table-column width="100" label="层次">
+              <span slot-scope="scope">{{ scope.row.courseLevel }}</span
+              >>
+            </el-table-column>
+          </el-table>
+          <div class="part-page">
+            <el-pagination
+              v-if="paginationShow"
+              :current-page="currentPageCourse"
+              :page-size="pageSizeCourse"
+              :page-sizes="[10, 20, 50, 100, 200, 300]"
+              layout="total, sizes, prev, pager, next, jumper"
+              :total="totalCourse"
+              @current-change="handleCurrentChangeCourse"
+              @size-change="handleSizeChangeCourse"
+            />
+          </div>
+        </div>
+      </div>
+    </div>
+
     <DataPrevillegeAddCourseDialog
       ref="addCourseDialog"
       :user-id="form.userId"
@@ -345,12 +328,3 @@ export default {
   },
 };
 </script>
-<style scoped>
-.content {
-  width: 800px;
-}
-
-.input >>> .el-input__inner {
-  -webkit-appearance: button;
-}
-</style>

+ 56 - 71
src/modules/questions/views/data_previllege_add_course.vue

@@ -2,86 +2,73 @@
   <el-dialog
     ref="dialog"
     title="添加课程"
-    width="700px"
+    width="800px"
     :visible.sync="visible"
+    :modal="false"
+    append-to-body
+    custom-class="side-dialog"
     @close="closeDialog"
   >
     <el-form
       ref="form"
+      class="part-filter-form padding-none"
       :model="form"
       :rules="rules"
       :inline="true"
       label-position="right"
-      label-width="80px"
+      label-width="100px"
     >
-      <el-row>
-        <el-form-item label="课程名称">
-          <el-input v-model="form.name" placeholder="请输入课程名称" />
-        </el-form-item>
-        <el-form-item label="课程层次">
-          <LevelTypeSelect v-model="form.levelType"></LevelTypeSelect>
-        </el-form-item>
-        <el-form-item>
-          <el-button
-            size="small"
-            type="primary"
-            icon="el-icon-search"
-            @click="search"
-          >
-            查询
-          </el-button>
-        </el-form-item>
-      </el-row>
+      <el-form-item label="课程名称">
+        <el-input v-model="form.name" placeholder="请输入课程名称" />
+      </el-form-item>
+      <el-form-item label="课程层次">
+        <LevelTypeSelect v-model="form.levelType"></LevelTypeSelect>
+      </el-form-item>
+      <el-form-item>
+        <el-button type="danger" @click="search"> 查询 </el-button>
+      </el-form-item>
+    </el-form>
 
-      <el-row>
-        <div>
-          <el-table
-            ref="table"
-            :data="tableData"
-            border
-            resizable
-            stripe
-            style="width: 100%"
-          >
-            <el-table-column type="selection" width="50" align="center" />
-            <el-table-column width="85" label="课程ID">
-              <span slot-scope="scope">{{ scope.row.id }}</span>
-            </el-table-column>
-            <el-table-column width="200" label="课程代码">
-              <span slot-scope="scope">{{ scope.row.code }}</span>
-            </el-table-column>
-            <el-table-column label="课程名称">
-              <span slot-scope="scope">{{ scope.row.name }}</span>
-            </el-table-column>
-            <el-table-column width="100" label="课程层次">
-              <span slot-scope="scope">{{
-                scope.row.level | levelTypeFilter
-              }}</span>
-            </el-table-column>
-          </el-table>
-          <div class="page pull-right">
-            <el-pagination
-              v-if="paginationShow"
-              :current-page="currentPage"
-              :page-size="pageSize"
-              :page-sizes="[10, 20, 50, 100, 200, 300]"
-              layout="total, sizes, prev, pager, next, jumper"
-              :total="total"
-              @current-change="handleCurrentChange"
-              @size-change="handleSizeChange"
-            />
-          </div>
-        </div>
-        <div style="margin-bottom: 20px"></div>
-      </el-row>
+    <el-table
+      ref="table"
+      class="part-box-border"
+      :data="tableData"
+      resizable
+      stripe
+    >
+      <el-table-column type="selection" width="50" align="center" />
+      <el-table-column width="85" label="课程ID">
+        <span slot-scope="scope">{{ scope.row.id }}</span>
+      </el-table-column>
+      <el-table-column width="200" label="课程代码">
+        <span slot-scope="scope">{{ scope.row.code }}</span>
+      </el-table-column>
+      <el-table-column label="课程名称">
+        <span slot-scope="scope">{{ scope.row.name }}</span>
+      </el-table-column>
+      <el-table-column width="100" label="课程层次">
+        <span slot-scope="scope">{{ scope.row.level | levelTypeFilter }}</span>
+      </el-table-column>
+    </el-table>
+    <div class="part-page">
+      <el-pagination
+        v-if="paginationShow"
+        :current-page="currentPage"
+        :page-size="pageSize"
+        :page-sizes="[10, 20, 50, 100, 200, 300]"
+        layout="total, sizes, prev, pager, next, jumper"
+        :total="total"
+        @current-change="handleCurrentChange"
+        @size-change="handleSizeChange"
+      />
+    </div>
 
-      <el-row class="d-flex justify-content-center mt-2">
-        <el-button type="primary" :loading="loading" @click="submitForm"
-          >确 定</el-button
-        >
-        <el-button @click="closeDialog">取 消</el-button>
-      </el-row>
-    </el-form>
+    <div slot="footer">
+      <el-button type="primary" :loading="loading" @click="submitForm"
+        >确 定</el-button
+      >
+      <el-button @click="closeDialog">取 消</el-button>
+    </div>
   </el-dialog>
 </template>
 
@@ -91,7 +78,7 @@ export default {
   name: "DataPrevillegeAddCourseDialog",
   props: {
     userId: { type: String, default: "" },
-    rootOrgId: { type: Number, default: null },
+    rootOrgId: { type: [Number, String], default: null },
   },
   data() {
     return {
@@ -188,5 +175,3 @@ export default {
   },
 };
 </script>
-
-<style></style>

+ 77 - 94
src/modules/questions/views/user.vue

@@ -85,15 +85,8 @@
         </el-form-item>
 
         <el-form-item>
-          <el-button
-            type="primary"
-            icon="el-icon-search"
-            @click="handleSearchBtn"
-          >
-            查询
-          </el-button>
-
-          <el-button icon="el-icon-refresh" @click="resetEcsFormSearch">
+          <el-button type="danger" @click="handleSearchBtn"> 查询 </el-button>
+          <el-button type="danger" plain @click="resetEcsFormSearch">
             重置
           </el-button>
         </el-form-item>
@@ -103,6 +96,7 @@
         <div>
           <el-button
             type="success"
+            plain
             icon="el-icon-check"
             :disabled="noBatchSelected"
             @click="enableByIds"
@@ -110,6 +104,7 @@
           </el-button>
           <el-button
             type="danger"
+            plain
             icon="el-icon-close"
             :disabled="noBatchSelected"
             @click="disableByIds"
@@ -128,6 +123,7 @@
           <el-button
             size="small"
             type="primary"
+            plain
             icon="el-icon-upload2"
             @click="impUser"
           >
@@ -215,7 +211,6 @@
                 size="mini"
                 type="primary"
                 plain
-                icon="el-icon-check"
                 @click="enableById(scope.row)"
               >
                 启用
@@ -223,8 +218,8 @@
               <el-button
                 v-if="scope.row.enable"
                 size="mini"
+                plain
                 type="danger"
-                icon="el-icon-close"
                 @click="disableById(scope.row)"
               >
                 禁用
@@ -232,7 +227,7 @@
               &nbsp;
               <el-dropdown>
                 <el-button type="primary" plain size="mini">
-                  更多<i class="el-icon-arrow-down el-icon--right"></i>
+                  更多<i class="el-icon-more el-icon--right"></i>
                 </el-button>
                 <el-dropdown-menu slot="dropdown">
                   <el-dropdown-item>
@@ -241,7 +236,6 @@
                       size="mini"
                       type="primary"
                       plain
-                      icon="el-icon-edit"
                       @click="
                         () =>
                           $router.push(
@@ -256,7 +250,6 @@
                       size="mini"
                       type="primary"
                       plain
-                      icon="el-icon-edit"
                       @click="openUpdateDialog(scope.row)"
                       >编辑
                     </el-button>
@@ -266,7 +259,7 @@
                       v-if="false"
                       size="mini"
                       type="danger"
-                      icon="el-icon-delete"
+                      plain
                       @click="deleteById(scope.row)"
                       >删除
                     </el-button>
@@ -275,9 +268,10 @@
                     <el-button
                       size="mini"
                       type="danger"
+                      plain
                       @click="resetPass(scope.row)"
                     >
-                      <v-icon name="lock" scale="0.7" /> 重置密码
+                      重置密码
                     </el-button>
                   </el-dropdown-item>
                 </el-dropdown-menu>
@@ -312,89 +306,78 @@
         ref="addingForm"
         :inline="true"
         inline-message
+        class="el-form-linemess"
         :model="userForm"
         :rules="rules"
         label-position="right"
         label-width="80px"
       >
-        <el-row>
-          <el-form-item label="姓名" prop="name">
-            <el-input
-              v-model="userForm.name"
-              class="input_width_lg"
-              auto-complete="off"
-              placeholder="请输入姓名"
-              maxlength="20"
-            />
-          </el-form-item>
-        </el-row>
-        <el-row>
-          <el-form-item label="登录名" prop="loginName">
-            <el-input
-              v-model="userForm.loginName"
-              class="input_width_lg"
-              auto-complete="off"
-              placeholder="请输入登录名"
-              maxlength="20"
-            />
-          </el-form-item>
-        </el-row>
-        <el-row>
-          <el-form-item label="密码" prop="password">
-            <el-input
-              v-model="userForm.password"
-              class="input_width_lg"
-              auto-complete="off"
-              placeholder="请输入密码"
-            />
-          </el-form-item>
-        </el-row>
-        <el-row>
-          <el-form-item v-if="isSuperAdmin" label="学校" prop="rootOrgId">
-            <el-select
-              v-model="userForm.rootOrgId"
-              class="input_width_lg"
-              placeholder="请选择"
-              :disabled="!isSuperAdmin"
-              filterable
-              @change="rootOrgChanged4InsertOrUpdate"
+        <el-form-item label="姓名" prop="name">
+          <el-input
+            v-model="userForm.name"
+            class="input_width_lg"
+            auto-complete="off"
+            placeholder="请输入姓名"
+            maxlength="20"
+          />
+        </el-form-item>
+        <el-form-item label="登录名" prop="loginName">
+          <el-input
+            v-model="userForm.loginName"
+            class="input_width_lg"
+            auto-complete="off"
+            placeholder="请输入登录名"
+            maxlength="20"
+          />
+        </el-form-item>
+        <el-form-item label="密码" prop="password">
+          <el-input
+            v-model="userForm.password"
+            class="input_width_lg"
+            auto-complete="off"
+            placeholder="请输入密码"
+          />
+        </el-form-item>
+        <el-form-item v-if="isSuperAdmin" label="学校" prop="rootOrgId">
+          <el-select
+            v-model="userForm.rootOrgId"
+            class="input_width_lg"
+            placeholder="请选择"
+            :disabled="!isSuperAdmin"
+            filterable
+            @change="rootOrgChanged4InsertOrUpdate"
+          >
+            <el-option
+              v-for="item in rootSchoolSelect"
+              :key="item.id"
+              :label="item.name"
+              :value="item.id"
             >
-              <el-option
-                v-for="item in rootSchoolSelect"
-                :key="item.id"
-                :label="item.name"
-                :value="item.id"
-              >
-              </el-option>
-            </el-select>
-          </el-form-item>
-        </el-row>
-        <el-row>
-          <el-form-item label="角色" prop="roleId">
-            <el-select
-              v-model="userForm.roleId"
-              class="input_width_lg"
-              placeholder="请选择"
+            </el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="角色" prop="roleId">
+          <el-select
+            v-model="userForm.roleId"
+            class="input_width_lg"
+            placeholder="请选择"
+          >
+            <el-option
+              v-for="item in roleList4InsertOrUpdateWithoutSuperAdmin"
+              :key="item.roleId"
+              :label="item.roleName"
+              :value="item.roleId"
+              :disabled="roleDis(item.roleCode)"
             >
-              <el-option
-                v-for="item in roleList4InsertOrUpdateWithoutSuperAdmin"
-                :key="item.roleId"
-                :label="item.roleName"
-                :value="item.roleId"
-                :disabled="roleDis(item.roleCode)"
-              >
-              </el-option>
-            </el-select>
-          </el-form-item>
-        </el-row>
-        <el-row>
-          <el-form-item label="状态">
-            <el-radio-group v-model="enableStr" class="pull_right_sm">
-              <el-radio label="true">启用</el-radio>
-              <el-radio label="false">禁用</el-radio>
-            </el-radio-group>
-          </el-form-item>
-        </el-row>
+            </el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="状态">
+          <el-radio-group v-model="enableStr" class="pull_right_sm">
+            <el-radio label="true">启用</el-radio>
+            <el-radio label="false">禁用</el-radio>
+          </el-radio-group>
+        </el-form-item>
       </el-form>
       <div slot="footer">
         <el-button type="primary" @click="add">保 存</el-button>
@@ -413,12 +396,12 @@
     >
       <el-form
         ref="updateForm"
-        :inline="true"
         inline-message
+        class="el-form-linemess"
         :model="userForm"
         :rules="rules"
         label-position="right"
-        label-width="120px"
+        label-width="80px"
       >
         <el-form-item label="ID">
           <el-input

+ 2 - 1
src/plugins/element.js

@@ -1,5 +1,6 @@
 import Vue from "vue";
 import Element from "element-ui";
-import "element-ui/lib/theme-chalk/index.css";
+// import "element-ui/lib/theme-chalk/index.css";
+import "../styles/element-variables.scss";
 
 Vue.use(Element, { size: "medium" });

+ 251 - 0
src/styles/base.scss

@@ -1,4 +1,14 @@
 /* common */
+h1,
+h2,
+h3,
+h4,
+h5,
+h6,
+label {
+  margin: 0;
+}
+
 /* part */
 .part-box {
   margin-bottom: 20px;
@@ -41,6 +51,11 @@
   .el-input__inner {
     border: none;
   }
+  .el-input.is-disabled {
+    .el-input__inner {
+      background-color: #fff;
+    }
+  }
 }
 
 .part-box-title {
@@ -50,6 +65,20 @@
   border-bottom: 1px solid #eff0f5;
   margin: 0;
 }
+.part-box-header {
+  padding-bottom: 20px;
+  border-bottom: 1px solid #eff0f5;
+  display: flex;
+  align-items: center;
+  justify-content: space-between;
+  .part-box-title {
+    font-size: 20px;
+    line-height: 1;
+    margin: 0;
+    padding: 0;
+    border: none;
+  }
+}
 .part-box-action {
   display: flex;
   align-items: center;
@@ -76,6 +105,130 @@
 .padding-tb-20 {
   padding: 20px 0;
 }
+.padding-none {
+  padding: 0 !important;
+}
+.margin-right-5 {
+  margin-right: 5px;
+}
+.margin-right-10 {
+  margin-right: 10px;
+}
+.margin-bottom-15 {
+  margin-bottom: 15px;
+}
+.line-seperator {
+  border-bottom: 1px solid #eff0f5;
+  margin: 15px 0;
+}
+.tiny-btn {
+  padding: 0;
+  height: 28px;
+  width: 28px;
+  line-height: 28px;
+  border-radius: 6px;
+  border: none;
+  background-color: #e2e4ec;
+  font-weight: 600;
+  font-size: 14px;
+}
+.tips-info {
+  color: #9a9dab;
+  height: 25px;
+  line-height: 25px;
+}
+
+/* 检索框的长度 */
+.search_width {
+  width: 150px;
+}
+.search_width_80px {
+  width: 80px;
+}
+.search_width_120px {
+  width: 120px;
+}
+.form_width {
+  width: 200px;
+}
+/* 查询按钮与检索框对齐 */
+.search_down {
+  margin-top: 3.3px;
+}
+/* 操作按钮左移*/
+.operate_left {
+  margin-left: 2.6px;
+}
+.button_left {
+  margin-left: 10px;
+}
+.paper_title {
+  background-color: bisque;
+  width: 400px;
+  border-top-right-radius: 15px;
+  border-bottom-right-radius: 15px;
+}
+.row_header_word {
+  font-size: 14px;
+  font-weight: bold;
+}
+.row_quesBody {
+  cursor: pointer;
+  white-space: nowrap;
+  overflow: hidden;
+}
+.row_quesBody p {
+  font-size: 13px;
+}
+.dialog_input_width {
+  width: 200px;
+}
+.margin_top_10 {
+  margin-top: 10px;
+}
+.margin_left_120 {
+  margin-left: 120px;
+}
+.margin_left_10 {
+  margin-left: 10px;
+}
+.error_message {
+  color: #f56c6c;
+  font-size: 12px;
+  line-height: 1;
+  padding-top: 4px;
+}
+.error_other {
+  position: relative;
+  top: auto;
+  left: auto;
+  display: inline-block;
+  margin-left: 10px;
+}
+.check_remark {
+  content: "*";
+  color: #f56c6c;
+  margin-right: 4px;
+  box-sizing: border-box;
+}
+.form_font_size {
+  margin-left: 15px;
+  padding-top: 7px;
+}
+.margin_left_30 {
+  margin-left: 30%;
+}
+.margin_left_40 {
+  margin-left: 40%;
+}
+.font_length {
+  text-overflow: ellipsis;
+  overflow: hidden;
+}
+.message_style {
+  color: #f56c6c;
+  margin-bottom: -20px;
+}
 
 // customize element-ui
 .side-dialog {
@@ -116,4 +269,102 @@
     right: 0;
     padding: 20px;
   }
+  // other
+  .el-form {
+    &-item {
+      margin-bottom: 20px;
+      &__label {
+        margin: 0;
+      }
+    }
+  }
+}
+// el-form
+.el-form-linemess {
+  .el-form {
+    &-item {
+      margin-bottom: 5px;
+    }
+  }
+}
+// el-button
+.el-button--danger.is-plain,
+.el-button--success.is-plain,
+.el-button--primary.is-plain,
+.el-button--warning.is-plain {
+  color: #434555;
+  background-color: #fcfcfd;
+  border-color: #e2e4ec;
+
+  &.is-disabled {
+    color: #999 !important;
+    background-color: #fcfcfd !important;
+    border-color: #e2e4ec !important;
+  }
+}
+.el-button--info {
+  color: #fff;
+  background: #29abff;
+  border: 1px solid #29abff;
+  &:hover,
+  &:focus {
+    color: #fff;
+    background: mix(#fff, #29abff, 20%);
+    border: 1px solid #29abff;
+  }
+}
+// .el-upload
+.el-upload {
+  &-list__item {
+    &.is-ready {
+      background-color: #f6f6fa;
+      color: #434555;
+      padding: 5px;
+    }
+    .el-icon-close {
+      top: 10px;
+    }
+    .el-icon-document {
+      color: #ff7240;
+    }
+  }
+}
+// .el-message-box
+.el-message-box {
+  border-radius: 10px;
+  .el-message-box__header {
+    padding: 20px 20px 10px;
+  }
+  .el-message-box__content {
+    padding: 10px 30px;
+    min-height: 60px;
+  }
+  .el-message-box__status {
+    left: -5px;
+    font-size: 30px !important;
+  }
+}
+// .el-input-number
+.el-input-number--medium {
+  .el-input-number__increase,
+  .el-input-number__decrease {
+    height: 28px;
+    width: 28px;
+    line-height: 28px;
+    top: 4px;
+    border-radius: 6px;
+    border: none;
+    background-color: #e2e4ec;
+    font-weight: 600;
+    font-size: 14px;
+    > i {
+      font-weight: 600;
+    }
+  }
+  .el-input-number__increase {
+    right: 4px;
+  }
+  .el-input-number__decrease {
+    left: 4px;
+  }
 }

+ 15 - 0
src/styles/element-variables.scss

@@ -0,0 +1,15 @@
+/*
+Write your variables here. All available variables can be
+found in element-ui/packages/theme-chalk/src/common/var.scss.
+For example, to overwrite the theme color:
+*/
+$--color-primary: #705eff;
+$--color-success: #1fb46f;
+$--color-danger: #ff7240;
+
+$--border-radius-base: 10px;
+
+/* icon font path, required */
+$--font-path: "~element-ui/lib/theme-chalk/fonts";
+
+@import "~element-ui/packages/theme-chalk/src/index";

+ 0 - 8
src/styles/elementuiCustomize.css

@@ -8,11 +8,3 @@
 .el-form label.el-radio {
   margin-bottom: 0;
 }
-
-.el-form .el-form-item {
-  margin-bottom: 0px;
-}
-
-/* .el-form--inline .el-form-item__content {
-  line-height: inherit !important;
-} */

+ 1 - 1
src/styles/global.css

@@ -149,6 +149,6 @@ body {
 
 .block-seperator {
   width: 100%;
-  border-bottom: 1px solid #ddd;
+  border-bottom: 1px solid #eff0f5;
   margin: 10px 0;
 }

+ 318 - 0
src/styles/pages.scss

@@ -0,0 +1,318 @@
+// data-privilege
+.data-privilege {
+  .privilege-part {
+    margin-bottom: 20px;
+    background-color: #fff;
+    border-radius: 20px;
+  }
+  .privilege-header {
+    padding-bottom: 0;
+    &-top {
+      padding: 30px 30px 0;
+      border-bottom: 1px solid #eff0f5;
+
+      .box-justify {
+        padding-bottom: 15px;
+        border-bottom: 1px solid #eff0f5;
+      }
+
+      .el-form-linemess {
+        padding: 10px 0 0;
+      }
+    }
+    .privilege-tabs {
+      padding: 0 30px;
+
+      &-item {
+        display: inline-block;
+        vertical-align: top;
+        padding: 20px 0;
+        line-height: 20px;
+        position: relative;
+        margin-right: 20px;
+
+        &.is-active {
+          color: #705eff;
+          font-weight: 600;
+          &::before {
+            content: "";
+            display: block;
+            position: absolute;
+            width: 40%;
+            border-bottom: 2px solid #705eff;
+            left: 50%;
+            bottom: 0;
+            transform: translateX(-50%);
+          }
+        }
+      }
+    }
+  }
+  .privilege-body {
+    .box-justify {
+      padding: 20px 30px;
+      border-bottom: 1px solid #eff0f5;
+    }
+
+    .privilege-table {
+      padding: 20px;
+    }
+  }
+}
+// .property-info
+.property-box {
+  padding: 20px;
+}
+.property-tree {
+  .el-tree-node__content {
+    padding: 5px 10px !important;
+    height: 36px;
+  }
+  .el-tree-node.is-current > .el-tree-node__content {
+    border-radius: 5px;
+    background-color: #e7ebf8;
+  }
+  .node-level-one {
+    font-weight: 600;
+  }
+  // .el-tree-node__expand-icon {
+  //   padding: 0;
+  //   border-radius: 50%;
+  //   border: 2px solid #888a9a;
+  //   color: #888a9a;
+  //   margin-right: 8px;
+  //   &.is-leaf {
+  //     color: transparent;
+  //     border-color: transparent;
+  //   }
+  // }
+}
+// paper-structure-info
+.topic-set {
+  text-align: center;
+  border: 1px solid #6e7590;
+  color: #393c4c;
+  border-radius: 10px;
+  background-color: #b1b6ce;
+  overflow: hidden;
+  &-title {
+    height: 34px;
+    line-height: 34px;
+    color: #fff;
+    border-bottom: 1px solid #6e7590;
+  }
+  &-content {
+    background-color: #fff;
+    padding: 2px;
+
+    .el-input__inner {
+      border: none;
+      text-align: center;
+      border-top-right-radius: 0 !important;
+      border-top-left-radius: 0 !important;
+      border-bottom-left-radius: 10 !important;
+      border-bottom-right-radius: 10 !important;
+    }
+  }
+}
+// edit paper
+.edit-paper {
+  .edit-header {
+    padding: 0 60px;
+    position: fixed;
+    top: 0;
+    left: 0;
+    right: 0;
+    background-color: #fff;
+    z-index: 999;
+    box-shadow: 0px 20px 20px 0px rgba(212, 220, 243, 0.2);
+
+    &-top {
+      padding: 15px 0;
+      border-bottom: 1px solid #eff0f5;
+    }
+    &-bottom {
+      padding: 15px 0;
+    }
+  }
+  .header-info {
+    font-size: 0;
+
+    &-item {
+      display: inline-block;
+      vertical-align: middle;
+      font-size: 14px;
+      padding: 0 10px;
+
+      &:first-child {
+        padding-left: 0;
+      }
+
+      &:not(:last-child) {
+        border-right: 1px solid #eff0f5;
+      }
+
+      > span {
+        margin-left: 3px;
+      }
+    }
+
+    &-input {
+      display: inline;
+      .el-input__inner {
+        border: 0;
+        border-radius: 0;
+        border-bottom: 1px solid #d0d6f1;
+        padding: 0 5px;
+        width: 120px;
+        height: 20px;
+        line-height: 20px;
+        font-size: 14px;
+      }
+    }
+  }
+  .edit-body {
+    margin: 0 60px;
+    padding-top: 150px;
+    background-color: #e4e9f8;
+  }
+  .edit-part-list {
+    background: #ffffff;
+    margin-bottom: 20px;
+    border-radius: 20px;
+    box-shadow: 0px 20px 20px 0px rgba(212, 220, 243, 0.2);
+    overflow: hidden;
+  }
+  .edit-part {
+    padding: 30px 0;
+    display: flex;
+    justify-content: space-between;
+    align-items: stretch;
+    position: relative;
+
+    &.question-duplicate {
+      &::after {
+        content: "";
+        display: block;
+        position: absolute;
+        left: 0;
+        top: 0;
+        width: 20px;
+        height: 100%;
+        z-index: 99;
+        background-color: #ffa280;
+      }
+    }
+  }
+  .edit-property {
+    flex-grow: 0;
+    flex-shrink: 0;
+    width: 360px;
+    border-left: 1px solid #f0f2f6;
+    padding: 0 30px;
+    font-size: 0;
+    margin: 0 -3px;
+
+    &-item {
+      display: inline-block;
+      vertical-align: top;
+      width: 25%;
+      padding: 3px;
+      font-size: 12px;
+    }
+
+    &-body {
+      text-align: center;
+      border: 1px solid #6e7590;
+      color: #393c4c;
+      border-radius: 8px;
+      background-color: #73c7ff;
+      line-height: 24px;
+      overflow: hidden;
+    }
+    &-title {
+      color: #fff;
+      border-bottom: 1px solid #6e7590;
+    }
+    &-content {
+      background-color: #fff;
+    }
+  }
+  .edit-property-danger {
+    .edit-property-title {
+      background-color: #ffa280;
+    }
+  }
+  .edit-cont {
+    position: relative;
+    padding: 0 30px;
+    flex-grow: 2;
+
+    &-title {
+      min-height: 32px;
+      line-height: 24px;
+      font-weight: 600;
+      color: #313444;
+
+      > h3 {
+        font-size: 16px;
+        font-weight: 600;
+      }
+      p {
+        display: inline;
+      }
+    }
+    &-action {
+      position: absolute;
+      background-color: #fff;
+      padding: 0 0 10px 20px;
+      top: 0;
+      right: 30px;
+      border-radius: 10px;
+      z-index: 9;
+    }
+
+    &-body {
+      line-height: 30px;
+      color: #6e7080;
+
+      p {
+        margin-bottom: 0;
+      }
+    }
+  }
+
+  .paper-option {
+    p {
+      display: inline;
+    }
+  }
+
+  .edit-paper-questions {
+    > .edit-part {
+      position: relative;
+      &:first-child {
+        box-shadow: 0px 20px 20px 0px rgba(212, 220, 243, 0.2) inset;
+        border-top: 1px solid #e0e6f7;
+      }
+      &:not(:first-child) {
+        &::before {
+          content: "";
+          display: block;
+          position: absolute;
+          top: 0;
+          left: 30px;
+          right: 0;
+          z-index: auto;
+          border-bottom: 1px solid #e0e6f7;
+        }
+      }
+    }
+  }
+  .edit-paper-question-subs {
+    padding-left: 80px;
+    > .edit-part {
+      border-top: 1px solid #e0e6f7;
+    }
+  }
+}

Alguns arquivos não foram mostrados porque muitos arquivos mudaram nesse diff