From 127a465f652edc90a5ed3dc90373b373d03946d0 Mon Sep 17 00:00:00 2001 From: yashen Date: Wed, 30 Aug 2017 15:50:22 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BE=AE=E4=BF=A1=E7=99=BB=E5=BD=95=E7=9A=84?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=EF=BC=8C=E6=94=AF=E6=8C=81=E9=80=89=E6=8B=A9?= =?UTF-8?q?=E7=94=A8=E6=88=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- B3WeChat/Rpcs/WeChatUserRpc.cs | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/B3WeChat/Rpcs/WeChatUserRpc.cs b/B3WeChat/Rpcs/WeChatUserRpc.cs index 1df885d..4734505 100644 --- a/B3WeChat/Rpcs/WeChatUserRpc.cs +++ b/B3WeChat/Rpcs/WeChatUserRpc.cs @@ -100,7 +100,7 @@ namespace BWP.B3WeChat.Rpcs } [Rpc] - public static string QueryScanLoginInfo(long requestID) + public static string[] QueryScanLoginInfo(long requestID) { var request = WebBLUtil.GetSingleDmo(new Tuple("ID", requestID)); if (request == null) @@ -116,20 +116,13 @@ namespace BWP.B3WeChat.Rpcs var queryUser = new DQueryDom(new JoinAlias(typeof(CustomerUser))); queryUser.Where.Conditions.Add(DQCondition.EQ("CustomerCode", request.CustomerCode)); queryUser.Where.Conditions.Add(DQCondition.EQ("OpenID", WeChatUserContext.Current.OpenID)); - queryUser.Range = SelectRange.Top(1); queryUser.Columns.Add(DQSelectColumn.Field("CustomerUsername")); - var username = queryUser.EExecuteScalar(); - if (string.IsNullOrEmpty(username)) - { - throw new Exception("未能发现关联的用户"); - } - - return username; + return queryUser.EExecuteList().ToArray(); } [Rpc] - public static void ScanLoginConfirm(long requestID) + public static void ScanLoginConfirm(long requestID,string username) { var request = WebBLUtil.GetSingleDmo(new Tuple("ID", requestID)); if (request == null) @@ -141,7 +134,11 @@ namespace BWP.B3WeChat.Rpcs throw new Exception("已经确认过了"); } - var username = QueryScanLoginInfo(requestID); + var userlist = QueryScanLoginInfo(requestID); + if (!userlist.Contains(username)) + { + throw new Exception("用户不在微信号绑定的用户中"); + } request.Confirmed = true; request.CustomerUsername = username;