فهرست منبع

学校列表结构调整

Xiao_123 2 ماه پیش
والد
کامیت
43d5fc8dac

+ 10 - 5
src/api/menduner/schoolRegisterExamine/index.ts

@@ -2,8 +2,8 @@ import request from '@/config/axios'
 
 export const FlameSchoolApi = {
 	// 学校列表
-	flameSchoolPage: async (data: any) => {
-		return await request.post({ url: '/flames/school/list', data })
+	flameSchoolPage: async (params: any) => {
+		return await request.get({ url: '/menduner/system/teacher/page', params })
 	},
 
 	// 学校详情
@@ -12,9 +12,14 @@ export const FlameSchoolApi = {
 	},
 
 
-	// 账号申请通过、拒绝
-	flameSchoolExamine: async (data: any) => {
-		return await request.post({ url: `/flames/user/auth/record/save`, data })
+	// 账号申请通过
+	flameSchoolExaminePass: async (data: any) => {
+		return await request.post({ url: `/menduner/system/teacher/approved`, data })
+	},
+
+	// 账号申请拒绝
+	flameSchoolExamineRefuse: async (data: any) => {
+		return await request.post({ url: `/menduner/system/teacher/refuse`, data })
 	},
 
 	// 根据学校id获取账号注册被拒绝的原因

+ 18 - 35
src/views/menduner/schoolRegisterExamine/RefuseForm.vue

@@ -1,24 +1,23 @@
 <template>
   <Dialog :title="formType === 'details' ? '详情' : t('common.audit')" v-model="dialogVisible">
 		<el-descriptions title="" border :column="1">
-      <el-descriptions-item label="学校名称">{{ formatName(info?.school?.schoolName) }}</el-descriptions-item>
-      <el-descriptions-item label="老师昵称">{{ info?.school?.teacherNickname || '-' }}</el-descriptions-item>
-      <el-descriptions-item label="联系电话">{{ info?.school?.phone || '-' }}</el-descriptions-item>
-      <el-descriptions-item label="学校地址">{{ info?.school?.schoolAdderss || '-' }}</el-descriptions-item>
-      <el-descriptions-item label="创建时间">{{ info?.school?.createDate ? formatDate(info?.school?.createDate) : '-' }}</el-descriptions-item>
+      <el-descriptions-item label="学校名称">{{ formatName(info?.school?.name) }}</el-descriptions-item>
+      <el-descriptions-item label="老师昵称">{{ info?.name || '-' }}</el-descriptions-item>
+      <el-descriptions-item label="联系电话">{{ info?.phone || '-' }}</el-descriptions-item>
+      <el-descriptions-item label="创建时间">{{ info?.createTime ? formatDate(info?.createTime) : '-' }}</el-descriptions-item>
 			<el-descriptions-item label="负责院系">
-        {{ info?.schoolDepartments && info?.schoolDepartments.length > 0 ? info?.schoolDepartments.map(item => item.departmentTitle).join('、') : '-' }}
+        {{ info?.authDept && info?.authDept.length > 0 ? info?.authDept.map(item => item.name).join('、') : '-' }}
       </el-descriptions-item>
       <el-descriptions-item label="在岗证明图片">
-        <el-image class="!w-80px h-80px" :src="info?.schoolQualificaions?.jobImg || ''" hide-on-click-modal :preview-src-list="[info?.schoolQualificaions?.jobImg]"/>
+        <el-image class="!w-80px h-80px" :src="info?.employmentCertificate || ''" hide-on-click-modal :preview-src-list="[info?.employmentCertificate]"/>
       </el-descriptions-item>
 			<el-descriptions-item label="身份证正面图片">
-        <el-image class="!w-80px h-80px" :src="info?.schoolQualificaions?.schoolLegalPersonIdCardImg1 || ''" hide-on-click-modal :preview-src-list="[info?.schoolQualificaions?.schoolLegalPersonIdCardImg1]"/>
+        <el-image class="!w-80px h-80px" :src="info?.idCardFront || ''" hide-on-click-modal :preview-src-list="[info?.idCardFront]"/>
       </el-descriptions-item>
 			<el-descriptions-item label="身份证背面图片">
-        <el-image class="!w-80px h-80px" :src="info?.schoolQualificaions?.schoolLegalPersonIdCardImg2 || ''" hide-on-click-modal :preview-src-list="[info?.schoolQualificaions?.schoolLegalPersonIdCardImg2]"/>
+        <el-image class="!w-80px h-80px" :src="info?.idCardBack || ''" hide-on-click-modal :preview-src-list="[info?.idCardBack]"/>
       </el-descriptions-item>
-      <el-descriptions-item v-if="refuseMessage && info?.school?.authStatus === '2'" label="审核拒绝原因">{{ refuseMessage || '-' }}</el-descriptions-item>
+      <el-descriptions-item v-if="info?.authStatus === '2'" label="审核拒绝原因">{{ info?.authMessage || '-' }}</el-descriptions-item>
     </el-descriptions>
 
     <el-form
@@ -30,8 +29,8 @@
 			class="mt-50px"
       v-loading="formLoading"
     >
-      <el-form-item label="拒绝原因" prop="message">
-        <el-input v-model="formData.message" type="textarea" placeholder="请输入拒绝原因" />
+      <el-form-item label="拒绝原因" prop="authMessage">
+        <el-input v-model="formData.authMessage" type="textarea" placeholder="请输入拒绝原因" />
       </el-form-item>
     </el-form>
 
@@ -57,18 +56,17 @@ const formRef = ref() // 表单 Ref
 const formType = ref('')
 const formLoading = ref(false) // 表单的加载中:1)修改时的数据加载;2)提交的按钮禁用
 const formRules = reactive({
-  message: [{ required: true, message: '拒绝原因不能为空', trigger: 'blur' }]
+  authMessage: [{ required: true, message: '拒绝原因不能为空', trigger: 'blur' }]
 })
 const formData = ref({
-	message: ''
+	authMessage: ''
 })
-const query = ref({})
 
 const handleAgree = async () => {
 	try {
 		await message.confirm('确定要通过该学校注册申请吗?')
 
-		await FlameSchoolApi.flameSchoolExamine({ ...query.value, status: 1, message: '' })
+		await FlameSchoolApi.flameSchoolExaminePass({ id: info.value.id, authMessage: '' })
 		dialogVisible.value = false
 		message.success('操作成功')
     // 发送操作成功的事件
@@ -82,7 +80,7 @@ const handleRefuse = async () => {
 
   formLoading.value = true
   try {
-   	await FlameSchoolApi.flameSchoolExamine({ ...query.value, status: 0, message: formData.value.message })
+   	await FlameSchoolApi.flameSchoolExamineRefuse({ id: info.value.id, authMessage: formData.value.authMessage })
     formLoading.value = false
 		dialogVisible.value = false
 		message.success('操作成功')
@@ -98,35 +96,20 @@ const handleRefuse = async () => {
 
 /** 打开弹窗 */
 const info = ref({})
-const refuseMessage = ref('')
 const emit = defineEmits(['success']) // 定义 success 事件,用于操作成功后的回调
-const open = async (id: Number, type: string) => {
+const open = async (item: object, type: string) => {
 	formType.value = type
   dialogVisible.value = true
   if (type === 'refuse') resetForm()
 
-	if (id) {
-		const data = await FlameSchoolApi.flameSchoolDetail({ schoolId: id })
-		info.value = data || {}
-		query.value = {
-			title: '门墩儿管理员',
-			userType: 1,
-			entityId: data.school.schoolId
-		}
-
-    // 如果审核状态为拒绝,则获取拒绝理由
-    if (data?.school?.authStatus === '2') {
-      const result = await FlameSchoolApi.flameSchoolExamineReasonById({ schoolId: id })
-      refuseMessage.value = result?.message
-    }
-	}
+  info.value = item
 }
 defineExpose({ open }) // 提供 open 方法,用于打开弹窗
 
 /** 重置表单 */
 const resetForm = () => {
   formData.value = {
-    message: ''
+    authMessage: ''
   }
   formRef.value?.resetFields()
 }

+ 20 - 37
src/views/menduner/schoolRegisterExamine/index.vue

@@ -8,18 +8,9 @@
       :inline="true"
       label-width="68px"
     >
-      <el-form-item label="学校名称" prop="schoolName">
+      <el-form-item label="账号昵称" prop="name">
         <el-input
-          v-model="queryParams.schoolName"
-          placeholder="请输入学校名称"
-          clearable
-          @keyup.enter="handleQuery"
-          class="!w-240px"
-        />
-      </el-form-item>
-      <el-form-item label="账号昵称" prop="teacherNickname">
-        <el-input
-          v-model="queryParams.teacherNickname"
+          v-model="queryParams.name"
           placeholder="请输入账号昵称"
           clearable
           @keyup.enter="handleQuery"
@@ -60,13 +51,12 @@
   <!-- 列表 -->
   <ContentWrap>
     <el-table v-loading="loading" :data="list" :stripe="true">
-      <el-table-column label="学校名称" align="center" prop="schoolName" fixed="left">
-        <template #default="scope">{{ formatName(scope.row.schoolName) }}</template>
+      <el-table-column label="学校名称" align="center" prop="school.name" fixed="left">
+        <template #default="scope">{{ formatName(scope.row.school?.name) }}</template>
       </el-table-column>
-      <el-table-column label="账号昵称" align="center" prop="teacherNickname" />
+      <el-table-column label="账号昵称" align="center" prop="name" />
       <el-table-column label="联系电话" align="center" prop="phone" />
-      <el-table-column label="学校地址" align="center" prop="schoolAdderss" />
-      <el-table-column label="账号状态" align="center" prop="school.authStatus">
+      <el-table-column label="账号状态" align="center" prop="authStatus">
         <template #default="scope">
           <el-tag :type="statusList.find(e => e.value === scope.row.authStatus)?.color">
             {{ statusList.find(e => e.value === scope.row.authStatus)?.label }}
@@ -76,16 +66,16 @@
       <el-table-column
         label="创建时间"
         align="center"
-        prop="createDate"
+        prop="createTime"
         :formatter="dateFormatter"
         width="180px"
       />
       <el-table-column label="操作">
         <template #default="scope">
-          <el-button link type="primary" @click="handleAction(scope.row.schoolId, 'details')">详情</el-button>
+          <el-button link type="primary" @click="handleAction(scope.row, 'details')">详情</el-button>
           <template v-if="scope.row.authStatus === '0'">
-            <el-button link type="danger" @click="handleAction(scope.row.schoolId, 'refuse')">拒绝</el-button>
-            <el-button link type="success" @click="handleAction(scope.row.schoolId, 'agree')">通过</el-button>
+            <el-button link type="danger" @click="handleAction(scope.row, 'refuse')">拒绝</el-button>
+            <el-button link type="success" @click="handleAction(scope.row, 'agree')">通过</el-button>
           </template>
         </template>
       </el-table-column>
@@ -93,8 +83,8 @@
     <!-- 分页 -->
     <Pagination
       :total="total"
-      v-model:page="queryParams.current"
-      v-model:limit="queryParams.size"
+      v-model:page="queryParams.pageNo"
+      v-model:limit="queryParams.pageSize"
       @pagination="getList"
     />
   </ContentWrap>
@@ -116,12 +106,11 @@ const loading = ref(true) // 列表的加载中
 const list = ref([]) // 列表的数据
 const total = ref(0) // 列表的总页数
 const queryParams = reactive({
-  current: 1,
-  size: 10,
-  schoolName: undefined,
+  pageNo: 1,
+  pageSize: 10,
   phone: undefined,
   authStatus: undefined,
-  teacherNickname: undefined
+  name: undefined
 })
 const queryFormRef = ref() // 搜索的表单
 
@@ -135,15 +124,9 @@ const statusList = [
 const getList = async () => {
   loading.value = true
 
-  for (let i in queryParams) {
-    if (queryParams[i] === '') {
-      queryParams[i] = undefined
-    }
-  }
-
   try {
     const data = await FlameSchoolApi.flameSchoolPage(queryParams)
-    list.value = data.records
+    list.value = data.list
     total.value = data.total
   } finally {
     loading.value = false
@@ -152,7 +135,7 @@ const getList = async () => {
 
 /** 搜索按钮操作 */
 const handleQuery = () => {
-  queryParams.current = 1
+  queryParams.pageNo = 1
   getList()
 }
 
@@ -164,13 +147,13 @@ const resetQuery = () => {
 
 /* 拒绝 */
 const refuseRef = ref()
-const handleAction = (id: number, type: string) => {
-  refuseRef.value.open(id, type)
+const handleAction = (item: object, type: string) => {
+  refuseRef.value.open(item, type)
 }
 
 /** 初始化 **/
 onMounted(() => {
-  queryParams.current = 1
+  queryParams.pageNo = 1
   getList()
 })