From afc0f2519273f476e7e0db08a7594315a876814d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E6=BD=87=E9=98=B3?= Date: Wed, 27 Sep 2023 09:57:47 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=BE=AE=E4=BF=A1?= =?UTF-8?q?=E9=80=9A=E4=BF=A1=E4=B8=BB=E6=9C=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 24Hour/Program.cs | 11 +++++-- 24Hour/WechatMessagerClient.cs | 57 ++++++++++++++++++++++++++++++++++ 2 files changed, 66 insertions(+), 2 deletions(-) create mode 100644 24Hour/WechatMessagerClient.cs diff --git a/24Hour/Program.cs b/24Hour/Program.cs index 6a24efa..e992b0c 100644 --- a/24Hour/Program.cs +++ b/24Hour/Program.cs @@ -16,9 +16,10 @@ using Quartz.Spi; using Microsoft.IdentityModel.Logging; using System.Collections.Specialized; using System.Runtime.InteropServices; - +using _24Hour; + #region builder - + var builder = WebApplication.CreateBuilder(args); var Configuration = builder.Configuration; @@ -152,6 +153,12 @@ builder.Services.AddAuthentication(options => }).AddScheme(nameof(ResponseAuthenticationHandler), o => { }); + +builder.Services.AddHttpClient(opt => +{ + opt.BaseAddress = new Uri("https://api.weixin.qq.com/sns"); +}); + //builder.Services.AddAuthorization(); builder.Services.AddHttpContextAccessor(); builder.Services.AddScoped(); diff --git a/24Hour/WechatMessagerClient.cs b/24Hour/WechatMessagerClient.cs new file mode 100644 index 0000000..092837f --- /dev/null +++ b/24Hour/WechatMessagerClient.cs @@ -0,0 +1,57 @@ +using com.sun.org.apache.bcel.@internal.generic; +using com.sun.xml.@internal.xsom; +using Elight.Utility; +using Elight.Utility.Code; +using Newtonsoft.Json; + +namespace _24Hour +{ + + public class WechatMessagerClient + { + private readonly HttpClient httpCliet; + public WechatMessagerClient(HttpClient _httpCliet) + { + this.httpCliet = _httpCliet; + + httpCliet.DefaultRequestHeaders.Add("Accept", "application/json"); + httpCliet.DefaultRequestHeaders.Add("User-Agent", "HttpClientFactory-Sample"); + httpCliet.DefaultRequestHeaders.ConnectionClose = true; + } + + /// + /// 小程序AppID + /// + private const string appid = "wx48108a0c98a3dab0"; + /// + /// 小程序secretID + /// + private const string secid = "e752e4fba67526eca21313a18c96a58f"; + public async Task GetOpenId(string code) + { + var ret = new Result(); + var reponse = await httpCliet.GetAsync($"/sns/jscode2session?appid={appid}&secret={secid}&js_code={code}&grant_type=authorization_code"); + var opendata = await reponse.EnsureSuccessStatusCode().Content.ReadAsStringAsync(); + var data = JsonConvert.DeserializeAnonymousType(opendata, new + { + openid = default(string), + session_key = default(string), + unionid = default(string), + errcode = default(int), + errmsg = default(string), + }); + if (data.errcode == 0) + { + ret.IsSucceed = true; + ret.result = data.openid; + } + else + { + ret.IsSucceed = false; + ret.Message = data.errmsg; + } + return ret; + } + + } +} From f05e714e126d289fa40725aebbee6070e68a216e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E6=BD=87=E9=98=B3?= Date: Wed, 27 Sep 2023 09:58:41 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E7=BB=91=E5=AE=9A=E5=BE=AE=E4=BF=A1openid=E5=92=8C=E8=A7=A3?= =?UTF-8?q?=E9=99=A4=E7=BB=91=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/SystemControllerController.cs | 65 +++++++++++++++++++ 1 file changed, 65 insertions(+) diff --git a/24Hour/Controllers/system/SystemControllerController.cs b/24Hour/Controllers/system/SystemControllerController.cs index b48aa1e..82d1a86 100644 --- a/24Hour/Controllers/system/SystemControllerController.cs +++ b/24Hour/Controllers/system/SystemControllerController.cs @@ -274,6 +274,71 @@ namespace _24Hour.Controllers.system return result; } + [HttpGet] + [Route("UserUnbindWechat")] + public async Task UserUnbindWechat() + { + try + { + var model = await _db.Queryable().Where(x => x.Id == _userdata.Id && x.IsDeleted == 0).FirstAsync(); + if (model != null) + { + model.wechatId = string.Empty; + } + _db.BeginTran(); + var num = await _db.Updateable(model).UpdateColumns(it => new { it.wechatId }).ExecuteCommandAsync(); + //var num = await _db.Updateable(UserModel).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommandAsync(); + _db.CommitTran(); + if (num > 0) + { + result.IsSucceed = true; + result.result = ""; + } + } + catch (System.Exception ex) + { + _db.RollbackTran(); + result.IsSucceed = false; + result.Message = ex.Message; + } + _logs.WriteSysLogadd("用户管理", "修改人员信息", result, _db); + return result; + } + + /// + /// 用户绑定微信openid + /// + /// + /// + [HttpGet] + [Route("UserBindWechat")] + public async Task UserBindWechat(string code) + { + try + { + var getopenid = await wechatMessagerClient.GetOpenId(code); + if (getopenid.IsSucceed == false) + { + return getopenid; + } + string openid = getopenid.result; + + if (await _db.Queryable().AnyAsync(x => x.wechatId == openid && x.IsDeleted == 0)) + { + result.IsSucceed = false; + result.Message = "当前微信已与其他账号绑定"; + return result; + } + catch (System.Exception ex) + { + _db.RollbackTran(); + result.IsSucceed = false; + result.Message = ex.Message; + } + _logs.WriteSysLogadd("用户管理", "修改人员信息", result, _db); + return result; + } + /// /// 删除用户 /// From 8e2c8ccf2da0eb78ade5e75a69fa5ee38e4ea260 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E6=BD=87=E9=98=B3?= Date: Wed, 27 Sep 2023 10:03:01 +0800 Subject: [PATCH 3/5] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=BE=AE=E4=BF=A1?= =?UTF-8?q?=E7=99=BB=E9=99=86=E6=97=B6=E5=BE=8B=E5=B8=88=E8=BA=AB=E4=BB=BD?= =?UTF-8?q?=E9=AA=8C=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 24Hour/Controllers/LoginController.cs | 85 +++++++++++++-------------- 1 file changed, 42 insertions(+), 43 deletions(-) diff --git a/24Hour/Controllers/LoginController.cs b/24Hour/Controllers/LoginController.cs index 2476d12..1780a5c 100644 --- a/24Hour/Controllers/LoginController.cs +++ b/24Hour/Controllers/LoginController.cs @@ -34,13 +34,15 @@ namespace _24Hour.Controllers private readonly IConfiguration _configuration; private readonly SqlSugarClient _db;//ݿ private readonly WriteSysLog _logs;//־ - private readonly ILogger _logger;//־ + private readonly ILogger _logger;//־ + private readonly WechatMessagerClient wechatMessagerClient; Result ret = new Result(); - public LoginController(ILogger logger, SqlSugarClient db, IConfiguration configuration) + public LoginController(ILogger logger, SqlSugarClient db, IConfiguration configuration, WechatMessagerClient _wechatMessagerClient) { _logger = logger; _db = db; _configuration = configuration; + this.wechatMessagerClient = _wechatMessagerClient; } [HttpPost] @@ -313,9 +315,9 @@ namespace _24Hour.Controllers public async Task WeChatLoginByCode(string code) { var opendata = await GetOpenId(code); - if (opendata.IsSucceed==true) + if (opendata.IsSucceed == true) { - return WeChatLogin(opendata.result); + return await WeChatLogin(opendata.result); } else { @@ -335,20 +337,32 @@ namespace _24Hour.Controllers { var date = await _db.Queryable().Where(q => q.IsDeleted == 0 && q.isdeactivate == 0 && q.wechatId == openId).FirstAsync(); if (date != null) - { - //if (date.usertype == 1 && date.audit == null) - //{ - // ret.IsSucceed = false; - // ret.Message = "˺У"; - // return ret; - //} - //else if (date.usertype == 1 && date.audit == 1) - //{ - // ret.IsSucceed = false; - // ret.Message = $"˺δͨԭ{date.describe}"; - // return ret; - //} - //else + { + //if (date.usertype == 1 && date.audit == null) + //{ + // ret.IsSucceed = false; + // ret.Message = "˺У"; + // return ret; + //} + //else if (date.usertype == 1 && date.audit == 1) + //{ + // ret.IsSucceed = false; + // ret.Message = $"˺δͨԭ{date.describe}"; + // return ret; + //} + //else + if (date.identity == "ʦ" && date.audit == 1) + { + ret.IsSucceed = false; + ret.Message = $"ûϢδͨԭ{date.describe}עᣡ"; + return ret; + } + else if (date.identity == "ʦ" && date.audit == 2) + { + ret.IsSucceed = false; + ret.Message = "ûϢУ"; + return ret; + } if (date.usertype == 0 && date.becurrent == 1) { ret.IsSucceed = false; @@ -386,7 +400,8 @@ namespace _24Hour.Controllers identity = date.identity, usertype = date.usertype, unitCode = date.unitCode, - token = tokenString + token = tokenString, + openId = date.wechatId }; #endregion ret.IsSucceed = true; @@ -394,7 +409,7 @@ namespace _24Hour.Controllers else { ret.IsSucceed = false; - ret.Message = "΢δȨ"; + ret.Message = "΢δȨע˺ţ"; } return ret; } @@ -410,6 +425,12 @@ namespace _24Hour.Controllers { try { + if (string.IsNullOrEmpty(UserModel.wechatId) && await _db.Queryable().AnyAsync(x => x.wechatId == UserModel.wechatId && x.IsDeleted == 0)) + { + ret.IsSucceed = false; + ret.Message = "ǰ΢˺Ű"; + return ret; + } var data = await _db.Queryable().Where(q => q.phone == UserModel.phone && q.IsDeleted == 0).FirstAsync(); if (UserModel.identity == "ʦ") @@ -618,29 +639,7 @@ namespace _24Hour.Controllers /// /// [HttpGet("getOpenid")] - public async Task GetOpenId(string code) - { - var opendata = HttpHelper.Get($"https://api.weixin.qq.com/sns/jscode2session?appid={appid}&secret={secid}&js_code={code}&grant_type=authorization_code"); - var data = JsonConvert.DeserializeAnonymousType(opendata, new - { - openid=default(string), - session_key = default(string), - unionid = default(string), - errcode = default(int), - errmsg = default(string), - }); - if (data.errcode==0) - { - ret.IsSucceed = true; - ret.result = data.openid; - } - else - { - ret.IsSucceed = false; - ret.Message = data.errmsg; - } - return ret; - } + public Task GetOpenId(string code) => wechatMessagerClient.GetOpenId(code); } From e9b697201851e262f7c46d36983c1f8edae2683c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E6=BD=87=E9=98=B3?= Date: Wed, 27 Sep 2023 10:03:35 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E7=BB=91=E5=AE=9Aopenid?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/SystemControllerController.cs | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/24Hour/Controllers/system/SystemControllerController.cs b/24Hour/Controllers/system/SystemControllerController.cs index 82d1a86..d8cff4f 100644 --- a/24Hour/Controllers/system/SystemControllerController.cs +++ b/24Hour/Controllers/system/SystemControllerController.cs @@ -329,6 +329,23 @@ namespace _24Hour.Controllers.system result.Message = "当前微信已与其他账号绑定"; return result; } + + + var model = await _db.Queryable().Where(x => x.Id == _userdata.Id && x.IsDeleted == 0).FirstAsync(); + if (model != null) + { + model.wechatId = getopenid.result; + } + _db.BeginTran(); + var num = await _db.Updateable(model).UpdateColumns(it => new { it.wechatId }).ExecuteCommandAsync(); + //var num = await _db.Updateable(UserModel).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommandAsync(); + _db.CommitTran(); + if (num > 0) + { + result.IsSucceed = true; + result.result = getopenid.result; + } + } catch (System.Exception ex) { _db.RollbackTran(); From 6abdb18317bc59d4724564299cce5f97cdcc20d9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E6=BD=87=E9=98=B3?= Date: Wed, 27 Sep 2023 10:04:30 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E8=B0=83=E6=95=B4=E6=A0=BC=E5=BC=8F,?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=BE=AE=E4=BF=A1=E9=80=9A=E4=BF=A1=E4=B8=BB?= =?UTF-8?q?=E6=9C=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/SystemControllerController.cs | 127 +++++++++--------- 1 file changed, 65 insertions(+), 62 deletions(-) diff --git a/24Hour/Controllers/system/SystemControllerController.cs b/24Hour/Controllers/system/SystemControllerController.cs index d8cff4f..243601f 100644 --- a/24Hour/Controllers/system/SystemControllerController.cs +++ b/24Hour/Controllers/system/SystemControllerController.cs @@ -1,4 +1,5 @@ -using com.sun.xml.@internal.ws.api.model; +using com.sun.org.apache.bcel.@internal.generic; +using com.sun.xml.@internal.ws.api.model; using Elight.Entity; using Elight.Entity.SystemModel; using Elight.Logic; @@ -28,13 +29,15 @@ namespace _24Hour.Controllers.system private readonly WriteSysLog _logs;//操作日志 App_Sys_UserModel _userdata = new App_Sys_UserModel();//当前用户 private readonly ILogger _logger;//日志 + private readonly WechatMessagerClient wechatMessagerClient; Result result = new Result(); - public SystemControllerController(ILogger logger, SqlSugarClient db, WriteSysLog logs, User user) + public SystemControllerController(ILogger logger, SqlSugarClient db, WriteSysLog logs, User user, WechatMessagerClient _wechatMessagerClient) { _logger = logger; _db = db; _logs = logs; _userdata = user.Userdata(); + this.wechatMessagerClient = _wechatMessagerClient; } #endregion #region 用户管理 @@ -61,7 +64,7 @@ namespace _24Hour.Controllers.system [Route("QueryUserlist")] public async Task QueryUserlist() { - var Unitlist = await _db.Queryable().Where(q => q.IsDeleted == 0 && q.isdeactivate == 0 && q.usertype == 0 && q.unitCode == _userdata.unitCode && q.phone != "admin"&& q.usertype == 0).ToListAsync(); + var Unitlist = await _db.Queryable().Where(q => q.IsDeleted == 0 && q.isdeactivate == 0 && q.usertype == 0 && q.unitCode == _userdata.unitCode && q.phone != "admin" && q.usertype == 0).ToListAsync(); result.IsSucceed = true; result.result = Unitlist.OrderByDescending(q => q.createtime).ToList(); return result; @@ -85,7 +88,7 @@ namespace _24Hour.Controllers.system .WhereIF(!UserModel.phone.IsNull(), q => q.phone.Contains(UserModel.phone)) .WhereIF(!UserModel.duties.IsNull(), q => q.duties.Contains(UserModel.duties)) .WhereIF(!UserModel.cardId.IsNull(), q => q.cardId.Contains(UserModel.cardId)) - .Where(q => q.IsDeleted == 0 &&q.phone!="admin" && q.usertype == 0) + .Where(q => q.IsDeleted == 0 && q.phone != "admin" && q.usertype == 0) .ToPageListAsync(UserModel.PageIndex, UserModel.PageSize, totalNumber); UserModel.RowsCount = totalNumber; list.ForEach(q => @@ -134,7 +137,7 @@ namespace _24Hour.Controllers.system .WhereIF(!UserModel.phone.IsNull(), q => q.phone.Contains(UserModel.phone)) .WhereIF(!UserModel.duties.IsNull(), q => q.duties.Contains(UserModel.duties)) .WhereIF(!UserModel.cardId.IsNull(), q => q.cardId.Contains(UserModel.cardId)) - .WhereIF(UserModel.audit!=null, q => q.audit==UserModel.audit) + .WhereIF(UserModel.audit != null, q => q.audit == UserModel.audit) .Where(q => q.IsDeleted == 0 && q.usertype == 1).ToPageListAsync(UserModel.PageIndex, UserModel.PageSize, totalNumber); UserModel.RowsCount = totalNumber; var data = new QueryResult(UserModel, list); @@ -196,7 +199,7 @@ namespace _24Hour.Controllers.system { try { - var model = await _db.Queryable().Where(x => x.Id== UserModel.Id).FirstAsync(); + var model = await _db.Queryable().Where(x => x.Id == UserModel.Id).FirstAsync(); if (model == null) { result.IsSucceed = false; @@ -211,10 +214,10 @@ namespace _24Hour.Controllers.system return result; } - model.Password= newpass; + model.Password = newpass; _db.BeginTran(); - var num = await _db.Updateable(model).UpdateColumns(it => new { it.Password }).ExecuteCommandAsync(); + var num = await _db.Updateable(model).UpdateColumns(it => new { it.Password }).ExecuteCommandAsync(); _db.CommitTran(); if (num > 0) { @@ -243,16 +246,16 @@ namespace _24Hour.Controllers.system { try { - var model = await _db.Queryable().Where(x => x.Id== UserModel.Id).FirstAsync(); + var model = await _db.Queryable().Where(x => x.Id == UserModel.Id).FirstAsync(); if (model != null) { - model.unitCode=UserModel.unitCode; - model.department=UserModel.department; - model.name=UserModel.name; - model.sex=UserModel.sex; - model.duties=UserModel.duties; - model.phone=UserModel.phone; - model.cardId=UserModel.cardId; + model.unitCode = UserModel.unitCode; + model.department = UserModel.department; + model.name = UserModel.name; + model.sex = UserModel.sex; + model.duties = UserModel.duties; + model.phone = UserModel.phone; + model.cardId = UserModel.cardId; } _db.BeginTran(); var num = await _db.Updateable(model).UpdateColumns(it => new { it.unitCode, it.department, it.name, it.sex, it.duties, it.phone, it.cardId }).ExecuteCommandAsync(); @@ -272,21 +275,21 @@ namespace _24Hour.Controllers.system } _logs.WriteSysLogadd("用户管理", "修改人员信息", result, _db); return result; - } - + } + [HttpGet] - [Route("UserUnbindWechat")] - public async Task UserUnbindWechat() - { + [Route("UserUnbindWechat")] + public async Task UserUnbindWechat() + { try - { + { var model = await _db.Queryable().Where(x => x.Id == _userdata.Id && x.IsDeleted == 0).FirstAsync(); - if (model != null) - { - model.wechatId = string.Empty; + if (model != null) + { + model.wechatId = string.Empty; } - _db.BeginTran(); - var num = await _db.Updateable(model).UpdateColumns(it => new { it.wechatId }).ExecuteCommandAsync(); + _db.BeginTran(); + var num = await _db.Updateable(model).UpdateColumns(it => new { it.wechatId }).ExecuteCommandAsync(); //var num = await _db.Updateable(UserModel).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommandAsync(); _db.CommitTran(); if (num > 0) @@ -302,42 +305,42 @@ namespace _24Hour.Controllers.system result.Message = ex.Message; } _logs.WriteSysLogadd("用户管理", "修改人员信息", result, _db); - return result; - } - - /// - /// 用户绑定微信openid - /// - /// - /// + return result; + } + + /// + /// 用户绑定微信openid + /// + /// + /// [HttpGet] [Route("UserBindWechat")] - public async Task UserBindWechat(string code) - { + public async Task UserBindWechat(string code) + { try { var getopenid = await wechatMessagerClient.GetOpenId(code); - if (getopenid.IsSucceed == false) - { - return getopenid; - } - string openid = getopenid.result; - - if (await _db.Queryable().AnyAsync(x => x.wechatId == openid && x.IsDeleted == 0)) - { + if (getopenid.IsSucceed == false) + { + return getopenid; + } + string openid = getopenid.result; + + if (await _db.Queryable().AnyAsync(x => x.wechatId == openid && x.IsDeleted == 0)) + { result.IsSucceed = false; - result.Message = "当前微信已与其他账号绑定"; - return result; - } - - + result.Message = "当前微信已与其他账号绑定"; + return result; + } + + var model = await _db.Queryable().Where(x => x.Id == _userdata.Id && x.IsDeleted == 0).FirstAsync(); - if (model != null) - { - model.wechatId = getopenid.result; + if (model != null) + { + model.wechatId = getopenid.result; } - _db.BeginTran(); - var num = await _db.Updateable(model).UpdateColumns(it => new { it.wechatId }).ExecuteCommandAsync(); + _db.BeginTran(); + var num = await _db.Updateable(model).UpdateColumns(it => new { it.wechatId }).ExecuteCommandAsync(); //var num = await _db.Updateable(UserModel).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommandAsync(); _db.CommitTran(); if (num > 0) @@ -353,7 +356,7 @@ namespace _24Hour.Controllers.system result.Message = ex.Message; } _logs.WriteSysLogadd("用户管理", "修改人员信息", result, _db); - return result; + return result; } /// @@ -585,7 +588,7 @@ namespace _24Hour.Controllers.system /// 律师信息审核认证 [HttpGet] [Route("Examine")] - public async Task Examine(string Id, int status,string describe) + public async Task Examine(string Id, int status, string describe) { try { @@ -601,7 +604,7 @@ namespace _24Hour.Controllers.system if (num > 0) { result.IsSucceed = true; - result.result = status==0?"认证通过":"认证不通过"; + result.result = status == 0 ? "认证通过" : "认证不通过"; } } catch (System.Exception ex) @@ -770,7 +773,7 @@ namespace _24Hour.Controllers.system try { //查询角色下的菜单 - var list = await _db.Queryable().Where(q => q.roleId== RoleMenudata.Id).ToListAsync(); + var list = await _db.Queryable().Where(q => q.roleId == RoleMenudata.Id).ToListAsync(); _db.BeginTran(); //删除角色下的菜单 await _db.Deleteable(list).ExecuteCommandAsync(); @@ -1155,7 +1158,7 @@ namespace _24Hour.Controllers.system try { //添加单位前判断单位编码是否重复 - var data = await _db.Queryable().Where(q => q.departCode == Departdata.departCode && q.IsDelete==0).FirstAsync(); + var data = await _db.Queryable().Where(q => q.departCode == Departdata.departCode && q.IsDelete == 0).FirstAsync(); if (data != null) { @@ -1197,7 +1200,7 @@ namespace _24Hour.Controllers.system try { //判断单位编码是否已存在 - var data = await _db.Queryable().Where(q => q.departCode == Departdata.departCode && q.IsDelete==0).FirstAsync(); + var data = await _db.Queryable().Where(q => q.departCode == Departdata.departCode && q.IsDelete == 0).FirstAsync(); if (data != null) { @@ -1271,7 +1274,7 @@ namespace _24Hour.Controllers.system [Route("GetQueryMenulist")] public async Task GetQueryMenulist() { - var list = await _db.Queryable().Where(q => q.IsDelete == 0 || q.pid==null || q.pid == "").Select(q => new { q.Id, q.name }).ToListAsync(); + var list = await _db.Queryable().Where(q => q.IsDelete == 0 || q.pid == null || q.pid == "").Select(q => new { q.Id, q.name }).ToListAsync(); result.IsSucceed = true; result.result = list; return result;