From b609f77709c4646daf155341475ae14fc0c7943d Mon Sep 17 00:00:00 2001
From: 祖安之光 <11848914+light-of-zuan@user.noreply.gitee.com>
Date: 星期五, 27 六月 2025 13:25:30 +0800
Subject: [PATCH] 修改
---
src/views/safetyReview/userManage/institutionUsers/index.vue | 268 ++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 222 insertions(+), 46 deletions(-)
diff --git a/src/views/safetyReview/userManage/institutionUsers/index.vue b/src/views/safetyReview/userManage/institutionUsers/index.vue
index ca1f829..15b4c5f 100644
--- a/src/views/safetyReview/userManage/institutionUsers/index.vue
+++ b/src/views/safetyReview/userManage/institutionUsers/index.vue
@@ -1,34 +1,80 @@
<template>
<div class="app-container">
+ <div style="margin-bottom: 10px">
+ <el-form :inline="true" style="display: flex;align-items: flex-start;flex-wrap: wrap;" >
+ <el-form-item label="机构名称:" >
+ <el-input v-model="data.queryParams.agencyName" placeholder="请输入机构名称"></el-input>
+ </el-form-item>
+ <el-form-item label="注册审批状态:" >
+ <el-select
+ v-model="data.queryParams.state"
+ class="w100"
+ style="max-width: 180px"
+ clearable
+ size="default"
+ >
+ <el-option v-for="item in data.stateList" :key="item.label" :label="item.value" :value="item.label"></el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item >
+ <el-button
+ type="primary"
+ plain
+ @click="query"
+ >查询</el-button>
+ <el-button
+ type="primary"
+ plain
+ @click="reset"
+ >重置</el-button>
+ <el-button
+ type="primary"
+ plain
+ icon="Plus"
+ @click="openDialog('add',{})"
+ >新增</el-button>
+ </el-form-item>
+ </el-form>
+
+ </div>
<!-- 表格数据 -->
<el-table v-loading="loading" :data="dataList" :border="true">
- <el-table-column label="用户ID" prop="userID" align="center" />
- <el-table-column label="机构名称" prop="name" align="center" />
- <el-table-column label="信用代码" prop="code" align="center" />
- <el-table-column label="用户名" prop="username" align="center" />
- <el-table-column label="注册手机号" prop="phone" align="center" />
- <el-table-column label="注册审批" prop="examine" align="center" >
- <template #default="scope">
- <span v-if="scope.row.examine === 1">待审批</span>
- <span v-if="scope.row.examine === 2">未通过</span>
- <span v-if="scope.row.examine === 3">已通过</span>
- </template>
- </el-table-column>
- <el-table-column label="状态" prop="status" align="center" >
- <template #default="scope">
- <span v-if="scope.row.status === 1">可用</span>
- <span v-if="scope.row.status === 2">不可用</span>
- </template>
- </el-table-column>
- <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="300px">
- <template #default="scope">
- <el-button link type="primary" @click="openDialog('review',scope.row)" >查看</el-button>
- <el-button link type="primary" @click="openDialog('edit',scope.row)" v-hasPermi="['system:role:edit']">编辑</el-button>
- <el-button link type="danger" v-if="!(scope.row.status === 1 && scope.row.examine === 3)" @click="handleDelete(scope.row)" v-hasPermi="['system:role:remove']">删除</el-button>
- <el-button link type="primary" v-if="scope.row.examine === 3 && scope.row.status === 1" @click="stop(scope.row)" >停用</el-button>
- <el-button link type="primary" v-if="scope.row.examine !== 3 && scope.row.status === 2" @click="pass(scope.row)" >审批通过</el-button>
- </template>
- </el-table-column>
+ <el-table-column label="用户ID" prop="id" align="center"/>
+ <el-table-column label="机构名称" prop="agency.name" align="center"/>
+ <el-table-column label="信用代码" prop="agency.creditCode" align="center"/>
+ <el-table-column label="用户名" prop="username" align="center" />
+ <el-table-column label="注册手机号" prop="phone" align="center"/>
+ <el-table-column label="注册审批" prop="state" align="center">
+ <template #default="scope">
+ <el-tag :type=" scope.row.state == 0 ? 'info' : scope.row.state == 1 ? '' : scope.row.state == 2 ?'success': scope.row.state == 3 || scope.row.state == 4 ?'danger':''">
+ {{scope.row.state == 0?'暂存':scope.row.state == 1 ? '审核中':scope.row.state == 2 ? '审批通过':scope.row.state == 3? '审批驳回':'已作废' }}
+ </el-tag>
+ </template>
+ </el-table-column>
+ <el-table-column label="状态" prop="status" align="center">
+ <template #default="scope">
+ <el-switch
+ v-if="scope.row.state == 2"
+ v-model="scope.row.status"
+ :active-value="0"
+ :inactive-value="1"
+ inline-prompt
+ active-text="正常"
+ inactive-text="停用"
+ @change="switchStatus($event,scope.row)"
+ />
+ <span v-else>--</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="操作" align="center" width="250" class-name="small-padding fixed-width" >
+ <template #default="scope">
+ <el-button link type="primary" @click="openDialog('view',scope.row)">查看</el-button>
+ <el-button link type="primary" @click="openDialog('edit',scope.row)">编辑</el-button>
+ <el-button link type="danger" @click="handleDelete(scope.row)">删除</el-button>
+ <el-button link type="primary" v-if="isSuper && scope.row.state ==1 " @click="openApprove(scope.row)">审批</el-button>
+ <el-button link type="primary" @click="openPwd('pwd',scope.row)">修改密码</el-button>
+ </template>
+ </el-table-column>
</el-table>
<pagination
@@ -38,42 +84,156 @@
v-model:limit="queryParams.pageSize"
@pagination="getList"
/>
+ <supervise-dialog ref="superRef" @getList=getList></supervise-dialog>
+ <register ref="regRef" @getList=getList />
+ <review-dialog ref="reviewRef" @getList=getList></review-dialog>
+ <el-dialog v-model="appDialog" title="审批用户" width="30%" center align-center>
+ <el-radio-group v-model="appoveForm.state" style="width: 100%">
+ <el-radio :label="2" size="large" border>通过</el-radio>
+ <el-radio :label="3" size="large" border>驳回</el-radio>
+ </el-radio-group>
+ <template #footer>
+ <span class="dialog-footer">
+ <el-button @click="appDialog = false">取消</el-button>
+ <el-button type="primary" @click="confirmApproval">确认</el-button>
+ </span>
+ </template>
+ </el-dialog>
</div>
</template>
<script setup>
-import {getCurrentInstance, reactive, ref, toRefs} from "vue";
-import {ElMessageBox} from "element-plus";
+import {getCurrentInstance, nextTick, onMounted, onUnmounted, reactive, ref, toRefs} from "vue";
+import {ElMessage, ElMessageBox} from "element-plus";
+import superviseDialog from "../superviseUsers/components/superviseDialog.vue"
+import { Register } from "@/layout/components";
+import {delMonitor, getAgencyList, changeApprove, changeStatus} from "../../../../api/sysUsers"
+import Cookies from "js-cookie";
+import reviewDialog from "../../institution/components/viewInstitution.vue"
+
const { proxy } = getCurrentInstance();
const loading = ref(false);
const superRef = ref();
+const regRef = ref(null)
+const reviewRef = ref();
const data = reactive({
queryParams: {
pageNum: 1,
pageSize: 10,
+ agencyName: '',
+ state: null
},
total: 0,
- dataList: []
-
-
+ dataList: [],
+ isSuper: false,
+ appDialog: false,
+ appoveForm: {
+ id: null,
+ state: null
+ },
+ stateList: [
+ {
+ label: 1,
+ value: '审核中'
+ },
+ {
+ label: 2,
+ value: '审批通过'
+ },
+ {
+ label: 3,
+ value: '审批驳回'
+ },
+ ]
});
-const { queryParams, total, dataList } = toRefs(data);
+const { queryParams, total, dataList, isSuper, appDialog, appoveForm } = toRefs(data);
-const getList = () => {
- loading.value = true;
- console.log("获取数据")
- loading.value = false;
+onMounted(()=>{
+
+ const userInfo = JSON.parse(Cookies.get('userInfo'))
+ if(userInfo.identity == 0){data.isSuper = true}
+ nextTick(() => {
+ getList()
+ })
+})
+
+onUnmounted(()=>{
+
+})
+
+const getList = async () => {
+ loading.value = true
+ console.log('data.queryParams',data.queryParams)
+ const res = await getAgencyList(data.queryParams)
+ if(res.code == 200){
+ data.dataList = res.data.list
+ data.total = res.data.total
+ }else{
+ ElMessage.warning(res.message)
+ }
+ loading.value = false
}
-const openDialog = (type, value) => {
- superRef.value.openDialog(type, value);
+const openPwd = (type, value) => {
+ superRef.value.openDialog(type, value);
}
-/** 重置新增的表单以及其他数据 */
-function reset() {
- proxy.resetForm("roleRef");
+const openDialog = (type, value)=>{
+ if(type === 'view') {
+ reviewRef.value.openDialog(value,type)
+ }else {
+ regRef.value.openDialog(type, value);
+ }
}
+
+const openApprove =(val)=>{
+ data.appoveForm = {
+ id: null,
+ state: null
+ }
+ data.appoveForm.id = val.id
+ data.appDialog = true
+}
+
+const confirmApproval = async () =>{
+ if(data.appoveForm.state !== null){
+ const res = await changeApprove(data.appoveForm)
+ if(res.code == 200){
+ ElMessage.success('审批成功')
+ await getList()
+ data.appDialog = false
+ }else{
+ ElMessage.warning(res.message)
+ }
+ }
+}
+
+const switchStatus = (e,val) => {
+ ElMessageBox.confirm(
+ '确定修改该机构当前状态?',
+ '提示',
+ {
+ confirmButtonText: '确定',
+ cancelButtonText: '取消',
+ type: 'warning',
+ })
+ .then( async() => {
+ const res = await changeStatus({id: val.id,status: e})
+ if(res.code == 200){
+ ElMessage.success('状态修改成功')
+ await getList()
+ }else{
+ ElMessage.warning(res.message)
+ }
+ })
+ .catch(() => {
+ getList()
+ })
+
+}
+
+
const handleDelete = (val) => {
ElMessageBox.confirm(
'确定删除此条数据?',
@@ -84,13 +244,29 @@
type: 'warning',
})
.then( async() => {
-
+ const res = await delMonitor(val.id)
+ if(res.code == 200){
+ ElMessage.success('数据删除成功')
+ getList()
+ }else{
+ ElMessage.warning(res.message)
+ }
})
}
-const stop = (val) => {
+const query = () => {
+ data.queryParams.pageNum = 1;
+ data.queryParams.pageSize = 10;
+ getList();
}
-const pass= (val) => {
-
+/** 重置新增的表单以及其他数据 */
+const reset = () => {
+ data.queryParams = {
+ pageNum: 1,
+ pageSize: 10,
+ agencyName: '',
+ state: null
+ }
+ getList();
}
</script>
--
Gitblit v1.9.2