Pārlūkot izejas kodu

联调产品筛选接口,分页器

lisiyan 2 gadi atpakaļ
vecāks
revīzija
3846e58be3

+ 12 - 9
src/views/Assignlicense.vue

@@ -5,7 +5,10 @@ export default {
   data() {
     return {
       active: 0,
-      team: '',
+      signleAssign: '',
+      signleProduct: '',
+      teamAssign: '',
+      teamProduct: '',
       memberId: '',
       product: '',
       teamList: [],
@@ -49,8 +52,8 @@ export default {
     assignLicense() {
       var urlencoded = new URLSearchParams()
       urlencoded.append('memberIds', this.memberId)
-      urlencoded.append('teamId', this.team)
-      urlencoded.append('productIds', this.product)
+      urlencoded.append('teamId', this.signleAssign)
+      urlencoded.append('productIds', this.signleProduct)
       post(
         'http://81.68.234.235:8032/pdf-tech/vppLicenseCode/singleAssign',
         urlencoded
@@ -73,8 +76,8 @@ export default {
     },
     assignTeamLicense() {
       var urlencoded = new URLSearchParams()
-      urlencoded.append('teamId', this.team)
-      urlencoded.append('productIds', this.product)
+      urlencoded.append('teamId', this.teamAssing)
+      urlencoded.append('productIds', this.teamProduct)
       post(
         'http://81.68.234.235:8032/pdf-tech/vppLicenseCode/teamAssign',
         urlencoded
@@ -149,7 +152,7 @@ export default {
             >Team<span class="text-[#FF5054]">*</span></span
           >
           <el-select
-            v-model="team"
+            v-model="signleAssign"
             placeholder="Product Designer"
             class="w-600px"
           >
@@ -186,7 +189,7 @@ export default {
             >Product<span class="text-[#FF5054]">*</span></span
           >
           <el-select
-            v-model="product"
+            v-model="signleProduct"
             multiple
             placeholder="Please select"
             class="w-600px"
@@ -246,7 +249,7 @@ export default {
             >Team<span class="text-[#FF5054]">*</span></span
           >
           <el-select
-            v-model="team"
+            v-model="teamAssign"
             placeholder="Product Designer"
             class="w-600px"
           >
@@ -264,7 +267,7 @@ export default {
             >Product<span class="text-[#FF5054]">*</span></span
           >
           <el-select
-            v-model="product"
+            v-model="teamProduct"
             multiple
             placeholder="Please select"
             class="w-600px"

+ 4 - 1
src/views/Create.vue

@@ -18,7 +18,6 @@ export default {
       verificationCodeError: false,
       passwordError: false,
       passwordConfirmError: false,
-      companyError: false,
       ruleForm: {
         email: '',
         verificationCode: '',
@@ -80,6 +79,9 @@ export default {
   },
   methods: {
     createAccount() {
+      this.verificationCodeError = false
+      this.passwordError = false
+      this.passwordConfirmError = false
       if (this.checked) {
         this.loading = true
         this.$refs['ruleForm'].validate((valid) => {
@@ -130,6 +132,7 @@ export default {
                   message: 'Create Success',
                   type: 'success'
                 })
+                this.$router.push('/login')
               }
             })
           }

+ 19 - 4
src/views/ManageAdmin.vue

@@ -7,7 +7,7 @@ import { get, post } from '../../utils/request'
 
 const currentPage = ref(1)
 const size = ref(5)
-const search = ref('')
+const queryString = ref('')
 const teamId = ref('')
 const role = ref('')
 const tableData = ref([])
@@ -35,12 +35,25 @@ const pagingQuery = () => {
       currentPage.value +
       '&' +
       'pageSize=' +
-      size.value
+      size.value +
+      '&' +
+      'teamId=' +
+      teamId.value +
+      '&' +
+      'role=' +
+      role.value +
+      '&' +
+      'queryString=' +
+      queryString.value 
   ).then((res) => {
     tableData.value = res.data.result.list
     total.value = res.data.result.total
   })
 }
+//筛选
+const searchInfo = () => {
+  pagingQuery()
+}
 // 获取团队管理列表
 const getTeamList = (val) => {
   get('http://81.68.234.235:8032/pdf-tech/vppTeam/getManageTeamList', {
@@ -124,15 +137,17 @@ const handleCurrentChange = (val) => {
         </select>
         <div class="relative">
           <el-input
-            v-model="search"
+            v-model="queryString"
             size="mini"
             class="!w-316px ml-16px input-with-select"
             placeholder="Search Name/Email"
           >
           </el-input>
-          <button class="absolute top-8px right-8px"><Search /></button>
+          <button type="button" @click="searchInfo()" class="absolute top-8px right-8px"><Search /></button>
         </div>
         <button
+          type="button"
+          @click="searchInfo()"
           class="
             w-70px
             h-28px

+ 51 - 35
src/views/ProductManagement.vue

@@ -7,7 +7,6 @@ import { get } from '../../utils/request'
 
 const currentPage = ref(1)
 const size = ref(5)
-const search = ref('')
 const tableData = ref([])
 const dialogVisible = ref(false)
 const cancelEmail = ref('')
@@ -24,24 +23,25 @@ onMounted(() => {
   pagingQuery()
   getproductList()
 })
-const filter = () => {
-  get('http://81.68.234.235:8032/pdf-tech/vppOrderDetail/pageByCompany', formdata).then(
-    (res) => {
-      tableData.value = res.data.result.list
-    }
-  )
+//筛选
+const searchInfo = () => {
+  pagingQuery()
 }
+//获取分页数据
 const pagingQuery = () => {
-  get('http://81.68.234.235:8032/pdf-tech/vppOrderDetail/pageByCompany?page=' +
-    currentPage.value +
-    '&' +
-    'pageSize=' +
-    size.value).then(
-      (res) => {
-        tableData.value = res.data.result.list
-        total.value = res.data.result.total
-      }
-    )
+  get(
+    'http://81.68.234.235:8032/pdf-tech/vppOrderDetail/pageByCompany?page=' +
+      currentPage.value +
+      '&' +
+      'pageSize=' +
+      size.value +
+      '&' +
+      'code=' +
+      productId.value
+  ).then((res) => {
+    tableData.value = res.data.result.list
+    total.value = res.data.result.total
+  })
 }
 //获取已购买产品
 const getproductList = (val) => {
@@ -71,7 +71,8 @@ const handleCurrentChange = (value) => {
   <div class="flex flex-col items-center">
     <div class="w-full">
       <h1 class="leading-40px">Product Management</h1>
-      <div class="
+      <div
+        class="
           mt-36px
           mb-16px
           leading-20px
@@ -79,41 +80,56 @@ const handleCurrentChange = (value) => {
           font-bold
           flex
           justify-between
-        ">
+        "
+      >
         <span>Content</span>
       </div>
       <div class="flex bg-[#fff] pt-32px px-24px rounded-t-8px w-full">
-        <select v-model="productId" name="" id="" class="w-140px">
-          <option value="" disabled selected>Product</option>
-          <option v-for="item in productList" :key="item.id" :label="item.name" :value="item.id">
-          </option>
+        <select v-model="productId" class="w-140px">
+          <option value="" selected>Product</option>
+          <option
+            v-for="item in productList"
+            :key="item.id"
+            :label="item.name"
+            :value="item.code"
+          ></option>
         </select>
-        <button @click="filter()" class="
+        <button
+          @click="searchInfo()"
+          class="
             w-70px
             h-28px
             border-1px border-[#1460F3]
             rounded-4px
             ml-16px
             text-[#1460F3]
-          ">
+          "
+        >
           Confirm
         </button>
       </div>
       <el-table :data="tableData" class="px-24px pb-40px rounded-b-8px !w-full">
         <el-table-column prop="name" label="Product"> </el-table-column>
         <el-table-column prop="memberName" label="Plan"> </el-table-column>
-        <el-table-column prop="quantity" label="Total amount"> </el-table-column>
-        <el-table-column prop="price" label="Purchase Price">
+        <el-table-column prop="quantity" label="Total amount">
         </el-table-column>
+        <el-table-column prop="price" label="Purchase Price"> </el-table-column>
         <el-table-column prop="createdAt" label="Purchase date">
         </el-table-column>
         <el-table-column prop="expirationAt" label="Expiration Date">
         </el-table-column>
       </el-table>
-      <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
-        :current-page.sync="currentPage" :page-sizes="[5, 10, 20]" :page-size="5" :background="true"
-        layout="sizes, prev, pager, next, jumper" :total="total"
-        class="px-24px !rounded-0 rounded-b-8px mt-20px flex justify-end">
+      <el-pagination
+        @size-change="handleSizeChange"
+        @current-change="handleCurrentChange"
+        :current-page.sync="currentPage"
+        :page-sizes="[5, 10, 20]"
+        :page-size="5"
+        :background="true"
+        layout="sizes, prev, pager, next, jumper"
+        :total="total"
+        class="px-24px !rounded-0 rounded-b-8px mt-20px flex justify-end"
+      >
       </el-pagination>
     </div>
   </div>
@@ -135,7 +151,7 @@ const handleCurrentChange = (value) => {
   background-color: #e7eaee !important;
 }
 
-.el-pagination::v-deep ul>li {
+.el-pagination::v-deep ul > li {
   color: #232a40;
   border-radius: 4px;
   margin-left: 6px;
@@ -145,7 +161,7 @@ const handleCurrentChange = (value) => {
   background-color: #fff;
 }
 
-.el-pagination::v-deep ul>.active {
+.el-pagination::v-deep ul > .active {
   color: #232a40 !important;
   background-color: #c6c9cc !important;
 }
@@ -163,7 +179,7 @@ const handleCurrentChange = (value) => {
   border-radius: 8px;
 }
 
-.el-dialog>.el-dialog__body {
+.el-dialog > .el-dialog__body {
   display: flex;
   flex-direction: column;
   justify-content: center;
@@ -171,7 +187,7 @@ const handleCurrentChange = (value) => {
   padding: 0 0 20px;
 }
 
-.el-dialog>.el-dialog__footer {
+.el-dialog > .el-dialog__footer {
   padding: 0 20px 20px;
 
   span {

+ 207 - 84
src/views/TeamManagement/ManageMember.vue

@@ -1,15 +1,20 @@
 <script setup>
-import { onMounted, ref } from "vue"
+import { onMounted, ref } from 'vue'
 import Search from '@/components/icon/search.vue'
 import Warning from '@/components/icon/warning.vue'
-import { get, downLoad, post} from '../../../utils/request'
+import { get, downLoad, post } from '../../../utils/request'
 
 const tableData = ref([])
+const teamList = ref([])
+const productList = ref([])
 const currentPage = ref(1)
-const search = ref('')
+const queryString = ref('')
 const dialogVisible = ref(false)
 const MemberName = ref('')
+const total = ref(0)
 const teamId = ref('')
+const status = ref('')
+const product = ref('')
 const size = ref(5)
 const memberId = ref('')
 
@@ -20,10 +25,10 @@ const handleClick = (val) => {
   memberId.value = val.id
 }
 //确认删除
-function deleteMember(){
-  post("http://81.68.234.235:8032/pdf-tech/vppTeam/deleteMember",{
+function deleteMember() {
+  post('http://81.68.234.235:8032/pdf-tech/vppTeam/deleteMember', {
     memberId: memberId.value
-  }).then((res)=>{
+  }).then((res) => {
     console.log(res)
   })
 }
@@ -37,45 +42,85 @@ function handleCurrentChange(val) {
   getManageMemberList()
 }
 // 获取团队管理列表
+const getTeamList = () => {
+  get('http://81.68.234.235:8032/pdf-tech/vppTeam/getManageTeamList', {
+    teamId: '',
+    keyword: ''
+  }).then((res) => {
+    if (res.data.code === 200) {
+      teamList.value = res.data.result.list
+    }
+  })
+}
+//获取已购买产品
+const getproductList = () => {
+  get('http://81.68.234.235:8032/pdf-tech/product/listWithAdmin').then(
+    (res) => {
+      productList.value = res.data.result
+    }
+  )
+}
+// 获取成员列表
 function getManageMemberList() {
   get(
     'http://81.68.234.235:8032/pdf-tech/vppRTeamMemberRole/pageForMember?page=' +
       currentPage.value +
       '&' +
       'pageSize=' +
-      size.value
+      size.value +
+      '&' +
+      'teamId=' +
+      teamId.value +
+      '&' +
+      'status=' +
+      status.value +
+      '&' +
+      'queryString=' +
+      queryString.value +
+      '&' +
+      'productCode=' +
+      product.value
   ).then((res) => {
     const data = res.data.result.list
-    for(let i = 0; i < data.length; i++){
-      if(data[i].validFlag === '0'){
-        data[i].validFlag = "Deleted"
-      } else if(data[i].validFlag === '1'){
-        data[i].validFlag = "Joined"
-      }else{
-        data[i].validFlag = "Invited"
+    for (let i = 0; i < data.length; i++) {
+      if (data[i].validFlag === '0') {
+        data[i].validFlag = 'Deleted'
+      } else if (data[i].validFlag === '1') {
+        data[i].validFlag = 'Joined'
+      } else {
+        data[i].validFlag = 'Invited'
       }
     }
     tableData.value = data
+    total.value = res.data.total
   })
 }
 // 团队成员列表导出
 function exportManageMemberList() {
-  downLoad("http://81.68.234.235:8032/pdf-tech/vppRTeamMemberRole/download").then((res)=>{
-    const link = document.createElement("a")  //创建a标签
-    let blob = new Blob([res], { type: "application/vnd.ms-excel" }) // response就是接口返回的文件流
+  downLoad(
+    'http://81.68.234.235:8032/pdf-tech/vppRTeamMemberRole/download'
+  ).then((res) => {
+    const link = document.createElement('a') //创建a标签
+    let blob = new Blob([res], { type: 'application/vnd.ms-excel' }) // response就是接口返回的文件流
     let objectUrl = URL.createObjectURL(blob)
     link.href = objectUrl
-    link.download = "团队成员" // 自定义文件名
+    link.download = '团队成员' // 自定义文件名
     link.click() // 下载文件
     URL.revokeObjectURL(objectUrl) // 释放内存
   })
 }
+//筛选
+const searchInfo = () => {
+  getManageMemberList()
+}
 onMounted(() => {
-  let pageText = document.getElementsByClassName("el-pagination__jump")[0]
+  let pageText = document.getElementsByClassName('el-pagination__jump')[0]
   if (pageText) {
-    pageText.childNodes[0].nodeValue = "跳至"
+    pageText.childNodes[0].nodeValue = '跳至'
   }
   getManageMemberList()
+  getTeamList()
+  getproductList()
 })
 </script>
 
@@ -85,94 +130,176 @@ onMounted(() => {
     <div class="mt-36px mb-16px flex justify-between">
       <h2>Content</h2>
       <div class="flex">
-        <el-tooltip class="item" effect="dark" content="Download data" placement="bottom">
-          <a class="w-28px h-28px border-1 border-[#D9D9D9] rounded-4px bg-[#F9FAFB] flex justify-center items-center mr-12px cursor-pointer" @click="exportManageMemberList">
-            <img src="@/assets/images/download.svg" alt="download">
+        <el-tooltip
+          class="item"
+          effect="dark"
+          content="Download data"
+          placement="bottom"
+        >
+          <a
+            class="
+              w-28px
+              h-28px
+              border-1 border-[#D9D9D9]
+              rounded-4px
+              bg-[#F9FAFB]
+              flex
+              justify-center
+              items-center
+              mr-12px
+              cursor-pointer
+            "
+            @click="exportManageMemberList"
+          >
+            <img src="@/assets/images/download.svg" alt="download" />
           </a>
         </el-tooltip>
         <router-link :to="{ name: 'AddManageMember' }">
-          <div class="h-28px px-10px py-4px bg-[#1460F3] rounded-4px text-14px leading-20px font-400 text-[#fff] cursor-pointer">Add Member</div>
+          <div
+            class="
+              h-28px
+              px-10px
+              py-4px
+              bg-[#1460F3]
+              rounded-4px
+              text-14px
+              leading-20px
+              font-400
+              text-[#fff]
+              cursor-pointer
+            "
+          >
+            Add Member
+          </div>
         </router-link>
       </div>
     </div>
     <div class="block px-24px pt-32px pb-40px">
       <div class="flex">
-        <select name="team" class="min-w-50px mr-16px">
-          <option value="Team">Team</option>
-          <option value="Produce Designer">Produce Designer</option>
-          <option value="Finance Department">Finance Department</option>
+        <select name="team" class="min-w-50px mr-16px" v-model="teamId">
+          <option value="" selected>Team</option>
+          <option v-for="item in teamList" :value="item.id" :key="item.id">
+            {{ item.name }}
+          </option>
         </select>
-        <select name="status" class="min-w-100px mr-16px">
-          <option value="Status">Status</option>
-          <option value="Invited">Invited</option>
-          <option value="Joined">Joined</option>
-          <option value="Deleted">Deleted</option>
+        <select name="status" class="min-w-100px mr-16px" v-model="status">
+          <option value="" selected>Status</option>
+          <option value="2">Invited</option>
+          <option value="1">Joined</option>
+          <option value="0">Deleted</option>
         </select>
-        <select name="Assigned Product" class="min-w-100px mr-16px">
-          <option value="Assigned Product">Assigned Product</option>
-          <option value="PDF Reader Pro Win">PDF Reader Pro Win</option>
-          <option value="PDF Reader Pro Mac">PDF Reader Pro Mac</option>
+        <select name="Assigned Product" class="min-w-100px mr-16px" v-model="product">
+          <option value="" selected>Assigned Product</option>
+          <option
+            v-for="item in productList"
+            :key="item.value"
+            :value="item.id"
+          >
+            {{ item.name }}
+          </option>
         </select>
         <div class="relative mr-16px">
           <el-input
-          v-model="search"
-          size="mini"
-          class="!w-316px input-with-select"
-          placeholder="Search Member Name/Email/Device UUID"
+            v-model="queryString"
+            size="mini"
+            class="!w-316px input-with-select"
+            placeholder="Search Member Name/Email/Device UUID"
           >
-        </el-input>
-        <button class="absolute top-8px right-8px"><Search /></button>
+          </el-input>
+          <button class="absolute top-8px right-8px"><Search /></button>
         </div>
-        <div class="w-70px h-28px border-[#1460F3] border-1px rounded-4px px-10px py-4px text-14px leading-20px text-[#1460F3] cursor-pointer">Confirm</div>
+        <button
+          type="button"
+          @click="searchInfo()"
+          class="
+            w-70px
+            h-28px
+            border-[#1460F3] border-1px
+            rounded-4px
+            px-10px
+            py-4px
+            text-14px
+            leading-20px
+            text-[#1460F3]
+            cursor-pointer
+          "
+        >
+          Confirm
+        </button>
       </div>
-      <el-table
-        :data="tableData"
-        style="width: 100%">
-        <el-table-column
-          prop="fullName"
-          label="Member Name"
-          min-width="100px">
+      <el-table :data="tableData" style="width: 100%">
+        <el-table-column prop="fullName" label="Member Name" min-width="100px">
         </el-table-column>
-        <el-table-column
-          prop="email"
-          label="Email"
-          min-width="100px">
+        <el-table-column prop="email" label="Email" min-width="100px">
         </el-table-column>
-        <el-table-column
-          prop="teamName"
-          label="Team"
-          min-width="130px">
+        <el-table-column prop="teamName" label="Team" min-width="130px">
         </el-table-column>
-        <el-table-column
-          prop="validFlag"
-          label="Status"
-          min-width="80px">
+        <el-table-column prop="validFlag" label="Status" min-width="80px">
         </el-table-column>
         <el-table-column
           prop="productNames"
           label="Assigned Product"
-          min-width="150px">
+          min-width="150px"
+        >
         </el-table-column>
         <el-table-column
           prop="uniqueSns"
           label="Activated Device UUID"
-          min-width="178px">
+          min-width="178px"
+        >
         </el-table-column>
         <el-table-column
           prop="id"
           class="hidden"
           label="Activated Device UUID"
-          min-width="178px">
+          min-width="178px"
+        >
         </el-table-column>
-        <el-table-column
-          label="Operate"
-          min-width="62px">
+        <el-table-column label="Operate" min-width="62px">
           <template slot-scope="scope">
             <div>
-              <router-link :to="{ name: 'EditManageMember', query: { MemberName: scope.row.fullName, Email: scope.row.email, Team: scope.row.teamName, Id: scope.row.id } }">
-                <div class="w-61px h-20px border-1 border-[#1460F3] rounded-4px text-center text-14px leading-20px text-[#1460F3] cursor-pointer mb-8px">Edit</div>
+              <router-link
+                :to="{
+                  name: 'EditManageMember',
+                  query: {
+                    MemberName: scope.row.fullName,
+                    Email: scope.row.email,
+                    Team: scope.row.teamName,
+                    Id: scope.row.id,
+                  },
+                }"
+              >
+                <div
+                  class="
+                    w-61px
+                    h-20px
+                    border-1 border-[#1460F3]
+                    rounded-4px
+                    text-center text-14px
+                    leading-20px
+                    text-[#1460F3]
+                    cursor-pointer
+                    mb-8px
+                  "
+                >
+                  Edit
+                </div>
               </router-link>
-              <div class="w-61px h-20px border-1 border-[#1460F3] rounded-4px text-center text-14px leading-20px text-[#1460F3] cursor-pointer" @click="handleClick(scope.row)">Delete</div>
+              <div
+                class="
+                  w-61px
+                  h-20px
+                  border-1 border-[#1460F3]
+                  rounded-4px
+                  text-center text-14px
+                  leading-20px
+                  text-[#1460F3]
+                  cursor-pointer
+                "
+                @click="handleClick(scope.row)"
+              >
+                Delete
+              </div>
             </div>
           </template>
         </el-table-column>
@@ -189,7 +316,9 @@ onMounted(() => {
       <Warning class="inline-block" />
       <div class="mt-16px text-16px leading-24px text-[#232A40]">
         <p>Sure Delete member?</p>
-        <p>Team Name: <span class="font-bold">{{ MemberName }}</span></p>
+        <p>
+          Team Name: <span class="font-bold">{{ MemberName }}</span>
+        </p>
       </div>
       <span slot="footer" class="dialog-footer">
         <el-button @click="dialogVisible = false">No</el-button>
@@ -204,14 +333,8 @@ onMounted(() => {
       :page-size="1"
       :background="true"
       layout="prev, pager, next, sizes, jumper"
-      :total="tableData.length"
-      class="
-        px-24px
-        !rounded-0
-        rounded-b-8px
-        flex
-        justify-end
-      "
+      :total="total"
+      class="px-24px !rounded-0 rounded-b-8px flex justify-end"
     >
     </el-pagination>
   </div>
@@ -240,7 +363,7 @@ onMounted(() => {
 }
 ::v-deep .input-with-select .el-input__inner {
   padding: 0 20px 0 8px;
-  border-color: #D9D9D9;
+  border-color: #d9d9d9;
 }
 ::v-deep .input-with-select .el-input__inner::placeholder {
   font-size: 14px;
@@ -263,9 +386,9 @@ onMounted(() => {
       height: 32px;
       padding: 0;
       &.el-button--default {
-        border-color: #1460F3;
+        border-color: #1460f3;
         span {
-          color: #1460F3;
+          color: #1460f3;
         }
       }
       span {

+ 155 - 59
src/views/TeamManagement/ManageTeam.vue

@@ -1,25 +1,24 @@
 <script setup>
-import { onMounted, ref, getCurrentInstance } from "vue"
+import { onMounted, ref, getCurrentInstance } from 'vue'
 import Search from '@/components/icon/search.vue'
 import Warning from '@/components/icon/warning.vue'
 import { get, _delete } from '../../../utils/request'
 
 const { proxy } = getCurrentInstance()
 const tableData = ref([])
+const teamList = ref([])
 const currentPage = ref(1)
 const pageSize = ref(5)
 const total = ref(0)
-const search = ref('')
 const dialogVisible = ref(false)
 const teamId = ref('')
-const teamFilterSelect = ref('')
+const queryString = ref('')
 const deleteTeamName = ref('')
 const deleteTeamId = ref('')
 const deleteTeamIndex = ref('')
 
 //打开对话框
 const handleClick = (index, val) => {
-  console.log(index, val)
   deleteTeamName.value = val.name
   deleteTeamId.value = val.id
   deleteTeamIndex.value = index
@@ -27,12 +26,10 @@ const handleClick = (index, val) => {
 }
 
 function handleSizeChange(val) {
-  console.log(`每页 ${val} 条`)
   pageSize.value = val
   getManageTeamList()
 }
 function handleCurrentChange(val) {
-  console.log(`当前页: ${val}`)
   currentPage.value = val
   getManageTeamList()
 }
@@ -42,7 +39,7 @@ function getManageTeamList() {
     page: currentPage.value,
     pageSize: pageSize.value,
     teamId: teamId.value,
-    keyword: search.value
+    keyword: queryString.value
   }).then((res) => {
     if (res.data.code === 200) {
       tableData.value = res.data.result.list
@@ -50,11 +47,22 @@ function getManageTeamList() {
     }
   })
 }
+// 获取团队管理列表
+const getTeamList = () => {
+  get('http://81.68.234.235:8032/pdf-tech/vppTeam/getManageTeamList', {
+    teamId: '',
+    keyword: ''
+  }).then((res) => {
+    if (res.data.code === 200) {
+      teamList.value = res.data.result.list
+    }
+  })
+}
 // 团队管理列表导出
 function exportManageTeamList() {
   get('http://81.68.234.235:8032/pdf-tech/vppTeam/exportManageTeamList', {
     teamId: teamId.value,
-    keyword: search.value
+    keyword: queryString.value
   }).then((res) => {
     console.log(res)
   })
@@ -67,19 +75,21 @@ function handleDelete() {
     if (res.data.code === 200) {
       proxy.$message('Delete Success')
       proxy.tableData.splice(deleteTeamIndex.value, 1)
-    } else (
-      proxy.$message.error(res.data.msg)
-    )
+    } else proxy.$message.error(res.data.msg)
     dialogVisible.value = false
   })
 }
-
+//筛选
+const searchInfo = () => {
+  getManageTeamList()
+}
 onMounted(() => {
-  let pageText = document.getElementsByClassName("el-pagination__jump")[0]
+  let pageText = document.getElementsByClassName('el-pagination__jump')[0]
   if (pageText) {
-    pageText.childNodes[0].nodeValue = "跳至"
+    pageText.childNodes[0].nodeValue = '跳至'
   }
   getManageTeamList()
+  getTeamList()
 })
 </script>
 
@@ -89,76 +99,166 @@ onMounted(() => {
     <div class="mt-36px mb-16px flex justify-between">
       <h2>Content</h2>
       <div class="flex">
-        <el-tooltip class="item" effect="dark" content="Download data" placement="bottom">
-          <div class="w-28px h-28px border-1 border-[#D9D9D9] rounded-4px bg-[#F9FAFB] flex justify-center items-center mr-12px cursor-pointer" @click="exportManageTeamList">
-            <img src="@/assets/images/download.svg" alt="download">
+        <el-tooltip
+          class="item"
+          effect="dark"
+          content="Download data"
+          placement="bottom"
+        >
+          <div
+            class="
+              w-28px
+              h-28px
+              border-1 border-[#D9D9D9]
+              rounded-4px
+              bg-[#F9FAFB]
+              flex
+              justify-center
+              items-center
+              mr-12px
+              cursor-pointer
+            "
+            @click="exportManageTeamList"
+          >
+            <img src="@/assets/images/download.svg" alt="download" />
           </div>
         </el-tooltip>
-        <router-link :to="{ name: 'CreateManageTeam', params: { flag: 'create' } }">
-          <div class="h-28px px-10px py-4px bg-[#1460F3] rounded-4px text-14px leading-20px font-400 text-[#fff] cursor-pointer">Create Team</div>
+        <router-link
+          :to="{ name: 'CreateManageTeam', params: { flag: 'create' } }"
+        >
+          <div
+            class="
+              h-28px
+              px-10px
+              py-4px
+              bg-[#1460F3]
+              rounded-4px
+              text-14px
+              leading-20px
+              font-400
+              text-[#fff]
+              cursor-pointer
+            "
+          >
+            Create Team
+          </div>
         </router-link>
       </div>
     </div>
     <div class="block px-24px pt-32px pb-40px">
       <div class="flex">
-        <select v-model="teamFilterSelect" name="team" class="min-w-140px mr-16px">
+        <select v-model="teamId" name="team" class="min-w-140px mr-16px">
           <option value="">Team</option>
-          <option v-for="item in tableData" :value="item.name" :key="item.id">{{ item.name }}</option>
+          <option v-for="item in teamList" :value="item.id" :key="item.id">
+            {{ item.name }}
+          </option>
         </select>
         <div class="relative mr-16px">
           <el-input
-            v-model="search"
+            v-model="queryString"
             size="mini"
             class="!w-316px input-with-select"
             placeholder="Search Team Description / Team Admin"
           >
           </el-input>
-          <button class="absolute top-8px right-8px"><Search /></button>
+          <button
+            type="button"
+            @click="searchInfo()"
+            class="absolute top-8px right-8px"
+          >
+            <Search />
+          </button>
         </div>
-        <div class="w-70px h-28px border-[#1460F3] border-1px rounded-4px px-10px py-4px text-14px leading-20px text-[#1460F3] cursor-pointer">Confirm</div>
+        <button
+          type="button"
+          @click="searchInfo()"
+          class="
+            w-70px
+            h-28px
+            border-[#1460F3] border-1px
+            rounded-4px
+            px-10px
+            py-4px
+            text-14px
+            leading-20px
+            text-[#1460F3]
+            cursor-pointer
+          "
+        >
+          Confirm
+        </button>
       </div>
-      <el-table
-        :data="tableData"
-        style="width: 100%">
-        <el-table-column
-          prop="name"
-          label="Team name"
-          min-width="14%">
+      <el-table :data="tableData" style="width: 100%">
+        <el-table-column prop="name" label="Team name" min-width="14%">
         </el-table-column>
-        <el-table-column
-          prop="members"
-          label="Members"
-          min-width="11%">
+        <el-table-column prop="members" label="Members" min-width="11%">
         </el-table-column>
         <el-table-column
           prop="licenseAmount"
           label="License Amount"
-          min-width="17%">
+          min-width="17%"
+        >
         </el-table-column>
         <el-table-column
           prop="description"
           label="Team Description"
-          min-width="18%">
+          min-width="18%"
+        >
         </el-table-column>
-        <el-table-column
-          prop="teamAdmin"
-          label="Team Admin"
-          min-width="14.5%">
+        <el-table-column prop="teamAdmin" label="Team Admin" min-width="14.5%">
         </el-table-column>
         <el-table-column
           prop="createTime"
           label="Created date"
-          min-width="13.5%">
+          min-width="13.5%"
+        >
         </el-table-column>
-        <el-table-column
-          label="Operate"
-          min-width="10%">
+        <el-table-column label="Operate" min-width="10%">
           <template slot-scope="scope">
             <div>
-              <router-link :to="{ name: 'EditManageTeam', params: { flag: 'edit', teamId: scope.row.id, teamName: scope.row.name, teamDescription: scope.row.description, licenseAmount: scope.row.licenseAmount  } }">
-                <div class="w-61px h-20px border-1 border-[#1460F3] rounded-4px text-center text-14px leading-20px text-[#1460F3] cursor-pointer mb-8px">Edit</div>
+              <router-link
+                :to="{
+                  name: 'EditManageTeam',
+                  params: {
+                    flag: 'edit',
+                    teamId: scope.row.id,
+                    teamName: scope.row.name,
+                    teamDescription: scope.row.description,
+                    licenseAmount: scope.row.licenseAmount,
+                  },
+                }"
+              >
+                <div
+                  class="
+                    w-61px
+                    h-20px
+                    border-1 border-[#1460F3]
+                    rounded-4px
+                    text-center text-14px
+                    leading-20px
+                    text-[#1460F3]
+                    cursor-pointer
+                    mb-8px
+                  "
+                >
+                  Edit
+                </div>
               </router-link>
-              <div class="w-61px h-20px border-1 border-[#1460F3] rounded-4px text-center text-14px leading-20px text-[#1460F3] cursor-pointer" @click="handleClick(scope.$index, scope.row)">Delete</div>
+              <div
+                class="
+                  w-61px
+                  h-20px
+                  border-1 border-[#1460F3]
+                  rounded-4px
+                  text-center text-14px
+                  leading-20px
+                  text-[#1460F3]
+                  cursor-pointer
+                "
+                @click="handleClick(scope.$index, scope.row)"
+              >
+                Delete
+              </div>
             </div>
           </template>
         </el-table-column>
@@ -174,7 +274,9 @@ onMounted(() => {
       <Warning class="inline-block" />
       <div class="mt-16px text-16px leading-24px text-[#232A40]">
         <p>Sure Delete Team?</p>
-        <p>Team Name: <span class="font-bold">{{ deleteTeamName }}</span></p>
+        <p>
+          Team Name: <span class="font-bold">{{ deleteTeamName }}</span>
+        </p>
       </div>
       <span slot="footer" class="dialog-footer">
         <el-button @click="dialogVisible = false">No</el-button>
@@ -190,13 +292,7 @@ onMounted(() => {
       :background="true"
       layout="prev, pager, next, sizes, jumper"
       :total="total"
-      class="
-        px-24px
-        !rounded-0
-        rounded-b-8px
-        flex
-        justify-end
-      "
+      class="px-24px !rounded-0 rounded-b-8px flex justify-end"
     >
     </el-pagination>
   </div>
@@ -225,7 +321,7 @@ onMounted(() => {
 }
 ::v-deep .input-with-select .el-input__inner {
   padding: 0 20px 0 8px;
-  border-color: #D9D9D9;
+  border-color: #d9d9d9;
 }
 ::v-deep .input-with-select .el-input__inner::placeholder {
   font-size: 14px;
@@ -248,9 +344,9 @@ onMounted(() => {
       height: 32px;
       padding: 0;
       &.el-button--default {
-        border-color: #1460F3;
+        border-color: #1460f3;
         span {
-          color: #1460F3;
+          color: #1460f3;
         }
       }
       span {