ソースを参照

样式调整,接口修改

zhangguohua 1 年間 前
コミット
ef8f721206

+ 1 - 1
src/api/school.ts

@@ -72,7 +72,7 @@ export function editSchoolInfo(data: any) {
 export function changeStatus(data: any) {
   return request({
     url: `/adminApi/v1/adminSchoolInfos/status`,
-    method: 'put',
+    method: 'post',
     data
   })
 }

+ 3 - 3
src/components/resetPassword.vue

@@ -21,8 +21,8 @@
       </el-form-item>
     </el-form>
     <template #footer>
-      <el-button @click="dialogData.dialogShow = false">取 消</el-button>
-      <el-button type="primary" :loading="submitLoading" @click="confirmPassWord(editPassWordForm)">确 定</el-button>
+      <el-button class="button_border_gray cancel" @click="dialogData.dialogShow = false">取 消</el-button>
+      <el-button class="button_background" :loading="submitLoading" @click="confirmPassWord(editPassWordForm)">确 定</el-button>
     </template>
   </el-dialog>
 </template>
@@ -88,7 +88,7 @@ const confirmPassWord = async (formEl: FormInstance | undefined) => {
 }
 </script>  
 <style lang="scss" scoped>
-.el-form ::v-deep {
+.el-form :deep {
   .el-form-item__label {
     font-size: 16px;
   }

+ 2 - 2
src/layout/components/SiderBar.vue

@@ -82,7 +82,7 @@ const toggleCollapse = () => {
   padding-left: 10px;
   // text-align: center;
 }
-.el-menu.el-menu--vertical ::v-deep(.el-menu-item) {
+.el-menu.el-menu--vertical :deep(.el-menu-item) {
   height: 40px;
   margin: 10px 0;
   padding: 0 10px;
@@ -95,7 +95,7 @@ const toggleCollapse = () => {
 .el-menu--collapse .el-menu-item span {
   display: none;
 }
-.el-menu-item ::v-deep(.el-menu-tooltip__trigger) {
+.el-menu-item :deep(.el-menu-tooltip__trigger) {
   padding: 0 10px;
 }
 .el-menu-item {

+ 74 - 8
src/styles/common.scss

@@ -67,9 +67,6 @@ body {
 .el-button:focus  {
   outline: none;
 }
-.el-button+.el-button {
-  margin: 0;
-}
 .el-input-group__append {
   width: 36px;
 }
@@ -83,7 +80,47 @@ body {
   background: none;
 }
 
+.el-button.button_background {
+  background: #2E64FA;
+  border: 1px solid  #2E64FA;
+  color: #fff;
+  &:hover {
+    background: #2E64FA;
+  }
+  &.actiive {
+    border: none;
+  }
+}
+.el-button.button_border {
+  background: #fff;
+  border: 1px solid  #2E64FA;
+  color: #2E64FA;
+  &:hover {
+    background: none;
+  }
+}
+.el-button.button_border_gray {
+  background: #fff;
+  border: 1px solid  #BBBBBB;
+  color: #BBBBBB;
+  &:hover {
+    background: none;
+  }
+  &.cancel  {
+    color: #606266;
+  }
+}
+
+.el-checkbox__input.is-indeterminate .el-checkbox__inner,
+.el-checkbox__input.is-checked .el-checkbox__inner {
+  background: #2E64FA;
+  border-color: #2E64FA;
+}
 
+.el-radio__input.is-checked .el-radio__inner {
+  background: #2E64FA;
+  border-color: #2E64FA;
+}
 
 
 
@@ -1495,9 +1532,9 @@ body {
 
       .el-button {
         margin-left: 0px;
-        min-width: 72px;
+        min-width: 96px;
         height: 36px;
-        line-height: 34px;
+        line-height: 36px;
         padding: 0 10px;
     
         span {
@@ -2616,7 +2653,7 @@ body {
     .el-button--primary {
       width: 68px;
       height: 36px;
-      margin-left: 20px;
+      margin-left: 15px;
     }
 
     .el-button--default {
@@ -2655,7 +2692,6 @@ body {
     height: 48px;
     line-height: 48px;
     background-color: #f5f7fa;
-
     .el-message-box__title {
       height: 48px;
       line-height: 48px;
@@ -2719,7 +2755,6 @@ body {
   .el-message-box__btns {
     padding: 13px 20px 4px 20px;
     border-top: 1px solid #e4e7ed;
-
     .el-button {
       width: 68px;
       height: 36px;
@@ -3125,6 +3160,37 @@ body {
   .el-button + .el-button {
     margin-left: 10px!important;
   }
+  .el-button {
+    &:hover {
+      background: none;
+      color: #606266;
+    }
+    &.active {
+      background: none;
+      color: #606266;
+    }
+    .el-button:focus-visible {
+      background: inherit;
+      border: none;
+
+    }
+    &.fouce {
+      background: inherit;
+      border: none;
+    }
+  }
+  .el-button--primary {
+    background: #2E64FA;
+    &:hover {
+      background: #2E64FA;
+      color: #fff;
+    }
+    &.active {
+      background: #2E64FA;
+      color: #fff;
+    }
+  }
+
 }
 //列表行操作
 .table_row_option {

+ 8 - 6
src/views/examination/addSchool.vue

@@ -22,7 +22,11 @@
           <el-table-column type="index" label="序号" align="center" />
           <el-table-column prop="tenantCode" label="账号" align="center" />
           <el-table-column prop="tenantName" label="学校名称" align="center" />
-          <el-table-column prop="cityAndAreaName" label="区域" align="center" />
+          <el-table-column prop="cityAndAreaName" label="区域" align="center">
+            <template #default="{ row }">
+              {{ row.cityAndAreaName ||  '-' }}
+            </template>
+          </el-table-column>
           <el-table-column prop="schoolType" label="账号类型" align="center">
             <template #default="{ row }">
               {{ row.schoolType == 0 ? '单校版' : row.schoolType == 1 ? '联考版' :  '-' }}
@@ -45,8 +49,8 @@
       </el-table>
     </div>
     <template #footer>
-      <el-button @click="schoolData.showDialog = false">取消</el-button>
-      <el-button type="primary" :loading="submitLoading" @click="AddComfirm">确定</el-button>
+      <el-button class="button_border_gray cancel" @click="schoolData.showDialog = false">取消</el-button>
+      <el-button class="button_background" :loading="submitLoading" @click="AddComfirm">确定</el-button>
     </template>
   </el-dialog>
 </template>
@@ -104,9 +108,7 @@ const SearchChange = () => {
   GetSingleExamList()
 }
 const handleSelectionChange = (val) => {
-  console.log(val)
-  selUserList.value = val.map(item => item.tenantCode)
-  console.log(selUserList.value)
+  selUserList.value = val.map(item => item.id)
 }
 const emit = defineEmits(['RefTable'])
 const AddComfirm = async () => {

+ 3 - 2
src/views/examination/index.vue

@@ -56,7 +56,7 @@
               {{ selectRow.tenantName }} 下辖学校:{{ selectRow.childrenCount }}
             </div>
             <div class="content_right">
-              <el-button type="primary" @click="addSchool">新增学校</el-button>
+              <el-button class="button_background" @click="addSchool">新增学校</el-button>
             </div>
           </div>
         </div>
@@ -99,7 +99,7 @@
       </div>
     </div>
     <div class="page_dialog">
-      <AddSchool @RefTable="RefTable" /> 
+      <AddSchool v-if="schoolData.showDialog" @RefTable="RefTable" /> 
     </div>
   </div>
 </template>
@@ -152,6 +152,7 @@ const DeleteSchool = (row) => {
     const res = await deleteSchool({ ids: [row.id] })
     if(res.code == 200) {
       ElMessage.success(res.msg)
+      GetJoinExamList()
     }else {
       ElMessage.error(res.msg)
     }

+ 2 - 2
src/views/manager/addAdmin.vue

@@ -27,8 +27,8 @@
       </el-form-item>
     </el-form>
     <template #footer>
-      <el-button @click="dialogData.showDialog = false">取消</el-button>
-      <el-button type="primary" :loading="submitLoading" @click="SubmitForm(userFormRef)">确定</el-button>
+      <el-button class="button_border_gray cancel" @click="dialogData.showDialog = false">取消</el-button>
+      <el-button class="button_background" :loading="submitLoading" @click="SubmitForm(userFormRef)">确定</el-button>
     </template>
   </el-dialog>
 </template>

+ 3 - 3
src/views/manager/index.vue

@@ -10,8 +10,8 @@
           </el-input>
         </div>
         <div class="content_right">
-          <el-button>刷新</el-button>
-          <el-button type="primary" @click="AddManager" >新增用户</el-button>
+          <el-button class="button_border_gray"><img src="@/assets/icon/refresh.svg" alt="" style="margin-right: 5px;">刷新</el-button>
+          <el-button class="button_background" @click="AddManager" >新增用户</el-button>
         </div>
       </div>
     </div>
@@ -124,7 +124,7 @@ const RefTable = (val) => {
 }
 const DeleteManager = (row) => {
   console.log(row)
-  ElMessageBox.confirm('确定删除该学校吗?', '提示', {
+  ElMessageBox.confirm('确定删除该用户吗?', '提示', {
     confirmButtonText: '确定',
     cancelButtonText: '取消',
     type: 'warning'

+ 16 - 9
src/views/school/addUser.vue

@@ -48,10 +48,10 @@
           <el-radio :value="1">联考版</el-radio>
         </el-radio-group>
       </el-form-item>
-      <el-form-item label="用户类型:" :label-width="formLabelWidth" prop="status">
-        <el-radio-group v-model="userForm.status">
+      <el-form-item label="用户类型:" :label-width="formLabelWidth" prop="type">
+        <el-radio-group v-model="userForm.type">
           <el-radio :value="1">正式用户</el-radio>
-          <el-radio :value="2">体验用户</el-radio>
+          <el-radio :value="0">体验用户</el-radio>
         </el-radio-group>
       </el-form-item>
       <el-form-item label="学校logo:" :label-width="formLabelWidth">
@@ -93,8 +93,8 @@
       </el-form-item>
     </el-form>
     <template #footer>
-      <el-button @click="showDialog = false">取消</el-button>
-      <el-button type="primary" :loading="submitLoading" @click="SubmitForm(userFormRef)">确定</el-button>
+      <el-button class="button_border_gray cancel" @click="showDialog = false">取消</el-button>
+      <el-button class="button_background" :loading="submitLoading" @click="SubmitForm(userFormRef)">确定</el-button>
     </template>
   </el-dialog>
 </template>
@@ -127,7 +127,7 @@ interface UserForm {
   areaCode: string
   areaName: string
   schoolType: number
-  status: number
+  type: number
   image: string
   startDate: string
   endDate: string
@@ -146,7 +146,7 @@ const userForm = reactive<UserForm>({
   areaCode: '',
   areaName: '',
   schoolType: 0,
-  status: 1,
+  type: 1,
   image: '',
   startDate: '',
   endDate: '',
@@ -174,7 +174,7 @@ const rules = reactive<FormRules<UserForm>>({
   schoolType: [
     { required: true, message: '请选择账号类型', trigger: 'change' }
   ],
-  status: [
+  type: [
     { required: true, message: '请选择用户类型', trigger: 'change' }
   ],
   startDate: [
@@ -226,7 +226,7 @@ const GetUserDetail = () => {
       userForm.areaCode = data.areaCode
       userForm.areaName = data.areaName
       userForm.schoolType = data.schoolType
-      userForm.status = data.status
+      userForm.type = data.type
       userForm.image = data.image
       userForm.startDate = data.startDate
       userForm.endDate = data.endDate
@@ -343,4 +343,11 @@ const SubmitForm = async (formEl: FormInstance | undefined) => {
 .el-input {
   width: 320px;
 }
+.el-upload .el-button {
+  width: 76px;
+  height: 32px;
+  background: #2E64FA1A;
+  color: #2E64FA;
+  border: none;
+}
 </style>

+ 31 - 21
src/views/school/index.vue

@@ -48,11 +48,11 @@
             </el-input>
           </div>
           <div class="content_right">
-            <el-button>
+            <el-button class="button_border_gray">
               <img src="@/assets/icon/refresh.svg" alt="" style="margin-right: 5px;">刷新
             </el-button>
-            <el-button @click="OpenSubject">开通科目</el-button>
-            <el-button type="primary" @click="addUser">新增用户</el-button>
+            <el-button class="button_border" @click="OpenSubject">开通科目</el-button>
+            <el-button class="button_background" @click="addUser">新增用户</el-button>
           </div>
         </div>
       </div>
@@ -63,8 +63,12 @@
             <el-table-column type="index" label="序号" fixed="left" align="center" />
             <el-table-column prop="tenantCode" label="学校编号" width="80" fixed="left" align="center" show-overflow-tooltip />
             <el-table-column prop="tenantName" label="学校名称" width="150" fixed="left" align="center" show-overflow-tooltip />
-            <el-table-column prop="schoolAbbreviation" label="学校简称" width="100" align="center" show-overflow-tooltip />
-            <el-table-column prop="region" label="区域" align="center" show-overflow-tooltip />
+            <el-table-column prop="abbreviation" label="学校简称" width="100" align="center" show-overflow-tooltip />
+            <el-table-column prop="cityAndAreaName" label="区域" align="center" show-overflow-tooltip>
+              <template #default="{ row }">
+                {{ row.cityAndAreaName ||  '-' }}
+              </template>
+            </el-table-column>
             <el-table-column prop="schoolType" label="账号类型" align="center">
               <template #default="{ row }">
                 {{ row.schoolType == 0 ? '单校版' : row.schoolType == 1 ? '联考版' :  '-' }}
@@ -73,30 +77,34 @@
             <el-table-column prop="startDate" label="开始时间" width="100" align="center" show-overflow-tooltip />
             <el-table-column prop="endDate" label="结束时间" width="100" align="center" show-overflow-tooltip />
             <el-table-column prop="dateDiffDayS" label="剩余天数" align="center" />
-            <el-table-column prop="status" label="状态" align="center">
+            <el-table-column prop="type" label="状态" align="center">
               <template #default="{ row }">
                 <div class="table_row_status">
-                  <!-- 正式 -->
-                  <div class="need_summary_icon" v-if="row.status==1"></div>
-                  <!-- 试用 -->
-                  <div class="yes_release_icon" v-else-if="row.status==2"></div>
                   <!-- 冻结 -->
-                  <div class="no_release_icon" v-else-if="row.status==3"></div>
+                  <div class="no_release_icon" v-if="row.status==0"></div>
+                  <!-- 正式 -->
+                  <div class="need_summary_icon" v-if="row.status==1 && row.type==1"></div>
+                  <!-- 体验 -->
+                  <div class="yes_release_icon" v-if="row.status==1 && row.type==0"></div>
                   <!-- {{ row.statusLabel }} -->
-                  {{ row.status == 1 ? '正式' : row.status == 2 ? '试用' : row.status == 3 ? '冻结' : '-' }}
+                  {{ row.status == 0 ? '冻结' : row.type == 1 ? '正式' : row.type == 0 ? '体验' : '-' }}
                 </div>
               </template>
             </el-table-column>
-            <el-table-column prop="ityAndAreaNam" label="运维人员" align="center" />
+            <el-table-column prop="nicknames" label="运维人员" align="center">
+              <template #default="{ row }">
+                {{ row.nicknames ||  '-' }}
+              </template>
+            </el-table-column>
             <el-table-column label="操作" width="280" fixed="right" align="center">
               <template #default="{ row }">
                 <div class="table_row_option">
-                  <div v-if="row.status == 3" class="button_delete" @click="ChangeStatus(row)">解冻</div>
+                  <div v-if="row.status == 0" class="button_delete" @click="ChangeStatus(row)">解冻</div>
                   <div v-else class="button_editor text_color_orange" @click="ChangeStatus(row)">冻结</div>
                   <div class="button_editor" @click="EditUser(row)">编辑</div>
                   <div class="button_editor" @click="OpenAuth(row)">权限</div>
                   <div class="button_editor">重置密码</div>
-                  <div class="button_editor" @click="GoTeach">进入学校</div>
+                  <div class="button_editor" @click="GoTeach(row)">进入学校</div>
                 </div>
               </template>
             </el-table-column>
@@ -118,7 +126,7 @@ import AddUser from '@/views/school/addUser.vue'
 import AuthConfig from '@/views/school/authConfig.vue'
 import SubjectList from '@/views/school/subjectList.vue'
 import { Search } from '@element-plus/icons-vue'
-import { getSchoolNumber, getSchoolList, changeStatus } from '@/api/school'
+import { getSchoolNumber, getSchoolList, changeStatus, loginTeach } from '@/api/school'
 import { ref, reactive, provide, onMounted } from 'vue'
 interface UserNumber {
   allUser: number
@@ -142,8 +150,9 @@ interface User {
   dateDiffDayS: String;
   startDate:  String;
   endDate:  String;
-  ityAndAreaNam: string;
-  region:  String;
+  sysUserId: String;
+  nicknames:  String;
+  cityAndAreaName:  String;
 }
 const tableData = ref<User[]>([])
 
@@ -250,15 +259,16 @@ const ChangeStatus = (row) => {
   console.log(row)
   changeStatus({
     id: row.id,
-    status: row.status
+    status: row.status == 0 ? 1 : 0
   }).then(res => {
     if(res.code == 200) {
       GetSchoolList()
     }
   })
 }
-const GoTeach = () => {
-  console.log('GoTeach')
+const GoTeach = (row) => {
+  let accessToken = localStorage.getItem('token')
+  window.open(`https://dev3.k12100.net/#/otherLogin?schoolId=${row.id}&adminToken=${accessToken}`)
 }
 </script>
 

+ 2 - 2
src/views/school/subjectList.vue

@@ -96,7 +96,7 @@ const delSubject = (id) => {
 </script>
 
 <style lang="scss" scoped>
- .el-dialog  ::deep.el-dialog__body  {
+ .el-dialog  ::deep(.el-dialog__body ) {
   min-height: 300px !important;
   padding: 50px!important;
 }
@@ -147,7 +147,7 @@ const delSubject = (id) => {
       color: #BBBBBB;
     }
   }
-  ::v-deep(.input_item.el-input) {
+  :deep(.input_item.el-input) {
     width: 74px;
     height: 36px;
     border-radius: 4px;