zhouwx
2024-06-14 137910cf4fc73a3a2787a3a02718f1e1f637c368
src/views/safetyReview/userManage/institutionUsers/index.vue
@@ -1,12 +1,41 @@
<template>
    <div class="app-container">
        <div style="margin-bottom: 10px">
            <el-button
                type="primary"
                plain
                icon="Plus"
                @click="openDialog('add',{})"
            >新增</el-button>
          <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">
@@ -15,17 +44,17 @@
          <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="approve" align="center">
          <el-table-column label="注册审批" prop="state" align="center">
            <template #default="scope">
              <el-tag :type="scope.row.approve == 0?'success':scope.row.approve == 1?'':'danger'">
                {{scope.row.approve == 0?'审批通过':scope.row.approve == 1?'待审批':'未通过'}}
              <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.approve == 0"
                  v-if="scope.row.state == 2"
                  v-model="scope.row.status"
                  :active-value="0"
                  :inactive-value="1"
@@ -42,7 +71,7 @@
                <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.approve !==0 " @click="openApprove(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>
@@ -59,9 +88,9 @@
        <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.approve" style="width: 100%">
            <el-radio :label="0" size="large" border>通过</el-radio>
            <el-radio :label="2" size="large" border>驳回</el-radio>
          <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">
@@ -74,7 +103,7 @@
</template>
<script setup>
import {getCurrentInstance, onMounted, onUnmounted, reactive, ref, toRefs} from "vue";
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";
@@ -91,6 +120,8 @@
    queryParams: {
        pageNum: 1,
        pageSize: 10,
        agencyName: '',
        state: null
    },
    total: 0,
    dataList: [],
@@ -98,16 +129,33 @@
    appDialog: false,
    appoveForm: {
      id: null,
      approve: null
    }
      state: null
    },
  stateList: [
    {
      label: 1,
      value: '审核中'
    },
    {
      label: 2,
      value: '审批通过'
    },
    {
      label: 3,
      value: '审批驳回'
    },
  ]
});
const { queryParams, total, dataList, isSuper, appDialog, appoveForm } = toRefs(data);
onMounted(()=>{
  const userInfo = JSON.parse(Cookies.get('userInfo'))
  if(userInfo.identity == 0){data.isSuper = true}
  getList()
    nextTick(() => {
        getList()
    })
})
onUnmounted(()=>{
@@ -116,6 +164,7 @@
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
@@ -141,14 +190,14 @@
const openApprove =(val)=>{
  data.appoveForm = {
    id: null,
    approve: null
    state: null
  }
  data.appoveForm.id = val.id
  data.appDialog = true
}
const confirmApproval = async () =>{
  if(data.appoveForm.approve !== null){
  if(data.appoveForm.state !== null){
    const res = await changeApprove(data.appoveForm)
    if(res.code == 200){
      ElMessage.success('审批成功')
@@ -184,10 +233,7 @@
}
/** 重置新增的表单以及其他数据  */
function reset() {
    proxy.resetForm("roleRef");
}
const handleDelete = (val) => {
    ElMessageBox.confirm(
        '确定删除此条数据?',
@@ -208,4 +254,19 @@
        })
}
const query = () => {
  data.queryParams.pageNum = 1;
  data.queryParams.pageSize = 10;
  getList();
}
/** 重置新增的表单以及其他数据  */
const reset = () => {
  data.queryParams = {
    pageNum: 1,
    pageSize: 10,
    agencyName: '',
    state: null
  }
  getList();
}
</script>