fix unregistered matcher

This commit is contained in:
Sola
2015-12-31 01:37:24 +08:00
parent 461bdf2c27
commit 86c045aff2

View File

@@ -1,13 +1,9 @@
package love.sola.netsupport.wechat.matcher; package love.sola.netsupport.wechat.matcher;
import love.sola.netsupport.pojo.User;
import love.sola.netsupport.sql.TableUser; import love.sola.netsupport.sql.TableUser;
import me.chanjar.weixin.mp.api.WxMpMessageMatcher; import me.chanjar.weixin.mp.api.WxMpMessageMatcher;
import me.chanjar.weixin.mp.bean.WxMpXmlMessage; import me.chanjar.weixin.mp.bean.WxMpXmlMessage;
import java.util.HashSet;
import java.util.Set;
/** /**
* *********************************************** * ***********************************************
* Created by Sola on 2015/11/26. * Created by Sola on 2015/11/26.
@@ -16,18 +12,9 @@ import java.util.Set;
*/ */
public class RegisterMatcher implements WxMpMessageMatcher { public class RegisterMatcher implements WxMpMessageMatcher {
public static Set<String> registered = new HashSet<>();
@Override @Override
public boolean match(WxMpXmlMessage message) { public boolean match(WxMpXmlMessage message) {
String fromUser = message.getFromUserName(); return TableUser.getByWechat(message.getFromUserName()) == null;
if (registered.contains(fromUser)) {
return false;
} else {
User u = TableUser.getByWechat(fromUser);
if (u != null) registered.add(u.getWechatId());
return u == null;
}
} }
} }