2 lines
8.5 KiB
JavaScript
2 lines
8.5 KiB
JavaScript
import{b3 as e,ag as l,bn as t,r as a,a_ as i,c as o,e as r,N as n,w as s,l as p,O as c,E as d,t as u,g as m,n as h,an as g,cf as _,ca as b,bS as v,a$ as y,aO as f}from"./index.1760348650156CwebaFb9.js";import{_ as w}from"./index.1760348650156yw4OmJ8z.js";import{d as F,c as k,f as x,h as D}from"./monitor.1760348650156ZTHxxoi2.js";/* empty css */import"./el-col.1760348650156DCpW9kQX.js";const P={class:"cell-btn cl-2"},I={class:"cell-btn cl-2"},T={class:"blue"},q={class:"operate"},C=["onClick"],j=["onClick"],E=e({__name:"ip-black",setup(e){function E(e){return v(1e3*e)}const R=(e,l)=>{let t="";return e.forEach(e=>{e.value==l&&(t=e.label)}),t},U=l({columns:[{prop:"id",label:"编号",width:80,align:"center"},{prop:"content",label:"IP",align:"center"},{prop:"chinese_info",label:"中文信息",align:"center"},{prop:"limit_channel",label:"黑名单类型",width:110,align:"center",slot:"limit_channel"},{prop:"expire_time",label:"过期时间",width:180,align:"center",formatter:E},{prop:"limit_type",label:"场景类型",width:110,align:"center",slot:"limit_type"},{prop:"order_ids",label:"订单列表",align:"center"},{prop:"remark",label:"备注",align:"center"},{prop:"create_time",label:"创建时间",width:150,align:"center",formatter:E},{prop:"operate",label:"操作",width:100,align:"center",slot:"operate",fixed:"right"}],tableData:[],searchFields:[{label:"限制内容",type:"input",prop:"content",value:"",placeholder:"ip值或cookie值"},{label:"黑名单类型",type:"select",prop:"limit_channel",value:"",options:[{label:"后台黑名单",value:1},{label:"网关黑名单",value:2}]},{label:"场景类型",type:"select",prop:"limit_type",value:"",options:[{label:"后台手工",value:1},{label:"登录错误超限",value:2},{label:"恶意拉单超限",value:3}]},{prop:"create_time",label:"过期时间",type:"date",dateType:"datetimerange",span:6,value:[]}],total:0,page:1,limit:10,loading:!1,productForm:{title:"",fields:[{label:"限制方式",prop:"limit_method",type:"select",value:null,placeholder:"请选择限制方式",options:[{label:"IP",value:1},{label:"cookie",value:2}]},{label:"限制内容",prop:"content",type:"input",placeholder:"请输入IP或cookie"},{label:"黑名单类型",type:"select",prop:"limit_channel",value:"",options:[{label:"后台黑名单",value:1},{label:"网关黑名单",value:2}],placeholder:"请选择黑名单类型"},{label:"场景类型",type:"select",prop:"limit_type",value:"",options:[{label:"后台手工",value:1},{label:"登录错误超限",value:2},{label:"恶意拉单超限",value:3}],placeholder:"请选择场景类型"},{label:"过期时间",prop:"expire_time",type:"date",placeholder:"请选择过期时间"},{label:"订单列表",prop:"order_ids",type:"input",placeholder:"请输入订单ID,多个以,分割"},{label:"备注",prop:"remark",type:"input",placeholder:"请输入备注"}],rules:{limit_method:[{required:!0,message:"请选择限制方式",trigger:"change"}],content:[{required:!0,message:"请输入IP或cookie",trigger:"blur"}],limit_channel:[{required:!0,message:"请选择黑名单类型",trigger:"change"}],limit_type:[{required:!0,message:"请选择场景类型",trigger:"change"}],expire_time:[{required:!0,message:"请选择过期时间",trigger:"change"}]},values:{limit_method:"",content:"",limit_channel:"",limit_type:"",order_ids:"",remark:"",expire_time:""}},editRow:{},showProductDialog:!1,selectList:[]}),B=()=>{U.searchFields.forEach(e=>{"datetimerange"==e.dateType?e.value=[]:e.value=""}),O()},L=e=>{U.selectList=e};t(()=>{O()});const O=()=>{var e,l,t,a;U.loading=!0;let i={limit:U.limit,page:U.page},o=function(e){const l={};return e.forEach(e=>{e.prop&&void 0!==e.value&&(l[e.prop]=e.value)}),l}(U.searchFields);o.create_time&&o.create_time.length>0&&(o.start_time=(null==(e=o.create_time[0])?void 0:e.getTime())?(null==(l=o.create_time[0])?void 0:l.getTime())/1e3:"",o.end_time=(null==(t=o.create_time[1])?void 0:t.getTime())?(null==(a=o.create_time[1])?void 0:a.getTime())/1e3:""),D(Object.assign(i,o)).then(e=>{U.tableData=e.list,U.total=e.total,U.loading=!1}).catch(()=>{U.loading=!1})},S=a(null),V=e=>{if(U.editRow=e,null==e?void 0:e.id){U.productForm.title="修改IP黑名单";for(let l in e)U.productForm.values[l]=e[l];U.productForm.values.expire_time=1e3*e.expire_time}else U.productForm={title:"添加IP黑名单",fields:[{label:"限制方式",prop:"limit_method",type:"select",value:null,placeholder:"请选择限制方式",options:[{label:"IP",value:1},{label:"cookie",value:2}]},{label:"限制内容",prop:"content",type:"input",placeholder:"请输入IP或cookie"},{label:"黑名单类型",type:"select",prop:"limit_channel",value:"",options:[{label:"后台黑名单",value:1},{label:"网关黑名单",value:2}],placeholder:"请选择黑名单类型"},{label:"场景类型",type:"select",prop:"limit_type",value:"",options:[{label:"后台手工",value:1},{label:"登录错误超限",value:2},{label:"恶意拉单超限",value:3}],placeholder:"请选择场景类型"},{label:"过期时间",prop:"expire_time",type:"date",placeholder:"请选择过期时间"},{label:"订单列表",prop:"order_ids",type:"input",placeholder:"请输入订单ID,多个以,分割"},{label:"备注",prop:"remark",type:"input",placeholder:"请输入备注"}],rules:{limit_method:[{required:!0,message:"请选择限制方式",trigger:"change"}],content:[{required:!0,message:"请输入IP或cookie",trigger:"blur"}],limit_channel:[{required:!0,message:"请选择黑名单类型",trigger:"change"}],limit_type:[{required:!0,message:"请选择场景类型",trigger:"change"}],expire_time:[{required:!0,message:"请选择过期时间",trigger:"change"}]},values:{limit_method:"",content:"",limit_channel:"",limit_type:"",order_ids:"",remark:"",expire_time:""}};U.showProductDialog=!0},$=_(async()=>{S.value&&S.value.hasValid&&S.value.hasValid().validate(e=>{var l;e&&(U.productForm.values.expire_time instanceof Date?U.productForm.values.expire_time=U.productForm.values.expire_time.getTime()/1e3:U.productForm.values.expire_time=U.productForm.values.expire_time/1e3,(null==(l=U.editRow)?void 0:l.id)?k({...U.editRow,...U.productForm.values}).then(e=>{f.success(e),U.showProductDialog=!1,O()}):x(U.productForm.values).then(e=>{f.success(e),U.showProductDialog=!1,O()}))})},300),G=async()=>{if(0==U.selectList.length)return f.warning("请选择要删除的IP黑名单");y.confirm("是否确认删除所选数据项的IP黑名单?","系统提示",{confirmButtonText:"确认",cancelButtonText:"取消",type:"warning"}).then(()=>{let e=[];U.selectList.forEach(l=>{e.push(l.id)}),F({ids:e.join(",")}).then(e=>{f.success(e),O()})}).catch(()=>{})};return(e,l)=>{const t=i("Plus"),a=d,_=i("Delete"),v=i("EditPen"),k=g,x=b;return r(),o("div",null,[n(w,{type:"pay-order",columns:m(U).columns,searchFields:m(U).searchFields,"onUpdate:searchFields":l[1]||(l[1]=e=>m(U).searchFields=e),data:m(U).tableData,limit:m(U).limit,"onUpdate:limit":l[2]||(l[2]=e=>m(U).limit=e),page:m(U).page,"onUpdate:page":l[3]||(l[3]=e=>m(U).page=e),total:m(U).total,onGetTableData:O,onResetForm:B,loading:m(U).loading,showSelection:!0,onSelectionChange:L},{btns:s(()=>[p("div",{class:"blue",onClick:l[0]||(l[0]=e=>V({}))},[n(a,null,{default:s(()=>[n(t)]),_:1}),l[6]||(l[6]=c(" 新增 "))]),p("div",{class:"red",onClick:G},[n(a,null,{default:s(()=>[n(_)]),_:1}),l[7]||(l[7]=c(" 批量删除 "))])]),limit_channel:s(({row:e})=>[p("div",P,[p("div",{class:h(1==e.limit_channel?"blue":"red")},u(R(m(U).searchFields[1].options,e.limit_channel)),3)])]),limit_type:s(({row:e})=>[p("div",I,[p("div",T,u(R(m(U).searchFields[2].options,e.limit_type)),1)])]),operate:s(({row:e})=>[p("div",q,[p("div",{class:"blue",onClick:l=>V(e)},[n(a,null,{default:s(()=>[n(v)]),_:1}),l[8]||(l[8]=c(" 修改 "))],8,C),p("div",{class:"blue",onClick:l=>(async e=>{y.confirm(`是否确认删除IP黑名单编号为"${e.id}"的数据项??`,"系统提示",{confirmButtonText:"确认",cancelButtonText:"取消",type:"warning"}).then(()=>{let l={ids:e.id};F(l).then(e=>{f.success(e),O()})}).catch(()=>{})})(e)},[n(a,null,{default:s(()=>[n(_)]),_:1}),l[9]||(l[9]=c(" 删除 "))],8,j)])]),_:1},8,["columns","searchFields","data","limit","page","total","loading"]),n(x,{showDialog:m(U).showProductDialog,"onUpdate:showDialog":l[4]||(l[4]=e=>m(U).showProductDialog=e),formData:m(U).productForm,"onUpdate:formData":l[5]||(l[5]=e=>m(U).productForm=e),ref_key:"productRef",ref:S},{submit:s(()=>[n(k,{type:"primary",onClick:m($)},{default:s(()=>l[10]||(l[10]=[c("确定")])),_:1,__:[10]},8,["onClick"])]),_:1},8,["showDialog","formData"])])}}},[["__scopeId","data-v-916c270d"]]);export{E as default};
|