From 06768702042499718271b516434f94f22e070e46 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9Cwanyongkang=E2=80=9D?= <“937888580@qq.com”> Date: Mon, 11 Oct 2021 14:49:15 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=88=E9=94=8B=E8=B8=A2=E7=BA=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Host/Views/User/MyAccounts.cshtml | 11 ++- .../Controllers/ProductAccountController.cs | 74 ++++++------------- .../Request/Product/AccountPageRequest.cs | 1 + .../Service/AgentClient5Service.cs | 16 +++- 4 files changed, 43 insertions(+), 59 deletions(-) diff --git a/Host/Views/User/MyAccounts.cshtml b/Host/Views/User/MyAccounts.cshtml index a08b517..7eb90f5 100644 --- a/Host/Views/User/MyAccounts.cshtml +++ b/Host/Views/User/MyAccounts.cshtml @@ -233,7 +233,8 @@
- + +

@@ -911,15 +912,17 @@ this.onLineData = []; }, killout: function (item) { + $("#online_status").text("正在踢线......"); var that = this; $.ajax({ type: 'GET', url: '/api/course/v1/productaccount/KillOut?productId=' + item.ProductId + '&id=' + item.Id, success: function (res) { - alert("操作成功"); - this.onLineData = []; if (res.Code == 10000) { - that.online(item.ProductId, item.Account) + $("#online_status").text("断开成功!"); + that.online(item.ProductId, item.Account); + } else { + $("#online_status").text("断开失败!"); } } }); diff --git a/Services/Hncore.Pass.Vpn/Controllers/ProductAccountController.cs b/Services/Hncore.Pass.Vpn/Controllers/ProductAccountController.cs index c1e2706..efd4077 100644 --- a/Services/Hncore.Pass.Vpn/Controllers/ProductAccountController.cs +++ b/Services/Hncore.Pass.Vpn/Controllers/ProductAccountController.cs @@ -451,7 +451,12 @@ namespace Hncore.Pass.Vpn.Controllers [AllowAnonymous] public virtual async Task KillOut(int productId, string id) { - return Success(await m_agentService.KillOut(productId, id)); + var status = await m_agentService.KillOut(productId, id); + if (status) { + return Success(status); + } else { + return Error(""); + } } [HttpGet] @@ -459,7 +464,7 @@ namespace Hncore.Pass.Vpn.Controllers { Expression> expr = m => 1 == 1; - + expr = expr.And(m => m.DeleteTag == 0); if (request.UserId > 0) { expr = expr.And(m => m.UserId == request.UserId); @@ -471,13 +476,13 @@ namespace Hncore.Pass.Vpn.Controllers || m.PackageName.Contains(request.KeyWord) || m.Account.Contains(request.KeyWord)); } - if (request.ProductIds != null && request.ProductIds.Count > 0) + if (request.ProductId != null && request.ProductId > 0) { - expr = expr.And(m =>request.ProductIds.Contains((int)m.ProductId)); + expr = expr.And(m =>m.ProductId==request.ProductId); } - if (request.PackageNames != null && request.PackageNames.Count > 0) + if (request.PackageName != null) { - expr = expr.And(m =>request.PackageNames.Contains((string)m.PackageName)); + expr = expr.And(m =>request.PackageName==m.PackageName); } if (request.AccountTypes!=null&&request.AccountTypes.Count>0) { @@ -491,58 +496,23 @@ namespace Hncore.Pass.Vpn.Controllers { expr = expr.And(m => m.StartTime>=request.BkTime&&m.StartTime<=request.EkTime); } - if (request.ExpirdDay > -1) + if (request.ExpirdDay > -100) { if (request.ExpirdDay == 0) { expr = expr.And(m => m.EndTime.Value < DateTime.Now); - } - else - { - var startTime = DateTime.Now.Begin().AddDays(request.ExpirdDay); - startTime = startTime < DateTime.Now ? DateTime.Now : startTime; - var EndTime = DateTime.Now.End().AddDays(request.ExpirdDay); - expr = expr.And(m => m.EndTime >= startTime && m.EndTime <= EndTime); - } + }else if(request.ExpirdDay == -2){ + expr = expr.And(m => m.EndTime.Value > DateTime.Now); + } else if (request.ExpirdDay < 0 && request.ExpirdDay>-4) { + expr = expr.And(m => Math.Ceiling((DateTime.Now - m.EndTime).Value.TotalDays) <= Math.Abs(request.ExpirdDay) && m.EndTime < DateTime.Now); + } else if (request.ExpirdDay==-4) { + expr = expr.And(m => Math.Ceiling((m.EndTime - DateTime.Now).Value.TotalDays) <= -4); + }else if (request.ExpirdDay > 0){ + expr = expr.And(m => Math.Ceiling((m.EndTime - DateTime.Now).Value.TotalDays) <= request.ExpirdDay && m.EndTime > DateTime.Now); + } + expr = expr.And(m => m.PackageName != "测试卡"); // expr = expr.And(m => Math.Ceiling((m.EndTime - DateTime.Now).Value.TotalDays) == request.ExpirdDay); } - - - // if (request.UserId > 0) - // { - // expr = expr.And(m => m.UserId == request.UserId); - // } - // if (request.KeyWord.Has()) - // { - // expr = expr.And(m => m.Account.Contains(request.KeyWord)); - // } - // if (request.ProductId.HasValue) - // { - // expr = expr.And(m => m.ProductId == request.ProductId); - // } - // if (request.PackageId.HasValue) - // { - // expr = expr.And(m => m.PackageId == request.PackageId); - // } - // if (request.AccountTypes != null && request.AccountTypes.Count > 0) - // { - // expr = expr.And(m => request.AccountTypes.Contains(m.AccountType)); - // } - // if (request.ExpirdDay > -1) - // { - // if (request.ExpirdDay == 0) - // { - // expr = expr.And(m => m.EndTime.Value < DateTime.Now); - // } - // else - // { - // var startTime = DateTime.Now.Begin().AddDays(request.ExpirdDay); - // startTime = startTime < DateTime.Now ? DateTime.Now : startTime; - // var EndTime = DateTime.Now.End().AddDays(request.ExpirdDay); - // expr = expr.And(m => m.EndTime >= startTime && m.EndTime <= EndTime); - // } - // // expr = expr.And(m => Math.Ceiling((m.EndTime - DateTime.Now).Value.TotalDays) == request.ExpirdDay); - // } var ret = await m_AccountService.PageDesc(request.PageIndex,10000, expr, true, m => m.Id); var data = new ExcelData diff --git a/Services/Hncore.Pass.Vpn/Request/Product/AccountPageRequest.cs b/Services/Hncore.Pass.Vpn/Request/Product/AccountPageRequest.cs index b3956be..f94a2fd 100644 --- a/Services/Hncore.Pass.Vpn/Request/Product/AccountPageRequest.cs +++ b/Services/Hncore.Pass.Vpn/Request/Product/AccountPageRequest.cs @@ -15,6 +15,7 @@ namespace Hncore.Pass.Vpn.Request.Product public int? ProductId { get; set; } public int? PackageId { get; set; } + public string PackageName { get; set; } public List AccountTypes { get; set; } diff --git a/Services/Hncore.Pass.Vpn/Service/AgentClient5Service.cs b/Services/Hncore.Pass.Vpn/Service/AgentClient5Service.cs index b00f3a3..3c7a9e4 100644 --- a/Services/Hncore.Pass.Vpn/Service/AgentClient5Service.cs +++ b/Services/Hncore.Pass.Vpn/Service/AgentClient5Service.cs @@ -327,7 +327,7 @@ namespace Hncore.Pass.Vpn.Service LoginIP = jsondata["client_ip"].ToString(), UpStream = "", DownStream = "", - Id= "&user="+account+"&address="+jsondata["address"].ToString()+"&server_ip="+jsondata["server_ip"].ToString(), + Id = "user="+account+"-address="+jsondata["address"].ToString()+"-server_ip="+jsondata["server_ip"].ToString(), }; @@ -348,11 +348,18 @@ namespace Hncore.Pass.Vpn.Service /// public override async Task KillOut(string id) { - + var ids = ""; + if(id.Contains("-")){ + string[] arrStr = id.Split('-'); + ids = arrStr[0]+"&"+arrStr[1]+"&"+arrStr[2]; + } + Console.WriteLine("==============在线============================================================================"); + Console.WriteLine(ids); + Console.WriteLine("==============在线============================================================================"); var secretId = "626B6170693231"; var secretKey = "6b3fdfc206841f44c6609bf19c182a6a"; - var url = "http://bkapi.pptp.biz/userapi3/?secretId="+secretId+"&secretKey="+secretKey+"&type=user_online_offline"+id; + var url = "http://bkapi.pptp.biz/userapi3/?secretId="+secretId+"&secretKey="+secretKey+"&type=user_online_offline&"+ids; var client = CreateHttpClient(); @@ -360,6 +367,9 @@ namespace Hncore.Pass.Vpn.Service var content = await resp.Content.ReadAsStringAsync(); JObject jo = (JObject)JsonConvert.DeserializeObject(content); var status = jo["code"].ToString(); + Console.WriteLine("==============在线============================================================================"); + Console.WriteLine(jo); + Console.WriteLine("==============在线============================================================================"); if (status =="1") { return true;