瀏覽代碼

新增批量封禁IP

wangzhiqiang 5 天之前
父節點
當前提交
d89fe388b4
共有 2 個文件被更改,包括 25 次插入3 次删除
  1. 9 0
      src/api/userModule.js
  2. 16 3
      src/views/main/userModule/userList.vue

+ 9 - 0
src/api/userModule.js

@@ -109,3 +109,12 @@ export function getUserForIosList(data) {
     })
 }
 
+// 批量封禁IP
+export function batchBannedIps(data) {
+    return request({
+        url: '/agent-service/risk/batchBannedIps',
+        method: 'post',
+        data
+    })
+}
+

+ 16 - 3
src/views/main/userModule/userList.vue

@@ -6,8 +6,9 @@
     <div class="btn">
       <el-button type="" v-if="formSearch.appIds && selectData.length > 0" @click="clearSelection">取消全选</el-button>
       <!-- <el-button type="primary" :disabled="!selectData.length > 0" @click="userCheck">批量审核</el-button> -->
-      <el-button type="info" :disabled="!selectData.length > 0" @click="edit({}, 2)">批量封禁母包</el-button>
+      <el-button type="danger" :disabled="!selectData.length > 0" @click="edit({}, 2)">批量封禁母包</el-button>
       <el-button type="danger" :disabled="!selectData.length > 0" @click="edit({}, 1)">批量封禁</el-button>
+      <el-button type="danger" :disabled="!selectData.length > 0" @click="edit({}, 3)">批量封禁IP</el-button>
       <el-button type="primary" :disabled="!selectData.length > 0" @click="editUserType({}, true)">批量解封</el-button>
       <el-button type="success" :disabled="!selectData.length > 0" @click="exportUserList">批量导出</el-button>
       <el-tooltip class="box-item" effect="dark" content="慎用 比较占用服务器资源!!! 导出数量(根据左下角条数)" placement="bottom">
@@ -174,7 +175,7 @@ import { FullScreen } from '@element-plus/icons'
 import { ElMessage, ElLoading } from 'element-plus'
 import {
   getUserList, riskBannedUser, riskLockUser, appUserEcpm, getRevenueByTime,
-  batchAudit, batchBanned, batchDeblock
+  batchAudit, batchBanned, batchDeblock, batchBannedIps
 } from '@/api/userModule.js'
 import { ditchList } from '@/api/outBagModule.js'
 import { appList } from "@/api/formworkErection.js";
@@ -489,6 +490,9 @@ const edit = (row, isMulty = 0) => {
     layer.value.title = '批量封禁母包'
     formEdit.value = {}
 
+  } else if(isMulty === 3) {
+    layer.value.title = '批量封禁IP'
+    formEdit.value = {}
   } else {
     layer.value.title = '封禁用户'
 
@@ -521,7 +525,7 @@ const rules = reactive({
 const submit = async (formEl) => {
   await formEl.validate(async (valid, fields) => {
     if (valid) {
-      if (layer.value.isMulty > 0) {
+      if (layer.value.isMulty === 1 || layer.value.isMulty === 2) {
         formEdit.value.appId = selectData.value[0].appId
         formEdit.value.userIds = selectData.value.map((item) => item.userId).join(",")
         // 批量封禁母包
@@ -534,6 +538,15 @@ const submit = async (formEl) => {
             ElMessage.success(`${hintText}成功,如未更新状态,请手动刷新`)
           })
         })
+      } else if(layer.value.isMulty === 3) {
+        formEdit.value.appId = selectData.value[0].appId
+        formEdit.value.bannedIps = selectData.value.map((item) => item.lastLoginIp).join("|")
+        batchBannedIps({ ...formEdit.value }).then((res) => {
+          layer.value.show = false
+          getList().then(() => {
+            ElMessage.success(`批量封禁IP成功,如未更新状态,请手动刷新`)
+          })
+        })
       } else {
         // 提交内容
         riskBannedUser({ ...formEdit.value }).then((res) => {