import{B as x,_ as le,r as s,y as ae,o as te,j as oe,e as ne,c as F,a as n,b as l,w as t,d as i,g,h as y,k as $,l as D,F as ue,s as se,t as re,E as I,m as p}from"./index-CCJGmygT.js";async function de(){const{data:d}=await x.get("/system/config");return d}async function H(d){const{data:v}=await x.post("/system/config",d);return v}async function ie(){const{data:d}=await x.post("/schedule/execute",{});return d}async function me(){const{data:d}=await x.get("/proxy/config");return d}async function ce(d){const{data:v}=await x.post("/proxy/config",d);return v}async function pe(d){const{data:v}=await x.post("/proxy/test",d);return v}const ve={class:"page-stack"},ye={class:"app-page-title"},_e={class:"row-actions"},fe={class:"row-actions"},xe={__name:"SystemPage",setup(d){const v=s(!1),w=s(2),k=s(1),P=s(3),m=s(!1),C=s("02:00"),b=s("应读"),_=s(["1","2","3","4","5","6","7"]),V=s(!1),f=s(""),B=s(3),N=s(!1),h=s(10),U=s(7),j=[{label:"周一",value:"1"},{label:"周二",value:"2"},{label:"周三",value:"3"},{label:"周四",value:"4"},{label:"周五",value:"5"},{label:"周六",value:"6"},{label:"周日",value:"7"}],L={1:"周一",2:"周二",3:"周三",4:"周四",5:"周五",6:"周六",7:"周日"},O=ae(()=>(_.value||[]).map(a=>L[Number(a)]||a).join("、"));async function M(){v.value=!0;try{const[a,e]=await Promise.all([de(),me()]);w.value=a.max_concurrent_global??2,k.value=a.max_concurrent_per_account??1,P.value=a.max_screenshot_concurrent??3,m.value=(a.schedule_enabled??0)===1,C.value=a.schedule_time||"02:00",b.value=a.schedule_browse_type||"应读";const u=String(a.schedule_weekdays||"1,2,3,4,5,6,7").split(",").map(c=>c.trim()).filter(Boolean);_.value=u.length?u:["1","2","3","4","5","6","7"],N.value=(a.auto_approve_enabled??0)===1,h.value=a.auto_approve_hourly_limit??10,U.value=a.auto_approve_vip_days??7,V.value=(e.proxy_enabled??0)===1,f.value=e.proxy_api_url||"",B.value=e.proxy_expire_minutes??3}catch{}finally{v.value=!1}}async function W(){const a={max_concurrent_global:Number(w.value),max_concurrent_per_account:Number(k.value),max_screenshot_concurrent:Number(P.value)};try{await I.confirm(`确定更新并发配置吗? 全局并发数: ${a.max_concurrent_global} 单账号并发数: ${a.max_concurrent_per_account} 截图并发数: ${a.max_screenshot_concurrent}`,"保存并发配置",{confirmButtonText:"保存",cancelButtonText:"取消",type:"warning"})}catch{return}try{const e=await H(a);p.success(e?.message||"并发配置已更新")}catch{}}async function G(){if(m.value&&(!_.value||_.value.length===0)){p.error("请至少选择一个执行日期");return}const a={schedule_enabled:m.value?1:0,schedule_time:C.value,schedule_browse_type:b.value,schedule_weekdays:(_.value||[]).join(",")},e=m.value?`确定启用定时任务吗? 执行时间: 每天 ${a.schedule_time} 执行日期: ${O.value} 浏览类型: ${a.schedule_browse_type} 系统将自动执行所有账号的浏览任务(不包含截图)`:"确定关闭定时任务吗?";try{await I.confirm(e,"保存定时任务",{confirmButtonText:"确认",cancelButtonText:"取消",type:"warning"})}catch{return}try{const u=await H(a);p.success(u?.message||(m.value?"定时任务已启用":"定时任务已关闭"))}catch{}}async function R(){const a=`确定要立即执行定时任务吗? 这将执行所有账号的浏览任务 浏览类型: ${b.value} 注意:无视定时时间和执行日期配置,立即开始执行!`;try{await I.confirm(a,"立即执行",{confirmButtonText:"立即执行",cancelButtonText:"取消",type:"warning"})}catch{return}try{const e=await ie();p.success(e?.message||"定时任务已开始执行")}catch{}}async function q(){if(V.value&&!f.value.trim()){p.error("启用代理时,API地址不能为空");return}const a={proxy_enabled:V.value?1:0,proxy_api_url:f.value.trim(),proxy_expire_minutes:Number(B.value)||3};try{const e=await ce(a);p.success(e?.message||"代理配置已更新")}catch{}}async function z(){if(!f.value.trim()){p.error("请先输入代理API地址");return}try{const a=await pe({api_url:f.value.trim()});await I.alert(a?.message||"测试完成","代理测试",{confirmButtonText:"知道了"})}catch{}}async function J(){const a=Number(h.value),e=Number(U.value);if(!Number.isFinite(a)||a<1){p.error("每小时注册限制必须大于0");return}if(!Number.isFinite(e)||e<0){p.error("VIP天数不能为负数");return}const u={auto_approve_enabled:N.value?1:0,auto_approve_hourly_limit:a,auto_approve_vip_days:e};try{const c=await H(u);p.success(c?.message||"自动审核配置已保存")}catch{}}return te(M),(a,e)=>{const u=i("el-button"),c=i("el-input-number"),r=i("el-form-item"),A=i("el-form"),T=i("el-card"),S=i("el-switch"),K=i("el-time-picker"),E=i("el-option"),Q=i("el-select"),X=i("el-checkbox"),Y=i("el-checkbox-group"),Z=i("el-input"),ee=ne("loading");return oe((g(),F("div",ve,[n("div",ye,[e[14]||(e[14]=n("h2",null,"系统配置",-1)),n("div",null,[l(u,{onClick:M},{default:t(()=>[...e[13]||(e[13]=[y("刷新",-1)])]),_:1})])]),l(T,{shadow:"never","body-style":{padding:"16px"},class:"card"},{default:t(()=>[e[19]||(e[19]=n("h3",{class:"section-title"},"系统并发配置",-1)),l(A,{"label-width":"130px"},{default:t(()=>[l(r,{label:"全局最大并发数"},{default:t(()=>[l(c,{modelValue:w.value,"onUpdate:modelValue":e[0]||(e[0]=o=>w.value=o),min:1,max:200},null,8,["modelValue"]),e[15]||(e[15]=n("div",{class:"help"},"同时最多运行的账号数量(浏览任务使用 API 方式,资源占用较低)。",-1))]),_:1}),l(r,{label:"单账号最大并发数"},{default:t(()=>[l(c,{modelValue:k.value,"onUpdate:modelValue":e[1]||(e[1]=o=>k.value=o),min:1,max:50},null,8,["modelValue"]),e[16]||(e[16]=n("div",{class:"help"},"单个账号同时最多运行的任务数量(建议设为 1)。",-1))]),_:1}),l(r,{label:"截图最大并发数"},{default:t(()=>[l(c,{modelValue:P.value,"onUpdate:modelValue":e[2]||(e[2]=o=>P.value=o),min:1,max:50},null,8,["modelValue"]),e[17]||(e[17]=n("div",{class:"help"},"同时进行截图的最大数量(每个浏览器约占用 200MB 内存)。",-1))]),_:1})]),_:1}),l(u,{type:"primary",onClick:W},{default:t(()=>[...e[18]||(e[18]=[y("保存并发配置",-1)])]),_:1})]),_:1}),l(T,{shadow:"never","body-style":{padding:"16px"},class:"card"},{default:t(()=>[e[22]||(e[22]=n("h3",{class:"section-title"},"定时任务配置",-1)),l(A,{"label-width":"130px"},{default:t(()=>[l(r,{label:"启用定时任务"},{default:t(()=>[l(S,{modelValue:m.value,"onUpdate:modelValue":e[3]||(e[3]=o=>m.value=o)},null,8,["modelValue"])]),_:1}),m.value?(g(),$(r,{key:0,label:"执行时间"},{default:t(()=>[l(K,{modelValue:C.value,"onUpdate:modelValue":e[4]||(e[4]=o=>C.value=o),"value-format":"HH:mm",format:"HH:mm"},null,8,["modelValue"])]),_:1})):D("",!0),m.value?(g(),$(r,{key:1,label:"浏览类型"},{default:t(()=>[l(Q,{modelValue:b.value,"onUpdate:modelValue":e[5]||(e[5]=o=>b.value=o),style:{width:"220px"}},{default:t(()=>[l(E,{label:"注册前未读",value:"注册前未读"}),l(E,{label:"应读",value:"应读"}),l(E,{label:"未读",value:"未读"})]),_:1},8,["modelValue"])]),_:1})):D("",!0),m.value?(g(),$(r,{key:2,label:"执行日期"},{default:t(()=>[l(Y,{modelValue:_.value,"onUpdate:modelValue":e[6]||(e[6]=o=>_.value=o)},{default:t(()=>[(g(),F(ue,null,se(j,o=>l(X,{key:o.value,label:o.value},{default:t(()=>[y(re(o.label),1)]),_:2},1032,["label"])),64))]),_:1},8,["modelValue"])]),_:1})):D("",!0)]),_:1}),n("div",_e,[l(u,{type:"primary",onClick:G},{default:t(()=>[...e[20]||(e[20]=[y("保存定时任务配置",-1)])]),_:1}),l(u,{type:"success",plain:"",onClick:R},{default:t(()=>[...e[21]||(e[21]=[y("立即执行",-1)])]),_:1})])]),_:1}),l(T,{shadow:"never","body-style":{padding:"16px"},class:"card"},{default:t(()=>[e[27]||(e[27]=n("h3",{class:"section-title"},"代理设置",-1)),l(A,{"label-width":"130px"},{default:t(()=>[l(r,{label:"启用IP代理"},{default:t(()=>[l(S,{modelValue:V.value,"onUpdate:modelValue":e[7]||(e[7]=o=>V.value=o)},null,8,["modelValue"]),e[23]||(e[23]=n("div",{class:"help"},"开启后,所有浏览任务将通过代理IP访问(失败自动重试3次)。",-1))]),_:1}),l(r,{label:"代理API地址"},{default:t(()=>[l(Z,{modelValue:f.value,"onUpdate:modelValue":e[8]||(e[8]=o=>f.value=o),placeholder:"http://api.xxx/Tools/IP.ashx?..."},null,8,["modelValue"]),e[24]||(e[24]=n("div",{class:"help"},"API 应返回:IP:PORT(例如 123.45.67.89:8888)。",-1))]),_:1}),l(r,{label:"代理有效期(分钟)"},{default:t(()=>[l(c,{modelValue:B.value,"onUpdate:modelValue":e[9]||(e[9]=o=>B.value=o),min:1,max:60},null,8,["modelValue"])]),_:1})]),_:1}),n("div",fe,[l(u,{type:"primary",onClick:q},{default:t(()=>[...e[25]||(e[25]=[y("保存代理配置",-1)])]),_:1}),l(u,{onClick:z},{default:t(()=>[...e[26]||(e[26]=[y("测试代理",-1)])]),_:1})])]),_:1}),l(T,{shadow:"never","body-style":{padding:"16px"},class:"card"},{default:t(()=>[e[30]||(e[30]=n("h3",{class:"section-title"},"注册自动审核",-1)),l(A,{"label-width":"130px"},{default:t(()=>[l(r,{label:"启用自动审核"},{default:t(()=>[l(S,{modelValue:N.value,"onUpdate:modelValue":e[10]||(e[10]=o=>N.value=o)},null,8,["modelValue"]),e[28]||(e[28]=n("div",{class:"help"},"开启后,新用户注册将自动通过审核,无需管理员手动审批。",-1))]),_:1}),l(r,{label:"每小时注册限制"},{default:t(()=>[l(c,{modelValue:h.value,"onUpdate:modelValue":e[11]||(e[11]=o=>h.value=o),min:1,max:1e4},null,8,["modelValue"])]),_:1}),l(r,{label:"注册赠送VIP天数"},{default:t(()=>[l(c,{modelValue:U.value,"onUpdate:modelValue":e[12]||(e[12]=o=>U.value=o),min:0,max:999999},null,8,["modelValue"])]),_:1})]),_:1}),l(u,{type:"primary",onClick:J},{default:t(()=>[...e[29]||(e[29]=[y("保存自动审核配置",-1)])]),_:1})]),_:1})])),[[ee,v.value]])}}},Ve=le(xe,[["__scopeId","data-v-6af756b3"]]);export{Ve as default};